MCPcopy Create free account
hub / github.com/ComputationalRobotics/XM-code / OptionManager

Class OptionManager

deps/glomap/glomap/controllers/option_manager.h:22–91  ·  view source on GitHub ↗

Source from the content-addressed store, hash-verified

20struct InlierThresholdOptions;
21
22class OptionManager {
23 public:
24 explicit OptionManager(bool add_project_options = true);
25 void AddAllOptions();
26 void AddDatabaseOptions();
27 void AddImageOptions();
28 void AddGlobalMapperOptions();
29 void AddGlobalMapperFullOptions();
30 void AddGlobalMapperResumeOptions();
31 void AddGlobalMapperResumeFullOptions();
32 void AddViewGraphCalibrationOptions();
33 void AddRelativePoseEstimationOptions();
34 void AddRotationEstimatorOptions();
35 void AddTrackEstablishmentOptions();
36 void AddGlobalPositionerOptions();
37 void AddBundleAdjusterOptions();
38 void AddTriangulatorOptions();
39 void AddInlierThresholdOptions();
40
41 template <typename T>
42 void AddRequiredOption(const std::string& name,
43 T* option,
44 const std::string& help_text = "");
45 template <typename T>
46 void AddDefaultOption(const std::string& name,
47 T* option,
48 const std::string& help_text = "");
49
50 void Reset();
51 void ResetOptions(bool reset_paths);
52
53 void Parse(int argc, char** argv);
54
55 std::shared_ptr<std::string> database_path;
56 std::shared_ptr<std::string> image_path;
57
58 std::shared_ptr<GlobalMapperOptions> mapper;
59
60 private:
61 template <typename T>
62 void AddAndRegisterRequiredOption(const std::string& name,
63 T* option,
64 const std::string& help_text = "");
65 template <typename T>
66 void AddAndRegisterDefaultOption(const std::string& name,
67 T* option,
68 const std::string& help_text = "");
69
70 template <typename T>
71 void RegisterOption(const std::string& name, const T* option);
72
73 std::shared_ptr<boost::program_options::options_description> desc_;
74
75 std::vector<std::pair<std::string, const bool*>> options_bool_;
76 std::vector<std::pair<std::string, const int*>> options_int_;
77 std::vector<std::pair<std::string, const double*>> options_double_;
78 std::vector<std::pair<std::string, const std::string*>> options_string_;
79

Callers

nothing calls this directly

Calls

no outgoing calls

Tested by

no test coverage detected