72 lines
1.8 KiB
C++
Raw Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

#ifndef DIALOGALGOARG_H
#define DIALOGALGOARG_H
#include <QDialog>
#include "ConfigManager.h"
namespace Ui {
class DialogAlgoarg;
}
class HoleDetectionPresenter;
class HandEyeCalibWidget;
class NetworkConfigWidget;
class DialogAlgoarg : public QDialog
{
Q_OBJECT
public:
explicit DialogAlgoarg(ConfigManager* configManager, HoleDetectionPresenter* presenter, QWidget *parent = nullptr);
~DialogAlgoarg();
private slots:
void on_btn_camer_ok_clicked();
void on_btn_camer_cancel_clicked();
// 手眼标定共享控件信号槽
void onCalibMatrixLoaded(int cameraIndex, const double* matrix);
void onSaveCalibRequested(int cameraIndex, const double* matrix);
private:
void LoadConfigToUI();
bool SaveConfigFromUI();
// 加载各个参数组到 UI
void LoadDetectionParamToUI(const VrHoleDetectionParam& param);
void LoadFilterParamToUI(const VrHoleFilterParam& param);
void LoadSortModeToUI(int sortMode);
// 从 UI 保存各个参数组
bool SaveDetectionParamFromUI(VrHoleDetectionParam& param);
bool SaveFilterParamFromUI(VrHoleFilterParam& param);
bool SaveSortModeFromUI(int& sortMode);
// 排序模式
void InitSortModeComboBox();
// 姿态输出顺序HoleDetection 特有)
void InitPoseOutputOrderComboBox();
// 手眼标定(使用共享控件)
void InitHandEyeCalibTab();
// 网络配置(使用共享控件)
void InitNetworkConfigTab();
void LoadNetworkConfigToUI();
private:
Ui::DialogAlgoarg *ui;
ConfigManager* m_pConfigManager;
HoleDetectionPresenter* m_presenter;
QString m_configFilePath;
// 手眼标定共享控件
HandEyeCalibWidget* m_handEyeCalibWidget;
// 网络配置共享控件
NetworkConfigWidget* m_networkConfigWidget;
};
#endif // DIALOGALGOARG_H