#pragma once #include "IWheelCtrl.h" #include "qstring.h" #include "qmysplashscreen.h" class CRaster; class CWheelNet; class IMainCallback; class CamConfig; class ComConfig; class DataBaseSql; class WheelCtrl :public IWheelCtrl { Q_OBJECT public: WheelCtrl(IMainCallback *pCallBack, QString strPath,QMySplashScreen* pScreen = NULL); ~WheelCtrl(); virtual QString appRoot() const; virtual ModelManager *getModelMgr() const; virtual QStringList getAllModelName(); virtual CChannelInfo *getChannelInfo() const; virtual DetectState *getDetectState() const; virtual TimeMgrCtrl *getTimeMgr() const; virtual QMap* getAllTimePtr() const; virtual CamConfig *getCamConfig() const; virtual ComConfig *getComConfig() const; virtual double getThickness() const; virtual QString getThicknessStr() const; virtual void appendThicknessValue(double nValue); virtual bool onShowRaster(); virtual void addLog(QString msg, int nType); virtual void saveResult(Result2Ui *); //virtual QSqliteGeneral *getDB() const; virtual DataBaseSql *getDB() const; //ctrl virtual bool onStart(); virtual bool onFinish(); virtual bool onClear(); //model virtual IWheelModel *getModel(QString); virtual QMap* getAllModelMapPtr(); //info virtual QString getUserName() const; virtual int getUserLevel() const; virtual void setUser(QString strName, int nlevel); virtual QString getCurrentBan() const; CWheelNet *getNet() { return m_pNet; } CRaster *getRaster() { return m_pRaster; } virtual bool sendModelLib(); Q_SLOT void handleResult(Result2Ui *); void loadLibRasterSDG20(QString strPath); void ShowInitMsg(QMySplashScreen* p, QString str); signals: void operate(Result2Ui *m_Res); private: CChannelInfo *m_pChannel; ModelManager *m_pModelMgr; DetectState *m_pState; CRaster *m_pRaster; QString m_strPath; //QSqliteGeneral *m_db; DataBaseSql *m_db; TimeMgrCtrl *m_pTimeMgr; CWheelNet *m_pNet; IMainCallback *m_pCallBack; CamConfig *m_pCamConfig; ComConfig *m_pComConfig; class QThread *saveResultThread; class IRasterSDG20* m_pRasterSDG20; QString m_currentUserName; int m_level{ 0 }; //QSaveResultObj m_saveObj; };