#pragma once #include "ui_CToolDialog.h" #include "../../Common/DllToolCommon.h" #include "../../ShowUnit/HWndUnit.h" #include #include #include #include class ToolDialogImpl : public DllToolDialog { Q_OBJECT public: ToolDialogImpl(QWidget *parent = Q_NULLPTR); ~ToolDialogImpl(); private: Ui::CToolDialog ui; public: virtual VPEnum::RETURN_VALUE Execute(); virtual bool Serialized(QDataStream& ar, bool bIsOut); virtual void Running(bool bRun); public: HImage m_Image; IBaseCamera* m_pCamera; // Event ToolEvent m_PickEvent; int m_nFrameNum; signals: void sigUpdateUI(); void sigUpdateImage(); private slots: void on_UpdateUI(); void OnUpdateImage(); void on_btnOK_clicked(); void on_btnCancel_clicked(); void on_btnExecute_clicked(); void on_btnConfig_clicked(); void on_btnSoftwareTrigger_clicked(); private: //内部窗口管理 HWndUnit* hwndUnit; private: bool m_bIsBindCallback; QString m_strUserID; QMutex mutex; QWaitCondition activator; static void CameraCallback(IBaseCamCommon::CamImgData* camdata, int frameCount, QString serial, long long userParam);//相机回调函数 static void CameraLogCallback(QString serial, QString Massage, long long userParam);//CameraLog回调函数 };