CMS 3D CMS Logo

Calorimeter Class Reference

#include <FastSimulation/CalorimeterProperties/interface/Calorimeter.h>

Inheritance diagram for Calorimeter:

CaloGeometryHelper

List of all members.

Public Member Functions

 Calorimeter (const edm::ParameterSet &caloParameters)
 Calorimeter ()
const ECALPropertiesecalProperties (int onEcal) const
 ECAL properties.
const EcalBarrelGeometrygetEcalBarrelGeometry () const
const EcalEndcapGeometrygetEcalEndcapGeometry () const
const CaloSubdetectorGeometrygetEcalGeometry (int subdetn) const
const EcalPreshowerGeometrygetEcalPreshowerGeometry () const
const CaloSubdetectorTopologygetEcalTopology (int subdetn) const
const CaloSubdetectorGeometrygetHcalGeometry () const
const HCALPropertieshcalProperties (int onHcal) const
 HCAL properties.
const PreshowerLayer1Propertieslayer1Properties (int onLayer1) const
 Preshower Layer1 properties.
const PreshowerLayer2Propertieslayer2Properties (int onLayer2) const
 Preshower Layer2 properties.
void setupGeometry (const CaloGeometry &pG)
void setupTopology (const CaloTopology &)
 ~Calorimeter ()

Protected Attributes

const EcalBarrelGeometryEcalBarrelGeometry_
const CaloSubdetectorTopologyEcalBarrelTopology_
const EcalEndcapGeometryEcalEndcapGeometry_
const CaloSubdetectorTopologyEcalEndcapTopology_
const CaloSubdetectorGeometryHcalGeometry_
ECALBarrelPropertiesmyECALBarrelProperties_
ECALEndcapPropertiesmyECALEndcapProperties_
HCALBarrelPropertiesmyHCALBarrelProperties_
HCALEndcapPropertiesmyHCALEndcapProperties_
HCALForwardPropertiesmyHCALForwardProperties_
PreshowerLayer1PropertiesmyPreshowerLayer1Properties_
PreshowerLayer2PropertiesmyPreshowerLayer2Properties_
const EcalPreshowerGeometryPreshowerGeometry_


Detailed Description

Definition at line 26 of file Calorimeter.h.


Constructor & Destructor Documentation

Calorimeter::Calorimeter (  ) 

Definition at line 21 of file Calorimeter.cc.

Calorimeter::Calorimeter ( const edm::ParameterSet caloParameters  ) 

Definition at line 37 of file Calorimeter.cc.

References edm::ParameterSet::getParameter(), myECALBarrelProperties_, myECALEndcapProperties_, myHCALBarrelProperties_, myHCALEndcapProperties_, myHCALForwardProperties_, myPreshowerLayer1Properties_, and myPreshowerLayer2Properties_.

Calorimeter::~Calorimeter (  ) 

Definition at line 61 of file Calorimeter.cc.

References myECALBarrelProperties_, myECALEndcapProperties_, myHCALBarrelProperties_, myHCALEndcapProperties_, myHCALForwardProperties_, myPreshowerLayer1Properties_, and myPreshowerLayer2Properties_.


Member Function Documentation

const ECALProperties * Calorimeter::ecalProperties ( int  onEcal  )  const

ECAL properties.

Definition at line 73 of file Calorimeter.cc.

References myECALBarrelProperties_, myECALEndcapProperties_, and NULL.

Referenced by CaloHitMaker::CaloHitMaker(), CaloSegment::CaloSegment(), CalorimetryManager::EMShowerSimulation(), and CalorimetryManager::HDShowerSimulation().

00073                                             {
00074   if ( onEcal ) {
00075     if ( onEcal == 1 ) 
00076       return myECALBarrelProperties_;
00077     else
00078       return myECALEndcapProperties_;
00079   } else
00080     return NULL;
00081 }

const EcalBarrelGeometry* Calorimeter::getEcalBarrelGeometry (  )  const [inline]

Definition at line 51 of file Calorimeter.h.

References EcalBarrelGeometry_.

00051 {return EcalBarrelGeometry_;} 

const EcalEndcapGeometry* Calorimeter::getEcalEndcapGeometry (  )  const [inline]

Definition at line 53 of file Calorimeter.h.

References EcalEndcapGeometry_.

Referenced by EcalHitMaker::EcalHitMaker().

00053 {return EcalEndcapGeometry_;}

const CaloSubdetectorGeometry * Calorimeter::getEcalGeometry ( int  subdetn  )  const

Definition at line 133 of file Calorimeter.cc.

