18 #ifndef BERRYDEBUGBREAKPOINTMANAGER_H_
19 #define BERRYDEBUGBREAKPOINTMANAGER_H_
21 #include <Poco/HashMap.h>
36 void AddSmartpointerBreakpoint(
int smartPointerId,
const Object* obj =
nullptr);
37 void AddObjectBreakpoint(
unsigned long objectTraceId);
39 void RemoveSmartpointerBreakpoint(
int smartPointerId);
40 void RemoveObjectBreakpoint(
unsigned long objectTraceId);
42 const std::set<unsigned long>& GetObjectBreakpoints()
const;
43 const Poco::HashMap<int, const Object*>& GetSmartPointerBreakpoints()
const;
45 bool BreakAtObject(
unsigned long traceId)
const;
46 bool BreakAtSmartpointer(
int spId)
const;
48 void SaveState(
const QString& path)
const;
49 void RestoreState(
const QString& path);
58 static const std::string BREAKPOINTS_TAG;
59 static const std::string OBJECT_TAG;
60 static const std::string SMARTPOINTER_TAG;
62 static const std::string ID_ATTR;
63 static const std::string CLASSNAME_ATTR;
64 static const std::string OBJECTID_ATTR;
65 static const std::string ENABLED_ATTR;
67 std::set<unsigned long> m_ObjectBreakpoints;
68 Poco::HashMap<int, const Object*> m_SmartPointerBreakpoints;
Light weight base class for most BlueBerry classes.
#define org_blueberry_core_runtime_EXPORT
static const std::string BREAKPOINTS_XML