45 lines
812 B
C
45 lines
812 B
C
|
|
//
|
||
|
|
// Created by Krad on 2022/5/11.
|
||
|
|
//
|
||
|
|
|
||
|
|
#ifndef GUI_SCANJSON_H
|
||
|
|
#define GUI_SCANJSON_H
|
||
|
|
|
||
|
|
#include <string>
|
||
|
|
#include "cJSON.h"
|
||
|
|
|
||
|
|
class ScanJson {
|
||
|
|
public:
|
||
|
|
~ScanJson(){
|
||
|
|
if(root)cJSON_Delete(root);
|
||
|
|
}
|
||
|
|
void store(cJSON* json){
|
||
|
|
if(root){
|
||
|
|
cJSON_Delete(root);
|
||
|
|
root = nullptr;
|
||
|
|
}
|
||
|
|
root = json;
|
||
|
|
}
|
||
|
|
void setScanID(const char * id){
|
||
|
|
scanID.clear();
|
||
|
|
scanID.append(id);
|
||
|
|
}
|
||
|
|
void setEmptyScanID(const char * id){
|
||
|
|
emptyScanID.clear();
|
||
|
|
emptyScanID.append(id);
|
||
|
|
setScanID(id);
|
||
|
|
}
|
||
|
|
void save();
|
||
|
|
static ScanJson* Current(){
|
||
|
|
static ScanJson instance;
|
||
|
|
return &instance;
|
||
|
|
}
|
||
|
|
private:
|
||
|
|
std::string emptyScanID;
|
||
|
|
std::string scanID;
|
||
|
|
cJSON* root = nullptr;
|
||
|
|
};
|
||
|
|
|
||
|
|
|
||
|
|
#endif //GUI_SCANJSON_H
|