33 bool save(uint32_t definitionId,
34 uint16_t definitionVersion,
36 bool load(uint32_t definitionId,
37 uint16_t definitionVersion,
41 bool contains(uint32_t definitionId, uint16_t definitionVersion)
const;
42 bool contentEquals(uint32_t definitionId,
43 uint16_t definitionVersion,
46 bool erase(uint32_t definitionId, uint16_t definitionVersion);
49 bool beginStagedSave(uint32_t definitionId,
50 uint16_t definitionVersion,
58 uint32_t definitionId,
59 uint16_t definitionVersion,
64 uint32_t definitionId,
65 uint16_t definitionVersion,
70 bool verifyCrc32(
const char *json,
72 uint32_t expectedCrc32)
const;
73 bool readActiveHeader(uint8_t index,
75 uint8_t *activeVariant =
nullptr,
76 uint16_t *chunkCount =
nullptr,
77 uint16_t *chunkSize =
nullptr)
const;
78 bool loadAndRepairActiveHeader(uint8_t index,
80 uint8_t *activeVariant =
nullptr,
81 uint16_t *chunkCount =
nullptr,
82 uint16_t *chunkSize =
nullptr)
const;
83 bool loadHeader(uint8_t index,
86 uint16_t *chunkCount =
nullptr,
87 uint16_t *chunkSize =
nullptr)
const;
88 bool saveSlot(uint8_t index,
89 uint32_t definitionId,
90 uint16_t definitionVersion,
94 bool saveHeader(uint8_t index,
99 bool loadPayload(uint8_t slot,
105 size_t jsonSize)
const;
106 bool eraseChunks(uint8_t index, uint8_t variant);
107 bool eraseVariant(uint8_t index, uint8_t variant);
108 bool eraseLegacySlot(uint8_t index);
109 bool eraseSlot(uint8_t index);
110 bool setActiveVariant(uint8_t index, uint8_t variant);
111 bool variantExists(uint8_t index, uint8_t variant)
const;
112 bool slotExists(uint8_t index)
const;
113 int findSlot(uint32_t definitionId,
114 uint16_t definitionVersion,
116 int findFreeSlot()
const;
117 static uint8_t otherVariant(uint8_t variant);
118 static bool isValidVariant(uint8_t variant);
120 static bool makeActKey(uint8_t index,
char *output,
size_t outputSize);
121 static bool makeHeaderKey(uint8_t index,
125 static bool makeChunkKey(uint8_t index,
130 static bool makeLegacyHeaderKey(uint8_t index,
133 static bool makeLegacyChunkKey(uint8_t index,