74 bool writeSectionPreamble()
override;
75 bool initFromStorage()
override;
76 void deleteAll()
override;
77 bool prepareSaveState()
override;
78 bool prepareSizeCheck()
override;
79 bool prepareLoadState()
override;
80 bool readState(
unsigned char *,
int)
override;
81 bool writeState(
const unsigned char *,
int)
override;
82 bool finalizeSaveState()
override;
83 bool finalizeSizeCheck()
override;
84 bool finalizeLoadState()
override;
85 void notifyUpdate()
override;
88 uint16_t getSizeValue(uint16_t availableSize)
override;
89 void checkIfIsEnoughSpaceForState();
91 uint32_t getFirstSlotAddress()
const;
92 uint32_t getNextSlotAddress(uint32_t slotAddress)
const;
93 uint64_t slotSize()
const;
94 uint32_t updateStateEntryAddress();
95 bool isDataDifferent(uint32_t firstAddress, uint32_t secondAddress,
int size);
96 uint32_t sectionOffset = 0;
97 uint32_t reservedSize;
98 uint32_t elementStateSize = 0;
99 uint32_t stateSlotNewSize = 0;
100 uint32_t currentStateOffset = 0;
102 bool elementStateCrcCValid =
false;
104 bool storageStateOk =
false;
105 bool initDone =
false;
106 bool dataChanged =
false;
107 int repeatBeforeSwitchToAnotherSlot = 0;
109 uint16_t writeCount = 0;
110 uint32_t currentSlotAddress = 0;
Definition state_wear_leveling_byte.h:50