| 1234567891011121314151617181920212223242526272829303132333435363738394041424344454647 | 
							- #pragma once
 
- #include <stdio.h>
 
- #include <string.h>
 
- #include "nvs.h"
 
- #include "assert.h"
 
- #include "cJSON.h"
 
- #ifdef __cplusplus
 
- extern "C" {
 
- #endif
 
- #ifdef __cplusplus
 
- }
 
- #endif
 
- #define DECLARE_SET_DEFAULT(t) void config_set_default_## t (const char *key, t  value);
 
- #define DECLARE_GET_NUM(t) esp_err_t config_get_## t (const char *key, t *  value);
 
- #ifndef FREE_RESET
 
- #define FREE_RESET(p) if(p!=NULL) { free(p); p=NULL; }
 
- #endif
 
- DECLARE_SET_DEFAULT(uint8_t);
 
- DECLARE_SET_DEFAULT(uint16_t);
 
- DECLARE_SET_DEFAULT(uint32_t);
 
- DECLARE_SET_DEFAULT(int8_t);
 
- DECLARE_SET_DEFAULT(int16_t);
 
- DECLARE_SET_DEFAULT(int32_t);
 
- DECLARE_GET_NUM(uint8_t);
 
- DECLARE_GET_NUM(uint16_t);
 
- DECLARE_GET_NUM(uint32_t);
 
- DECLARE_GET_NUM(int8_t);
 
- DECLARE_GET_NUM(int16_t);
 
- DECLARE_GET_NUM(int32_t);
 
- bool config_has_changes();
 
- void config_commit_to_nvs();
 
- void config_start_timer();
 
- void config_init();
 
- void * config_alloc_get_default(nvs_type_t type, const char *key, void * default_value, size_t blob_size);
 
- void * config_alloc_get_str(const char *key, char *lead, char *fallback);
 
- void config_delete_key(const char *key);
 
- void config_set_default(nvs_type_t type, const char *key, void * default_value, size_t blob_size);
 
- void * config_alloc_get(nvs_type_t nvs_type, const char *key) ;
 
- bool wait_for_commit();
 
- char * config_alloc_get_json(bool bFormatted);
 
- esp_err_t config_set_value(nvs_type_t nvs_type, const char *key, const void * value);
 
- nvs_type_t  config_get_item_type(cJSON * entry);
 
- void * config_safe_alloc_get_entry_value(nvs_type_t nvs_type, cJSON * entry);
 
 
  |