gem5  v22.1.0.0
Public Types | Public Member Functions | Protected Member Functions | List of all members
gem5::statistics::DataWrap< Derived, InfoProxyType > Class Template Reference

#include <statistics.hh>

Inheritance diagram for gem5::statistics::DataWrap< Derived, InfoProxyType >:
gem5::statistics::InfoAccess gem5::statistics::DataWrapVec< Derived, VectorInfoProxy > gem5::statistics::DataWrapVec< Derived, VectorDistInfoProxy > gem5::statistics::DataWrapVec< Formula, FormulaInfoProxy > gem5::statistics::DistBase< Histogram, HistStor > gem5::statistics::DistBase< AverageDeviation, AvgSampleStor > gem5::statistics::DistBase< StandardDeviation, SampleStor > gem5::statistics::DistBase< Distribution, DistStor > gem5::statistics::ScalarBase< Average, AvgStor > gem5::statistics::ScalarBase< Scalar, StatStor > gem5::statistics::SparseHistBase< SparseHistogram, SparseHistStor > gem5::statistics::ValueBase< Value > gem5::statistics::DataWrapVec< Derived, InfoProxyType >

Public Types

typedef InfoProxyType< Derived > Info
 

Public Member Functions

const Infoinfo () const
 
 DataWrap ()=delete
 
 DataWrap (const DataWrap &)=delete
 
DataWrapoperator= (const DataWrap &)=delete
 
 DataWrap (Group *parent, const char *name, const units::Base *unit, const char *desc)
 
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 & unit (const units::Base *_unit)
 Set the unit of the stat. More...
 
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...
 
template<class Stat >
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 gem5::statistics::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...
 

Protected Member Functions

Derived & self ()
 
Infoinfo ()
 
- Protected Member Functions inherited from gem5::statistics::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...
 
bool newStyleStats () const
 Check if the info is new style stats. More...
 

Detailed Description

template<class Derived, template< class > class InfoProxyType>
class gem5::statistics::DataWrap< Derived, InfoProxyType >

Definition at line 228 of file statistics.hh.

Member Typedef Documentation

◆ Info

template<class Derived , template< class > class InfoProxyType>
typedef InfoProxyType<Derived> gem5::statistics::DataWrap< Derived, InfoProxyType >::Info

Definition at line 231 of file statistics.hh.

Constructor & Destructor Documentation

◆ DataWrap() [1/3]

template<class Derived , template< class > class InfoProxyType>
gem5::statistics::DataWrap< Derived, InfoProxyType >::DataWrap ( )
delete

◆ DataWrap() [2/3]

template<class Derived , template< class > class InfoProxyType>
gem5::statistics::DataWrap< Derived, InfoProxyType >::DataWrap ( const DataWrap< Derived, InfoProxyType > &  )
delete

◆ DataWrap() [3/3]

template<class Derived , template< class > class InfoProxyType>
gem5::statistics::DataWrap< Derived, InfoProxyType >::DataWrap ( Group parent,
const char *  name,
const units::Base unit,
const char *  desc 
)
inline

Member Function Documentation

◆ desc()

template<class Derived , template< class > class InfoProxyType>
Derived& gem5::statistics::DataWrap< Derived, InfoProxyType >::desc ( const std::string &  _desc)
inline

Set the description and marks this stat to print at the end of simulation.

Parameters
descThe new description.
Returns
A reference to this stat.

Definition at line 334 of file statistics.hh.

References gem5::statistics::DataWrap< Derived, InfoProxyType >::info().

Referenced by gem5::statistics::DataWrap< Derived, InfoProxyType >::DataWrap(), and gem5::statistics::DataWrapVec< Derived, InfoProxyType >::subdesc().

◆ flags()

template<class Derived , template< class > class InfoProxyType>
Derived& gem5::statistics::DataWrap< Derived, InfoProxyType >::flags ( Flags  _flags)
inline

Set the flags and marks this stat to print at the end of simulation.

Parameters
fThe new flags.
Returns
A reference to this stat.

Definition at line 358 of file statistics.hh.

References gem5::statistics::DataWrap< Derived, InfoProxyType >::info().

