9 #include <boost/program_options/options_description.hpp> 10 #include <boost/program_options/parsers.hpp> 17 namespace bpo = boost::program_options;
21 namespace commander_cmd
57 <<
"DDS configuration" 58 <<
" v" << USER_DEFAULTS_CFG_VERSION <<
"\n" 65 if (
nullptr == _options)
66 throw std::runtime_error(
"Internal error: options' container is empty.");
69 bpo::options_description options(
"dds-commander options");
70 options.add_options()(
"help,h",
"Produce help message");
71 options.add_options()(
"version,v",
"Version information");
72 options.add_options()(
74 bpo::value<std::string>(),
75 "The command is a name of a dds-commander command." 76 " Can be one of the following: start, and stop.\n" 77 "For user's convenience it is allowed to call dds-commander without \"--command\" option" 78 " by just specifying the command name directly, like:\ndds-commander start or dds-commander stop.\n\n" 80 " start: \tStart dds-commander daemon\n" 81 " stop: \tStop dds-commander daemon\n");
84 bpo::positional_options_description pd;
88 bpo::variables_map vm;
89 bpo::store(bpo::command_line_parser(_argc, _argv).options(options).positional(pd).run(), vm);
92 if (vm.count(
"help") || vm.empty())
97 if (vm.count(
"version"))
104 if (vm.count(
"command"))
SOptions()
Definition: dds-commander/src/Options.h:32
ECommands
Definition: dds-commander/src/Options.h:26
bool ParseCmdLine(int _argc, char *_argv[], SOptions *_options)
Definition: dds-commander/src/Options.h:63
#define LOG(severity)
Definition: Logger.h:54
std::string m_sRMS
Definition: dds-commander/src/Options.h:50
std::string m_sTopoFile
Definition: dds-commander/src/Options.h:48
const LPCSTR g_cszReportBugsAddr("Report bugs/comments to fairroot@gsi.de")
struct dds::commander_cmd::SOptions SOptions_t
dds-commander's container of options
Definition: dds-agent/src/AgentConnectionManager.h:16
Definition: dds-commander/src/Options.h:30
dds-commander's container of options
Definition: dds-commander/src/Options.h:24
void PrintVersion()
Definition: dds-commander/src/Options.h:54
std::string m_sCfgFile
Definition: dds-commander/src/Options.h:51
bool m_needCommanderPid
Definition: dds-commander/src/Options.h:49
ECommands m_Command
Definition: dds-commander/src/Options.h:47
static ECommands getCommandByName(const std::string &_name)
Definition: dds-commander/src/Options.h:37
Definition: dds-commander/src/Options.h:29
Definition: dds-commander/src/Options.h:28