23 #ifndef DtCmdLine_COMMANDLINE_INTERFACE_H
24 #define DtCmdLine_COMMANDLINE_INTERFACE_H
36 #ifdef DtUSE_UTILITIES_NAMESPACE
37 namespace DtUSE_UTILITIES_NAMESPACE
51 class CmdLineInterface
65 virtual void add(
Arg& a )=0;
71 virtual void add(
Arg* a )=0;
80 virtual void xorAdd(
Arg& a,
Arg& b )=0;
87 virtual void xorAdd( std::vector<Arg*>& xors )=0;
94 virtual void parse(
int argc,
char** argv,
bool printOnError =
true )=0;
109 virtual std::string& getVersion()=0;
114 virtual std::string& getProgramName()=0;
119 virtual std::list<Arg*>& getArgList()=0;
129 virtual char getDelimiter()=0;
134 virtual std::string& getMessage()=0;
139 #ifdef DtUSE_UTILITIES_NAMESPACE
This class handles lists of Arg's that are to be XOR'd on the command line.
Definition: cmdXorHandler.h:48
A virtual base class that defines the essential data for all arguments.
Definition: cmdArg.h:48
virtual ~CmdLineInterface()
Destructor.
Definition: cmdLineInterface.h:59
The interface that any output object must implement.
Definition: cmdLineOutput.h:51