Teuchos Package Browser (Single Doxygen Collection) Version of the Day
Loading...
Searching...
No Matches
Classes | List of all members
Teuchos::TabularOutputter Class Reference

Utility class that makes it easy to create formatted tables of output. More...

#include <Teuchos_TabularOutputter.hpp>

Classes

struct  FieldSpec
 
class  InvalidFieldOutputError
 .
More...
 
class  InvalidFieldSpecError
 .
More...
 
class  MissingFieldsError
 .
More...
 
class  MissingHeaderError
 .
More...
 

Public types

enum  EFieldType { DOUBLE , INT , STRING }
 
enum  { numFieldTypes = 3 }
 
enum  EFieldJustification { LEFT , RIGHT }
 
enum  { numFieldJustifications = 2 }
 
enum  EFloatingOutputType { SCIENTIFIC , GENERAL }
 
enum  { numFloatingOutputTypes = 2 }
 
static const std::string fieldSpacer_
 
Array< FieldSpecfieldSpecs_
 
RCP< FancyOStreamout_
 
Tuple< int, numFieldTypesfieldTypePrecision_
 
int currFieldIdx_
 
Time timer_
 
int numLoops_
 
 TabularOutputter (std::ostream &out)
 
 TabularOutputter (const RCP< std::ostream > &out)
 
void setOStream (const RCP< std::ostream > &out)
 Set the ostream that all output will be sent to.
 
void pushFieldSpec (const std::string &fieldName, const EFieldType fieldType=DOUBLE, const EFieldJustification fieldJustification=RIGHT, const EFloatingOutputType floatingOutputType=SCIENTIFIC, const int width=-1)
 Add a new field to be output.
 
void setFieldTypePrecision (const EFieldType fieldType, const int prec)
 Set the precision of output for a field.
 
void outputHeader ()
 Output the headers.
 
template<typename T >
void outputField (const T &t)
 Output to the next field.
 
void nextRow (const bool allowRemainingFields=false)
 Finalize the row of output.
 
void startTimer (const int numLoops)
 
double stopTimer ()
 
void initialize ()
 
double adjustTime (const double &time_in)
 
 TabularOutputter ()
 

Detailed Description

Utility class that makes it easy to create formatted tables of output.

Definition at line 61 of file Teuchos_TabularOutputter.hpp.

Member Enumeration Documentation

◆ EFieldType

Enumerator
DOUBLE 
INT 
STRING 

Definition at line 68 of file Teuchos_TabularOutputter.hpp.

◆ anonymous enum

Enumerator
numFieldTypes 

Definition at line 69 of file Teuchos_TabularOutputter.hpp.

◆ EFieldJustification

Enumerator
LEFT 
RIGHT 

Definition at line 72 of file Teuchos_TabularOutputter.hpp.

◆ anonymous enum

Enumerator
numFieldJustifications 

Definition at line 73 of file Teuchos_TabularOutputter.hpp.

◆ EFloatingOutputType

Enumerator
SCIENTIFIC 
GENERAL 

Definition at line 76 of file Teuchos_TabularOutputter.hpp.

◆ anonymous enum

Enumerator
numFloatingOutputTypes 

Definition at line 77 of file Teuchos_TabularOutputter.hpp.

Constructor & Destructor Documentation

◆ TabularOutputter() [1/3]

Teuchos::TabularOutputter::TabularOutputter ( std::ostream & out)

Definition at line 84 of file Teuchos_TabularOutputter.cpp.

◆ TabularOutputter() [2/3]

Teuchos::TabularOutputter::TabularOutputter ( const RCP< std::ostream > & out)

Definition at line 93 of file Teuchos_TabularOutputter.cpp.

◆ TabularOutputter() [3/3]

Teuchos::TabularOutputter::TabularOutputter ( )
private

Member Function Documentation

◆ setOStream()

void Teuchos::TabularOutputter::setOStream ( const RCP< std::ostream > & out)

Set the ostream that all output will be sent to.

Definition at line 102 of file Teuchos_TabularOutputter.cpp.

◆ pushFieldSpec()

void Teuchos::TabularOutputter::pushFieldSpec ( const std::string & fieldName,
const EFieldType fieldType = DOUBLE,
const EFieldJustification fieldJustification = RIGHT,
const EFloatingOutputType floatingOutputType = SCIENTIFIC,
const int width = -1 )

Add a new field to be output.

Definition at line 111 of file Teuchos_TabularOutputter.cpp.

◆ setFieldTypePrecision()

void Teuchos::TabularOutputter::setFieldTypePrecision ( const EFieldType fieldType,
const int prec )

Set the precision of output for a field.

This will also determine the width of the field.

Definition at line 137 of file Teuchos_TabularOutputter.cpp.

◆ outputHeader()

void Teuchos::TabularOutputter::outputHeader ( )

Output the headers.

Definition at line 144 of file Teuchos_TabularOutputter.cpp.

◆ outputField()

template<typename T >
void Teuchos::TabularOutputter::outputField ( const T & t)

Output to the next field.

Definition at line 245 of file Teuchos_TabularOutputter.hpp.

◆ nextRow()

void Teuchos::TabularOutputter::nextRow ( const bool allowRemainingFields = false)

Finalize the row of output.

Definition at line 185 of file Teuchos_TabularOutputter.cpp.

◆ initialize()

void Teuchos::TabularOutputter::initialize ( )
private

Definition at line 211 of file Teuchos_TabularOutputter.cpp.

◆ adjustTime()

double Teuchos::TabularOutputter::adjustTime ( const double & time_in)
inlineprivate

Definition at line 179 of file Teuchos_TabularOutputter.hpp.

◆ startTimer()

void Teuchos::TabularOutputter::startTimer ( const int numLoops)
inline

Definition at line 186 of file Teuchos_TabularOutputter.hpp.

◆ stopTimer()

double Teuchos::TabularOutputter::stopTimer ( )
inline

Definition at line 193 of file Teuchos_TabularOutputter.hpp.

Member Data Documentation

◆ fieldSpacer_

const std::string Teuchos::TabularOutputter::fieldSpacer_
staticprivate

Definition at line 156 of file Teuchos_TabularOutputter.hpp.

◆ fieldSpecs_

Array<FieldSpec> Teuchos::TabularOutputter::fieldSpecs_
private

Definition at line 163 of file Teuchos_TabularOutputter.hpp.

◆ out_

RCP<FancyOStream> Teuchos::TabularOutputter::out_
private

Definition at line 164 of file Teuchos_TabularOutputter.hpp.

◆ fieldTypePrecision_

Tuple<int,numFieldTypes> Teuchos::TabularOutputter::fieldTypePrecision_
private

Definition at line 165 of file Teuchos_TabularOutputter.hpp.

◆ currFieldIdx_

int Teuchos::TabularOutputter::currFieldIdx_
private

Definition at line 170 of file Teuchos_TabularOutputter.hpp.

◆ timer_

Time Teuchos::TabularOutputter::timer_
private

Definition at line 172 of file Teuchos_TabularOutputter.hpp.

◆ numLoops_

int Teuchos::TabularOutputter::numLoops_
private

Definition at line 173 of file Teuchos_TabularOutputter.hpp.


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