// MotionController_GALIL.h: interface for the CMotionController_GALIL class. // ////////////////////////////////////////////////////////////////////// #if !defined(AFX_MOTIONCONTROLLER_GALIL_H__CDB6D2BC_791A_4C32_B162_0BB564FFED61__INCLUDED_) #define AFX_MOTIONCONTROLLER_GALIL_H__CDB6D2BC_791A_4C32_B162_0BB564FFED61__INCLUDED_ #if _MSC_VER > 1000 #pragma once #endif // _MSC_VER > 1000 #include "MotionControllerBase.h" class CMotionController_GALIL : public CMotionControllerBase { public: CMotionController_GALIL(int index); virtual ~CMotionController_GALIL(); virtual BOOL Init(int &nNoOfMtr); virtual void Close(); // get the IOs status of the motor virtual unsigned short GetMotionIOStatus(CMtrProfile mtrProfile); // get Motion status of motor virtual int GetMotionStatus(CMtrProfile mtrProfile); // get Motor Pos value virtual double GetMtrPos(CMtrProfile mtrProfile); // get position error value virtual double GetPosErr(CMtrProfile mtrProfile); // check if motor is at home sensor position virtual BOOL IsHomed(CMtrProfile mtrProfile); // check motor in position signal virtual BOOL IsInPosition(CMtrProfile mtrProfile); // check if motor negative/ccw limit is triggered virtual BOOL IsNegLimHit(CMtrProfile mtrProfile); // check if motor positive/cw limit hit virtual BOOL IsPosLimHit(CMtrProfile mtrProfile); // check if motor driver alarm virtual BOOL IsMotorAlarm(CMtrProfile mtrProfile); // check if motor is ready virtual BOOL IsMotorReady(CMtrProfile mtrProfile); // check if motor is on virtual BOOL IsMtrOn(CMtrProfile mtrProfile); void SetGalilMotionInt(int nAxisNo); int m_nCurrentGalilCard; private: CWinThread *m_pGalilIntThread[4]; char m_cResponse[100]; }; #endif // !defined(AFX_MOTIONCONTROLLER_GALIL_H__CDB6D2BC_791A_4C32_B162_0BB564FFED61__INCLUDED_)