Main Page
Namespaces
Namespace List
Namespace Members
All
_
a
b
c
d
e
f
g
h
i
j
k
l
m
n
o
p
q
r
s
t
u
v
w
x
y
z
Functions
_
a
b
c
d
e
f
g
h
i
j
k
l
m
n
o
p
q
r
s
t
u
v
w
x
y
z
Variables
_
a
b
c
d
e
f
g
h
i
j
k
l
m
n
o
p
q
r
s
t
u
v
w
x
y
z
Typedefs
a
b
c
d
e
f
g
h
i
j
k
l
m
n
o
p
q
r
s
t
u
v
w
x
y
z
Enumerations
a
b
c
d
e
f
g
h
i
j
k
l
m
o
p
q
r
s
t
u
v
w
z
Enumerator
a
b
c
d
e
f
g
h
i
j
k
l
m
n
o
p
q
r
s
t
u
v
w
x
y
z
Classes
Class List
Class Index
Class Hierarchy
Class Members
All
:
_
a
b
c
d
e
f
g
h
i
j
k
l
m
n
o
p
q
r
s
t
u
v
w
x
y
z
~
Functions
_
a
b
c
d
e
f
g
h
i
j
k
l
m
n
o
p
q
r
s
t
u
v
w
x
y
z
~
Variables
_
a
b
c
d
e
f
g
h
i
j
k
l
m
n
o
p
q
r
s
t
u
v
w
x
y
z
Typedefs
_
a
b
c
d
e
f
g
h
i
j
k
l
m
n
o
p
q
r
s
t
u
v
w
x
y
z
Enumerations
a
b
c
d
e
f
g
h
i
j
k
l
m
n
o
p
q
r
s
t
u
v
w
x
Enumerator
_
a
b
c
d
e
f
g
h
i
j
k
l
m
n
o
p
q
r
s
t
u
v
w
x
y
z
Properties
_
a
d
e
f
l
m
o
p
s
t
u
v
Related Functions
:
_
a
b
c
d
e
f
g
h
i
j
k
l
m
n
o
p
q
r
s
t
u
v
w
x
Package Documentation
•
All
Classes
Namespaces
Files
Functions
Variables
Typedefs
Enumerations
Enumerator
Properties
Friends
Macros
Modules
Pages
Geometry
HcalEventSetup
src
HcalHardcodeGeometryEP.cc
Go to the documentation of this file.
1
// -*- C++ -*-
2
//
3
// Package: HcalHardcodeGeometryEP
4
// Class: HcalHardcodeGeometryEP
5
//
13
//
14
// Original Author: Jeremiah Mans
15
// Created: Mon Oct 3 11:35:27 CDT 2005
16
//
17
//
18
19
#include "
Geometry/HcalEventSetup/interface/HcalHardcodeGeometryEP.h
"
20
21
#include "
Geometry/Records/interface/HcalRecNumberingRecord.h
"
22
#include "
Geometry/Records/interface/HcalGeometryRecord.h
"
23
#include "
Geometry/CaloGeometry/interface/CaloSubdetectorGeometry.h
"
24
#include "
Geometry/HcalCommonData/interface/HcalDDDRecConstants.h
"
25
#include "
Geometry/HcalTowerAlgo/interface/HcalFlexiHardcodeGeometryLoader.h
"
26
#include "
Geometry/HcalTowerAlgo/interface/HcalHardcodeGeometryLoader.h
"
27
#include "
Geometry/HcalTowerAlgo/interface/HcalGeometry.h
"
28
#include "
FWCore/MessageLogger/interface/MessageLogger.h
"
29
30
class
HcalTopology
;
31
32
HcalHardcodeGeometryEP::HcalHardcodeGeometryEP
(
const
edm::ParameterSet
& ps) {
33
useOld_
= ps.
getParameter
<
bool
>(
"UseOldLoader"
);
34
//the following line is needed to tell the framework what
35
// data is being produced
36
auto
cc
=
setWhatProduced
(
this
, &
HcalHardcodeGeometryEP::produceAligned
,
edm::es::Label
(
HcalGeometry::producerTag
()));
37
if
(not
useOld_
) {
38
consToken_
=
cc
.consumesFrom<
HcalDDDRecConstants
,
HcalRecNumberingRecord
>(
edm::ESInputTag
{});
39
}
40
topologyToken_
=
cc
.consumesFrom<
HcalTopology
,
HcalRecNumberingRecord
>(
edm::ESInputTag
{});
41
}
42
43
HcalHardcodeGeometryEP::ReturnType
HcalHardcodeGeometryEP::produceAligned
(
const
HcalGeometryRecord
& iRecord) {
44
edm::LogInfo
(
"HCAL"
) <<
"Using default HCAL topology"
;
45
const
auto
& topology = iRecord.
get
(
topologyToken_
);
46
if
(
useOld_
) {
47
HcalHardcodeGeometryLoader
loader
;
48
return
ReturnType
(
loader
.load(topology));
49
}
else
{
50
const
auto
& cons = iRecord.
get
(
consToken_
);
51
HcalFlexiHardcodeGeometryLoader
loader
;
52
return
ReturnType
(
loader
.load(topology, cons));
53
}
54
}
edm::ESInputTag
Definition:
ESInputTag.h:87
MessageLogger.h
HcalGeometry::producerTag
static std::string producerTag()
Definition:
HcalGeometry.h:65
HcalHardcodeGeometryEP::consToken_
edm::ESGetToken< HcalDDDRecConstants, HcalRecNumberingRecord > consToken_
Definition:
HcalHardcodeGeometryEP.h:25
HcalTopology
Definition:
HcalTopology.h:26
edm::ESProducer::setWhatProduced
auto setWhatProduced(T *iThis, const es::Label &iLabel={})
Definition:
ESProducer.h:163
HcalFlexiHardcodeGeometryLoader
Definition:
HcalFlexiHardcodeGeometryLoader.h:18
HcalHardcodeGeometryEP::produceAligned
ReturnType produceAligned(const HcalGeometryRecord &)
Definition:
HcalHardcodeGeometryEP.cc:43
HcalRecNumberingRecord.h
edm::LogInfo
Log< level::Info, false > LogInfo
Definition:
MessageLogger.h:125
HcalGeometry.h
HcalHardcodeGeometryEP::topologyToken_
edm::ESGetToken< HcalTopology, HcalRecNumberingRecord > topologyToken_
Definition:
HcalHardcodeGeometryEP.h:26
HcalHardcodeGeometryEP.h
edm::es::Label
Definition:
es_Label.h:56
edm::eventsetup::DependentRecordImplementation::get
ProductT const & get(ESGetToken< ProductT, DepRecordT > const &iToken) const
Definition:
DependentRecordImplementation.h:109
HcalRecNumberingRecord
Definition:
HcalRecNumberingRecord.h:23
HcalHardcodeGeometryEP::HcalHardcodeGeometryEP
HcalHardcodeGeometryEP(const edm::ParameterSet &)
Definition:
HcalHardcodeGeometryEP.cc:32
HcalGeometryRecord
Definition:
HcalGeometryRecord.h:23
CaloSubdetectorGeometry.h
edm::ParameterSet
Definition:
ParameterSet.h:47
HcalHardcodeGeometryEP::useOld_
bool useOld_
Definition:
HcalHardcodeGeometryEP.h:27
HcalTopology::HcalTopology
HcalTopology(const HcalDDDRecConstants *hcons, const bool mergePosition=false)
Definition:
HcalTopology.cc:17
cc
HcalHardcodeGeometryLoader.h
HcalHardcodeGeometryLoader
Definition:
HcalHardcodeGeometryLoader.h:17
HcalDDDRecConstants.h
edm::ParameterSet::getParameter
T getParameter(std::string const &) const
Definition:
ParameterSet.h:303
HcalFlexiHardcodeGeometryLoader.h
HcalDDDRecConstants
Definition:
HcalDDDRecConstants.h:23
web.browse_db.loader
loader
Definition:
browse_db.py:18
HcalHardcodeGeometryEP::ReturnType
std::unique_ptr< CaloSubdetectorGeometry > ReturnType
Definition:
HcalHardcodeGeometryEP.h:20
HcalGeometryRecord.h
Generated for CMSSW Reference Manual by
1.8.16