15 SUSYFolder =
iConfig.getParameter<
string>(
"folderName");
16 _quantile =
iConfig.getParameter<
double>(
"quantile");
22 if (ME->
getTH1()->GetEntries() > 0.) {
24 Float_t
mean = q[q_value].first;
25 Float_t
RMS = q[q_value].second;
32 Float_t DBin = RMS * TMath::Sqrt(12.) / 2.;
33 xLow = mean - int(mean / DBin + 2) * DBin;
34 xUp = int(0.2 * mean / DBin) * DBin + mean + 5 * DBin;
35 NBin = (xUp - xLow) / DBin;
41 ME = ibooker_.
book1D(name,
"", NBin, xLow, xUp);
54 std::vector<std::string> metFolders;
56 metFolders.push_back(
"Uncleaned/");
57 metFolders.push_back(
"Cleaned/");
60 TF1 mygaus(
"mygaus",
"gaus");
62 for (
int i = 0;
i < int(Dirs.size());
i++) {
65 if (
size_t(Dirs[
i].
find(
"met")) != string::npos)
67 if (
size_t(Dirs[
i].
find(
"pfMet")) != string::npos)
70 for (std::vector<std::string>::const_iterator ic = metFolders.begin(); ic != metFolders.end(); ic++) {
73 MEx = iget_.
get(dirName +
"/" +
"MEx");
74 MEy = iget_.
get(dirName +
"/" +
"MEy");
77 if (MEx->getTH1F()->GetEntries() > 50)
78 MEx->
getTH1F()->Fit(&mygaus,
"q");
82 if (MEy->getTH1F()->GetEntries() > 50)
83 MEy->getTH1F()->Fit(&mygaus,
"q");
92 for (
int i = 0;
i < int(Dirs.size());
i++) {
93 size_t found = Dirs[
i].find(
"Alpha");
94 if (found != string::npos)
97 edm::LogError(messageLoggerCatregory) <<
"Directory " << Dirs[
i] <<
" doesn't exist!!";
100 vector<MonitorElement*> histoVector = iget_.
getContents(Dirs[i]);
101 for (
int i = 0; i < int(histoVector.size()); i++) {
102 QuantilePlots(histoVector[i], _quantile, ibook_);
virtual void setCurrentFolder(std::string const &fullpath)
virtual DQM_DEPRECATED std::vector< std::string > getSubdirs() const
virtual TH1F * getTH1F() const
const std::string & getPathname() const
get pathname of parent folder
virtual std::vector< dqm::harvesting::MonitorElement * > getContents(std::string const &path) const
virtual bool dirExists(std::string const &path) const
Log< level::Error, false > LogError
void find(edm::Handle< EcalRecHitCollection > &hits, DetId thisDet, std::vector< EcalRecHitCollection::const_iterator > &hit, bool debug=false)
static const char * messageLoggerCatregory
virtual MonitorElement * get(std::string const &fullpath) const
~SusyPostProcessor() override
void QuantilePlots(MonitorElement *&, double, DQMStore::IBooker &)
void dqmEndJob(DQMStore::IBooker &, DQMStore::IGetter &) override
SusyPostProcessor(const edm::ParameterSet &pSet)
MonitorElement * book1D(TString const &name, TString const &title, int const nchX, double const lowX, double const highX, FUNC onbooking=NOOP())
virtual TH1 * getTH1() const