Enumerations | |
enum | ValueFormat { CFI, DOC } |
Functions | |
void | formatDouble (double value, std::string &result) |
bool | hasNestedContent (std::vector< unsigned long long > const &value) |
bool | hasNestedContent (double const &value) |
bool | hasNestedContent (std::vector< double > const &value) |
bool | hasNestedContent (bool const &value) |
bool | hasNestedContent (std::string const &value) |
bool | hasNestedContent (std::vector< std::string > const &value) |
bool | hasNestedContent (EventID const &value) |
bool | hasNestedContent (std::vector< EventID > const &value) |
bool | hasNestedContent (LuminosityBlockID const &value) |
bool | hasNestedContent (std::vector< LuminosityBlockID > const &value) |
bool | hasNestedContent (LuminosityBlockRange const &value) |
bool | hasNestedContent (std::vector< LuminosityBlockRange > const &value) |
bool | hasNestedContent (EventRange const &value) |
bool | hasNestedContent (std::vector< EventRange > const &value) |
bool | hasNestedContent (InputTag const &value) |
bool | hasNestedContent (std::vector< InputTag > const &value) |
bool | hasNestedContent (int const &value) |
bool | hasNestedContent (std::vector< int > const &value) |
bool | hasNestedContent (unsigned const &value) |
bool | hasNestedContent (FileInPath const &value) |
bool | hasNestedContent (std::vector< unsigned > const &value) |
bool | hasNestedContent (long long const &value) |
bool | hasNestedContent (std::vector< long long > const &value) |
bool | hasNestedContent (unsigned long long const &value) |
template<typename T > | |
void | writeSingleValue (std::ostream &os, T const &value, ValueFormat) |
template<> | |
void | writeSingleValue< bool > (std::ostream &os, bool const &value, ValueFormat) |
template<> | |
void | writeSingleValue< double > (std::ostream &os, double const &value, ValueFormat) |
template<> | |
void | writeSingleValue< EventID > (std::ostream &os, EventID const &value, ValueFormat format) |
template<> | |
void | writeSingleValue< EventRange > (std::ostream &os, EventRange const &value, ValueFormat format) |
template<> | |
void | writeSingleValue< FileInPath > (std::ostream &os, FileInPath const &value, ValueFormat) |
template<> | |
void | writeSingleValue< InputTag > (std::ostream &os, InputTag const &value, ValueFormat format) |
template<> | |
void | writeSingleValue< LuminosityBlockID > (std::ostream &os, LuminosityBlockID const &value, ValueFormat format) |
template<> | |
void | writeSingleValue< LuminosityBlockRange > (std::ostream &os, LuminosityBlockRange const &value, ValueFormat format) |
template<> | |
void | writeSingleValue< std::string > (std::ostream &os, std::string const &value, ValueFormat) |
template<typename T > | |
void | writeValue (std::ostream &os, T const &value_, ValueFormat format) |
void | writeValue (std::ostream &os, int indentation, std::vector< InputTag > const &value_, ValueFormat format) |
void | writeValue (std::ostream &os, int indentation, std::vector< EventID > const &value_, ValueFormat format) |
void | writeValue (std::ostream &os, int indentation, std::vector< unsigned > const &value_, ValueFormat format) |
void | writeValue (std::ostream &os, int indentation, LuminosityBlockID const &value_, ValueFormat format) |
void | writeValue (std::ostream &os, int indentation, unsigned long long const &value_, ValueFormat format) |
void | writeValue (std::ostream &os, int indentation, std::vector< EventRange > const &value_, ValueFormat format) |
void | writeValue (std::ostream &os, int indentation, std::vector< unsigned long long > const &value_, ValueFormat format) |
void | writeValue (std::ostream &os, int indentation, std::vector< LuminosityBlockID > const &value_, ValueFormat format) |
void | writeValue (std::ostream &os, int indentation, int const &value_, ValueFormat format) |
void | writeValue (std::ostream &os, int indentation, EventID const &value_, ValueFormat format) |
void | writeValue (std::ostream &os, int indentation, std::vector< std::string > const &value_, ValueFormat format) |
void | writeValue (std::ostream &os, int indentation, LuminosityBlockRange const &value_, ValueFormat format) |
void | writeValue (std::ostream &os, int indentation, double const &value_, ValueFormat format) |
void | writeValue (std::ostream &os, int indentation, std::vector< LuminosityBlockRange > const &value_, ValueFormat format) |
void | writeValue (std::ostream &os, int indentation, std::vector< int > const &value_, ValueFormat format) |
void | writeValue (std::ostream &os, int indentation, long long const &value_, ValueFormat format) |
void | writeValue (std::ostream &os, int indentation, bool const &value_, ValueFormat format) |
void | writeValue (std::ostream &os, int indentation, InputTag const &value_, ValueFormat format) |
void | writeValue (std::ostream &os, int indentation, std::vector< double > const &value_, ValueFormat format) |
void | writeValue (std::ostream &os, int indentation, std::string const &value_, ValueFormat format) |
void | writeValue (std::ostream &os, int indentation, EventRange const &value_, ValueFormat format) |
void | writeValue (std::ostream &os, int indentation, FileInPath const &value_, ValueFormat format) |
void | writeValue (std::ostream &os, int indentation, std::vector< long long > const &value_, ValueFormat format) |
void | writeValue (std::ostream &os, int indentation, unsigned const &value_, ValueFormat format) |
template<typename T > | |
void | writeValueInVector (std::ostream &os, T const &value, ValueFormat format) |
template<> | |
void | writeValueInVector< EventID > (std::ostream &os, EventID const &value, ValueFormat format) |
template<> | |
void | writeValueInVector< InputTag > (std::ostream &os, InputTag const &value, ValueFormat) |
template<> | |
void | writeValueInVector< LuminosityBlockID > (std::ostream &os, LuminosityBlockID const &value, ValueFormat format) |
template<typename T > | |
void | writeValueInVectorWithSpace (T const &value, std::ostream &os, int indentation, bool &startWithComma, ValueFormat format, int &i) |
template<typename T > | |
void | writeVector (std::ostream &os, int indentation, std::vector< T > const &value_, ValueFormat format) |
void edm::writeParameterValue::formatDouble | ( | double | value, |
std::string & | result | ||
) |
Definition at line 472 of file ParameterDescription.cc.
References alignCSCRings::s, and relativeConstraints::value.
Referenced by writeSingleValue< double >().
{ std::stringstream s; s << std::setprecision(17) << value; result = s.str(); if(result.size() > 15 && std::string::npos != result.find(".")) { std::stringstream s; s << std::setprecision(15) << value; std::string resultLessPrecision = s.str(); if(resultLessPrecision.size() < result.size() - 2) { double test = std::strtod(resultLessPrecision.c_str(), 0); if(test == value) { result = resultLessPrecision; } } } }
bool edm::writeParameterValue::hasNestedContent | ( | std::vector< unsigned long long > const & | value | ) |
Definition at line 766 of file ParameterDescription.cc.
{ return value.size() > 5U; }
bool edm::writeParameterValue::hasNestedContent | ( | double const & | value | ) |
Definition at line 767 of file ParameterDescription.cc.
{ return false; }
bool edm::writeParameterValue::hasNestedContent | ( | std::vector< double > const & | value | ) |
Definition at line 768 of file ParameterDescription.cc.
{ return value.size() > 5U; }
bool edm::writeParameterValue::hasNestedContent | ( | bool const & | value | ) |
Definition at line 769 of file ParameterDescription.cc.
{ return false; }
bool edm::writeParameterValue::hasNestedContent | ( | std::string const & | value | ) |
Definition at line 770 of file ParameterDescription.cc.
{ return false; }
bool edm::writeParameterValue::hasNestedContent | ( | std::vector< std::string > const & | value | ) |
Definition at line 771 of file ParameterDescription.cc.
{ return value.size() > 5U; }
bool edm::writeParameterValue::hasNestedContent | ( | EventID const & | value | ) |
Definition at line 772 of file ParameterDescription.cc.
{ return false; }
bool edm::writeParameterValue::hasNestedContent | ( | std::vector< EventID > const & | value | ) |
Definition at line 773 of file ParameterDescription.cc.
{ return value.size() > 5U; }
bool edm::writeParameterValue::hasNestedContent | ( | LuminosityBlockID const & | value | ) |
Definition at line 774 of file ParameterDescription.cc.
{ return false; }
bool edm::writeParameterValue::hasNestedContent | ( | std::vector< LuminosityBlockID > const & | value | ) |
Definition at line 775 of file ParameterDescription.cc.
{ return value.size() > 5U; }
bool edm::writeParameterValue::hasNestedContent | ( | LuminosityBlockRange const & | value | ) |
Definition at line 776 of file ParameterDescription.cc.
{ return false; }
bool edm::writeParameterValue::hasNestedContent | ( | std::vector< LuminosityBlockRange > const & | value | ) |
Definition at line 777 of file ParameterDescription.cc.
{ return value.size() > 5U; }
bool edm::writeParameterValue::hasNestedContent | ( | EventRange const & | value | ) |
Definition at line 778 of file ParameterDescription.cc.
{ return false; }
bool edm::writeParameterValue::hasNestedContent | ( | std::vector< EventRange > const & | value | ) |
Definition at line 779 of file ParameterDescription.cc.
{ return value.size() > 5U; }
bool edm::writeParameterValue::hasNestedContent | ( | InputTag const & | value | ) |
Definition at line 780 of file ParameterDescription.cc.
{ return false; }
bool edm::writeParameterValue::hasNestedContent | ( | std::vector< InputTag > const & | value | ) |
Definition at line 781 of file ParameterDescription.cc.
{ return value.size() > 5U; }
bool edm::writeParameterValue::hasNestedContent | ( | int const & | value | ) |
Definition at line 759 of file ParameterDescription.cc.
{ return false; }
bool edm::writeParameterValue::hasNestedContent | ( | std::vector< int > const & | value | ) |
Definition at line 760 of file ParameterDescription.cc.
{ return value.size() > 5U; }
bool edm::writeParameterValue::hasNestedContent | ( | unsigned const & | value | ) |
Definition at line 761 of file ParameterDescription.cc.
{ return false; }
bool edm::writeParameterValue::hasNestedContent | ( | FileInPath const & | value | ) |
Definition at line 782 of file ParameterDescription.cc.
{ return false; }
bool edm::writeParameterValue::hasNestedContent | ( | std::vector< unsigned > const & | value | ) |
Definition at line 762 of file ParameterDescription.cc.
{ return value.size() > 5U; }
bool edm::writeParameterValue::hasNestedContent | ( | long long const & | value | ) |
Definition at line 763 of file ParameterDescription.cc.
{ return false; }
bool edm::writeParameterValue::hasNestedContent | ( | std::vector< long long > const & | value | ) |
Definition at line 764 of file ParameterDescription.cc.
{ return value.size() > 5U; }
bool edm::writeParameterValue::hasNestedContent | ( | unsigned long long const & | value | ) |
Definition at line 765 of file ParameterDescription.cc.
{ return false; }
void edm::writeParameterValue::writeSingleValue | ( | std::ostream & | os, |
T const & | value, | ||
ValueFormat | |||
) |
Definition at line 449 of file ParameterDescription.cc.
References relativeConstraints::value.
{ os << value; }
void edm::writeParameterValue::writeSingleValue< bool > | ( | std::ostream & | os, |
bool const & | value, | ||
ValueFormat | |||
) |
Definition at line 499 of file ParameterDescription.cc.
References relativeConstraints::value.
{ value ? os << "True" : os << "False"; }
void edm::writeParameterValue::writeSingleValue< double > | ( | std::ostream & | os, |
double const & | value, | ||
ValueFormat | |||
) |
Definition at line 492 of file ParameterDescription.cc.
References formatDouble(), and relativeConstraints::value.
{ std::string sValue; formatDouble(value, sValue); os << sValue; }
void edm::writeParameterValue::writeSingleValue< EventID > | ( | std::ostream & | os, |
EventID const & | value, | ||
ValueFormat | format | ||
) |
Definition at line 509 of file ParameterDescription.cc.
References CFI, and relativeConstraints::value.
void edm::writeParameterValue::writeSingleValue< EventRange > | ( | std::ostream & | os, |
EventRange const & | value, | ||
ValueFormat | format | ||
) |
Definition at line 528 of file ParameterDescription.cc.
References CFI, and relativeConstraints::value.
{ if(value.startLumi() == 0U) { if(format == CFI) os << "'" << value.startRun() << ":" << value.startEvent() << "-" << value.endRun() << ":" << value.endEvent() << "'"; else os << value.startRun() << ":" << value.startEvent() << "-" << value.endRun() << ":" << value.endEvent(); } else { if(format == CFI) os << "'" << value.startRun() << ":" << value.startLumi() << ":" << value.startEvent() << "-" << value.endRun() << ":" << value.endLumi() << ":" << value.endEvent() << "'"; else os << value.startRun() << ":" << value.startLumi() << ":" << value.startEvent() << "-" << value.endRun() << ":" << value.endLumi() << ":" << value.endEvent(); } }
void edm::writeParameterValue::writeSingleValue< FileInPath > | ( | std::ostream & | os, |
FileInPath const & | value, | ||
ValueFormat | |||
) |
Definition at line 573 of file ParameterDescription.cc.
References relativeConstraints::value.
{ os << "'" << value.relativePath() << "'"; }
void edm::writeParameterValue::writeSingleValue< InputTag > | ( | std::ostream & | os, |
InputTag const & | value, | ||
ValueFormat | format | ||
) |
Definition at line 551 of file ParameterDescription.cc.
References CFI, and relativeConstraints::value.
{ if(format == CFI) { os << "'" << value.label() << "'"; if(!value.instance().empty() || !value.process().empty()) { os << ", '" << value.instance() << "'"; } if(!value.process().empty()) { os << ", '" << value.process() << "'"; } } else { os << "'" << value.label(); if(!value.instance().empty() || !value.process().empty()) { os << ":" << value.instance(); } if(!value.process().empty()) { os << ":" << value.process(); } os << "'"; } }
void edm::writeParameterValue::writeSingleValue< LuminosityBlockID > | ( | std::ostream & | os, |
LuminosityBlockID const & | value, | ||
ValueFormat | format | ||
) |
Definition at line 522 of file ParameterDescription.cc.
References CFI, and relativeConstraints::value.
void edm::writeParameterValue::writeSingleValue< LuminosityBlockRange > | ( | std::ostream & | os, |
LuminosityBlockRange const & | value, | ||
ValueFormat | format | ||
) |
Definition at line 543 of file ParameterDescription.cc.
References CFI, and relativeConstraints::value.
void edm::writeParameterValue::writeSingleValue< std::string > | ( | std::ostream & | os, |
std::string const & | value, | ||
ValueFormat | |||
) |
Definition at line 504 of file ParameterDescription.cc.
References relativeConstraints::value.
{ os << "'" << value << "'"; }
void edm::writeParameterValue::writeValue | ( | std::ostream & | os, |
T const & | value_, | ||
ValueFormat | format | ||
) |
Definition at line 578 of file ParameterDescription.cc.
References alignCSCRings::ff, and diffTreeTool::format().
void edm::writeParameterValue::writeValue | ( | std::ostream & | os, |
int | indentation, | ||
std::vector< InputTag > const & | value_, | ||
ValueFormat | format | ||
) |
Definition at line 751 of file ParameterDescription.cc.
References diffTreeTool::format().
{ writeVector<InputTag>(os, indentation, value_, format); }
void edm::writeParameterValue::writeValue | ( | std::ostream & | os, |
int | indentation, | ||
std::vector< EventID > const & | value_, | ||
ValueFormat | format | ||
) |
Definition at line 719 of file ParameterDescription.cc.
References diffTreeTool::format().
{ writeVector<EventID>(os, indentation, value_, format); }
void edm::writeParameterValue::writeValue | ( | std::ostream & | os, |
int | indentation, | ||
std::vector< unsigned > const & | value_, | ||
ValueFormat | format | ||
) |
Definition at line 675 of file ParameterDescription.cc.
References diffTreeTool::format().
{ writeVector<unsigned>(os, indentation, value_, format); }
void edm::writeParameterValue::writeValue | ( | std::ostream & | os, |
int | indentation, | ||
LuminosityBlockID const & | value_, | ||
ValueFormat | format | ||
) |
Definition at line 723 of file ParameterDescription.cc.
References diffTreeTool::format().
{ writeValue<LuminosityBlockID>(os, value_, format); }
void edm::writeParameterValue::writeValue | ( | std::ostream & | os, |
int | indentation, | ||
unsigned long long const & | value_, | ||
ValueFormat | format | ||
) |
Definition at line 687 of file ParameterDescription.cc.
References diffTreeTool::format().
{ writeValue<unsigned long long>(os, value_, format); }
void edm::writeParameterValue::writeValue | ( | std::ostream & | os, |
int | indentation, | ||
std::vector< EventRange > const & | value_, | ||
ValueFormat | format | ||
) |
Definition at line 743 of file ParameterDescription.cc.
References diffTreeTool::format().
{ writeVector<EventRange>(os, indentation, value_, format); }
void edm::writeParameterValue::writeValue | ( | std::ostream & | os, |
int | indentation, | ||
std::vector< unsigned long long > const & | value_, | ||
ValueFormat | format | ||
) |
Definition at line 691 of file ParameterDescription.cc.
References diffTreeTool::format().
{ writeVector<unsigned long long>(os, indentation, value_, format); }
void edm::writeParameterValue::writeValue | ( | std::ostream & | os, |
int | indentation, | ||
std::vector< LuminosityBlockID > const & | value_, | ||
ValueFormat | format | ||
) |
Definition at line 727 of file ParameterDescription.cc.
References diffTreeTool::format().
{ writeVector<LuminosityBlockID>(os, indentation, value_, format); }
void edm::writeParameterValue::writeValue | ( | std::ostream & | os, |
int | indentation, | ||
int const & | value_, | ||
ValueFormat | format | ||
) |
Definition at line 663 of file ParameterDescription.cc.
References diffTreeTool::format().
Referenced by edm::ParameterDescription< std::vector< std::string > >::writeCfi_(), and edm::ParameterDescription< std::vector< std::string > >::writeDoc_().
{ writeValue<int>(os, value_, format); }
void edm::writeParameterValue::writeValue | ( | std::ostream & | os, |
int | indentation, | ||
EventID const & | value_, | ||
ValueFormat | format | ||
) |
Definition at line 715 of file ParameterDescription.cc.
References diffTreeTool::format().
{ writeValue<EventID>(os, value_, format); }
void edm::writeParameterValue::writeValue | ( | std::ostream & | os, |
int | indentation, | ||
std::vector< std::string > const & | value_, | ||
ValueFormat | format | ||
) |
Definition at line 711 of file ParameterDescription.cc.
References diffTreeTool::format().
{ writeVector<std::string>(os, indentation, value_, format); }
void edm::writeParameterValue::writeValue | ( | std::ostream & | os, |
int | indentation, | ||
LuminosityBlockRange const & | value_, | ||
ValueFormat | format | ||
) |
Definition at line 731 of file ParameterDescription.cc.
References diffTreeTool::format().
{ writeValue<LuminosityBlockRange>(os, value_, format); }
void edm::writeParameterValue::writeValue | ( | std::ostream & | os, |
int | indentation, | ||
double const & | value_, | ||
ValueFormat | format | ||
) |
Definition at line 695 of file ParameterDescription.cc.
References diffTreeTool::format().
{ writeValue<double>(os, value_, format); }
void edm::writeParameterValue::writeValue | ( | std::ostream & | os, |
int | indentation, | ||
std::vector< LuminosityBlockRange > const & | value_, | ||
ValueFormat | format | ||
) |
Definition at line 735 of file ParameterDescription.cc.
References diffTreeTool::format().
{ writeVector<LuminosityBlockRange>(os, indentation, value_, format); }
void edm::writeParameterValue::writeValue | ( | std::ostream & | os, |
int | indentation, | ||
std::vector< int > const & | value_, | ||
ValueFormat | format | ||
) |
Definition at line 667 of file ParameterDescription.cc.
References diffTreeTool::format().
{ writeVector<int>(os, indentation, value_, format); }
void edm::writeParameterValue::writeValue | ( | std::ostream & | os, |
int | indentation, | ||
long long const & | value_, | ||
ValueFormat | format | ||
) |
Definition at line 679 of file ParameterDescription.cc.
References diffTreeTool::format().
{ writeValue<long long>(os, value_, format); }
void edm::writeParameterValue::writeValue | ( | std::ostream & | os, |
int | indentation, | ||
bool const & | value_, | ||
ValueFormat | format | ||
) |
Definition at line 703 of file ParameterDescription.cc.
References diffTreeTool::format().
{ writeValue<bool>(os, value_, format); }
void edm::writeParameterValue::writeValue | ( | std::ostream & | os, |
int | indentation, | ||
InputTag const & | value_, | ||
ValueFormat | format | ||
) |
Definition at line 747 of file ParameterDescription.cc.
References diffTreeTool::format().
{ writeValue<InputTag>(os, value_, format); }
void edm::writeParameterValue::writeValue | ( | std::ostream & | os, |
int | indentation, | ||
std::vector< double > const & | value_, | ||
ValueFormat | format | ||
) |
Definition at line 699 of file ParameterDescription.cc.
References diffTreeTool::format().
{ writeVector<double>(os, indentation, value_, format); }
void edm::writeParameterValue::writeValue | ( | std::ostream & | os, |
int | indentation, | ||
std::string const & | value_, | ||
ValueFormat | format | ||
) |
Definition at line 707 of file ParameterDescription.cc.
References diffTreeTool::format().
{ writeValue<std::string>(os, value_, format); }
void edm::writeParameterValue::writeValue | ( | std::ostream & | os, |
int | indentation, | ||
EventRange const & | value_, | ||
ValueFormat | format | ||
) |
Definition at line 739 of file ParameterDescription.cc.
References diffTreeTool::format().
{ writeValue<EventRange>(os, value_, format); }
void edm::writeParameterValue::writeValue | ( | std::ostream & | os, |
int | indentation, | ||
FileInPath const & | value_, | ||
ValueFormat | format | ||
) |
Definition at line 755 of file ParameterDescription.cc.
References diffTreeTool::format().
{ writeValue<FileInPath>(os, value_, format); }
void edm::writeParameterValue::writeValue | ( | std::ostream & | os, |
int | indentation, | ||
std::vector< long long > const & | value_, | ||
ValueFormat | format | ||
) |
Definition at line 683 of file ParameterDescription.cc.
References diffTreeTool::format().
{ writeVector<long long>(os, indentation, value_, format); }
void edm::writeParameterValue::writeValue | ( | std::ostream & | os, |
int | indentation, | ||
unsigned const & | value_, | ||
ValueFormat | format | ||
) |
Definition at line 671 of file ParameterDescription.cc.
References diffTreeTool::format().
{ writeValue<unsigned>(os, value_, format); }
void edm::writeParameterValue::writeValueInVector | ( | std::ostream & | os, |
T const & | value, | ||
ValueFormat | format | ||
) |
Definition at line 586 of file ParameterDescription.cc.
References diffTreeTool::format(), and relativeConstraints::value.
void edm::writeParameterValue::writeValueInVector< EventID > | ( | std::ostream & | os, |
EventID const & | value, | ||
ValueFormat | format | ||
) |
Definition at line 593 of file ParameterDescription.cc.
References CFI, and relativeConstraints::value.
{ if(value.luminosityBlock() == 0U) { if(format == CFI) os << "'" << value.run() << ":" << value.event() << "'"; else os << value.run() << ":" << value.event(); } else { if(format == CFI) os << "'" << value.run() << ":" << value.luminosityBlock() << ":" << value.event() << "'"; else os << value.run() << ":" << value.luminosityBlock() << ":" << value.event(); } }
void edm::writeParameterValue::writeValueInVector< InputTag > | ( | std::ostream & | os, |
InputTag const & | value, | ||
ValueFormat | |||
) |
Definition at line 610 of file ParameterDescription.cc.
References relativeConstraints::value.
void edm::writeParameterValue::writeValueInVector< LuminosityBlockID > | ( | std::ostream & | os, |
LuminosityBlockID const & | value, | ||
ValueFormat | format | ||
) |
Definition at line 604 of file ParameterDescription.cc.
References CFI, and relativeConstraints::value.
void edm::writeParameterValue::writeValueInVectorWithSpace | ( | T const & | value, |
std::ostream & | os, | ||
int | indentation, | ||
bool & | startWithComma, | ||
ValueFormat | format, | ||
int & | i | ||
) |
Definition at line 622 of file ParameterDescription.cc.
References CFI, DOC, diffTreeTool::format(), i, and relativeConstraints::value.
void edm::writeParameterValue::writeVector | ( | std::ostream & | os, |
int | indentation, | ||
std::vector< T > const & | value_, | ||
ValueFormat | format | ||
) |
Definition at line 637 of file ParameterDescription.cc.
References CFI, DOC, alignCSCRings::ff, edm::for_all(), diffTreeTool::format(), and i.
{ std::ios_base::fmtflags ff = os.flags(std::ios_base::dec); char oldFill = os.fill(); os.width(0); if(value_.size() == 0U && format == DOC) { os << "empty"; } else if(value_.size() == 1U && format == CFI) { writeValueInVector<T>(os, value_[0], format); } else if(value_.size() >= 1U) { if(format == DOC) os << "(vector size = " << value_.size() << ")"; os.fill(' '); bool startWithComma = false; int i = 0; for_all(value_, boost::bind(&writeValueInVectorWithSpace<T>, _1, boost::ref(os), indentation + 2, boost::ref(startWithComma), format, boost::ref(i))); if(format == CFI) os << "\n" << std::setw(indentation) << ""; } os.flags(ff); os.fill(oldFill); }