Open Lighting Architecture  0.9.2
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Groups Pages
Public Member Functions | Friends | List of all members
ola::plugin::usbpro::EnttecPort Class Reference

Detailed Description

A port represents a universe of DMX. It can be used to either send or receive DMX.

Inheritance diagram for ola::plugin::usbpro::EnttecPort:
ola::rdm::DiscoverableRDMControllerInterface ola::rdm::RDMControllerInterface

Public Member Functions

 EnttecPort (EnttecPortImpl *impl, unsigned int queue_size, bool enable_rdm)
bool SendDMX (const DmxBuffer &buffer)
const DmxBufferFetchDMX () const
void SetDMXCallback (ola::Callback0< void > *callback)
bool ChangeToReceiveMode (bool change_only)
void GetParameters (usb_pro_params_callback *callback)
bool SetParameters (uint8_t break_time, uint8_t mab_time, uint8_t rate)
bool SupportsRDM () const
void SendRDMRequest (const ola::rdm::RDMRequest *request, ola::rdm::RDMCallback *on_complete)
void RunFullDiscovery (ola::rdm::RDMDiscoveryCallback *callback)
void RunIncrementalDiscovery (ola::rdm::RDMDiscoveryCallback *callback)

Friends

class ::EnttecUsbProWidgetTest

Constructor & Destructor Documentation

ola::plugin::usbpro::EnttecPort::EnttecPort ( EnttecPortImpl impl,
unsigned int  queue_size,
bool  enable_rdm 
)

EnttecUsbProWidget Constructor

Member Function Documentation

void ola::plugin::usbpro::EnttecPort::RunFullDiscovery ( ola::rdm::RDMDiscoveryCallback callback)
virtual

These methods trigger RDM discovery. The callback may run immediately.

Implements ola::rdm::DiscoverableRDMControllerInterface.

void ola::plugin::usbpro::EnttecPort::SendRDMRequest ( const ola::rdm::RDMRequest request,
ola::rdm::RDMCallback on_complete 
)
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.


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