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";
79 return m_widget->SendRDMRequest(request, callback);
83 m_widget->RunFullDiscovery(callback);
87 m_widget->RunIncrementalDiscovery(callback);
94 std::string m_description;
99 #endif // PLUGINS_USBPRO_ARDUINORGBDEVICE_H_ Definition: ArduinoRGBDevice.h:58
std::string Description() const
Fetch the string description for a Port.
Definition: ArduinoRGBDevice.h:67
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
#define OLA_INFO
Definition: Logging.h:83
bool WriteDMX(const DmxBuffer &buffer, uint8_t)
Write DMX data to this port.
Definition: ArduinoRGBDevice.h:69
A class used to hold a single universe of DMX data.
Definition: TokenBucket.h:29
The interface for the SelectServer.
Definition: SelectServerInterface.h:42
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
The base class for all 1 argument callbacks.
Definition: Callback.h:982
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
Definition: ArduinoRGBDevice.h:38
The namespace containing all OLA symbols.
Definition: Credentials.cpp:44
Represents a point in time with microsecond accuracy.
Definition: Clock.h:191
std::string DeviceId() const
The device ID.
Definition: ArduinoRGBDevice.h:48