LLDB  mainline
HostProcessWindows.h
Go to the documentation of this file.
1 //===-- HostProcessWindows.h ------------------------------------*- 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 #ifndef lldb_Host_HostProcessWindows_h_
10 #define lldb_Host_HostProcessWindows_h_
11 
13 #include "lldb/lldb-types.h"
14 
15 namespace lldb_private {
16 
17 class FileSpec;
18 
20 public:
22  explicit HostProcessWindows(lldb::process_t process);
24 
25  void SetOwnsHandle(bool owns);
26 
27  Status Terminate() override;
28  Status GetMainModule(FileSpec &file_spec) const override;
29 
30  lldb::pid_t GetProcessId() const override;
31  bool IsRunning() const override;
32 
33  virtual llvm::Expected<HostThread>
35  bool monitor_signals) override;
36 
37 private:
38  static lldb::thread_result_t MonitorThread(void *thread_arg);
39 
40  void Close();
41 
43 };
44 }
45 
46 #endif
lldb_private::HostProcessWindows::Terminate
Status Terminate() override
Definition: HostProcessWindows.cpp:40
lldb_private::HostProcessWindows::GetProcessId
lldb::pid_t GetProcessId() const override
Definition: HostProcessWindows.cpp:69
lldb_private::Host::MonitorChildProcessCallback
std::function< bool(lldb::pid_t pid, bool exited, int signal, int status)> MonitorChildProcessCallback
Definition: Host.h:68
lldb_private::HostProcessWindows::MonitorThread
static lldb::thread_result_t MonitorThread(void *thread_arg)
Definition: HostProcessWindows.cpp:102
lldb_private::HostProcessWindows::IsRunning
bool IsRunning() const override
Definition: HostProcessWindows.cpp:73
lldb_private::HostProcessWindows::SetOwnsHandle
void SetOwnsHandle(bool owns)
Definition: HostProcessWindows.cpp:38
lldb_private::FileSpec
Definition: FileSpec.h:56
lldb_private::HostProcessWindows::HostProcessWindows
HostProcessWindows()
Definition: HostProcessWindows.cpp:30
HostNativeProcessBase.h
lldb_private::HostProcessWindows
Definition: HostProcessWindows.h:19
lldb_private::HostProcessWindows::Close
void Close()
Definition: HostProcessWindows.cpp:116
lldb_private::HostProcessWindows::StartMonitoring
virtual llvm::Expected< HostThread > StartMonitoring(const Host::MonitorChildProcessCallback &callback, bool monitor_signals) override
Definition: HostProcessWindows.cpp:84
lldb_private::HostProcessWindows::~HostProcessWindows
~HostProcessWindows()
Definition: HostProcessWindows.cpp:36
lldb_private::HostProcessWindows::GetMainModule
Status GetMainModule(FileSpec &file_spec) const override
Definition: HostProcessWindows.cpp:51
lldb-types.h
lldb_private::Status
Definition: Status.h:44
lldb_private::HostProcessWindows::m_owns_handle
bool m_owns_handle
Definition: HostProcessWindows.h:42
lldb::thread_result_t
void * thread_result_t
Definition: lldb-types.h:62
lldb::pid_t
uint64_t pid_t
Definition: lldb-types.h:85
lldb::process_t
uint64_t process_t
Definition: lldb-types.h:57
lldb_private
A class that represents a running process on the host machine.
Definition: SBCommandInterpreterRunOptions.h:16
lldb_private::HostNativeProcessBase
Definition: HostNativeProcessBase.h:21