![]() |
![]() |
00001 #ifndef L1ExtraFromDigis_L1ExtraParticlesProd_h 00002 #define L1ExtraFromDigis_L1ExtraParticlesProd_h 00003 // -*- C++ -*- 00004 // 00005 // Package: L1ExtraFromDigis 00006 // Class : L1ExtraParticlesProd 00007 // 00013 // 00014 // Original Author: 00015 // Created: Tue Oct 17 00:13:51 EDT 2006 00016 // $Id: L1ExtraParticlesProd.h,v 1.7 2008/04/03 03:39:05 wsun Exp $ 00017 // 00018 00019 // system include files 00020 00021 // user include files 00022 #include "FWCore/Framework/interface/EDProducer.h" 00023 #include "FWCore/Framework/interface/Event.h" 00024 #include "FWCore/Framework/interface/EventSetup.h" 00025 #include "FWCore/ParameterSet/interface/ParameterSet.h" 00026 #include "FWCore/ParameterSet/interface/InputTag.h" 00027 00028 #include "DataFormats/L1Trigger/interface/L1EmParticle.h" 00029 #include "DataFormats/L1Trigger/interface/L1EmParticleFwd.h" 00030 #include "DataFormats/L1Trigger/interface/L1JetParticle.h" 00031 #include "DataFormats/L1Trigger/interface/L1JetParticleFwd.h" 00032 #include "DataFormats/L1Trigger/interface/L1MuonParticle.h" 00033 #include "DataFormats/L1Trigger/interface/L1MuonParticleFwd.h" 00034 #include "DataFormats/L1Trigger/interface/L1EtMissParticle.h" 00035 #include "DataFormats/L1Trigger/interface/L1EtMissParticleFwd.h" 00036 00037 // forward declarations 00038 class L1CaloGeometry ; 00039 00040 class L1ExtraParticlesProd : public edm::EDProducer { 00041 public: 00042 explicit L1ExtraParticlesProd(const edm::ParameterSet&); 00043 ~L1ExtraParticlesProd(); 00044 00045 private: 00046 virtual void beginJob(const edm::EventSetup&) ; 00047 virtual void produce(edm::Event&, const edm::EventSetup&); 00048 virtual void endJob() ; 00049 00050 // math::XYZTLorentzVector gctLorentzVector( const double& et, 00051 math::PtEtaPhiMLorentzVector gctLorentzVector( const double& et, 00052 const L1GctCand& cand, 00053 const L1CaloGeometry* geom, 00054 bool central ) ; 00055 00056 // ----------member data --------------------------- 00057 bool produceMuonParticles_ ; 00058 edm::InputTag muonSource_ ; 00059 00060 bool produceCaloParticles_ ; 00061 edm::InputTag isoEmSource_ ; 00062 edm::InputTag nonIsoEmSource_ ; 00063 edm::InputTag cenJetSource_ ; 00064 edm::InputTag forJetSource_ ; 00065 edm::InputTag tauJetSource_ ; 00066 edm::InputTag etTotSource_ ; 00067 edm::InputTag etHadSource_ ; 00068 edm::InputTag etMissSource_ ; 00069 00070 static double muonMassGeV_ ; 00071 00072 bool centralBxOnly_ ; 00073 }; 00074 00075 #endif