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
n
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
c
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
SimG4CMS
Tracker
plugins
TkAccumulatingSensitiveDetectorBuilder.cc
Go to the documentation of this file.
1
// system include files
2
3
// user include files
4
#include "
SimG4Core/SensitiveDetector/interface/SensitiveDetectorMakerBase.h
"
5
#include "
SimG4Core/Notification/interface/SimActivityRegistryEnroller.h
"
6
#include "
SimG4Core/SensitiveDetector/interface/SensitiveDetectorPluginFactory.h
"
7
8
#include "
Geometry/TrackerNumberingBuilder/interface/GeometricDet.h
"
9
#include "
Geometry/Records/interface/IdealGeometryRecord.h
"
10
11
#include "
SimG4CMS/Tracker/interface/TkAccumulatingSensitiveDetector.h
"
12
13
#include "
FWCore/Framework/interface/EventSetup.h
"
14
#include "
FWCore/Framework/interface/ConsumesCollector.h
"
15
#include "
FWCore/Utilities/interface/ESGetToken.h
"
16
#include "
FWCore/PluginManager/interface/ModuleDef.h
"
17
#include "
FWCore/ParameterSet/interface/ParameterSet.h
"
18
19
class
TkAccumulatingSensitiveDetectorBuilder
:
public
SensitiveDetectorMakerBase
{
20
public
:
21
explicit
TkAccumulatingSensitiveDetectorBuilder
(
edm::ParameterSet
const
&
p
,
edm::ConsumesCollector
cc)
22
:
geomdet_
{
nullptr
},
geomdetToken_
{cc.esConsumes<
edm::Transition::BeginRun
>()} {}
23
24
void
beginRun
(
const
edm::EventSetup
& es)
final
{
geomdet_
= &es.getData(
geomdetToken_
); }
25
26
std::unique_ptr<SensitiveDetector>
make
(
const
std::string
& iname,
27
const
SensitiveDetectorCatalog
& clg,
28
const
edm::ParameterSet
&
p
,
29
const
SimTrackManager
* man,
30
SimActivityRegistry
& reg)
const
final
{
31
auto
sd = std::make_unique<TkAccumulatingSensitiveDetector>(iname,
geomdet_
, clg,
p
, man);
32
SimActivityRegistryEnroller::enroll
(reg, sd.get());
33
return
sd;
34
}
35
36
private
:
37
const
GeometricDet
*
geomdet_
;
38
const
edm::ESGetToken<GeometricDet, IdealGeometryRecord>
geomdetToken_
;
39
};
40
41
DEFINE_SENSITIVEDETECTORBUILDER
(
TkAccumulatingSensitiveDetectorBuilder
,
TkAccumulatingSensitiveDetector
);
TkAccumulatingSensitiveDetector
Definition:
TkAccumulatingSensitiveDetector.h:31
TkAccumulatingSensitiveDetectorBuilder
Definition:
TkAccumulatingSensitiveDetectorBuilder.cc:19
TkAccumulatingSensitiveDetectorBuilder::TkAccumulatingSensitiveDetectorBuilder
TkAccumulatingSensitiveDetectorBuilder(edm::ParameterSet const &p, edm::ConsumesCollector cc)
Definition:
TkAccumulatingSensitiveDetectorBuilder.cc:21
TkAccumulatingSensitiveDetector.h
EventSetup.h
SensitiveDetectorMakerBase
Definition:
SensitiveDetectorMakerBase.h:28
AlCaHLTBitMon_QueryRunRegistry.string
string string
Definition:
AlCaHLTBitMon_QueryRunRegistry.py:256
ParameterSet.h
SimActivityRegistryEnroller::enroll
static void enroll(SimActivityRegistry &iReg, T *iObj)
Definition:
SimActivityRegistryEnroller.h:50
edm::ESGetToken< GeometricDet, IdealGeometryRecord >
DEFINE_SENSITIVEDETECTORBUILDER
#define DEFINE_SENSITIVEDETECTORBUILDER(type, name)
Definition:
SensitiveDetectorPluginFactory.h:21
GeometricDet.h
GeometricDet
Definition:
GeometricDet.h:31
ESGetToken.h
TkAccumulatingSensitiveDetectorBuilder::geomdet_
const GeometricDet * geomdet_
Definition:
TkAccumulatingSensitiveDetectorBuilder.cc:37
SensitiveDetectorPluginFactory.h
edm::EventSetup
Definition:
EventSetup.h:59
SensitiveDetectorCatalog
Definition:
SensitiveDetectorCatalog.h:10
edm::Transition::BeginRun
SimActivityRegistryEnroller.h
TkAccumulatingSensitiveDetectorBuilder::beginRun
void beginRun(const edm::EventSetup &es) final
Definition:
TkAccumulatingSensitiveDetectorBuilder.cc:24
IdealGeometryRecord.h
edm::ParameterSet
Definition:
ParameterSet.h:47
TkAccumulatingSensitiveDetectorBuilder::geomdetToken_
const edm::ESGetToken< GeometricDet, IdealGeometryRecord > geomdetToken_
Definition:
TkAccumulatingSensitiveDetectorBuilder.cc:38
SimActivityRegistry
Definition:
SimActivityRegistry.h:39
ModuleDef.h
ConsumesCollector.h
TkAccumulatingSensitiveDetectorBuilder::make
std::unique_ptr< SensitiveDetector > make(const std::string &iname, const SensitiveDetectorCatalog &clg, const edm::ParameterSet &p, const SimTrackManager *man, SimActivityRegistry ®) const final
Definition:
TkAccumulatingSensitiveDetectorBuilder.cc:26
SensitiveDetectorMakerBase.h
AlCaHLTBitMon_ParallelJobs.p
def p
Definition:
AlCaHLTBitMon_ParallelJobs.py:153
edm::ConsumesCollector
Definition:
ConsumesCollector.h:45
SimTrackManager
Definition:
SimTrackManager.h:35
Generated for CMSSW Reference Manual by
1.8.14