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

#include <SBLaunchInfo.h>

Collaboration diagram for lldb::SBLaunchInfo:
Collaboration graph
[legend]

Public Member Functions

 SBLaunchInfo (const char **argv)
 
 ~SBLaunchInfo ()
 
 SBLaunchInfo (const SBLaunchInfo &rhs)
 
SBLaunchInfooperator= (const SBLaunchInfo &rhs)
 
lldb::pid_t GetProcessID ()
 
uint32_t GetUserID ()
 
uint32_t GetGroupID ()
 
bool UserIDIsValid ()
 
bool GroupIDIsValid ()
 
void SetUserID (uint32_t uid)
 
void SetGroupID (uint32_t gid)
 
SBFileSpec GetExecutableFile ()
 
void SetExecutableFile (SBFileSpec exe_file, bool add_as_first_arg)
 Set the executable file that will be used to launch the process and optionally set it as the first argument in the argument vector. More...
 
SBListener GetListener ()
 Get the listener that will be used to receive process events. More...
 
void SetListener (SBListener &listener)
 Set the listener that will be used to receive process events. More...
 
uint32_t GetNumArguments ()
 
const char * GetArgumentAtIndex (uint32_t idx)
 
void SetArguments (const char **argv, bool append)
 
uint32_t GetNumEnvironmentEntries ()
 
const char * GetEnvironmentEntryAtIndex (uint32_t idx)
 
void SetEnvironmentEntries (const char **envp, bool append)
 Update this object with the given environment variables. More...
 
void SetEnvironment (const SBEnvironment &env, bool append)
 Update this object with the given environment variables. More...
 
SBEnvironment GetEnvironment ()
 Return the environment variables of this object. More...
 
void Clear ()
 
const char * GetWorkingDirectory () const
 
void SetWorkingDirectory (const char *working_dir)
 
uint32_t GetLaunchFlags ()
 
void SetLaunchFlags (uint32_t flags)
 
const char * GetProcessPluginName ()
 
void SetProcessPluginName (const char *plugin_name)
 
const char * GetShell ()
 
void SetShell (const char *path)
 
bool GetShellExpandArguments ()
 
void SetShellExpandArguments (bool expand)
 
uint32_t GetResumeCount ()
 
void SetResumeCount (uint32_t c)
 
bool AddCloseFileAction (int fd)
 
bool AddDuplicateFileAction (int fd, int dup_fd)
 
bool AddOpenFileAction (int fd, const char *path, bool read, bool write)
 
bool AddSuppressFileAction (int fd, bool read, bool write)
 
void SetLaunchEventData (const char *data)
 
const char * GetLaunchEventData () const
 
bool GetDetachOnError () const
 
void SetDetachOnError (bool enable)
 
const char * GetScriptedProcessClassName () const
 
void SetScriptedProcessClassName (const char *class_name)
 
lldb::SBStructuredData GetScriptedProcessDictionary () const
 
void SetScriptedProcessDictionary (lldb::SBStructuredData dict)
 

Protected Member Functions

const lldb_private::ProcessLaunchInforef () const
 
void set_ref (const lldb_private::ProcessLaunchInfo &info)
 

Protected Attributes

std::shared_ptr< lldb_private::SBLaunchInfoImplm_opaque_sp
 

Friends

class SBPlatform
 
class SBTarget
 

Detailed Description

Definition at line 23 of file SBLaunchInfo.h.

Constructor & Destructor Documentation

◆ SBLaunchInfo() [1/2]

SBLaunchInfo::SBLaunchInfo ( const char **  argv)

Definition at line 41 of file SBLaunchInfo.cpp.

References LLDB_INSTRUMENT_VA, and m_opaque_sp.

◆ ~SBLaunchInfo()

SBLaunchInfo::~SBLaunchInfo ( )
default

◆ SBLaunchInfo() [2/2]

SBLaunchInfo::SBLaunchInfo ( const SBLaunchInfo rhs)

Definition at line 50 of file SBLaunchInfo.cpp.

References LLDB_INSTRUMENT_VA, and m_opaque_sp.

Member Function Documentation

◆ AddCloseFileAction()

bool SBLaunchInfo::AddCloseFileAction ( int  fd)

Definition at line 282 of file SBLaunchInfo.cpp.

References LLDB_INSTRUMENT_VA, and m_opaque_sp.

◆ AddDuplicateFileAction()

