From 3628a707a38e1c590216c5983c9b97b9c742f86c Mon Sep 17 00:00:00 2001
From: mrDarker <mr.darker@163.com>
Date: 星期一, 24 三月 2025 09:01:42 +0800
Subject: [PATCH] Merge branch 'clh' into liuyang

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

diff --git a/SourceCode/Bond/Servo/CEquipment.h b/SourceCode/Bond/Servo/CEquipment.h
index c13e71e..0ada23c 100644
--- a/SourceCode/Bond/Servo/CEquipment.h
+++ b/SourceCode/Bond/Servo/CEquipment.h
@@ -1,12 +1,22 @@
 #pragma once
 #include "Log.h"
 #include "CCLinkIEControl.h"
+#include "CSample.h"
+#include "CPin.h"
 #include "CEqModeStep.h"
 #include "CEqStatusStep.h"
 #include "CEqAlarmStep.h"
 #include "CEqProcessStep.h"
 #include "CEqCimModeChangeStep.h"
+#include "CEqModeChangeStep.h"
+#include "CEqCimMessageCmdStep.h"
+#include "CEqCimMessageClearStep.h"
+#include "CEqDateTimeSetCmdStep.h"
+#include "CEqVCREnableStep.h"
+#include <vector>
 #include <map>
+#include <list>
+#include "CPanel.h"
 
 
 namespace SERVO {
@@ -58,6 +68,7 @@
 		std::string& getDescription();
 		void setStation(int network, int station);
 		const StationIdentifier& getStation();
+		virtual void getAttributeVector(CAttributeVector& attrubutes);
 		void setReadBitBlock(unsigned int start, unsigned int end);
 		MemoryBlock& getReadBitBlock();
 		void setWriteBitBlock(unsigned int start, unsigned int end);
@@ -65,13 +76,22 @@
 		void getProperties(std::vector<std::pair<std::string, std::string>>& container);
 		int addStep(unsigned int addr, CStep* pStep);
 		CStep* getStep(unsigned int addr);
+		CStep* getStepWithName(const char* pszName);
 		std::map<unsigned int, CStep*>& getSteps();
 		virtual void init();
 		virtual void term();
+		virtual void initPins() = 0;
 		virtual void onTimer(UINT nTimerid);
 		virtual void serialize(CArchive& ar);
 		virtual void onReceiveLBData(const char* pszData, size_t size);
-
+		virtual CPin* addPin(PinType type, char* pszName);
+		CPin* getPin(char* pszName);
+		std::vector<CPin*>& CEquipment::getInputPins();
+		std::vector<CPin*>& CEquipment::getOutputPins();
+		virtual int recvIntent(CPin* pPin, CIntent* pIntent);
+		virtual BOOL glassWillArrive(CPanel* pPanel);
+		virtual int outputGlass(int port);
+		virtual int glassArrived(CPanel* pPanel);
 
 	// 以下为从CC-Link读取到的Bit标志位检测函数
 	public:
@@ -91,6 +111,7 @@
 	protected:
 		inline void Lock() { EnterCriticalSection(&m_criticalSection); }
 		inline void Unlock() { LeaveCriticalSection(&m_criticalSection); }
+		void addPanelToList(CPanel* pPanel);
 
 	protected:
 		EquipmentListener m_listener;
@@ -101,6 +122,10 @@
 		StationIdentifier m_station;
 		MemoryBlock m_blockReadBit;
 		MemoryBlock m_blockWriteBit;
+		std::vector<CPin*> m_inputPins;
+		std::vector<CPin*> m_outputPins;
+		std::list<CPanel*> m_panelList;
+
 
 		// 以下为从CC-Link读取到的Bit标志位
 	private:

--
Gitblit v1.9.3