12#ifndef SST_CORE_STATAPI_STATOUTPUTTXT_H
13#define SST_CORE_STATAPI_STATOUTPUTTXT_H
15#include "sst/core/sst_types.h"
16#include "sst/core/statapi/statoutput.h"
25namespace SST::Statistics {
80 void outputField(fieldHandle_t fieldHandle, int32_t data)
override;
81 void outputField(fieldHandle_t fieldHandle, uint32_t data)
override;
82 void outputField(fieldHandle_t fieldHandle, int64_t data)
override;
83 void outputField(fieldHandle_t fieldHandle, uint64_t data)
override;
84 void outputField(fieldHandle_t fieldHandle,
float data)
override;
85 void outputField(fieldHandle_t fieldHandle,
double data)
override;
90 bool m_outputTopHeader;
91 bool m_outputInlineHeader;
94 bool m_useCompression;
99 int print(
const char* fmt, ...) __attribute__((format(printf, 2, 3)));
106 std::string m_outputBuffer;
107 std::string m_FilePath;
112 virtual bool outputsToFile() = 0;
118 virtual bool supportsCompression() = 0;
123 virtual std::string getUsageInfo() = 0;
128 virtual std::string getStartOutputPrefix() = 0;
135 virtual bool getOutputTopHeaderDefault() = 0;
136 virtual bool getOutputInlineHeaderDefault() = 0;
137 virtual bool getOutputSimTimeDefault() = 0;
138 virtual bool getOutputRankDefault() = 0;
140 virtual std::string getDefaultFileName() {
return ""; }
143 virtual bool acceptsGroups()
const override {
return true; }
160 SST_ELI_ELEMENT_VERSION(1,0,0),
161 "Output to text file"
169 void serialize_order(SST::Core::Serialization::
serializer& ser) override;
180 bool outputsToFile()
override {
return true; }
186 bool supportsCompression()
override
198 std::string getUsageInfo()
override {
return "a text file"; }
203 std::string getStartOutputPrefix()
override {
return ""; }
210 bool getOutputTopHeaderDefault()
override {
return false; }
211 bool getOutputInlineHeaderDefault()
override {
return true; }
212 bool getOutputSimTimeDefault()
override {
return true; }
213 bool getOutputRankDefault()
override {
return true; }
215 std::string getDefaultFileName()
override {
return "StatisticOutput.txt"; }
231 SST_ELI_ELEMENT_VERSION(1,0,0),
240 void serialize_order(SST::Core::Serialization::
serializer& ser) override;
250 bool outputsToFile()
override {
return false; }
256 bool supportsCompression()
override {
return false; }
261 std::string getUsageInfo()
override {
return "the console"; }
266 std::string getStartOutputPrefix()
override {
return " "; }
273 bool getOutputTopHeaderDefault()
override {
return false; }
274 bool getOutputInlineHeaderDefault()
override {
return true; }
275 bool getOutputSimTimeDefault()
override {
return false; }
276 bool getOutputRankDefault()
override {
return false; }
This class is basically a wrapper for objects to declare the order in which their members should be s...
Definition serializer.h:45
Parameter store.
Definition params.h:58
Forms the base class for statistics gathering within SST.
Definition statbase.h:49
ImplementVirtualSerializable(SST::Statistics::StatisticFieldsOutput) protected StatisticFieldsOutput()
Construct a base StatisticOutput.
Definition statoutput.h:292
The class for statistics output to the console.
Definition statoutputtxt.h:224
SST_ELI_REGISTER_DERIVED(StatisticOutput, StatisticOutputConsole, "sst", "statoutputconsole", SST_ELI_ELEMENT_VERSION(1, 0, 0), "Output to console") explicit StatisticOutputConsole(Params &outputParameters)
Construct a StatOutputTxt.
Definition statoutputtxt.h:28
ImplementVirtualSerializable(SST::Statistics::StatisticOutputTextBase) protected void printUsage() override
Perform a check of provided parameters.
Definition statoutputtxt.cc:64
void endOfSimulation() override
Indicate to Statistic Output that simulation ended.
Definition statoutputtxt.cc:129
void outputField(fieldHandle_t fieldHandle, int32_t data) override
Implementation functions for output.
Definition statoutputtxt.cc:185
void implStartOutputEntries(StatisticBase *statistic) override
Implementation function for the start of output.
Definition statoutputtxt.cc:137
StatisticOutputTextBase(Params &outputParameters)
Construct a StatOutputTxt.
Definition statoutputtxt.cc:20
void startOfSimulation() override
Indicate to Statistic Output that simulation started.
Definition statoutputtxt.cc:84
virtual bool supportsDynamicRegistration() const override
This output supports adding statistics during runtime if the header is embedded in the output.
Definition statoutputtxt.h:36
void implStopOutputEntries() override
Implementation function for the end of output.
Definition statoutputtxt.cc:177
The class for statistics output to a text file.
Definition statoutputtxt.h:153
SST_ELI_REGISTER_DERIVED(StatisticOutput, StatisticOutputTxt, "sst", "statoutputtxt", SST_ELI_ELEMENT_VERSION(1, 0, 0), "Output to text file") explicit StatisticOutputTxt(Params &outputParameters)
Construct a StatOutputTxt.
Forms the base class for statistics output generation within the SST core.
Definition statoutput.h:52
virtual bool checkOutputParameters()=0
Have the Statistic Output check its parameters.