14 #ifndef BERRYDEBUGUTIL_H_
15 #define BERRYDEBUGUTIL_H_
28 class DebugBreakpointManager;
29 struct IDebugObjectListener;
30 template <
class T>
class SmartPointer;
49 static bool IsTraced(
const QString& className);
55 static QList<unsigned int>
GetSmartPointerIDs(
const Object* objectPointer,
const QList<unsigned int>& excludeList = QList<unsigned int>());
80 static const QString DEBUG_UTIL_XML;
82 static const QString DEBUGUTIL_TAG;
83 static const QString TRACEOBJECT_TAG;
84 static const QString TRACECLASS_TAG;
86 static const QString ID_ATTR;
87 static const QString NAME_ATTR;
89 static bool GetPersistencePath(QDir& path);
91 static QHash<quint32, QList<unsigned int> > m_TraceIdToSmartPointerMap;
92 typedef QHash<quint32, const Object* > TraceIdToObjectType;
93 static TraceIdToObjectType m_TraceIdToObjectMap;
94 static QSet<unsigned int> m_TracedObjects;
95 static QSet<QString> m_TracedClasses;
static void UnregisterSmartPointer(unsigned int smartPointerId, const Object *objectPointer)
static void SaveState(const QDir &path)
static void TraceClass(const QString &className)
static QList< const Object * > GetRegisteredObjects()
static unsigned int & GetSmartPointerCounter()
static void RestoreState(const QDir &path)
static bool PrintObjectSummary(bool details=false)
static void RegisterObject(const Object *objectPointer)
static void ResetObjectSummary()
static bool IsTraced(const QString &className)
static bool IsTraced(const Object *object)
static bool PrintObjectSummary(const QString &className, bool details=false)
static void StopTracing(const QString &className)
static void RemoveObjectListener(IDebugObjectListener *listener)
static void TraceObject(unsigned int traceId)
static void StopTracing(const Object *obj)
static void RegisterSmartPointer(unsigned int smartPointerId, const Object *objectPointer, bool recordStack=false)
static const Object * GetObject(unsigned int traceId)
static void StopTracing(unsigned int traceId)
static void UnregisterObject(const Object *objectPointer)
static QSet< unsigned int > GetTracedObjects()
static DebugBreakpointManager * GetBreakpointManager()
static QList< unsigned int > GetSmartPointerIDs(const Object *objectPointer, const QList< unsigned int > &excludeList=QList< unsigned int >())
static void TraceObject(const Object *)
static bool IsTraced(unsigned int traceId)
static void AddObjectListener(IDebugObjectListener *listener)
static void PrintSmartPointerIDs(const Object *objectPointer, const QList< unsigned int > &excludeList=QList< unsigned int >())
Light weight base class for most BlueBerry classes.
#define org_blueberry_core_runtime_EXPORT