21#ifndef PLUGINS_USBDMX_ASYNCUSBSENDER_H_
22#define PLUGINS_USBDMX_ASYNCUSBSENDER_H_
26#include "AsyncUsbTransceiverBase.h"
27#include "libs/usb/LibUsbAdaptor.h"
30#include "ola/thread/Mutex.h"
50 libusb_device *usb_device);
A class used to hold a single universe of DMX data.
Used to hold a single universe of DMX data.
Definition DmxBuffer.h:49
A base class that send DMX data asynchronously to a libusb_device.
Definition AsyncUsbSender.h:42
virtual ~AsyncUsbSender()
Destructor.
Definition AsyncUsbSender.cpp:38
void TransferComplete(struct libusb_transfer *transfer)
Called from the libusb callback when the asynchronous transfer completes.
Definition AsyncUsbSender.cpp:59
virtual void PostTransferHook()
Called when the transfer completes.
Definition AsyncUsbSender.h:89
bool SendDMX(const DmxBuffer &buffer)
Send one frame of DMX data.
Definition AsyncUsbSender.cpp:42
virtual bool PerformTransfer(const DmxBuffer &buffer)=0
Perform the DMX transfer.
AsyncUsbSender(ola::usb::LibUsbAdaptor *const adaptor, libusb_device *usb_device)
Create a new AsyncUsbSender.
Definition AsyncUsbSender.cpp:32
bool TransferPending() const
Check if there is a pending transfer.
Definition AsyncUsbSender.h:95
A base class that implements common functionality to send or receive DMX asynchronously to a libusb_d...
Definition AsyncUsbTransceiverBase.h:39
Wraps calls to libusb so we can test the code.
Definition LibUsbAdaptor.h:36
The namespace containing all OLA symbols.
Definition Credentials.cpp:44