cmd_line_interface.hpp
Go to the documentation of this file.
00001 
00011 /*****************************************************************************
00012 ** Ifdefs
00013 *****************************************************************************/
00014 
00015 #ifndef TCLAP_COMMANDLINE_INTERFACE_H
00016 #define TCLAP_COMMANDLINE_INTERFACE_H
00017 
00018 #include <string>
00019 #include <vector>
00020 #include <list>
00021 #include <iostream>
00022 #include <algorithm>
00023 
00024 
00025 namespace ecl {
00026 
00027 class Arg;
00028 class CmdLineOutput;
00029 class XorHandler;
00030 
00036 class CmdLineInterface
00037 {
00038         public:
00039 
00043                 virtual ~CmdLineInterface() {}
00044 
00049                 virtual void add( Arg& a )=0;
00050 
00055                 virtual void add( Arg* a )=0;
00056 
00064                 virtual void xorAdd( Arg& a, Arg& b )=0;
00065 
00071                 virtual void xorAdd( std::vector<Arg*>& xors )=0;
00072 
00078                 virtual void parse(int argc, char** argv)=0;
00079 
00083                 virtual CmdLineOutput* getOutput()=0;
00084 
00088                 virtual void setOutput(CmdLineOutput* co)=0;
00089 
00093                 virtual std::string& getVersion()=0;
00094 
00098                 virtual std::string& getProgramName()=0;
00099 
00103                 virtual std::list<Arg*>& getArgList()=0;
00104 
00108                 virtual XorHandler& getXorHandler()=0;
00109 
00113                 virtual char getDelimiter()=0;
00114 
00118                 virtual std::string& getMessage()=0;
00119 
00124                 virtual bool hasHelpAndVersion()=0;
00125 };
00126 
00127 }; // namespace ecl
00128 
00129 
00130 #endif


ecl_command_line
Author(s): Daniel Stonier (d.stonier@gmail.com)
autogenerated on Thu Jan 2 2014 11:12:37