00001 #include <map> 00002 #include <string> 00003 00004 #include "FWCore/Framework/interface/ESProducer.h" 00005 #include "FWCore/Framework/interface/EventSetupRecordIntervalFinder.h" 00006 #include "FWCore/ParameterSet/interface/ParameterSet.h" 00007 00008 class ParameterSet; 00009 00010 class CastorPedestals; 00011 class CastorPedestalWidths; 00012 //class CastorGains; 00013 //class CastorGainWidths; 00014 class CastorQIEData; 00015 //class CastorChannelQuality; 00016 class CastorElectronicsMap; 00017 00018 class CastorPedestalsRcd; 00019 class CastorPedestalWidthsRcd; 00020 class CastorGainsRcd; 00021 class CastorGainWidthsRcd; 00022 class CastorQIEDataRcd; 00023 class CastorChannelQualityRcd; 00024 class CastorElectronicsMapRcd; 00025 class CastorRecoParamsRcd; 00026 class CastorSaturationCorrsRcd; 00027 00028 class CastorTextCalibrations : public edm::ESProducer, 00029 public edm::EventSetupRecordIntervalFinder 00030 { 00031 public: 00032 CastorTextCalibrations (const edm::ParameterSet& ); 00033 ~CastorTextCalibrations (); 00034 00035 void produce () {}; 00036 00037 protected: 00038 virtual void setIntervalFor(const edm::eventsetup::EventSetupRecordKey&, 00039 const edm::IOVSyncValue& , 00040 edm::ValidityInterval&) ; 00041 00042 std::auto_ptr<CastorPedestals> producePedestals (const CastorPedestalsRcd& rcd); 00043 std::auto_ptr<CastorPedestalWidths> producePedestalWidths (const CastorPedestalWidthsRcd& rcd); 00044 std::auto_ptr<CastorGains> produceGains (const CastorGainsRcd& rcd); 00045 std::auto_ptr<CastorGainWidths> produceGainWidths (const CastorGainWidthsRcd& rcd); 00046 std::auto_ptr<CastorQIEData> produceQIEData (const CastorQIEDataRcd& rcd); 00047 std::auto_ptr<CastorChannelQuality> produceChannelQuality (const CastorChannelQualityRcd& rcd); 00048 std::auto_ptr<CastorElectronicsMap> produceElectronicsMap (const CastorElectronicsMapRcd& rcd); 00049 std::auto_ptr<CastorRecoParams> produceRecoParams (const CastorRecoParamsRcd& rcd); 00050 std::auto_ptr<CastorSaturationCorrs> produceSaturationCorrs (const CastorSaturationCorrsRcd& rcd); 00051 00052 private: 00053 std::map <std::string, std::string> mInputs; 00054 }; 00055