CMS 3D CMS Logo

CMSSW_4_4_3_patch1/src/SimCalorimetry/HcalSimAlgos/interface/HcalSimParameterMap.h

Go to the documentation of this file.
00001 #ifndef HcalSimAlgos_HcalSimParameterMap_h
00002 #define HcalSimAlgos_HcalSimParameterMap_h
00003 
00004 #include "SimCalorimetry/CaloSimAlgos/interface/CaloVSimParameterMap.h"
00005 #include "SimCalorimetry/HcalSimAlgos/interface/HcalSimParameters.h"
00006 #include "SimCalorimetry/HcalSimAlgos/interface/HFSimParameters.h"
00007 #include "FWCore/ParameterSet/interface/ParameterSet.h"
00008 #include "DataFormats/HcalDetId/interface/HcalDetId.h"
00009 
00010 class HcalSimParameterMap : public CaloVSimParameterMap
00011 {
00012 public:
00014   HcalSimParameterMap();
00016   HcalSimParameterMap(const edm::ParameterSet & p);
00017 
00018   virtual ~HcalSimParameterMap() {}
00019 
00020   virtual const CaloSimParameters & simParameters(const DetId & id) const;
00021 
00023   const HcalSimParameters & hbParameters() const {return theHBParameters;}
00024   const HcalSimParameters & heParameters() const {return theHEParameters;}
00025   const HcalSimParameters & hoParameters() const  {return theHOParameters;}
00026   const HFSimParameters & hfParameters1() const  {return theHFParameters1;}
00027   const HFSimParameters & hfParameters2() const  {return theHFParameters2;}
00028   const HFSimParameters & zdcParameters() const  {return theZDCParameters;}
00029 
00030   void setDbService(const HcalDbService * service);
00031 
00032   void setFrameSize(const DetId & detId, int frameSize);
00033   
00034   void setHOZecotekDetIds(const std::vector<HcalDetId> & ids)
00035   {
00036     theHOZecotekDetIds = ids;
00037   }
00038   void setHOHamamatsuDetIds(const std::vector<HcalDetId> & ids)
00039   {
00040     theHOHamamatsuDetIds = ids;
00041   }
00042 
00043 private:
00044   void setFrameSize(CaloSimParameters & parameters, int frameSize);
00045 
00046   HcalSimParameters theHBParameters;
00047   HcalSimParameters theHEParameters;
00048   HcalSimParameters theHOParameters;
00049   HcalSimParameters theHOZecotekSiPMParameters;
00050   HcalSimParameters theHOHamamatsuSiPMParameters;
00051   HFSimParameters theHFParameters1;
00052   HFSimParameters theHFParameters2;
00053   HFSimParameters theZDCParameters;
00054   std::vector<HcalDetId> theHOZecotekDetIds;
00055   std::vector<HcalDetId> theHOHamamatsuDetIds;
00056 };
00057 
00058 #endif
00059