]> CyberLeo.Net >> Repos - FreeBSD/FreeBSD.git/blob - contrib/llvm-project/lldb/bindings/interface/SBProcessInfo.i
Merge llvm, clang, compiler-rt, libc++, libunwind, lld, lldb and openmp
[FreeBSD/FreeBSD.git] / contrib / llvm-project / lldb / bindings / interface / SBProcessInfo.i
1 //===-- SWIG Interface for SBProcessInfo-------------------------*- C++ -*-===//
2 //
3 // Part of the LLVM Project, under the Apache License v2.0 with LLVM Exceptions.
4 // See https://llvm.org/LICENSE.txt for license information.
5 // SPDX-License-Identifier: Apache-2.0 WITH LLVM-exception
6 //
7 //===----------------------------------------------------------------------===//
8
9 namespace lldb {
10
11 %feature("docstring",
12 "Describes an existing process and any discoverable information that pertains to
13 that process."
14 ) SBProcessInfo;
15
16 class SBProcessInfo
17 {
18 public:
19     SBProcessInfo();
20
21     SBProcessInfo (const SBProcessInfo &rhs);
22
23     ~SBProcessInfo ();
24
25     bool
26     IsValid ();
27
28     explicit operator bool() const;
29
30     const char *
31     GetName ();
32
33     SBFileSpec
34     GetExecutableFile ();
35
36     lldb::pid_t
37     GetProcessID ();
38
39     uint32_t
40     GetUserID ();
41
42     uint32_t
43     GetGroupID ();
44
45     bool
46     UserIDIsValid ();
47
48     bool
49     GroupIDIsValid ();
50
51     uint32_t
52     GetEffectiveUserID ();
53
54     uint32_t
55     GetEffectiveGroupID ();
56
57     bool
58     EffectiveUserIDIsValid ();
59
60     bool
61     EffectiveGroupIDIsValid ();
62
63     lldb::pid_t
64     GetParentProcessID ();
65 };
66
67 } // namespace lldb