gem5  v20.1.0.0
Public Member Functions | Private Attributes | List of all members
ProbePointArg< Arg > Class Template Reference

ProbePointArg generates a point for the class of Arg. More...

#include <thermal_domain.hh>

Public Member Functions

 ProbePointArg (ProbeManager *manager, std::string name)
 
void addListener (ProbeListener *l)
 adds a ProbeListener to this ProbePoints notify list. More...
 
void removeListener (ProbeListener *l)
 remove a ProbeListener from this ProbePoints notify list. More...
 
void notify (const Arg &arg)
 called at the ProbePoint call site, passes arg to each listener. More...
 

Private Attributes

std::vector< ProbeListenerArgBase< Arg > * > listeners
 The attached listeners. More...
 

Detailed Description

template<typename Arg>
class ProbePointArg< Arg >

ProbePointArg generates a point for the class of Arg.

As ProbePointArgs talk directly to ProbeListenerArgs of the same type, we can store the vector of ProbeListeners as their Arg type (and not as base type).

Methods are provided to addListener, removeListener and notify.

Definition at line 50 of file thermal_domain.hh.

Constructor & Destructor Documentation

◆ ProbePointArg()

template<typename Arg >
ProbePointArg< Arg >::ProbePointArg ( ProbeManager manager,
std::string  name 
)
inline

Definition at line 255 of file probe.hh.

Member Function Documentation

◆ addListener()

template<typename Arg >
void ProbePointArg< Arg >::addListener ( ProbeListener l)
inline

adds a ProbeListener to this ProbePoints notify list.

Parameters
lthe ProbeListener to add to the notify list.

Definition at line 264 of file probe.hh.

◆ notify()

template<typename Arg >
void ProbePointArg< Arg >::notify ( const Arg &  arg)
inline

◆ removeListener()

template<typename Arg >
void ProbePointArg< Arg >::removeListener ( ProbeListener l)
inline

remove a ProbeListener from this ProbePoints notify list.

Parameters
lthe ProbeListener to remove from the notify list.

Definition at line 276 of file probe.hh.

Member Data Documentation

◆ listeners

template<typename Arg >
std::vector<ProbeListenerArgBase<Arg> *> ProbePointArg< Arg >::listeners
private

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

Generated on Wed Sep 30 2020 14:02:29 for gem5 by doxygen 1.8.17