References EcalBarrelGeometry_, EcalEndcapGeometry_, lat::endl(), and PreshowerGeometry_.

Referenced by CaloGeometryHelper::getWindow().

00134 {
00135   if(subdetn==1) return EcalBarrelGeometry_;
00136   if(subdetn==2) return EcalEndcapGeometry_;
00137   if(subdetn==3) return PreshowerGeometry_;
00138   edm::LogWarning("Calorimeter") << "Requested an invalid ECAL subdetector geometry" << std::endl;
00139   return 0;
00140 }

const EcalPreshowerGeometry* Calorimeter::getEcalPreshowerGeometry (  )  const [inline]

Definition at line 55 of file Calorimeter.h.

References PreshowerGeometry_.

Referenced by PreshowerHitMaker::addHit(), and CaloGeometryHelper::initialize().

00055 {return PreshowerGeometry_;}

const CaloSubdetectorTopology * Calorimeter::getEcalTopology ( int  subdetn  )  const

Definition at line 142 of file Calorimeter.cc.

References EcalBarrelTopology_, EcalEndcapTopology_, and lat::endl().

Referenced by CaloGeometryHelper::getWindow().

00143 {
00144   if(subdetn==1) return EcalBarrelTopology_;
00145   if(subdetn==2) return EcalEndcapTopology_;
00146   edm::LogWarning("Calorimeter") << "Requested an invalid ECAL subdetector topology " << std::endl;
00147   return 0;
00148 }

const CaloSubdetectorGeometry* Calorimeter::getHcalGeometry (  )  const [inline]

Definition at line 57 of file Calorimeter.h.

References HcalGeometry_.

Referenced by CalorimetryManager::reconstruct().

00057 {return HcalGeometry_;}

const HCALProperties * Calorimeter::hcalProperties ( int  onHcal  )  const

HCAL properties.

Definition at line 84 of file Calorimeter.cc.

References lat::endl(), myHCALBarrelProperties_, myHCALEndcapProperties_, myHCALForwardProperties_, and NULL.

Referenced by CaloHitMaker::CaloHitMaker(), CaloSegment::CaloSegment(), CalorimetryManager::EMShowerSimulation(), EcalHitMaker::hcalCellLine(), and CalorimetryManager::HDShowerSimulation().

00084                                             {
00085   if ( onHcal ) {
00086     if ( onHcal == 1 ) 
00087       return myHCALBarrelProperties_;
00088     else 
00089       if ( onHcal == 2 ) 
00090         return myHCALEndcapProperties_;
00091       else {
00092         return myHCALForwardProperties_;
00093         edm::LogInfo("CalorimeterProperties") << " Calorimeter::hcalProperties : set myHCALForwardProperties" << std::endl;
00094       }
00095   } else
00096     return NULL;
00097 }

const PreshowerLayer1Properties * Calorimeter::layer1Properties ( int  onLayer1  )  const

Preshower Layer1 properties.

Definition at line 100 of file Calorimeter.cc.

References myPreshowerLayer1Properties_, and NULL.

Referenced by CaloHitMaker::CaloHitMaker(), CaloSegment::CaloSegment(), CalorimetryManager::EMShowerSimulation(), and EcalHitMaker::preshowerCellLine().

00100                                                 {
00101   if ( onLayer1 ) 
00102     return myPreshowerLayer1Properties_;
00103   else
00104     return NULL;
00105 }

const PreshowerLayer2Properties * Calorimeter::layer2Properties ( int  onLayer2  )  const

Preshower Layer2 properties.

Definition at line 108 of file Calorimeter.cc.

References myPreshowerLayer2Properties_, and NULL.

Referenced by CalorimetryManager::EMShowerSimulation(), and EcalHitMaker::preshowerCellLine().

00108                                                 {
00109   if ( onLayer2 ) 
00110     return myPreshowerLayer2Properties_;
00111   else
00112     return NULL;
00113 }

void Calorimeter::setupGeometry ( const CaloGeometry pG  ) 

Definition at line 115 of file Calorimeter.cc.

References DetId::Ecal, EcalBarrel, EcalBarrelGeometry_, EcalEndcap, EcalEndcapGeometry_, EcalPreshower, lat::endl(), CaloGeometry::getSubdetectorGeometry(), DetId::Hcal, HcalBarrel, HcalGeometry_, and PreshowerGeometry_.

Referenced by FamosManager::setupGeometryAndField().

