26 #include "error_treat.h" 75 APOpt() : id(-1), m_initialized(
false) {}
76 bool operator ==(
const APOpt& other)
const {
return other.id == id; }
78 void init(
const std::string& longName,
80 const std::string& description,
81 const bool valueRequired=
false,
82 const std::string& valueName=
"") {
85 m_longName = longName;
86 m_shortName = shortName;
87 m_description = description;
88 m_valueRequired = valueRequired;
89 m_valueName = valueName;
94 std::string m_longName;
96 std::string m_shortInfo;
97 std::string m_description;
99 std::string m_valueName;
109 bool operator ==(
const APCmd& other)
const {
return other.id == id; }
122 std::string description;
124 std::string longName;
128 std::string valueName;
136 std::string description;
137 std::string shortInfo;
139 unsigned int argNumber;
142 std::map<int, Option*> mandatoryOptions;
143 std::map<int, Option*> options;
167 const std::string& name,
168 const std::string& shortInfo,
169 const std::string& description,
171 const int argNumber=-1,
190 void parse(
int argc,
char** argv);
206 bool isSet(
const APOpt& key)
const;
231 std::string generateHelpForCommand(
const std::string&
command)
const;
232 std::string generateUsage()
const;
234 bool isSet(
int key)
const;
236 std::string generateOptionString(Option* o)
const;
238 void parseError(
const std::string& error,
const std::string& cmd=
"")
const;
240 std::map<std::string, Command*> m_commands;
241 std::map<int, Command*> m_commandIdMap;
242 std::map<int, Option*> m_options;
244 std::map<char, Option*> m_optionsByShortName;
245 std::map<std::string, Option*> m_optionsByLongName;
246 std::map<int, std::string> m_setOptions;
248 std::vector<std::string> m_otherArguments;
250 std::string m_appName;
255 APOpt PREDEFINED_CMD_HELP;
argument parser class
Definition: argument_parser.h:56
std::string appName() const
Definition: argument_parser.cxx:346
bool isSet(const APOpt &key) const
Definition: argument_parser.cxx:327
void printHelp(const std::string &cmd)
Definition: argument_parser.cxx:337
ArgNumberCheck
Definition: argument_parser.h:62
std::string getOptionValue(const APOpt &key) const
Definition: argument_parser.cxx:341
int addOption(const APCmd &cmd, APOpt &key, bool required)
Definition: argument_parser.cxx:91
void parse(int argc, char **argv)
Definition: argument_parser.cxx:144
int addCommand(APCmd &cmd, const std::string &name, const std::string &shortInfo, const std::string &description, ArgNumberCheck argNumberCheck, const int argNumber=-1, const std::string &otherArguments="")
Definition: argument_parser.cxx:53
virtual std::string getAppIdentification() const
Definition: argument_parser.h:221
Definition: argument_parser.h:71
const std::vector< std::string > & otherArguments() const
Definition: argument_parser.cxx:450
APCmd command() const
Definition: argument_parser.cxx:322
Definition: argument_parser.h:104