You cannot select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

39 lines
954 B
C++

#ifndef ROI_H
#define ROI_H
#include "lpbengine.h"
class CDetectorROI : public IDetectorROI
{
public:
CDetectorROI();
virtual ~CDetectorROI();
virtual IDetectorRecord* AddRecord(const PLP_DETECTOR_ROI_RECORD pRecord, bool bRet = true);
virtual bool DeleteRecord(int nRecordID);
virtual IDetectorRecord* GetRecord(int nRecordID);
virtual int EnumRecord(IDetectorRecord** lppRecord, int nCount);
virtual bool SetROIInfo(const PLP_DETECTOR_ROI pROI);
virtual PLP_DETECTOR_ROI GetROIInfo();
void SetID(int nID);
virtual int GetID() const;
virtual void Release();
bool Initialize(IDetectorTask* pTask);
bool SerializeToJson(QJsonDocument* pJsonDocument, QJsonArray* pROIArray);
bool SerializeFromJson(QJsonObject* pJsonObject);
virtual void CleanUp();
bool Copy(IDetectorROI* pSrcROI);
private:
int m_nID;
int m_nBaseID;
LP_DETECTOR_ROI m_tROI;
QVector<IDetectorRecord*> m_vecRecord;
IDetectorTask* m_pTask;
};
#endif // ROI_H