diff --git a/PrintS/DataManage/DataHandle.cpp b/PrintS/DataManage/DataHandle.cpp
index f508f5e..a0509f6 100644
--- a/PrintS/DataManage/DataHandle.cpp
+++ b/PrintS/DataManage/DataHandle.cpp
@@ -95,7 +95,7 @@ void DataHandle::DataCallBackHandle(const ReadData& msg) {
switch (msg.dataType) {
case AXISMOVEFUNC:
if (!m_controller->m_ScannerCtrl->IsStandBy() && g_Admin == USER){
- printf("没有准备好哦,无法操作\n"); return;
+ printf("振镜没有准备,无法操作\n"); return;
}
m_controller->m_Machine->CallAxisFunc(msg); break;
case VERSIONREQ: //获取版本信息
@@ -117,6 +117,9 @@ void DataHandle::DataCallBackHandle(const ReadData& msg) {
m_controller->m_Camera->CallFunc(msg,nullptr); break;
case CAMERAPARAMUPDATE:
m_controller->m_Camera->Update(msg); break;
+ case PURIFIERFUNC:
+ m_controller->m_Purifier->CallFunc(msg); break;
+
case REQUEST:
if (msg.nameKey == "36") {
printf("error,36 需要释放ScannerCtrl::Init()内部代码块...\n");
diff --git a/PrintS/DataManage/RWData.h b/PrintS/DataManage/RWData.h
index 62828b8..e7d7579 100644
--- a/PrintS/DataManage/RWData.h
+++ b/PrintS/DataManage/RWData.h
@@ -15,6 +15,7 @@ enum READTYPE {
REGISTFUNC, //注册函数集 一次请求,使用请求回复模式
CAMERAFUNC, //相机功能函数调用
CAMERAPARAMUPDATE, //相机参数更新
+ PURIFIERFUNC, //净化器接口功能
SETZEROPOS, //AxisState使用
AXISSTOPALL, //axis 运动急停
diff --git a/PrintS/Machine/Machine.cpp b/PrintS/Machine/Machine.cpp
index 67166bd..bf1ac46 100644
--- a/PrintS/Machine/Machine.cpp
+++ b/PrintS/Machine/Machine.cpp
@@ -636,15 +636,13 @@ void Machine::ArmAxisMove(AxisConfig::ActiveDirect adr, bool isContinue, bool is
//轴运动函数
-void Machine::CallAxisFunc(const ReadData& msg) {
+void Machine::CallAxisFunc(const ReadData& msg) {
MACHINEFUNC func = (MACHINEFUNC)stoi(msg.nameKey);
switch (func) {
case LOADIN:
- //if (!m_controller->m_ScannerCtrl->IsStandBy() && g_Admin == USER)return;
LoadIn();
break; //载入
case LOADOUT:
- //if (!m_controller->m_ScannerCtrl->IsStandBy() && g_Admin == USER)return;
LoadOut();
break; //载出
case INTERCEPTLOAD:
diff --git a/PrintS/Purifier/BasePurifier.cpp b/PrintS/Purifier/BasePurifier.cpp
index c74b902..1fb03b9 100644
--- a/PrintS/Purifier/BasePurifier.cpp
+++ b/PrintS/Purifier/BasePurifier.cpp
@@ -66,4 +66,19 @@ void BasePurifier::WorkRun()
Sleep(m_CycleTick);
}
+}
+
+
+void BasePurifier::CallFunc(const ReadData& rd, ::stream::ResponseAny** response) {
+ PurifierFunc func = (PurifierFunc)stoi(rd.nameKey);
+ switch (func) {
+ case STARTAUTODEOXYGEN:
+ StartAutoDeoxygen();
+ break;
+ case STOPAUTODEOXYGEN:
+ StopAutoDeoxygen();
+ break;
+ default:break;
+ }
+
}
\ No newline at end of file
diff --git a/PrintS/Purifier/BasePurifier.h b/PrintS/Purifier/BasePurifier.h
index 5ab4e8c..20839c7 100644
--- a/PrintS/Purifier/BasePurifier.h
+++ b/PrintS/Purifier/BasePurifier.h
@@ -6,6 +6,10 @@
#include "../config/bean/AlarmCfg.h"
#include "../Communication/BaseData.h"
+enum PurifierFunc {
+ STARTAUTODEOXYGEN = 0,
+ STOPAUTODEOXYGEN,
+};
class BasePurifier
{
@@ -18,7 +22,7 @@ public:
virtual void StartAutoDeoxygen() = 0;
virtual void StopAutoDeoxygen() = 0;
- virtual bool IsAutoDeoxygen() = 0;
+ virtual bool IsAutoDeoxygen() = 0; //判断的参数已传过去了,不需要在这里调用了
virtual void AutoCtrl() = 0;
virtual void AutoCtrlWhenPrint() = 0;
virtual void AutoCtrlWhenDoorOpen() = 0;
@@ -30,8 +34,7 @@ public:
virtual double GetWindValue(double dvalue) { return dvalue; }
//virtual void DrawUI() = 0;
virtual void DrawConfig() {};
- virtual string GetWindText() { return _(u8"循环风速:%.2f m/s"); }
- virtual void BlowBackNotiry(){}
+ virtual string GetWindText() { return _(u8"循环风速:%.2f m/s"); } //客户端自己控制
virtual bool IsConnectAlarm() { return false; }
//MachineCfg::PulifierType GetType() {
// return m_Type;
@@ -56,12 +59,13 @@ public:
virtual void SetParam(const ReadData& msg) {}
+ void CallFunc(const ReadData& rd, ::stream::ResponseAny** response = nullptr);
private:
static DWORD WINAPI WorkProc(BasePurifier* _this);
void WorkRun();
public:
- bool m_PurifierWinShow;
+ bool m_PurifierWinShow; //不传 客户端自己控制
protected:
ExtCfg* m_ExtCfg;
diff --git a/PrintS/output/Release/log/2024.hbd b/PrintS/output/Release/log/2024.hbd
index b240560..66445a5 100644
Binary files a/PrintS/output/Release/log/2024.hbd and b/PrintS/output/Release/log/2024.hbd differ
diff --git a/TestClient/DataManage/DataHandle.cpp b/TestClient/DataManage/DataHandle.cpp
index 3c621a0..c549bc7 100644
--- a/TestClient/DataManage/DataHandle.cpp
+++ b/TestClient/DataManage/DataHandle.cpp
@@ -110,6 +110,7 @@ void DataHandle::Usage() {
printf(" 4: " COLOR_YELLOW "test scan control interface...\n" COLOR_RESET);
printf(" 5: " COLOR_YELLOW "test registration interface...\n" COLOR_RESET);
printf(" 6: " COLOR_YELLOW "test camera interface...\n" COLOR_RESET);
+ printf(" 7: " COLOR_YELLOW "test purifier interface...\n" COLOR_RESET);
printf(" 100: " COLOR_YELLOW "start test recv param interface...\n" COLOR_RESET);
}
@@ -176,6 +177,8 @@ int DataHandle::Request(int index) {
RegistrationTest(); break;
case 6:
CameraTest(); break;
+ case 7:
+ PurifierTest(); break;
case 100:
ParamReadUsage();
while (printf("*请输入命令:") && std::getline(std::cin, userInput)) {
@@ -337,4 +340,12 @@ void DataHandle::CameraTest() {
SetPushMsg(WRITETYPE::CAMERAPARAMUPDATE,"LastMouRefImgPosY", to_string(100),iINT);
SetPushMsg(WRITETYPE::CAMERAPARAMUPDATE,"ShowFlag", to_string(1),iBOOL);
printf("CAMERAPARAMUPDATE update finish\n");
+}
+
+
+void DataHandle::PurifierTest() {
+ SetPushMsg(PURIFIERFUNC, to_string(STARTAUTODEOXYGEN));
+ printf("STARTAUTODEOXYGEN is called...\n");
+ SetPushMsg(PURIFIERFUNC, to_string(STOPAUTODEOXYGEN));
+ printf("STOPAUTODEOXYGEN is called...\n");
}
\ No newline at end of file
diff --git a/TestClient/DataManage/DataHandle.h b/TestClient/DataManage/DataHandle.h
index e2b5d50..e7c62a8 100644
--- a/TestClient/DataManage/DataHandle.h
+++ b/TestClient/DataManage/DataHandle.h
@@ -30,6 +30,7 @@ public:
void ScanCtrlTest(); //扫描控制测试
void RegistrationTest(); //注册功能测试
void CameraTest(); //相机功能测试
+ void PurifierTest(); //净化器功能测试
void Usage();
void ParamReadUsage();
diff --git a/TestClient/DataManage/FunC.h b/TestClient/DataManage/FunC.h
index d000bdc..b1b4865 100644
--- a/TestClient/DataManage/FunC.h
+++ b/TestClient/DataManage/FunC.h
@@ -76,4 +76,9 @@ enum CAMERAFUNC {
TAKEPHOTOS,
END2,
+};
+
+enum PurifierFunc {
+ STARTAUTODEOXYGEN = 0,
+ STOPAUTODEOXYGEN,
};
\ No newline at end of file
diff --git a/TestClient/DataManage/RWData.h b/TestClient/DataManage/RWData.h
index 99dec3b..b9ce20f 100644
--- a/TestClient/DataManage/RWData.h
+++ b/TestClient/DataManage/RWData.h
@@ -101,6 +101,7 @@ enum WRITETYPE {
REGISTFUNC, //注册函数集 一次请求,使用请求回复模式
CAMERAFUNC, //相机功能函数调用
CAMERAPARAMUPDATE, //相机参数更新
+ PURIFIERFUNC, //净化器接口功能
SETZEROPOS, //AxisState使用
AXISSTOPALL, //axis 运动急停
diff --git a/TestClient/PrintC.vcxproj b/TestClient/PrintC.vcxproj
index 015551f..cd1fe8d 100644
--- a/TestClient/PrintC.vcxproj
+++ b/TestClient/PrintC.vcxproj
@@ -286,6 +286,7 @@
+
diff --git a/TestClient/PrintC.vcxproj.filters b/TestClient/PrintC.vcxproj.filters
index c222b86..85e0ebc 100644
--- a/TestClient/PrintC.vcxproj.filters
+++ b/TestClient/PrintC.vcxproj.filters
@@ -518,6 +518,9 @@
protobuf
+
+ utils
+
diff --git a/TestClient/main.cpp b/TestClient/main.cpp
index 3090be4..a66f03a 100644
--- a/TestClient/main.cpp
+++ b/TestClient/main.cpp
@@ -12,6 +12,7 @@
#include