CMS 3D CMS Logo

List of all members | Public Member Functions | Protected Attributes
Calorimeter Class Reference

#include <Calorimeter.h>

Inheritance diagram for Calorimeter:
CaloGeometryHelper

Public Member Functions

 Calorimeter ()
 
 Calorimeter (const edm::ParameterSet &caloParameters)
 
const ECALPropertiesecalProperties (int onEcal) const
 ECAL properties. More...
 
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. More...
 
const PreshowerLayer1Propertieslayer1Properties (int onLayer1) const
 Preshower Layer1 properties. More...
 
const PreshowerLayer2Propertieslayer2Properties (int onLayer2) const
 Preshower Layer2 properties. More...
 
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() [1/2]

Calorimeter::Calorimeter ( )

Definition at line 22 of file Calorimeter.cc.

25  myECALBarrelProperties_(nullptr),
26  myECALEndcapProperties_(nullptr),
27  myHCALBarrelProperties_(nullptr),
28  myHCALEndcapProperties_(nullptr),
29  myHCALForwardProperties_(nullptr),
30  EcalBarrelGeometry_(nullptr),
31  EcalEndcapGeometry_(nullptr),
32  HcalGeometry_(nullptr),
33  PreshowerGeometry_(nullptr) {
34  ;
35 }

◆ Calorimeter() [2/2]

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

◆ ~Calorimeter()

Calorimeter::~Calorimeter ( )

Member Function Documentation

◆ ecalProperties()

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

ECAL properties.

Definition at line 78 of file Calorimeter.cc.

78  {
79  if (onEcal) {
80  if (onEcal == 1)
82  else
84  } else
85  return nullptr;
86 }

References myECALBarrelProperties_, and myECALEndcapProperties_.

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

◆ getEcalBarrelGeometry()

const EcalBarrelGeometry* Calorimeter::getEcalBarrelGeometry ( ) const
inline

Definition at line 50 of file Calorimeter.h.

50 { return EcalBarrelGeometry_; }

References EcalBarrelGeometry_.

◆ getEcalEndcapGeometry()

const EcalEndcapGeometry* Calorimeter::getEcalEndcapGeometry ( ) const
inline

Definition at line 52 of file Calorimeter.h.

52 { return EcalEndcapGeometry_; }

References EcalEndcapGeometry_.

Referenced by EcalHitMaker::EcalHitMaker().

◆ getEcalGeometry()

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

Definition at line 132 of file Calorimeter.cc.

132  {
133  if (subdetn == 1)
134  return EcalBarrelGeometry_;
135  if (subdetn == 2)
136  return EcalEndcapGeometry_;
137  if (subdetn == 3)
138  return PreshowerGeometry_;
139  edm::LogWarning("Calorimeter") << "Requested an invalid ECAL subdetector geometry: " << subdetn << std::endl;
140  return nullptr;
141 }

References EcalBarrelGeometry_, EcalEndcapGeometry_, and PreshowerGeometry_.

Referenced by EcalHitMaker::getHits(), and CaloGeometryHelper::getWindow().

◆ getEcalPreshowerGeometry()

const EcalPreshowerGeometry* Calorimeter::getEcalPreshowerGeometry ( ) const
inline

Definition at line 54 of file Calorimeter.h.

54 { return PreshowerGeometry_; }

References PreshowerGeometry_.

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

◆ getEcalTopology()

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

Definition at line 143 of file Calorimeter.cc.

143  {
144  if (subdetn == 1)
145  return EcalBarrelTopology_;
146  if (subdetn == 2)
147  return EcalEndcapTopology_;
148  edm::LogWarning("Calorimeter") << "Requested an invalid ECAL subdetector topology: " << subdetn << std::endl;
149  return nullptr;
150 }

References EcalBarrelTopology_, and EcalEndcapTopology_.

Referenced by CaloGeometryHelper::getWindow().

◆ getHcalGeometry()

const CaloSubdetectorGeometry* Calorimeter::getHcalGeometry ( ) const
inline

