#pragma once
|
#include "CHCameraControls/CameraControl.h"
|
|
class SapAcquisition;
|
class SapBuffer;
|
class SapTransfer;
|
class SapFlatField;
|
class SapXferPair;
|
class SapXferCallbackInfo;
|
class SapLocation;
|
// class SapProCallbackInfo;
|
// class SapMyProcessing;
|
|
class AFX_EXT_CLASS CCameraControl_Sapera : public CCameraControl
|
{
|
public:
|
CCameraControl_Sapera(int nIndex=-1);
|
virtual ~CCameraControl_Sapera(void);
|
|
// camera control
|
virtual int Connect(const CCameraControlInfo& controlInfo);
|
virtual int Grab();
|
virtual int Snap();
|
virtual int Snap(int nCount);
|
virtual int Snap(int nCount, UINT nWaitTime);
|
virtual int Freeze();
|
virtual int Abort();
|
virtual int Disconnect();
|
|
// setting info
|
virtual BOOL SetExposureTime(double dValue);
|
virtual BOOL GetExposureTime(double& dValue);
|
virtual BOOL SetExposureAuto(BOOL bAuto);
|
virtual BOOL SetFrameRate(double dRate) { return TRUE; }
|
virtual BOOL GetGrabbing();
|
virtual int GetFrameIndex();
|
|
// setting mode
|
virtual void SetTriggerMode(int nMode, int nCount=1);
|
virtual void SetTriggerSource(int nSource);
|
virtual void XferCallback(SapXferCallbackInfo *pInfo);
|
|
protected:
|
static void XferCallbackFunc(SapXferCallbackInfo *pInfo);
|
virtual BOOL AllocateObjects(const SapLocation& loc, CString strCamfile, int nFrameCount);
|
virtual BOOL CreateObjects();
|
virtual void DestoryObjects();
|
virtual void DeleteObjects();
|
|
SapAcquisition *m_pAcq;
|
SapBuffer *m_pBuffers;
|
SapTransfer *m_pXfer;
|
|
int m_nSnapFrameCount;
|
|
};
|