gem5  v20.1.0.0
Public Member Functions | Private Attributes | List of all members
Stats::ValueBase< Derived > Class Template Reference

#include <statistics.hh>

Inheritance diagram for Stats::ValueBase< Derived >:
Stats::DataWrap< Derived, ScalarInfoProxy > Stats::InfoAccess

Public Member Functions

 ValueBase (Group *parent, const char *name, const char *desc)
 
 ~ValueBase ()
 
template<class T >
Derived & scalar (T &value)
 
template<class T >
Derived & functor (const T &func)
 
template<class T >
Derived & functor (T &func)
 
template<class T , class V >
Derived & method (T *obj, V(T::*method)() const)
 Extended functor that calls the specified method of the provided object. More...
 
Counter value ()
 
Result result () const
 
Result total () const
 
size_type size () const
 
std::string str () const
 
bool zero () const
 
bool check () const
 
void prepare ()
 
void reset ()
 
- Public Member Functions inherited from Stats::DataWrap< Derived, ScalarInfoProxy >
const Infoinfo () const
 
 DataWrap ()=delete
 
 DataWrap (const DataWrap &)=delete
 
 DataWrap (Group *parent, const char *name, const char *desc)
 
DataWrapoperator= (const DataWrap &)=delete
 
Derived & name (const std::string &name)
 Set the name and marks this stat to print at the end of simulation. More...
 
const std::string & name () const
 
Derived & setSeparator (const std::string &_sep)
 Set the character(s) used between the name and vector number on vectors, dist, etc. More...
 
const std::string & setSeparator () const
 
Derived & desc (const std::string &_desc)
 Set the description and marks this stat to print at the end of simulation. More...
 
Derived & precision (int _precision)
 Set the precision and marks this stat to print at the end of simulation. More...
 
Derived & flags (Flags _flags)
 Set the flags and marks this stat to print at the end of simulation. More...
 
Derived & prereq (const Stat &prereq)
 Set the prerequisite stat and marks this stat to print at the end of simulation. More...
 
- Public Member Functions inherited from Stats::InfoAccess
 InfoAccess ()
 
void reset ()
 Reset the stat to the default state. More...
 
bool zero () const
 
bool check () const
 Check that this stat has been set up properly and is ready for use. More...
 

Private Attributes

ProxyInfoproxy
 

Additional Inherited Members

- Public Types inherited from Stats::DataWrap< Derived, ScalarInfoProxy >
typedef ScalarInfoProxy< Derived > Info
 
- Protected Member Functions inherited from Stats::DataWrap< Derived, ScalarInfoProxy >
Derived & self ()
 
Infoinfo ()
 
- Protected Member Functions inherited from Stats::InfoAccess
void setInfo (Group *parent, Info *info)
 Set up an info class for this statistic. More...
 
void setParams (const StorageParams *params)
 Save Storage class parameters if any. More...
 
void setInit ()
 Save Storage class parameters if any. More...
 
Infoinfo ()
 Grab the information class for this statistic. More...
 
const Infoinfo () const
 Grab the information class for this statistic. More...
 

Detailed Description

template<class Derived>
class Stats::ValueBase< Derived >

Definition at line 848 of file statistics.hh.

Constructor & Destructor Documentation

◆ ValueBase()

template<class Derived >
Stats::ValueBase< Derived >::ValueBase ( Group parent,
const char *  name,
const char *  desc 
)
inline

Definition at line 854 of file statistics.hh.

◆ ~ValueBase()

template<class Derived >
Stats::ValueBase< Derived >::~ValueBase ( )
inline

Definition at line 860 of file statistics.hh.

Member Function Documentation

◆ check()

template<class Derived >
bool Stats::ValueBase< Derived >::check ( ) const
inline

Definition at line 912 of file statistics.hh.

◆ functor() [1/2]

template<class Derived >
template<class T >
Derived& Stats::ValueBase< Derived >::functor ( const T &  func)
inline

Definition at line 873 of file statistics.hh.

Referenced by Stats::Global::Global().

◆ functor() [2/2]

template<class Derived >
template<class T >
Derived& Stats::ValueBase< Derived >::functor ( T &  func)
inline

Definition at line 882 of file statistics.hh.

◆ method()

template<class Derived >
template<class T , class V >
Derived& Stats::ValueBase< Derived >::method ( T *  obj,
V(T::*)() const  method 
)
inline

Extended functor that calls the specified method of the provided object.

Parameters
objPointer to the object whose method should be called.
methodPointer of the function / method of the object.
Returns
Updated stats item.

Definition at line 898 of file statistics.hh.

Referenced by Stats::ValueBase< Value >::method(), PowerModelState::regStats(), ThermalDomain::regStats(), PowerModel::regStats(), and VoltageDomain::VoltageDomainStats::VoltageDomainStats().

◆ prepare()

template<class Derived >
void Stats::ValueBase< Derived >::prepare ( )
inline

Definition at line 913 of file statistics.hh.

◆ reset()

template<class Derived >
void Stats::ValueBase< Derived >::reset ( )
inline

Definition at line 914 of file statistics.hh.

◆ result()

template<class Derived >
Result Stats::ValueBase< Derived >::result ( ) const
inline

Definition at line 906 of file statistics.hh.

◆ scalar()

template<class Derived >
template<class T >
Derived& Stats::ValueBase< Derived >::scalar ( T &  value)
inline

◆ size()

template<class Derived >
size_type Stats::ValueBase< Derived >::size ( ) const
inline

Definition at line 908 of file statistics.hh.

◆ str()

template<class Derived >
std::string Stats::ValueBase< Derived >::str ( ) const
inline

Definition at line 910 of file statistics.hh.

◆ total()

template<class Derived >
Result Stats::ValueBase< Derived >::total ( ) const
inline

Definition at line 907 of file statistics.hh.

◆ value()

template<class Derived >
Counter Stats::ValueBase< Derived >::value ( )
inline

◆ zero()

template<class Derived >
bool Stats::ValueBase< Derived >::zero ( ) const
inline

Definition at line 911 of file statistics.hh.

Member Data Documentation

◆ proxy

template<class Derived >
ProxyInfo* Stats::ValueBase< Derived >::proxy
private

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

Generated on Wed Sep 30 2020 14:03:12 for gem5 by doxygen 1.8.17