bool SBLaunchInfo::AddDuplicateFileAction ( int  fd,
int  dup_fd 
)

Definition at line 288 of file SBLaunchInfo.cpp.

References LLDB_INSTRUMENT_VA, and m_opaque_sp.

◆ AddOpenFileAction()

bool SBLaunchInfo::AddOpenFileAction ( int  fd,
const char *  path,
bool  read,
bool  write 
)

Definition at line 294 of file SBLaunchInfo.cpp.

References LLDB_INSTRUMENT_VA, and m_opaque_sp.

◆ AddSuppressFileAction()

bool SBLaunchInfo::AddSuppressFileAction ( int  fd,
bool  read,
bool  write 
)

Definition at line 301 of file SBLaunchInfo.cpp.

References LLDB_INSTRUMENT_VA, and m_opaque_sp.

◆ Clear()

void SBLaunchInfo::Clear ( )

Definition at line 201 of file SBLaunchInfo.cpp.

References LLDB_INSTRUMENT_VA, and m_opaque_sp.

◆ GetArgumentAtIndex()

const char * SBLaunchInfo::GetArgumentAtIndex ( uint32_t  idx)

Definition at line 146 of file SBLaunchInfo.cpp.

References LLDB_INSTRUMENT_VA, and m_opaque_sp.

◆ GetDetachOnError()

bool SBLaunchInfo::GetDetachOnError ( ) const

Definition at line 325 of file SBLaunchInfo.cpp.

References LLDB_INSTRUMENT_VA, and m_opaque_sp.

◆ GetEnvironment()

SBEnvironment SBLaunchInfo::GetEnvironment ( )

Return the environment variables of this object.

Returns
An lldb::SBEnvironment object which is a copy of the SBLaunchInfo's environment.

Definition at line 196 of file SBLaunchInfo.cpp.

References LLDB_INSTRUMENT_VA, m_opaque_sp, and lldb::SBEnvironment.

◆ GetEnvironmentEntryAtIndex()

const char * SBLaunchInfo::GetEnvironmentEntryAtIndex ( uint32_t  idx)

Definition at line 172 of file SBLaunchInfo.cpp.

References GetNumEnvironmentEntries(), LLDB_INSTRUMENT_VA, and m_opaque_sp.

◆ GetExecutableFile()

SBFileSpec SBLaunchInfo::GetExecutableFile ( )

Definition at line 115 of file SBLaunchInfo.cpp.

References LLDB_INSTRUMENT_VA, m_opaque_sp, and lldb::SBFileSpec.

◆ GetGroupID()

uint32_t SBLaunchInfo::GetGroupID ( )

Definition at line 85 of file SBLaunchInfo.cpp.

References LLDB_INSTRUMENT_VA, and m_opaque_sp.

◆ GetLaunchEventData()

const char * SBLaunchInfo::GetLaunchEventData ( ) const

Definition at line 313 of file SBLaunchInfo.cpp.

References LLDB_INSTRUMENT_VA, and m_opaque_sp.

◆ GetLaunchFlags()

uint32_t SBLaunchInfo::GetLaunchFlags ( )

Definition at line 219 of file SBLaunchInfo.cpp.

References LLDB_INSTRUMENT_VA, and m_opaque_sp.

◆ GetListener()

SBListener SBLaunchInfo::GetListener ( )

Get the listener that will be used to receive process events.

If no listener has been set via a call to SBLaunchInfo::SetListener(), then an invalid SBListener will be returned (SBListener::IsValid() will return false). If a listener has been set, then the valid listener object will be returned.

Definition at line 128 of file SBLaunchInfo.cpp.

References LLDB_INSTRUMENT_VA, m_opaque_sp, and lldb::SBListener.

◆ GetNumArguments()

uint32_t SBLaunchInfo::GetNumArguments ( )

Definition at line 140 of file SBLaunchInfo.cpp.

References LLDB_INSTRUMENT_VA, and m_opaque_sp.

◆ GetNumEnvironmentEntries()

uint32_t SBLaunchInfo::GetNumEnvironmentEntries ( )

Definition at line 166 of file SBLaunchInfo.cpp.

References LLDB_INSTRUMENT_VA, and m_opaque_sp.

Referenced by GetEnvironmentEntryAtIndex().

◆ GetProcessID()

lldb::pid_t SBLaunchInfo::GetProcessID ( )

Definition at line 73 of file SBLaunchInfo.cpp.

References LLDB_INSTRUMENT_VA, and m_opaque_sp.

