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

#include <ProcessInfo.h>

Inheritance diagram for lldb_private::ProcessInfo:
Inheritance graph
[legend]
Collaboration diagram for lldb_private::ProcessInfo:
Collaboration graph
[legend]

Public Member Functions

 ProcessInfo ()
 
 ProcessInfo (const char *name, const ArchSpec &arch, lldb::pid_t pid)
 
void Clear ()
 
const char * GetName () const
 
llvm::StringRef GetNameAsStringRef () const
 
FileSpecGetExecutableFile ()
 
void SetExecutableFile (const FileSpec &exe_file, bool add_exe_file_as_first_arg)
 
const FileSpecGetExecutableFile () const
 
uint32_t GetUserID () const
 
uint32_t GetGroupID () const
 
bool UserIDIsValid () const
 
bool GroupIDIsValid () const
 
void SetUserID (uint32_t uid)
 
void SetGroupID (uint32_t gid)
 
ArchSpecGetArchitecture ()
 
const ArchSpecGetArchitecture () const
 
void SetArchitecture (const ArchSpec &arch)
 
lldb::pid_t GetProcessID () const
 
void SetProcessID (lldb::pid_t pid)
 
bool ProcessIDIsValid () const
 
void Dump (Stream &s, Platform *platform) const
 
ArgsGetArguments ()
 
const ArgsGetArguments () const
 
llvm::StringRef GetArg0 () const
 
void SetArg0 (llvm::StringRef arg)
 
void SetArguments (const Args &args, bool first_arg_is_executable)
 
void SetArguments (char const **argv, bool first_arg_is_executable)
 
EnvironmentGetEnvironment ()
 
const EnvironmentGetEnvironment () const
 

Protected Attributes

FileSpec m_executable
 
std::string m_arg0
 
Args m_arguments
 
Environment m_environment
 
uint32_t m_uid = UINT32_MAX
 
uint32_t m_gid = UINT32_MAX
 
ArchSpec m_arch
 
lldb::pid_t m_pid = LLDB_INVALID_PROCESS_ID
 

Friends

template<class T >
struct llvm::yaml::MappingTraits
 

Detailed Description

Definition at line 30 of file ProcessInfo.h.

Constructor & Destructor Documentation

◆ ProcessInfo() [1/2]

ProcessInfo::ProcessInfo ( )

Definition at line 24 of file ProcessInfo.cpp.

◆ ProcessInfo() [2/2]

ProcessInfo::ProcessInfo ( const char *  name,
const ArchSpec arch,
lldb::pid_t  pid 
)

Definition at line 27 of file ProcessInfo.cpp.

Member Function Documentation

◆ Clear()

void ProcessInfo::Clear ( )

◆ Dump()

void ProcessInfo::Dump ( Stream s,
Platform platform 
) const

◆ GetArchitecture() [1/2]

ArchSpec& lldb_private::ProcessInfo::GetArchitecture ( )
inline

◆ GetArchitecture() [2/2]

const ArchSpec& lldb_private::ProcessInfo::GetArchitecture ( ) const
inline

Definition at line 63 of file ProcessInfo.h.

References m_arch.

◆ GetArg0()

llvm::StringRef ProcessInfo::GetArg0 ( ) const

◆ GetArguments() [1/2]

Args& lldb_private::ProcessInfo::GetArguments ( )
inline

◆ GetArguments() [2/2]

const Args& lldb_private::ProcessInfo::GetArguments ( ) const
inline

Definition at line 77 of file ProcessInfo.h.

References m_arguments.

◆ GetEnvironment() [1/2]

Environment& lldb_private::ProcessInfo::GetEnvironment ( )
inline

◆ GetEnvironment() [2/2]

const Environment& lldb_private::ProcessInfo::GetEnvironment ( ) const
inline

Definition at line 88 of file ProcessInfo.h.

References m_environment.

◆ GetExecutableFile() [1/2]

FileSpec& lldb_private::ProcessInfo::GetExecutableFile ( )
inline

