Something went wrong. Try again.
A fork of https://github.com/crosspoint-reader/crosspoint-reader
Something went wrong. Try again.
1.1 kB · 36 lines
C
12345678910111213141516171819202122232425262728293031323334353637#pragma once
#include <FrontlightManager.h>
// Thin firmware HAL over the SDK frontlight manager. It is inert on boards// without a frontlight, so callers do not need board-specific conditionals.class HalFrontlight { public: static HalFrontlight& getInstance() { return instance; }
void begin(uint8_t brightness, uint8_t warmth, bool on);
bool present() const { return manager.present(); } bool hasColorTemperature() const { return manager.hasColorTemperature(); }
void setBrightness(uint8_t percent); void setWarmth(uint8_t warmPercent); void setOn(bool on);
uint8_t brightness() const { return lastBrightness; } uint8_t warmth() const { return manager.colorTemperature(); } bool isOn() const { return lit; }
private: HalFrontlight() = default;
FrontlightManager manager; // The SDK represents off as brightness 0. Keep the selected brightness so // toggling back on restores it. uint8_t lastBrightness = 60; bool lit = false;
static HalFrontlight instance;};
#define Frontlight HalFrontlight::getInstance()