25 const std::string&
type,
26 const std::string& unit,
27 const std::string& desc,
28 std::ios_base::fmtflags flags,
31 description_m(
std::make_tuple(
type, unit, desc)),
33 writePrecision_m(prec),
36 std::list<std::ios_base::fmtflags> numericalBase({std::ios_base::dec,
39 std::list<std::ios_base::fmtflags> floatFormat({std::ios_base::fixed,
40 std::ios_base::scientific});
41 std::list<std::ios_base::fmtflags> adjustmentFlags({std::ios_base::internal,
43 std::ios_base::right});
46 for (std::ios_base::fmtflags flag: numericalBase) {
52 for (std::ios_base::fmtflags flag: floatFormat) {
58 for (std::ios_base::fmtflags flag: adjustmentFlags) {
70 const std::string& indent)
const {
72 << indent <<
"name=" <<
name_m <<
",\n"
76 os << indent <<
"units=" << std::get<1>(
description_m) <<
",\n";
78 os << indent <<
"description=\"" << colNr <<
" " << std::get<2>(
description_m) <<
"\"\n"
86 "value for column '" +
name_m +
"' isn't set");
91 os <<
value_m << std::setw(10) <<
"\t";
std::ostream & operator<<(std::ostream &os, const SDDSColumn &col)
boost::function< boost::tuple< double, bool >(arguments_t)> type
void writeHeader(std::ostream &os, unsigned int colNr, const std::string &indent) const
unsigned short writePrecision_m
void writeValue(std::ostream &os) const
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)
std::ios_base::fmtflags writeFlags_m
The base class for all OPAL exceptions.