OPALX (Object Oriented Parallel Accelerator Library for Exascal) MINIorX
OPALX
SDDSColumn Class Reference

#include <SDDSColumn.h>

Collaboration diagram for SDDSColumn:

Public Member Functions

 SDDSColumn (const std::string &name, const std::string &type, const std::string &unit, const std::string &desc, std::ios_base::fmtflags flags, unsigned short precision)
template<typename T>
void addValue (const T &val)
void writeHeader (std::ostream &os, unsigned int colNr, const std::string &indent) const

Protected Member Functions

void writeValue (std::ostream &os) const

Private Types

typedef std::tuple< std::string, std::string, std::string > desc_t
typedef boost::variant< float, double, long unsigned int, char, std::string > variant_t

Private Attributes

std::string name_m
desc_t description_m
variant_t value_m
std::ios_base::fmtflags writeFlags_m
unsigned short writePrecision_m
bool set_m

Friends

std::ostream & operator<< (std::ostream &os, const SDDSColumn &col)

Detailed Description

Definition at line 27 of file SDDSColumn.h.

Member Typedef Documentation

◆ desc_t

typedef std::tuple<std::string, std::string, std::string> SDDSColumn::desc_t
private

Definition at line 54 of file SDDSColumn.h.

◆ variant_t

typedef boost::variant<float, double, long unsigned int, char, std::string> SDDSColumn::variant_t
private

Definition at line 60 of file SDDSColumn.h.

Constructor & Destructor Documentation

◆ SDDSColumn()

SDDSColumn::SDDSColumn ( const std::string & name,
const std::string & type,
const std::string & unit,
const std::string & desc,
std::ios_base::fmtflags flags,
unsigned short precision )

Definition at line 24 of file SDDSColumn.cpp.

References description_m, name_m, set_m, writeFlags_m, and writePrecision_m.

Referenced by operator<<.

Here is the caller graph for this function:

Member Function Documentation

◆ addValue()

template<typename T>
void SDDSColumn::addValue ( const T & val)

Definition at line 73 of file SDDSColumn.h.

References set_m, and value_m.

◆ writeHeader()

void SDDSColumn::writeHeader ( std::ostream & os,
unsigned int colNr,
const std::string & indent ) const

Definition at line 68 of file SDDSColumn.cpp.

References description_m, and name_m.

◆ writeValue()

void SDDSColumn::writeValue ( std::ostream & os) const
protected

Definition at line 83 of file SDDSColumn.cpp.

References name_m, set_m, value_m, writeFlags_m, and writePrecision_m.

Referenced by operator<<.

Here is the caller graph for this function:

◆ operator<<

std::ostream & operator<< ( std::ostream & os,
const SDDSColumn & col )
friend

Definition at line 95 of file SDDSColumn.cpp.

References SDDSColumn(), and writeValue().

Member Data Documentation

◆ description_m

desc_t SDDSColumn::description_m
private

Definition at line 62 of file SDDSColumn.h.

Referenced by SDDSColumn(), and writeHeader().

◆ name_m

std::string SDDSColumn::name_m
private

Definition at line 61 of file SDDSColumn.h.

Referenced by SDDSColumn(), writeHeader(), and writeValue().

◆ set_m

bool SDDSColumn::set_m
mutableprivate

Definition at line 68 of file SDDSColumn.h.

Referenced by addValue(), SDDSColumn(), and writeValue().

◆ value_m

variant_t SDDSColumn::value_m
private

Definition at line 63 of file SDDSColumn.h.

Referenced by addValue(), and writeValue().

◆ writeFlags_m

std::ios_base::fmtflags SDDSColumn::writeFlags_m
private

Definition at line 65 of file SDDSColumn.h.

Referenced by SDDSColumn(), and writeValue().

◆ writePrecision_m

unsigned short SDDSColumn::writePrecision_m
private

Definition at line 66 of file SDDSColumn.h.

Referenced by SDDSColumn(), and writeValue().


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