92 lines
3.9 KiB
C++
92 lines
3.9 KiB
C++
// protocol for control SevenOcean's Machine
|
|
//
|
|
//////////////////////////////////////////////////////////////////////
|
|
#ifndef AFX_KEYENCE__LASER_H__B422904C_2CEB_495B_B7BD_B45AB30286DD__INCLUDED_
|
|
#define AFX_KEYENCE__LASER_H__B422904C_2CEB_495B_B7BD_B45AB30286DD__INCLUDED_
|
|
|
|
|
|
#if _MSC_VER > 1000
|
|
#pragma once
|
|
#endif // _MSC_VER > 1000
|
|
|
|
#include "LkIF.h"
|
|
//Get out DATA
|
|
typedef BOOL (WINAPI* pLKIF_GetCalcData)(OUT LKIF_FLOATVALUE *CalcData1,OUT LKIF_FLOATVALUE *CalcData2);
|
|
// Starting the Data Storage
|
|
typedef BOOL (WINAPI* pLKIF_DataStorageStart)(void);
|
|
// Stopping the Data Storage
|
|
typedef BOOL (WINAPI* pLKIF_DataStorageStop)(void);
|
|
// Initializing the Data Storage
|
|
typedef BOOL (WINAPI* pLKIF_DataStorageInit)(void);
|
|
// Outputting the Data Storage
|
|
typedef BOOL (WINAPI* pLKIF_DataStorageGetData)(IN int OutNo,IN int NumOutBuffer,OUT LKIF_FLOATVALUE *OutBuffer,OUT int *NumReceived);
|
|
// Data Storage Accumulation Status Output
|
|
typedef BOOL (WINAPI* pLKIF_DataStorageGetStatus)(IN int OutNo,OUT BOOL *IsStorage,OUT int *NumStorageData);
|
|
// Set Data Storage
|
|
typedef BOOL (WINAPI* pLKIF_SetDataStorage)(IN LKIF_TARGETOUT TargetOut,IN int NumStorage,IN LKIF_STORAGECYCLE StorageCycle);
|
|
// Program Change
|
|
typedef BOOL (WINAPI* pLKIF_SETPROGRAMNO)(IN int ProgramNo);
|
|
// Program Change
|
|
typedef BOOL (WINAPI* pLKIF_SETPROGRAMNO)(IN int ProgramNo);
|
|
// Set Scaling
|
|
typedef BOOL (WINAPI* pLKIF_SetScaling)(IN int OutNo,IN int HeadNo,IN int InputValue1,IN int OutputValue1,IN int InputValue2,IN int OutputValue2);
|
|
typedef BOOL (WINAPI* pLKIF_GetScaling)(IN int OutNo,IN int HeadNo,OUT int *InputValue1,OUT int *OutputValue1,OUT int *InputValue2,OUT int *OutputValue2);
|
|
|
|
typedef BOOL (WINAPI* pLKIF_SetDisplayUnit)(IN int OutNo,IN LKIF_DISPLAYUNIT DisplayUnit);
|
|
typedef BOOL (WINAPI* pLKIF_GetDisplayUnit)(IN int OutNo,OUT LKIF_DISPLAYUNIT *DisplayUnit);
|
|
typedef BOOL (WINAPI* pLKIF_SetPanel)(IN int OutNo);
|
|
// Set Measurement Mode
|
|
typedef BOOL (WINAPI* pLKIF_SetMeasureMode)(IN int HeadNo,IN LKIF_MEASUREMODE MeasureMode);
|
|
typedef BOOL (WINAPI* pLKIF_SetCalcMethod)(IN int OutNo,IN LKIF_CALCMETHOD CalcMethod,LKIF_CALCTARGET CalcTarget);
|
|
typedef BOOL (WINAPI* pLKIF_SetMutualInterferencePrevention)(IN BOOL IsOn);
|
|
|
|
|
|
//======================================================================================
|
|
class CKeyence_Laser
|
|
{
|
|
protected:
|
|
int m_iSetOutNo;
|
|
int m_NeedStorageDataNumber;
|
|
LKIF_STORAGECYCLE m_StorageCycle;
|
|
HMODULE m_hLkif;
|
|
int m_ProgramNO;
|
|
public:
|
|
|
|
CKeyence_Laser();
|
|
~CKeyence_Laser();
|
|
|
|
//»ñÈ¡Êý¾ÝµÄº¯ÊýÖ¸Õë
|
|
pLKIF_GetCalcData m_pGetCalcData;
|
|
pLKIF_DataStorageStart m_pDataStorageStart;
|
|
pLKIF_DataStorageStop m_pDataStorageStop;
|
|
pLKIF_DataStorageInit m_pDataStorageInit;
|
|
pLKIF_DataStorageGetData m_pDataStorageGetData;
|
|
pLKIF_DataStorageGetStatus m_pDataStorageGetStatus;
|
|
pLKIF_SetDataStorage m_pSetDataStorage;
|
|
pLKIF_SETPROGRAMNO m_pSetProgramNo;
|
|
pLKIF_SetScaling m_pSetScaling;
|
|
pLKIF_GetScaling m_pGetScaling;
|
|
pLKIF_SetDisplayUnit m_pSetDisplayUnit;
|
|
pLKIF_GetDisplayUnit m_pGetDisplayUnit;
|
|
pLKIF_SetPanel m_pSetPanel;
|
|
pLKIF_SetMeasureMode m_pSetMeasureMode;
|
|
pLKIF_SetCalcMethod m_pSetCalcMethod;
|
|
pLKIF_SetMutualInterferencePrevention m_pSetMutualInterferencePrevention;
|
|
|
|
int m_StoredDataNumber;
|
|
BOOL m_bIsStorage;
|
|
void KeyenceLaserInit(void);
|
|
void Get_KeyenceLaserData(float *LaserValue1,float *LaserValue2);
|
|
BOOL StartStoreData(int _NeedStorageDataNumber,int _SampleTime);
|
|
BOOL StopStoreData();
|
|
BOOL GetStoreDataStatus();
|
|
BOOL GetStoredData(float *GetStorageData,int *GetStorageNumber);
|
|
BOOL PauseScanAndGetData(float *GetStorageData,int *GetStorageNumber);
|
|
BOOL SetProgramNO(int ProNO);
|
|
BOOL SetOutValueScaling(double _CalibVal);
|
|
BOOL SetProgram(char _MeasureMode);
|
|
BOOL GetOutValueScaling(double* _CalibratedScale);
|
|
};
|
|
|
|
#endif
|