2024-06-27 10:56:50 +08:00
|
|
|
|
#include "ScanParamCfg.h"
|
2024-03-19 17:45:12 +08:00
|
|
|
|
#include "ScanCfg.h"
|
|
|
|
|
#include "../../utils/StringHelper.h"
|
2024-06-27 16:08:07 +08:00
|
|
|
|
#include "../../utils/ConverType.hpp"
|
2024-03-19 17:45:12 +08:00
|
|
|
|
|
|
|
|
|
ScanParamCfg::ScanParamCfg()
|
|
|
|
|
{
|
|
|
|
|
CONFIG_NAME = "ScanParamCfg";
|
|
|
|
|
m_edge_level=230;
|
|
|
|
|
m_edge_level_min=0;
|
|
|
|
|
m_edge_level_max=1000;
|
|
|
|
|
m_jump_delay=400;
|
|
|
|
|
m_jump_delay_min=0;
|
|
|
|
|
m_jump_delay_max=2000;
|
|
|
|
|
m_scan_delay=900;
|
|
|
|
|
m_scan_delay_min=0;
|
|
|
|
|
m_scan_delay_max=2000;
|
|
|
|
|
m_polygon_delay=120;
|
|
|
|
|
m_polygon_delay_min=0;
|
|
|
|
|
m_polygon_delay_max=2000;
|
|
|
|
|
m_laseroff_delay=175;
|
|
|
|
|
m_laseroff_delay_min=0;
|
|
|
|
|
m_laseroff_delay_max=2000;
|
|
|
|
|
m_laseron_delay=100;
|
|
|
|
|
m_laseron_delay_min=0;
|
|
|
|
|
m_laseron_delay_max=2000;
|
|
|
|
|
m_min_jump_delay=150;
|
|
|
|
|
m_min_jump_delay_min=0;
|
|
|
|
|
m_min_jump_delay_max=1500;
|
|
|
|
|
m_jump_length_limit=10;
|
|
|
|
|
m_jump_length_limit_min=1;
|
|
|
|
|
m_jump_length_limit_max=100;
|
|
|
|
|
m_jump_speed=7000.0;
|
|
|
|
|
m_jump_speed_min=100.0;
|
|
|
|
|
m_jump_speed_max=20000.0;
|
|
|
|
|
m_mark_speed=200.0;
|
|
|
|
|
m_mark_speed_min=1.0;
|
|
|
|
|
m_mark_speed_max=10000.0;
|
|
|
|
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
ScanParamCfg::~ScanParamCfg()
|
|
|
|
|
{
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
void ScanParamCfg::GetUpdateSql(int cno,vector<string>& ups)
|
|
|
|
|
{
|
|
|
|
|
char buffer[512];
|
|
|
|
|
sprintf_s(buffer, sizeof(buffer), "UPDATE %s set %s=",
|
|
|
|
|
ScanCfg::TABLE_NAME.c_str(),
|
|
|
|
|
ScanCfg::FIELD_SCAN_VALUE.c_str()
|
|
|
|
|
);
|
|
|
|
|
string strhead(buffer);
|
|
|
|
|
sprintf_s(buffer, sizeof(buffer), " WHERE %s=%d AND %s='%s' AND %s=",
|
|
|
|
|
ScanCfg::FIELD_CNO.c_str(), cno,
|
|
|
|
|
ScanCfg::FIELD_CONFIG_NAME.c_str(), CONFIG_NAME.c_str(),
|
|
|
|
|
ScanCfg::FIELD_SCAN_CODE.c_str()
|
|
|
|
|
);
|
|
|
|
|
string strtail(buffer);
|
|
|
|
|
|
|
|
|
|
sprintf_s(buffer, sizeof(buffer), "%s'%s'%s'%s'", strhead.c_str(), to_string(m_edge_level).c_str(), strtail.c_str(), FIELD_EDGE_LEVEL.c_str());
|
|
|
|
|
ups.push_back(buffer);
|
|
|
|
|
|
|
|
|
|
sprintf_s(buffer, sizeof(buffer), "%s'%s'%s'%s'", strhead.c_str(), to_string(m_jump_delay).c_str(), strtail.c_str(), FIELD_JUMP_DELAY.c_str());
|
|
|
|
|
ups.push_back(buffer);
|
|
|
|
|
|
|
|
|
|
sprintf_s(buffer, sizeof(buffer), "%s'%s'%s'%s'", strhead.c_str(), to_string(m_scan_delay).c_str(), strtail.c_str(), FIELD_SCAN_DELAY.c_str());
|
|
|
|
|
ups.push_back(buffer);
|
|
|
|
|
|
|
|
|
|
sprintf_s(buffer, sizeof(buffer), "%s'%s'%s'%s'", strhead.c_str(), to_string(m_polygon_delay).c_str(), strtail.c_str(), FIELD_POLYGON_DELAY.c_str());
|
|
|
|
|
ups.push_back(buffer);
|
|
|
|
|
|
|
|
|
|
sprintf_s(buffer, sizeof(buffer), "%s'%s'%s'%s'", strhead.c_str(), to_string(m_laseroff_delay).c_str(), strtail.c_str(), FIELD_LASEROFF_DELAY.c_str());
|
|
|
|
|
ups.push_back(buffer);
|
|
|
|
|
|
|
|
|
|
sprintf_s(buffer, sizeof(buffer), "%s'%s'%s'%s'", strhead.c_str(), to_string(m_laseron_delay).c_str(), strtail.c_str(), FIELD_LASERON_DELAY.c_str());
|
|
|
|
|
ups.push_back(buffer);
|
|
|
|
|
|
|
|
|
|
sprintf_s(buffer, sizeof(buffer), "%s'%s'%s'%s'", strhead.c_str(), to_string(m_min_jump_delay).c_str(), strtail.c_str(), FIELD_MIN_JUMP_DELAY.c_str());
|
|
|
|
|
ups.push_back(buffer);
|
|
|
|
|
|
|
|
|
|
sprintf_s(buffer, sizeof(buffer), "%s'%s'%s'%s'", strhead.c_str(), to_string(m_jump_length_limit).c_str(), strtail.c_str(), FIELD_JUMP_LENGTH_LIMIT.c_str());
|
|
|
|
|
ups.push_back(buffer);
|
|
|
|
|
|
|
|
|
|
sprintf_s(buffer, sizeof(buffer), "%s'%s'%s'%s'", strhead.c_str(), to_string(m_jump_speed).c_str(), strtail.c_str(), FIELD_JUMP_SPEED.c_str());
|
|
|
|
|
ups.push_back(buffer);
|
|
|
|
|
|
|
|
|
|
sprintf_s(buffer, sizeof(buffer), "%s'%s'%s'%s'", strhead.c_str(), to_string(m_mark_speed).c_str(), strtail.c_str(), FIELD_MARK_SPEED.c_str());
|
|
|
|
|
ups.push_back(buffer);
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
2024-06-27 10:56:50 +08:00
|
|
|
|
void ScanParamCfg::SetScanParam(stream::ScanParamCfg* sp) {
|
|
|
|
|
sp->set_edgelevel(m_edge_level);
|
|
|
|
|
sp->set_edgelevelmin( m_edge_level_min);
|
|
|
|
|
sp->set_edgelevelmax( m_edge_level_max);
|
|
|
|
|
sp->set_jumpdelay( m_jump_delay);
|
|
|
|
|
sp->set_jumpdelaymin( m_jump_delay_min);
|
|
|
|
|
sp->set_jumpdelaymax( m_jump_delay_max);
|
|
|
|
|
sp->set_scandelay( m_scan_delay);
|
|
|
|
|
sp->set_scandelaymin( m_scan_delay_min);
|
|
|
|
|
sp->set_scandelaymax( m_scan_delay_max);
|
|
|
|
|
sp->set_polygondelay( m_polygon_delay);
|
|
|
|
|
sp->set_polygondelaymin( m_polygon_delay_min);
|
|
|
|
|
sp->set_polygondelaymax( m_polygon_delay_max);
|
|
|
|
|
sp->set_laseroffdelay( m_laseroff_delay);
|
|
|
|
|
sp->set_laseroffdelaymin( m_laseroff_delay_min);
|
|
|
|
|
sp->set_laseroffdelaymax( m_laseroff_delay_max);
|
|
|
|
|
sp->set_laserondelay( m_laseron_delay);
|
|
|
|
|
sp->set_laserondelaymin( m_laseron_delay_min);
|
|
|
|
|
sp->set_laserondelaymax( m_laseron_delay_max);
|
|
|
|
|
sp->set_minjumpdelay( m_min_jump_delay);
|
|
|
|
|
sp->set_minjumpdelaymin( m_min_jump_delay_min);
|
|
|
|
|
sp->set_minjumpdelaymax( m_min_jump_delay_max);
|
|
|
|
|
sp->set_jumplengthlimit( m_jump_length_limit);
|
|
|
|
|
sp->set_jumplengthlimitmin( m_jump_length_limit_min);
|
|
|
|
|
sp->set_jumplengthlimitmax( m_jump_length_limit_max);
|
|
|
|
|
sp->set_jumpspeed( m_jump_speed);
|
|
|
|
|
sp->set_jumpspeedmin( m_jump_speed_min);
|
|
|
|
|
sp->set_jumpspeedmax( m_jump_speed_max);
|
|
|
|
|
sp->set_markspeed( m_mark_speed);
|
|
|
|
|
sp->set_markspeedmin( m_mark_speed_min);
|
|
|
|
|
sp->set_markspeedmax( m_polygon_delay_max);
|
|
|
|
|
|
|
|
|
|
}
|
|
|
|
|
|
2024-07-05 15:51:30 +08:00
|
|
|
|
void ScanParamCfg::Update(const ReadData& rd,const list<Item>& lst) {
|
2024-06-27 16:08:07 +08:00
|
|
|
|
|
2024-07-05 15:51:30 +08:00
|
|
|
|
for (auto start = lst.begin(); start != lst.end(); ++start) {
|
2024-06-27 16:08:07 +08:00
|
|
|
|
if (start->nameKey == "edge_level") m_edge_level = ConverType::TryToI(start->strValue);
|
|
|
|
|
else if (start->nameKey == "edge_level_min") m_edge_level_min = ConverType::TryToI(start->strValue);
|
|
|
|
|
else if (start->nameKey == "edge_level_max") m_edge_level_max = ConverType::TryToI(start->strValue);
|
|
|
|
|
else if (start->nameKey == "jump_delay") m_jump_delay = (unsigned int)ConverType::TryToI(start->strValue);
|
|
|
|
|
else if (start->nameKey == "jump_delay_min") m_jump_delay_min = (unsigned int)ConverType::TryToI(start->strValue);
|
|
|
|
|
else if (start->nameKey == "jump_delay_max") m_jump_delay_max = (unsigned int)ConverType::TryToI(start->strValue);
|
|
|
|
|
else if (start->nameKey == "scan_delay") m_scan_delay = (unsigned int)ConverType::TryToI(start->strValue);
|
|
|
|
|
else if (start->nameKey == "scan_delay_min") m_scan_delay_min = (unsigned int)ConverType::TryToI(start->strValue);
|
|
|
|
|
else if (start->nameKey == "scan_delay_max") m_scan_delay_max = (unsigned int)ConverType::TryToI(start->strValue);
|
|
|
|
|
else if (start->nameKey == "polygon_delay") m_polygon_delay = (unsigned int)ConverType::TryToI(start->strValue);
|
|
|
|
|
else if (start->nameKey == "polygon_delay_min") m_polygon_delay_min = (unsigned int)ConverType::TryToI(start->strValue);
|
|
|
|
|
else if (start->nameKey == "polygon_delay_max") m_polygon_delay_max = (unsigned int)ConverType::TryToI(start->strValue);
|
|
|
|
|
else if (start->nameKey == "laseroff_delay") m_laseroff_delay = (long)ConverType::TryToI(start->strValue);
|
|
|
|
|
else if (start->nameKey == "laseroff_delay_min") m_laseroff_delay_min = (long)ConverType::TryToI(start->strValue);
|
|
|
|
|
else if (start->nameKey == "laseroff_delay_max") m_laseroff_delay_max = (long)ConverType::TryToI(start->strValue);
|
|
|
|
|
else if (start->nameKey == "laseron_delay") m_laseron_delay = (long)ConverType::TryToI(start->strValue);
|
|
|
|
|
else if (start->nameKey == "laseron_delay_min") m_laseron_delay_min = (long)ConverType::TryToI(start->strValue);
|
|
|
|
|
else if (start->nameKey == "laseron_delay_max") m_laseron_delay_max = (long)ConverType::TryToI(start->strValue);
|
|
|
|
|
else if (start->nameKey == "min_jump_delay") m_min_jump_delay = (unsigned int)ConverType::TryToI(start->strValue);
|
|
|
|
|
else if (start->nameKey == "min_jump_delay_min") m_min_jump_delay_min = (unsigned int)ConverType::TryToI(start->strValue);
|
|
|
|
|
else if (start->nameKey == "min_jump_delay_max") m_min_jump_delay_max = (unsigned int)ConverType::TryToI(start->strValue);
|
|
|
|
|
|
|
|
|
|
else if (start->nameKey == "jump_length_limit") m_jump_length_limit = (unsigned int)ConverType::TryToI(start->strValue);
|
|
|
|
|
else if (start->nameKey == "jump_length_limit_min") m_jump_length_limit_min = (unsigned int)ConverType::TryToI(start->strValue);
|
|
|
|
|
else if (start->nameKey == "jump_length_limit_max") m_jump_length_limit_max = (unsigned int)ConverType::TryToI(start->strValue);
|
|
|
|
|
|
|
|
|
|
else if (start->nameKey == "jump_speed") m_jump_speed = ConverType::TryToD(start->strValue);
|
|
|
|
|
else if (start->nameKey == "jump_speed_min") m_jump_speed_min = ConverType::TryToD(start->strValue);
|
|
|
|
|
else if (start->nameKey == "jump_speed_max") m_jump_speed_max = ConverType::TryToD(start->strValue);
|
|
|
|
|
|
|
|
|
|
else if (start->nameKey == "mark_speed") m_mark_speed = ConverType::TryToD(start->strValue);
|
|
|
|
|
else if (start->nameKey == "mark_speed_min") m_mark_speed_min = ConverType::TryToD(start->strValue);
|
|
|
|
|
else if (start->nameKey == "mark_speed_max") m_mark_speed_max = ConverType::TryToD(start->strValue);
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
}
|
|
|
|
|
|
2024-06-27 10:56:50 +08:00
|
|
|
|
|
2024-03-19 17:45:12 +08:00
|
|
|
|
//string ScanParamCfg::CONFIG_NAME = "ScanParamCfg";
|
|
|
|
|
string ScanParamCfg::FIELD_EDGE_LEVEL = "EdgeLevel";
|
|
|
|
|
string ScanParamCfg::FIELD_EDGE_LEVEL_MIN = "EdgeLevelMin";
|
|
|
|
|
string ScanParamCfg::FIELD_EDGE_LEVEL_MAX = "EdgeLevelMax";
|
|
|
|
|
string ScanParamCfg::FIELD_JUMP_DELAY = "JumpDelay";
|
|
|
|
|
string ScanParamCfg::FIELD_JUMP_DELAY_MIN = "JumpDelayMin";
|
|
|
|
|
string ScanParamCfg::FIELD_JUMP_DELAY_MAX = "JumpDelayMax";
|
|
|
|
|
string ScanParamCfg::FIELD_SCAN_DELAY = "ScanDelay";
|
|
|
|
|
string ScanParamCfg::FIELD_SCAN_DELAY_MIN = "ScanDelayMin";
|
|
|
|
|
string ScanParamCfg::FIELD_SCAN_DELAY_MAX = "ScanDelayMax";
|
|
|
|
|
string ScanParamCfg::FIELD_POLYGON_DELAY = "PolygonDelay";
|
|
|
|
|
string ScanParamCfg::FIELD_POLYGON_DELAY_MIN = "PolygonDelayMin";
|
|
|
|
|
string ScanParamCfg::FIELD_POLYGON_DELAY_MAX = "PolygonDelayMax";
|
|
|
|
|
string ScanParamCfg::FIELD_LASEROFF_DELAY = "LaserOffDelay";
|
|
|
|
|
string ScanParamCfg::FIELD_LASEROFF_DELAY_MIN = "LaserOffDelayMin";
|
|
|
|
|
string ScanParamCfg::FIELD_LASEROFF_DELAY_MAX = "LaserOffDelayMax";
|
|
|
|
|
string ScanParamCfg::FIELD_LASERON_DELAY = "LaserOnDelay";
|
|
|
|
|
string ScanParamCfg::FIELD_LASERON_DELAY_MIN = "LaserOnDelayMin";
|
|
|
|
|
string ScanParamCfg::FIELD_LASERON_DELAY_MAX = "LaserOnDelayMax";
|
|
|
|
|
string ScanParamCfg::FIELD_MIN_JUMP_DELAY = "MinJumpDelay";
|
|
|
|
|
string ScanParamCfg::FIELD_MIN_JUMP_DELAY_MIN = "MinJumpDelayMin";
|
|
|
|
|
string ScanParamCfg::FIELD_MIN_JUMP_DELAY_MAX = "MinJumpDelayMax";
|
|
|
|
|
string ScanParamCfg::FIELD_JUMP_LENGTH_LIMIT = "JumpLengthLimit";
|
|
|
|
|
string ScanParamCfg::FIELD_JUMP_LENGTH_LIMIT_MIN = "JumpLengthLimitMin";
|
|
|
|
|
string ScanParamCfg::FIELD_JUMP_LENGTH_LIMIT_MAX = "JumpLengthLimitMax";
|
|
|
|
|
string ScanParamCfg::FIELD_JUMP_SPEED = "JumpSpeed";
|
|
|
|
|
string ScanParamCfg::FIELD_JUMP_SPEED_MIN = "JumpSpeedMin";
|
|
|
|
|
string ScanParamCfg::FIELD_JUMP_SPEED_MAX = "JumpSpeedMax";
|
|
|
|
|
string ScanParamCfg::FIELD_MARK_SPEED = "MarkSpeed";
|
|
|
|
|
string ScanParamCfg::FIELD_MARK_SPEED_MIN = "MarkSpeedMin";
|
|
|
|
|
string ScanParamCfg::FIELD_MARK_SPEED_MAX = "MarkSpeedMax";
|
|
|
|
|
|