Go to the documentation of this file.00001
00002
00003
00004
00005 #include <memory>
00006
00007
00008 #include "FWCore/Framework/interface/Frameworkfwd.h"
00009 #include "FWCore/Framework/interface/EDAnalyzer.h"
00010 #include "FWCore/Framework/interface/Event.h"
00011 #include "FWCore/Framework/interface/MakerMacros.h"
00012 #include "FWCore/ServiceRegistry/interface/Service.h"
00013 #include "FWCore/ParameterSet/interface/ParameterSet.h"
00014 #include "FWCore/Utilities/interface/InputTag.h"
00015 #include "DataFormats/BTauReco/interface/IsolatedTauTagInfo.h"
00016 #include "DataFormats/JetReco/interface/CaloJet.h"
00017 #include "DataFormats/TrackReco/interface/Track.h"
00018 #include <string>
00019
00020
00021
00022 #include "DQMServices/Core/interface/DQMStore.h"
00023 #include "DQMServices/Core/interface/MonitorElement.h"
00024
00025
00026 typedef math::XYZTLorentzVectorD LV;
00027 typedef std::vector<LV> LVColl;
00028
00029
00030
00031
00032
00033
00034
00035
00036
00037 class HLTTauDQMTrkPlotter {
00038 public:
00039 HLTTauDQMTrkPlotter(const edm::ParameterSet&,int,int,int,double,bool,double);
00040 ~HLTTauDQMTrkPlotter();
00041 void analyze(const edm::Event&, const edm::EventSetup&,const LVColl&);
00042
00043 private:
00044 std::pair<bool,LV> match(const LV& recoJet, const LVColl& matchingObject);
00045 bool matchJet(const reco::Jet& ,const reco::CaloJetCollection&);
00046
00047
00048 edm::InputTag jetTagSrc_;
00049 edm::InputTag isolJets_;
00050
00051
00052 std::string folder_;
00053 std::string type_;
00054 double mcMatch_;
00055
00056 MonitorElement* jetEt;
00057 MonitorElement* jetEta;
00058 MonitorElement* jetPhi;
00059
00060 MonitorElement* isoJetEt;
00061 MonitorElement* isoJetEta;
00062 MonitorElement* isoJetPhi;
00063
00064 MonitorElement* nPxlTrksInL25Jet;
00065 MonitorElement* nQPxlTrksInL25Jet;
00066 MonitorElement* signalLeadTrkPt;
00067 MonitorElement* hasLeadTrack;
00068
00069 MonitorElement* EtEffNum;
00070 MonitorElement* EtEffDenom;
00071 MonitorElement* EtaEffNum;
00072 MonitorElement* EtaEffDenom;
00073 MonitorElement* PhiEffNum;
00074 MonitorElement* PhiEffDenom;
00075
00076
00077
00078 DQMStore* store;
00079
00080 bool doRef_;
00081
00082
00083
00084 double EtMax_;
00085 int NPtBins_;
00086 int NEtaBins_;
00087 int NPhiBins_;
00088
00089 };
00090
00091
00092