27#ifdef ARDUINO_ARCH_ESP32
28# include <driver/uart.h>
42 virtual bool SetConfig (ArduinoJson::JsonObject & jsonConfig);
43 virtual void GetConfig (ArduinoJson::JsonObject & jsonConfig);
44 virtual uint32_t
Poll () = 0;
45#ifdef ARDUINO_ARCH_ESP32
46 virtual bool RmtPoll () = 0;
54 virtual void GetStatus (ArduinoJson::JsonObject & jsonStatus) = 0;
55 virtual void BaseGetStatus (ArduinoJson::JsonObject & jsonStatus);
61 virtual void WriteChannelData (uint32_t StartChannelId, uint32_t ChannelCount,
byte *pSourceData);
62 virtual void ReadChannelData (uint32_t StartChannelId, uint32_t ChannelCount,
byte *pTargetData);
63 virtual bool ValidateGpio (gpio_num_t ConsoleTxGpio, gpio_num_t ConsoleRxGpio);
85 uint32_t Now = micros ();
97 #ifdef USE_RMT_DEBUG_COUNTERS
uint8_t OM_PortId_t
Definition OutputMgrPortDefs.hpp:71
Definition OutputCommon.hpp:32
uint32_t FrameStartTimeInMicroSec
Definition OutputCommon.hpp:100
void SetOutputBufferAddress(uint8_t *pNewOutputBuffer)
Definition OutputCommon.hpp:56
c_OutputMgr::e_OutputProtocolType OTYPE_t
Definition OutputCommon.hpp:38
c_OutputCommon(OM_OutputPortDefinition_t &OutputPortDefinition, c_OutputMgr::e_OutputProtocolType outputType)
< Start up the driver and put it into a safe mode
Definition OutputCommon.cpp:28
virtual ~c_OutputCommon()
Definition OutputCommon.cpp:46
uint32_t ActualFrameDurationMicroSec
Definition OutputCommon.hpp:75
virtual void GetDriverName(String &sDriverName)=0
get the name for the instantiated driver
virtual void Begin()
set up the operating environment based on the current config (or defaults)
Definition OutputCommon.hpp:41
uint32_t FrameCount
Definition OutputCommon.hpp:78
OM_OutputPortDefinition_t OutputPortDefinition
Definition OutputCommon.hpp:71
uint8_t * pOutputBuffer
Definition OutputCommon.hpp:76
OM_PortId_t GetOutputPortId()
return the output channel number
Definition OutputCommon.hpp:49
bool Paused
Definition OutputCommon.hpp:79
OM_GPIOS_t GetOutputGpio()
Definition OutputCommon.hpp:52
virtual bool ValidateGpio(gpio_num_t ConsoleTxGpio, gpio_num_t ConsoleRxGpio)
Definition OutputCommon.cpp:143
virtual void ClearStatistics(void)
Definition OutputCommon.cpp:154
bool canRefresh()
Definition OutputCommon.hpp:83
virtual uint32_t GetFrameTimeMs()
Definition OutputCommon.hpp:65
virtual uint32_t GetNumOutputBufferChannelsServiced()=0
virtual bool DriverIsSendingIntensityData()
Definition OutputCommon.hpp:64
uint32_t OutputBufferSize
Definition OutputCommon.hpp:77
uint32_t FrameDurationInMicroSec
Definition OutputCommon.hpp:74
virtual void PauseOutput(bool NewState)
Definition OutputCommon.hpp:60
uint8_t * GetBufferAddress()
Get the address of the buffer into which the E1.31 handler will stuff data.
Definition OutputCommon.hpp:50
virtual void WriteChannelData(uint32_t StartChannelId, uint32_t ChannelCount, byte *pSourceData)
Definition OutputCommon.cpp:108
virtual void BaseGetStatus(ArduinoJson::JsonObject &jsonStatus)
Definition OutputCommon.cpp:54
OTYPE_t OutputType
Definition OutputCommon.hpp:72
bool IsPaused()
Definition OutputCommon.hpp:66
virtual void GetStatus(ArduinoJson::JsonObject &jsonStatus)=0
virtual uint32_t Poll()=0
Call from loop(), renders output data.
virtual uint32_t GetNumOutputBufferBytesNeeded()=0
uint32_t GetBufferUsedSize()
Get the address of the buffer into which the E1.31 handler will stuff data.
Definition OutputCommon.hpp:51
virtual bool SetConfig(ArduinoJson::JsonObject &jsonConfig)
Set a new config in the driver.
Definition OutputCommon.cpp:78
OTYPE_t GetOutputType()
Have the instance report its type.
Definition OutputCommon.hpp:53
virtual void ReadChannelData(uint32_t StartChannelId, uint32_t ChannelCount, byte *pTargetData)
Definition OutputCommon.cpp:130
virtual void ReportNewFrame()
Definition OutputCommon.cpp:66
virtual void GetConfig(ArduinoJson::JsonObject &jsonConfig)
Get the current config used by the driver.
Definition OutputCommon.cpp:95
virtual void SetOutputBufferSize(uint32_t NewOutputBufferSize)
Definition OutputCommon.hpp:57
bool HasBeenInitialized
Definition OutputCommon.hpp:73
e_OutputProtocolType
Definition OutputMgr.hpp:78
Definition OutputMgrPortDefs.hpp:83
Definition OutputMgrPortDefs.hpp:90
OM_GPIOS_t gpios
Definition OutputMgrPortDefs.hpp:93
OM_PortId_t PortId
Definition OutputMgrPortDefs.hpp:91