From f6347c91173823acf25d4fbea3acbe3abb37c83d Mon Sep 17 00:00:00 2001
From: LAPTOP-SNT8I5JK\Boounion <Chenluhua@qq.com>
Date: 星期一, 11 八月 2025 16:07:19 +0800
Subject: [PATCH] 1.千传测试功能,增加当前工序和工验证,确保千传测试按序进行;

---
 SourceCode/Bond/Servo/CMaster.h |   26 ++++++++++++++++++++++++++
 1 files changed, 26 insertions(+), 0 deletions(-)

diff --git a/SourceCode/Bond/Servo/CMaster.h b/SourceCode/Bond/Servo/CMaster.h
index 27d0973..cf687de 100644
--- a/SourceCode/Bond/Servo/CMaster.h
+++ b/SourceCode/Bond/Servo/CMaster.h
@@ -15,6 +15,23 @@
 #include "CRobotTask.h"
 
 
+
+#define CTStep_Unknow                   0
+#define CTStep_LoadPort_Aligner         1
+#define CTStep_Aligner_Fliper           2
+#define CTStep_Fliper_Bonder1           3
+#define CTStep_Bonder1_Bonder2          4
+#define CTStep_Bonder2_VacuumBake       5
+#define CTStep_VacuumBake_VacuumBake    6
+#define CTStep_VacuumBake_BakeCooling   7
+#define CTStep_BakeCooling_BakeCooling1 8
+#define CTStep_BakeCooling_BakeCooling2 9
+#define CTStep_BakeCooling_BakeCooling3 10
+#define CTStep_BakeCooling_Measurement  11
+#define CTStep_Measurement_LoadPort     12
+#define CTStep_begin                    CTStep_LoadPort_Aligner
+#define CTStep_end                      CTStep_Measurement_LoadPort
+
 namespace SERVO {
     enum class MASTERSTATE {
         READY = 0,
@@ -33,6 +50,7 @@
     typedef std::function<void(void* pMaster, CEquipment* pEquipment, int code)> ONEQDATACHANGED;
     typedef std::function<void(void* pMaster, CRobotTask* pTask, int code)> ONROBOTTASKEVENT;
     typedef std::function<void(void* pMaster, CEquipment* pEquipment, short status, __int64 data)> ONLOADPORTSTATUSCHANGED;
+    typedef std::function<void(void* pMaster, int round)> ONCTROUNDEND;
     typedef struct _MasterListener
     {
         ONMASTERSTATECHANGED    onMasterStateChanged;
@@ -43,6 +61,7 @@
         ONEQDATACHANGED         onEqDataChanged;
         ONROBOTTASKEVENT        onRobotTaskEvent;
         ONLOADPORTSTATUSCHANGED	onLoadPortStatusChanged;
+        ONCTROUNDEND            onCTRoundEnd;
     } MasterListener;
 
     class CMaster
@@ -83,6 +102,8 @@
         bool isAlarmReportEnable();
         int proceedWithCarrier(unsigned int port);
         int carrierRelease(unsigned int port);
+        int getContinuousTransferCount();
+        void setContinuousTransferCount(int round);
 
     private:
         inline void lock() { EnterCriticalSection(&m_criticalSection); }
@@ -150,6 +171,11 @@
 
         // 在开始工艺前是否先需要先比较map
         BOOL m_isCompareMapsBeforeProceeding;
+
+        // 千传圈数计数
+        int m_nContinuousTransferCount;
+        int m_nContinuousTransferStep;
+
     private:
         bool m_bEnableEventReport;
         bool m_bEnableAlarmReport;

--
Gitblit v1.9.3