22 #ifndef PLUGINS_USBDMX_EUROLITEPROOUTPUTPORT_H_
23 #define PLUGINS_USBDMX_EUROLITEPROOUTPUTPORT_H_
28 #include "ola/thread/Thread.h"
29 #include "olad/Port.h"
40 libusb_device *usb_device);
42 std::string SerialNumber()
const {
return m_serial; }
47 bool WriteDMX(
const DmxBuffer &buffer, uint8_t priority);
48 std::string Description()
const {
return ""; }
51 static const unsigned int URB_TIMEOUT_MS = 500;
52 static const unsigned int UDMX_SET_CHANNEL_RANGE = 0x0002;
53 static const unsigned char ENDPOINT = 0x02;
54 static const char EXPECTED_MANUFACTURER[];
55 static const char EXPECTED_PRODUCT[];
56 static const uint8_t DMX_LABEL = 6;
59 int m_interface_number;
62 libusb_device *m_usb_device;
63 libusb_device_handle *m_usb_handle;
68 bool SendDMX(
const DmxBuffer &buffer_old);
70 bool GetDescriptorString(libusb_device_handle *usb_handle,
73 bool LocateInterface();
76 enum { FRAME_SIZE = 518 };
81 #endif // PLUGINS_USBDMX_EUROLITEPROOUTPUTPORT_H_