CMS 3D CMS Logo

IgQtAppDebug.h

Go to the documentation of this file.
00001 #ifndef IGUANA_STUDIO_IG_QT_APP_DEBUG_H
00002 # define IGUANA_STUDIO_IG_QT_APP_DEBUG_H
00003 
00004 //<<<<<< INCLUDES                                                       >>>>>>
00005 
00006 # include "Iguana/Studio/interface/config.h"
00007 # include <qobject.h>
00008 # include <qdialog.h>
00009 
00010 //<<<<<< PUBLIC DEFINES                                                 >>>>>>
00011 //<<<<<< PUBLIC CONSTANTS                                               >>>>>>
00012 //<<<<<< PUBLIC TYPES                                                   >>>>>>
00013 
00014 class QListView;
00015 class QListViewItem;
00016 class QTimer;
00017 class IgState;
00018 
00019 //<<<<<< PUBLIC VARIABLES                                               >>>>>>
00020 //<<<<<< PUBLIC FUNCTIONS                                               >>>>>>
00021 //<<<<<< CLASS DECLARATIONS                                             >>>>>>
00022 
00023 class IGUANA_STUDIO_API IgQtAppDebugInfo : public QDialog
00024 {
00025     Q_OBJECT
00026 public:
00027     IgQtAppDebugInfo (QWidget *parent = 0, bool autoRefresh = true);
00028     ~IgQtAppDebugInfo (void);
00029 
00030 public slots:
00031     void                info (void);
00032     void                exportList (void);
00033     virtual void        update (void) = 0;
00034 
00035 protected:
00036     QListView *         list (void);
00037     void                hideEvent (QHideEvent*);
00038 
00039 private:
00040     void                start (void);
00041 
00042     bool                m_autoRefresh;
00043     QListView           *m_data;
00044     QTimer              *m_timer;
00045 
00046     // undefined semantics
00047     IgQtAppDebugInfo (const IgQtAppDebugInfo &);
00048     IgQtAppDebugInfo &operator= (const IgQtAppDebugInfo &);
00049 };
00050 
00051 class IGUANA_STUDIO_API IgQtAppDebugResourceInfo : public IgQtAppDebugInfo
00052 {
00053 public:
00054     IgQtAppDebugResourceInfo (QWidget *parent);
00055 
00056 protected:
00057     virtual void        update (void);
00058 };
00059 
00060 class IGUANA_STUDIO_API IgQtAppDebugLibrariesInfo : public IgQtAppDebugInfo
00061 {
00062 public:
00063     IgQtAppDebugLibrariesInfo (QWidget *parent);
00064 
00065 protected:
00066     virtual void        update (void);
00067 };
00068 
00069 class IGUANA_STUDIO_API IgQtAppDebugPluginsInfo : public IgQtAppDebugInfo
00070 {
00071 public:
00072     IgQtAppDebugPluginsInfo (IgState *state, QWidget *parent);
00073 
00074 protected:
00075     virtual void        update (void);
00076 
00077 private:
00078     IgState             *m_state;
00079 };
00080 
00081 class IGUANA_STUDIO_API IgQtAppDumpStateInfo : public IgQtAppDebugInfo
00082 {
00083 public:
00084     IgQtAppDumpStateInfo (IgState *state, QWidget *parent);
00085 
00086 protected:
00087     virtual void        update (void);
00088     virtual void        populate (IgState* state, QListViewItem *item);
00089     
00090 private:
00091     IgState             *m_state;
00092 };
00093 
00094 class IGUANA_STUDIO_API IgQtAppDebug : public QObject
00095 {
00096     Q_OBJECT
00097 public:
00098     IgQtAppDebug (IgState *state, QWidget *parent = 0);
00099     ~IgQtAppDebug (void);
00100 
00101 public slots:
00102     void                resources (void);
00103     void                libraries (void);
00104     void                plugins (void);
00105     void                debugme (void);
00106     void                dumpState (void);
00107     void                rundebug (void);
00108     void                showProfiler (void);
00109 
00110 private:
00111     static bool         m_profiler;
00112 
00113     IgState             *m_state;
00114     QWidget             *m_parent;
00115     IgQtAppDebugInfo    *m_info [4];
00116 
00117     // undefined semantics
00118     IgQtAppDebug (const IgQtAppDebug &);
00119     IgQtAppDebug &operator= (const IgQtAppDebug &);
00120 };
00121 
00122 //<<<<<< INLINE PUBLIC FUNCTIONS                                        >>>>>>
00123 //<<<<<< INLINE MEMBER FUNCTIONS                                        >>>>>>
00124 
00125 #endif // IGUANA_STUDIO_IG_QT_APP_DEBUG_H
00126 
00127 
00128 
00129 
00130 
00131 
00132 

Generated on Tue Jun 9 17:38:48 2009 for CMSSW by  doxygen 1.5.4