Apache Qpid - AMQP Messaging for Java JMS, C++, Python, Ruby, and .NET | Apache Qpid Documentation |
Base class for options. More...
#include <qpid/Options.h>
Classes | |
struct | Exception |
Public Member Functions | |
Options (const std::string &name=std::string()) | |
void | parse (int argc, char const *const *argv, const std::string &configfile=std::string(), bool allowUnknown=false) |
Parses options from argc/argv, environment variables and config file. | |
boost::program_options::options_description_easy_init | addOptions () |
Base class for options.
Example of use:
struct MySubOptions : public Options { int x; string y; MySubOptions() : Options("Sub options") { addOptions() ("x", optValue(x,"XUNIT"), "Option X") ("y", optValue(y, "YUNIT"), "Option Y"); } }; struct MyOptions : public Options { bool z; vector<string> foo; MySubOptions subOptions; MyOptions() : Options("My Options") { addOptions() ("z", boolSwitch(z), "Option Z") ("foo", optValue(foo), "Multiple option foo"); add(subOptions); } main(int argc, char** argv) { Options opts; opts.parse(argc, char** argv); // Use values dosomething(opts.subOptions.x); if (error) cout << opts << end; // Help message. }
Definition at line 207 of file Options.h.
qpid::Options::Options | ( | const std::string & | name = std::string() |
) |
boost::program_options::options_description_easy_init qpid::Options::addOptions | ( | ) | [inline] |
void qpid::Options::parse | ( | int | argc, | |
char const *const * | argv, | |||
const std::string & | configfile = std::string() , |
|||
bool | allowUnknown = false | |||
) |
Parses options from argc/argv, environment variables and config file.
Note the filename argument can reference an options variable that is updated by argc/argv or environment variable parsing.