00116 {
00117   edm::LogInfo("CalorimeterProperties") << " setupGeometry " << std::endl;
00118   EcalBarrelGeometry_ = dynamic_cast<const EcalBarrelGeometry*>(pG.getSubdetectorGeometry(DetId::Ecal,EcalBarrel));
00119   EcalEndcapGeometry_ = dynamic_cast<const EcalEndcapGeometry*>(pG.getSubdetectorGeometry(DetId::Ecal,EcalEndcap));
00120   HcalGeometry_ = pG.getSubdetectorGeometry(DetId::Hcal,HcalBarrel);
00121   // Takes a lot of time
00122   PreshowerGeometry_  = dynamic_cast<const EcalPreshowerGeometry*>(pG.getSubdetectorGeometry(DetId::Ecal,EcalPreshower));
00123 }

void Calorimeter::setupTopology ( const CaloTopology theTopology  ) 

Definition at line 125 of file Calorimeter.cc.

References DetId::Ecal, EcalBarrel, EcalBarrelTopology_, EcalEndcap, EcalEndcapTopology_, and CaloTopology::getSubdetectorTopology().

Referenced by FamosManager::setupGeometryAndField().


Member Data Documentation

const EcalBarrelGeometry* Calorimeter::EcalBarrelGeometry_ [protected]

Definition at line 77 of file Calorimeter.h.

Referenced by CaloGeometryHelper::buildCrystalArray(), CaloGeometryHelper::buildNeighbourArray(), CaloGeometryHelper::getClosestCell(), getEcalBarrelGeometry(), getEcalGeometry(), and setupGeometry().

const CaloSubdetectorTopology* Calorimeter::EcalBarrelTopology_ [protected]

Definition at line 83 of file Calorimeter.h.

Referenced by CaloGeometryHelper::buildNeighbourArray(), getEcalTopology(), setupTopology(), and CaloGeometryHelper::simplemove().

const EcalEndcapGeometry* Calorimeter::EcalEndcapGeometry_ [protected]

Definition at line 78 of file Calorimeter.h.

Referenced by CaloGeometryHelper::buildCrystalArray(), CaloGeometryHelper::buildNeighbourArray(), CaloGeometryHelper::getClosestCell(), getEcalEndcapGeometry(), getEcalGeometry(), and setupGeometry().

const CaloSubdetectorTopology* Calorimeter::EcalEndcapTopology_ [protected]

Definition at line 84 of file Calorimeter.h.

Referenced by CaloGeometryHelper::buildNeighbourArray(), getEcalTopology(), setupTopology(), and CaloGeometryHelper::simplemove().

const CaloSubdetectorGeometry* Calorimeter::HcalGeometry_ [protected]

Definition at line 79 of file Calorimeter.h.

Referenced by CaloGeometryHelper::getClosestCell(), getHcalGeometry(), and setupGeometry().

ECALBarrelProperties* Calorimeter::myECALBarrelProperties_ [protected]

Definition at line 70 of file Calorimeter.h.

Referenced by Calorimeter(), ecalProperties(), and ~Calorimeter().

ECALEndcapProperties* Calorimeter::myECALEndcapProperties_ [protected]

Definition at line 71 of file Calorimeter.h.

Referenced by Calorimeter(), ecalProperties(), and ~Calorimeter().

HCALBarrelProperties* Calorimeter::myHCALBarrelProperties_ [protected]

Definition at line 72 of file Calorimeter.h.

Referenced by Calorimeter(), hcalProperties(), and ~Calorimeter().

HCALEndcapProperties* Calorimeter::myHCALEndcapProperties_ [protected]

Definition at line 73 of file Calorimeter.h.

Referenced by Calorimeter(), hcalProperties(), and ~Calorimeter().

HCALForwardProperties* Calorimeter::myHCALForwardProperties_ [protected]

Definition at line 74 of file Calorimeter.h.

Referenced by Calorimeter(), hcalProperties(), and ~Calorimeter().

PreshowerLayer1Properties* Calorimeter::myPreshowerLayer1Properties_ [protected]

Definition at line 68 of file Calorimeter.h.

Referenced by Calorimeter(), layer1Properties(), and ~Calorimeter().

PreshowerLayer2Properties* Calorimeter::myPreshowerLayer2Properties_ [protected]

Definition at line 69 of file Calorimeter.h.

Referenced by Calorimeter(), layer2Properties(), and ~Calorimeter().

const EcalPreshowerGeometry* Calorimeter::PreshowerGeometry_ [protected]

Definition at line 80 of file Calorimeter.h.

Referenced by getEcalGeometry(), getEcalPreshowerGeometry(), and setupGeometry().


The documentation for this class was generated from the following files:
Generated on Tue Jun 9 18:15:53 2009 for CMSSW by  doxygen 1.5.4