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

Methods

RobotManager()

Declared at: robot_manager/include/robot_manager/RobotManager.h:40

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&)

Declared at: robot_manager/include/robot_manager/RobotManager.h:48

Parameters

const robot_manager::RobotManager&

RobotManager(robot_manager::RobotManager&&)

Declared at: robot_manager/include/robot_manager/RobotManager.h:50

Parameters

robot_manager::RobotManager&&

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()

Description

The controller backend.

Declared at: robot_manager/include/robot_manager/RobotManager.h:54

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()

Declared at: robot_manager/include/robot_manager/RobotManager.h:60

void launchZenohRouter()

Declared at: robot_manager/include/robot_manager/RobotManager.h:78

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()

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)

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)

Declared at: robot_manager/include/robot_manager/RobotManager.h:85

Parameters

const std::string& robot_name
const mc_rtc::Configuration& robot_config

void stopSpawnedInterfaces()

Declared at: robot_manager/include/robot_manager/RobotManager.h:86

~RobotManager()

Declared at: robot_manager/include/robot_manager/RobotManager.h:46