zynq_7010/zynq_7010_code/JsonConfig.h

56 lines
1.5 KiB
C
Raw Normal View History

2023-10-19 09:30:59 +00:00
#pragma once
#include <unistd.h>
#include "json.hpp"
2023-10-19 09:38:54 +00:00
#include "scanservices_utils.h"
2023-10-19 09:30:59 +00:00
#include <string>
#include <map>
#include <mutex>
#define SCANNER_SCAN_INFO_PATH "/mnt/flash-disk/huago/jsonconfig.json"
using namespace std;
using json = nlohmann::json;
class JsonConfig
{
public:
enum class ConfigType
{
Color_Flat,
Color_Correct,
Gray_Flat,
Gray_Correct
};
private:
map<ConfigType,string> cfgPaths={
{ConfigType::Color_Flat,"/usr/local/etc/huago/Color_Flat.json"},
{ConfigType::Color_Correct,"/usr/local/etc/huago/Color_Correct.json"},
{ConfigType::Gray_Flat,"/usr/local/etc/huago/Gray_Flat.json"},
{ConfigType::Gray_Correct,"/usr/local/etc/huago/Gray_Correct.json"}
};
map<ConfigType,string> cfgPrefix={
{ConfigType::Color_Flat,"Color_Flat"},
{ConfigType::Color_Correct,"Color_Correct"},
{ConfigType::Gray_Flat,"Gray_Flat"},
{ConfigType::Gray_Correct,"Gray_Correct"}
};
ConfigType m_cfgType;
public:
JsonConfig();
JsonConfig(ConfigType type);
~JsonConfig();
2023-10-19 09:38:54 +00:00
/*
*false
*/
// bool ReadParam(FPGAConfigParam& param);
2023-10-19 09:30:59 +00:00
2023-10-19 09:38:54 +00:00
// void WriteParam(FPGAConfigParam& t_param);
2023-10-19 09:30:59 +00:00
ScannerScanInfo GetScanInfo();
2023-10-19 09:38:54 +00:00
map<int, sp_COLOR_or_GRAY >::iterator l_it;
void SaveScanInfo(const ScannerScanInfo& info);
2023-10-19 09:30:59 +00:00
private:
2023-10-19 09:38:54 +00:00
//FPGAConfigParam CreateDefault();
2023-10-19 09:30:59 +00:00
std::mutex m_lock;
2023-10-19 09:38:54 +00:00
ScannerScanInfo CreateDefaultScanInfo();
2023-10-19 09:30:59 +00:00
};