25 #ifndef ACE_SEGMENT_DRIVER_H 26 #define ACE_SEGMENT_DRIVER_H 29 #include "DimmingDigit.h" 68 virtual void configure();
97 void setPattern(uint8_t digit, SegmentPatternType pattern,
98 uint8_t brightness = DimmingDigit::kOn);
129 uint8_t numDigits,
bool ownsLedMatrix =
false):
130 mLedMatrix(ledMatrix),
131 mDimmingDigits(dimmingDigits),
132 mNumDigits(numDigits),
133 mOwnsLedMatrix(ownsLedMatrix)
138 const uint8_t mNumDigits;
139 const bool mOwnsLedMatrix;
uint8_t SegmentPatternType
Integer type used to store the segment bit patterns of a single digit.
virtual void displayCurrentField()=0
Display the current field of the frame.
Driver(LedMatrix *ledMatrix, DimmingDigit *dimmingDigits, uint8_t numDigits, bool ownsLedMatrix=false)
Constructor.
virtual bool isBrightnessSupported()=0
Returns true if the driver supports brightness.
void setPattern(uint8_t digit, SegmentPatternType pattern, uint8_t brightness=DimmingDigit::kOn)
Set the pattern for a given digit.
virtual ~Driver()
Virtual destructor needed to clean up LedMatrix that was created on the heap by DriverBuilder.
void setBrightness(uint8_t digit, uint8_t brightness)
Set the brightness of the given digit.
Base class of drivers which knows how to transfer the bit patterns stored in the array of DimmingDigi...
virtual uint16_t getFieldsPerFrame()=0
Return number of fields per frame.
static const uint8_t kNumSegments
Number of segments on a single digit.
uint8_t DigitPatternType
Integer type used to store the digit bit patterns of a single segment.