Monitoring System 0.1.0
System resource monitoring with pluggable collectors and alerting
Loading...
Searching...
No Matches
performance_monitor_facade Class Reference
Collaboration diagram for performance_monitor_facade:
Collaboration graph

Public Member Functions

 performance_monitor_facade (const std::string &name)
 
metrics_collector_interfaceas_metrics_collector ()
 
imonitor_interfaceas_imonitor ()
 
performance_monitor_implimpl ()
 

Private Attributes

std::shared_ptr< performance_monitor_implimpl_
 
std::shared_ptr< metrics_collector_adaptermetrics_adapter_
 
std::shared_ptr< imonitor_adapterimonitor_adapter_
 

Detailed Description

Examples
facade_adapter_poc.cpp.

Definition at line 168 of file facade_adapter_poc.cpp.

Constructor & Destructor Documentation

◆ performance_monitor_facade()

performance_monitor_facade::performance_monitor_facade ( const std::string & name)
inlineexplicit
Examples
facade_adapter_poc.cpp.

Definition at line 170 of file facade_adapter_poc.cpp.

170 {
171 // Create core implementation
172 impl_ = std::make_shared<performance_monitor_impl>(name);
173
174 // Create adapters
175 metrics_adapter_ = std::make_shared<metrics_collector_adapter>(impl_);
176 imonitor_adapter_ = std::make_shared<imonitor_adapter>(impl_);
177 }
std::shared_ptr< performance_monitor_impl > impl_
std::shared_ptr< imonitor_adapter > imonitor_adapter_
std::shared_ptr< metrics_collector_adapter > metrics_adapter_

References imonitor_adapter_, impl_, and metrics_adapter_.

Member Function Documentation

◆ as_imonitor()

imonitor_interface & performance_monitor_facade::as_imonitor ( )
inline
Examples
facade_adapter_poc.cpp.

Definition at line 184 of file facade_adapter_poc.cpp.

184 {
185 return *imonitor_adapter_;
186 }

References imonitor_adapter_.

Referenced by benchmark_overhead(), and demonstrate_new_approach().

Here is the caller graph for this function:

◆ as_metrics_collector()

metrics_collector_interface & performance_monitor_facade::as_metrics_collector ( )
inline
Examples
facade_adapter_poc.cpp.

Definition at line 180 of file facade_adapter_poc.cpp.

180 {
181 return *metrics_adapter_;
182 }

References metrics_adapter_.

Referenced by demonstrate_new_approach().

Here is the caller graph for this function:

◆ impl()

performance_monitor_impl & performance_monitor_facade::impl ( )
inline
Examples
facade_adapter_poc.cpp.

Definition at line 189 of file facade_adapter_poc.cpp.

189 {
190 return *impl_;
191 }

References impl_.

Referenced by demonstrate_new_approach().

Here is the caller graph for this function:

Member Data Documentation

◆ imonitor_adapter_

std::shared_ptr<imonitor_adapter> performance_monitor_facade::imonitor_adapter_
private
Examples
facade_adapter_poc.cpp.

Definition at line 196 of file facade_adapter_poc.cpp.

Referenced by as_imonitor(), and performance_monitor_facade().

◆ impl_

std::shared_ptr<performance_monitor_impl> performance_monitor_facade::impl_
private
Examples
facade_adapter_poc.cpp.

Definition at line 194 of file facade_adapter_poc.cpp.

Referenced by impl(), and performance_monitor_facade().

◆ metrics_adapter_

std::shared_ptr<metrics_collector_adapter> performance_monitor_facade::metrics_adapter_
private

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