Open Lighting Architecture  Latest Git
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:
Inheritance graph
[legend]
Collaboration diagram for ola::plugin::usbpro::EnttecPort:
Collaboration graph
[legend]

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 (ola::rdm::RDMRequest *request, ola::rdm::RDMCallback *on_complete)
 Send a RDM command. More...
 
void RunFullDiscovery (ola::rdm::RDMDiscoveryCallback *callback)
 Start a full discovery operation. More...
 
void RunIncrementalDiscovery (ola::rdm::RDMDiscoveryCallback *callback)
 Start an incremental discovery operation. More...
 

Friends

class ::EnttecUsbProWidgetTest
 

Constructor & Destructor Documentation

◆ EnttecPort()

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

EnttecUsbProWidget Constructor

Member Function Documentation

◆ RunFullDiscovery()

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

Start a full discovery operation.

Parameters
callbackThe callback run when discovery completes. This may run immediately in some implementations.

Implements ola::rdm::DiscoverableRDMControllerInterface.

◆ RunIncrementalDiscovery()

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

Start an incremental discovery operation.

Parameters
callbackThe callback run when discovery completes. This may run immediately in some implementations.

Implements ola::rdm::DiscoverableRDMControllerInterface.

◆ SendRDMRequest()

void ola::plugin::usbpro::EnttecPort::SendRDMRequest ( ola::rdm::RDMRequest request,
ola::rdm::RDMCallback on_complete 
)
virtual

Send a RDM command.

Parameters
requestthe RDMRequest, ownership is transferred.
on_completeThe 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.


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