Template Class base_sensor

Inheritance Relationships

Base Types

  • public rer::client< base_sensor< TSensor > >

  • protected rpdecorator::decorator< TSensor >

Class Documentation

template<typename TSensor>
class base_sensor : public rer::client<base_sensor<TSensor>>, protected rpdecorator::decorator<TSensor>

Base sensor class to provide a common interface to all sensors.

Public Types

using impl_type = TSensor

Public Functions

base_sensor(base_sensor&&) = default
base_sensor(const base_sensor&) = default
inline explicit base_sensor(TSensor &&sensor)
inline base_sensor(void)
virtual ~base_sensor(void) = default
virtual void disable(void) = 0

Disable the sensor. Future commands to the sensor should either throw an error or do nothing (application dependent) until the sensor is re-enabled.Should do nothing if sensor is already disabled.

virtual void enable(void) = 0

Enable the sensor. Should do nothing if sensor is already enabled.

inline bool is_disabled(void) const
virtual bool is_enabled(void) const = 0

Is this sensor currently enabled?

base_sensor &operator=(base_sensor&&) = default
base_sensor &operator=(const base_sensor&) = default
template<typename TReadingType>
TReadingType readings(void) const
virtual void reset(void) = 0

Reset the sensor to its initialized state.