9 #include <boost/program_options/options_description.hpp> 10 #include <boost/program_options/parsers.hpp> 18 namespace bpo = boost::program_options;
42 <<
"DDS configuration" 43 <<
" v" << USER_DEFAULTS_CFG_VERSION <<
"\n" 50 if (
nullptr == _options)
51 throw std::runtime_error(
"Internal error: options' container is empty.");
54 bpo::options_description options(
"dds-stat options");
55 options.add_options()(
"help,h",
"Produce help message");
56 options.add_options()(
"version,v",
"Version information");
57 options.add_options()(
59 bpo::value<std::string>(),
60 "The command is a name of a dds-stat command." 61 " Can be one of the following: enable, disable and get.\n" 62 "For user's convenience it is allowed to call dds-stat without \"--command\" option" 63 " by just specifying the command name directly, like:\ndds-stat enable or dds-stat get.\n\n" 65 " enable: \tEnable statistics on the commander server.\n" 66 " disable: \tDisable statistics on the commander server.\n" 67 " get: \tGet statistics from the commander server.\n");
70 bpo::positional_options_description pd;
74 bpo::variables_map vm;
75 bpo::store(bpo::command_line_parser(_argc, _argv).options(options).positional(pd).run(), vm);
78 if (vm.count(
"help") || vm.empty())
83 if (vm.count(
"version"))
89 if (vm.count(
"command"))
91 std::string cmd = vm[
"command"].as<std::string>();
96 else if (cmd ==
"disable")
100 else if (cmd ==
"get")
bool m_bGet
Definition: dds-stat/src/Options.h:36
void PrintVersion()
Definition: dds-stat/src/Options.h:39
struct dds::stat_cmd::SOptions SOptions_t
dds-commander's container of options
#define LOG(severity)
Definition: Logger.h:56
dds-commander's container of options
Definition: dds-stat/src/Options.h:25
const LPCSTR g_cszReportBugsAddr("Report bugs/comments to fairroot@gsi.de")
Definition: AgentConnectionManager.h:13
bool m_bDisable
Definition: dds-stat/src/Options.h:35
SOptions()
Definition: dds-stat/src/Options.h:27
bool ParseCmdLine(int _argc, char *_argv[], SOptions *_options)
Definition: dds-stat/src/Options.h:48
bool m_bEnable
Definition: dds-stat/src/Options.h:34