00001 #ifndef CalibTracker_SiStripESProducers_SiStripBadStripFakeESSource 00002 #define CalibTracker_SiStripESProducers_SiStripBadStripFakeESSource 00003 00004 // system include files 00005 #include <memory> 00006 #include "boost/shared_ptr.hpp" 00007 00008 // user include files 00009 #include "FWCore/Framework/interface/ModuleFactory.h" 00010 #include "FWCore/Framework/interface/ESProducer.h" 00011 00012 #include "FWCore/Framework/interface/ESHandle.h" 00013 00014 #include "FWCore/Framework/interface/EventSetupRecordIntervalFinder.h" 00015 #include "FWCore/ParameterSet/interface/ParameterSet.h" 00016 #include "FWCore/MessageLogger/interface/MessageLogger.h" 00017 00018 #include "CondFormats/SiStripObjects/interface/SiStripBadStrip.h" 00019 #include "CondFormats/DataRecord/interface/SiStripBadStripRcd.h" 00020 00021 // 00022 // class declaration 00023 // 00024 00025 00026 class SiStripBadStripFakeESSource : public edm::ESProducer, public edm::EventSetupRecordIntervalFinder { 00027 public: 00028 SiStripBadStripFakeESSource(const edm::ParameterSet&); 00029 ~SiStripBadStripFakeESSource(){}; 00030 00031 00032 std::auto_ptr<SiStripBadStrip> produce(const SiStripBadStripRcd&); 00033 00034 private: 00035 00036 void setIntervalFor( const edm::eventsetup::EventSetupRecordKey&, 00037 const edm::IOVSyncValue& iov, 00038 edm::ValidityInterval& iValidity); 00039 00040 SiStripBadStripFakeESSource( const SiStripBadStripFakeESSource& ); 00041 const SiStripBadStripFakeESSource& operator=( const SiStripBadStripFakeESSource& ); 00042 }; 00043 00044 #endif