SST  7.2.0
StructuralSimulationToolkit
SST::Statistics::StatisticOutputJSON Class Reference

The class for statistics output to a JSON formatted file
More...

#include <statoutputjson.h>

Inheritance diagram for SST::Statistics::StatisticOutputJSON:
SST::Statistics::StatisticOutput SST::Module

Public Member Functions

 StatisticOutputJSON (Params &outputParameters)
 Construct a StatOutputJSON. More...
 
- Public Member Functions inherited from SST::Statistics::StatisticOutput
 StatisticOutput (Params &outputParameters)
 Construct a base StatisticOutput. More...
 
std::string & getStatisticOutputName ()
 Return the Statistic Output name.
 
ParamsgetOutputParameters ()
 Return the parameters for the StatisticOutput.
 
virtual bool acceptsGroups () const
 True if this StatOutput can handle StatisticGroups.
 
template<typename T >
fieldHandle_t registerField (const char *fieldName)
 Register a field to be output (templated function) More...
 
StatisticFieldInfogetRegisteredField (fieldHandle_t fieldHandle)
 Adjust the heirarchy of the fields (FUTURE SUPPORT) More...
 
template<typename T >
StatisticFieldInfogetRegisteredField (const char *statisticName, const char *fieldName)
 Return the information on a registered field via known names. More...
 
FieldInfoArray_t & getFieldInfoArray ()
 Return the array of registered field infos. More...
 
void outputField (fieldHandle_t fieldHandle, int32_t data)
 Output field data. More...
 
void outputField (fieldHandle_t fieldHandle, uint32_t data)
 
void outputField (fieldHandle_t fieldHandle, int64_t data)
 
void outputField (fieldHandle_t fieldHandle, uint64_t data)
 
void outputField (fieldHandle_t fieldHandle, float data)
 
void outputField (fieldHandle_t fieldHandle, double data)
 
const char * getFieldTypeShortName (fieldType_t type)
 Output field data. More...
 

Protected Member Functions

bool checkOutputParameters () override
 Perform a check of provided parameters. More...
 
void printUsage () override
 Print out usage for this Statistic Output.
 
void startOfSimulation () override
 Indicate to Statistic Output that simulation started. More...
 
void endOfSimulation () override
 Indicate to Statistic Output that simulation ended. More...
 
void implStartOutputEntries (StatisticBase *statistic) override
 Implementation function for the start of output. More...
 
void implStopOutputEntries () override
 Implementation function for the end of output. More...
 
void implOutputField (fieldHandle_t fieldHandle, int32_t data) override
 Implementation functions for output. More...
 
void implOutputField (fieldHandle_t fieldHandle, uint32_t data) override
 
void implOutputField (fieldHandle_t fieldHandle, int64_t data) override
 
void implOutputField (fieldHandle_t fieldHandle, uint64_t data) override
 
void implOutputField (fieldHandle_t fieldHandle, float data) override
 
void implOutputField (fieldHandle_t fieldHandle, double data) override
 
void printIndent ()
 
- Protected Member Functions inherited from SST::Statistics::StatisticOutput
virtual void implStartRegisterFields (StatisticBase *UNUSED(statistic))
 
virtual void implRegisteredField (fieldHandle_t UNUSED(fieldHandle))
 
virtual void implStopRegisterFields ()
 
virtual void implStartRegisterGroup (StatisticGroup *UNUSED(group))
 
virtual void implStopRegisterGroup ()
 
virtual void implStartOutputGroup (StatisticGroup *UNUSED(group))
 
virtual void implStopOutputGroup ()
 
void setStatisticOutputName (std::string name)
 
void lock ()
 
void unlock ()
 

Additional Inherited Members

- Public Types inherited from SST::Statistics::StatisticOutput
typedef StatisticFieldInfo::fieldType_t fieldType_t
 
typedef StatisticFieldInfo::fieldHandle_t fieldHandle_t
 
typedef std::vector< StatisticFieldInfo * > FieldInfoArray_t
 
typedef std::unordered_map< std::string, fieldHandle_t > FieldNameMap_t
 

Detailed Description

The class for statistics output to a JSON formatted file

Constructor & Destructor Documentation

◆ StatisticOutputJSON()

SST::Statistics::StatisticOutputJSON::StatisticOutputJSON ( Params outputParameters)

Construct a StatOutputJSON.

Parameters
outputParameters- Parameters used for this Statistic Output

References SST::Simulation::getSimulationOutput(), and SST::Output::verbose().

Member Function Documentation

◆ checkOutputParameters()

bool SST::Statistics::StatisticOutputJSON::checkOutputParameters ( )
overrideprotectedvirtual

Perform a check of provided parameters.

Returns
True if all required parameters and options are acceptable

Implements SST::Statistics::StatisticOutput.

References SST::Params::find(), and SST::Statistics::StatisticOutput::getOutputParameters().

◆ endOfSimulation()

void SST::Statistics::StatisticOutputJSON::endOfSimulation ( )
overrideprotectedvirtual

Indicate to Statistic Output that simulation ended.

Statistic output may perform any shutdown code here as necessary.

Implements SST::Statistics::StatisticOutput.

◆ implOutputField()

void SST::Statistics::StatisticOutputJSON::implOutputField ( fieldHandle_t  fieldHandle,
int32_t  data 
)
overrideprotectedvirtual

Implementation functions for output.

These will be called by the statistic to provide Statistic defined data to be output.

Parameters
fieldHandle- The handle to the registered statistic field.
data- The data related to the registered field to be output.

Implements SST::Statistics::StatisticOutput.

Referenced by implStopOutputEntries().

◆ implStartOutputEntries()

void SST::Statistics::StatisticOutputJSON::implStartOutputEntries ( StatisticBase statistic)
overrideprotectedvirtual

Implementation function for the start of output.

This will be called by the Statistic Processing Engine to indicate that a Statistic is about to send data to the Statistic Output for processing.

Parameters
statistic- Pointer to the statistic object than the output can retrieve data from.

Implements SST::Statistics::StatisticOutput.

References SST::Statistics::StatisticBase::getCompName(), SST::Statistics::StatisticBase::getStatName(), SST::Statistics::StatisticBase::getStatSubId(), and SST::Statistics::StatisticBase::getStatTypeName().

◆ implStopOutputEntries()

void SST::Statistics::StatisticOutputJSON::implStopOutputEntries ( )
overrideprotectedvirtual

Implementation function for the end of output.

This will be called by the Statistic Processing Engine to indicate that a Statistic is finished sendind data to the Statistic Output for processing. The Statisic Output can perform any output related functions here.

Implements SST::Statistics::StatisticOutput.

References SST::Output::fatal(), SST::Simulation::getSimulation(), SST::Simulation::getSimulationOutput(), and implOutputField().

◆ startOfSimulation()

void SST::Statistics::StatisticOutputJSON::startOfSimulation ( )
overrideprotectedvirtual

Indicate to Statistic Output that simulation started.

Statistic output may perform any startup code here as necessary.

Implements SST::Statistics::StatisticOutput.

References SST::Simulation::getRank(), and SST::Simulation::getSimulation().


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