Referenced by gem5::ruby::CacheMemory::CacheMemoryStats::CacheMemoryStats(), gem5::o3::Commit::CommitStats::CommitStats(), gem5::ComputeUnit::ComputeUnitStats::ComputeUnitStats(), gem5::ruby::AbstractController::ControllerStats::ControllerStats(), gem5::CopyEngine::CopyEngineStats::CopyEngineStats(), gem5::o3::CPU::CPUStats::CPUStats(), gem5::SimpleExecContext::ExecContextStats::ExecContextStats(), gem5::o3::IEW::IEWStats::ExecutedInstStats::ExecutedInstStats(), gem5::minor::Fetch2::Fetch2Stats::Fetch2Stats(), gem5::o3::Fetch::FetchStatGroup::FetchStatGroup(), gem5::FlashDevice::FlashDeviceStats::FlashDeviceStats(), gem5::HDLcd::HDLcdStats::HDLcdStats(), gem5::ruby::HTMSequencer::HTMSequencer(), gem5::o3::IEW::IEWStats::IEWStats(), gem5::o3::InstructionQueue::IQIOStats::IQIOStats(), gem5::o3::InstructionQueue::IQStats::IQStats(), gem5::o3::LSQUnit::LSQUnitStats::LSQUnitStats(), gem5::MemFootprintProbe::MemFootprintProbeStats::MemFootprintProbeStats(), gem5::ruby::MessageBuffer::MessageBuffer(), gem5::minor::MinorStats::MinorStats(), gem5::CommMonitor::MonitorStats::MonitorStats(), gem5::ruby::Profiler::ProfilerStats::ProfilerStats(), gem5::ruby::Switch::regStats(), gem5::BaseXBar::regStats(), gem5::o3::Rename::RenameStats::RenameStats(), gem5::Shader::ShaderStats::ShaderStats(), gem5::SMMUv3BaseCache::SMMUv3BaseCacheStats::SMMUv3BaseCacheStats(), gem5::SMMUv3::SMMUv3Stats::SMMUv3Stats(), gem5::StackDistProbe::StackDistProbeStats::StackDistProbeStats(), gem5::prefetch::Base::StatGroup::StatGroup(), gem5::ArmISA::TableWalker::TableWalkerStats::TableWalkerStats(), gem5::ArmISA::TLB::TlbStats::TlbStats(), gem5::UFSHostDevice::UFSHostDeviceStats::UFSHostDeviceStats(), and gem5::WalkCache::WalkCacheStats::WalkCacheStats().

◆ info() [1/2]

template<class Derived , template< class > class InfoProxyType>
Info* gem5::statistics::DataWrap< Derived, InfoProxyType >::info ( )
inlineprotected

◆ info() [2/2]

template<class Derived , template< class > class InfoProxyType>
const Info* gem5::statistics::DataWrap< Derived, InfoProxyType >::info ( ) const
inline

Definition at line 245 of file statistics.hh.

References gem5::statistics::InfoAccess::info().

◆ name() [1/2]

template<class Derived , template< class > class InfoProxyType>
const std::string& gem5::statistics::DataWrap< Derived, InfoProxyType >::name ( ) const
inline

◆ name() [2/2]

template<class Derived , template< class > class InfoProxyType>
Derived& gem5::statistics::DataWrap< Derived, InfoProxyType >::name ( const std::string &  name)
inline

◆ operator=()

template<class Derived , template< class > class InfoProxyType>
DataWrap& gem5::statistics::DataWrap< Derived, InfoProxyType >::operator= ( const DataWrap< Derived, InfoProxyType > &  )
delete

◆ precision()

template<class Derived , template< class > class InfoProxyType>
Derived& gem5::statistics::DataWrap< Derived, InfoProxyType >::precision ( int  _precision)
inline

◆ prereq()

template<class Derived , template< class > class InfoProxyType>
template<class Stat >
Derived& gem5::statistics::DataWrap< Derived, InfoProxyType >::prereq ( const Stat &  prereq)
inline

◆ self()

template<class Derived , template< class > class InfoProxyType>
Derived& gem5::statistics::DataWrap< Derived, InfoProxyType >::self ( )
inlineprotected

Definition at line 234 of file statistics.hh.

◆ setSeparator() [1/2]

template<class Derived , template< class > class InfoProxyType>
const std::string& gem5::statistics::DataWrap< Derived, InfoProxyType >::setSeparator ( ) const
inline

◆ setSeparator() [2/2]

template<class Derived , template< class > class InfoProxyType>
Derived& gem5::statistics::DataWrap< Derived, InfoProxyType >::setSeparator ( const std::string &  _sep)
inline

Set the character(s) used between the name and vector number on vectors, dist, etc.

Parameters
_sepThe new separator string
Returns
A reference to this stat.

Definition at line 305 of file statistics.hh.

References gem5::statistics::DataWrap< Derived, InfoProxyType >::info().

◆ unit()

template<class Derived , template< class > class InfoProxyType>
Derived& gem5::statistics::DataWrap< Derived, InfoProxyType >::unit ( const units::Base _unit)
inline

Set the unit of the stat.

Parameters
unitThe new unit.
Returns
A reference to this stat.

Definition at line 321 of file statistics.hh.

References gem5::statistics::DataWrap< Derived, InfoProxyType >::info().

Referenced by gem5::statistics::DataWrap< Derived, InfoProxyType >::DataWrap().


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

Generated on Wed Dec 21 2022 10:24:26 for gem5 by doxygen 1.9.1