xref: /openbsd-src/gnu/llvm/lldb/source/Host/common/HostProcess.cpp (revision f6aab3d83b51b91c24247ad2c2573574de475a82)
1dda28197Spatrick //===-- HostProcess.cpp ---------------------------------------------------===//
2061da546Spatrick //
3061da546Spatrick // Part of the LLVM Project, under the Apache License v2.0 with LLVM Exceptions.
4061da546Spatrick // See https://llvm.org/LICENSE.txt for license information.
5061da546Spatrick // SPDX-License-Identifier: Apache-2.0 WITH LLVM-exception
6061da546Spatrick //
7061da546Spatrick //===----------------------------------------------------------------------===//
8061da546Spatrick 
9061da546Spatrick #include "lldb/Host/HostProcess.h"
10061da546Spatrick #include "lldb/Host/HostNativeProcess.h"
11061da546Spatrick #include "lldb/Host/HostThread.h"
12061da546Spatrick 
13061da546Spatrick using namespace lldb;
14061da546Spatrick using namespace lldb_private;
15061da546Spatrick 
HostProcess()16061da546Spatrick HostProcess::HostProcess() : m_native_process(new HostNativeProcess) {}
17061da546Spatrick 
HostProcess(lldb::process_t process)18061da546Spatrick HostProcess::HostProcess(lldb::process_t process)
19061da546Spatrick     : m_native_process(new HostNativeProcess(process)) {}
20061da546Spatrick 
21be691f3bSpatrick HostProcess::~HostProcess() = default;
22061da546Spatrick 
Terminate()23061da546Spatrick Status HostProcess::Terminate() { return m_native_process->Terminate(); }
24061da546Spatrick 
GetProcessId() const25061da546Spatrick lldb::pid_t HostProcess::GetProcessId() const {
26061da546Spatrick   return m_native_process->GetProcessId();
27061da546Spatrick }
28061da546Spatrick 
IsRunning() const29061da546Spatrick bool HostProcess::IsRunning() const { return m_native_process->IsRunning(); }
30061da546Spatrick 
StartMonitoring(const Host::MonitorChildProcessCallback & callback)31*f6aab3d8Srobert llvm::Expected<HostThread> HostProcess::StartMonitoring(
32*f6aab3d8Srobert     const Host::MonitorChildProcessCallback &callback) {
33*f6aab3d8Srobert   return m_native_process->StartMonitoring(callback);
34061da546Spatrick }
35061da546Spatrick 
GetNativeProcess()36061da546Spatrick HostNativeProcessBase &HostProcess::GetNativeProcess() {
37061da546Spatrick   return *m_native_process;
38061da546Spatrick }
39061da546Spatrick 
GetNativeProcess() const40061da546Spatrick const HostNativeProcessBase &HostProcess::GetNativeProcess() const {
41061da546Spatrick   return *m_native_process;
42061da546Spatrick }
43