#pragma once
#include "ccam.h"
#include <pylon/PylonIncludes.h>
#include <pylon/usb/BaslerUsbInstantCamera.h>
#include "export_cam_driver_impl.h"
typedef Pylon::CBaslerUsbInstantCamera Camera_t;
using namespace Basler_UsbCameraParams;
using namespace Pylon;
class CAM_DRIVER_IMPL_EXPORT CCam_Basler : public CCam {
public:
    CCam_Basler(const QString& name, int32_t id);
    int32_t init_channel() override;
    int32_t exit_channel() override;
    friend class CCamDriver_Basler;
    bool Reconnect();
private:
    Camera_t m_camera;
    IPylonDevice* m_pDevice;
};

