class RobotManager
Declaration
class RobotManager { /* full declaration omitted */ };Declared at: robot_manager/include/robot_manager/RobotManager.h:37
Member Variables
- private robot_controller::ControllerLoader controller_loader_
- private robot_controller::ControllerLoader::ControllerPtr controller_
- private int zenoh_router_
- private int interfaces_
- private int spawned_interfaces_
- private mc_control::MCGlobalController:: GlobalConfiguration gconfig_
- private int main_thread_
- private std::mutex start_mutex_
- private std::condition_variable start_cv_
- private bool start_control_ = {false}
- private std::condition_variable cv_
- private int threads_
- private mc_rtc::Slot<std::string, std::string> replace_slot_
- private int replace_queue_
- private bool signal_received_ = false
- private std::mutex replace_mutex_
Method Overview
- public RobotManager()
- public RobotManager(const std::string & mc_config_path, const std::atomic<bool> & interrupt)
- public RobotManager(const robot_manager::RobotManager &)
- public RobotManager(robot_manager::RobotManager &&)
- private static bool autostartEnabled(const mc_rtc::Configuration & robot_config)
- public robot_controller::Controller & controller()
- private void init(const std::atomic<bool> & interrupt)
- public const auto & interfaces()
- private void launchZenohRouter()
- private void mainThread(size_t step_size, const std::atomic<bool> & interrupt)
- public void notify()
- private void processGConfig(mc_control::MCGlobalController::GlobalConfiguration & gconfig)
- private pid_t spawnRobotInterface(const std::string & robot_name, const mc_rtc::Configuration & robot_config)
- private void stopSpawnedInterfaces()
- public ~RobotManager()
Methods
¶RobotManager()
RobotManager()Declared at: robot_manager/include/robot_manager/RobotManager.h:40
¶RobotManager(const std::string& mc_config_path,
const std::atomic<bool>& interrupt)
RobotManager(const std::string& mc_config_path,
const std::atomic<bool>& interrupt)Description
Load `mc_config_path` and initialize every robot. Returns once all robots are initialized or interrupt is set.
Declared at: robot_manager/include/robot_manager/RobotManager.h:44
Parameters
- const std::string& mc_config_path
- const std::atomic<bool>& interrupt
¶RobotManager(const robot_manager::RobotManager&)
RobotManager(const robot_manager::RobotManager&)Declared at: robot_manager/include/robot_manager/RobotManager.h:48
Parameters
- const robot_manager::RobotManager&
¶RobotManager(robot_manager::RobotManager&&)
RobotManager(robot_manager::RobotManager&&)Declared at: robot_manager/include/robot_manager/RobotManager.h:50
Parameters
¶static bool autostartEnabled(
const mc_rtc::Configuration& robot_config)
static bool autostartEnabled(
const mc_rtc::Configuration& robot_config)Declared at: robot_manager/include/robot_manager/RobotManager.h:84
Parameters
- const mc_rtc::Configuration& robot_config
¶robot_controller::Controller& controller()
robot_controller::Controller& controller()Description
The controller backend.
Declared at: robot_manager/include/robot_manager/RobotManager.h:54
¶void init(const std::atomic<bool>& interrupt)
void init(const std::atomic<bool>& interrupt)Declared at: robot_manager/include/robot_manager/RobotManager.h:72
Parameters
- const std::atomic<bool>& interrupt
¶const auto& interfaces()
const auto& interfaces()Declared at: robot_manager/include/robot_manager/RobotManager.h:60
¶void launchZenohRouter()
void launchZenohRouter()Declared at: robot_manager/include/robot_manager/RobotManager.h:78
¶void mainThread(
size_t step_size,
const std::atomic<bool>& interrupt)
void mainThread(
size_t step_size,
const std::atomic<bool>& interrupt)Declared at: robot_manager/include/robot_manager/RobotManager.h:103
Parameters
- size_t step_size
- const std::atomic<bool>& interrupt
¶void notify()
void notify()Description
Wake the main thread for the next control step.
Declared at: robot_manager/include/robot_manager/RobotManager.h:66
¶void processGConfig(
mc_control::MCGlobalController::
GlobalConfiguration& gconfig)
void processGConfig(
mc_control::MCGlobalController::
GlobalConfiguration& gconfig)Declared at: robot_manager/include/robot_manager/RobotManager.h:90
Parameters
- mc_control::MCGlobalController:: GlobalConfiguration& gconfig
¶pid_t spawnRobotInterface(
const std::string& robot_name,
const mc_rtc::Configuration& robot_config)
pid_t spawnRobotInterface(
const std::string& robot_name,
const mc_rtc::Configuration& robot_config)Declared at: robot_manager/include/robot_manager/RobotManager.h:85
Parameters
- const std::string& robot_name
- const mc_rtc::Configuration& robot_config
¶void stopSpawnedInterfaces()
void stopSpawnedInterfaces()Declared at: robot_manager/include/robot_manager/RobotManager.h:86
¶~RobotManager()
~RobotManager()Declared at: robot_manager/include/robot_manager/RobotManager.h:46