00001 // 00002 // Original Author: Fedor Ratnikov Oct 21, 2005 00003 // $Id: HcalTextCalibrations.h,v 1.3 2008/03/03 20:22:48 rofierzy Exp $ 00004 // 00005 // 00006 #include <map> 00007 #include <string> 00008 00009 #include "FWCore/Framework/interface/ESProducer.h" 00010 #include "FWCore/Framework/interface/EventSetupRecordIntervalFinder.h" 00011 #include "FWCore/ParameterSet/interface/ParameterSet.h" 00012 00013 #include "CondFormats/HcalObjects/interface/AllObjects.h" 00014 class ParameterSet; 00015 00016 class HcalPedestalsRcd; 00017 class HcalPedestalWidthsRcd; 00018 class HcalGainsRcd; 00019 class HcalGainWidthsRcd; 00020 class HcalQIEDataRcd; 00021 class HcalChannelQualityRcd; 00022 class HcalElectronicsMapRcd; 00023 class HcalRespCorrsRcd; 00024 class HcalZSThresholdsRcd; 00025 00026 class HcalTextCalibrations : public edm::ESProducer, 00027 public edm::EventSetupRecordIntervalFinder 00028 { 00029 public: 00030 HcalTextCalibrations (const edm::ParameterSet& ); 00031 ~HcalTextCalibrations (); 00032 00033 void produce () {}; 00034 00035 protected: 00036 virtual void setIntervalFor(const edm::eventsetup::EventSetupRecordKey&, 00037 const edm::IOVSyncValue& , 00038 edm::ValidityInterval&) ; 00039 00040 std::auto_ptr<HcalPedestals> producePedestals (const HcalPedestalsRcd& rcd); 00041 std::auto_ptr<HcalPedestalWidths> producePedestalWidths (const HcalPedestalWidthsRcd& rcd); 00042 std::auto_ptr<HcalGains> produceGains (const HcalGainsRcd& rcd); 00043 std::auto_ptr<HcalGainWidths> produceGainWidths (const HcalGainWidthsRcd& rcd); 00044 std::auto_ptr<HcalQIEData> produceQIEData (const HcalQIEDataRcd& rcd); 00045 std::auto_ptr<HcalChannelQuality> produceChannelQuality (const HcalChannelQualityRcd& rcd); 00046 std::auto_ptr<HcalElectronicsMap> produceElectronicsMap (const HcalElectronicsMapRcd& rcd); 00047 00048 std::auto_ptr<HcalRespCorrs> produceRespCorrs (const HcalRespCorrsRcd& rcd); 00049 std::auto_ptr<HcalZSThresholds> produceZSThresholds (const HcalZSThresholdsRcd& rcd); 00050 private: 00051 std::map <std::string, std::string> mInputs; 00052 }; 00053