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 }
const EcalEndcapGeometry * EcalEndcapGeometry_
Definition: Calorimeter.h:74
HCALForwardProperties * myHCALForwardProperties_
Definition: Calorimeter.h:70
PreshowerLayer2Properties * myPreshowerLayer2Properties_
Definition: Calorimeter.h:65
const EcalPreshowerGeometry * PreshowerGeometry_
Definition: Calorimeter.h:76
ECALEndcapProperties * myECALEndcapProperties_
Definition: Calorimeter.h:67
HCALBarrelProperties * myHCALBarrelProperties_
Definition: Calorimeter.h:68
const EcalBarrelGeometry * EcalBarrelGeometry_
Definition: Calorimeter.h:73
const CaloSubdetectorGeometry * HcalGeometry_
Definition: Calorimeter.h:75
ECALBarrelProperties * myECALBarrelProperties_
Definition: Calorimeter.h:66
PreshowerLayer1Properties * myPreshowerLayer1Properties_
Definition: Calorimeter.h:64
HCALEndcapProperties * myHCALEndcapProperties_
Definition: Calorimeter.h:69

◆ Calorimeter() [2/2]

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_.

40  myECALBarrelProperties_(nullptr),
41  myECALEndcapProperties_(nullptr),
42  myHCALBarrelProperties_(nullptr),
43  myHCALEndcapProperties_(nullptr),
44  myHCALForwardProperties_(nullptr),
45  EcalBarrelGeometry_(nullptr),
46  EcalEndcapGeometry_(nullptr),
47  HcalGeometry_(nullptr),
48  PreshowerGeometry_(nullptr) {
49  edm::ParameterSet fastDet = fastCalo.getParameter<edm::ParameterSet>("CalorimeterProperties");
50  edm::ParameterSet fastDetHF = fastCalo.getParameter<edm::ParameterSet>("ForwardCalorimeterProperties");
51 
59 }
T getParameter(std::string const &) const
Definition: ParameterSet.h:303
const EcalEndcapGeometry * EcalEndcapGeometry_
Definition: Calorimeter.h:74
HCALForwardProperties * myHCALForwardProperties_
Definition: Calorimeter.h:70
PreshowerLayer2Properties * myPreshowerLayer2Properties_
Definition: Calorimeter.h:65
const EcalPreshowerGeometry * PreshowerGeometry_
Definition: Calorimeter.h:76
ECALEndcapProperties * myECALEndcapProperties_
Definition: Calorimeter.h:67
HCALBarrelProperties * myHCALBarrelProperties_
Definition: Calorimeter.h:68
const EcalBarrelGeometry * EcalBarrelGeometry_
Definition: Calorimeter.h:73
const CaloSubdetectorGeometry * HcalGeometry_
Definition: Calorimeter.h:75
ECALBarrelProperties * myECALBarrelProperties_
Definition: Calorimeter.h:66
PreshowerLayer1Properties * myPreshowerLayer1Properties_
Definition: Calorimeter.h:64
HCALEndcapProperties * myHCALEndcapProperties_
Definition: Calorimeter.h:69

◆ ~Calorimeter()

Calorimeter::~Calorimeter ( )

Definition at line 61 of file Calorimeter.cc.

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

61  {
76 }
HCALForwardProperties * myHCALForwardProperties_
Definition: Calorimeter.h:70
PreshowerLayer2Properties * myPreshowerLayer2Properties_
Definition: Calorimeter.h:65
ECALEndcapProperties * myECALEndcapProperties_
Definition: Calorimeter.h:67
HCALBarrelProperties * myHCALBarrelProperties_
Definition: Calorimeter.h:68
ECALBarrelProperties * myECALBarrelProperties_
Definition: Calorimeter.h:66
PreshowerLayer1Properties * myPreshowerLayer1Properties_
Definition: Calorimeter.h:64
HCALEndcapProperties * myHCALEndcapProperties_
Definition: Calorimeter.h:69

Member Function Documentation

◆ ecalProperties()

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

ECAL properties.

Definition at line 78 of file Calorimeter.cc.

References myECALBarrelProperties_, and myECALEndcapProperties_.

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

78  {
79  if (onEcal) {
80  if (onEcal == 1)
82  else
84  } else
85  return nullptr;
86 }
ECALEndcapProperties * myECALEndcapProperties_
Definition: Calorimeter.h:67
ECALBarrelProperties * myECALBarrelProperties_
Definition: Calorimeter.h:66

◆ getEcalBarrelGeometry()

const EcalBarrelGeometry* Calorimeter::getEcalBarrelGeometry ( ) const
inline

Definition at line 50 of file Calorimeter.h.

References EcalBarrelGeometry_.

50 { return EcalBarrelGeometry_; }
const EcalBarrelGeometry * EcalBarrelGeometry_
Definition: Calorimeter.h:73

◆ getEcalEndcapGeometry()

const EcalEndcapGeometry* Calorimeter::getEcalEndcapGeometry ( ) const
inline

Definition at line 52 of file Calorimeter.h.

References EcalEndcapGeometry_.

Referenced by EcalHitMaker::EcalHitMaker().

52 { return EcalEndcapGeometry_; }
const EcalEndcapGeometry * EcalEndcapGeometry_
Definition: Calorimeter.h:74

◆ getEcalGeometry()

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

Definition at line 132 of file Calorimeter.cc.

References EcalBarrelGeometry_, EcalEndcapGeometry_, and PreshowerGeometry_.

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

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 }
const EcalEndcapGeometry * EcalEndcapGeometry_
Definition: Calorimeter.h:74
const EcalPreshowerGeometry * PreshowerGeometry_
Definition: Calorimeter.h:76
const EcalBarrelGeometry * EcalBarrelGeometry_
Definition: Calorimeter.h:73
Log< level::Warning, false > LogWarning

◆ getEcalPreshowerGeometry()

const EcalPreshowerGeometry* Calorimeter::getEcalPreshowerGeometry ( ) const
inline

Definition at line 54 of file Calorimeter.h.

References PreshowerGeometry_.

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

54 { return PreshowerGeometry_; }
const EcalPreshowerGeometry * PreshowerGeometry_
Definition: Calorimeter.h:76

◆ getEcalTopology()

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

Definition at line 143 of file Calorimeter.cc.

References EcalBarrelTopology_, and EcalEndcapTopology_.

Referenced by CaloGeometryHelper::getWindow().

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 }
const CaloSubdetectorTopology * EcalEndcapTopology_
Definition: Calorimeter.h:80
const CaloSubdetectorTopology * EcalBarrelTopology_
Definition: Calorimeter.h:79
Log< level::Warning, false > LogWarning

◆ getHcalGeometry()

const CaloSubdetectorGeometry* Calorimeter::getHcalGeometry ( ) const
inline

Definition at line 56 of file Calorimeter.h.

References HcalGeometry_.

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

56 { return HcalGeometry_; }
const CaloSubdetectorGeometry * HcalGeometry_
Definition: Calorimeter.h:75

◆ hcalProperties()

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

HCAL properties.

Definition at line 88 of file Calorimeter.cc.

References myHCALBarrelProperties_, myHCALEndcapProperties_, and myHCALForwardProperties_.

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

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 }
HCALForwardProperties * myHCALForwardProperties_
Definition: Calorimeter.h:70
HCALBarrelProperties * myHCALBarrelProperties_
Definition: Calorimeter.h:68
Log< level::Info, false > LogInfo
HCALEndcapProperties * myHCALEndcapProperties_
Definition: Calorimeter.h:69

◆ layer1Properties()

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

Preshower Layer1 properties.

Definition at line 103 of file Calorimeter.cc.

References myPreshowerLayer1Properties_.

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

103  {
104  if (onLayer1)
106  else
107  return nullptr;
108 }
PreshowerLayer1Properties * myPreshowerLayer1Properties_
Definition: Calorimeter.h:64

◆ layer2Properties()

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

Preshower Layer2 properties.

Definition at line 110 of file Calorimeter.cc.

References myPreshowerLayer2Properties_.

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

110  {
111  if (onLayer2)
113  else
114  return nullptr;
115 }
PreshowerLayer2Properties * myPreshowerLayer2Properties_
Definition: Calorimeter.h:65

◆ setupGeometry()

void Calorimeter::setupGeometry ( const CaloGeometry pG)

Definition at line 117 of file Calorimeter.cc.

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

117  {
118  edm::LogInfo("CalorimeterProperties") << " setupGeometry " << std::endl;
122  // Takes a lot of time
125 }
const EcalEndcapGeometry * EcalEndcapGeometry_
Definition: Calorimeter.h:74
const EcalPreshowerGeometry * PreshowerGeometry_
Definition: Calorimeter.h:76
const EcalBarrelGeometry * EcalBarrelGeometry_
Definition: Calorimeter.h:73
Log< level::Info, false > LogInfo
const CaloSubdetectorGeometry * HcalGeometry_
Definition: Calorimeter.h:75
const CaloSubdetectorGeometry * getSubdetectorGeometry(const DetId &id) const
access the subdetector geometry for the given subdetector directly
Definition: CaloGeometry.cc:34

◆ setupTopology()

void Calorimeter::setupTopology ( const CaloTopology theTopology)

Definition at line 127 of file Calorimeter.cc.

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

127  {
130 }
const CaloSubdetectorTopology * EcalEndcapTopology_
Definition: Calorimeter.h:80
const CaloSubdetectorTopology * getSubdetectorTopology(const DetId &id) const
access the subdetector Topology for the given subdetector directly
Definition: CaloTopology.cc:17
const CaloSubdetectorTopology * EcalBarrelTopology_
Definition: Calorimeter.h:79

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().