Choreonoid  1.8
OptionManager.h
Go to the documentation of this file.
1 
5 #ifndef CNOID_BASE_OPTION_MANAGER_H
6 #define CNOID_BASE_OPTION_MANAGER_H
7 
8 #include "ExtensionManager.h"
9 #include <cnoid/Signal>
10 #include <boost/program_options.hpp>
11 #include "exportdecl.h"
12 
13 namespace cnoid {
14 
15 class CNOID_EXPORT OptionManager
16 {
17 public:
18  OptionManager& addOption(const char* name, const char* description);
19  OptionManager& addOption(const char* name, const boost::program_options::value_semantic* s);
20  OptionManager& addOption(const char* name, const boost::program_options::value_semantic* s, const char* description);
21 
25  // OptionManager& addPositionalOption(const char* name, int maxCount);
26 
27  SignalProxy<void(std::vector<std::string>& inputFiles)> sigInputFileOptionsParsed(int phase = 0);
28  SignalProxy<void(boost::program_options::variables_map& variables)> sigOptionsParsed(int phase = 0);
29 
30  bool parseCommandLine1(int argc, char *argv[]);
31  void parseCommandLine2();
32 
33 private:
34  OptionManager();
35  ~OptionManager();
36 
37  friend class ExtensionManager;
38 };
39 
40 }
41 
42 #endif
cnoid::ExtensionManager
Definition: ExtensionManager.h:23
cnoid
Definition: AbstractSceneLoader.h:11
cnoid::OptionManager
Definition: OptionManager.h:15
cnoid::SignalProxy
Definition: Signal.h:470
ExtensionManager.h