FastLED 3.9.15
Loading...
Searching...
No Matches

◆ ParseJson() [1/2]

bool fl::ScreenMap::ParseJson ( const char * jsonStrScreenMap,
const char * screenMapName,
ScreenMap * screenmap,
Str * err = nullptr )
static

Definition at line 80 of file screenmap.cpp.

82 {
83#if !FASTLED_ENABLE_JSON
84 if (err) {
85 *err = "JSON not enabled";
86 }
87 return false;
88#else
89 FixedMap<Str, ScreenMap, 16> segmentMaps;
90 bool ok = ParseJson(jsonStrScreenMap, &segmentMaps, err);
91 if (!ok) {
92 return false;
93 }
94 if (segmentMaps.size() == 0) {
95 return false;
96 }
97 if (segmentMaps.has(screenMapName)) {
98 *screenmap = segmentMaps[screenMapName];
99 return true;
100 }
101 Str _err = "ScreenMap not found: ";
102 _err.append(screenMapName);
103 if (err) {
104 *err = _err;
105 }
106 FASTLED_WARN(_err.c_str());
107 return false;
108#endif
109}
static bool ParseJson(const char *jsonStrScreenMap, FixedMap< Str, ScreenMap, 16 > *segmentMaps, Str *err=nullptr)
Definition screenmap.cpp:37
#define FASTLED_WARN
Definition warn.h:7

References ScreenMap(), fl::Str::append(), fl::StrN< SIZE >::c_str(), FASTLED_WARN, fl::FixedMap< Key, Value, N >::has(), ParseJson(), and fl::FixedMap< Key, Value, N >::size().

+ Here is the call graph for this function: