LLDB  mainline
HostNativeProcessBase.h
Go to the documentation of this file.
1 //===-- HostNativeProcessBase.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_HOSTNATIVEPROCESSBASE_H
10 #define LLDB_HOST_HOSTNATIVEPROCESSBASE_H
11 
12 #include "lldb/Host/HostProcess.h"
13 #include "lldb/Utility/Status.h"
14 #include "lldb/lldb-defines.h"
15 #include "lldb/lldb-types.h"
16 
17 namespace lldb_private {
18 
19 class HostThread;
20 
23  const HostNativeProcessBase &
24  operator=(const HostNativeProcessBase &) = delete;
25 
26 public:
29  : m_process(process) {}
30  virtual ~HostNativeProcessBase() = default;
31 
32  virtual Status Terminate() = 0;
33 
34  virtual lldb::pid_t GetProcessId() const = 0;
35  virtual bool IsRunning() const = 0;
36 
38 
39  virtual llvm::Expected<HostThread>
41 
42 protected:
44 };
45 }
46 
47 #endif
lldb_private::HostNativeProcessBase::HostNativeProcessBase
HostNativeProcessBase(lldb::process_t process)
Definition: HostNativeProcessBase.h:28
lldb_private::HostNativeProcessBase::HostNativeProcessBase
HostNativeProcessBase()
Definition: HostNativeProcessBase.h:27
lldb-defines.h
HostProcess.h
lldb_private::HostNativeProcessBase::operator=
const HostNativeProcessBase & operator=(const HostNativeProcessBase &)=delete
lldb_private::HostNativeProcessBase::~HostNativeProcessBase
virtual ~HostNativeProcessBase()=default
lldb_private::Host::MonitorChildProcessCallback
std::function< void(lldb::pid_t pid, int signal, int status)> MonitorChildProcessCallback
Definition: Host.h:69
LLDB_INVALID_PROCESS
#define LLDB_INVALID_PROCESS
Definition: lldb-types.h:78
lldb_private::HostNativeProcessBase::IsRunning
virtual bool IsRunning() const =0
lldb-types.h
lldb_private::Status
Definition: Status.h:44
lldb::pid_t
uint64_t pid_t
Definition: lldb-types.h:85
lldb_private::HostNativeProcessBase::GetProcessId
virtual lldb::pid_t GetProcessId() const =0
lldb::process_t
uint64_t process_t
Definition: lldb-types.h:57
lldb_private::HostNativeProcessBase::StartMonitoring
virtual llvm::Expected< HostThread > StartMonitoring(const Host::MonitorChildProcessCallback &callback)=0
Status.h
lldb_private
A class that represents a running process on the host machine.
Definition: SBCommandInterpreterRunOptions.h:16
lldb_private::HostNativeProcessBase::Terminate
virtual Status Terminate()=0
lldb_private::HostNativeProcessBase::GetSystemHandle
lldb::process_t GetSystemHandle() const
Definition: HostNativeProcessBase.h:37
lldb_private::HostNativeProcessBase
Definition: HostNativeProcessBase.h:21
lldb_private::HostNativeProcessBase::m_process
lldb::process_t m_process
Definition: HostNativeProcessBase.h:43