◆ GetProcessPluginName()

const char * SBLaunchInfo::GetProcessPluginName ( )

Definition at line 231 of file SBLaunchInfo.cpp.

References LLDB_INSTRUMENT_VA, and m_opaque_sp.

◆ GetResumeCount()

uint32_t SBLaunchInfo::GetResumeCount ( )

Definition at line 270 of file SBLaunchInfo.cpp.

References LLDB_INSTRUMENT_VA, and m_opaque_sp.

◆ GetScriptedProcessClassName()

const char * SBLaunchInfo::GetScriptedProcessClassName ( ) const

◆ GetScriptedProcessDictionary()

lldb::SBStructuredData SBLaunchInfo::GetScriptedProcessDictionary ( ) const

◆ GetShell()

const char * SBLaunchInfo::GetShell ( )

◆ GetShellExpandArguments()

bool SBLaunchInfo::GetShellExpandArguments ( )

Definition at line 258 of file SBLaunchInfo.cpp.

References LLDB_INSTRUMENT_VA, and m_opaque_sp.

◆ GetUserID()

uint32_t SBLaunchInfo::GetUserID ( )

Definition at line 79 of file SBLaunchInfo.cpp.

References LLDB_INSTRUMENT_VA, and m_opaque_sp.

◆ GetWorkingDirectory()

const char * SBLaunchInfo::GetWorkingDirectory ( ) const

Definition at line 207 of file SBLaunchInfo.cpp.

References LLDB_INSTRUMENT_VA, and m_opaque_sp.

◆ GroupIDIsValid()

bool SBLaunchInfo::GroupIDIsValid ( )

Definition at line 97 of file SBLaunchInfo.cpp.

References LLDB_INSTRUMENT_VA, and m_opaque_sp.

◆ operator=()

SBLaunchInfo & SBLaunchInfo::operator= ( const SBLaunchInfo rhs)

Definition at line 56 of file SBLaunchInfo.cpp.

References LLDB_INSTRUMENT_VA, and m_opaque_sp.

◆ ref()

const lldb_private::ProcessLaunchInfo & SBLaunchInfo::ref ( ) const
protected

◆ set_ref()

void SBLaunchInfo::set_ref ( const lldb_private::ProcessLaunchInfo info)
protected

◆ SetArguments()

void SBLaunchInfo::SetArguments ( const char **  argv,
bool  append 
)

Definition at line 152 of file SBLaunchInfo.cpp.

References LLDB_INSTRUMENT_VA, and m_opaque_sp.

Referenced by lldb::SBTarget::LaunchSimple().

◆ SetDetachOnError()

void SBLaunchInfo::SetDetachOnError ( bool  enable)

Definition at line 319 of file SBLaunchInfo.cpp.

References LLDB_INSTRUMENT_VA, and m_opaque_sp.

◆ SetEnvironment()

void SBLaunchInfo::SetEnvironment ( const SBEnvironment env,
bool  append 
)

Update this object with the given environment variables.

If append is false, the provided environment will replace the existing environment. Otherwise, existing values will be updated of left untouched accordingly.

Parameters
[in]envThe new environment variables.
[in]appendFlag that controls whether to replace the existing environment.

Definition at line 185 of file SBLaunchInfo.cpp.

References LLDB_INSTRUMENT_VA, m_opaque_sp, and lldb::SBEnvironment::ref().

Referenced by SetEnvironmentEntries().

◆ SetEnvironmentEntries()

void SBLaunchInfo::SetEnvironmentEntries ( const char **  envp,
bool  append 
)

Update this object with the given environment variables.

If append is false, the provided environment will replace the existing environment. Otherwise, existing values will be updated of left untouched accordingly.

Parameters
[in]envpThe new environment variables as a list of strings with the following format name=value
[in]appendFlag that controls whether to replace the existing environment.

Definition at line 180 of file SBLaunchInfo.cpp.

References LLDB_INSTRUMENT_VA, lldb::SBEnvironment, and SetEnvironment().

Referenced by lldb::SBTarget::LaunchSimple().

◆ SetExecutableFile()

void SBLaunchInfo::SetExecutableFile ( SBFileSpec  exe_file,
bool  add_as_first_arg 
)

Set the executable file that will be used to launch the process and optionally set it as the first argument in the argument vector.

This only needs to be specified if clients wish to carefully control the exact path will be used to launch a binary. If you create a target with a symlink, that symlink will get resolved in the target and the resolved path will get used to launch the process. Calling this function can help you still launch your process using the path of your choice.

