| | |
| | | #pragma once |
| | | #pragma once |
| | | #include "CEquipment.h" |
| | | #include "ServoCommo.h" |
| | | |
| | | |
| | | namespace SERVO { |
| | |
| | | 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); |
| | | virtual int onStepEvent(CStep* pStep, int code); |
| | | |
| | | 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(); |
| | | 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; |
| | | }; |
| | | } |
| | | |