annotate_line.hpp

Go to the documentation of this file.
00001 /*
00002  * ====================================================================
00003  * Copyright (c) 2002-2006 The RapidSvn Group.  All rights reserved.
00004  *
00005  * This library is free software; you can redistribute it and/or
00006  * modify it under the terms of the GNU Lesser General Public
00007  * License as published by the Free Software Foundation; either
00008  * version 2.1 of the License, or (at your option) any later version.
00009  * 
00010  * This library is distributed in the hope that it will be useful,
00011  * but WITHOUT ANY WARRANTY; without even the implied warranty of
00012  * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
00013  * Lesser General Public License for more details.
00014  * 
00015  * You should have received a copy of the GNU Lesser General Public
00016  * License along with this library (in the file LGPL.txt); if not, 
00017  * write to the Free Software Foundation, Inc., 51 Franklin St, 
00018  * Fifth Floor, Boston, MA  02110-1301  USA
00019  *
00020  * This software consists of voluntary contributions made by many
00021  * individuals.  For exact contribution history, see the revision
00022  * history and logs, available at http://rapidsvn.tigris.org/.
00023  * ====================================================================
00024  */
00025 #ifndef _SVNCPP_ANNOTATE_LINE_HPP_
00026 #define _SVNCPP_ANNOTATE_LINE_HPP_
00027 
00028 namespace svn
00029 {
00033   class AnnotateLine
00034   {
00035   public:
00036     AnnotateLine (apr_int64_t line_no,
00037                   svn_revnum_t revision,
00038                   const char *author,
00039                   const char *date,
00040                   const char *line)
00041     : m_line_no (line_no), m_revision (revision), 
00042       m_author (author), m_date (date), m_line (line)
00043     {
00044     }
00045 
00046     AnnotateLine ( const AnnotateLine &other)
00047     : m_line_no (other.m_line_no), m_revision (other.m_revision), 
00048       m_author (other.m_author), m_date (other.m_date), 
00049       m_line (other.m_line)
00050     {
00051     }
00052 
00056     virtual ~AnnotateLine ()
00057     {
00058     }
00059 
00060     apr_int64_t 
00061     lineNumber () const
00062     {
00063       return m_line_no;
00064     }
00065     svn_revnum_t 
00066     revision () const
00067     {
00068       return m_revision;
00069     }
00070 
00071 
00072     const std::string &
00073     author () const
00074     {
00075       return m_author;
00076     }
00077 
00078 
00079     const std::string &
00080     date () const
00081     {
00082       return m_date;
00083     }
00084 
00085 
00086     const std::string &
00087     line () const
00088     {
00089       return m_line;
00090     }
00091 
00092   private:
00093     apr_int64_t m_line_no;
00094     svn_revnum_t m_revision;
00095     std::string m_author;
00096     std::string m_date;
00097     std::string m_line;
00098   };
00099 }
00100 
00101 #endif
00102 /* -----------------------------------------------------------------
00103  * local variables:
00104  * eval: (load-file "../../rapidsvn-dev.el")
00105  * end:
00106  */

Generated on Fri Dec 8 18:57:44 2006 for SvnCpp by  doxygen 1.4.7