SST  15.1.0
StructuralSimulationToolkit
SST::Statistics::StatisticBase Class Referenceabstract

Forms the base class for statistics gathering within SST. More...

#include <statbase.h>

Inheritance diagram for SST::Statistics::StatisticBase:
SST::Statistics::Statistic< T > SST::Statistics::Statistic< void > SST::Statistics::Statistic< BinDataType > SST::Statistics::Statistic< double > SST::Statistics::Statistic< float > SST::Statistics::Statistic< int > SST::Statistics::Statistic< int32_t > SST::Statistics::Statistic< int64_t > SST::Statistics::Statistic< NumberBase > SST::Statistics::Statistic< std::tuple< Args... > > SST::Statistics::Statistic< uint32_t > SST::Statistics::Statistic< uint64_t >

Public Member Functions

void enable ()
 Enable Statistic for collections.
 
void disable ()
 Disable Statistic for collections.
 
virtual void clearStatisticData ()
 Inform the Statistic to clear its data.
 
virtual void resetCollectionCount ()
 Set the current collection count to 0.
 
virtual void incrementCollectionCount (uint64_t increment)
 Increment current collection count.
 
virtual void setCollectionCount (uint64_t new_count)
 Set the current collection count to a defined value.
 
virtual void setCollectionCountLimit (uint64_t new_limit)
 Set the collection count limit to a defined value.
 
void setFlagResetCountOnOutput (bool flag)
 Set the Reset Count On Output flag. More...
 
void setFlagClearDataOnOutput (bool flag)
 Set the Clear Data On Output flag. More...
 
void setFlagOutputAtEndOfSim (bool flag)
 Set the Output At End Of Sim flag. More...
 
void setPortModName (std::string &port, size_t index)
 Set port name if stat is owned by a port module Temporary field until a common base class for elements with stats is created.
 
const std::string getCompName () const
 Return the Component Name.
 
const std::string & getStatName () const
 Return the Statistic Name.
 
const std::string & getStatSubId () const
 Return the Statistic SubId.
 
const std::string getFullStatName () const
 Return the full Statistic name of component.stat_name.sub_id.
 
virtual std::string getELIName () const =0
 Return the ELI type of the statistic The ELI registration macro creates this function automatically for child classes.
 
virtual const std::string & getStatTypeName () const
 Return the Statistic type name.
 
const StatisticFieldInfo::fieldType_t & getStatDataType () const
 Return the Statistic data type.
 
const char * getStatDataTypeShortName () const
 Return the Statistic data type.
 
const char * getStatDataTypeFullName () const
 Return the Statistic data type.
 
BaseComponentgetComponent () const
 Return a pointer to the parent Component.
 
bool isEnabled () const
 Return the enable status of the Statistic.
 
bool getStartAtFlag ()
 Return the rate at which the statistic should be output. More...
 
void setStartAtFlag ()
 
void unsetStartAtFlag ()
 
bool getStopAtFlag ()
 Manage StopAt flag.
 
void setStopAtFlag ()
 
void unsetStopAtFlag ()
 
bool getOutputRateFlag ()
 Manage OutputRate flag.
 
void setOutputRateFlag ()
 
void unsetOutputRateFlag ()
 
SimTime_t getStartAtFactor ()
 
SimTime_t getStopAtFactor ()
 
SimTime_t getOutputRateFactor ()
 
uint64_t getCollectionCountLimit () const
 Return the collection count limit.
 
uint64_t getCollectionCount () const
 Return the current collection count.
 
bool getFlagResetCountOnOutput () const
 Return the ResetCountOnOutput flag value.
 
bool getFlagClearDataOnOutput () const
 Return the ClearDataOnOutput flag value.
 
bool getFlagOutputAtEndOfSim () const
 Return the OutputAtEndOfSim flag value.
 
bool isOutputPeriodic () const
 Return the collection mode that is registered.
 
bool isOutputEventBased () const
 
virtual bool isReady () const
 Indicate that the Statistic is Ready to be used.
 
virtual bool isNullStatistic () const
 Indicate if the Statistic is a NullStatistic.
 
virtual void serialize_order (SST::Core::Serialization::serializer &ser)
 Serialization.
 
void serializeStat (SST::Core::Serialization::serializer &ser)
 
BaseComponentdeserializeComponentPtr (SST::Core::Serialization::serializer &ser)
 

Static Public Member Functions

static const std::vector< ElementInfoParam > & ELI_getParams ()
 

Protected Member Functions

 StatisticBase (BaseComponent *comp, const std::string &stat_name, const std::string &stat_sub_id, Params &stat_params)
 Construct a StatisticBase. More...
 
void setStatisticDataType (const StatisticFieldInfo::fieldType_t data_type)
 Set the Statistic Data Type.
 
void setStatisticTypeName (const char *type_name)
 Set an optional Statistic Type Name (for output)
 

Friends

class SST::Statistics::StatisticProcessingEngine
 
class SST::Statistics::StatisticOutput
 
class SST::Statistics::StatisticGroup
 
class SST::Statistics::StatisticFieldsOutput
 
class SST::BaseComponent
 

Detailed Description

Forms the base class for statistics gathering within SST.

Statistics are gathered and processed into various (extensible) output forms. Statistics are expected to be named so that they can be located in the simulation output files.

Constructor & Destructor Documentation

◆ StatisticBase()

SST::Statistics::StatisticBase::StatisticBase ( BaseComponent comp,
const std::string &  stat_name,
const std::string &  stat_sub_id,
Params stat_params 
)
protected

Construct a StatisticBase.

Parameters
comp- Pointer to the parent constructor.
stat_name- Name of the statistic to be registered. This name must match the name in the ElementInfoStatistic.
stat_sub_id- Additional name of the statistic
stat_params- The parameters for this statistic

References SST::Params::find().

Member Function Documentation

◆ getStartAtFlag()

bool SST::Statistics::StatisticBase::getStartAtFlag ( )
inline

Return the rate at which the statistic should be output.

Manage StartAt flag

◆ setFlagClearDataOnOutput()

void SST::Statistics::StatisticBase::setFlagClearDataOnOutput ( bool  flag)
inline

Set the Clear Data On Output flag.

If Set, the data in the statistic will be cleared by calling clearStatisticData().

◆ setFlagOutputAtEndOfSim()

void SST::Statistics::StatisticBase::setFlagOutputAtEndOfSim ( bool  flag)
inline

Set the Output At End Of Sim flag.

If Set, the statistic will perform an output at the end of simulation.

◆ setFlagResetCountOnOutput()

void SST::Statistics::StatisticBase::setFlagResetCountOnOutput ( bool  flag)
inline

Set the Reset Count On Output flag.

If Set, the collection count will be reset when statistic is output.


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