Public Member Functions | Protected Member Functions | Protected Attributes | List of all members
Aws::DataFlow::MultiStatusConditionMonitor Class Reference

#include <status_monitor.h>

Inheritance diagram for Aws::DataFlow::MultiStatusConditionMonitor:
Inheritance graph
[legend]

Public Member Functions

void addStatusMonitor (std::shared_ptr< StatusMonitor > &status_monitor)
 
 MultiStatusConditionMonitor ()
 
 ~MultiStatusConditionMonitor () override=default
 
- Public Member Functions inherited from Aws::DataFlow::ThreadMonitor
void notify ()
 
void waitForWork ()
 
std::cv_status waitForWork (const std::chrono::microseconds &duration)
 
virtual ~ThreadMonitor ()=default
 

Protected Member Functions

bool hasWork () override
 
virtual void setStatus (const Status &status, StatusMonitor *status_monitor)
 

Protected Attributes

std::atomic< uint64_t > mask_ {}
 
MaskFactory mask_factory_
 
std::unordered_map< StatusMonitor *, uint64_t > status_monitors_
 
friend StatusMonitor
 

Detailed Description

Multi Status Condition Monitor listens to N StatusMonitors and determines whether to trigger wait for work based on the hasWork() function.

Definition at line 116 of file status_monitor.h.

Constructor & Destructor Documentation

Aws::DataFlow::MultiStatusConditionMonitor::MultiStatusConditionMonitor ( )
inline

Definition at line 118 of file status_monitor.h.

Aws::DataFlow::MultiStatusConditionMonitor::~MultiStatusConditionMonitor ( )
overridedefault

Member Function Documentation

void Aws::DataFlow::MultiStatusConditionMonitor::addStatusMonitor ( std::shared_ptr< StatusMonitor > &  status_monitor)

Definition at line 53 of file status_monitor.cpp.

bool Aws::DataFlow::MultiStatusConditionMonitor::hasWork ( )
overrideprotectedvirtual

Implements Aws::DataFlow::ThreadMonitor.

Definition at line 73 of file status_monitor.cpp.

void Aws::DataFlow::MultiStatusConditionMonitor::setStatus ( const Status status,
StatusMonitor status_monitor 
)
protectedvirtual

Definition at line 63 of file status_monitor.cpp.

Member Data Documentation

std::atomic<uint64_t> Aws::DataFlow::MultiStatusConditionMonitor::mask_ {}
protected

Definition at line 128 of file status_monitor.h.

MaskFactory Aws::DataFlow::MultiStatusConditionMonitor::mask_factory_
protected

Definition at line 127 of file status_monitor.h.

std::unordered_map<StatusMonitor*, uint64_t> Aws::DataFlow::MultiStatusConditionMonitor::status_monitors_
protected

Definition at line 129 of file status_monitor.h.

friend Aws::DataFlow::MultiStatusConditionMonitor::StatusMonitor
protected

Definition at line 124 of file status_monitor.h.


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


dataflow_lite
Author(s): AWS RoboMaker
autogenerated on Fri May 7 2021 02:18:22