ChampSim
champsim::msl::base_fwcounter< val_type, MAXVAL, MINVAL > Class Template Reference

#include <fwcounter.h>

Public Member Functions

 base_fwcounter ()
 
 base_fwcounter (val_type value)
 
template<typename Numeric >
base_fwcounter< val_type, MAXVAL, MINVAL > & operator= (Numeric)
 
base_fwcounter< val_type, MAXVAL, MINVAL > & operator++ ()
 
base_fwcounter< val_type, MAXVAL, MINVAL > operator++ (int)
 
base_fwcounter< val_type, MAXVAL, MINVAL > & operator-- ()
 
base_fwcounter< val_type, MAXVAL, MINVAL > operator-- (int)
 
base_fwcounter< val_type, MAXVAL, MINVAL > & operator+= (base_fwcounter< val_type, MAXVAL, MINVAL >)
 
base_fwcounter< val_type, MAXVAL, MINVAL > & operator-= (base_fwcounter< val_type, MAXVAL, MINVAL >)
 
base_fwcounter< val_type, MAXVAL, MINVAL > & operator*= (base_fwcounter< val_type, MAXVAL, MINVAL >)
 
base_fwcounter< val_type, MAXVAL, MINVAL > & operator/= (base_fwcounter< val_type, MAXVAL, MINVAL >)
 
template<typename Numeric >
base_fwcounter< val_type, MAXVAL, MINVAL > & operator+= (Numeric)
 
template<typename Numeric >
base_fwcounter< val_type, MAXVAL, MINVAL > & operator-= (Numeric)
 
template<typename Numeric >
base_fwcounter< val_type, MAXVAL, MINVAL > & operator*= (Numeric)
 
template<typename Numeric >
base_fwcounter< val_type, MAXVAL, MINVAL > & operator/= (Numeric)
 
bool is_max () const
 
bool is_min () const
 
val_type value () const
 

Static Public Attributes

constexpr static val_type minimum = MINVAL
 
constexpr static val_type maximum = MAXVAL
 

Static Protected Member Functions

static val_type clamp (val_type val)
 

Protected Attributes

val_type _value {}
 

Constructor & Destructor Documentation

◆ base_fwcounter() [1/2]

template<typename val_type , val_type MAXVAL, val_type MINVAL>
champsim::msl::base_fwcounter< val_type, MAXVAL, MINVAL >::base_fwcounter ( )
inline

◆ base_fwcounter() [2/2]

template<typename val_type , val_type MAXVAL, val_type MINVAL>
champsim::msl::base_fwcounter< val_type, MAXVAL, MINVAL >::base_fwcounter ( val_type  value)
inlineexplicit

Member Function Documentation

◆ clamp()

template<typename val_type , val_type MAXVAL, val_type MINVAL>
static val_type champsim::msl::base_fwcounter< val_type, MAXVAL, MINVAL >::clamp ( val_type  val)
inlinestaticprotected

◆ is_max()

template<typename val_type , val_type MAXVAL, val_type MINVAL>
bool champsim::msl::base_fwcounter< val_type, MAXVAL, MINVAL >::is_max ( ) const
inline

◆ is_min()

template<typename val_type , val_type MAXVAL, val_type MINVAL>
bool champsim::msl::base_fwcounter< val_type, MAXVAL, MINVAL >::is_min ( ) const
inline

◆ operator*=() [1/2]

template<typename val_type , val_type MAXVAL, val_type MINVAL>
base_fwcounter<val_type, MAXVAL, MINVAL>& champsim::msl::base_fwcounter< val_type, MAXVAL, MINVAL >::operator*= ( base_fwcounter< val_type, MAXVAL, MINVAL >  )

◆ operator*=() [2/2]

template<typename val_type , val_type MAXVAL, val_type MINVAL>
template<typename Numeric >
base_fwcounter< val_type, MAXVAL, MINVAL > & champsim::msl::base_fwcounter< val_type, MAXVAL, MINVAL >::operator*= ( Numeric  rhs)

◆ operator++() [1/2]

