#pragma once
|
|
#include "WsiControl.h"
|
#include "IOCPNetwork/IOCPNetwork2Parent.h"
|
|
class CNetClient;
|
|
class AFX_EXT_CLASS CWsiControl_Dit : public CWsiControl, public IIOCPNetwork2Parent
|
{
|
public:
|
CWsiControl_Dit(int nIndex);
|
virtual ~CWsiControl_Dit(void);
|
|
virtual BOOL Connect(const CWsiControlInfo& controlInfo);
|
virtual void Disconnect();
|
|
// interface
|
virtual BOOL SetWsiReady(const CString& strGlassID, const CString& strRecipeID, int nMagIndex, int nType=WsiMode_None,int nAfmHome=1);
|
virtual BOOL SetMultiShotWsiReady(const CString& strGlassID, const CString& strRecipeID, int nMagIndex, int nType=WsiMode_None,int nAfmHome=1,int nMultiShotFlag=0,int nShotCount=0,double dMargin=0);
|
virtual BOOL SetWsiStart(int nPointCount, const VectorInteger& vecUMOriginX, const VectorInteger& vecUMOriginY, int nUserWsiType);
|
virtual BOOL SetWsiStart_CPJT(int nPointCount, const VectorInteger& vecUMOriginX, const VectorInteger& vecUMOriginY, int nUserWsiType, const VectorInteger& nModelIndex);
|
virtual BOOL SetMultiShotWsiStart(int nPointCount, const VectorInteger& vecUMOriginX, const VectorInteger& vecUMOriginY, int nUserWsiType,int nMeasurePoint,int nMeasureShotNumber);
|
virtual BOOL SetWsiMotionEnd(int nResultIndex, int nUMOriginX, int nUMOriginY);
|
virtual BOOL SetWsiEnd();
|
virtual BOOL SetWsiTimeOver();
|
virtual BOOL SetSystemTime(SYSTEMTIME stCurrentTime);
|
virtual BOOL SetWsiReflowStart(int nPointCount, const VectorInteger& vectorPointIndex, const VectorInteger& vecUMOriginX, const VectorInteger& vecUMOriginY, int nWsiType=WsiMeasureType_Monomer); // 181129 SJB, Reflow WSI 추가
|
// getter
|
virtual int GetConnected() const;
|
|
virtual BOOL SendWsiAfmSafePosMove();
|
|
// net iocp 2 parent
|
virtual void IOCPNet2P_Connected(int Type);
|
virtual void IOCPNet2P_Disconnected(int Type, int nModuleNo = -1);
|
virtual BOOL IOCPNet2P_Received(int Type, CNetPacket* pPacket, __int64 nContext = -1);
|
|
protected:
|
int InitNetwork(const CString& strIPAddress);
|
void DeinitNetwork();
|
|
void NetProcess_WC_MODULE_INDEX(CNetPacket* pPacket);
|
void NetProcess_WC_MEASURE_READY(CNetPacket* pPacket);
|
void NetProcess_WC_MEASURE_START(CNetPacket* pPacket);
|
void NetProcess_WC_MEASURE_MOTION_END(CNetPacket* pPacket);
|
void NetProcess_WC_MEASURE_SCAN_END(CNetPacket* pPacket);
|
void NetProcess_WC_MEASURE_RESULT(CNetPacket* pPacket);
|
void NetProcess_WC_MEASURE_INFO(CNetPacket* pPacket);
|
void NetProcess_WC_MEASURE_END(CNetPacket* pPacket);
|
void NetProcess_WC_MEASURE_TIMEOVER(CNetPacket* pPacket);
|
void NetProcess_WC_ALIVE_OCCUR(CNetPacket* pPacket);
|
void NetProcess_WC_ALARM_OCCUR(CNetPacket* pPacket);
|
|
|
protected:
|
CNetClient* m_pClientSocket;
|
};
|