Definition at line 42 of file ProcessInfo.h.

References m_executable.

Referenced by lldb_private::Target::Attach(), lldb_private::Process::Attach(), lldb::SBTarget::AttachToProcessWithName(), lldb_private::process_gdb_remote::GDBRemoteCommunicationServerLLGS::AttachWaitProcess(), lldb_private::process_gdb_remote::GDBRemoteCommunicationServerCommon::CreateProcessInfoResponse(), lldb_private::DebuggerThread::DebuggerThreadLaunchRoutine(), lldb_private::DebuggerThread::DebugLaunch(), lldb_private::process_gdb_remote::GDBRemoteCommunicationClient::DecodeProcessInfoResponse(), GetExePathAndArch(), GetFreeBSDProcessArgs(), GetMacOSXProcessArgs(), GetNetBSDProcessArgs(), GetNetBSDProcessCPUType(), GetOpenBSDProcessArgs(), lldb_private::process_gdb_remote::GDBRemoteCommunicationServerCommon::Handle_A(), lldb_private::process_gdb_remote::GDBRemoteCommunicationServerCommon::Handle_qfProcessInfo(), lldb_private::process_gdb_remote::GDBRemoteCommunicationServerLLGS::Handle_vRun(), lldb::SBTarget::Launch(), lldb_private::Target::Launch(), lldb_private::ProcessLauncherPosixFork::LaunchProcess(), lldb_private::ProcessLauncherWindows::LaunchProcess(), lldb_private::MonitoringProcessLauncher::LaunchProcess(), lldb_private::ProcessDebugger::LaunchProcess(), lldb_private::ProcessAttachInfo::ProcessInfoSpecified(), lldb_private::ProcessInstanceInfoMatch::ProcessInstanceInfoMatch(), DynamicLoaderPOSIXDYLD::ResolveExecutableModule(), lldb_private::process_gdb_remote::GDBRemoteCommunicationClient::SendArgumentsPacket(), and lldb_private::process_gdb_remote::GDBRemoteCommunication::StartDebugserverProcess().

◆ GetExecutableFile() [2/2]

const FileSpec& lldb_private::ProcessInfo::GetExecutableFile ( ) const
inline

Definition at line 47 of file ProcessInfo.h.

References m_executable.

◆ GetGroupID()

uint32_t lldb_private::ProcessInfo::GetGroupID ( ) const
inline

◆ GetName()

const char * ProcessInfo::GetName ( ) const

◆ GetNameAsStringRef()

llvm::StringRef ProcessInfo::GetNameAsStringRef ( ) const

◆ GetProcessID()

lldb::pid_t lldb_private::ProcessInfo::GetProcessID ( ) const
inline

Definition at line 67 of file ProcessInfo.h.

References m_pid.

Referenced by MinidumpFileBuilder::AddLinuxFileStreams(), MinidumpFileBuilder::AddMiscInfo(), lldb::SBTarget::Attach(), lldb_private::Process::Attach(), lldb_private::process_gdb_remote::GDBRemoteCommunicationServerCommon::CreateProcessInfoResponse(), lldb_private::process_gdb_remote::GDBRemoteCommunicationServerCommon::CreateProcessInfoResponse_DebugServerStyle(), lldb_private::PlatformWindows::DebugProcess(), PlatformAppleSimulator::DebugProcess(), lldb_private::Platform::DebugProcess(), lldb_private::process_gdb_remote::GDBRemoteCommunicationClient::DecodeProcessInfoResponse(), lldb_private::ProcessWindows::DoLaunch(), lldb_private::process_gdb_remote::GDBRemoteCommunicationClient::FindProcesses(), GetFreeBSDProcessArgs(), GetFreeBSDProcessUserAndGroup(), GetMacOSXProcessArgs(), GetMacOSXProcessCPUType(), GetMacOSXProcessUserAndGroup(), GetNetBSDProcessArgs(), GetNetBSDProcessUserAndGroup(), GetOpenBSDProcessArgs(), GetOpenBSDProcessUserAndGroup(), lldb_private::process_gdb_remote::GDBRemoteCommunicationServerPlatform::Handle_qC(), lldb_private::process_gdb_remote::GDBRemoteCommunicationServerPlatform::Handle_qProcessInfo(), lldb_private::process_gdb_remote::ProcessGDBRemote::LaunchAndConnectToDebugserver(), lldb_private::process_gdb_remote::GDBRemoteCommunicationServerPlatform::LaunchGDBServer(), lldb_private::process_gdb_remote::GDBRemoteCommunicationServerPlatform::LaunchProcess(), lldb_private::ProcessLaunchInfo::MonitorProcess(), lldb_private::ProcessInstanceInfoMatch::ProcessIDsMatch(), lldb_private::ProcessAttachInfo::ProcessInfoSpecified(), lldb_private::Host::RunShellCommand(), and lldb_private::process_gdb_remote::GDBRemoteCommunication::StartDebugserverProcess().