Definition at line 56 of file Calorimeter.h.

56 { return HcalGeometry_; }

References HcalGeometry_.

Referenced by CalorimetryManager::HDShowerSimulation(), and CalorimetryManager::reconstructHCAL().

◆ hcalProperties()

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

HCAL properties.

Definition at line 88 of file Calorimeter.cc.

88  {
89  if (onHcal) {
90  if (onHcal == 1)
92  else if (onHcal == 2)
94  else {
96  edm::LogInfo("CalorimeterProperties")
97  << " Calorimeter::hcalProperties : set myHCALForwardProperties" << std::endl;
98  }
99  } else
100  return nullptr;
101 }

References myHCALBarrelProperties_, myHCALEndcapProperties_, and myHCALForwardProperties_.

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

◆ layer1Properties()

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

Preshower Layer1 properties.

Definition at line 103 of file Calorimeter.cc.

103  {
104  if (onLayer1)
106  else
107  return nullptr;
108 }

References myPreshowerLayer1Properties_.

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

◆ layer2Properties()

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

Preshower Layer2 properties.

Definition at line 110 of file Calorimeter.cc.

110  {
111  if (onLayer2)
113  else
114  return nullptr;
115 }

References myPreshowerLayer2Properties_.

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

◆ setupGeometry()

void Calorimeter::setupGeometry ( const CaloGeometry pG)

Definition at line 117 of file Calorimeter.cc.

117  {
118  edm::LogInfo("CalorimeterProperties") << " setupGeometry " << std::endl;
119  EcalBarrelGeometry_ = dynamic_cast<const EcalBarrelGeometry*>(pG.getSubdetectorGeometry(DetId::Ecal, EcalBarrel));
120  EcalEndcapGeometry_ = dynamic_cast<const EcalEndcapGeometry*>(pG.getSubdetectorGeometry(DetId::Ecal, EcalEndcap));
122  // Takes a lot of time
124  dynamic_cast<const EcalPreshowerGeometry*>(pG.getSubdetectorGeometry(DetId::Ecal, EcalPreshower));
125 }

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

Referenced by FamosManager::setupGeometryAndField().

◆ setupTopology()

void Calorimeter::setupTopology ( const CaloTopology theTopology)

Member Data Documentation

◆ EcalBarrelGeometry_

const EcalBarrelGeometry* Calorimeter::EcalBarrelGeometry_
protected

◆ EcalBarrelTopology_

const CaloSubdetectorTopology* Calorimeter::EcalBarrelTopology_
protected

◆ EcalEndcapGeometry_

const EcalEndcapGeometry* Calorimeter::EcalEndcapGeometry_
protected

◆ EcalEndcapTopology_

const CaloSubdetectorTopology* Calorimeter::EcalEndcapTopology_
protected

◆ HcalGeometry_

const CaloSubdetectorGeometry* Calorimeter::HcalGeometry_
protected

◆ myECALBarrelProperties_

ECALBarrelProperties* Calorimeter::myECALBarrelProperties_
protected

Definition at line 66 of file Calorimeter.h.

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

◆ myECALEndcapProperties_

ECALEndcapProperties* Calorimeter::myECALEndcapProperties_
protected

Definition at line 67 of file Calorimeter.h.

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

◆ myHCALBarrelProperties_

HCALBarrelProperties* Calorimeter::myHCALBarrelProperties_
protected

Definition at line 68 of file Calorimeter.h.

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

◆ myHCALEndcapProperties_

HCALEndcapProperties* Calorimeter::myHCALEndcapProperties_
protected

Definition at line 69 of file Calorimeter.h.

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

◆ myHCALForwardProperties_

HCALForwardProperties* Calorimeter::myHCALForwardProperties_
protected

Definition at line 70 of file Calorimeter.h.

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

◆ myPreshowerLayer1Properties_

PreshowerLayer1Properties* Calorimeter::myPreshowerLayer1Properties_
protected

Definition at line 64 of file Calorimeter.h.

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

◆ myPreshowerLayer2Properties_

PreshowerLayer2Properties* Calorimeter::myPreshowerLayer2Properties_
protected

Definition at line 65 of file Calorimeter.h.

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

◆ PreshowerGeometry_

const EcalPreshowerGeometry* Calorimeter::PreshowerGeometry_
protected

Definition at line 76 of file Calorimeter.h.

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

Calorimeter::EcalEndcapGeometry_
const EcalEndcapGeometry * EcalEndcapGeometry_
Definition: Calorimeter.h:74
Calorimeter::myPreshowerLayer2Properties_
PreshowerLayer2Properties * myPreshowerLayer2Properties_
Definition: Calorimeter.h:65
Calorimeter::myPreshowerLayer1Properties_
PreshowerLayer1Properties * myPreshowerLayer1Properties_
Definition: Calorimeter.h:64
Calorimeter::EcalEndcapTopology_
const CaloSubdetectorTopology * EcalEndcapTopology_
Definition: Calorimeter.h:80
Calorimeter::myHCALForwardProperties_
HCALForwardProperties * myHCALForwardProperties_
Definition: Calorimeter.h:70
DetId::Hcal
Definition: DetId.h:28
Calorimeter::myECALEndcapProperties_
ECALEndcapProperties * myECALEndcapProperties_
Definition: Calorimeter.h:67
PreshowerLayer2Properties
Definition: PreshowerLayer2Properties.h:19
CaloGeometry::getSubdetectorGeometry
const CaloSubdetectorGeometry * getSubdetectorGeometry(const DetId &id) const
access the subdetector geometry for the given subdetector directly
Definition: CaloGeometry.cc:34
edm::LogInfo
Log< level::Info, false > LogInfo
Definition: MessageLogger.h:125
HCALBarrelProperties
Definition: HCALBarrelProperties.h:21
HcalBarrel
Definition: HcalAssistant.h:33
HCALEndcapProperties
Definition: HCALEndcapProperties.h:17
Calorimeter::PreshowerGeometry_
const EcalPreshowerGeometry * PreshowerGeometry_
Definition: Calorimeter.h:76
edm::LogWarning
Log< level::Warning, false > LogWarning
Definition: MessageLogger.h:122
EcalBarrel
Definition: EcalSubdetector.h:10
Calorimeter::myHCALBarrelProperties_
HCALBarrelProperties * myHCALBarrelProperties_
Definition: Calorimeter.h:68
HCALForwardProperties
Definition: HCALForwardProperties.h:21
EcalEndcap
Definition: EcalSubdetector.h:10
edm::ParameterSet
Definition: ParameterSet.h:47
CaloTopology::getSubdetectorTopology
const CaloSubdetectorTopology * getSubdetectorTopology(const DetId &id) const
access the subdetector Topology for the given subdetector directly
Definition: CaloTopology.cc:17
PreshowerLayer1Properties
Definition: PreshowerLayer1Properties.h:19
DetId::Ecal
Definition: DetId.h:27
Calorimeter::HcalGeometry_
const CaloSubdetectorGeometry * HcalGeometry_
Definition: Calorimeter.h:75
Calorimeter::EcalBarrelGeometry_
const EcalBarrelGeometry * EcalBarrelGeometry_
Definition: Calorimeter.h:73
EcalPreshower
Definition: EcalSubdetector.h:10
Calorimeter::myECALBarrelProperties_
ECALBarrelProperties * myECALBarrelProperties_
Definition: Calorimeter.h:66
edm::ParameterSet::getParameter
T getParameter(std::string const &) const
Definition: ParameterSet.h:303
Calorimeter::EcalBarrelTopology_
const CaloSubdetectorTopology * EcalBarrelTopology_
Definition: Calorimeter.h:79
ECALEndcapProperties
Definition: ECALEndcapProperties.h:19
Calorimeter::myHCALEndcapProperties_
HCALEndcapProperties * myHCALEndcapProperties_
Definition: Calorimeter.h:69
ECALBarrelProperties
Definition: ECALBarrelProperties.h:18