CMS 3D CMS Logo

/data/refman/pasoursint/CMSSW_5_3_9_patch3/src/CalibMuon/RPCCalibration/interface/RPCPerformanceESSource.h

Go to the documentation of this file.
00001 #ifndef CalibTracker_RPCCalibration_RPCPerformanceESSource_H
00002 #define CalibTracker_RPCCalibration_RPCPerformanceESSource_H
00003 
00004 #include "FWCore/Framework/interface/ESProducer.h"
00005 #include "FWCore/Framework/interface/ESHandle.h"
00006 #include "FWCore/Framework/interface/EventSetupRecordIntervalFinder.h"
00007 #include "FWCore/ParameterSet/interface/ParameterSet.h"
00008 #include "boost/cstdint.hpp"
00009 #include <memory>
00010 
00011 class RPCStripNoises;
00012 class RPCStripNoisesRcd;
00013 
00019 class RPCPerformanceESSource : public edm::ESProducer, public edm::EventSetupRecordIntervalFinder {
00020 
00021  public:
00022 
00023   RPCPerformanceESSource( const edm::ParameterSet& );
00024   virtual ~RPCPerformanceESSource() {;}
00025   
00026   std::auto_ptr<RPCStripNoises> produce( const RPCStripNoisesRcd& );
00027   
00028   // protected:
00029 
00030   virtual void setIntervalFor( const edm::eventsetup::EventSetupRecordKey&,
00031                                const edm::IOVSyncValue&,
00032                                edm::ValidityInterval& );
00033   
00034   // private:
00035   
00036   RPCPerformanceESSource( const RPCPerformanceESSource& );
00037   const RPCPerformanceESSource& operator=( const RPCPerformanceESSource& );
00038 
00039   virtual RPCStripNoises* makeNoise() = 0; 
00040 
00041 };
00042 
00043 #endif // CalibTracker_RPCCalibration_RPCPerformanceESSource_H