Back to home page

Project CMSSW displayed by LXR

 
 

    


File indexing completed on 2024-04-06 12:25:30

0001 // -*- C++ -*-
0002 //
0003 // Package:    JetPlusTracks
0004 // Class:      JetPlusTrackProducer
0005 //
0006 /**\class JetPlusTrackProducer JetPlusTrackProducer.cc JetPlusTrackProducer.cc
0007 
0008  Description: [one line class summary]
0009 
0010  Implementation:
0011      [Notes on implementation]
0012 */
0013 //
0014 // Original Author:  Olga Kodolova,40 R-A12,+41227671273,
0015 //         Created:  Fri Feb 19 10:14:02 CET 2010
0016 //
0017 //
0018 
0019 // system include files
0020 #include <memory>
0021 
0022 // user include files
0023 #include "FWCore/Framework/interface/Frameworkfwd.h"
0024 #include "FWCore/Framework/interface/stream/EDProducer.h"
0025 #include "FWCore/Framework/interface/Event.h"
0026 #include "FWCore/Framework/interface/MakerMacros.h"
0027 #include "FWCore/ParameterSet/interface/ParameterSet.h"
0028 
0029 #include "JetPlusTrackCorrector.h"
0030 #include "ZSPJPTJetCorrector.h"
0031 
0032 #include "DataFormats/JetReco/interface/CaloJet.h"
0033 #include "DataFormats/JetReco/interface/TrackJet.h"
0034 #include "DataFormats/VertexReco/interface/Vertex.h"
0035 #include "DataFormats/JetReco/interface/TrackExtrapolation.h"
0036 
0037 #include <string>
0038 
0039 //
0040 // class declaration
0041 //
0042 
0043 class JetPlusTrackProducer : public edm::stream::EDProducer<> {
0044 public:
0045   explicit JetPlusTrackProducer(const edm::ParameterSet&);
0046   ~JetPlusTrackProducer() override;
0047   void produce(edm::Event&, const edm::EventSetup&) override;
0048 
0049   // ---------- private data members ---------------------------
0050 private:
0051   JetPlusTrackCorrector* mJPTalgo;
0052   ZSPJPTJetCorrector* mZSPalgo;
0053   edm::InputTag src_;
0054   edm::InputTag srcTrackJets_;
0055   edm::InputTag srcPVs_;
0056   std::string alias_;
0057   bool vectorial_;
0058   bool useZSP_;
0059   bool usePAT_;
0060   double ptCUT_;
0061   double dRcone_;
0062 
0063   edm::EDGetTokenT<edm::View<reco::CaloJet> > input_jets_token_;
0064   edm::EDGetTokenT<edm::View<reco::CaloJet> > input_addjets_token_;
0065   edm::EDGetTokenT<edm::View<reco::TrackJet> > input_trackjets_token_;
0066   edm::EDGetTokenT<reco::VertexCollection> input_vertex_token_;
0067   edm::EDGetTokenT<std::vector<reco::TrackExtrapolation> > mExtrapolations_;
0068 };