Open Lighting Architecture
Latest Git
|
Public Types | |
enum | merge_mode { MERGE_HTP, MERGE_LTP } |
Public Member Functions | |
Universe (unsigned int uid, class UniverseStore *store, ExportMap *export_map, Clock *clock) | |
std::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. More... | |
const TimeStamp & | LastRDMDiscovery () const |
Get the time of the last discovery run. | |
void | SetName (const std::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 (std::vector< InputPort *> *ports) const |
void | OutputPorts (std::vector< OutputPort *> *ports) const |
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 (ola::rdm::RDMRequest *request, ola::rdm::RDMCallback *callback) |
Send a RDM command. More... | |
void | RunRDMDiscovery (ola::rdm::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 |
uint8_t | GetRDMTransactionNumber () |
bool | operator== (const Universe &other) |
uint8_t ola::Universe::GetRDMTransactionNumber | ( | ) |
Return the RDM transaction number to use
|
inline |
Return the time between RDM discovery operations.
|
virtual |
Send a RDM command.
request | the RDMRequest, ownership is transferred. |
on_complete | The callback to run when the request completes. |
Implementors much ensure that the callback is always run at some point. In other words, 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 may want to re-write the transaction #, and possibly the UID (changing src UIDs isn't addressed by the RDM spec).
The RDMRequest may be a DISCOVERY_COMMAND, if the implementation does not support DISCOVERY_COMMANDs then the callback should be run with ola::rdm::RDM_PLUGIN_DISCOVERY_NOT_SUPPORTED.
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
|
static |