Android-cuttlefish cvd tool
Classes | Public Member Functions | Private Member Functions | Private Attributes | List of all members
cuttlefish::ProcessMonitor Class Reference

#include <process_monitor.h>

Collaboration diagram for cuttlefish::ProcessMonitor:
Collaboration graph
[legend]

Classes

class  Properties
 

Public Member Functions

 ProcessMonitor (Properties &&, const SharedFD &secure_env_fd)
 
Result< void > StartAndMonitorProcesses ()
 
Result< void > StopMonitoredProcesses ()
 
Result< void > SuspendMonitoredProcesses ()
 
Result< void > ResumeMonitoredProcesses ()
 

Private Member Functions

Result< void > StartSubprocesses (Properties &properties)
 
Result< void > MonitorRoutine ()
 
Result< void > ReadMonitorSocketLoop (std::atomic_bool &)
 
Result< void > SuspendHostProcessesImpl ()
 
Result< void > ResumeHostProcessesImpl ()
 

Private Attributes

Properties properties_
 
const SharedFD channel_to_secure_env_
 
pid_t monitor_
 
std::optional< transport::SharedFdChannelparent_channel_
 
std::optional< transport::SharedFdChannelchild_channel_
 
std::mutex properties_mutex_
 

Constructor & Destructor Documentation

◆ ProcessMonitor()

cuttlefish::ProcessMonitor::ProcessMonitor ( ProcessMonitor::Properties &&  properties,
const SharedFD secure_env_fd 
)

Member Function Documentation

◆ MonitorRoutine()

Result< void > cuttlefish::ProcessMonitor::MonitorRoutine ( )
private

◆ ReadMonitorSocketLoop()

Result< void > cuttlefish::ProcessMonitor::ReadMonitorSocketLoop ( std::atomic_bool &  running)
private

◆ ResumeHostProcessesImpl()

Result< void > cuttlefish::ProcessMonitor::ResumeHostProcessesImpl ( )
private

◆ ResumeMonitoredProcesses()

Result< void > cuttlefish::ProcessMonitor::ResumeMonitoredProcesses ( )

◆ StartAndMonitorProcesses()

Result< void > cuttlefish::ProcessMonitor::StartAndMonitorProcesses ( )

◆ StartSubprocesses()

Result< void > cuttlefish::ProcessMonitor::StartSubprocesses ( ProcessMonitor::Properties properties)
private

◆ StopMonitoredProcesses()

Result< void > cuttlefish::ProcessMonitor::StopMonitoredProcesses ( )

◆ SuspendHostProcessesImpl()

Result< void > cuttlefish::ProcessMonitor::SuspendHostProcessesImpl ( )
private

◆ SuspendMonitoredProcesses()

Result< void > cuttlefish::ProcessMonitor::SuspendMonitoredProcesses ( )

Member Data Documentation

◆ channel_to_secure_env_

const SharedFD cuttlefish::ProcessMonitor::channel_to_secure_env_
private

◆ child_channel_

std::optional<transport::SharedFdChannel> cuttlefish::ProcessMonitor::child_channel_
private

◆ monitor_

pid_t cuttlefish::ProcessMonitor::monitor_
private

◆ parent_channel_

std::optional<transport::SharedFdChannel> cuttlefish::ProcessMonitor::parent_channel_
private

◆ properties_

Properties cuttlefish::ProcessMonitor::properties_
private

◆ properties_mutex_

std::mutex cuttlefish::ProcessMonitor::properties_mutex_
private

The documentation for this class was generated from the following files: