1 //===-- SWIG Interface for SBLaunchInfo--------------------------*- 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 how a target or program should be launched." 13 ) SBLaunchInfo; 14 class SBLaunchInfo 15 { 16 public: 17 SBLaunchInfo (const char **argv); 18 19 pid_t 20 GetProcessID(); 21 22 uint32_t 23 GetUserID(); 24 25 uint32_t 26 GetGroupID(); 27 28 bool 29 UserIDIsValid (); 30 31 bool 32 GroupIDIsValid (); 33 34 void 35 SetUserID (uint32_t uid); 36 37 void 38 SetGroupID (uint32_t gid); 39 40 lldb::SBFileSpec 41 GetExecutableFile (); 42 43 void 44 SetExecutableFile (lldb::SBFileSpec exe_file, bool add_as_first_arg); 45 46 lldb::SBListener 47 GetListener (); 48 49 void 50 SetListener (lldb::SBListener &listener); 51 52 uint32_t 53 GetNumArguments (); 54 55 const char * 56 GetArgumentAtIndex (uint32_t idx); 57 58 void 59 SetArguments (const char **argv, bool append); 60 61 uint32_t 62 GetNumEnvironmentEntries (); 63 64 const char * 65 GetEnvironmentEntryAtIndex (uint32_t idx); 66 67 void 68 SetEnvironmentEntries (const char **envp, bool append); 69 70 void 71 SetEnvironment(const SBEnvironment &env, bool append); 72 73 SBEnvironment 74 GetEnvironment(); 75 76 void 77 Clear (); 78 79 const char * 80 GetWorkingDirectory () const; 81 82 void 83 SetWorkingDirectory (const char *working_dir); 84 85 uint32_t 86 GetLaunchFlags (); 87 88 void 89 SetLaunchFlags (uint32_t flags); 90 91 const char * 92 GetProcessPluginName (); 93 94 void 95 SetProcessPluginName (const char *plugin_name); 96 97 const char * 98 GetShell (); 99 100 void 101 SetShell (const char * path); 102 103 bool 104 GetShellExpandArguments (); 105 106 void 107 SetShellExpandArguments (bool expand); 108 109 uint32_t 110 GetResumeCount (); 111 112 void 113 SetResumeCount (uint32_t c); 114 115 bool 116 AddCloseFileAction (int fd); 117 118 bool 119 AddDuplicateFileAction (int fd, int dup_fd); 120 121 bool 122 AddOpenFileAction (int fd, const char *path, bool read, bool write); 123 124 bool 125 AddSuppressFileAction (int fd, bool read, bool write); 126 127 void 128 SetLaunchEventData (const char *data); 129 130 const char * 131 GetLaunchEventData () const; 132 133 bool 134 GetDetachOnError() const; 135 136 void 137 SetDetachOnError(bool enable); 138 139 const char * 140 GetScriptedProcessClassName() const; 141 142 void SetScriptedProcessClassName(const char *class_name); 143 144 lldb::SBStructuredData 145 GetScriptedProcessDictionary() const; 146 147 void SetScriptedProcessDictionary(lldb::SBStructuredData dict); 148 }; 149 150 } // namespace lldb 151