gem5  v20.0.0.2
All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Modules Pages
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 (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 829 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 835 of file statistics.hh.

◆ ~ValueBase()

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

Definition at line 841 of file statistics.hh.

Member Function Documentation

◆ check()

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

Definition at line 884 of file statistics.hh.

◆ functor()

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

Definition at line 854 of file statistics.hh.

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

◆ 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 870 of file statistics.hh.

Referenced by PowerModelState::regStats(), ThermalDomain::regStats(), PowerModel::regStats(), and VoltageDomain::VoltageDomainStats::VoltageDomainStats().

◆ prepare()

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

Definition at line 885 of file statistics.hh.

◆ reset()

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

Definition at line 886 of file statistics.hh.

◆ result()

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

Definition at line 878 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 880 of file statistics.hh.

◆ str()

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

Definition at line 882 of file statistics.hh.

◆ total()

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

Definition at line 879 of file statistics.hh.

◆ value()

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

Definition at line 877 of file statistics.hh.

Referenced by CommMonitor::samplePeriodic().

◆ zero()

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

Definition at line 883 of file statistics.hh.

Member Data Documentation

◆ proxy

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

Definition at line 832 of file statistics.hh.


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

Generated on Mon Jun 8 2020 15:46:04 for gem5 by doxygen 1.8.13