Newer
Older
CasicBioRecNew / device / IrisCameraController.h
Tan Yue on 30 Jun 2022 1 KB 20220630 可以识别的1.0版本
#ifndef IRISCAMERACONTROLLER_H
#define IRISCAMERACONTROLLER_H

#include <QObject>

#include "IrisCameraCapEventHandler.h"

class IrisCameraCapEventHandler;

class IrisCameraController : public QObject
{
    Q_OBJECT
public:
    explicit IrisCameraController(QObject *parent = nullptr);
    ~IrisCameraController();

    // 初始化并打开人脸相机
    void initIrisCamera();
    void openIrisCamera();
    void closeIrisCamera();

    void startCapture();
    void stopCapture();

    void getLeftAndRightEyeFrame();

    IrisCameraCapEventHandler * leftHandler;
    IrisCameraCapEventHandler * rightHandler;

private:
    GxIAPICPP::gxdeviceinfo_vector irisCamList;

    CGXDevicePointer leftCamPtr;  ///< 左眼设备句柄
    CGXDevicePointer rightCamPtr; ///< 右眼设备句柄

    CGXStreamPointer leftStreamPtr; ///< 左眼设备流
    CGXStreamPointer rightStreamPtr; ///< 左眼设备流

    CGXFeatureControlPointer leftFeaturePtr;     ///< 左眼属性控制器
    CGXFeatureControlPointer rightFeaturePtr;     ///< 右眼属性控制器

    CGXFeatureControlPointer leftStreamFeaturePtr; ///< 左眼流层控制器对象
    CGXFeatureControlPointer rightStreamFeaturePtr; ///< 右眼流层控制器对象

    void OpenDevice();

signals:

public slots:
    void getOneFaceFrm();

};

#endif // IRISCAMERACONTROLLER_H