21 #ifndef PLUGINS_USBPRO_DMXTERWIDGET_H_
22 #define PLUGINS_USBPRO_DMXTERWIDGET_H_
24 #include "ola/io/SelectServerInterface.h"
29 #include "plugins/usbpro/BaseUsbProWidget.h"
62 uint8_t m_transaction_number;
64 void HandleMessage(uint8_t label,
67 void HandleTodResponse(
const uint8_t *data,
unsigned int length);
68 void HandleRDMResponse(
const uint8_t *data,
71 void HandleBroadcastRDMResponse(
const uint8_t *data,
unsigned int length);
72 void HandleShutdown(
const uint8_t *data,
unsigned int length);
75 static const uint8_t RDM_REQUEST_LABEL;
76 static const uint8_t RDM_BCAST_REQUEST_LABEL;
77 static const uint8_t TOD_LABEL;
78 static const uint8_t DISCOVERY_BRANCH_LABEL;
79 static const uint8_t FULL_DISCOVERY_LABEL;
80 static const uint8_t INCREMENTAL_DISCOVERY_LABEL;
81 static const uint8_t SHUTDOWN_LABAEL;
84 RC_CHECKSUM_ERROR = 1,
86 RC_FRAMING_ERROR2 = 3,
88 RC_BAD_SUB_STARTCODE = 5,
91 RC_PACKET_TOO_SHORT = 8,
92 RC_PACKET_TOO_LONG = 9,
93 RC_PHYSICAL_LENGTH_MISMATCH = 10,
94 RC_PDL_LENGTH_MISMATCH = 11,
95 RC_TRANSACTION_MISMATCH = 12,
96 RC_BAD_RESPONSE_TYPE = 13,
97 RC_GOOD_RESPONSE = 14,
107 RC_NACK_UNKNOWN_PID = 24,
108 RC_NACK_FORMAT_ERROR = 25,
109 RC_NACK_HARDWARE_FAULT = 26,
110 RC_NACK_PROXY_REJECT = 27,
111 RC_NACK_WRITE_PROECT = 28,
112 RC_NACK_COMMAND_CLASS = 29,
113 RC_NACK_DATA_RANGE = 30,
114 RC_NACK_BUFFER_FULL = 31,
115 RC_NACK_PACKET_SIZE = 32,
116 RC_NACK_SUB_DEVICE_RANGE = 33,
117 RC_NACK_PROXY_QUEUE_BUFFER_FULL = 34,
118 RC_DEST_UID_MISMATCH = 40,
119 RC_SRC_UID_MISMATCH = 41,
120 RC_SUBDEVICE_MISMATCH = 42,
121 RC_COMMAND_CLASS_MISMATCH = 43,
122 RC_PARAM_ID_MISMATCH = 44,
136 unsigned int queue_size = 20);
139 void Stop() { m_impl->
Stop(); }
155 return m_impl->GetDescriptor();
161 DmxterWidgetImpl *m_impl;
167 #endif // PLUGINS_USBPRO_DMXTERWIDGET_H_