Open Lighting Architecture  0.9.0
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Groups Pages
Public Member Functions | List of all members
ola::rdm::DiscoverableQueueingRDMController Class Reference

Detailed Description

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.

Inheritance diagram for ola::rdm::DiscoverableQueueingRDMController:
ola::rdm::QueueingRDMController ola::rdm::RDMControllerInterface

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 std::vector< std::string > &packets)
- Protected Attributes inherited from ola::rdm::QueueingRDMController
RDMControllerInterfacem_controller
unsigned int m_max_queue_size
std::queue
< outstanding_rdm_request
m_pending_requests
bool m_rdm_request_pending
bool m_active
RDMCallbackm_callback
const ola::rdm::RDMResponsem_response
std::vector< std::string > m_packets

Constructor & Destructor Documentation

ola::rdm::DiscoverableQueueingRDMController::DiscoverableQueueingRDMController ( DiscoverableRDMControllerInterface controller,
unsigned int  max_queue_size 
)

Constructor for the DiscoverableQueueingRDMController

Member Function Documentation

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.


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