123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114 |
- #pragma once
- #include "IBaseCamParamConfig.h"
- #include "IBaseCamCommon.h"
- typedef struct CAMERASERIAL
- {
- int mSize = 0;
- QString mSerial[10];
- } CameraSerial;
- typedef struct _tagSDKInfo
- {
- QString strName; // 工具名字
- QString strSDKVersion; // SDK版本
- QFileInfo fileInfo;
- _tagSDKInfo()
- {
- }
- } SDKINFO;
- /// 相机接口类
- class IBaseCamera
- {
- public:
- IBaseCamera(void) {};
- virtual ~IBaseCamera() { };
- protected:
- /// 打开相机
- virtual bool openCamera( QString serial ) = 0;
- /// 关闭相机
- virtual bool closeCamera( ) = 0;
- /// 初始化
- virtual bool initialize( ) = 0;
- public:
- /// 加载参数
- virtual void loadCamParam() = 0;
- /// 保存参数
- virtual void saveCamParam() = 0;
- /// 设置相机工作模式
- virtual bool setWorkMode(IBaseCamCommon::CamWorkMode, bool Running = false) = 0;
- /// 相机工作模式
- virtual IBaseCamCommon::CamWorkMode workMode( ) = 0;
-
- /// 相机开始工作
- virtual bool startWork() = 0;
- /// 相机停止工作
- virtual bool stopWork() = 0;
- /// 相机序列号
- virtual QString serial() = 0;
- /// 重启相机
- virtual bool restartCamera() = 0;
- /// 获取一桢图像
- virtual bool captureImage( void **buf, int size ) = 0;
- /// 获取图像宽
- virtual int imageWidth( void ) = 0;
- /// 获取图像高
- virtual int imageHeight( void ) = 0;
- /// 获取图像通道数
- virtual int imageChannels( void ) = 0;
- /// 获取配置参数类
- virtual IBaseCamParamConfig* camParamConfig() = 0;
- /// 显示设置参数窗口页面
- virtual void showParamConfigWindow( int mode = 0 ) = 0;
- /// 获取相机最大分辨率
- virtual bool getMaxSize( int &w, int &h ) = 0;
- /// 设置相机分辨率
- virtual bool setResolution( int w, int h ) = 0;
- /// 获取已注册图像回调的数量
- virtual int getReceCallBackSIze() = 0;
- ///设置接收图像数据回调函数
- virtual void setReceCallBack(IBaseCamCommon::receImgCallBack callBack,long long userParam , QString userID) = 0;
- ///设置接收Log数据回调函数
- virtual void setReceLogCallBack(IBaseCamCommon::receLogCallBack callBack, long long userParam) = 0;//设置接收数据回调函数
- /// 软件触发采图
- virtual void softTriggerCap(QString userID = "main") = 0;
- };
|