#pragma once #include "CHCameraControls/CameraControl.h" #include "FlyCapture2.h" using namespace FlyCapture2; class AFX_EXT_CLASS CCameraControl_FlyCapture : public CCameraControl { public: CCameraControl_FlyCapture(int nViewIndex=-1); virtual ~CCameraControl_FlyCapture(void); 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(); virtual BOOL DisconnectCheck(); virtual BOOL SetExposureTime(double dValue); virtual BOOL GetExposureTime(double& dValue); virtual BOOL SetExposureAuto(BOOL bAuto); virtual void SetTriggerMode(int nMode); virtual void CaptureCallback(FlyCapture2::Image *pImage); virtual BOOL SetFrameRate(double dRate); protected: static void CaptureCallbackFunc(FlyCapture2::Image *pImage, const void *pCallbackData); FlyCapture2::CameraBase* m_pCamera; };