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.

60 lines
1.2 KiB
C++

#ifndef DSGROIDLG_H
#define DSGROIDLG_H
#include <QtCore>
#include <QtWidgets/QDialog>
#include "lpbengine.h"
#include "RoiScene.h"
namespace Ui {
class RoiDlg;
}
class CDsgRoiDlg : public QDialog//, public IDetectorUISink
{
Q_OBJECT
public:
CDsgRoiDlg(QWidget *parent = 0);
~CDsgRoiDlg();
bool Initialize(IDetectorEngine* pDE, IDetectorAlgorithm* pAlgo, IDetectorTask* pTask);
bool InitGraphView();
LP_DETECTOR_ROI_DATA ShowRoiDlg(LP_DETECTOR_ROI_DATA roiData);
void CleanUp();
bool FillRoi(LP_DETECTOR_ROI_DATA& roiData);
virtual void ResetItem(QPoint pos, QRect size);
virtual void OnManualTrigger(){}
virtual void OnSetParam(IDetectorTask* pTask){}
virtual void showEvent(QShowEvent *evt);
signals:
void sgShowCameraImage(QImage);
public slots :
bool OnOk();
bool OnCancel();
void OnRectangle();
void OnEllipse();
void OnCircle();
void OnShowColorDlg();
void OnMove();
void OnSetItem();
void OnZoomIn();
void OnZoomOut();
void OnSelectImage();
void OnSnapCameraImage();
void OnShowCameraImage(QImage img);
void OnShowTenFlag();
private:
Ui::RoiDlg *ui;
IDetectorEngine* m_pDE{ nullptr };
IDetectorTask* m_pTask{ nullptr };
RoiScene* m_pRoiScene{ nullptr };
LP_DETECTOR_ROI_DATA m_tempRoiData;
};
#endif // DSGROIDLG_H