#pragma once #include "CEquipment.h" #include "CLoadPort.h" #include "CAligner.h" #include "CFliper.h" #include "CArmTray.h" namespace SERVO { class CEFEM : public CEquipment { public: CEFEM(); virtual ~CEFEM(); public: virtual const char* getClassName(); virtual void init(); virtual void term(); virtual void initPins(); virtual void initSteps(); virtual int onStepEvent(CStep* pStep, int code); 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 onFetchedOut(int port, const char* pszGlassId); public: void setPort(unsigned int index, CLoadPort* pPort); void setAligner(CAligner* pAligner); void setFliper(CFliper* pFliper); void setArmTray(unsigned int index, CArmTray* pArmTray); private: CLoadPort* m_pPort[4]; CAligner* m_pAligner; CFliper* m_pFliper; CArmTray* m_pArmTray[2]; }; }