Dokumentace
This commit is contained in:
parent
b254c6f465
commit
94a5f46320
@ -2,7 +2,7 @@
|
||||
|
||||
Knihovna pro přístup k proměnným, uloženým v JSON formátovaných souborech.
|
||||
|
||||
## Použití
|
||||
## Použití (pro Platformio)
|
||||
|
||||
```
|
||||
git submodule init
|
||||
@ -10,4 +10,9 @@ git submodule add https://git.xpablo.cz/xPablo.cz/sysvars.git lib/sysvars
|
||||
|
||||
```
|
||||
|
||||
Pro svoji práci potřebuje knihovnu ArduinoJSON
|
||||
Pro svoji práci potřebuje knihovnu ArduinoJSON.
|
||||
|
||||
Protože jsou v současnosti používané dva souborové systémy (SPIFFS a LittleFS/LITTLEFS), je možné definicí `USE_LITTLEFS` vynutit překlad pro LittleFS. Pokud tato definice není, použije se SPIFFS. Definice by se měla používat v rámci celého projektu, protože souborový systém může být použitý jen jeden!!!
|
||||
|
||||
|
||||
POZOR!!! Protože mládenci v core pro ESP32 verze 2.0 předělali LITTLEFS na LittleFS, tak bude nutná úprava knihovny. Zatím ale není vystavená verze Core 2.0 pro Platformio, takže úprava zatím není.
|
||||
|
29
library.json
Normal file
29
library.json
Normal file
@ -0,0 +1,29 @@
|
||||
{
|
||||
"name":"sysvars",
|
||||
"description":"Key-Value JSON file storage library the ESP8266 and ESP32 SoC",
|
||||
"keywords":"file, storage",
|
||||
"authors":
|
||||
{
|
||||
"name": "Pavel Brychta",
|
||||
"maintainer": true
|
||||
},
|
||||
"repository":
|
||||
{
|
||||
"type": "git",
|
||||
"url": "https://git.xpablo.cz/xPablo.cz/sysvars.git"
|
||||
},
|
||||
"dependencies": [
|
||||
{
|
||||
"name":"ArduinoJson",
|
||||
"version":"https://github.com/bblanchon/ArduinoJson.git"
|
||||
}
|
||||
],
|
||||
"version": "0.0.1",
|
||||
"license": "MIT",
|
||||
"frameworks": "arduino",
|
||||
"platforms": ["espressif8266", "espressif32"],
|
||||
"build": {
|
||||
"libCompatMode": 2,
|
||||
"libLDFMode": "deep"
|
||||
}
|
||||
}
|
9
library.properties
Normal file
9
library.properties
Normal file
@ -0,0 +1,9 @@
|
||||
name=sysvars
|
||||
version=0.0.1
|
||||
author=Pavel Brychta
|
||||
maintainer=Pavel Brychta <pablo@xpablo.cz>
|
||||
sentence=Key-Value JSON file storage library.
|
||||
paragraph=With this library you can easily store key-value pairs of data into JSON formatted file.
|
||||
category=Other
|
||||
url=https://www.xpablo.cz
|
||||
architectures=esp8266,esp32
|
@ -1,7 +1,9 @@
|
||||
#ifndef _SYSVARS_H_
|
||||
#define _SYSVARS_H_
|
||||
// Key-Value JSON file store unit
|
||||
// Ma za ukol ukladat/nacitat pary key-value do/z JSON
|
||||
#pragma once
|
||||
/** Knihovna sysvars
|
||||
* Copyright (c) 2018-2021 Pavel Brychta, pablo@xpablo.cz
|
||||
*
|
||||
* Knihovna umoznuje ukladani a vycitani paru hodnot typu klic-hodnota do souboru ve formatu JSON
|
||||
**/
|
||||
|
||||
#include <Arduino.h>
|
||||
#include <ArduinoJson.h>
|
||||
@ -39,6 +41,16 @@ enum {
|
||||
# define SYSVAR_DOCUMENT_SIZE (4096)
|
||||
#endif
|
||||
|
||||
/**
|
||||
* @brief Ziskani hodnoty
|
||||
*
|
||||
* @param[in] name Jmeno klice
|
||||
* @param result Promenna pro ulozeni vysledku operace (SV_...)
|
||||
*
|
||||
* @tparam T Typ vysledne hodnoty
|
||||
*
|
||||
* @return Vracena hodnota zadaneho klice
|
||||
*/
|
||||
template <typename T>
|
||||
T svGetV(const String& name, int* result = nullptr)
|
||||
{
|
||||
@ -69,6 +81,17 @@ T svGetV(const String& name, int* result = nullptr)
|
||||
return retval;
|
||||
}
|
||||
|
||||
/**
|
||||
* @brief Ziskani hodnoty klice
|
||||
*
|
||||
* @param[in] name Jmeno klice
|
||||
* @param result Promenna pro ulozeni vysledku operace
|
||||
* @param[in] fname Jmeno souboru s JSON parametry
|
||||
*
|
||||
* @tparam T Typ vysledne hodnoty
|
||||
*
|
||||
* @return Hodnota zadaneho klice
|
||||
*/
|
||||
template <typename T>
|
||||
T svGetV(const String& name, int* result, const String& fname)
|
||||
{
|
||||
@ -99,6 +122,16 @@ T svGetV(const String& name, int* result, const String& fname)
|
||||
return retval;
|
||||
}
|
||||
|
||||
/**
|
||||
* @brief Ulozeni hodnoty do klice
|
||||
*
|
||||
* @param[in] name Jmeno klice
|
||||
* @param[in] value Ukladana hodnota
|
||||
*
|
||||
* @tparam T Typ ukladane hodnoty
|
||||
*
|
||||
* @return Chybovy stav operace (SV_...)
|
||||
*/
|
||||
template <typename T>
|
||||
int svSetV(const String& name, T value)
|
||||
{
|
||||
@ -126,6 +159,17 @@ int svSetV(const String& name, T value)
|
||||
return res;
|
||||
}
|
||||
|
||||
/**
|
||||
* @brief Ulozeni hodnoty klice
|
||||
*
|
||||
* @param[in] name Jmeno klice
|
||||
* @param[in] value Ukladana hodnota
|
||||
* @param[in] fname Jmeno souboru s JSON daty
|
||||
*
|
||||
* @tparam T Typ ukladane hodnoty
|
||||
*
|
||||
* @return Chybovy stav operace (SV_...)
|
||||
*/
|
||||
template <typename T>
|
||||
int svSetV(const String& name, T value, const String& fname)
|
||||
{
|
||||
@ -153,4 +197,3 @@ int svSetV(const String& name, T value, const String& fname)
|
||||
|
||||
return res;
|
||||
}
|
||||
#endif
|
||||
|
Loading…
Reference in New Issue
Block a user