Open Lighting Architecture
|
Classes | |
struct | broadcast_request_tracker |
Public Types | |
enum | merge_mode { MERGE_HTP, MERGE_LTP } |
Public Member Functions | |
Universe (unsigned int uid, class UniverseStore *store, ExportMap *export_map, Clock *clock) | |
string | Name () const |
unsigned int | UniverseId () const |
merge_mode | MergeMode () const |
bool | IsActive () const |
uint8_t | ActivePriority () const |
const TimeInterval & | RDMDiscoveryInterval () const |
Return the time between RDM discovery operations. | |
const TimeStamp & | LastRDMDiscovery () const |
Get the time of the last discovery run. | |
void | SetName (const string &name) |
void | SetMergeMode (merge_mode merge_mode) |
void | SetRDMDiscoveryInterval (const TimeInterval &discovery_interval) |
bool | SetDMX (const DmxBuffer &buffer) |
const DmxBuffer & | GetDMX () const |
bool | AddPort (InputPort *port) |
bool | AddPort (OutputPort *port) |
bool | RemovePort (InputPort *port) |
bool | RemovePort (OutputPort *port) |
bool | ContainsPort (InputPort *port) const |
bool | ContainsPort (OutputPort *port) const |
unsigned int | InputPortCount () const |
unsigned int | OutputPortCount () const |
void | InputPorts (vector< InputPort * > *ports) |
void | OutputPorts (vector< OutputPort * > *ports) |
bool | AddSourceClient (Client *client) |
bool | RemoveSourceClient (Client *client) |
bool | ContainsSourceClient (Client *client) const |
unsigned int | SourceClientCount () const |
bool | AddSinkClient (Client *client) |
bool | RemoveSinkClient (Client *client) |
bool | ContainsSinkClient (Client *client) const |
unsigned int | SinkClientCount () const |
bool | PortDataChanged (InputPort *port) |
bool | SourceClientDataChanged (Client *client) |
void | CleanStaleSourceClients () |
Clean old source clients. | |
void | SendRDMRequest (const ola::rdm::RDMRequest *request, ola::rdm::RDMCallback *callback) |
void | RunRDMDiscovery (RDMDiscoveryCallback *on_complete, bool full=true) |
void | NewUIDList (OutputPort *port, const ola::rdm::UIDSet &uids) |
void | GetUIDs (ola::rdm::UIDSet *uids) const |
unsigned int | UIDCount () const |
bool | operator== (const Universe &other) |
|
inline |
Return the time between RDM discovery operations.
|
virtual |
Assumption: A class that implements this MUST ensure that as time tends to infinity, the probably that the callback is run tends to 1. That is, there must be no way that a request can be dropped in such a way that the callback is never run. Doing so will either block all subsequent requests, or leak memory depending on the implementation.
Also the implementor of this class should re-write the transaction #, and possibly the UID (changing src UIDs isn't addressed by the RDM spec).
Implements ola::rdm::RDMControllerInterface.
|
inline |
Set the time between periodic RDM discovery operations.
unsigned int ola::Universe::UIDCount | ( | ) | const |
Return the number of uids in the universe