Remote(RequestSource source, ResponseSink sink)
Construct with I/O callbacks.
fl::function< fl::optional< fl::json >()> RequestSource
fl::function< void(const fl::json &)> ResponseSink
fl::json getPlaylistConfig() const
Get playlist configuration.
fl::vector< u16 > mPlaylistDurations
void setState(const fl::json &wledState)
Set WLED state from JSON object.
fl::vector< u16 > mPlaylistTransitions
const WLEDSegment & getSegment(size_t index) const
Get segment by index.
const fl::vector< WLEDSegment > & getSegments() const
Get all segments.
bool getUdpSend() const
Get UDP sync send setting.
void stubResponseSink(const fl::json &response)
Stub response sink callback.
fl::optional< fl::json > stubRequestSource()
Stub request source callback.
bool getUdpReceive() const
Get UDP sync receive setting.
u8 getBrightness() const
Get WLED brightness.
u8 mNightlightTargetBrightness
u8 getNightlightDuration() const
Get nightlight duration.
WLED(RequestSource source, ResponseSink sink)
Construct WLED with custom I/O callbacks.
bool getNightlightOn() const
Get nightlight active state.
size_t getSegmentCount() const
Get segment count.
u8 getLiveOverride() const
Get live data override setting.
fl::vector< i16 > mPlaylistPresets
WLED() FL_NOEXCEPT
Construct WLED with default stub I/O callbacks.
i16 getPreset() const
Get active preset ID.
u8 getNightlightTargetBrightness() const
Get nightlight target brightness.
fl::vector< WLEDSegment > mSegments
fl::json getState() const
Get current WLED state as JSON object.
u8 getMainSegment() const
Get main segment index.
const WLEDSegment * findSegmentById(u8 id) const
Find segment by ID.
bool hasPlaylistConfig() const
Check if playlist is active.
u16 getTransition() const
Get transition duration.
u8 getNightlightMode() const
Get nightlight mode.
bool getOn() const
Get WLED on/off state.
i16 getPlaylist() const
Get active playlist ID.
Base definition for an LED controller.
WLED segment configuration.