#include "StdAfx.h" #include "Keyence_Laser.h" CKeyence_Laser::CKeyence_Laser() { } CKeyence_Laser::~CKeyence_Laser() { } void CKeyence_Laser::KeyenceLaserInit(void) { m_hLkif=LoadLibrary(_T("LkIF.dll")); if(m_hLkif) { m_pGetCalcData=(pLKIF_GetCalcData)GetProcAddress(m_hLkif,"LKIF_GetCalcData"); } } void CKeyence_Laser::Get_KeyenceLaserData(float *LaserValue1,float *LaserValue2) { *LaserValue1=10; *LaserValue2=10; LKIF_FLOATVALUE GetVal1,GetVal2; if((*m_pGetCalcData)(&GetVal1,&GetVal2)!=1) { return ; } switch(GetVal1.FloatResult) { case LKIF_FLOATRESULT_RANGEOVER_P: { *LaserValue1=50; break; } case LKIF_FLOATRESULT_RANGEOVER_N: { *LaserValue1=-50; break; } case LKIF_FLOATRESULT_WAITING: { *LaserValue1=0; break; } default: { *LaserValue1=GetVal1.Value; break; } } switch(GetVal2.FloatResult) { case LKIF_FLOATRESULT_RANGEOVER_P: { *LaserValue2=50; break; } case LKIF_FLOATRESULT_RANGEOVER_N: { *LaserValue2=-50; break; } case LKIF_FLOATRESULT_WAITING: { *LaserValue2=0; break; } default: { *LaserValue2=GetVal2.Value; break; } } }