bin/Parameter.h

Code
Comments
Other
Rev Date Author Line
165 24 Aug 06 jari 1 #ifndef _theplu_svndigest_parameter_
165 24 Aug 06 jari 2 #define _theplu_svndigest_parameter_
165 24 Aug 06 jari 3
37 13 Jan 06 peter 4 // $Id$
37 13 Jan 06 peter 5
84 13 Mar 06 jari 6 /*
1635 30 Mar 23 peter 7   Copyright (C) 2006 Jari Häkkinen, Peter Johansson
1635 30 Mar 23 peter 8   Copyright (C) 2007 Peter Johansson
1635 30 Mar 23 peter 9   Copyright (C) 2008 Jari Häkkinen, Peter Johansson
1017 09 Jan 10 peter 10   Copyright (C) 2009, 2010 Peter Johansson
84 13 Mar 06 jari 11
687 04 Aug 08 peter 12   This file is part of svndigest, http://dev.thep.lu.se/svndigest
84 13 Mar 06 jari 13
149 12 Aug 06 jari 14   svndigest is free software; you can redistribute it and/or modify it
84 13 Mar 06 jari 15   under the terms of the GNU General Public License as published by
693 11 Sep 08 jari 16   the Free Software Foundation; either version 3 of the License, or
84 13 Mar 06 jari 17   (at your option) any later version.
84 13 Mar 06 jari 18
149 12 Aug 06 jari 19   svndigest is distributed in the hope that it will be useful, but
84 13 Mar 06 jari 20   WITHOUT ANY WARRANTY; without even the implied warranty of
149 12 Aug 06 jari 21   MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
84 13 Mar 06 jari 22   General Public License for more details.
84 13 Mar 06 jari 23
84 13 Mar 06 jari 24   You should have received a copy of the GNU General Public License
693 11 Sep 08 jari 25   along with svndigest. If not, see <http://www.gnu.org/licenses/>.
84 13 Mar 06 jari 26 */
84 13 Mar 06 jari 27
1293 14 Nov 10 peter 28 #include "AbstractParameter.h"
1293 14 Nov 10 peter 29
1119 04 Jul 10 peter 30 #include "lib/OptionVersion.h"
820 12 Sep 09 peter 31
1673 26 Aug 23 peter 32 #include <yat/utility/CommandLine.h>
1673 26 Aug 23 peter 33 #include <yat/utility/OptionArg.h>
1673 26 Aug 23 peter 34 #include <yat/utility/OptionSwitch.h>
625 23 Apr 08 peter 35
37 13 Jan 06 peter 36 #include <string>
37 13 Jan 06 peter 37
37 13 Jan 06 peter 38 namespace theplu {
149 12 Aug 06 jari 39 namespace svndigest {
37 13 Jan 06 peter 40
1293 14 Nov 10 peter 41   // base class for svndigestParameter and svncopyrightParameter
1293 14 Nov 10 peter 42   class Parameter : public AbstractParameter
1293 14 Nov 10 peter 43   {
37 13 Jan 06 peter 44   public:
1060 02 Jun 10 peter 45     Parameter(void);
705 25 Nov 08 peter 46     virtual ~Parameter(void);
1060 02 Jun 10 peter 47
240 28 Apr 07 peter 48     std::string config_file(void) const;
1513 23 Sep 12 peter 49
705 25 Nov 08 peter 50     bool generate_config(void) const ;
705 25 Nov 08 peter 51     bool ignore_cache(void) const;
1264 02 Nov 10 peter 52
1060 02 Jun 10 peter 53   private:
1293 14 Nov 10 peter 54     void analyse1(void);
1060 02 Jun 10 peter 55     virtual void analyse2(void)=0;
1293 14 Nov 10 peter 56     void init1(void);
1060 02 Jun 10 peter 57     // called at end of init(void)
1060 02 Jun 10 peter 58     virtual void init2(void) = 0;
1293 14 Nov 10 peter 59     void set_default1(void);
1060 02 Jun 10 peter 60     virtual void set_default2(void)=0;
705 25 Nov 08 peter 61
820 12 Sep 09 peter 62     yat::utility::OptionArg<std::string> config_file_;
820 12 Sep 09 peter 63     yat::utility::OptionSwitch generate_config_;
820 12 Sep 09 peter 64     yat::utility::OptionSwitch ignore_cache_;
37 13 Jan 06 peter 65   };
37 13 Jan 06 peter 66
149 12 Aug 06 jari 67 }} // of namespace svndigest and namespace theplu
37 13 Jan 06 peter 68
37 13 Jan 06 peter 69 #endif