Files
IRIS_FODIS/Source/Capture/AbsFSController.h
2023-03-22 10:08:55 +08:00

46 lines
1.0 KiB
C++

#pragma once
#include "pch.h"
#include "ATPControl_Serial_QT.h"
#include "OControl_USB.h"
#include <atomic>
#include <vector>
#include "IS11_Ctrl_Qt.h"
using namespace ZZ_MISCDEF::ZZ_RUNPARAMS;
using namespace ZZ_MISCDEF::MISC_DETECTOR;
using namespace ZZ_MISCDEF::IRIS;
class CAbsFSController :public QObject
{
Q_OBJECT
public:
CAbsFSController(QObject* parent = nullptr);
virtual ~CAbsFSController();
public:
//call first
virtual void SetContext(OneFSContext struFSParam);
virtual int Initialize();
virtual int Initialize_Self();
int SetExposureTime(int iMilliSec);
int GetExposureTime(int& iMilliSec);
int SingleShot(DataFrame &struSingleFrame);
int PerformAutoExposure();
int CheckAndAdjust_Fast();
void GetDeviceAttr(DeviceAttribute &struDeviceAttr);
public:
std::atomic_int m_iFlagInit;
private:
DeviceAttribute m_struDeviceAttr;
CIrisFSBase* m_pFSCtrl;
OneFSContext m_struFSParam;
DataFrame m_struSingleFrame;
QString m_qstrWaveLengthPath;
private:
//int CreateWavelengthFile();
public slots:
signals:
};