diff --git a/PrintS/Config/bean/CorrectParamCfg.cpp b/PrintS/Config/bean/CorrectParamCfg.cpp index 8f88cb4..6d58755 100644 --- a/PrintS/Config/bean/CorrectParamCfg.cpp +++ b/PrintS/Config/bean/CorrectParamCfg.cpp @@ -1,5 +1,6 @@ #include "CorrectParamCfg.h" #include "ScanCfg.h" +#include "../utils/ConverType.hpp" CorrectParamCfg::CorrectParamCfg() @@ -144,6 +145,38 @@ void CorrectParamCfg::SetCorrectCfg(stream::CorrectParamCfg* cp) { } +void CorrectParamCfg::Update(const ReadData& rd){ + for (auto start = rd.its.begin(); start != rd.its.end(); ++start) { + if (start->nameKey == "xmeasure_min") m_xmeasure_min = ConverType::TryToD(start->strValue); + else if (start->nameKey == "xmeasure_max") m_xmeasure_max = ConverType::TryToD(start->strValue); + else if (start->nameKey == "ymeasure_min") m_ymeasure_min = ConverType::TryToD(start->strValue); + else if (start->nameKey == "ymeasure_max") m_ymeasure_max = ConverType::TryToD(start->strValue); + else if (start->nameKey == "xposfix") m_xposfix = ConverType::TryToD(start->strValue); + else if (start->nameKey == "yposfix") m_yposfix = ConverType::TryToD(start->strValue); + else if (start->nameKey == "scan_angle") m_scan_angle = ConverType::TryToD(start->strValue); + else if (start->nameKey == "scan_angle_min") m_scan_angle_min = ConverType::TryToD(start->strValue); + else if (start->nameKey == "scan_angle_max") m_scan_angle_max = ConverType::TryToD(start->strValue); + else if (start->nameKey == "fix_angle") m_fix_angle = ConverType::TryToD(start->strValue); + else if (start->nameKey == "fix_angle_min") m_fix_angle_min = ConverType::TryToD(start->strValue); + else if (start->nameKey == "fix_angle_max") m_fix_angle_max = ConverType::TryToD(start->strValue); + else if (start->nameKey == "xcorrect") m_xcorrect = ConverType::TryToD(start->strValue); + else if (start->nameKey == "ycorrect") m_ycorrect = ConverType::TryToD(start->strValue); + else if (start->nameKey == "xcorrect_min") m_xcorrect_min = ConverType::TryToD(start->strValue); + else if (start->nameKey == "xcorrect_max") m_xcorrect_max = ConverType::TryToD(start->strValue); + else if (start->nameKey == "ycorrect_min") m_ycorrect_min = ConverType::TryToD(start->strValue); + else if (start->nameKey == "ycorrect_max") m_ycorrect_max = ConverType::TryToD(start->strValue); + else if (start->nameKey == "realXOffset") m_realXOffset = ConverType::TryToD(start->strValue); + else if (start->nameKey == "realYOffset") m_realYOffset = ConverType::TryToD(start->strValue); + else if (start->nameKey == "FactorK") m_FactorK = ConverType::TryToD(start->strValue); + else if (start->nameKey == "IsCorrectFile3D") m_IsCorrectFile3D = ConverType::TryToD(start->strValue); + else if (start->nameKey == "IsDynamicFocus") m_IsDynamicFocus = (bool)ConverType::TryToI(start->strValue); + else if (start->nameKey == "DefocusRatio") m_DefocusRatio = ConverType::TryToD(start->strValue); + else if (start->nameKey == "DefocusRatioMin") m_DefocusRatioMin = ConverType::TryToD(start->strValue); + else if (start->nameKey == "DefocusRatioMax") m_DefocusRatioMax = ConverType::TryToD(start->strValue); + } + +} + string CorrectParamCfg::CONFIG_NAME = "CorrectParamCfg"; string CorrectParamCfg::FIELD_X_MEASURE_MIN = "XMeasureMin"; string CorrectParamCfg::FIELD_X_MEASURE_MAX = "XMeasureMax"; diff --git a/PrintS/Config/bean/CorrectParamCfg.h b/PrintS/Config/bean/CorrectParamCfg.h index 3864c56..a16df91 100644 --- a/PrintS/Config/bean/CorrectParamCfg.h +++ b/PrintS/Config/bean/CorrectParamCfg.h @@ -1,6 +1,7 @@ #pragma once #include #include +#include "../DataManage/RWData.h" #include "../protobuf/stream.pb.h" using namespace std; @@ -12,6 +13,7 @@ public: void GetUpdateSql(int cno,vector& ups); void SetCorrectCfg(stream::CorrectParamCfg* cp); + void Update(const ReadData& rd); public: double m_xmeasure_min; //x可打印最小位置 double m_xmeasure_max; //x可打印最大位置 diff --git a/PrintS/Config/bean/ScanParamCfg.cpp b/PrintS/Config/bean/ScanParamCfg.cpp index 54530e2..50e6cb8 100644 --- a/PrintS/Config/bean/ScanParamCfg.cpp +++ b/PrintS/Config/bean/ScanParamCfg.cpp @@ -1,6 +1,7 @@ #include "ScanParamCfg.h" #include "ScanCfg.h" #include "../../utils/StringHelper.h" +#include "../../utils/ConverType.hpp" ScanParamCfg::ScanParamCfg() { @@ -126,6 +127,46 @@ void ScanParamCfg::SetScanParam(stream::ScanParamCfg* sp) { } +void ScanParamCfg::Update(const ReadData& rd) { + + for (auto start = rd.its.begin(); start != rd.its.end(); ++start) { + 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); + } + +} + //string ScanParamCfg::CONFIG_NAME = "ScanParamCfg"; string ScanParamCfg::FIELD_EDGE_LEVEL = "EdgeLevel"; diff --git a/PrintS/Config/bean/ScanParamCfg.h b/PrintS/Config/bean/ScanParamCfg.h index deec20a..b93a8ee 100644 --- a/PrintS/Config/bean/ScanParamCfg.h +++ b/PrintS/Config/bean/ScanParamCfg.h @@ -2,6 +2,8 @@ #include #include #include "../protobuf/stream.pb.h" +#include "../DataManage/RWData.h" + using namespace std; class ScanParamCfg { @@ -11,6 +13,7 @@ public: void GetUpdateSql(int cno,vector& ups); void SetScanParam(stream::ScanParamCfg* sp); + void Update(const ReadData& rd); public: string CONFIG_NAME; static string FIELD_EDGE_LEVEL; diff --git a/PrintS/Config/bean/ScanTestCfg.cpp b/PrintS/Config/bean/ScanTestCfg.cpp index a8b03c8..e35c250 100644 --- a/PrintS/Config/bean/ScanTestCfg.cpp +++ b/PrintS/Config/bean/ScanTestCfg.cpp @@ -1,6 +1,7 @@ #include "ScanTestCfg.h" #include "ScanCfg.h" #include "../../utils/StringHelper.h" +#include "../../utils/ConverType.hpp" ScanTestCfg::ScanTestCfg() @@ -119,6 +120,35 @@ void ScanTestCfg::SetScanTestCfg(stream::ScanTestCfg* cp) { } +void ScanTestCfg::Update(const ReadData& rd) { + for (auto start = rd.its.begin(); start != rd.its.end(); ++start) { + if (start->nameKey == "debug_shape") m_debug_shape = ConverType::TryToI(start->strValue); + else if (start->nameKey == "shape_size") m_shape_size = ConverType::TryToI(start->strValue); + else if (start->nameKey == "shape_size_min") m_shape_size_min = ConverType::TryToI(start->strValue); + else if (start->nameKey == "shape_size_max") m_shape_size_max = ConverType::TryToI(start->strValue); + else if (start->nameKey == "laser_power") m_laser_power = ConverType::TryToI(start->strValue); + else if (start->nameKey == "laser_power_min") m_laser_power_min = ConverType::TryToI(start->strValue); + else if (start->nameKey == "laser_power_max") m_laser_power_max = ConverType::TryToI(start->strValue); + else if (start->nameKey == "defocus") m_defocus = ConverType::TryToD(start->strValue); + else if (start->nameKey == "defocus_min") m_defocus_min = ConverType::TryToD(start->strValue); + else if (start->nameKey == "defocus_max") m_defocus_max = ConverType::TryToD(start->strValue); + else if (start->nameKey == "is_cycle") m_is_cycle = ConverType::TryToD(start->strValue); + else if (start->nameKey == "cross_x") m_cross_x = ConverType::TryToD(start->strValue); + else if (start->nameKey == "cross_y") m_cross_y = ConverType::TryToD(start->strValue); + else if (start->nameKey == "z_distance") m_z_distance = ConverType::TryToD(start->strValue); + else if (start->nameKey == "IsAutoHeatingScanner") m_IsAutoHeatingScanner = (bool)ConverType::TryToI(start->strValue); + else if (start->nameKey == "AutoHeatingScannerMinutes") m_AutoHeatingScannerMinutes = (unsigned int)ConverType::TryToI(start->strValue); + else if (start->nameKey == "AutoHeatingScannerSize") m_AutoHeatingScannerSize = (unsigned int)ConverType::TryToI(start->strValue); + else if (start->nameKey == "AutoHeatingScannerSpeed") m_AutoHeatingScannerSpeed = ConverType::TryToD(start->strValue); + else if (start->nameKey == "mark_test_start_x") m_mark_test_start_x = ConverType::TryToD(start->strValue); + else if (start->nameKey == "mark_test_start_y") m_mark_test_start_y = ConverType::TryToD(start->strValue); + else if (start->nameKey == "mark_test_end_x") m_mark_test_end_x = ConverType::TryToD(start->strValue); + else if (start->nameKey == "mark_test_end_y") m_mark_test_end_y = ConverType::TryToD(start->strValue); + + } + +} + string ScanTestCfg::CONFIG_NAME="ScanTest"; string ScanTestCfg::FIELD_DEBUG_SHAPE = "DebugShape"; string ScanTestCfg::FIELD_SHAPE_SIZE = "ShapeSize"; diff --git a/PrintS/Config/bean/ScanTestCfg.h b/PrintS/Config/bean/ScanTestCfg.h index 9915ab0..88f0092 100644 --- a/PrintS/Config/bean/ScanTestCfg.h +++ b/PrintS/Config/bean/ScanTestCfg.h @@ -1,6 +1,7 @@ #pragma once #include #include +#include "../DataManage/RWData.h" #include "../protobuf/stream.pb.h" using namespace std; @@ -12,6 +13,8 @@ public: void GetUpdateSql(int cno,vector& ups); void SetScanTestCfg(stream::ScanTestCfg* cp); + + void Update(const ReadData& rd); public: int m_debug_shape; int m_shape_size; diff --git a/PrintS/Config/bean/ScannerControlCfg.cpp b/PrintS/Config/bean/ScannerControlCfg.cpp index 8ef85e7..2520850 100644 --- a/PrintS/Config/bean/ScannerControlCfg.cpp +++ b/PrintS/Config/bean/ScannerControlCfg.cpp @@ -103,10 +103,33 @@ void ScannerControlCfg::Update(const ReadData& rd) { ++start; } } + else if (type == SCANPARAMCFG) { + m_ScanCfgWrapper.m_ScanParamCfg.Update(rd); + } + else if (type == HATCHINGPARAMS) { + m_ScanCfgWrapper.m_HatchingParams.Update(rd); + } + else if (type == BORDERPARAMS) { + m_ScanCfgWrapper.m_BorderParams.Update(rd); + } + else if (type == SUPPORTPARAMS) { + m_ScanCfgWrapper.m_SupportParams.Update(rd); + } + else if (type == CORRECTPARAMCFG) { + m_ScanCfgWrapper.m_CorrectParamCfg.Update(rd); + } + else if (type == SCANTESTCFG) { + m_ScanCfgWrapper.m_ScanTestCfg.Update(rd); + } + else if (type == SKYWRITINGCFG) { + m_ScanCfgWrapper.m_SkyWritingCfg.Update(rd); + } else if (type == POWERCOMPENSATECFG) { m_ScanCfgWrapper.m_PowerCompensateCfg.Update(rd); } - + //else if (type == TIMEPOWERCOMPENSATECFG) { + // m_ScanCfgWrapper.m_TimePowerCompensateCfg.Update(rd); + //} } const string ScannerControlCfg::TABLE_NAME="ScannerControlCfg"; diff --git a/PrintS/Config/bean/SkyWritingCfg.cpp b/PrintS/Config/bean/SkyWritingCfg.cpp index f03691d..6053df5 100644 --- a/PrintS/Config/bean/SkyWritingCfg.cpp +++ b/PrintS/Config/bean/SkyWritingCfg.cpp @@ -1,6 +1,6 @@ #include "SkyWritingCfg.h" #include "ScanCfg.h" - +#include "../utils/ConverType.hpp" SkyWritingCfg::SkyWritingCfg() { @@ -87,6 +87,29 @@ void SkyWritingCfg::SetSkyWritingCfg(stream::SkyWritingCfg * cp) { cp->set_limitemax(m_LimiteMax); } +void SkyWritingCfg::Update(const ReadData& rd) { + for (auto start = rd.its.begin(); start != rd.its.end(); ++start) { + if (start->nameKey == "IsEnable") m_IsEnable =(bool) ConverType::TryToI(start->strValue); + else if (start->nameKey == "Timelag") m_Timelag = ConverType::TryToI(start->strValue); + else if (start->nameKey == "TimelagMin") m_TimelagMin = ConverType::TryToI(start->strValue); + else if (start->nameKey == "TimelagMax") m_TimelagMax = ConverType::TryToI(start->strValue); + else if (start->nameKey == "LaserOnShift") m_LaserOnShift = (long)ConverType::TryToI(start->strValue); + else if (start->nameKey == "LaserOnShiftMin") m_LaserOnShiftMin = (long)ConverType::TryToI(start->strValue); + else if (start->nameKey == "LaserOnShiftMax") m_LaserOnShiftMax = (long)ConverType::TryToI(start->strValue); + else if (start->nameKey == "Nprev") m_Nprev = (unsigned int)ConverType::TryToI(start->strValue); + else if (start->nameKey == "Npost") m_Npost = (unsigned int)ConverType::TryToI(start->strValue); + else if (start->nameKey == "NprevMax") m_NprevMax = (unsigned int)ConverType::TryToI(start->strValue); + else if (start->nameKey == "Npost") m_Npost = (unsigned int)ConverType::TryToI(start->strValue); + else if (start->nameKey == "NpostMin") m_NpostMin = (unsigned int)ConverType::TryToI(start->strValue); + else if (start->nameKey == "NpostMax") m_NpostMax = (unsigned int)ConverType::TryToI(start->strValue); + else if (start->nameKey == "m_Mode") m_Mode = ConverType::TryToI(start->strValue); + else if (start->nameKey == "Limite") m_Limite = (unsigned int)ConverType::TryToD(start->strValue); + else if (start->nameKey == "LimiteMin") m_LimiteMin = (unsigned int)ConverType::TryToD(start->strValue); + else if (start->nameKey == "LimiteMax") m_LimiteMax = (unsigned int)ConverType::TryToD(start->strValue); + + } +} + string SkyWritingCfg::CONFIG_NAME = "SkyWriting"; string SkyWritingCfg::FIELD_IS_ENABLE = "is_enable"; string SkyWritingCfg::FIELD_TIMELAG = "timelag"; diff --git a/PrintS/Config/bean/SkyWritingCfg.h b/PrintS/Config/bean/SkyWritingCfg.h index b361fbc..bc8c3a5 100644 --- a/PrintS/Config/bean/SkyWritingCfg.h +++ b/PrintS/Config/bean/SkyWritingCfg.h @@ -2,6 +2,7 @@ #include #include #include "../protobuf/stream.pb.h" +#include "../DataManage/RWData.h" using namespace std; @@ -12,6 +13,8 @@ public: ~SkyWritingCfg(); void GetUpdateSql(int cno,vector& ups); void SetSkyWritingCfg(stream::SkyWritingCfg* cp); + + void Update(const ReadData& rd); public: bool m_IsEnable; double m_Timelag; diff --git a/PrintS/output/Release/log/2024.hbd b/PrintS/output/Release/log/2024.hbd index a2c5d51..7de615a 100644 Binary files a/PrintS/output/Release/log/2024.hbd and b/PrintS/output/Release/log/2024.hbd differ