7 #ifndef QUAD_ENCODER_H_
8 #define QUAD_ENCODER_H_
10 #include "ChipObject.h"
11 #include "CounterBase.h"
12 #include "SensorBase.h"
14 #include "PIDSource.h"
15 #include "LiveWindow/LiveWindowSendable.h"
32 Encoder(uint32_t aChannel, uint32_t bChannel,
bool reverseDirection=
false, EncodingType encodingType = k4X);
33 Encoder(uint8_t aModuleNumber, uint32_t aChannel, uint8_t bModuleNumber, uint32_t _bChannel,
bool reverseDirection=
false, EncodingType encodingType = k4X);
66 void InitEncoder(
bool _reverseDirection, EncodingType encodingType);
67 double DecodingScaleFactor();
71 bool m_allocatedASource;
72 bool m_allocatedBSource;
75 double m_distancePerPulse;
77 EncodingType m_encodingType;
78 PIDSourceParameter m_pidSource;
void SetPIDSourceParameter(PIDSourceParameter pidSource)
void InitTable(ITable *subTable)
void StartLiveWindowMode()
void SetReverseDirection(bool reverseDirection)
void StopLiveWindowMode()
void SetMinRate(double minRate)
void SetDistancePerPulse(double distancePerPulse)
int GetSamplesToAverage()
void SetSamplesToAverage(int samplesToAverage)
void SetMaxPeriod(double maxPeriod)
std::string GetSmartDashboardType()