#include "deviceconfig.h" #include #include #include #include "commondef.h" #include DeviceConfig::DeviceConfig() { } DeviceConfig::~DeviceConfig() { } DeviceConfig::DeviceParam DeviceConfig::GetParam() { std::lock_guard lc(m_lock); json tmp = getjson(); return json2struct(tmp); } void DeviceConfig::SaveParam(DeviceConfig::DeviceParam param) { std::lock_guard lc(m_lock); auto tmp = struct2json(param); savejson(tmp); } json DeviceConfig::struct2json(DeviceConfig::DeviceParam param) { json js; js[token_code] = param.token; js[lock_enable] = param.is_lock; return js; } DeviceConfig::DeviceParam DeviceConfig::json2struct(json js) { DeviceConfig::DeviceParam param; if(js[lock_enable].is_boolean()) param.is_lock = js[lock_enable]; else param.is_lock = false; if(js[token_code].is_string()) param.token = js[token_code]; else param.token = "null"; return param; } json DeviceConfig::getdefaultjson() { json m_json; m_json[lock_enable] = false; m_json[token_code] = "null"; return m_json; } void DeviceConfig::savejson(json js) { //std::lock_guard lc(m_lock); std::ofstream o(ParamPath); o << std::setw(4) << js <> m_json; i.close(); return m_json; }