新增CCS-PRIMA使能参数设置。
This commit is contained in:
@@ -12,6 +12,8 @@
|
||||
class cAcqEasy
|
||||
{
|
||||
private:
|
||||
#ifdef _RELEASE_FULL_VERSION
|
||||
|
||||
HANDLE hThread;
|
||||
static DWORD WINAPI ProcessThread (LPVOID lpArg);
|
||||
DWORD ProcessThread(void);
|
||||
@@ -41,10 +43,12 @@ private:
|
||||
|
||||
//try to determine and set the sensor mode and digital output
|
||||
bool _SetSensorModeAndDigitalOutput(sAcqEasyParam *pAcqEasyParam);
|
||||
#endif //_RELEASE_FULL_VERSION
|
||||
|
||||
public:
|
||||
cAcqEasy(MCHR_ID SensorID);
|
||||
~cAcqEasy();
|
||||
#ifdef _RELEASE_FULL_VERSION
|
||||
|
||||
//start spectrum acquisition
|
||||
bool StartSpectrumAcquisition(unsigned short **ppSpectrum, unsigned short *pFirstUsablePixel, unsigned short *pBufferSize);
|
||||
@@ -81,6 +85,8 @@ public:
|
||||
bool GetTransmittedData_DuoSawliDistance(PFLOAT pArrayDistance, PFLOAT pArrayQuality, PFLOAT pArrayIntensity, PFLOAT pArrayCounter, PFLOAT pArrayStatus, int* pDataCount);
|
||||
bool GetTransmittedData_DuoSawliThickness(PFLOAT pArrayThickness1, PFLOAT pArrayThickness2, PFLOAT pArrayThickness3, PFLOAT pArrayQuality1, PFLOAT pArrayQuality2, PFLOAT pArrayQuality3, PFLOAT pArrayIntensity, PFLOAT pArrayNbThickness, PFLOAT pArrayCounter, PFLOAT pArrayStatus, int* pDataCount);
|
||||
short GetStatusAcquisition(char *pMessage);
|
||||
#endif //_RELEASE_FULL_VERSION
|
||||
|
||||
};
|
||||
|
||||
#endif //AFX_ACQUISITION_EASY_H_INCLUDED_
|
||||
@@ -6,6 +6,8 @@
|
||||
//--------------------------------------------------------------------
|
||||
cAcqEasy::cAcqEasy(MCHR_ID SensorID)
|
||||
{
|
||||
#ifdef _RELEASE_FULL_VERSION
|
||||
|
||||
DWORD dwThreadId = 0;
|
||||
int nIndex = 0, idx = 0, jdx = 0;
|
||||
UNREFERENCED_PARAMETER(jdx);
|
||||
@@ -52,10 +54,16 @@ cAcqEasy::cAcqEasy(MCHR_ID SensorID)
|
||||
ZeroMemory(&m_acqParam, sizeof(MCHR_tyAcqParam));
|
||||
//open process thread
|
||||
hThread = ::CreateThread(0, 0, ProcessThread, LPVOID(this), 0, &dwThreadId);
|
||||
#else
|
||||
UNREFERENCED_PARAMETER(SensorID);
|
||||
#endif //_RELEASE_FULL_VERSION
|
||||
|
||||
}
|
||||
//--------------------------------------------------------------------
|
||||
cAcqEasy::~cAcqEasy()
|
||||
{
|
||||
#ifdef _RELEASE_FULL_VERSION
|
||||
|
||||
int nIndex = 0;
|
||||
|
||||
//close process thread
|
||||
@@ -88,7 +96,10 @@ cAcqEasy::~cAcqEasy()
|
||||
}
|
||||
}
|
||||
_ReleaseAcqBuffer(m_acqEasyParam.NumberOfBuffers);
|
||||
#endif //_RELEASE_FULL_VERSION
|
||||
|
||||
}
|
||||
#ifdef _RELEASE_FULL_VERSION
|
||||
//-------------------------------------------------------------------------------------------------
|
||||
void cAcqEasy::_ReleaseAcqBuffer(int NumberOfBuffers)
|
||||
{
|
||||
@@ -2653,3 +2664,4 @@ bool cAcqEasy::GetSpectrumAcquisition(unsigned short *pSpectrum, unsigned short
|
||||
return(ret);
|
||||
}
|
||||
//--------------------------------------------------------------------
|
||||
#endif //_RELEASE_FULL_VERSION
|
||||
|
||||
@@ -4,36 +4,26 @@
|
||||
|
||||
CSTIL_CCS_PRIMA_Laser::CSTIL_CCS_PRIMA_Laser()
|
||||
{
|
||||
#ifdef _RELEASE_FULL_VERSION
|
||||
ResetParam();
|
||||
#endif //_RELEASE_FULL_VERSION
|
||||
}
|
||||
|
||||
CSTIL_CCS_PRIMA_Laser::~CSTIL_CCS_PRIMA_Laser(void)
|
||||
{
|
||||
#ifdef _RELEASE_FULL_VERSION
|
||||
if (m_SensorId != 0)
|
||||
{
|
||||
CloseCom ();
|
||||
}
|
||||
}
|
||||
//================================================================
|
||||
void CSTIL_CCS_PRIMA_Laser::ResetParam()
|
||||
{
|
||||
m_SensorId = 0;
|
||||
m_ErrorCode = SPARKSHI_ERROR_NONE;
|
||||
m_pAcqEasy = NULL;
|
||||
m_ScanRate = MCHR_SCAN_RATE_CCS_PRIMA_1000HZ;
|
||||
m_NumberOfPointTRE = 1;
|
||||
m_evAcquisition = NULL;
|
||||
m_pThickness = NULL;
|
||||
m_pDistance1 = NULL;
|
||||
m_pIntensity1 = NULL;
|
||||
m_pDistance2 = NULL;
|
||||
m_pIntensity2 = NULL;
|
||||
#endif //_RELEASE_FULL_VERSION
|
||||
}
|
||||
|
||||
//================================================================
|
||||
BOOL CSTIL_CCS_PRIMA_Laser::Init(int _Mode)
|
||||
{
|
||||
BOOL bStatus(FALSE);
|
||||
#ifdef _RELEASE_FULL_VERSION
|
||||
ResetParam();
|
||||
switch(_Mode)
|
||||
{
|
||||
@@ -53,17 +43,22 @@ BOOL CSTIL_CCS_PRIMA_Laser::Init(int _Mode)
|
||||
break;
|
||||
}
|
||||
}
|
||||
#else
|
||||
UNREFERENCED_PARAMETER(_Mode);
|
||||
#endif //_RELEASE_FULL_VERSION
|
||||
return bStatus;
|
||||
}
|
||||
//================================================================
|
||||
BOOL CSTIL_CCS_PRIMA_Laser::Exit()
|
||||
{
|
||||
BOOL bStatus(FALSE);
|
||||
#ifdef _RELEASE_FULL_VERSION
|
||||
bStatus=ReleaseAcquisition();
|
||||
if (m_SensorId != 0)
|
||||
{
|
||||
CloseCom ();
|
||||
}
|
||||
#endif //_RELEASE_FULL_VERSION
|
||||
return bStatus;
|
||||
}
|
||||
//================================================================
|
||||
@@ -74,10 +69,12 @@ BOOL CSTIL_CCS_PRIMA_Laser::SetMeasureMode(int _MeasureMode)
|
||||
{
|
||||
case 0:
|
||||
{
|
||||
#ifdef _RELEASE_FULL_VERSION
|
||||
double refractiveIndex = 1.5120;
|
||||
SetRefractiveIndex (refractiveIndex);
|
||||
int numberOfPointTRE(1);
|
||||
InitAcquisition (eMCHR_GetThicknessMeasurement, MCHR_TYPE_TRE, numberOfPointTRE);
|
||||
#endif //_RELEASE_FULL_VERSION
|
||||
break;
|
||||
}
|
||||
default:
|
||||
@@ -91,21 +88,50 @@ BOOL CSTIL_CCS_PRIMA_Laser::SetMeasureMode(int _MeasureMode)
|
||||
BOOL CSTIL_CCS_PRIMA_Laser::GetDistance(double &_dDis1, double &_dDis2)
|
||||
{
|
||||
BOOL bStatus(FALSE);
|
||||
#ifdef _RELEASE_FULL_VERSION
|
||||
double dbThickness(0.0),dblDistance1(0.0),dblDistance2(0.0),dblIntensity1(0.0),dblIntensity2(0.0);
|
||||
bool bSoftTrigger(true);
|
||||
bStatus=GetThicknessValue(dbThickness,dblDistance1,dblDistance2,dblIntensity1,dblIntensity2,bSoftTrigger);
|
||||
_dDis1=dblDistance1;
|
||||
_dDis2=dblDistance2;
|
||||
#else
|
||||
UNREFERENCED_PARAMETER(_dDis1);
|
||||
UNREFERENCED_PARAMETER(_dDis2);
|
||||
#endif //_RELEASE_FULL_VERSION
|
||||
return bStatus;
|
||||
}
|
||||
//================================================================
|
||||
BOOL CSTIL_CCS_PRIMA_Laser::GetThicknessAllData(double &dbThickness, double &dblDistance1, double &dblDistance2, double &dblIntensity1, double &dblIntensity2)
|
||||
{
|
||||
BOOL bStatus(FALSE);
|
||||
#ifdef _RELEASE_FULL_VERSION
|
||||
bool bSoftTrigger(true);
|
||||
bStatus=GetThicknessValue(dbThickness,dblDistance1,dblDistance2,dblIntensity1,dblIntensity2,bSoftTrigger);
|
||||
#else
|
||||
UNREFERENCED_PARAMETER(dbThickness);
|
||||
UNREFERENCED_PARAMETER(dblDistance1);
|
||||
UNREFERENCED_PARAMETER(dblDistance2);
|
||||
UNREFERENCED_PARAMETER(dblIntensity1);
|
||||
UNREFERENCED_PARAMETER(dblIntensity2);
|
||||
#endif //_RELEASE_FULL_VERSION
|
||||
return bStatus;
|
||||
}
|
||||
#ifdef _RELEASE_FULL_VERSION
|
||||
//================================================================
|
||||
void CSTIL_CCS_PRIMA_Laser::ResetParam()
|
||||
{
|
||||
m_SensorId = 0;
|
||||
m_ErrorCode = SPARKSHI_ERROR_NONE;
|
||||
m_pAcqEasy = NULL;
|
||||
m_ScanRate = MCHR_SCAN_RATE_CCS_PRIMA_1000HZ;
|
||||
m_NumberOfPointTRE = 1;
|
||||
m_evAcquisition = NULL;
|
||||
m_pThickness = NULL;
|
||||
m_pDistance1 = NULL;
|
||||
m_pIntensity1 = NULL;
|
||||
m_pDistance2 = NULL;
|
||||
m_pIntensity2 = NULL;
|
||||
}
|
||||
BOOL CSTIL_CCS_PRIMA_Laser::InitChrLib()
|
||||
{
|
||||
char szVersion[MAX_CHAR];
|
||||
@@ -596,3 +622,4 @@ BOOL CSTIL_CCS_PRIMA_Laser::GetRefractiveIndex (double &indice)
|
||||
}
|
||||
|
||||
}
|
||||
#endif //_RELEASE_FULL_VERSION
|
||||
|
||||
@@ -27,6 +27,7 @@ public:
|
||||
BOOL GetDistance(double &dblDistance1, double &dblDistance2);
|
||||
BOOL GetThicknessAllData(double &dbThickness, double &dblDistance1, double &dblDistance2, double &dblIntensity1, double &dblIntensity2);
|
||||
private :
|
||||
#ifdef _RELEASE_FULL_VERSION
|
||||
void ResetParam();
|
||||
BOOL InitChrLib();
|
||||
|
||||
@@ -74,6 +75,8 @@ private :
|
||||
float *m_pDistance2;
|
||||
float *m_pIntensity1;
|
||||
float *m_pIntensity2;
|
||||
#endif //_RELEASE_FULL_VERSION
|
||||
|
||||
};
|
||||
|
||||
#endif
|
||||
|
||||
Reference in New Issue
Block a user