CMS 3D CMS Logo

/data/refman/pasoursint/CMSSW_4_1_8_patch12/src/RecoTauTag/HLTProducers/src/PFJetToCaloProducer.cc

Go to the documentation of this file.
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 }