From bc7f1c4e028e69be51079b59dae4ae5c4d43f5bb Mon Sep 17 00:00:00 2001 From: chenluhua1980 <Chenluhua@qq.com> Date: 星期六, 31 一月 2026 21:54:56 +0800 Subject: [PATCH] 1.状态指示图,目前灰色表示掉线,绿色表示在线。增加Slot的小点表示有没有料,及加工状态 。 2.增加图示 --- SourceCode/Bond/Servo/CLoadPort.h | 70 ++++++++++++++++++++++++++--------- 1 files changed, 52 insertions(+), 18 deletions(-) diff --git a/SourceCode/Bond/Servo/CLoadPort.h b/SourceCode/Bond/Servo/CLoadPort.h index cd5146e..1fb70d7 100644 --- a/SourceCode/Bond/Servo/CLoadPort.h +++ b/SourceCode/Bond/Servo/CLoadPort.h @@ -1,4 +1,4 @@ -#pragma once +锘�#pragma once #include "CEquipment.h" #include "ServoCommo.h" @@ -17,11 +17,11 @@ virtual void term(); virtual void initPins(); virtual void initSteps(); + virtual void initSlots(); virtual void onTimer(UINT nTimerid); virtual void serialize(CArchive& ar); virtual void getAttributeVector(CAttributeVector& attrubutes); virtual int recvIntent(CPin* pPin, CIntent* pIntent); - virtual BOOL glassWillArrive(CGlass* pGlass); virtual void onReceiveLBData(const char* pszData, size_t size); public: @@ -31,47 +31,81 @@ int setCassetteType(CassetteType type, ONWRITED onWritedBlock = nullptr); int setTransferMode(TransferMode mode, ONWRITED onWritedBlock = nullptr); int eableAutoChange(BOOL bEnable, ONWRITED onWritedBlock = nullptr); + void localEanblePort(BOOL bEnable); + void localSetPortType(PortType type); + void localSetPortMode(PortMode mode); + void localSetCessetteType(CassetteType type); + void localSetTransferMode(TransferMode mode); + void localAutoChangeEnable(BOOL bEnable); + short getScanCassetteMap(); + short getDownloadCassetteMap(); + void setDownloadCassetteMap(short map); public: + short getNextCassetteSequenceNo(); + int getPortCassetteSnSeed(); + void setPortCassetteSnSeed(int seed); void setIndex(unsigned int index); unsigned int getIndex(); BOOL isEnable(); - int getPortType(); - int getPortMode(); - int getCessetteType(); - int getTransferMode(); + PortType getPortType(); + PortMode getPortMode(); + CassetteType getCessetteType(); + TransferMode getTransferMode(); BOOL isAutoChange(); - int testGenerateGlassList(MaterialsType type, int count, const char* pszPrefix, int startSuffix); + int getPortStatus(); + int getCassetteSequenceNo(); + std::string& getCassetteId(); + // Simulation helper: allow setting CarrierID when no EFEM is connected. + void simulateSetCassetteId(const char* pszCarrierId); + int getLoadingCassetteType(); + int getQTimeFlag(); + int getCassetteMappingState(); + int getCassetteStatus(); + int testGenerateGlassList(MaterialsType type); + int generateGlassList(short map); + int testGenerateGlassListFromConfig(const SERVO::PortConfig& config); public: - static std::string& getPortTypeDescription(int portType, std::string& strDescription); - static std::string& getPortModeDescription(int portMode, std::string& strDescription); - static std::string& getPortCassetteTypeDescription(int casseteType, std::string& strDescription); - static std::string& getPortTransferModeDescription(int mode, std::string& strDescription); + static std::string& getPortTypeDescription(PortType portType, std::string& strDescription); + static std::string& getPortModeDescription(PortMode portMode, std::string& strDescription); + static std::string& getPortCassetteTypeDescription(CassetteType casseteType, std::string& strDescription); + static std::string& getPortTransferModeDescription(TransferMode mode, std::string& strDescription); static std::string& getEnableModeDescription(int mode, std::string& strDescription); + static std::string& getPortStatusDescription(int portStatus, std::string& strDescription); + static std::string& getLoadingCassetteTypeDescription(int type, std::string& strDescription); + static std::string& getQTimeFlagDescription(int flag, std::string& strDescription); + static std::string& getCassetteMappingStateDescription(int state, std::string& strDescription); + static std::string& getCassetteStatusDescription(int state, std::string& strDescription); public: - virtual int outputGlass(int port); int sendCassetteCtrlCmd(short cmd, short* jobExistence, int jobExistenceSize, short slotProcess, short jopCount, - CJobDataA* pJobDataA); + CJobDataA* pJobDataA, + ONWRITED onWritedBlock); CStep* getCassetteCtrlCmdStep(); + void setCompareMapsBeforeProceeding(BOOL bCompare); + BOOL isCompareMapsBeforeProceeding() const; private: int decodePortStatusReport(CStep* pStep, const char* pszData, size_t size); private: unsigned int m_nIndex; - int m_nType; - int m_nMode; - int m_nCassetteType; - int m_nTransferMode; + PortType m_portType; + PortMode m_portMode; + CassetteType m_cassetteType; + TransferMode m_transferMode; BOOL m_bEnable; BOOL m_bAutoChangeEnable; CPortStatusReport m_portStatusReport; + int m_nNextCassetteSequenceNo; + + // 鍦ㄥ紑濮嬪伐鑹哄墠鏄惁鍏堥渶瑕佸厛姣旇緝map + BOOL m_isCompareMapsBeforeProceeding; + short m_downloadCassetteMap; }; } - -- Gitblit v1.9.3