template<typename val_type , val_type MAXVAL, val_type MINVAL>
base_fwcounter< val_type, MAXVAL, MINVAL > & champsim::msl::base_fwcounter< val_type, MAXVAL, MINVAL >::operator++

◆ operator++() [2/2]

template<typename val_type , val_type MAXVAL, val_type MINVAL>
base_fwcounter< val_type, MAXVAL, MINVAL > champsim::msl::base_fwcounter< val_type, MAXVAL, MINVAL >::operator++ ( int  )

◆ operator+=() [1/2]

template<typename val_type , val_type MAXVAL, val_type MINVAL>
base_fwcounter< val_type, MAXVAL, MINVAL > & champsim::msl::base_fwcounter< val_type, MAXVAL, MINVAL >::operator+= ( base_fwcounter< val_type, MAXVAL, MINVAL >  rhs)

◆ operator+=() [2/2]

template<typename val_type , val_type MAXVAL, val_type MINVAL>
template<typename Numeric >
base_fwcounter< val_type, MAXVAL, MINVAL > & champsim::msl::base_fwcounter< val_type, MAXVAL, MINVAL >::operator+= ( Numeric  rhs)

◆ operator--() [1/2]

template<typename val_type , val_type MAXVAL, val_type MINVAL>
base_fwcounter< val_type, MAXVAL, MINVAL > & champsim::msl::base_fwcounter< val_type, MAXVAL, MINVAL >::operator--

◆ operator--() [2/2]

template<typename val_type , val_type MAXVAL, val_type MINVAL>
base_fwcounter< val_type, MAXVAL, MINVAL > champsim::msl::base_fwcounter< val_type, MAXVAL, MINVAL >::operator-- ( int  )

◆ operator-=() [1/2]

template<typename val_type , val_type MAXVAL, val_type MINVAL>
base_fwcounter< val_type, MAXVAL, MINVAL > & champsim::msl::base_fwcounter< val_type, MAXVAL, MINVAL >::operator-= ( base_fwcounter< val_type, MAXVAL, MINVAL >  rhs)

◆ operator-=() [2/2]

template<typename val_type , val_type MAXVAL, val_type MINVAL>
template<typename Numeric >
base_fwcounter< val_type, MAXVAL, MINVAL > & champsim::msl::base_fwcounter< val_type, MAXVAL, MINVAL >::operator-= ( Numeric  rhs)

◆ operator/=() [1/2]

template<typename val_type , val_type MAXVAL, val_type MINVAL>
base_fwcounter<val_type, MAXVAL, MINVAL>& champsim::msl::base_fwcounter< val_type, MAXVAL, MINVAL >::operator/= ( base_fwcounter< val_type, MAXVAL, MINVAL >  )

◆ operator/=() [2/2]

template<typename val_type , val_type MAXVAL, val_type MINVAL>
template<typename Numeric >
base_fwcounter< val_type, MAXVAL, MINVAL > & champsim::msl::base_fwcounter< val_type, MAXVAL, MINVAL >::operator/= ( Numeric  rhs)

◆ operator=()

template<typename val_type , val_type MAXVAL, val_type MINVAL>
template<typename Numeric >
base_fwcounter< val_type, MAXVAL, MINVAL > & champsim::msl::base_fwcounter< val_type, MAXVAL, MINVAL >::operator= ( Numeric  rhs)

◆ value()

template<typename val_type , val_type MAXVAL, val_type MINVAL>
val_type champsim::msl::base_fwcounter< val_type, MAXVAL, MINVAL >::value ( ) const
inline

Member Data Documentation

◆ _value

template<typename val_type , val_type MAXVAL, val_type MINVAL>
val_type champsim::msl::base_fwcounter< val_type, MAXVAL, MINVAL >::_value {}
protected

◆ maximum

template<typename val_type , val_type MAXVAL, val_type MINVAL>
constexpr static val_type champsim::msl::base_fwcounter< val_type, MAXVAL, MINVAL >::maximum = MAXVAL
staticconstexpr

◆ minimum

template<typename val_type , val_type MAXVAL, val_type MINVAL>
constexpr static val_type champsim::msl::base_fwcounter< val_type, MAXVAL, MINVAL >::minimum = MINVAL
staticconstexpr

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