Class bi_tab_metrics

Inheritance Relationships

Base Type

  • public rmetrics::base_metrics

Derived Type

Class Documentation

class bi_tab_metrics : public virtual rmetrics::base_metrics

Interface defining metrics that can be collected about the task allocation each robot performs.

Subclassed by cosm::ta::ds::bi_tab

Public Functions

bi_tab_metrics(void) = default
~bi_tab_metrics(void) override = default
virtual bool employed_partitioning(void) const = 0

This function should return TRUE, if a robot has chosen to employ task partitioning when allocating itself its next task.

Returns:

Valid only when task_changed() returns TRUE.

virtual double partition_prob(void) const = 0

Return the current partitioning probability for the root task in the TAB.

virtual bool root_active(void) const = 0

This function should return if the root is currently the active task.

Returns:

Valid at any time.

virtual bool subtask1_active(void) const = 0

This function should return if subtask1 is currently the active task.

Returns:

Valid at any time.

virtual bool subtask2_active(void) const = 0

This function should return if subtask2 is currently the active task.

Returns:

Valid at any time.

virtual double subtask_selection_prob(void) const = 0

Return the current subtask selection probability for the root task in the TAB.

virtual bool task_changed(void) const = 0

This function should return TRUE if the task that has just been allocated is different than the one that it executed last time (this is the definition of changing allocation).

Returns:

Undefined unless task_changed() returns TRUE.

virtual bool task_depth_changed(void) const = 0

This function should return TRUE iff the task that has just been allocated is a different depth in the cta::ds::tdgraph than the previous task.

Returns:

Undefined unless task_changed() returns TRUE.