gem5  v20.1.0.0
Public Member Functions | Private Types | Private Attributes | List of all members
Stats::MethodProxy< T, V > Class Template Reference

A proxy similar to the FunctorProxy, but allows calling a method of a bound object, instead of a global free-standing function. More...

#include <statistics.hh>

Inheritance diagram for Stats::MethodProxy< T, V >:
Stats::ProxyInfo Stats::ScalarInfo Stats::Info

Public Member Functions

 MethodProxy (T *obj, MethodPointer meth)
 
Counter value () const
 
Result result () const
 
Result total () const
 
- Public Member Functions inherited from Stats::ProxyInfo
std::string str () const
 
size_type size () const
 
bool check () const
 Check that this stat has been set up properly and is ready for use. More...
 
void prepare ()
 Prepare the stat for dumping. More...
 
void reset ()
 Reset the stat to the default state. More...
 
bool zero () const
 
void visit (Output &visitor)
 Visitor entry for outputing statistics data. More...
 
- Public Member Functions inherited from Stats::Info
 Info ()
 
virtual ~Info ()
 
void setName (const std::string &name)
 Set the name of this statistic. More...
 
void setName (const Group *parent, const std::string &name)
 
void setSeparator (std::string _sep)
 
bool baseCheck () const
 
virtual void enable ()
 Enable the stat for use. More...
 

Private Types

typedef V(T::* MethodPointer) () const
 

Private Attributes

T * object
 
MethodPointer method
 

Additional Inherited Members

- Static Public Member Functions inherited from Stats::Info
static bool less (Info *stat1, Info *stat2)
 Checks if the first stat's name is alphabetically less than the second. More...
 
- Public Attributes inherited from Stats::Info
std::string name
 The name of the stat. More...
 
std::string desc
 The description of the stat. More...
 
Flags flags
 The formatting flags. More...
 
int precision
 The display precision. More...
 
const Infoprereq
 A pointer to a prerequisite Stat. More...
 
int id
 
const StorageParamsstorageParams
 
- Static Public Attributes inherited from Stats::Info
static std::string separatorString = "::"
 The separator string used for vectors, dist, etc. More...
 
static int id_count = 0
 A unique stat ID for each stat in the simulator. More...
 

Detailed Description

template<class T, class V>
class Stats::MethodProxy< T, V >

A proxy similar to the FunctorProxy, but allows calling a method of a bound object, instead of a global free-standing function.

Definition at line 833 of file statistics.hh.

Member Typedef Documentation

◆ MethodPointer

template<class T , class V >
typedef V(T::* Stats::MethodProxy< T, V >::MethodPointer) () const
private

Definition at line 837 of file statistics.hh.

Constructor & Destructor Documentation

◆ MethodProxy()

template<class T , class V >
Stats::MethodProxy< T, V >::MethodProxy ( T *  obj,
MethodPointer  meth 
)
inline

Definition at line 841 of file statistics.hh.

Member Function Documentation

◆ result()

template<class T , class V >
Result Stats::MethodProxy< T, V >::result ( ) const
inlinevirtual

◆ total()

template<class T , class V >
Result Stats::MethodProxy< T, V >::total ( ) const
inlinevirtual

◆ value()

template<class T , class V >
Counter Stats::MethodProxy< T, V >::value ( ) const
inlinevirtual

Member Data Documentation

◆ method

template<class T , class V >
MethodPointer Stats::MethodProxy< T, V >::method
private

◆ object

template<class T , class V >
T* Stats::MethodProxy< T, V >::object
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