toolinterface.h 1010 B

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778
  1. #pragma once
  2. #include "ui_toolinterface.h"
  3. #include <QDialog>
  4. #include "HalconCpp.h"
  5. using namespace HalconCpp;
  6. // namespace Ui {
  7. // Q_OBJECT
  8. // class ToolInterface;
  9. class ToolDialogImpl;
  10. class ToolInterface : public QDialog
  11. {
  12. Q_OBJECT
  13. public:
  14. explicit ToolInterface(QWidget *parent = 0, ToolDialogImpl* p = nullptr);
  15. virtual ~ToolInterface();
  16. virtual bool Serialized(QDataStream& ar, bool bIsOut);
  17. virtual bool setValue(HObject);
  18. virtual HObject GetResult();
  19. virtual QString ShowParameter();
  20. virtual int Execute();
  21. signals:
  22. void updateParameter(QString);
  23. void updateParameterIndex(QString);
  24. private:
  25. Ui::ToolInterface ui;
  26. public:
  27. HObject m_InImage;
  28. HObject m_OutImage;
  29. ToolDialogImpl* m_pToolDialogImpl;
  30. };
  31. typedef struct LinkCtrl
  32. {
  33. int ToolID;
  34. int nUi;
  35. bool isrun;
  36. QString ToolName;
  37. ToolInterface* p_dlg;
  38. LinkCtrl()
  39. {
  40. isrun = true;
  41. ToolID = -1;
  42. nUi = -1;
  43. ToolName.isEmpty();
  44. p_dlg = nullptr;
  45. }
  46. }LINKCTRL;