7 #ifndef DOUBLE_SOLENOID_H_
8 #define DOUBLE_SOLENOID_H_
10 #include "SolenoidBase.h"
11 #include "LiveWindow/LiveWindowSendable.h"
12 #include "tables/ITableListener.h"
24 typedef enum {kOff, kForward, kReverse} Value;
26 explicit DoubleSolenoid(uint32_t forwardChannel, uint32_t reverseChannel);
27 DoubleSolenoid(uint8_t moduleNumber, uint32_t forwardChannel, uint32_t reverseChannel);
29 virtual void Set(Value value);
41 virtual void InitSolenoid();
43 uint32_t m_forwardChannel;
44 uint32_t m_reverseChannel;
45 uint8_t m_forwardMask;
46 uint8_t m_reverseMask;
void StopLiveWindowMode()
DoubleSolenoid(uint32_t forwardChannel, uint32_t reverseChannel)
void InitTable(ITable *subTable)
std::string GetSmartDashboardType()
void StartLiveWindowMode()
void ValueChanged(ITable *source, const std::string &key, EntryValue value, bool isNew)
virtual void Set(Value value)
virtual ~DoubleSolenoid()