LLDB mainline
Public Member Functions | Protected Attributes | List of all members
lldb_private::NativeProcessProtocol::Manager Class Referenceabstract

#include <NativeProcessProtocol.h>

Inheritance diagram for lldb_private::NativeProcessProtocol::Manager:
Inheritance graph
[legend]

Public Member Functions

 Manager (MainLoop &mainloop)
 
 Manager (const Manager &)=delete
 
Manageroperator= (const Manager &)=delete
 
virtual ~Manager ()
 
virtual llvm::Expected< std::unique_ptr< NativeProcessProtocol > > Launch (ProcessLaunchInfo &launch_info, NativeDelegate &native_delegate)=0
 Launch a process for debugging.
 
virtual llvm::Expected< std::unique_ptr< NativeProcessProtocol > > Attach (lldb::pid_t pid, NativeDelegate &native_delegate)=0
 Attach to an existing process.
 
virtual Extension GetSupportedExtensions () const
 Get the bitmask of extensions supported by this process plugin.
 

Protected Attributes

MainLoopm_mainloop
 

Detailed Description

Definition at line 275 of file NativeProcessProtocol.h.

Constructor & Destructor Documentation

◆ Manager() [1/2]

lldb_private::NativeProcessProtocol::Manager::Manager ( MainLoop mainloop)
inline

Definition at line 277 of file NativeProcessProtocol.h.

◆ Manager() [2/2]

lldb_private::NativeProcessProtocol::Manager::Manager ( const Manager )
delete

◆ ~Manager()

NativeProcessProtocol::Manager::~Manager ( )
virtualdefault

Member Function Documentation

◆ Attach()

virtual llvm::Expected< std::unique_ptr< NativeProcessProtocol > > lldb_private::NativeProcessProtocol::Manager::Attach ( lldb::pid_t  pid,
NativeDelegate native_delegate 
)
pure virtual

Attach to an existing process.

Parameters
[in]pidpid of the process locatable
[in]native_delegateThe delegate that will receive messages regarding the inferior. Must outlive the NativeProcessProtocol instance.
[in]mainloopThe mainloop instance with which the process can register callbacks. Must outlive the NativeProcessProtocol instance.
Returns
A NativeProcessProtocol shared pointer if the operation succeeded or an error object if it failed.

Implemented in lldb_private::process_freebsd::NativeProcessFreeBSD::Manager, lldb_private::process_linux::NativeProcessLinux::Manager, lldb_private::process_netbsd::NativeProcessNetBSD::Manager, and lldb_private::NativeProcessWindows::Manager.

Referenced by lldb_private::process_gdb_remote::GDBRemoteCommunicationServerLLGS::AttachToProcess().

◆ GetSupportedExtensions()

virtual Extension lldb_private::NativeProcessProtocol::Manager::GetSupportedExtensions ( ) const
inlinevirtual

◆ Launch()

virtual llvm::Expected< std::unique_ptr< NativeProcessProtocol > > lldb_private::NativeProcessProtocol::Manager::Launch ( ProcessLaunchInfo launch_info,
NativeDelegate native_delegate 
)
pure virtual

Launch a process for debugging.

Parameters
[in]launch_infoInformation required to launch the process.
[in]native_delegateThe delegate that will receive messages regarding the inferior. Must outlive the NativeProcessProtocol instance.
[in]mainloopThe mainloop instance with which the process can register callbacks. Must outlive the NativeProcessProtocol instance.
Returns
A NativeProcessProtocol shared pointer if the operation succeeded or an error object if it failed.

Implemented in lldb_private::process_freebsd::NativeProcessFreeBSD::Manager, lldb_private::process_linux::NativeProcessLinux::Manager, lldb_private::process_netbsd::NativeProcessNetBSD::Manager, and lldb_private::NativeProcessWindows::Manager.

Referenced by lldb_private::process_gdb_remote::GDBRemoteCommunicationServerLLGS::LaunchProcess().

◆ operator=()

Manager & lldb_private::NativeProcessProtocol::Manager::operator= ( const Manager )
delete

Member Data Documentation

◆ m_mainloop

MainLoop& lldb_private::NativeProcessProtocol::Manager::m_mainloop
protected

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