#include <utility>
#include <vector>
#include <string>
#include <iosfwd>
Go to the source code of this file.
Classes | |
class | LumiDetails |
Functions | |
std::ostream & | operator<< (std::ostream &s, LumiDetails const &lumiDetails) |
std::ostream& operator<< | ( | std::ostream & | s, |
LumiDetails const & | lumiDetails | ||
) |
Definition at line 193 of file LumiDetails.cc.
References LumiDetails::algoNames(), LumiDetails::dipalgoNames(), error, i, LumiDetails::lumiBeam1Intensities(), LumiDetails::lumiBeam2Intensities(), LumiDetails::lumiErrorsForAlgo(), LumiDetails::lumiQualitiesForAlgo(), LumiDetails::lumiValuesForAlgo(), LumiDetails::lumiVersion(), alignCSCRings::s, and relativeConstraints::value.
{ s << "\nDumping LumiDetails\n"; s << std::setw(12) << "lumi version " << lumiDetails.lumiVersion() << "\n"; std::vector<std::string>::const_iterator algo; std::vector<std::string>::const_iterator algoEnd; if(lumiDetails.lumiVersion()!=std::string("DIP")){ algo = lumiDetails.algoNames().begin(); algoEnd = lumiDetails.algoNames().end(); }else{ algo = lumiDetails.dipalgoNames().begin(); algoEnd = lumiDetails.dipalgoNames().end(); } LumiDetails::AlgoType i = 0; for( ; algo != algoEnd; ++algo, ++i) { std::vector<float>::const_iterator value = lumiDetails.lumiValuesForAlgo(i).first; std::vector<float>::const_iterator valueEnd = lumiDetails.lumiValuesForAlgo(i).second; std::vector<float>::const_iterator error = lumiDetails.lumiErrorsForAlgo(i).first; std::vector<short>::const_iterator quality = lumiDetails.lumiQualitiesForAlgo(i).first; s << "algorithm: " << *algo << "\n"; s << std::setw(12) << "value" << std::setw(12) << "error" << std::setw(12) << "quality" << "\n"; for( ; value != valueEnd; ++value, ++error, ++quality){ s << std::setw(12) << *value << std::setw(12) << *error << std::setw(12) << *quality << "\n"; } s << "\n"; } s << "beam 1 intensities:\n"; std::vector<float> const& beam1Intensities = lumiDetails.lumiBeam1Intensities(); for (std::vector<float>::const_iterator intensity = beam1Intensities.begin(), iEnd = beam1Intensities.end(); intensity != iEnd; ++intensity) { s << *intensity << "\n"; } s << "\nbeam 2 intensities:\n"; std::vector<float> const& beam2Intensities = lumiDetails.lumiBeam2Intensities(); for (std::vector<float>::const_iterator intensity = beam2Intensities.begin(), iEnd = beam2Intensities.end(); intensity != iEnd; ++intensity) { s << *intensity << "\n"; } s << "\n"; return s; }