21#ifndef PLUGINS_USBPRO_ARDUINORGBDEVICE_H_
22#define PLUGINS_USBPRO_ARDUINORGBDEVICE_H_
26#include "olad/TokenBucket.h"
27#include "plugins/usbpro/ArduinoWidget.h"
28#include "plugins/usbpro/UsbSerialDevice.h"
42 const std::string &name,
48 std::string
DeviceId()
const {
return m_device_id; }
51 std::string m_device_id;
64 unsigned int initial_count,
70 if (m_bucket.GetToken(*m_wake_time))
71 return m_widget->SendDMX(buffer);
73 OLA_INFO <<
"Port rated limited, dropping frame";
94 std::string m_description;
A class used to hold a single universe of DMX data.
The base class for all 1 argument callbacks.
Definition Callback.h:982
Used to hold a single universe of DMX data.
Definition DmxBuffer.h:49
Definition TokenBucket.h:29
The interface for the SelectServer.
Definition SelectServerInterface.h:42
Definition ArduinoRGBDevice.h:38
std::string DeviceId() const
The device ID.
Definition ArduinoRGBDevice.h:48
Definition ArduinoRGBDevice.h:58
bool WriteDMX(const DmxBuffer &buffer, uint8_t)
Write DMX data to this port.
Definition ArduinoRGBDevice.h:69
void RunFullDiscovery(ola::rdm::RDMDiscoveryCallback *callback)
This is a noop for ports that don't support RDM.
Definition ArduinoRGBDevice.h:82
void RunIncrementalDiscovery(ola::rdm::RDMDiscoveryCallback *callback)
This is a noop for ports that don't support RDM.
Definition ArduinoRGBDevice.h:86
std::string Description() const
Fetch the string description for a Port.
Definition ArduinoRGBDevice.h:67
void SendRDMRequest(ola::rdm::RDMRequest *request, ola::rdm::RDMCallback *callback)
Handle an RDMRequest, subclasses can implement this to support RDM.
Definition ArduinoRGBDevice.h:77
Definition UsbSerialDevice.h:36
RDM Commands that represent requests (GET, SET or DISCOVER).
Definition RDMCommand.h:234
#define OLA_INFO
Definition Logging.h:81
The namespace containing all OLA symbols.
Definition Credentials.cpp:44