LLDB mainline
Public Member Functions | Protected Member Functions | Protected Attributes | List of all members
lldb_private::ProcessDebugger Class Reference

#include <ProcessDebugger.h>

Inheritance diagram for lldb_private::ProcessDebugger:
Inheritance graph
[legend]

Public Member Functions

virtual ~ProcessDebugger ()
 
virtual void OnExitProcess (uint32_t exit_code)
 
virtual void OnDebuggerConnected (lldb::addr_t image_base)
 
virtual ExceptionResult OnDebugException (bool first_chance, const ExceptionRecord &record)
 
virtual void OnCreateThread (const HostThread &thread)
 
virtual void OnExitThread (lldb::tid_t thread_id, uint32_t exit_code)
 
virtual void OnLoadDll (const ModuleSpec &module_spec, lldb::addr_t module_addr)
 
virtual void OnUnloadDll (lldb::addr_t module_addr)
 
virtual void OnDebugString (const std::string &string)
 
virtual void OnDebuggerError (const Status &error, uint32_t type)
 

Protected Member Functions

Status DetachProcess ()
 
Status LaunchProcess (ProcessLaunchInfo &launch_info, DebugDelegateSP delegate)
 
Status AttachProcess (lldb::pid_t pid, const ProcessAttachInfo &attach_info, DebugDelegateSP delegate)
 
Status DestroyProcess (lldb::StateType process_state)
 
Status HaltProcess (bool &caused_stop)
 
Status GetMemoryRegionInfo (lldb::addr_t load_addr, MemoryRegionInfo &range_info)
 
Status ReadMemory (lldb::addr_t addr, void *buf, size_t size, size_t &bytes_read)
 
Status WriteMemory (lldb::addr_t addr, const void *buf, size_t size, size_t &bytes_written)
 
Status AllocateMemory (size_t size, uint32_t permissions, lldb::addr_t &addr)
 
Status DeallocateMemory (lldb::addr_t addr)
 
lldb::pid_t GetDebuggedProcessId () const
 
Status WaitForDebuggerConnection (DebuggerThreadSP debugger, HostProcess &process)
 

Protected Attributes

llvm::sys::Mutex m_mutex
 
std::unique_ptr< ProcessWindowsDatam_session_data
 

Detailed Description

Definition at line 48 of file ProcessDebugger.h.

Constructor & Destructor Documentation

◆ ~ProcessDebugger()

lldb_private::ProcessDebugger::~ProcessDebugger ( )
virtual

Definition at line 66 of file ProcessDebugger.cpp.

Member Function Documentation

◆ AllocateMemory()

Status lldb_private::ProcessDebugger::AllocateMemory ( size_t  size,
uint32_t  permissions,
lldb::addr_t addr 
)
protected

◆ AttachProcess()

Status lldb_private::ProcessDebugger::AttachProcess ( lldb::pid_t  pid,
const ProcessAttachInfo attach_info,
DebugDelegateSP  delegate 
)
protected

◆ DeallocateMemory()

Status lldb_private::ProcessDebugger::DeallocateMemory ( lldb::addr_t  addr)
protected

◆ DestroyProcess()

Status lldb_private::ProcessDebugger::DestroyProcess ( lldb::StateType  process_state)
protected

◆ DetachProcess()

Status lldb_private::ProcessDebugger::DetachProcess ( )
protected

◆ GetDebuggedProcessId()

lldb::pid_t lldb_private::ProcessDebugger::GetDebuggedProcessId ( ) const
protected

◆ GetMemoryRegionInfo()

Status lldb_private::ProcessDebugger::GetMemoryRegionInfo ( lldb::addr_t  load_addr,
MemoryRegionInfo range_info 
)
protected

◆ HaltProcess()

Status lldb_private::ProcessDebugger::HaltProcess ( bool &  caused_stop)
protected

◆ LaunchProcess()

Status lldb_private::ProcessDebugger::LaunchProcess ( ProcessLaunchInfo launch_info,
DebugDelegateSP  delegate 
)
protected

◆ OnCreateThread()

void lldb_private::ProcessDebugger::OnCreateThread ( const HostThread thread)
virtual

Reimplemented in lldb_private::NativeProcessWindows, and lldb_private::ProcessWindows.

Definition at line 516 of file ProcessDebugger.cpp.

◆ OnDebugException()

ExceptionResult lldb_private::ProcessDebugger::OnDebugException ( bool  first_chance,
const ExceptionRecord record 
)
virtual

◆ OnDebuggerConnected()

void lldb_private::ProcessDebugger::OnDebuggerConnected ( lldb::addr_t  image_base)
virtual

Reimplemented in lldb_private::NativeProcessWindows, and lldb_private::ProcessWindows.

Definition at line 478 of file ProcessDebugger.cpp.

◆ OnDebuggerError()

void lldb_private::ProcessDebugger::OnDebuggerError ( const Status error,
uint32_t  type 
)
virtual

◆ OnDebugString()

void lldb_private::ProcessDebugger::OnDebugString ( const std::string &  string)
virtual

◆ OnExitProcess()

void lldb_private::ProcessDebugger::OnExitProcess ( uint32_t  exit_code)
virtual

◆ OnExitThread()

void lldb_private::ProcessDebugger::OnExitThread ( lldb::tid_t  thread_id,
uint32_t  exit_code 
)
virtual

Reimplemented in lldb_private::NativeProcessWindows, and lldb_private::ProcessWindows.

Definition at line 520 of file ProcessDebugger.cpp.

◆ OnLoadDll()

void lldb_private::ProcessDebugger::OnLoadDll ( const ModuleSpec module_spec,
lldb::addr_t  module_addr 
)
virtual

Reimplemented in lldb_private::NativeProcessWindows, and lldb_private::ProcessWindows.

Definition at line 524 of file ProcessDebugger.cpp.

◆ OnUnloadDll()

void lldb_private::ProcessDebugger::OnUnloadDll ( lldb::addr_t  module_addr)
virtual

Reimplemented in lldb_private::NativeProcessWindows, and lldb_private::ProcessWindows.

Definition at line 529 of file ProcessDebugger.cpp.

◆ ReadMemory()

Status lldb_private::ProcessDebugger::ReadMemory ( lldb::addr_t  addr,
void *  buf,
size_t  size,
size_t &  bytes_read 
)
protected

◆ WaitForDebuggerConnection()

Status lldb_private::ProcessDebugger::WaitForDebuggerConnection ( DebuggerThreadSP  debugger,
HostProcess process 
)
protected

◆ WriteMemory()

Status lldb_private::ProcessDebugger::WriteMemory ( lldb::addr_t  addr,
const void *  buf,
size_t  size,
size_t &  bytes_written 
)
protected

Member Data Documentation

◆ m_mutex

llvm::sys::Mutex lldb_private::ProcessDebugger::m_mutex
protected

◆ m_session_data

std::unique_ptr<ProcessWindowsData> lldb_private::ProcessDebugger::m_session_data
protected

The documentation for this class was generated from the following files: