Lint for config

This commit is contained in:
Magnus Persson 2022-01-06 22:20:23 +01:00
parent 5d9115137f
commit 88bd971b73
2 changed files with 546 additions and 546 deletions

View File

@ -21,8 +21,8 @@ LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
SOFTWARE.
*/
#include "config.h"
#include "helper.h"
#include "src/config.h"
#include "src/helper.h"
#include <LittleFS.h>
Config myConfig;
@ -33,12 +33,12 @@ Config myConfig;
Config::Config() {
// Assiging default values
char buf[30];
sprintf(&buf[0], "%6x", (unsigned int) ESP.getChipId() );
id = String( &buf[0] );
sprintf(&buf[0], "" WIFI_MDNS "%s", getID() );
mDNS = String( &buf[0] );
snprintf(&buf[0], sizeof(buf) "%6x", (unsigned int) ESP.getChipId());
id = String(&buf[0]);
snprintf(&buf[0], sizeof(buf), "" WIFI_MDNS "%s", getID());
mDNS = String(&buf[0]);
#if LOG_LEVEL==6 && !defined( CFG_DISABLE_LOGGING )
#if LOG_LEVEL == 6 && !defined( CFG_DISABLE_LOGGING )
Log.verbose(F("CFG : Created config for %s (%s)." CR), id.c_str(), mDNS.c_str() );
#endif
@ -48,8 +48,8 @@ Config::Config() {
setVoltageFactor(1.59); // Conversion factor for battery
setTempSensorAdj(0.0);
setGravityTempAdj(false);
gyroCalibration = { 0, 0, 0, 0, 0 ,0 };
formulaData = {{ 0, 0, 0, 0, 0},{ 1, 1, 1, 1, 1}};
gyroCalibration = { 0 , 0 , 0 , 0 , 0 , 0 };
formulaData = {{ 0 , 0 , 0 , 0 , 0 } , { 1 , 1 , 1 , 1 , 1 }};
saveNeeded = false;
}
@ -62,7 +62,7 @@ void Config::createJson(DynamicJsonDocument& doc) {
doc[ CFG_PARAM_OTA ] = getOtaURL();
doc[ CFG_PARAM_SSID ] = getWifiSSID();
doc[ CFG_PARAM_PASS ] = getWifiPass();
doc[ CFG_PARAM_TEMPFORMAT ] = String( getTempFormat() );
doc[ CFG_PARAM_TEMPFORMAT ] = String(getTempFormat());
doc[ CFG_PARAM_PUSH_BREWFATHER ] = getBrewfatherPushUrl();
doc[ CFG_PARAM_PUSH_HTTP ] = getHttpPushUrl();
doc[ CFG_PARAM_PUSH_HTTP2 ] = getHttpPushUrl2();
@ -78,7 +78,7 @@ void Config::createJson(DynamicJsonDocument& doc) {
doc[ CFG_PARAM_TEMP_ADJ ] = getTempSensorAdj();
doc[ CFG_PARAM_GRAVITY_TEMP_ADJ ] = isGravityTempAdj();
JsonObject cal = doc.createNestedObject( CFG_PARAM_GYRO_CALIBRATION );
JsonObject cal = doc.createNestedObject(CFG_PARAM_GYRO_CALIBRATION);
cal["ax"] = gyroCalibration.ax;
cal["ay"] = gyroCalibration.ay;
cal["az"] = gyroCalibration.az;
@ -86,48 +86,48 @@ void Config::createJson(DynamicJsonDocument& doc) {
cal["gy"] = gyroCalibration.gy;
cal["gz"] = gyroCalibration.gz;
JsonObject cal2 = doc.createNestedObject( CFG_PARAM_FORMULA_DATA );
cal2[ "a1" ] = reduceFloatPrecision( formulaData.a[0], 2);
cal2[ "a2" ] = reduceFloatPrecision( formulaData.a[1], 2);
cal2[ "a3" ] = reduceFloatPrecision( formulaData.a[2], 2);
cal2[ "a4" ] = reduceFloatPrecision( formulaData.a[3], 2);
cal2[ "a5" ] = reduceFloatPrecision( formulaData.a[4], 2);
JsonObject cal2 = doc.createNestedObject(CFG_PARAM_FORMULA_DATA);
cal2[ "a1" ] = reduceFloatPrecision(formulaData.a[0], 2);
cal2[ "a2" ] = reduceFloatPrecision(formulaData.a[1], 2);
cal2[ "a3" ] = reduceFloatPrecision(formulaData.a[2], 2);
cal2[ "a4" ] = reduceFloatPrecision(formulaData.a[3], 2);
cal2[ "a5" ] = reduceFloatPrecision(formulaData.a[4], 2);
cal2[ "g1" ] = reduceFloatPrecision( formulaData.g[0], 4);
cal2[ "g2" ] = reduceFloatPrecision( formulaData.g[1], 4);
cal2[ "g3" ] = reduceFloatPrecision( formulaData.g[2], 4);
cal2[ "g4" ] = reduceFloatPrecision( formulaData.g[3], 4);
cal2[ "g5" ] = reduceFloatPrecision( formulaData.g[4], 4);
cal2[ "g1" ] = reduceFloatPrecision(formulaData.g[0], 4);
cal2[ "g2" ] = reduceFloatPrecision(formulaData.g[1], 4);
cal2[ "g3" ] = reduceFloatPrecision(formulaData.g[2], 4);
cal2[ "g4" ] = reduceFloatPrecision(formulaData.g[3], 4);
cal2[ "g5" ] = reduceFloatPrecision(formulaData.g[4], 4);
}
//
// Save json document to file
//
bool Config::saveFile() {
if( !saveNeeded ) {
#if LOG_LEVEL==6 && !defined( CFG_DISABLE_LOGGING )
if ( !saveNeeded ) {
#if LOG_LEVEL == 6 && !defined( CFG_DISABLE_LOGGING )
Log.verbose(F("CFG : Skipping save, not needed." CR));
#endif
return true;
}
#if LOG_LEVEL==6 && !defined( CFG_DISABLE_LOGGING )
#if LOG_LEVEL == 6 && !defined( CFG_DISABLE_LOGGING )
Log.verbose(F("CFG : Saving configuration to file." CR));
#endif
File configFile = LittleFS.open(CFG_FILENAME, "w");
if (!configFile) {
if ( !configFile ) {
Log.error(F("CFG : Failed to open file " CFG_FILENAME " for save." CR));
return false;
}
DynamicJsonDocument doc(CFG_JSON_BUFSIZE);
createJson( doc );
createJson(doc);
#if LOG_LEVEL==6 && !defined( CFG_DISABLE_LOGGING )
#if LOG_LEVEL == 6 && !defined( CFG_DISABLE_LOGGING )
serializeJson(doc, Serial);
Serial.print( CR );
Serial.print(CR);
#endif
serializeJson(doc, configFile);
@ -144,18 +144,18 @@ bool Config::saveFile() {
// Load config file from disk
//
bool Config::loadFile() {
#if LOG_LEVEL==6 && !defined( CFG_DISABLE_LOGGING )
#if LOG_LEVEL == 6 && !defined( CFG_DISABLE_LOGGING )
Log.verbose(F("CFG : Loading configuration from file." CR));
#endif
if (!LittleFS.exists(CFG_FILENAME)) {
if ( !LittleFS.exists(CFG_FILENAME) ) {
Log.error(F("CFG : Configuration file does not exist " CFG_FILENAME "." CR));
return false;
}
File configFile = LittleFS.open(CFG_FILENAME, "r");
if (!configFile) {
if ( !configFile ) {
Log.error(F("CFG : Failed to open " CFG_FILENAME "." CR));
return false;
}
@ -164,96 +164,96 @@ bool Config::loadFile() {
DynamicJsonDocument doc(CFG_JSON_BUFSIZE);
DeserializationError err = deserializeJson(doc, configFile);
#if LOG_LEVEL==6
#if LOG_LEVEL == 6
serializeJson(doc, Serial);
Serial.print( CR );
#endif
Serial.print(CR);
#endif
configFile.close();
if( err ) {
if ( err ) {
Log.error(F("CFG : Failed to parse " CFG_FILENAME " file, Err: %s, %d." CR), err.c_str(), doc.capacity());
return false;
}
#if LOG_LEVEL==6
#if LOG_LEVEL == 6
Log.verbose(F("CFG : Parsed configuration file." CR));
#endif
if( !doc[ CFG_PARAM_OTA ].isNull() )
setOtaURL( doc[ CFG_PARAM_OTA ] );
if( !doc[ CFG_PARAM_MDNS ].isNull() )
setMDNS( doc[ CFG_PARAM_MDNS ] );
if( !doc[ CFG_PARAM_SSID ].isNull() )
setWifiSSID( doc[ CFG_PARAM_SSID ] );
if( !doc[ CFG_PARAM_PASS ].isNull() )
setWifiPass( doc[ CFG_PARAM_PASS ] );
if( !doc[ CFG_PARAM_TEMPFORMAT ].isNull() ) {
if ( !doc[ CFG_PARAM_OTA ].isNull() )
setOtaURL(doc[ CFG_PARAM_OTA ]);
if ( !doc[ CFG_PARAM_MDNS ].isNull() )
setMDNS(doc[ CFG_PARAM_MDNS ] );
if ( !doc[ CFG_PARAM_SSID ].isNull() )
setWifiSSID(doc[ CFG_PARAM_SSID ]);
if ( !doc[ CFG_PARAM_PASS ].isNull() )
setWifiPass(doc[ CFG_PARAM_PASS ]);
if ( !doc[ CFG_PARAM_TEMPFORMAT ].isNull() ) {
String s = doc[ CFG_PARAM_TEMPFORMAT ];
setTempFormat( s.charAt(0) );
setTempFormat(s.charAt(0));
}
if( !doc[ CFG_PARAM_PUSH_BREWFATHER ].isNull() )
setBrewfatherPushUrl( doc[ CFG_PARAM_PUSH_BREWFATHER ] );
if( !doc[ CFG_PARAM_PUSH_HTTP ].isNull() )
setHttpPushUrl( doc[ CFG_PARAM_PUSH_HTTP ] );
if( !doc[ CFG_PARAM_PUSH_HTTP2 ].isNull() )
setHttpPushUrl2( doc[ CFG_PARAM_PUSH_HTTP2 ] );
if( !doc[ CFG_PARAM_PUSH_INFLUXDB2 ].isNull() )
setInfluxDb2PushUrl( doc[ CFG_PARAM_PUSH_INFLUXDB2 ] );
if( !doc[ CFG_PARAM_PUSH_INFLUXDB2_ORG ].isNull() )
setInfluxDb2PushOrg( doc[ CFG_PARAM_PUSH_INFLUXDB2_ORG ] );
if( !doc[ CFG_PARAM_PUSH_INFLUXDB2_BUCKET ].isNull() )
setInfluxDb2PushBucket( doc[ CFG_PARAM_PUSH_INFLUXDB2_BUCKET ] );
if( !doc[ CFG_PARAM_PUSH_INFLUXDB2_AUTH ].isNull() )
setInfluxDb2PushToken( doc[ CFG_PARAM_PUSH_INFLUXDB2_AUTH ] );
if( !doc[ CFG_PARAM_SLEEP_INTERVAL ].isNull() )
setSleepInterval( doc[ CFG_PARAM_SLEEP_INTERVAL ].as<int>() );
if( !doc[ CFG_PARAM_PUSH_INTERVAL ].isNull() ) // TODO: @deprecated
setSleepInterval( doc[ CFG_PARAM_PUSH_INTERVAL ].as<int>() ); // TODO: @deprecated
if( !doc[ CFG_PARAM_VOLTAGEFACTOR ].isNull() )
setVoltageFactor( doc[ CFG_PARAM_VOLTAGEFACTOR ].as<float>() );
if( !doc[ CFG_PARAM_GRAVITY_FORMULA ].isNull() )
setGravityFormula( doc[ CFG_PARAM_GRAVITY_FORMULA ] );
if( !doc[ CFG_PARAM_GRAVITY_TEMP_ADJ ].isNull() )
setGravityTempAdj( doc[ CFG_PARAM_GRAVITY_TEMP_ADJ ].as<bool>() );
if( !doc[ CFG_PARAM_GRAVITY_FORMAT ].isNull() ) {
if ( !doc[ CFG_PARAM_PUSH_BREWFATHER ].isNull() )
setBrewfatherPushUrl(doc[ CFG_PARAM_PUSH_BREWFATHER ]);
if ( !doc[ CFG_PARAM_PUSH_HTTP ].isNull() )
setHttpPushUrl(doc[ CFG_PARAM_PUSH_HTTP ]);
if ( !doc[ CFG_PARAM_PUSH_HTTP2 ].isNull() )
setHttpPushUrl2(doc[ CFG_PARAM_PUSH_HTTP2 ]);
if ( !doc[ CFG_PARAM_PUSH_INFLUXDB2 ].isNull() )
setInfluxDb2PushUrl(doc[ CFG_PARAM_PUSH_INFLUXDB2 ]);
if ( !doc[ CFG_PARAM_PUSH_INFLUXDB2_ORG ].isNull() )
setInfluxDb2PushOrg(doc[ CFG_PARAM_PUSH_INFLUXDB2_ORG ]);
if ( !doc[ CFG_PARAM_PUSH_INFLUXDB2_BUCKET ].isNull() )
setInfluxDb2PushBucket(doc[ CFG_PARAM_PUSH_INFLUXDB2_BUCKET ]);
if ( !doc[ CFG_PARAM_PUSH_INFLUXDB2_AUTH ].isNull() )
setInfluxDb2PushToken(doc[ CFG_PARAM_PUSH_INFLUXDB2_AUTH ]);
if ( !doc[ CFG_PARAM_SLEEP_INTERVAL ].isNull() )
setSleepInterval(doc[ CFG_PARAM_SLEEP_INTERVAL ].as<int>());
if ( !doc[ CFG_PARAM_PUSH_INTERVAL ].isNull() ) // TODO: @deprecated
setSleepInterval(doc[ CFG_PARAM_PUSH_INTERVAL ].as<int>()); // TODO: @deprecated
if ( !doc[ CFG_PARAM_VOLTAGEFACTOR ].isNull() )
setVoltageFactor(doc[ CFG_PARAM_VOLTAGEFACTOR ].as<float>());
if ( !doc[ CFG_PARAM_GRAVITY_FORMULA ].isNull() )
setGravityFormula(doc[ CFG_PARAM_GRAVITY_FORMULA ]);
if ( !doc[ CFG_PARAM_GRAVITY_TEMP_ADJ ].isNull() )
setGravityTempAdj(doc[ CFG_PARAM_GRAVITY_TEMP_ADJ ].as<bool>());
if ( !doc[ CFG_PARAM_GRAVITY_FORMAT ].isNull() ) {
String s = doc[ CFG_PARAM_GRAVITY_FORMAT ];
setGravityFormat( s.charAt(0) );
setGravityFormat(s.charAt(0));
}
if( !doc[ CFG_PARAM_TEMP_ADJ ].isNull() )
setTempSensorAdj( doc[ CFG_PARAM_TEMP_ADJ ].as<float>() );
if ( !doc[ CFG_PARAM_TEMP_ADJ ].isNull() )
setTempSensorAdj(doc[ CFG_PARAM_TEMP_ADJ ].as<float>());
if( !doc[ CFG_PARAM_GYRO_CALIBRATION ]["ax"].isNull() )
if ( !doc[ CFG_PARAM_GYRO_CALIBRATION ]["ax"].isNull() )
gyroCalibration.ax = doc[ CFG_PARAM_GYRO_CALIBRATION ]["ax"];
if( !doc[ CFG_PARAM_GYRO_CALIBRATION ]["ay"].isNull() )
if ( !doc[ CFG_PARAM_GYRO_CALIBRATION ]["ay"].isNull() )
gyroCalibration.ay = doc[ CFG_PARAM_GYRO_CALIBRATION ]["ay"];
if( !doc[ CFG_PARAM_GYRO_CALIBRATION ]["az"].isNull() )
if ( !doc[ CFG_PARAM_GYRO_CALIBRATION ]["az"].isNull() )
gyroCalibration.az = doc[ CFG_PARAM_GYRO_CALIBRATION ]["az"];
if( !doc[ CFG_PARAM_GYRO_CALIBRATION ]["gx"].isNull() )
if ( !doc[ CFG_PARAM_GYRO_CALIBRATION ]["gx"].isNull() )
gyroCalibration.gx = doc[ CFG_PARAM_GYRO_CALIBRATION ]["gx"];
if( !doc[ CFG_PARAM_GYRO_CALIBRATION ]["gy"].isNull() )
if ( !doc[ CFG_PARAM_GYRO_CALIBRATION ]["gy"].isNull() )
gyroCalibration.gy = doc[ CFG_PARAM_GYRO_CALIBRATION ]["gy"];
if( !doc[ CFG_PARAM_GYRO_CALIBRATION ]["gz"].isNull() )
if ( !doc[ CFG_PARAM_GYRO_CALIBRATION ]["gz"].isNull() )
gyroCalibration.gz = doc[ CFG_PARAM_GYRO_CALIBRATION ]["gz"];
if( !doc[ CFG_PARAM_FORMULA_DATA ][ "a1" ].isNull() )
if ( !doc[ CFG_PARAM_FORMULA_DATA ][ "a1" ].isNull() )
formulaData.a[0] = doc[ CFG_PARAM_FORMULA_DATA ][ "a1" ].as<double>();
if( !doc[ CFG_PARAM_FORMULA_DATA ][ "a2" ].isNull() )
if ( !doc[ CFG_PARAM_FORMULA_DATA ][ "a2" ].isNull() )
formulaData.a[1] = doc[ CFG_PARAM_FORMULA_DATA ][ "a2" ].as<double>();
if( !doc[ CFG_PARAM_FORMULA_DATA ][ "a3" ].isNull() )
if ( !doc[ CFG_PARAM_FORMULA_DATA ][ "a3" ].isNull() )
formulaData.a[2] = doc[ CFG_PARAM_FORMULA_DATA ][ "a3" ].as<double>();
if( !doc[ CFG_PARAM_FORMULA_DATA ][ "a4" ].isNull() )
if ( !doc[ CFG_PARAM_FORMULA_DATA ][ "a4" ].isNull() )
formulaData.a[3] = doc[ CFG_PARAM_FORMULA_DATA ][ "a4" ].as<double>();
if( !doc[ CFG_PARAM_FORMULA_DATA ][ "a5" ].isNull() )
if ( !doc[ CFG_PARAM_FORMULA_DATA ][ "a5" ].isNull() )
formulaData.a[4] = doc[ CFG_PARAM_FORMULA_DATA ][ "a5" ].as<double>();
if( !doc[ CFG_PARAM_FORMULA_DATA ][ "g1" ].isNull() )
if ( !doc[ CFG_PARAM_FORMULA_DATA ][ "g1" ].isNull() )
formulaData.g[0] = doc[ CFG_PARAM_FORMULA_DATA ][ "g1" ].as<double>();
if( !doc[ CFG_PARAM_FORMULA_DATA ][ "g2" ].isNull() )
if ( !doc[ CFG_PARAM_FORMULA_DATA ][ "g2" ].isNull() )
formulaData.g[1] = doc[ CFG_PARAM_FORMULA_DATA ][ "g2" ].as<double>();
if( !doc[ CFG_PARAM_FORMULA_DATA ][ "g3" ].isNull() )
if ( !doc[ CFG_PARAM_FORMULA_DATA ][ "g3" ].isNull() )
formulaData.g[2] = doc[ CFG_PARAM_FORMULA_DATA ][ "g3" ].as<double>();
if( !doc[ CFG_PARAM_FORMULA_DATA ][ "g4" ].isNull() )
if ( !doc[ CFG_PARAM_FORMULA_DATA ][ "g4" ].isNull() )
formulaData.g[3] = doc[ CFG_PARAM_FORMULA_DATA ][ "g4" ].as<double>();
if( !doc[ CFG_PARAM_FORMULA_DATA ][ "g5" ].isNull() )
if ( !doc[ CFG_PARAM_FORMULA_DATA ][ "g5" ].isNull() )
formulaData.g[4] = doc[ CFG_PARAM_FORMULA_DATA ][ "g5" ];
myConfig.debug();
@ -274,11 +274,11 @@ void Config::formatFileSystem() {
// Check if file system can be mounted, if not we format it.
//
void Config::checkFileSystem() {
#if LOG_LEVEL==6 && !defined( CFG_DISABLE_LOGGING )
#if LOG_LEVEL == 6 && !defined( CFG_DISABLE_LOGGING )
Log.verbose(F("CFG : Checking if filesystem is valid." CR));
#endif
if (LittleFS.begin()) {
if ( LittleFS.begin() ) {
Log.notice(F("CFG : Filesystem mounted." CR));
} else {
Log.error(F("CFG : Unable to mount file system, formatting..." CR));
@ -290,7 +290,7 @@ void Config::checkFileSystem() {
// Dump the configuration to the serial port
//
void Config::debug() {
#if LOG_LEVEL==6 && !defined( CFG_DISABLE_LOGGING )
#if LOG_LEVEL == 6 && !defined( CFG_DISABLE_LOGGING )
Log.verbose(F("CFG : Dumping configration " CFG_FILENAME "." CR));
Log.verbose(F("CFG : ID; '%s'." CR), getID());
Log.verbose(F("CFG : WIFI; '%s', '%s'." CR), getWifiSSID(), getWifiPass() );

View File

@ -21,14 +21,14 @@ LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
SOFTWARE.
*/
#ifndef _CONFIG_H
#define _CONFIG_H
#ifndef SRC_CONFIG_H_
#define SRC_CONFIG_H_
// Includes
#include "helper.h"
#include <stdlib.h>
#include "src/helper.h"
#include <Arduino.h>
#include <ArduinoJson.h>
#include <stdlib.h>
// defintions
#define CFG_JSON_BUFSIZE 3192
@ -141,90 +141,90 @@ class Config {
public:
Config();
const char* getID() { return id.c_str(); };
const char* getID() { return id.c_str(); }
const char* getMDNS() { return mDNS.c_str(); }
void setMDNS( String s ) { mDNS = s; saveNeeded = true; }
void setMDNS(String s) { mDNS = s; saveNeeded = true; }
const char* getOtaURL() { return otaURL.c_str(); }
void setOtaURL( String s ) { otaURL = s; saveNeeded = true; }
bool isOtaActive() { return otaURL.length()?true:false; }
void setOtaURL(String s) { otaURL = s; saveNeeded = true; }
bool isOtaActive() { return otaURL.length() ? true : false; }
const char* getWifiSSID() { return wifiSSID.c_str(); }
void setWifiSSID( String s ) { wifiSSID = s; saveNeeded = true; }
void setWifiSSID(String s) { wifiSSID = s; saveNeeded = true; }
const char* getWifiPass() { return wifiPASS.c_str(); }
void setWifiPass( String s ) { wifiPASS = s; saveNeeded = true; }
void setWifiPass(String s) { wifiPASS = s; saveNeeded = true; }
// Brewfather
const char* getBrewfatherPushUrl() { return brewfatherPushUrl.c_str(); }
void setBrewfatherPushUrl( String s ) { brewfatherPushUrl = s; saveNeeded = true; }
void setBrewfatherPushUrl(String s) { brewfatherPushUrl = s; saveNeeded = true; }
bool isBrewfatherActive() { return brewfatherPushUrl.length()?true:false; }
// Standard HTTP
const char* getHttpPushUrl() { return httpPushUrl.c_str(); }
void setHttpPushUrl( String s ) { httpPushUrl = s; saveNeeded = true; }
void setHttpPushUrl(String s) { httpPushUrl = s; saveNeeded = true; }
bool isHttpActive() { return httpPushUrl.length()?true:false; }
const char* getHttpPushUrl2() { return httpPushUrl2.c_str(); }
void setHttpPushUrl2( String s ) { httpPushUrl2 = s; saveNeeded = true; }
void setHttpPushUrl2(String s) { httpPushUrl2 = s; saveNeeded = true; }
bool isHttpActive2() { return httpPushUrl2.length()?true:false; }
// InfluxDB2
const char* getInfluxDb2PushUrl() { return influxDb2Url.c_str(); }
void setInfluxDb2PushUrl( String s ) { influxDb2Url = s; saveNeeded = true; }
void setInfluxDb2PushUrl(String s) { influxDb2Url = s; saveNeeded = true; }
bool isInfluxDb2Active() { return influxDb2Url.length()?true:false; }
const char* getInfluxDb2PushOrg() { return influxDb2Org.c_str(); }
void setInfluxDb2PushOrg( String s ) { influxDb2Org = s; saveNeeded = true; }
void setInfluxDb2PushOrg(String s) { influxDb2Org = s; saveNeeded = true; }
const char* getInfluxDb2PushBucket() { return influxDb2Bucket.c_str(); }
void setInfluxDb2PushBucket( String s ) { influxDb2Bucket = s; saveNeeded = true; }
void setInfluxDb2PushBucket(String s) { influxDb2Bucket = s; saveNeeded = true; }
const char* getInfluxDb2PushToken() { return influxDb2Token.c_str(); }
void setInfluxDb2PushToken( String s ) { influxDb2Token = s; saveNeeded = true; }
void setInfluxDb2PushToken(String s) { influxDb2Token = s; saveNeeded = true; }
int getSleepInterval() { return sleepInterval; }
void setSleepInterval( int v ) { sleepInterval = v; saveNeeded = true; }
void setSleepInterval( String s ) { sleepInterval = s.toInt(); saveNeeded = true; }
void setSleepInterval(int v) { sleepInterval = v; saveNeeded = true; }
void setSleepInterval(String s) { sleepInterval = s.toInt(); saveNeeded = true; }
char getTempFormat() { return tempFormat; }
void setTempFormat( char c ) { tempFormat = c; saveNeeded = true; }
bool isTempC() { return tempFormat=='C'?false:true; };
bool isTempF() { return tempFormat=='F'?false:true; };
void setTempFormat(char c) { tempFormat = c; saveNeeded = true; }
bool isTempC() { return tempFormat == 'C' ? false : true; }
bool isTempF() { return tempFormat == 'F' ? false : true; }
float getVoltageFactor() { return voltageFactor; }
void setVoltageFactor( float f ) { voltageFactor = f; saveNeeded = true; }
void setVoltageFactor( String s ) { voltageFactor = s.toFloat(); saveNeeded = true; }
void setVoltageFactor(float f) { voltageFactor = f; saveNeeded = true; }
void setVoltageFactor(String s) { voltageFactor = s.toFloat(); saveNeeded = true; }
float getTempSensorAdj() { return tempSensorAdj; }
void setTempSensorAdj( float f ) { tempSensorAdj = f; saveNeeded = true; }
void setTempSensorAdj( String s ) { tempSensorAdj = s.toFloat(); saveNeeded = true; }
void setTempSensorAdj(float f) { tempSensorAdj = f; saveNeeded = true; }
void setTempSensorAdj(String s) { tempSensorAdj = s.toFloat(); saveNeeded = true; }
const char* getGravityFormula() { return gravityFormula.c_str(); }
void setGravityFormula( String s ) { gravityFormula = s; saveNeeded = true; }
void setGravityFormula(String s) { gravityFormula = s; saveNeeded = true; }
bool isGravityTempAdj() { return gravityTempAdj; }
void setGravityTempAdj( bool b ) { gravityTempAdj = b; saveNeeded = true; }
void setGravityTempAdj(bool b) { gravityTempAdj = b; saveNeeded = true; }
char getGravityFormat() { return gravityFormat; }
void setGravityFormat( char c ) { gravityFormat = c; saveNeeded = true; }
bool isGravitySG() { return gravityFormat=='G'?false:true; };
bool isGravityPlato() { return gravityFormat=='P'?false:true; };
void setGravityFormat(char c) { gravityFormat = c; saveNeeded = true; }
bool isGravitySG() { return gravityFormat == 'G' ? false : true; }
bool isGravityPlato() { return gravityFormat == 'P' ? false : true; }
const RawGyroData& getGyroCalibration() { return gyroCalibration; }
void setGyroCalibration( const RawGyroData &r ) { gyroCalibration = r; saveNeeded = true; }
void setGyroCalibration(const RawGyroData &r) { gyroCalibration = r; saveNeeded = true; }
const RawFormulaData& getFormulaData() { return formulaData; }
void setFormulaData( const RawFormulaData &r ) { formulaData = r; saveNeeded = true; }
void setFormulaData(const RawFormulaData &r) { formulaData = r; saveNeeded = true; }
// IO functions
void createJson(DynamicJsonDocument& doc);
bool saveFile();
bool loadFile();
void checkFileSystem();
bool isSaveNeeded() { return saveNeeded; };
void setSaveNeeded() { saveNeeded = true; };
bool isSaveNeeded() { return saveNeeded; }
void setSaveNeeded() { saveNeeded = true; }
};
// Global instance created
extern Config myConfig;
#endif // _CONFIG_H
#endif // SRC_CONFIG_H_
// EOF