Class metrics_proxy

Inheritance Relationships

Base Type

  • public ckin::metrics::kinematics_metrics

Class Documentation

class metrics_proxy : public ckin::metrics::kinematics_metrics

Proxy to handle agent kinematics for the purpose of metric collection.

This class makes the resulting controller classes simpler in that they don’t have a bunch of functions exposed which have no purposes other than to use to collect metrics.

Public Types

using context_cb = std::function<bool(const rmetrics::context&)>

Public Functions

metrics_proxy(const metrics_proxy&) = delete
inline metrics_proxy(const rtypes::type_uuid &agent_id, const csubsystem::sensing_subsystem *const sensing, context_cb cb)
metrics_proxy(metrics_proxy&&) = delete
inline const rtypes::type_uuid &id(void) const final override
metrics_proxy &operator=(const metrics_proxy&) = delete
metrics_proxy &operator=(metrics_proxy&&) = delete
ckin::pose pose(void) const final override
boost::optional<rspatial::euclidean_dist> traveled(const rmetrics::context &ctx) const final override
boost::optional<ckin::twist> twist(const rmetrics::context &ctx) const final override

Public Members

const context_cb mc_ctx_cb
const rtypes::type_uuid mc_id
const csubsystem::sensing_subsystem *mc_sensing