#pragma once
|
|
#include "WsiControlInfo.h"
|
#include <vector>
|
|
typedef std::vector<int> VectorInteger;
|
typedef std::vector<double> VectorDouble;
|
|
class AFX_EXT_CLASS CWsiControl
|
{
|
public:
|
CWsiControl(int nIndex);
|
virtual ~CWsiControl(void);
|
void SetWC2P(IWsiControl2Parnet* pWC2P) { m_pWC2P = pWC2P; }
|
|
virtual int Connect(const CWsiControlInfo& controlInfo) = 0;
|
virtual void Disconnect() = 0;
|
virtual void ClearResult();
|
|
// interface
|
virtual BOOL SetWsiReady(const CString& strGlassID, const CString& strRecipeID, int nMagIndex, int nType=WsiMode_None,int nAfmHome=1) = 0;
|
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)=0;
|
virtual BOOL SetWsiStart(int nPointCount, const VectorInteger& vecUMOriginX, const VectorInteger& vecUMOriginY, int nUserWsiType) = 0;
|
virtual BOOL SetWsiStart_CPJT(int nPointCount, const VectorInteger& vecUMOriginX, const VectorInteger& vecUMOriginY, int nUserWsiType, const VectorInteger& nModelIndex) = 0;
|
virtual BOOL SetMultiShotWsiStart(int nPointCount, const VectorInteger& vecUMOriginX, const VectorInteger& vecUMOriginY, int nUserWsiType,int nMeasurePoint,int nMeasureShotNumber) =0;
|
virtual BOOL SetWsiMotionEnd(int nResultIndex, int nUMOriginX, int nUMOriginY) = 0;
|
virtual BOOL SetWsiEnd() = 0;
|
virtual BOOL SetWsiTimeOver() = 0;
|
|
virtual BOOL SetSystemTime(SYSTEMTIME stCurrentTime);
|
virtual BOOL SetWsiReflowStart(int nPointCount, const VectorInteger& vectorPointIndex, const VectorInteger& vectorPosX, const VectorInteger& vectorPosY, int nWsiType=1) = 0; // 181129 SJB, Reflow WSI 추가
|
|
virtual BOOL SendWsiAfmSafePosMove()=0;
|
|
// getter
|
virtual int GetConnected() const;
|
virtual int GetResultCount() const;
|
virtual SWsiResult* GetResult(int nIndex);
|
virtual const SWsiResult* GetResult(int nIndex) const;
|
virtual VectorWsiResult* GetVectorWsiResult();
|
virtual const VectorWsiResult* GetVectorWsiResult() const;
|
|
protected:
|
int m_nIndex;
|
IWsiControl2Parnet* m_pWC2P;
|
CWsiControlInfo m_Controlinfo;
|
|
int m_nConnected;
|
int m_nResultCount;
|
int m_nResultIndex;
|
VectorWsiResult m_vecWsiResult;
|
};
|