ENERGY MONITOR 0.2
Loading...
Searching...
No Matches
setting.h
Go to the documentation of this file.
1#pragma once
2#include <json.hpp>
3#include <iostream>
4#include <string>
5#include <fstream>
6#include "defaultSetting.h"
7
8
9
19 using json = nlohmann::ordered_json;
20
21 json configs;
22
23 public:
25
26 std::ifstream configFileRead("configFile.json");
27 if(!configFileRead.is_open()){
28
29 std::ofstream configFileWrite;
30 configFileWrite.open("configFile.json");
31 default_settings_init(&configs);
32 configFileWrite << std::setw(4) << configs;
33 configFileWrite.close();
34 }else{
35 configs = json::parse(configFileRead);
36 }
37 }
38
39
40
42 std::ofstream configFileWrite("configFile.json");
43 configFileWrite << setw(4) << configs << endl;
44 return true;
45 }
46
47
48
49 template <typename t>
50 void change_setting(string class_name, string setting,t val){
51 configs[class_name][setting] = to_string(val);
52 }
53
54
55
56 string get_setting(string class_name,string setting){
57 return configs[class_name][setting];
58 }
59
60};
void change_setting(string class_name, string setting, t val)
Definition setting.h:50
bool save_settings()
Definition setting.h:41
_settings()
Definition setting.h:24
string get_setting(string class_name, string setting)
Definition setting.h:56
void default_settings_init(json *def)
default Implementation for setting for each application where the settings files will be generated if...