From 349f26accd28cd83356334239b11728ce50b7f95 Mon Sep 17 00:00:00 2001
From: LAPTOP-SNT8I5JK\Boounion <Chenluhua@qq.com>
Date: 星期三, 14 五月 2025 18:10:21 +0800
Subject: [PATCH] 1.重新理顺Glass的流转,CJobDataB, CJobDataS在CEquipment的列表存储等;

---
 SourceCode/Bond/Servo/CEquipment.h |   22 ++++++++++++++++++----
 1 files changed, 18 insertions(+), 4 deletions(-)

diff --git a/SourceCode/Bond/Servo/CEquipment.h b/SourceCode/Bond/Servo/CEquipment.h
index 24eb6ff..831a3df 100644
--- a/SourceCode/Bond/Servo/CEquipment.h
+++ b/SourceCode/Bond/Servo/CEquipment.h
@@ -31,6 +31,7 @@
 #include "CJobDataB.h"
 #include "CJobDataC.h"
 #include "CJobDataS.h"
+#include "CProcessData.h"
 
 
 namespace SERVO {
@@ -80,6 +81,7 @@
 		void setCcLink(CCCLinkIEControl* pCcLink);
 		virtual BOOL isArm() { return FALSE; };
 		void setArm(CEquipment* pEquipment);
+		CEquipment* getArm();
 		void setBaseAlarmId(int nBaseId);
 		int getBaseAlarmId();
 		void setID(int nID);
@@ -116,10 +118,15 @@
 		virtual BOOL glassWillArrive(CGlass* pGlass);
 		virtual int outputGlass(int port);
 		virtual int glassArrived(CGlass* pGlass);
+		virtual int fetchedOutJob(CJobDataB* pJobDataB);
+		virtual int storedJob(CJobDataB* pJobDataB);
 		virtual int onReceivedJob(int port, CJobDataS* pJobDataS);
 		virtual int onSentOutJob(int port, CJobDataS* pJobDataS);
-		virtual int onFetchedOutJob(int port, const char* pszGlassId);
-		virtual int onStoreJob(int port, const char* pszGlassId);
+		virtual BOOL onPreFetchedOutJob(int port, CJobDataB* pJobDataB);
+		virtual int onFetchedOutJob(int port, CJobDataB* pJobDataB);
+		virtual BOOL onPreStoredJob(int port, CJobDataB* pJobDataB);
+		virtual int onStoredJob(int port, CJobDataB* pJobDataB);
+		virtual int onProcessData(CProcessData* pProcessData);
 		void getGlassList(std::list<CGlass*>& list);
 		CGlass* getFrontGlass();
 		BOOL removeClass(CGlass* pGlass);
@@ -150,8 +157,6 @@
 		int recipeParameterRequest(short masterRecipeId, short localRecipeId, short unitNo);
 
 	public:
-		int fetchedOutJob(const char* pszGlassId);
-		int storedJob(const char* pszGlassId);
 		BOOL isGlassListEmpty();
 
 
@@ -173,10 +178,17 @@
 		void addGlassToList(CGlass* pGlass);
 		short decodeRecipeListReport(const char* pszData, size_t size);
 		short decodeRecipeParameterReport(const char* pszData, size_t size);
+		int decodeProcessDataReport(CStep* pStep, const char* pszData, size_t size);
 		int decodeReceivedJobReport(CStep* pStep, int port, const char* pszData, size_t size);
 		int decodeSentOutJobReport(CStep* pStep, int port, const char* pszData, size_t size);
 		int decodeFetchedOutJobReport(CStep* pStep, int port, const char* pszData, size_t size);
 		int decodeStoredJobReport(CStep* pStep, int port, const char* pszData, size_t size);
+		int addJobDataB(CJobDataB* pJobDataB);
+		int removeJobDataB(int nCassetteSequenceNo, int nJobSequenceNo);
+		CJobDataB* getJobDataB(int nCassetteSequenceNo, int nJobSequenceNo);
+		int addJobDataS(CJobDataS* pJobDataS);
+		int removeJobDataS(int nCassetteSequenceNo, int nJobSequenceNo);
+		CJobDataS* getJobDataS(int nCassetteSequenceNo, int nJobSequenceNo);
 
 	protected:
 		EquipmentListener m_listener;
@@ -210,6 +222,8 @@
 
 	private:
 		CEquipment* m_pArm;
+		std::list<CJobDataS> m_listJobDataS;
+		std::list<CJobDataB> m_listJobDataB;
 	};
 }
 

--
Gitblit v1.9.3