roo_transceivers
API Documentation for roo_transceivers
Loading...
Searching...
No Matches
roo_transceivers::Universe Class Referenceabstract

An abstract collection of transceiver devices. More...

#include <universe.h>

Inheritance diagram for roo_transceivers::Universe:
[legend]

Public Member Functions

virtual ~Universe ()=default
 
virtual size_t deviceCount () const =0
 Returns the total number of transceiver devices in this universe.
 
virtual bool forEachDevice (std::function< bool(const DeviceLocator &)> callback) const =0
 Iterates over all transceiver devices in this universe, calling callback for each device.
 
virtual bool getDeviceDescriptor (const DeviceLocator &locator, roo_transceivers_Descriptor &descriptor) const =0
 Retrieves the descriptor for the transceiver identified by locator.
 
virtual Measurement read (const SensorLocator &locator) const =0
 Returns the latest known reading of the sensor identified by locator.
 
virtual bool write (const ActuatorLocator &locator, float value)=0
 Writes to the actuator identified by locator.
 
virtual void requestUpdate ()=0
 Requests sensor reading update from underlying devices.
 
virtual void addEventListener (EventListener *listener)
 Registers a listener for device-set and reading update events.
 
virtual void removeEventListener (EventListener *listener)
 Removes a previously registered event listener.
 

Detailed Description

An abstract collection of transceiver devices.

Each transceiver can have up to 16 sensors and up to 16 actuators, as defined in its descriptor.

Definition at line 19 of file universe.h.

Constructor & Destructor Documentation

◆ ~Universe()

virtual roo_transceivers::Universe::~Universe ( )
virtualdefault

Member Function Documentation

◆ addEventListener()

virtual void roo_transceivers::Universe::addEventListener ( EventListener listener)
inlinevirtual

Registers a listener for device-set and reading update events.

Reimplemented in roo_transceivers::Multiverse, roo_transceivers::TransceiverCollection, roo_transceivers::OneWireUniverse, and roo_transceivers::UniverseClient.

Definition at line 61 of file universe.h.

Referenced by roo_transceivers::UniverseServer::UniverseServer().

◆ deviceCount()

virtual size_t roo_transceivers::Universe::deviceCount ( ) const
pure virtual

Returns the total number of transceiver devices in this universe.

Implemented in roo_transceivers::Multiverse, roo_transceivers::TransceiverCollection, roo_transceivers::OneWireUniverse, and roo_transceivers::UniverseClient.

◆ forEachDevice()

virtual bool roo_transceivers::Universe::forEachDevice ( std::function< bool(const DeviceLocator &)>  callback) const
pure virtual

Iterates over all transceiver devices in this universe, calling callback for each device.

Callback return value controls iteration:

  • true => continue iterating,
  • false => interrupt iteration.

Returns true if iteration completed (callback returned true for all devices), and false if interrupted by callback.

Implemented in roo_transceivers::OneWireUniverse, roo_transceivers::Multiverse, roo_transceivers::TransceiverCollection, and roo_transceivers::UniverseClient.

◆ getDeviceDescriptor()

virtual bool roo_transceivers::Universe::getDeviceDescriptor ( const DeviceLocator locator,
roo_transceivers_Descriptor descriptor 
) const
pure virtual

Retrieves the descriptor for the transceiver identified by locator.

Returns true on success; false when the device is not found.

Implemented in roo_transceivers::Multiverse, roo_transceivers::SimpleSensorUniverse, roo_transceivers::TransceiverCollection, and roo_transceivers::UniverseClient.

◆ read()

virtual Measurement roo_transceivers::Universe::read ( const SensorLocator locator) const
pure virtual

Returns the latest known reading of the sensor identified by locator.

If device/sensor is not found, returned measurement is initial (isInitial() == true).

Implemented in roo_transceivers::Multiverse, roo_transceivers::SimpleSensorUniverse, roo_transceivers::TransceiverCollection, and roo_transceivers::UniverseClient.

Referenced by roo_transceivers::BoundSensor::read(), and roo_transceivers::BoundSensingActuator::read().

◆ removeEventListener()

virtual void roo_transceivers::Universe::removeEventListener ( EventListener listener)
inlinevirtual

◆ requestUpdate()

virtual void roo_transceivers::Universe::requestUpdate ( )
pure virtual

◆ write()

virtual bool roo_transceivers::Universe::write ( const ActuatorLocator locator,
float  value 
)
pure virtual

Writes to the actuator identified by locator.

Returns true on success; false if locator is invalid or not found, or if write fails.

Implemented in roo_transceivers::Multiverse, roo_transceivers::SimpleSensorUniverse, roo_transceivers::TransceiverCollection, and roo_transceivers::UniverseClient.

Referenced by roo_transceivers::BoundActuator::write(), and roo_transceivers::BoundSensingActuator::write().


The documentation for this class was generated from the following file: