00001 #ifndef AlCaDiJetsProducer_h 00002 #define AlCaDiJetsProducer_h 00003 00004 00005 // -*- C++ -*- 00006 00007 00008 // system include files 00009 #include <memory> 00010 #include <string> 00011 // user include files 00012 #include "FWCore/Framework/interface/Frameworkfwd.h" 00013 #include "FWCore/Framework/interface/EDProducer.h" 00014 #include "FWCore/Framework/interface/Event.h" 00015 #include "FWCore/Framework/interface/MakerMacros.h" 00016 #include "FWCore/ParameterSet/interface/ParameterSet.h" 00017 #include "FWCore/Framework/interface/ESHandle.h" 00018 #include "FWCore/Framework/interface/EventSetup.h" 00019 00020 #include "DataFormats/Common/interface/Ref.h" 00021 #include "DataFormats/CaloTowers/interface/CaloTowerCollection.h" 00022 #include "DataFormats/DetId/interface/DetId.h" 00023 00024 #include "Geometry/CaloGeometry/interface/CaloGeometry.h" 00025 00026 // 00027 // class declaration 00028 // 00029 namespace edm { 00030 class ParameterSet; 00031 class Event; 00032 class EventSetup; 00033 } 00034 00035 namespace cms 00036 { 00037 00038 class AlCaDiJetsProducer : public edm::EDProducer { 00039 public: 00040 explicit AlCaDiJetsProducer(const edm::ParameterSet&); 00041 ~AlCaDiJetsProducer(); 00042 00043 virtual void beginJob(const edm::EventSetup& ) ; 00044 00045 virtual void produce(edm::Event &, const edm::EventSetup&); 00046 private: 00047 // ----------member data --------------------------- 00048 edm::InputTag jetsInput_; 00049 std::vector<edm::InputTag> ecalLabels_; 00050 edm::InputTag hbheInput_; 00051 edm::InputTag hoInput_; 00052 edm::InputTag hfInput_; 00053 00054 bool allowMissingInputs_; 00055 00056 }; 00057 }// end namespace cms 00058 #endif