20 #ifndef DEBUGSESSION_H_M8YHEGV6
21 #define DEBUGSESSION_H_M8YHEGV6
30 #include <condition_variable>
42 _breakpointsEnabled =
true;
43 _markedForDeletion =
false;
47 void stepping(
bool enable) {
51 void checkBreakpoints(
const std::list<Breakpoint> qualifiedBreakpoints);
61 Data skipToBreakPoint(
const Data& data);
62 Data addBreakPoint(
const Data& data);
63 Data removeBreakPoint(
const Data& data);
64 Data enableBreakPoint(
const Data& data);
65 Data disableBreakPoint(
const Data& data);
66 Data enableAllBreakPoints();
67 Data disableAllBreakPoints();
70 void setDebugger(
Debugger* debugger) {
78 void markForDeletion(
bool mark) {
79 _markedForDeletion = mark;
83 virtual std::shared_ptr<LoggerImpl> create();
85 virtual void log(LogSeverity severity,
const Event& event);
86 virtual void log(LogSeverity severity,
const Data& data);
87 virtual void log(LogSeverity severity,
const std::string& message);
90 void breakExecution(
Data replyData);
94 bool _breakpointsEnabled;
96 std::condition_variable_any _resumeCond;
97 std::recursive_mutex _runMutex;
98 std::recursive_mutex _mutex;
100 std::thread* _interpreterThread = NULL;
102 static void run(
void* instance);
104 bool _markedForDeletion;
107 std::set<Breakpoint> _breakPoints;
Definition: Breakpoint.cpp:26
Definition: LoggingImpl.h:36
Central class to interpret and process SCXML documents.
Definition: Interpreter.h:79
Definition: Breakpoint.h:36
Definition: Debugger.h:32
Definition: DebugSession.h:36