1//===-- HostProcessPosix.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_POSIX_HOSTPROCESSPOSIX_H 10#define LLDB_HOST_POSIX_HOSTPROCESSPOSIX_H 11 12#include "lldb/Host/HostNativeProcessBase.h" 13#include "lldb/Utility/Status.h" 14#include "lldb/lldb-types.h" 15 16namespace lldb_private { 17 18class FileSpec; 19 20class HostProcessPosix : public HostNativeProcessBase { 21public: 22 HostProcessPosix(); 23 HostProcessPosix(lldb::process_t process); 24 ~HostProcessPosix() override; 25 26 virtual Status Signal(int signo) const; 27 static Status Signal(lldb::process_t process, int signo); 28 29 Status Terminate() override; 30 31 lldb::pid_t GetProcessId() const override; 32 bool IsRunning() const override; 33 34 llvm::Expected<HostThread> 35 StartMonitoring(const Host::MonitorChildProcessCallback &callback) override; 36}; 37 38} // namespace lldb_private 39 40#endif // LLDB_HOST_POSIX_HOSTPROCESSPOSIX_H 41