23 <<
" Constructing object...";
30 <<
" Destructing object...";
40 HistosMap::const_iterator iter;
41 Analyses::iterator ianal;
42 std::map<std::string, uint16_t>
errors;
45 for (ianal =
data().
begin(); ianal !=
data().end(); ianal++) {
55 if (iter->second.empty()) {
57 <<
" Zero histograms found!";
62 std::vector<TH1*> profs;
63 Histos::const_iterator ihis = iter->second.begin();
64 for (; ihis != iter->second.end(); ihis++) {
67 profs.push_back(prof);
74 FedToFecMap::const_iterator ifed =
mapping().find(iter->first);
76 anal->
fecKey(ifed->second);
90 <<
" Analyzed histograms for " <<
histos().size() <<
" FED channels, of which " 91 << valid <<
" (" << 100 * valid /
histos().size() <<
"%) are valid.";
92 if (!errors.empty()) {
96 std::map<std::string, uint16_t>::const_iterator
ii;
97 for (ii = errors.begin(); ii != errors.end(); ++
ii) {
98 ss <<
" " << ii->first <<
": " << ii->second << std::endl;
102 <<
" Found " << count <<
" error strings: " << ss.str();
106 <<
" No histograms to analyze!";
113 Analyses::iterator ianal =
data().begin();
114 Analyses::iterator janal =
data().end();
115 for (; ianal != janal; ++ianal) {
119 <<
" NULL pointer to analysis object!";
123 std::stringstream
ss;
136 std::stringstream good;
137 std::stringstream bad;
139 Analyses::iterator ianal =
data().begin();
140 Analyses::iterator janal =
data().end();
141 for (; ianal != janal; ++ianal) {
145 <<
" NULL pointer to analysis object!";
156 if (good.str().empty()) {
157 good <<
"None found!";
160 <<
" Printing summary of good analyses:" 164 if (bad.str().empty()) {
168 <<
" Printing summary of bad analyses:" void analysis(const std::vector< TH1 * > &)
const FedToFecMap & mapping() const
void summary(std::stringstream &) const override
void histoAnalysis(bool debug) override
Analyses & data(bool getMaskedData=false)
void print(std::stringstream &, uint32_t not_used=0) override
const edm::ParameterSet & pset() const
bool isValid() const override
static const char mlDqmClient_[]
Histogram-based analysis for connection loop.
Histogram-based analysis for connection loop.
const uint32_t & fecKey() const
int extract(std::vector< int > *output, const std::string &dati)
void printAnalyses() override
std::unique_ptr< Factory > factory_
~FastFedCablingHistograms() override
FastFedCablingHistograms(const edm::ParameterSet &pset, DQMStore *)
const VString & getErrorCodes() const
void printSummary() override
const HistosMap & histos() const