#pragma once
|
#include "CEquipment.h"
|
#include "ServoCommo.h"
|
|
|
namespace SERVO {
|
class CLoadPort :
|
public CEquipment
|
{
|
public:
|
CLoadPort();
|
virtual ~CLoadPort();
|
|
public:
|
virtual const char* getClassName();
|
virtual void init();
|
virtual void term();
|
virtual void initPins();
|
virtual void initSteps();
|
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);
|
|
public:
|
void setIndex(unsigned int index);
|
unsigned int getIndex();
|
BOOL isEnable();
|
int getPortType();
|
int getPortMode();
|
int getCessetteType();
|
int getTransferMode();
|
BOOL isAutoChange();
|
int testGenerateGlassList(MaterialsType type, int count, const char* pszPrefix, int startSuffix);
|
|
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& getEnableModeDescription(int mode, std::string& strDescription);
|
|
public:
|
virtual int outputGlass(int port);
|
int sendCassetteCtrlCmd(short cmd,
|
short* jobExistence,
|
int jobExistenceSize,
|
short slotProcess,
|
short jopCount,
|
CJobDataA* pJobDataA);
|
CStep* getCassetteCtrlCmdStep();
|
|
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;
|
BOOL m_bEnable;
|
BOOL m_bAutoChangeEnable;
|
CPortStatusReport m_portStatusReport;
|
};
|
}
|