00001 #ifndef CSCTrackFinder_CSCTFTrackProducer_h 00002 #define CSCTrackFinder_CSCTFTrackProducer_h 00003 00004 #include <string> 00005 00006 #include <FWCore/Framework/interface/EDProducer.h> 00007 #include <FWCore/ParameterSet/interface/ParameterSet.h> 00008 #include <FWCore/Utilities/interface/InputTag.h> 00009 #include <FWCore/Framework/interface/EventSetup.h> 00010 #include <L1Trigger/CSCTrackFinder/src/CSCTFDTReceiver.h> 00011 00012 class CSCTFTrackBuilder; 00013 00014 class CSCTFTrackProducer : public edm::EDProducer 00015 { 00016 public: 00017 CSCTFTrackProducer(const edm::ParameterSet&); 00018 virtual ~CSCTFTrackProducer(); 00019 void produce(edm::Event & e, const edm::EventSetup& c); 00020 void beginJob(); 00021 00022 private: 00023 CSCTFDTReceiver* my_dtrc; 00024 bool useDT, TMB07, readDtDirect; 00025 edm::InputTag input_module, dt_producer, directProd; 00026 edm::ParameterSet sp_pset ; 00027 unsigned long long m_scalesCacheID ; 00028 unsigned long long m_ptScaleCacheID ; 00029 CSCTFTrackBuilder* my_builder; 00030 }; 00031 00032 #endif