Go to the documentation of this file.00001
00002
00003
00004
00005 #ifndef HLTTauDQMCaloPlotter_h
00006 #define HLTTauDQMCaloPlotter_h
00007
00008 #include "DQMOffline/Trigger/interface/HLTTauDQMPlotter.h"
00009
00010 #include "DataFormats/TauReco/interface/L2TauInfoAssociation.h"
00011
00012 class HLTTauDQMCaloPlotter : public HLTTauDQMPlotter {
00013 public:
00014 HLTTauDQMCaloPlotter( const edm::ParameterSet&, int, int, int, double, bool, double, std::string );
00015 ~HLTTauDQMCaloPlotter();
00016 const std::string name() { return name_; }
00017 void analyze( const edm::Event&, const edm::EventSetup&, const std::map<int,LVColl>& );
00018
00019 private:
00020
00021 std::vector<edm::InputTag> l2preJets_;
00022 edm::InputTag l2TauInfoAssoc_;
00023 edm::InputTag met_;
00024 bool doRef_;
00025
00026
00027 double matchDeltaRMC_;
00028 edm::InputTag l2Isolated_;
00029
00030
00031
00032 double EtMax_;
00033 int NPtBins_;
00034 int NEtaBins_;
00035 int NPhiBins_;
00036
00037
00038 MonitorElement* preJetEt;
00039 MonitorElement* preJetEta;
00040 MonitorElement* preJetPhi;
00041
00042 MonitorElement* jetEt;
00043 MonitorElement* jetEta;
00044 MonitorElement* jetPhi;
00045
00046 MonitorElement* isoJetEt;
00047 MonitorElement* isoJetEta;
00048 MonitorElement* isoJetPhi;
00049
00050 MonitorElement* jetEtRes;
00051
00052 MonitorElement* ecalIsolEt;
00053 MonitorElement* hcalIsolEt;
00054
00055 MonitorElement* seedEcalEt;
00056 MonitorElement* seedHcalEt;
00057
00058 MonitorElement* ecalClusterEtaRMS;
00059 MonitorElement* ecalClusterPhiRMS;
00060 MonitorElement* ecalClusterDeltaRRMS;
00061 MonitorElement* nEcalClusters;
00062
00063 MonitorElement* hcalClusterEtaRMS;
00064 MonitorElement* hcalClusterPhiRMS;
00065 MonitorElement* hcalClusterDeltaRRMS;
00066 MonitorElement* nHcalClusters;
00067
00068 MonitorElement* recoEtEffNum;
00069 MonitorElement* recoEtEffDenom;
00070 MonitorElement* recoEtaEffNum;
00071 MonitorElement* recoEtaEffDenom;
00072 MonitorElement* recoPhiEffNum;
00073 MonitorElement* recoPhiEffDenom;
00074
00075 MonitorElement* isoEtEffNum;
00076 MonitorElement* isoEtEffDenom;
00077 MonitorElement* isoEtaEffNum;
00078 MonitorElement* isoEtaEffDenom;
00079 MonitorElement* isoPhiEffNum;
00080 MonitorElement* isoPhiEffDenom;
00081
00082 bool matchJet( const reco::Jet&, const reco::CaloJetCollection& );
00083 std::pair<bool,reco::CaloJet> inverseMatch( const LV&, const reco::CaloJetCollection& );
00084
00085 class SorterByPt {
00086 public:
00087 SorterByPt() {}
00088 ~SorterByPt() {}
00089 bool operator() (reco::CaloJet jet1 , reco::CaloJet jet2) {
00090 return jet1.pt() > jet2.pt();
00091 }
00092 };
00093 };
00094 #endif