FastLED 3.10.8
Loading...
Searching...
No Matches
types.h
Go to the documentation of this file.
1#pragma once
2
3#include "fl/stl/json.h"
4#include "fl/stl/stdint.h"
5#include "fl/stl/string.h"
6#include "fl/stl/noexcept.h"
7
8namespace fl {
9
15struct RpcResult {
16 fl::string functionName; // Name of function that executed
17 fl::json result; // Return value (null if no return)
18 u32 scheduledAt; // Timestamp when scheduled (0 for immediate)
19 u32 receivedAt; // Timestamp when RPC request received
20 u32 executedAt; // Timestamp when function executed
21 bool wasScheduled; // true if scheduled, false if immediate
22
28};
29
33enum class RemoteClearFlags : u8 {
34 None = 0,
35 Results = 1 << 0,
36 Scheduled = 1 << 1,
37 Functions = 1 << 2,
39};
40
41// Bitwise operators for RemoteClearFlags
43 return static_cast<RemoteClearFlags>(static_cast<u8>(a) | static_cast<u8>(b));
44}
45
47 return static_cast<RemoteClearFlags>(static_cast<u8>(a) & static_cast<u8>(b));
48}
49
51 return static_cast<u8>(flags) == 0;
52}
53
54} // namespace fl
FastLED's Elegant JSON Library: fl::json
unsigned char u8
Definition stdint.h:131
u8 u8 fract8 blur_amount FL_NO_EXCEPT
Definition blur.h:186
FASTLED_FORCE_INLINE CRGB operator&(const CRGB &p1, const CRGB &p2) FL_NO_EXCEPT
Combine two CRGB objects, taking the smallest value of each channel.
Definition crgb.h:794
FASTLED_FORCE_INLINE CRGB operator|(const CRGB &p1, const CRGB &p2) FL_NO_EXCEPT
Combine two CRGB objects, taking the largest value of each channel.
Definition crgb.h:802
RemoteClearFlags
Flags for clearing Remote state (can be OR'd together)
Definition types.h:33
@ Scheduled
Clear scheduled calls.
Definition types.h:36
@ All
Clear everything.
Definition types.h:38
@ Functions
Clear registered functions.
Definition types.h:37
@ Results
Clear results from executed functions.
Definition types.h:35
bool operator!(RemoteClearFlags flags) FL_NO_EXCEPT
Definition types.h:50
Base definition for an LED controller.
Definition crgb.hpp:179
u32 executedAt
Definition types.h:20
fl::json to_json() const FL_NO_EXCEPT
Serialize result to JSON object (compact single-line format)
Definition types.cpp.hpp:5
u32 receivedAt
Definition types.h:19
fl::json result
Definition types.h:17
bool wasScheduled
Definition types.h:21
u32 scheduledAt
Definition types.h:18
fl::string functionName
Definition types.h:16
Result metadata for executed RPC calls.
Definition types.h:15