00001 #include "PhysicsTools/StarterKit/interface/PatAnalyzerSkeleton.h"
00002
00003
00004
00005
00006
00007
00008
00009
00010
00011
00012
00013
00014 PatAnalyzerSkeleton::PatAnalyzerSkeleton(const edm::ParameterSet& iConfig):
00015 histocontainer_(),
00016 eleLabel_(iConfig.getUntrackedParameter<edm::InputTag>("electronTag")),
00017 muoLabel_(iConfig.getUntrackedParameter<edm::InputTag>("muonTag")),
00018 jetLabel_(iConfig.getUntrackedParameter<edm::InputTag>("jetTag")),
00019 tauLabel_(iConfig.getUntrackedParameter<edm::InputTag>("tauTag")),
00020 metLabel_(iConfig.getUntrackedParameter<edm::InputTag>("metTag")),
00021 phoLabel_(iConfig.getUntrackedParameter<edm::InputTag>("photonTag"))
00022
00023 {
00024
00025
00026 }
00027
00028
00029 PatAnalyzerSkeleton::~PatAnalyzerSkeleton()
00030 {
00031
00032
00033
00034
00035 }
00036
00037
00038
00039
00040
00041
00042
00043 void
00044 PatAnalyzerSkeleton::analyze(const edm::Event& iEvent, const edm::EventSetup& iSetup)
00045 {
00046 using namespace edm;
00047
00048
00049
00050
00051
00052
00053 edm::Handle<edm::View<pat::Muon> > muonHandle;
00054 iEvent.getByLabel(muoLabel_,muonHandle);
00055 edm::View<pat::Muon> muons = *muonHandle;
00056
00057 edm::Handle<edm::View<pat::Jet> > jetHandle;
00058 iEvent.getByLabel(jetLabel_,jetHandle);
00059 edm::View<pat::Jet> jets = *jetHandle;
00060
00061 edm::Handle<edm::View<pat::Electron> > electronHandle;
00062 iEvent.getByLabel(eleLabel_,electronHandle);
00063 edm::View<pat::Electron> electrons = *electronHandle;
00064
00065 edm::Handle<edm::View<pat::MET> > metHandle;
00066 iEvent.getByLabel(metLabel_,metHandle);
00067 edm::View<pat::MET> mets = *metHandle;
00068
00069 edm::Handle<edm::View<pat::Photon> > phoHandle;
00070 iEvent.getByLabel(phoLabel_,phoHandle);
00071 edm::View<pat::Photon> photons = *phoHandle;
00072
00073 edm::Handle<edm::View<pat::Tau> > tauHandle;
00074 iEvent.getByLabel(tauLabel_,tauHandle);
00075 edm::View<pat::Tau> taus = *tauHandle;
00076
00077
00078
00079
00080
00081
00082 size_t njetscounter=0;
00083 for(edm::View<pat::Jet>::const_iterator jet_iter = jets.begin(); jet_iter!=jets.end(); ++jet_iter){
00084 if(jet_iter->pt()>50)
00085 njetscounter++;
00086
00087 }
00088
00089
00090
00091
00092
00093
00094
00095
00096
00097 histocontainer_["njets"]->Fill(njetscounter);
00098
00099
00100
00101 histocontainer_["nelectrons"]->Fill(electrons.size());
00102 histocontainer_["nphotons"]->Fill(photons.size());
00103 histocontainer_["nmuons"]->Fill(muons.size());
00104 histocontainer_["ntaus"]->Fill(taus.size());
00105 }
00106
00107 void
00108 PatAnalyzerSkeleton::beginJob(const edm::EventSetup&)
00109 {
00110
00111
00112
00113 edm::Service<TFileService> fs;
00114
00115
00116
00117
00118
00119
00120
00121
00122
00123
00124
00125
00126
00127
00128 histocontainer_["njets"]=fs->make<TH1D>("njets","jet multiplicity for jets with p_{T} > 50 GeV/c",10,0,10);
00129 histocontainer_["nelectrons"]=fs->make<TH1D>("nelectrons","electron multiplicity",10,0,10);
00130 histocontainer_["ntaus"]=fs->make<TH1D>("ntaus","tau multiplicity",10,0,10);
00131 histocontainer_["nphotons"]=fs->make<TH1D>("nphotons","photon multiplicity",10,0,10);
00132 histocontainer_["nmuons"]=fs->make<TH1D>("nmuons","muon multiplicity",10,0,10);
00133
00134 }
00135
00136
00137 void
00138 PatAnalyzerSkeleton::endJob() {
00139 }
00140
00141
00142 DEFINE_FWK_MODULE(PatAnalyzerSkeleton);