00001
00002
00003
00004 #include "DataFormats/Luminosity/interface/LumiSummary.h"
00005
00006 #include <iomanip>
00007
00008 using namespace std;
00009
00010 bool
00011 LumiSummary::isProductEqual(LumiSummary const& next) {
00012 return (avginsdellumi_ == next.avginsdellumi_ &&
00013 avginsdellumierr_ == next.avginsdellumierr_ &&
00014 lumisecqual_ == next.lumisecqual_ &&
00015 deadfrac_ == next.deadfrac_ &&
00016 lsnumber_ == next.lsnumber_ &&
00017 l1ratecounter_ == next.l1ratecounter_ &&
00018 l1scaler_ == next.l1scaler_ &&
00019 hltratecounter_ == next.hltratecounter_ &&
00020 hltscaler_ == next.hltscaler_ &&
00021 hltinput_ == next.hltinput_);
00022 }
00023
00024 std::ostream& operator<<(std::ostream& s, const LumiSummary& lumiSummary) {
00025
00026 const std::vector<int>& l1ratecounter = lumiSummary.l1RateCounter();
00027 const std::vector<int>& l1scaler = lumiSummary.l1Scaler();
00028 const std::vector<int>& hltratecounter = lumiSummary.hltRateCounter();
00029 const std::vector<int>& hltscaler = lumiSummary.hltScaler();
00030 const std::vector<int>& hltinput = lumiSummary.hltInput();
00031
00032 unsigned int maxSize = l1ratecounter.size();
00033 if (l1scaler.size() > maxSize) maxSize = l1scaler.size();
00034 if (hltratecounter.size() > maxSize) maxSize = hltratecounter.size();
00035 if (hltscaler.size() > maxSize) maxSize = hltscaler.size();
00036 if (hltinput.size() > maxSize) maxSize = hltinput.size();
00037
00038 s << "\nDumping LumiSummary\n\n";
00039
00040 s << " avgInsDelLumi = " << lumiSummary.avgInsDelLumi() << "\n";
00041 s << " avgInsDelLumiErr = " << lumiSummary.avgInsDelLumiErr() << "\n";
00042 s << " lumiSecQual = " << lumiSummary.lumiSecQual() << "\n";
00043 s << " deadFrac = " << lumiSummary.deadFrac() << "\n";
00044 s << " liveFrac = " << lumiSummary.liveFrac() << "\n";
00045 s << " lsNumber = " << lumiSummary.lsNumber() << "\n";
00046 s << " avgInsRecLumi = " << lumiSummary.avgInsRecLumi() << "\n";
00047 s << " avgInsRecLumiErr = " << lumiSummary.avgInsRecLumiErr() << "\n\n";
00048
00049 s << setw(15) << "l1ratecounter";
00050 s << setw(15) << "l1scaler";
00051 s << setw(15) << "hltratecounter";
00052 s << setw(15) << "hltscaler";
00053 s << setw(15) << "hltinput";
00054 s << "\n";
00055
00056 for (unsigned int i = 0; i < maxSize; ++i) {
00057
00058 s << setw(15);
00059 i < l1ratecounter.size() ? s << l1ratecounter[i] : s << " ";
00060
00061 s << setw(15);
00062 i < l1scaler.size() ? s << l1scaler[i] : s << " ";
00063
00064 s << setw(15);
00065 i < hltratecounter.size() ? s << hltratecounter[i] : s << " ";
00066
00067 s << setw(15);
00068 i < hltscaler.size() ? s << hltscaler[i] : s << " ";
00069
00070 s << setw(15);
00071 i < hltinput.size() ? s << hltinput[i] : s << " ";
00072
00073 s << "\n";
00074 }
00075 return s << "\n";
00076 }