CMS 3D CMS Logo

/data/refman/pasoursint/CMSSW_5_3_10_patch2/src/CalibCalorimetry/HcalPlugins/src/HcalTextCalibrations.h

Go to the documentation of this file.
00001 //
00002 // Original Author:  Fedor Ratnikov Oct 21, 2005
00003 // $Id: HcalTextCalibrations.h,v 1.15 2011/10/26 14:00:29 xiezhen 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 HcalTimeCorrsRcd;
00025 class HcalLUTCorrsRcd;
00026 class HcalPFCorrsRcd;
00027 class HcalZSThresholdsRcd;
00028 class HcalL1TriggerObjectsRcd;
00029 class HcalValidationCorrsRcd;
00030 class HcalLutMetadataRcd;
00031 class HcalDcsRcd;
00032 class HcalDcsMapRcd;
00033 class HcalCholeskyMatricesRcd;
00034 class HcalCovarianceMatricesRcd;
00035 class HcalRecoParamsRcd;
00036 class HcalLongRecoParamsRcd;
00037 class HcalMCParamsRcd;
00038 class HcalFlagHFDigiTimeParamsRcd;
00039 class HcalTimingParamsRcd;
00040 
00041 class HcalTextCalibrations : public edm::ESProducer,
00042                        public edm::EventSetupRecordIntervalFinder
00043 {
00044 public:
00045   HcalTextCalibrations (const edm::ParameterSet& );
00046   ~HcalTextCalibrations ();
00047 
00048   void produce () {};
00049   
00050 protected:
00051   virtual void setIntervalFor(const edm::eventsetup::EventSetupRecordKey&,
00052                               const edm::IOVSyncValue& , 
00053                               edm::ValidityInterval&) ;
00054 
00055   std::auto_ptr<HcalPedestals> producePedestals (const HcalPedestalsRcd& rcd);
00056   std::auto_ptr<HcalPedestalWidths> producePedestalWidths (const HcalPedestalWidthsRcd& rcd);
00057   std::auto_ptr<HcalGains> produceGains (const HcalGainsRcd& rcd);
00058   std::auto_ptr<HcalGainWidths> produceGainWidths (const HcalGainWidthsRcd& rcd);
00059   std::auto_ptr<HcalQIEData> produceQIEData (const HcalQIEDataRcd& rcd);
00060   std::auto_ptr<HcalChannelQuality> produceChannelQuality (const HcalChannelQualityRcd& rcd);
00061   std::auto_ptr<HcalElectronicsMap> produceElectronicsMap (const HcalElectronicsMapRcd& rcd);
00062 
00063   std::auto_ptr<HcalRespCorrs> produceRespCorrs (const HcalRespCorrsRcd& rcd);
00064   std::auto_ptr<HcalZSThresholds> produceZSThresholds (const HcalZSThresholdsRcd& rcd);
00065   std::auto_ptr<HcalL1TriggerObjects> produceL1TriggerObjects (const HcalL1TriggerObjectsRcd& rcd);
00066   std::auto_ptr<HcalTimeCorrs> produceTimeCorrs (const HcalTimeCorrsRcd& rcd);
00067   std::auto_ptr<HcalLUTCorrs> produceLUTCorrs (const HcalLUTCorrsRcd& rcd);
00068   std::auto_ptr<HcalPFCorrs> producePFCorrs (const HcalPFCorrsRcd& rcd);
00069 
00070   std::auto_ptr<HcalRecoParams> produceRecoParams (const HcalRecoParamsRcd& rcd);
00071   std::auto_ptr<HcalLongRecoParams> produceLongRecoParams (const HcalLongRecoParamsRcd& rcd);
00072   std::auto_ptr<HcalMCParams> produceMCParams (const HcalMCParamsRcd& rcd);
00073   std::auto_ptr<HcalFlagHFDigiTimeParams> produceFlagHFDigiTimeParams (const HcalFlagHFDigiTimeParamsRcd& rcd);
00074 
00075   std::auto_ptr<HcalValidationCorrs> produceValidationCorrs (const HcalValidationCorrsRcd& rcd);
00076   std::auto_ptr<HcalLutMetadata> produceLutMetadata (const HcalLutMetadataRcd& rcd);
00077   std::auto_ptr<HcalDcsValues> produceDcsValues (HcalDcsRcd const & rcd);
00078   std::auto_ptr<HcalDcsMap> produceDcsMap (const HcalDcsMapRcd& rcd);
00079   std::auto_ptr<HcalCholeskyMatrices> produceCholeskyMatrices (const HcalCholeskyMatricesRcd& rcd);
00080   std::auto_ptr<HcalCovarianceMatrices> produceCovarianceMatrices (const HcalCovarianceMatricesRcd& rcd);
00081   
00082   std::auto_ptr<HcalTimingParams> produceTimingParams (const HcalTimingParamsRcd& rcd);
00083  private:
00084   std::map <std::string, std::string> mInputs;
00085 };
00086