◆ GetUserID()

uint32_t lldb_private::ProcessInfo::GetUserID ( ) const
inline

◆ GroupIDIsValid()

bool lldb_private::ProcessInfo::GroupIDIsValid ( ) const
inline

◆ ProcessIDIsValid()

bool lldb_private::ProcessInfo::ProcessIDIsValid ( ) const
inline

◆ SetArchitecture()

void lldb_private::ProcessInfo::SetArchitecture ( const ArchSpec arch)
inline

◆ SetArg0()

void ProcessInfo::SetArg0 ( llvm::StringRef  arg)

◆ SetArguments() [1/2]

void ProcessInfo::SetArguments ( char const **  argv,
bool  first_arg_is_executable 
)

◆ SetArguments() [2/2]

void ProcessInfo::SetArguments ( const Args args,
bool  first_arg_is_executable 
)

◆ SetExecutableFile()

void ProcessInfo::SetExecutableFile ( const FileSpec exe_file,
bool  add_exe_file_as_first_arg 
)

◆ SetGroupID()

void lldb_private::ProcessInfo::SetGroupID ( uint32_t  gid)
inline

◆ SetProcessID()

void lldb_private::ProcessInfo::SetProcessID ( lldb::pid_t  pid)
inline

◆ SetUserID()

void lldb_private::ProcessInfo::SetUserID ( uint32_t  uid)
inline

◆ UserIDIsValid()

bool lldb_private::ProcessInfo::UserIDIsValid ( ) const
inline

Friends And Related Function Documentation

◆ llvm::yaml::MappingTraits

template<class T >
friend struct llvm::yaml::MappingTraits
friend

Definition at line 91 of file ProcessInfo.h.

Member Data Documentation

◆ m_arch

ArchSpec lldb_private::ProcessInfo::m_arch
protected

◆ m_arg0

std::string lldb_private::ProcessInfo::m_arg0
protected

◆ m_arguments

Args lldb_private::ProcessInfo::m_arguments
protected

◆ m_environment

Environment lldb_private::ProcessInfo::m_environment
protected

Definition at line 97 of file ProcessInfo.h.

Referenced by Clear(), Dump(), lldb_private::ProcessInstanceInfo::Dump(), and GetEnvironment().

◆ m_executable

FileSpec lldb_private::ProcessInfo::m_executable
protected

◆ m_gid

uint32_t lldb_private::ProcessInfo::m_gid = UINT32_MAX
protected

Definition at line 99 of file ProcessInfo.h.

Referenced by Clear(), GetGroupID(), GroupIDIsValid(), and SetGroupID().

◆ m_pid

lldb::pid_t lldb_private::ProcessInfo::m_pid = LLDB_INVALID_PROCESS_ID
protected

◆ m_uid

uint32_t lldb_private::ProcessInfo::m_uid = UINT32_MAX
protected

Definition at line 98 of file ProcessInfo.h.

Referenced by Clear(), GetUserID(), SetUserID(), and UserIDIsValid().


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