1 #ifndef HLTriggerOffline_Egamma_EmDQM_H 2 #define HLTriggerOffline_Egamma_EmDQM_H 30 #include "HepMC/GenParticle.h" 34 #include <boost/regex.hpp> 35 #include <boost/lexical_cast.hpp> 36 #include <boost/foreach.hpp> 38 #include "TDirectory.h" 46 #include <Math/VectorUtil.h> 71 explicit
EmDQM(const edm::ParameterSet& pset);
78 void
analyze(const edm::Event & event, const edm::EventSetup&) override;
82 void dqmBeginRun(edm::Run const&, edm::EventSetup const&) override;
83 void
bookHistograms(DQMStore::IBooker &, edm::Run const &, edm::EventSetup const &) override;
84 void
endRun(edm::Run const&, edm::EventSetup const&) override;
91 HistoFiller<reco::RecoEcalCandidateCollection>* histoFillerClu;
92 HistoFiller<l1extra::L1EmParticleCollection>* histoFillerL1NonIso;
93 HistoFiller<reco::RecoEcalCandidateCollection>* histoFillerPho;
94 HistoFiller<l1extra::L1EmParticleCollection>* histoFillerL1Iso;
111 unsigned
int minEtForEtaEffPlot_;
112 bool useHumanReadableHistTitles_;
115 bool noIsolationPlots_;
123 bool checkGeneratedParticlesRequirement(const edm::Event &event);
129 bool checkRecoParticlesRequirement(const edm::Event & event);
135 int countSubstring(const std::string&, const std::string&);
137 std::vector<std::string> getFilterModules(const std::string&);
138 double getPrimaryEtCut(const std::string&);
150 void SetVarsFromPSet(std::vector<edm::ParameterSet>::iterator);
153 std::vector<edm::ParameterSet> paramSets;
156 std::vector<edm::InputTag> theHLTCollectionLabels;
157 unsigned
int numOfHLTCollectionLabels;
158 std::vector<std::string> theHLTCollectionHumanNames;
161 std::vector<bool> plotiso;
162 std::vector<std::vector<edm::InputTag> > isoNames;
163 std::vector<std::pair<double,double> > plotBounds;
164 std::vector<unsigned int> nCandCuts;
185 std::vector<std::set<std::string> > hltCollectionLabelsFoundPerPath;
186 std::set<std::string> hltCollectionLabelsFound;
189 std::vector<std::set<std::string> > hltCollectionLabelsMissedPerPath;
190 std::set<std::string> hltCollectionLabelsMissed;
197 std::vector<std::vector<MonitorElement*> > etahists;
198 std::vector<std::vector<MonitorElement*> > phihists;
199 std::vector<std::vector<MonitorElement*> > ethists;
200 std::vector<std::vector<MonitorElement*> > etahistmatchs;
201 std::vector<std::vector<MonitorElement*> > phihistmatchs;
202 std::vector<std::vector<MonitorElement*> > ethistmatchs;
203 std::vector<std::vector<MonitorElement*> > histEtOfHltObjMatchToGens;
204 std::vector<std::vector<MonitorElement*> > histEtaOfHltObjMatchToGens;
205 std::vector<std::vector<MonitorElement*> > histPhiOfHltObjMatchToGens;
207 std::vector<MonitorElement*> totals;
208 std::vector<MonitorElement*> totalmatchs;
210 std::vector<MonitorElement*> etgens;
211 std::vector<MonitorElement*> etagens;
212 std::vector<MonitorElement*> phigens;
231 static const unsigned TYPE_SINGLE_ELE = 0;
232 static const unsigned TYPE_DOUBLE_ELE = 1;
233 static const unsigned TYPE_SINGLE_PHOTON = 2;
234 static const unsigned TYPE_DOUBLE_PHOTON = 3;
235 static const unsigned TYPE_TRIPLE_ELE = 4;
238 static const unsigned OUTPUT_SILENT = 0;
239 static const unsigned OUTPUT_ERRORS = 1;
240 static const unsigned OUTPUT_WARNINGS = 2;
241 static const unsigned OUTPUT_ALL = 3;
void fillHistos(edm::Handle< trigger::TriggerEventWithRefs > &, const edm::Event &, unsigned int, unsigned int, std::vector< reco::Particle > &, bool &)
def makePSetForL1SeedToSuperClusterMatchFilter(self, moduleName)
def makePSetForEtFilter(self, moduleName)
def analyze(function, filename, filter=None)
def findEgammaPaths(process)
void bookHistograms(fwlite::EventContainer &eventCont)
def makePSetForOneOEMinusOneOPFilter(self, moduleName)
def makePSetForEgammaGenericFilter(self, module, moduleName)
std::vector< Electron > ElectronCollection
collectin of Electron objects
def makePSetForPixelMatchFilter(self, moduleName)
def makePSetForElectronGenericFilter(self, module, moduleName)
def makePSetForL1SeedFilter(self, moduleName)
print >> sys.stderr,msgPrefix,"WARNING: unknown module type", module.type_(), " with name " + moduleN...