CMS 3D CMS Logo

/data/refman/pasoursint/CMSSW_5_2_9/src/CalibCalorimetry/HcalPlugins/src/HcalDbProducer.h

Go to the documentation of this file.
00001 // -*- C++ -*-
00002 //
00003 // Package:    HcalDbProducer
00004 // Class:      HcalDbProducer
00005 // 
00013 //
00014 // Original Author:  Fedor Ratnikov
00015 //         Created:  Tue Aug  9 19:10:10 CDT 2005
00016 // $Id: HcalDbProducer.h,v 1.17 2009/10/16 22:12:57 kukartse Exp $
00017 //
00018 //
00019 
00020 
00021 // system include files
00022 #include <memory>
00023 #include "boost/shared_ptr.hpp"
00024 
00025 // user include files
00026 #include "FWCore/Framework/interface/ModuleFactory.h"
00027 #include "FWCore/Framework/interface/ESProducer.h"
00028 
00029 class HcalDbService;
00030 class HcalDbRecord;
00031 
00032 #include "CondFormats/DataRecord/interface/HcalAllRcds.h"
00033 
00034 
00035 class HcalDbProducer : public edm::ESProducer {
00036  public:
00037   HcalDbProducer( const edm::ParameterSet& );
00038   ~HcalDbProducer();
00039   
00040   boost::shared_ptr<HcalDbService> produce( const HcalDbRecord& );
00041 
00042   // callbacks
00043   void pedestalsCallback (const HcalPedestalsRcd& fRecord);
00044   void pedestalWidthsCallback (const HcalPedestalWidthsRcd& fRecord);
00045   void gainsCallback (const HcalGainsRcd& fRecord);
00046   void gainWidthsCallback (const HcalGainWidthsRcd& fRecord);
00047   void QIEDataCallback (const HcalQIEDataRcd& fRecord);
00048   void channelQualityCallback (const HcalChannelQualityRcd& fRecord);
00049   void zsThresholdsCallback (const HcalZSThresholdsRcd& fRecord);
00050   void respCorrsCallback (const HcalRespCorrsRcd& fRecord);
00051   void L1triggerObjectsCallback (const HcalL1TriggerObjectsRcd& fRecord);
00052   void electronicsMapCallback (const HcalElectronicsMapRcd& fRecord);
00053   void timeCorrsCallback (const HcalTimeCorrsRcd& fRecord);
00054   void LUTCorrsCallback (const HcalLUTCorrsRcd& fRecord);
00055   void PFCorrsCallback (const HcalPFCorrsRcd& fRecord);
00056   void lutMetadataCallback (const HcalLutMetadataRcd& fRecord);
00057 
00058    private:
00059       // ----------member data ---------------------------
00060   boost::shared_ptr<HcalDbService> mService;
00061   std::vector<std::string> mDumpRequest;
00062   std::ostream* mDumpStream;
00063 };