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.

61 lines
1.2 KiB
C++

#ifndef DSGPARAMDLG_H
#define DSGPARAMDLG_H
#include <QtCore>
#include <QtWidgets/QDialog>
#include "QComboBox"
#include "QPushButton"
#include "lpbengine.h"
#include "lpdesigner.h"
#include "DsgRoiDlg.h"
enum ParamDialogType
{
PARAM_IN = 0,
PARAM_OUT
};
namespace Ui {
class ParamDlg;
}
class CDsgParamDlg : public QDialog
{
Q_OBJECT
public:
CDsgParamDlg(QWidget *parent = 0);
~CDsgParamDlg();
bool Initialize(IDetectorEngine* lpDE, IDetectorTask* lpTask, IDetectorAlgorithm* lpAlgo, ParamDialogType type);
bool InitGraphView();
void CleanUp();
PLP_ALGORITHM_PARAM ShowParamDlg(PLP_ALGORITHM_PARAM pParam);
int GetTypeIndex(AlgoParamType type);
void InitValueCtrl(AlgoParamType type, PLP_ALGORITHM_PARAM pParam);
QVariant GetCtrlValue(AlgoParamType type);
signals:
public slots :
bool OnOk();
bool OnCancel();
bool OnChangeParamType();
bool OnChangeAlgo();
bool OnShowRoiDlg();
private:
Ui::ParamDlg *ui{ nullptr };
QComboBox m_valueCombox;
CDsgRoiDlg m_tRoiDlg;
IDetectorEngine* m_pDE{ nullptr };
IDetectorTask* m_pTask{ nullptr };
IDetectorAlgorithm* m_pAlgo{ nullptr };
ParamDialogType m_type;
LP_DETECTOR_ROI_DATA m_tRoiData;
AlgoParamType _ParamType{ LP_INT };
};
#endif // DSGPARAMDLG_H