16 using namespace sistrip;
23 factory_ = std::make_unique<PedsFullNoiseSummaryFactory>();
25 <<
" Constructing object...";
32 <<
" Destructing object...";
42 HistosMap::const_iterator iter;
43 Analyses::iterator ianal;
44 std::map<std::string, uint16_t> errors;
47 for (ianal =
data().
begin(); ianal !=
data().end(); ianal++) {
55 long int ichannel = 0;
56 long int nchannel =
histos().size();
59 if (iter->second.empty()) {
61 <<
" Zero histograms found!";
66 std::vector<TH1*>
hists;
67 Histos::const_iterator ihis = iter->second.begin();
69 for (; ihis != iter->second.end(); ihis++) {
73 hists.push_back(prof);
78 hists.push_back(his2D);
82 if (ichannel % 100 == 0)
84 <<
" Analyzing channel " << ichannel <<
" out of " << nchannel;
92 data()[iter->first] = anal;
103 <<
" Analyzed histograms for " <<
histos().size() <<
" FED channels, of which "
104 << valid <<
" (" << 100 * valid /
histos().size() <<
"%) are valid.";
105 if (!errors.empty()) {
107 std::stringstream
ss;
109 std::map<std::string, uint16_t>::const_iterator
ii;
110 for (ii = errors.begin(); ii != errors.end(); ++
ii) {
111 ss <<
" " << ii->first <<
": " << ii->second << std::endl;
115 <<
" Found " << count <<
" errors (" << 100 * count /
histos().size()
116 <<
"%): " << ss.str();
120 <<
" No histograms to analyze!";
127 Analyses::iterator ianal =
data().begin();
128 Analyses::iterator janal =
data().end();
129 for (; ianal != janal; ++ianal) {
131 std::stringstream
ss;
132 ianal->second->print(ss, 1);
133 ianal->second->print(ss, 2);
134 if (ianal->second->isValid()) {
void analysis(const std::vector< TH1 * > &)
Log< level::Info, true > LogVerbatim
Analyses & data(bool getMaskedData=false)
const edm::ParameterSet & pset() const
bool isValid() const override
void printAnalyses() override
static const char mlDqmClient_[]
Histogram-based analysis for pedestal run.
Histogram-based analysis for pedestal run.
PedsFullNoiseHistograms(const edm::ParameterSet &pset, DQMStore *)
~PedsFullNoiseHistograms() override
int extract(std::vector< int > *output, const std::string &dati)
std::unique_ptr< Factory > factory_
Log< level::Warning, false > LogWarning
const VString & getErrorCodes() const
const HistosMap & histos() const
void histoAnalysis(bool debug) override