Open Lighting Architecture
|
The DiscoverableQueueingRDMController also handles discovery, and ensures that only a single discovery or RDM request sequence occurs at once.
In this model discovery has a higher precedence that RDM messages.
Public Member Functions | |
DiscoverableQueueingRDMController (DiscoverableRDMControllerInterface *controller, unsigned int max_queue_size) | |
void | RunFullDiscovery (RDMDiscoveryCallback *callback) |
void | RunIncrementalDiscovery (RDMDiscoveryCallback *callback) |
Public Member Functions inherited from ola::rdm::QueueingRDMController | |
QueueingRDMController (RDMControllerInterface *controller, unsigned int max_queue_size) | |
void | Pause () |
void | Resume () |
void | SendRDMRequest (const RDMRequest *request, RDMCallback *on_complete) |
Additional Inherited Members | |
Protected Member Functions inherited from ola::rdm::QueueingRDMController | |
virtual void | TakeNextAction () |
virtual bool | CheckForBlockingCondition () |
void | MaybeSendRDMRequest () |
void | DispatchNextRequest () |
void | HandleRDMResponse (rdm_response_code status, const ola::rdm::RDMResponse *response, const vector< std::string > &packets) |
Protected Attributes inherited from ola::rdm::QueueingRDMController | |
RDMControllerInterface * | m_controller |
unsigned int | m_max_queue_size |
std::queue < outstanding_rdm_request > | m_pending_requests |
bool | m_rdm_request_pending |
bool | m_active |
RDMCallback * | m_callback |
const ola::rdm::RDMResponse * | m_response |
vector< std::string > | m_packets |
ola::rdm::DiscoverableQueueingRDMController::DiscoverableQueueingRDMController | ( | DiscoverableRDMControllerInterface * | controller, |
unsigned int | max_queue_size | ||
) |
Constructor for the DiscoverableQueueingRDMController
void ola::rdm::DiscoverableQueueingRDMController::RunFullDiscovery | ( | RDMDiscoveryCallback * | callback | ) |
Run the full RDM discovery routine. This will either run immediately or after the current request completes.
void ola::rdm::DiscoverableQueueingRDMController::RunIncrementalDiscovery | ( | RDMDiscoveryCallback * | callback | ) |
Run the incremental RDM discovery routine. This will either run immediately or after the current request completes.