Go to the documentation of this file.00001
00002
00003
00004
00005
00006
00007 #ifndef HLTTauDQMLitePathPlotter_h
00008 #define HLTTauDQMLitePathPlotter_h
00009
00010 #include "DQMOffline/Trigger/interface/HLTTauDQMPlotter.h"
00011
00012 #include "DataFormats/HLTReco/interface/TriggerEvent.h"
00013 #include "DataFormats/HLTReco/interface/TriggerRefsCollections.h"
00014
00015 class HLTTauDQMLitePathPlotter : public HLTTauDQMPlotter {
00016 public:
00017
00018 HLTTauDQMLitePathPlotter( const edm::ParameterSet&, int, int, int, double, bool, double, std::string );
00019 ~HLTTauDQMLitePathPlotter();
00020 const std::string name() { return name_; }
00021 void analyze( const edm::Event&, const edm::EventSetup&, const std::map<int,LVColl>& );
00022
00023 private:
00024 void endJob();
00025 LVColl getFilterCollection( size_t, int, const trigger::TriggerEvent& );
00026 LVColl getObjectCollection( int, const trigger::TriggerEvent& );
00027
00029 edm::InputTag triggerEvent_;
00030
00031
00032 std::vector<edm::ParameterSet> filters_;
00033 std::vector<HLTTauDQMPlotter::FilterObject> filterObjs_;
00034
00035 bool doRefAnalysis_;
00036 double matchDeltaR_;
00037 double minEt_;
00038 double maxEt_;
00039 int binsEt_;
00040 int binsEta_;
00041 int binsPhi_;
00042
00043 double refTauPt_;
00044 double refLeptonPt_;
00045
00046
00047 MonitorElement *accepted_events;
00048 MonitorElement *accepted_events_matched;
00049 MonitorElement *ref_events;
00050
00051 std::map<std::string, MonitorElement*> mass_distribution;
00052
00053
00054 MonitorElement *tauEt;
00055 MonitorElement *tauEta;
00056 MonitorElement *tauPhi;
00057
00058 MonitorElement *tauEtEffNum;
00059 MonitorElement *tauEtaEffNum;
00060 MonitorElement *tauPhiEffNum;
00061
00062 MonitorElement *tauEtEffDenom;
00063 MonitorElement *tauEtaEffDenom;
00064 MonitorElement *tauPhiEffDenom;
00065
00066 class LVSorter {
00067 public:
00068 LVSorter() {}
00069 ~LVSorter() {}
00070 bool operator()(LV p1, LV p2) {
00071 return p1.Et() < p2.Et();
00072 }
00073 };
00074 };
00075 #endif