9#ifndef LLDB_UTILITY_PROCESSINFO_H
10#define LLDB_UTILITY_PROCESSINFO_H
46 bool add_exe_file_as_first_arg);
80 llvm::StringRef
GetArg0()
const;
82 void SetArg0(llvm::StringRef arg);
86 void SetArguments(
char const **argv,
bool first_arg_is_executable);
280 if (idx <
m_list.size()) {
305 FileSpec::Style::native);
An architecture specification class.
A command line argument class.
void SetFile(llvm::StringRef path, Style style)
Change the file specified with a new path.
ProcessInstanceInfoList m_list
ProcessInfoList(const ProcessInstanceInfoList &list)
bool GetProcessInfoAtIndex(uint32_t idx, ProcessInstanceInfo &info)
const FileSpec & GetExecutableFile() const
void SetGroupID(uint32_t gid)
void SetHijackListener(const lldb::ListenerSP &listener_sp)
void SetExecutableFile(const FileSpec &exe_file, bool add_exe_file_as_first_arg)
lldb::ScriptedMetadataSP GetScriptedMetadata() const
Environment m_environment
lldb::ListenerSP GetHijackListener() const
void SetArchitecture(const ArchSpec &arch)
lldb::ScriptedMetadataSP m_scripted_metadata_sp
bool ProcessIDIsValid() const
void SetShadowListener(const lldb::ListenerSP &listener_sp)
void SetArg0(llvm::StringRef arg)
const char * GetName() const
void Dump(Stream &s, Platform *platform) const
lldb::pid_t GetProcessID() const
llvm::StringRef GetArg0() const
void SetScriptedMetadata(lldb::ScriptedMetadataSP metadata_sp)
lldb::ListenerSP m_hijack_listener_sp
void SetArguments(const Args &args, bool first_arg_is_executable)
void SetProcessID(lldb::pid_t pid)
lldb::ListenerSP m_listener_sp
FileSpec & GetExecutableFile()
void SetListener(const lldb::ListenerSP &listener_sp)
lldb::ListenerSP GetListener() const
const Environment & GetEnvironment() const
lldb::ListenerSP GetShadowListener() const
bool UserIDIsValid() const
const ArchSpec & GetArchitecture() const
uint32_t GetUserID() const
const Args & GetArguments() const
Environment & GetEnvironment()
llvm::StringRef GetNameAsStringRef() const
uint32_t GetGroupID() const
bool IsScriptedProcess() const
void SetUserID(uint32_t uid)
bool GroupIDIsValid() const
ArchSpec & GetArchitecture()
lldb::ListenerSP m_shadow_listener_sp
bool MatchAllProcesses() const
bool NameMatches(const char *process_name) const
Return true iff the process name in this object matches process_name.
ProcessInstanceInfoMatch()=default
NameMatch m_name_match_type
NameMatch GetNameMatchType() const
ProcessInstanceInfoMatch(const char *process_name, NameMatch process_name_match_type)
const ProcessInstanceInfo & GetProcessInfo() const
bool Matches(const ProcessInstanceInfo &proc_info) const
bool GetMatchAllUsers() const
void SetNameMatchType(NameMatch name_match_type)
void SetMatchAllUsers(bool b)
ProcessInstanceInfo & GetProcessInfo()
bool ProcessIDsMatch(const ProcessInstanceInfo &proc_info) const
Return true iff the process ID and parent process IDs in this object match the ones in proc_info.
ProcessInstanceInfo m_match_info
bool UserIDsMatch(const ProcessInstanceInfo &proc_info) const
Return true iff the (both effective and real) user and group IDs in this object match the ones in pro...
bool ArchitectureMatches(const ArchSpec &arch_spec) const
Return true iff the architecture in this object matches arch_spec.
struct timespec m_cumulative_user_time
uint32_t GetEffectiveUserID() const
lldb::pid_t GetProcessSessionID() const
ProcessInstanceInfo(const char *name, const ArchSpec &arch, lldb::pid_t pid)
lldb::pid_t m_process_group_id
void SetUserTime(struct timespec utime)
struct timespec m_cumulative_system_time
void SetEffectiveGroupID(uint32_t gid)
bool ProcessSessionIDIsValid() const
lldb::pid_t m_process_session_id
static void DumpTableHeader(Stream &s, bool show_args, bool verbose)
struct timespec GetSystemTime() const
bool CumulativeSystemTimeIsValid() const
lldb::pid_t GetParentProcessID() const
struct timespec GetUserTime() const
std::optional< int8_t > GetPriorityValue() const
struct timespec GetCumulativeSystemTime() const
bool ParentProcessIDIsValid() const
void SetIsZombie(bool is_zombie)
bool SystemTimeIsValid() const
void SetCumulativeUserTime(struct timespec cutime)
void SetPriorityValue(int8_t priority_value)
void SetProcessGroupID(lldb::pid_t pgrp)
bool CumulativeUserTimeIsValid() const
void SetProcessSessionID(lldb::pid_t session)
void SetCumulativeSystemTime(struct timespec cstime)
struct timespec m_system_time
uint32_t GetEffectiveGroupID() const
std::optional< bool > IsZombie() const
bool EffectiveUserIDIsValid() const
struct timespec GetCumulativeUserTime() const
void SetSystemTime(struct timespec stime)
bool EffectiveGroupIDIsValid() const
void Dump(Stream &s, UserIDResolver &resolver) const
lldb::pid_t GetProcessGroupID() const
std::optional< int8_t > m_priority_value
bool ProcessGroupIDIsValid() const
ProcessInstanceInfo()=default
void DumpAsTableRow(Stream &s, UserIDResolver &resolver, bool show_args, bool verbose) const
struct timespec m_user_time
void SetParentProcessID(lldb::pid_t pid)
std::optional< bool > m_zombie
bool UserTimeIsValid() const
void SetEffectiveUserID(uint32_t uid)
A stream class that can stream formatted output to a file.
An abstract interface for things that know how to map numeric user/group IDs into names.
#define LLDB_INVALID_PROCESS_ID
A class that represents a running process on the host machine.
std::vector< ProcessInstanceInfo > ProcessInstanceInfoList
std::shared_ptr< lldb_private::ScriptedMetadata > ScriptedMetadataSP
std::shared_ptr< lldb_private::Listener > ListenerSP