If this function is not called prior to launching with SBTarget::Launch(...), the target will use the resolved executable path that was used to create the target.

Parameters
[in]exe_fileThe override path to use when launching the executable.
[in]add_as_first_argIf true, then the path will be inserted into the argument vector prior to launching. Otherwise the argument vector will be left alone.

Definition at line 121 of file SBLaunchInfo.cpp.

References LLDB_INSTRUMENT_VA, m_opaque_sp, and lldb::SBFileSpec::ref().

Referenced by lldb::SBTarget::LaunchSimple().

◆ SetGroupID()

void SBLaunchInfo::SetGroupID ( uint32_t  gid)

Definition at line 109 of file SBLaunchInfo.cpp.

References LLDB_INSTRUMENT_VA, and m_opaque_sp.

◆ SetLaunchEventData()

void SBLaunchInfo::SetLaunchEventData ( const char *  data)

Definition at line 307 of file SBLaunchInfo.cpp.

References LLDB_INSTRUMENT_VA, and m_opaque_sp.

◆ SetLaunchFlags()

void SBLaunchInfo::SetLaunchFlags ( uint32_t  flags)

Definition at line 225 of file SBLaunchInfo.cpp.

References LLDB_INSTRUMENT_VA, and m_opaque_sp.

◆ SetListener()

void SBLaunchInfo::SetListener ( SBListener listener)

Set the listener that will be used to receive process events.

By default the SBDebugger, which has a listener, that the SBTarget belongs to will listen for the process events. Calling this function allows a different listener to be used to listen for process events.

Definition at line 134 of file SBLaunchInfo.cpp.

References lldb::SBListener::GetSP(), LLDB_INSTRUMENT_VA, and m_opaque_sp.

◆ SetProcessPluginName()

void SBLaunchInfo::SetProcessPluginName ( const char *  plugin_name)

Definition at line 237 of file SBLaunchInfo.cpp.

References LLDB_INSTRUMENT_VA, and m_opaque_sp.

◆ SetResumeCount()

void SBLaunchInfo::SetResumeCount ( uint32_t  c)

Definition at line 276 of file SBLaunchInfo.cpp.

References LLDB_INSTRUMENT_VA, and m_opaque_sp.

◆ SetScriptedProcessClassName()

void SBLaunchInfo::SetScriptedProcessClassName ( const char *  class_name)

Definition at line 340 of file SBLaunchInfo.cpp.

References LLDB_INSTRUMENT_VA, and m_opaque_sp.

◆ SetScriptedProcessDictionary()

void SBLaunchInfo::SetScriptedProcessDictionary ( lldb::SBStructuredData  dict)

◆ SetShell()

void SBLaunchInfo::SetShell ( const char *  path)

Definition at line 252 of file SBLaunchInfo.cpp.

References LLDB_INSTRUMENT_VA, and m_opaque_sp.

◆ SetShellExpandArguments()

void SBLaunchInfo::SetShellExpandArguments ( bool  expand)

Definition at line 264 of file SBLaunchInfo.cpp.

References LLDB_INSTRUMENT_VA, and m_opaque_sp.

◆ SetUserID()

void SBLaunchInfo::SetUserID ( uint32_t  uid)

Definition at line 103 of file SBLaunchInfo.cpp.

References LLDB_INSTRUMENT_VA, and m_opaque_sp.

◆ SetWorkingDirectory()

void SBLaunchInfo::SetWorkingDirectory ( const char *  working_dir)

Definition at line 213 of file SBLaunchInfo.cpp.

References LLDB_INSTRUMENT_VA, and m_opaque_sp.

Referenced by lldb::SBTarget::LaunchSimple().

◆ UserIDIsValid()

bool SBLaunchInfo::UserIDIsValid ( )

Definition at line 91 of file SBLaunchInfo.cpp.

References LLDB_INSTRUMENT_VA, and m_opaque_sp.

Friends And Related Function Documentation

◆ SBPlatform

friend class SBPlatform
friend

Definition at line 183 of file SBLaunchInfo.h.

◆ SBTarget

friend class SBTarget
friend

Definition at line 184 of file SBLaunchInfo.h.

Member Data Documentation

◆ m_opaque_sp

std::shared_ptr<lldb_private::SBLaunchInfoImpl> lldb::SBLaunchInfo::m_opaque_sp
protected

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