00001 #ifndef EventFilter_SiStripRawToDigi_SiStripRawToDigiModule_H 00002 #define EventFilter_SiStripRawToDigi_SiStripRawToDigiModule_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 "boost/cstdint.hpp" 00009 #include <string> 00010 00011 namespace sistrip { class RawToDigiModule; } 00012 namespace sistrip { class RawToDigiUnpacker; } 00013 class SiStripFedCabling; 00014 00023 namespace sistrip { 00024 00025 class RawToDigiModule : public edm::EDProducer { 00026 00027 public: 00028 00029 RawToDigiModule( const edm::ParameterSet& ); 00030 ~RawToDigiModule(); 00031 00032 virtual void beginRun( edm::Run&, const edm::EventSetup& ); 00033 virtual void produce( edm::Event&, const edm::EventSetup& ); 00034 00035 private: 00036 00037 void updateCabling( const edm::EventSetup& ); 00038 00039 RawToDigiUnpacker* rawToDigi_; 00040 edm::InputTag productLabel_; 00041 const SiStripFedCabling* cabling_; 00042 uint32_t cacheId_; 00043 bool extractCm_; 00044 bool doFullCorruptBufferChecks_; 00045 00046 //March 2012: add flag for disabling APVe check in configuration 00047 bool doAPVEmulatorCheck_; 00048 00049 }; 00050 00051 } 00052 00053 #endif // EventFilter_SiStripRawToDigi_SiStripRawToDigiModule_H 00054