7 #ifndef DIGITAL_OUTPUT_H_
8 #define DIGITAL_OUTPUT_H_
10 #include "DigitalSource.h"
11 #include "LiveWindow/LiveWindowSendable.h"
12 #include "tables/ITableListener.h"
27 void Set(uint32_t value);
29 void Pulse(
float length);
43 void SetUpSourceEdge(
bool risingEdge,
bool fallingEdge);
45 virtual void ValueChanged(ITable* source,
const std::string& key, EntryValue value,
bool isNew);
47 void StartLiveWindowMode();
48 void StopLiveWindowMode();
49 std::string GetSmartDashboardType();
50 void InitTable(ITable *subTable);
54 void InitDigitalOutput(uint8_t moduleNumber, uint32_t channel);
57 uint32_t m_pwmGenerator;
virtual uint32_t GetChannelForRouting()
Definition: DigitalOutput.cpp:185
void SetPWMRate(float rate)
Definition: DigitalOutput.cpp:127
virtual bool GetAnalogTriggerForRouting()
Definition: DigitalOutput.cpp:202
Definition: DigitalSource.h:19
Definition: DigitalOutput.h:21
uint32_t GetChannel()
Definition: DigitalOutput.cpp:91
void DisablePWM()
Definition: DigitalOutput.cpp:159
void Pulse(float length)
Definition: DigitalOutput.cpp:102
DigitalOutput(uint32_t channel)
Definition: DigitalOutput.cpp:50
virtual void RequestInterrupts()
Definition: DigitalOutput.cpp:246
void Set(uint32_t value)
Definition: DigitalOutput.cpp:82
void UpdateDutyCycle(float dutyCycle)
Definition: DigitalOutput.cpp:176
virtual ~DigitalOutput()
Definition: DigitalOutput.cpp:70
virtual uint32_t GetModuleForRouting()
Definition: DigitalOutput.cpp:193
void EnablePWM(float initialDutyCycle)
Definition: DigitalOutput.cpp:145
Definition: DigitalModule.h:17
bool IsPulsing()
Definition: DigitalOutput.cpp:112