|
roo_transceivers
API Documentation for roo_transceivers
|
An abstract collection of transceiver devices. More...
#include <universe.h>
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. | |
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.
|
virtualdefault |
|
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().
|
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.
|
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.
|
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.
|
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().
|
inlinevirtual |
Removes a previously registered event listener.
Reimplemented in roo_transceivers::Multiverse, roo_transceivers::TransceiverCollection, roo_transceivers::OneWireUniverse, and roo_transceivers::UniverseClient.
Definition at line 64 of file universe.h.
Referenced by roo_transceivers::UniverseServer::~UniverseServer().
|
pure virtual |
Requests sensor reading update from underlying devices.
Implemented in roo_transceivers::Multiverse, roo_transceivers::TransceiverCollection, roo_transceivers::OneWireUniverse, and roo_transceivers::UniverseClient.
|
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().