aboutsummaryrefslogtreecommitdiff
path: root/src/debugger/debugger.h
diff options
context:
space:
mode:
authorhachem <im@hachem.wtf>2026-08-28 15:54:34 +0200
committerhachem <im@hachem.wtf>2026-08-28 15:54:34 +0200
commitaf616a407627d87a787ae78cc36c58ac4ed3ccad (patch)
treec6b3a75e08183afc345a79889485bf2aa04dd4bd /src/debugger/debugger.h
parent9a6ce759212d293a96f82678b59148d8a49efc93 (diff)
add: process execution
Diffstat (limited to 'src/debugger/debugger.h')
-rw-r--r--src/debugger/debugger.h14
1 files changed, 14 insertions, 0 deletions
diff --git a/src/debugger/debugger.h b/src/debugger/debugger.h
index c4f3431..adbf91d 100644
--- a/src/debugger/debugger.h
+++ b/src/debugger/debugger.h
@@ -69,6 +69,11 @@ namespace Hsdbg
auto state() const -> TargetState { return m_state; }
auto stop_reason() const -> StopReason { return m_stop_reason; }
+
+ // bumped on every stop, so the ui can tell a new one from the one it
+ // already followed
+ auto stop_count() const -> uint64_t { return m_stop_count; }
+
auto target_path() const -> const std::filesystem::path& { return m_target_path; }
auto process_id() const -> uint64_t { return m_process_id; }
@@ -84,6 +89,14 @@ namespace Hsdbg
auto resolve_breakpoint(Breakpoint& breakpoint) -> void;
auto sync_breakpoints() -> void;
+ auto require_stopped() const -> Result<void>;
+ auto sync_after_start() -> void;
+ auto pump_events() -> void;
+ auto drain_output() -> void;
+ auto on_stopped() -> void;
+ auto on_exited() -> void;
+ auto refresh_call_stack() -> void;
+
std::unique_ptr<Session> m_session;
TargetState m_state = TargetState::NoTarget;
@@ -103,5 +116,6 @@ namespace Hsdbg
uint64_t m_selected_thread = 0;
uint32_t m_selected_frame = 0;
+ uint64_t m_stop_count = 0;
};
}