Class interference_metrics

Inheritance Relationships

Base Type

  • public rmetrics::base_metrics

Derived Type

Class Documentation

class interference_metrics : public virtual rmetrics::base_metrics

Interface defining what metrics should be collected regarding inter-robot interference as robots go about their tasks in the arena.

Subclassed by cosm::spatial::fsm::util_hfsm

Public Functions

interference_metrics(void) = default
~interference_metrics(void) override = default
virtual bool entered_interference(void) const = 0

If TRUE, then a robot has just begun experiencing inter-robot interference. This should return FALSE on all subsequent steps the robot is experiencing interference.

virtual bool exited_interference(void) const = 0

If TRUE, then a robot has just exited interference avoidance. This should return FALSE on all previous steps the robot is in interference avoidance, and all steps afterwards when it returns to normal operation.

virtual bool exp_interference(void) const = 0

If TRUE, then a robot is currently experiencing inter-robot interference.

virtual boost::optional<rtypes::timestep> interference_duration(void) const = 0

If exited_interference() returns TRUE, then this should return the duration of the interference in timesteps.

virtual boost::optional<rmath::vector3z> interference_loc3D(void) const = 0

When exp_interference() returns TRUE, then this should return the robot’s current discrete position in 3D.