Class robot_metrics_manager
Defined in File robot_metrics_manager.hpp
Inheritance Relationships
Base Types
public rer::client< robot_metrics_manager >
public rmetrics::network_output_manager
Class Documentation
-
class robot_metrics_manager : public rer::client<robot_metrics_manager>, public rmetrics::network_output_manager
Manager class for handling all of the metrics which can be generated by COSM on robots running ROS.
Public Functions
-
robot_metrics_manager(const cros::topic &robot_ns, const rmconfig::metrics_config *mconfig)
-
~robot_metrics_manager(void) override = default
-
void collect_from_block(const crepr::base_block3D *block)
Collect metrics from a 3D block right before it is dropped in the nest. Currently this includes:
cmspecs::blocks::kTransportee
-
void collect_from_controller(const ccontroller::base_controller2D *controller)
Collect metrics from 2D controllers. Currently this includes:
cmspecs::spatial::kMovement
cmspecs::spatial::kInterferenceCounts
cmspecs::sensors::kBattery
Protected Functions
-
void register_standard(const rmconfig::metrics_config *mconfig)
Register metrics collectors that do not require extra arguments.
cmspecs::spatial::kInterferenceCounts -> csmetrics::interference_metrics
cmspecs::blocks::kTransporter -> cfsm::metrics::block_transporter_metrics
cmspecs::blocks::kTransportee -> cfmetrics::block_transportee_metrics
cmspecs::blocks::kAcqCounts -> csmetrics::goal_acq_metrics
-
void register_with_n_block_clusters(const rmconfig::metrics_config *mconfig, size_t n_block_clusters)
Register metrics collectors that require the # of block clusters in the arena.
cmspecs::blocks::kClusters -> cfmetrics::block_cluster_metrics
-
void register_with_n_robots(const rmconfig::metrics_config *mconfig, size_t n_robots)
-
robot_metrics_manager(const cros::topic &robot_ns, const rmconfig::metrics_config *mconfig)