21 #ifndef PLUGINS_USBPRO_ENTTECUSBPROWIDGETIMPL_H_ 22 #define PLUGINS_USBPRO_ENTTECUSBPROWIDGETIMPL_H_ 31 #include "ola/util/Watchdog.h" 41 RECEIVED_DMX_LABEL_1 = 5,
52 RECEIVED_DMX_LABEL_2 = 156,
57 RDM_DISCOVERY_2 = 196,
68 uint8_t change_to_rx_mode;
71 uint8_t rdm_discovery;
89 SendCallback *send_cb,
bool no_rdm_dub_timeout =
false);
94 const DmxBuffer &FetchDMX()
const {
return m_input_buffer; }
97 bool ChangeToReceiveMode(
bool change_only);
99 bool SetParameters(uint8_t break_time, uint8_t mab_time, uint8_t rate);
116 void HandleRDMTimeout(
unsigned int length);
117 void HandleParameters(
const uint8_t *data,
unsigned int length);
118 void HandleIncomingDataMessage(
const uint8_t *data,
unsigned int length);
119 void HandleDMXDiff(
const uint8_t *data,
unsigned int length);
121 void ClockWatchdog();
122 void WatchdogFired();
125 SendCallback *m_send_cb;
132 std::auto_ptr<ola::Callback0<void> > m_dmx_callback;
135 std::deque<usb_pro_params_callback*> m_outstanding_param_callbacks;
140 uint8_t m_transaction_number;
142 std::auto_ptr<const ola::rdm::RDMRequest> m_pending_request;
149 const uint8_t *m_discovery_response;
150 unsigned int m_discovery_response_size;
151 bool m_no_rdm_dub_timeout;
153 void HandleDMX(
const uint8_t *data,
unsigned int length);
157 bool PackAndSendRDMRequest(uint8_t label,
161 static const unsigned int PORT_ID = 1;
163 static const unsigned int WATCHDOG_LIMIT = 2;
168 #endif // PLUGINS_USBPRO_ENTTECUSBPROWIDGETIMPL_H_ Represents a set of RDM UIDs.
Definition: UIDSet.h:48
The interface that can send RDM commands, as well as perform discovery operations.
Definition: RDMControllerInterface.h:104
RDM Commands that represent requests (GET, SET or DISCOVER).
Definition: RDMCommand.h:234
Used to hold a single universe of DMX data.
Definition: DmxBuffer.h:49
A RDM unique identifier (UID).
Constants used throughout OLA.
Definition: EnttecUsbProWidgetImpl.h:81
A 3 argument callback which can be called multiple times.
Definition: Callback.h:2838
The base class for all 1 argument callbacks.
Definition: Callback.h:982
An asynchronous RDM Discovery algorithm.
Definition: DiscoveryAgent.h:135
Definition: EnttecUsbProWidgetImpl.h:62
Represents a RDM UID.
Definition: UID.h:57
The namespace containing all OLA symbols.
Definition: Credentials.cpp:44
The base class for all 2 argument callbacks.
Definition: Callback.h:1885
Detects if an operation stalls.
Definition: Watchdog.h:70
The interface used by the DiscoveryTarget to send RDM commands.
Definition: DiscoveryAgent.h:53
A 2 argument callback which deletes itself after it's run.
Definition: Callback.h:1907
Classes that represent RDM commands.