Back to home page

Project CMSSW displayed by LXR

 
 

    


File indexing completed on 2024-04-06 11:58:38

0001 #ifndef _ALCAELECTRONTRACKSREDUCER_H
0002 #define _ALCAELECTRONTRACKSREDUCER_H
0003 
0004 // -*- C++ -*-
0005 //
0006 // Package:    AlCaElectronTracksReducer
0007 // Class:      AlCaElectronTracksReducer
0008 //
0009 /**\class AlCaECALRecHitReducer AlCaECALRecHitReducer.cc Calibration/EcalAlCaRecoProducers/src/AlCaECALRecHitReducer.cc
0010 
0011  Description: This plugin saves tracks and trackExtras that are associated to an electron creating two new track and track extra collections
0012 
0013 */
0014 //
0015 // Original Author:  Shervin Nourbakhsh
0016 //         Created:  Sat Feb 23 10:07:01 CEST 2013
0017 // $Id: AlCaElectronTracksReducer.h,v 1.00 2013/02/23 10:10:34 shervin Exp $
0018 //
0019 
0020 // system include files
0021 #include <memory>
0022 
0023 // user include files
0024 #include "FWCore/Framework/interface/Frameworkfwd.h"
0025 #include "FWCore/Framework/interface/global/EDProducer.h"
0026 
0027 #include "FWCore/Framework/interface/Event.h"
0028 #include "FWCore/Framework/interface/MakerMacros.h"
0029 #include "FWCore/Utilities/interface/InputTag.h"
0030 #include "FWCore/ParameterSet/interface/ParameterSet.h"
0031 
0032 // input collections
0033 #include "DataFormats/EgammaCandidates/interface/GsfElectronFwd.h"
0034 #include "DataFormats/TrackReco/interface/TrackFwd.h"
0035 #include "DataFormats/TrackReco/interface/TrackExtraFwd.h"
0036 
0037 class AlCaElectronTracksReducer : public edm::global::EDProducer<> {
0038 public:
0039   explicit AlCaElectronTracksReducer(const edm::ParameterSet &);
0040 
0041   void produce(edm::StreamID, edm::Event &, const edm::EventSetup &) const override;
0042 
0043 private:
0044   // ----------member data ---------------------------
0045   // input collections
0046   edm::EDGetTokenT<reco::GsfElectronCollection> electronToken_;
0047   edm::EDGetTokenT<reco::TrackCollection> generalTracksToken_;
0048   edm::EDGetTokenT<reco::TrackExtraCollection> generalTracksExtraToken_;
0049 
0050   // output collection' names
0051   std::string alcaTrackCollection_;
0052   std::string alcaTrackExtraCollection_;
0053 };
0054 
0055 #endif