From 2ebccf831b56d30089924f2eefa2d790e2b8f3fc Mon Sep 17 00:00:00 2001
From: LAPTOP-SNT8I5JK\Boounion <Chenluhua@qq.com>
Date: 星期四, 07 八月 2025 09:20:21 +0800
Subject: [PATCH] 1.为CVariable增加值的设置和获取 2.当发生Port状态改变为InUse时,此时也刚好获取到CarrierID,上报S6F11_CarrierID_Readed
---
SourceCode/Bond/Servo/CLoadPort.h | 69 ++++++++++++++++++++++++++--------
1 files changed, 53 insertions(+), 16 deletions(-)
diff --git a/SourceCode/Bond/Servo/CLoadPort.h b/SourceCode/Bond/Servo/CLoadPort.h
index 17d8eef..12776df 100644
--- a/SourceCode/Bond/Servo/CLoadPort.h
+++ b/SourceCode/Bond/Servo/CLoadPort.h
@@ -1,5 +1,6 @@
#pragma once
#include "CEquipment.h"
+#include "ServoCommo.h"
namespace SERVO {
@@ -16,53 +17,89 @@
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:
+ int setPortType(PortType type, ONWRITED onWritedBlock = nullptr);
+ int eablePort(BOOL bEnable, ONWRITED onWritedBlock = nullptr);
+ int setPortMode(PortMode mode, ONWRITED onWritedBlock = nullptr);
+ 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();
+
+ public:
+ short getNextCassetteSequenceNo();
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();
+ 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);
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;
};
}
--
Gitblit v1.9.3