![]() |
![]() |
00001 #include "RecoTauTag/HLTProducers/interface/PFJetToCaloProducer.h" 00002 #include "DataFormats/VertexReco/interface/Vertex.h" 00003 #include "DataFormats/VertexReco/interface/VertexFwd.h" 00004 #include "Math/GenVector/VectorUtil.h" 00005 // 00006 // class decleration 00007 // 00008 00009 00010 PFJetToCaloProducer::PFJetToCaloProducer(const edm::ParameterSet& iConfig) 00011 { 00012 00013 tauSrc_ = iConfig.getParameter<edm::InputTag>("Source"); 00014 produces<reco::CaloJetCollection>(); 00015 } 00016 00017 PFJetToCaloProducer::~PFJetToCaloProducer(){ } 00018 00019 void PFJetToCaloProducer::produce(edm::Event& iEvent, const edm::EventSetup& iES) 00020 { 00021 00022 using namespace reco; 00023 using namespace edm; 00024 using namespace std; 00025 00026 CaloJet::Specific specific; 00027 00028 CaloJetCollection * jetCollectionTmp = new CaloJetCollection; 00029 edm::Handle<PFJetCollection> tauJets; 00030 iEvent.getByLabel( tauSrc_, tauJets ); 00031 PFJetCollection::const_iterator i = tauJets->begin(); 00032 for(;i !=tauJets->end(); i++ ) { 00033 00034 // cout <<"Jet Tracks"<<i->chargedHadronMultiplicity()<<std::endl; 00035 CaloJet jet(i->p4(),i->vertex(),specific); 00036 jet.setPdgId(15); 00037 jetCollectionTmp->push_back(jet); 00038 } 00039 00040 00041 00042 auto_ptr<reco::CaloJetCollection> selectedTaus(jetCollectionTmp); 00043 00044 iEvent.put(selectedTaus); 00045 00046 00047 }