CMS 3D CMS Logo

HcalSimParameterMap.cc

Go to the documentation of this file.
00001 #include "SimCalorimetry/HcalSimAlgos/interface/HcalSimParameterMap.h"
00002 #include "DataFormats/DetId/interface/DetId.h"
00003 #include "DataFormats/HcalDetId/interface/HcalSubdetector.h"
00004 #include "DataFormats/HcalDetId/interface/HcalDetId.h"
00005 #include "DataFormats/HcalDetId/interface/HcalZDCDetId.h"  
00006 #include <iostream>
00007 HcalSimParameterMap::HcalSimParameterMap() :
00008   theHBParameters(2000., 0.3305,
00009                   117, 5, 
00010                   10, 5, true, true,
00011                   1, std::vector<double>(16, 117.)),
00012   theHEParameters(2000., 0.3305,
00013                   178, 5,
00014                   10, 5, true, true,
00015                   16, std::vector<double>(16, 178.)),
00016   theHOParameters( 4000., 0.3065, 
00017                    217., 5, 
00018                    10, 5, true, true,
00019                    1, std::vector<double>(16, 217.)),
00020   theHFParameters1(6., 2.79,
00021                    1/0.278 , -4,
00022                    true),
00023   theHFParameters2(6., 2.06,
00024                    1/0.267 , -4,
00025                    true),
00026   theZDCParameters(1., 4.3333,
00027                    2.09 , -4,
00028                    false)
00029 {
00030 }
00031 /*
00032   CaloSimParameters(double simHitToPhotoelectrons, double photoelectronsToAnalog,
00033                  double samplingFactor, double timePhase,
00034                  int readoutFrameSize, int binOfMaximum,
00035                  bool doPhotostatistics, bool syncPhase=true);
00036 
00037 */
00038 
00039 HcalSimParameterMap::HcalSimParameterMap(const edm::ParameterSet & p)
00040 : theHBParameters(  p.getParameter<edm::ParameterSet>("hb") ),
00041   theHEParameters(  p.getParameter<edm::ParameterSet>("he") ),
00042   theHOParameters(  p.getParameter<edm::ParameterSet>("ho") ),
00043   theHFParameters1( p.getParameter<edm::ParameterSet>("hf1") ),
00044   theHFParameters2( p.getParameter<edm::ParameterSet>("hf2") ),
00045   theZDCParameters( p.getParameter<edm::ParameterSet>("zdc") )
00046 {
00047 }
00048 
00049 const CaloSimParameters & HcalSimParameterMap::simParameters(const DetId & detId) const {
00050   HcalGenericDetId genericId(detId);
00051   if(genericId.isHcalZDCDetId())
00052     return theZDCParameters;
00053   HcalDetId hcalDetId(detId);
00054   if(hcalDetId.subdet() == HcalBarrel) {
00055      return theHBParameters;
00056   } else if(hcalDetId.subdet() == HcalEndcap) {
00057      return theHEParameters;
00058   } else if(hcalDetId.subdet() == HcalOuter) {
00059      return theHOParameters;
00060   } else { // HF
00061     if(hcalDetId.depth() == 1) {
00062       return theHFParameters1;
00063     } else {
00064       return theHFParameters2;
00065     }
00066   }
00067 }
00068 
00069 void HcalSimParameterMap::setDbService(const HcalDbService * dbService)
00070 {
00071   theHBParameters.setDbService(dbService);
00072   theHEParameters.setDbService(dbService);
00073   theHOParameters.setDbService(dbService);
00074   theHFParameters1.setDbService(dbService);
00075   theHFParameters2.setDbService(dbService);
00076   theZDCParameters.setDbService(dbService);
00077 }

Generated on Tue Jun 9 17:46:22 2009 for CMSSW by  doxygen 1.5.4