#ifndef ENV_MANAGER_CONFIG_OPTIONS_HPP_ #define ENV_MANAGER_CONFIG_OPTIONS_HPP_ #include "config/lua_file_resolver.hpp" #include namespace env_manager { namespace config { struct ComponentOption { static ComponentOption create_option( LuaParameterDictionary* lua_parameter_dictionary); std::string library; std::string class_name; }; struct EnvironmentOption { static EnvironmentOption create_option( LuaParameterDictionary* lua_parameter_dictionary); std::string ns; std::map components; }; struct NodeOption { enum NodeType { Publisher, Subscriber, Service, Client }; static NodeOption create_option( LuaParameterDictionary* lua_parameter_dictionary); std::string name; std::string msg_type; NodeType type; static const std::unordered_map node_type_remap; }; struct EnvManagerOption { static EnvManagerOption create_option( LuaParameterDictionary* lua_parameter_dictionary); std::map environments; std::map nodes; }; } } #endif // ENV_MANAGER_CONFIG_OPTIONS_HPP_