36 static std::shared_ptr<ConfigManagerInterface> create();
41 static std::shared_ptr<ConfigManagerInterface> create_with_defaults();
46 static std::shared_ptr<ConfigManagerInterface> create_from_file(
const std::string& filepath);
51 static std::shared_ptr<ConfigManagerInterface> get_singleton();
54 static std::shared_ptr<ConfigManagerInterface> singleton_instance_;
55 static std::mutex singleton_mutex_;
66 static void setup_tcp_client_defaults(std::shared_ptr<ConfigManagerInterface> config);
71 static void setup_tcp_server_defaults(std::shared_ptr<ConfigManagerInterface> config);
76 static void setup_serial_defaults(std::shared_ptr<ConfigManagerInterface> config);
81 static void setup_logging_defaults(std::shared_ptr<ConfigManagerInterface> config);
86 static void setup_all_defaults(std::shared_ptr<ConfigManagerInterface> config);