| | |
| | | #pragma once |
| | | #pragma once |
| | | #include "CEquipment.h" |
| | | #include "ServoCommo.h" |
| | | |
| | |
| | | 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 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 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 count, const char* pszPrefix, int startSuffix); |
| | | int testGenerateGlassList(MaterialsType type); |
| | | int generateGlassList(short map); |
| | | int testGenerateGlassListFromConfig(const SERVO::PortConfig& config); |
| | | |
| | | public: |
| | | static std::string& getPortTypeDescription(PortType portType, 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); |
| | |
| | | BOOL m_bEnable; |
| | | BOOL m_bAutoChangeEnable; |
| | | CPortStatusReport m_portStatusReport; |
| | | int m_nNextCassetteSequenceNo; |
| | | |
| | | // 在开始工艺前是否先需要先比较map |
| | | BOOL m_isCompareMapsBeforeProceeding; |
| | | short m_downloadCassetteMap; |
| | | }; |
| | | } |
| | | |