00001 #ifndef RPCDigiProducer_h 00002 #define RPCDigiProducer_h 00003 00004 #include "FWCore/Framework/interface/EDProducer.h" 00005 #include "FWCore/Framework/interface/Event.h" 00006 #include "FWCore/Framework/interface/EventSetup.h" 00007 #include "FWCore/ParameterSet/interface/ParameterSet.h" 00008 #include "SimDataFormats/TrackingHit/interface/PSimHitContainer.h" 00009 #include "SimMuon/RPCDigitizer/src/RPCDigitizer.h" 00010 #include "CondFormats/RPCObjects/interface/RPCStripNoises.h" 00011 #include "CondFormats/DataRecord/interface/RPCStripNoisesRcd.h" 00012 #include "CondFormats/RPCObjects/interface/RPCClusterSize.h" 00013 #include "CondFormats/DataRecord/interface/RPCClusterSizeRcd.h" 00014 00015 class RPCGeometry; 00016 class RPCSimSetUp; 00017 class RPCSynchronizer; 00018 00019 class RPCDigiProducer : public edm::EDProducer 00020 { 00021 public: 00022 00023 typedef RPCDigitizer::RPCDigiSimLinks RPCDigitizerSimLinks; 00024 00025 explicit RPCDigiProducer(const edm::ParameterSet& ps); 00026 virtual ~RPCDigiProducer(); 00027 00028 virtual void beginRun( edm::Run&, const edm::EventSetup& ); 00029 virtual void endRun( edm::Run&, const edm::EventSetup& ) {;} 00030 00032 virtual void produce(edm::Event& e, const edm::EventSetup& c); 00033 00034 void setRPCSetUp(std::vector<RPCStripNoises::NoiseItem>, std::vector<double>); 00035 00036 private: 00037 00038 RPCDigitizer* theDigitizer; 00039 RPCSimSetUp* theRPCSimSetUp; 00040 00041 //Name of Collection used for create the XF 00042 std::string collection_for_XF; 00043 }; 00044 00045 #endif 00046