SimG4CMS
EcalTestBeam
plugins
EcalTBH4BeamDetectorBuilder.cc
Go to the documentation of this file.
1
// system include files
2
#include <string>
3
4
// user include files
5
#include "
SimG4Core/SensitiveDetector/interface/SensitiveDetectorMakerBase.h
"
6
#include "
SimG4Core/Notification/interface/SimActivityRegistryEnroller.h
"
7
#include "
SimG4Core/SensitiveDetector/interface/SensitiveDetectorPluginFactory.h
"
8
9
#include "
SimG4CMS/EcalTestBeam/interface/EcalTBH4BeamSD.h
"
10
11
#include "
FWCore/Framework/interface/EventSetup.h
"
12
#include "
FWCore/Framework/interface/ConsumesCollector.h
"
13
#include "
FWCore/Utilities/interface/ESGetToken.h
"
14
#include "
FWCore/PluginManager/interface/ModuleDef.h
"
15
#include "
FWCore/ParameterSet/interface/ParameterSet.h
"
16
17
class
EcalTBH4BeamDetectorBuilder
:
public
SensitiveDetectorMakerBase
{
18
public
:
19
explicit
EcalTBH4BeamDetectorBuilder
(
const
edm::ParameterSet
&
p
,
edm::ConsumesCollector
cc) {}
20
21
std::unique_ptr<SensitiveDetector>
make
(
const
std::string
& iname,
22
const
SensitiveDetectorCatalog
& clg,
23
const
edm::ParameterSet
&
p
,
24
const
SimTrackManager
* man,
25
SimActivityRegistry
& reg)
const
final
{
26
auto
sd = std::make_unique<EcalTBH4BeamSD>(iname, clg,
p
, man);
27
SimActivityRegistryEnroller::enroll
(reg, sd.get());
28
return
sd;
29
}
30
};
31
32
typedef
EcalTBH4BeamSD
EcalTBH4BeamDetector
;
33
DEFINE_SENSITIVEDETECTORBUILDER
(
EcalTBH4BeamDetectorBuilder
,
EcalTBH4BeamDetector
);
EventSetup.h
EcalTBH4BeamDetectorBuilder
Definition:
EcalTBH4BeamDetectorBuilder.cc:17
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
DEFINE_SENSITIVEDETECTORBUILDER
#define DEFINE_SENSITIVEDETECTORBUILDER(type, name)
Definition:
SensitiveDetectorPluginFactory.h:21
SensitiveDetectorPluginFactory.h
SensitiveDetectorCatalog
Definition:
SensitiveDetectorCatalog.h:10
EcalTBH4BeamSD
Definition:
EcalTBH4BeamSD.h:21
SimActivityRegistryEnroller.h
EcalTBH4BeamDetectorBuilder::make
std::unique_ptr< SensitiveDetector > make(const std::string &iname, const SensitiveDetectorCatalog &clg, const edm::ParameterSet &p, const SimTrackManager *man, SimActivityRegistry ®) const final
Definition:
EcalTBH4BeamDetectorBuilder.cc:21
EcalTBH4BeamDetectorBuilder::EcalTBH4BeamDetectorBuilder
EcalTBH4BeamDetectorBuilder(const edm::ParameterSet &p, edm::ConsumesCollector cc)
Definition:
EcalTBH4BeamDetectorBuilder.cc:19
EcalTBH4BeamSD.h
edm::ParameterSet
Definition:
ParameterSet.h:47
SimActivityRegistry
Definition:
SimActivityRegistry.h:39
ModuleDef.h
ConsumesCollector.h
EcalTBH4BeamDetector
EcalTBH4BeamSD EcalTBH4BeamDetector
Definition:
EcalTBH4BeamDetectorBuilder.cc:32
ESGetToken.h
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