mirror of
http://172.16.0.230/r/SIF/TowerOptoSifAndSpectral.git
synced 2025-10-19 11:49:42 +08:00
调试上传用
This commit is contained in:
62
source/CaptureThread/AbstractFSController.h
Normal file
62
source/CaptureThread/AbstractFSController.h
Normal file
@ -0,0 +1,62 @@
|
||||
#pragma once
|
||||
#include "pch.h"
|
||||
#include "ATPControl_Serial_QT.h"
|
||||
#include "OControl_USB.h"
|
||||
#include <atomic>
|
||||
#include <vector>
|
||||
|
||||
typedef struct tagFSInfo
|
||||
{
|
||||
ZZ_U8 ucDeviceModel;
|
||||
std::string strInterface;
|
||||
std::string strSN;
|
||||
long lDepth;
|
||||
float fMinFactor;
|
||||
float fMaxFactor;
|
||||
}FSInfo;
|
||||
|
||||
class CAbstractFSController :public QObject
|
||||
{
|
||||
Q_OBJECT
|
||||
public:
|
||||
CAbstractFSController(QObject* parent = nullptr);
|
||||
virtual ~CAbstractFSController();
|
||||
public:
|
||||
//call first
|
||||
virtual int SetRunParas(int iThreadID, FSInfo fsInfo);
|
||||
|
||||
//create derived class from base class
|
||||
virtual int InitializeFSControl();
|
||||
|
||||
//sync info
|
||||
virtual int GetDeviceAttr(DeviceAttribute &daAttr);
|
||||
//DataFrame GetLastDataFrame();
|
||||
|
||||
private:
|
||||
CIrisFSBase *m_pFSCtrl;
|
||||
int m_iThreadID;
|
||||
FSInfo m_fsInfo;
|
||||
//DataFrame m_dfDark,m_dfSignal;
|
||||
std::vector<DataFrame> m_vecDataFrameDark, m_vecDataFrameSignal;
|
||||
|
||||
DeviceAttribute m_daDeviceAttr;
|
||||
private:
|
||||
int PerformAutoExposure();
|
||||
int TakeDarkFrame();
|
||||
int TakeSignalFrame();
|
||||
DataFrame TakeOneFrame();
|
||||
int SaveDataFile();
|
||||
|
||||
public slots:
|
||||
virtual int StartAcquisitionSignal();
|
||||
virtual int StartAcquisitionDark();
|
||||
virtual int StopAcquisition();
|
||||
virtual int ClearBuffer();
|
||||
virtual int GetBuffer(std::vector<DataFrame> &pvecDataFrameDark, std::vector<DataFrame> &pvecDataFrameSignal);
|
||||
|
||||
|
||||
signals:
|
||||
void SignalAcqStarted();
|
||||
void SignalAcqFinished_Signal(int iThreadID, int iFlagStatus);
|
||||
void SignalAcqFinished_Dark (int iThreadID, int iFlagStatus);
|
||||
};
|
Reference in New Issue
Block a user