00001
00002
00003
00004
00005 #ifndef _H_GuiSvc_
00006 #define _H_GuiSvc_
00007
00008
00009 #include "GaudiKernel/Service.h"
00010 #include "GaudiKernel/IIncidentListener.h"
00011 #include "GuiSvc/IGuiSvc.h"
00012
00013
00014 namespace gui { class GuiMgr; }
00015 template <class TYPE> class SvcFactory;
00016
00019 class GuiSvc : public Service, virtual public IIncidentListener,
00020 virtual public IGuiSvc
00021 {
00022
00023
00024 public:
00026 gui::GuiMgr* guiMgr() {return m_guiMgr;}
00027
00028
00029 void quit();
00030 void finishSetup(){};
00031
00032
00033
00034
00036 virtual StatusCode initialize ();
00037
00039 virtual StatusCode finalize ();
00040
00042
00043
00045 virtual StatusCode queryInterface( const IID& riid, void** ppvUnknown );
00046
00047
00048 protected:
00049
00051 GuiSvc ( const std::string& name, ISvcLocator* al );
00052
00053
00054 private:
00055
00056 friend class SvcFactory<GuiSvc>;
00057 void beginEvent();
00058 void endEvent();
00059
00060 void queryEvtMax();
00061 void queryPause();
00062
00063
00064 gui::GuiMgr* m_guiMgr;
00065 float m_size;
00066 int m_pause_interval;
00067 bool m_paused;
00068
00069 };
00070
00071
00072 #endif // _H_GuiSvc