9#ifndef LLDB_TARGET_PROCESSTRACE_H
10#define LLDB_TARGET_PROCESSTRACE_H
36 bool plugin_specified_by_name)
override;
52 error.SetErrorStringWithFormatv(
53 "error: {0} does not support resuming processes",
GetPluginName());
static llvm::raw_ostream & error(Stream &strm)
An architecture specification class.
A plug-in interface definition class for dynamic loaders.
Base class for all processes that don't represent a live process, such as coredumps or processes trac...
Class that represents a defunct process loaded on memory via the "trace load" command.
static llvm::StringRef GetPluginNameStatic()
void RefreshStateAfterStop() override
Currently called as part of ShouldStop.
bool GetProcessInfo(ProcessInstanceInfo &info) override
size_t DoReadMemory(lldb::addr_t addr, void *buf, size_t size, Status &error) override
Actually do the reading of memory from a process.
bool CanDebug(lldb::TargetSP target_sp, bool plugin_specified_by_name) override
Check if a plug-in instance can debug the file in module.
static llvm::StringRef GetPluginDescriptionStatic()
static lldb::ProcessSP CreateInstance(lldb::TargetSP target_sp, lldb::ListenerSP listener_sp, const FileSpec *crash_file_path, bool can_connect)
bool DoUpdateThreadList(ThreadList &old_thread_list, ThreadList &new_thread_list) override
Update the thread list following process plug-in's specific logic.
SystemRuntime * GetSystemRuntime() override
Get the system runtime plug-in for this process.
Status WillResume() override
Called before resuming to a process.
ArchSpec GetArchitecture()
Status DoDestroy() override
bool WarnBeforeDetach() const override
Before lldb detaches from a process, it warns the user that they are about to lose their debug sessio...
size_t ReadMemory(lldb::addr_t addr, void *buf, size_t size, Status &error) override
Read of memory from a process.
void DidAttach(ArchSpec &process_arch) override
Called after attaching a process.
llvm::StringRef GetPluginName() override
DynamicLoader * GetDynamicLoader() override
Get the dynamic loader plug-in for this process.
A plug-in interface definition class for system runtimes.
A class that represents a running process on the host machine.
std::shared_ptr< lldb_private::Process > ProcessSP
std::shared_ptr< lldb_private::Listener > ListenerSP
std::shared_ptr< lldb_private::Target > TargetSP