00001 #ifndef IGUANA_STUDIO_IG_QT_APP_DEBUG_SERVICE_H 00002 # define IGUANA_STUDIO_IG_QT_APP_DEBUG_SERVICE_H 00003 00004 //<<<<<< INCLUDES >>>>>> 00005 00006 # include "Iguana/Studio/interface/config.h" 00007 # include "Iguana/Framework/interface/IgStateElement.h" 00008 00009 //<<<<<< PUBLIC DEFINES >>>>>> 00010 //<<<<<< PUBLIC CONSTANTS >>>>>> 00011 //<<<<<< PUBLIC TYPES >>>>>> 00012 00013 class IgQtAppDebug; 00014 class QWidget; 00015 00016 //<<<<<< PUBLIC VARIABLES >>>>>> 00017 //<<<<<< PUBLIC FUNCTIONS >>>>>> 00018 //<<<<<< CLASS DECLARATIONS >>>>>> 00019 00020 class IGUANA_STUDIO_API IgQtAppDebugService : public IgStateElement 00021 { 00022 IG_DECLARE_STATE_ELEMENT (IgQtAppDebugService); 00023 public: 00024 static const int MENU_ID_DEBUG = 9000; 00025 static const int MENU_ID_DEBUG_RESOURCES = 9001; 00026 static const int MENU_ID_DEBUG_LIBRARIES = 9002; 00027 static const int MENU_ID_DEBUG_PLUGINS = 9003; 00028 static const int MENU_ID_DEBUG_DUMPSTATE = 9004; 00029 static const int MENU_ID_DEBUG_SESSION = 9005; 00030 static const int MENU_ID_DEBUG_POOLS = 9006; 00031 static const int MENU_ID_DEBUG_CRASH = 9007; 00032 static const int MENU_ID_DEBUG_DEBUGME = 9008; 00033 static const int MENU_ID_DEBUG_PROFILER_SEP = 9100; 00034 static const int MENU_ID_DEBUG_PROFILER = 9101; 00035 00036 IgQtAppDebugService (IgState *state, QWidget *mainWindow); 00037 ~IgQtAppDebugService (void); 00038 00039 // FIXME: Add menu item to show various debugging information. 00040 // Use ResourceInfo::info and TimeInfo::process_times. Show 00041 // currently loaded services. 00042 00043 private: 00044 IgState *m_state; 00045 QWidget *m_mainWindow; 00046 IgQtAppDebug *m_info; 00047 00048 // undefined semantics 00049 IgQtAppDebugService (const IgQtAppDebugService &); 00050 IgQtAppDebugService &operator= (const IgQtAppDebugService &); 00051 }; 00052 00053 //<<<<<< INLINE PUBLIC FUNCTIONS >>>>>> 00054 //<<<<<< INLINE MEMBER FUNCTIONS >>>>>> 00055 00056 #endif // IGUANA_STUDIO_IG_QT_APP_DEBUG_SERVICE_H