Main Page
Namespaces
Classes
Package Documentation
TrackingTools
GsfTracking
plugins
GsfMaterialEffectsESProducer.cc
Go to the documentation of this file.
1
#include "
TrackingTools/GsfTracking/plugins/GsfMaterialEffectsESProducer.h
"
2
3
#include "
TrackingTools/MaterialEffects/interface/MultipleScatteringUpdator.h
"
4
#include "
TrackingTools/MaterialEffects/interface/EnergyLossUpdator.h
"
5
#include "
TrackingTools/GsfTracking/interface/GsfMaterialEffectsAdapter.h
"
6
#include "
TrackingTools/GsfTracking/interface/GsfMultipleScatteringUpdator.h
"
7
#include "
TrackingTools/GsfTracking/interface/GsfBetheHeitlerUpdator.h
"
8
#include "
TrackingTools/GsfTracking/interface/GsfCombinedMaterialEffectsUpdator.h
"
9
10
#include "
FWCore/Framework/interface/EventSetup.h
"
11
#include "
FWCore/Framework/interface/ESHandle.h
"
12
#include "
FWCore/Framework/interface/ModuleFactory.h
"
13
#include "
FWCore/Framework/interface/ESProducer.h
"
14
15
#include <string>
16
#include <memory>
17
18
using namespace
edm
;
19
20
GsfMaterialEffectsESProducer::GsfMaterialEffectsESProducer
(
const
edm::ParameterSet
&
p
)
21
{
22
std::string
myname = p.
getParameter
<
std::string
>(
"ComponentName"
);
23
pset_ =
p
;
24
setWhatProduced(
this
,myname);
25
}
26
27
GsfMaterialEffectsESProducer::~GsfMaterialEffectsESProducer
() {}
28
29
std::unique_ptr<GsfMaterialEffectsUpdator>
30
GsfMaterialEffectsESProducer::produce
(
const
TrackingComponentsRecord
& iRecord){
31
double
mass
= pset_.getParameter<
double
>(
"Mass"
);
32
std::string
msName = pset_.getParameter<
std::string
>(
"MultipleScatteringUpdator"
);
33
std::string
elName = pset_.getParameter<
std::string
>(
"EnergyLossUpdator"
);
34
35
std::unique_ptr<GsfMaterialEffectsUpdator> msUpdator;
36
if
( msName ==
"GsfMultipleScatteringUpdator"
) {
37
msUpdator.reset(
new
GsfMultipleScatteringUpdator
(mass));
38
}
39
else
{
40
msUpdator.reset(
new
GsfMaterialEffectsAdapter
(
MultipleScatteringUpdator
(mass)));
41
}
42
43
std::unique_ptr<GsfMaterialEffectsUpdator> elUpdator;
44
if
( elName ==
"GsfBetheHeitlerUpdator"
) {
45
std::string
fileName
= pset_.getParameter<
std::string
>(
"BetheHeitlerParametrization"
);
46
int
correction = pset_.getParameter<
int
>(
"BetheHeitlerCorrection"
);
47
elUpdator.reset(
new
GsfBetheHeitlerUpdator
(fileName,correction));
48
}
49
else
{
50
elUpdator.reset(
new
GsfMaterialEffectsAdapter
(
EnergyLossUpdator
(mass)));
51
}
52
53
auto
updator
=
54
std::make_unique<GsfCombinedMaterialEffectsUpdator>(*msUpdator, *elUpdator);
55
56
return
updator
;
57
}
58
59
edm::ParameterSet::getParameter
T getParameter(std::string const &) const
GsfMultipleScatteringUpdator
Definition:
GsfMultipleScatteringUpdator.h:14
AlCaHLTBitMon_ParallelJobs.p
p
Definition:
AlCaHLTBitMon_ParallelJobs.py:152
AlCaHLTBitMon_QueryRunRegistry.string
string
Definition:
AlCaHLTBitMon_QueryRunRegistry.py:255
TrackingComponentsRecord
Definition:
TrackingComponentsRecord.h:13
EventSetup.h
GsfMaterialEffectsESProducer::produce
std::unique_ptr< GsfMaterialEffectsUpdator > produce(const TrackingComponentsRecord &)
Definition:
GsfMaterialEffectsESProducer.cc:30
GsfElectronMaterialEffects_cfi.MultipleScatteringUpdator
MultipleScatteringUpdator
Definition:
GsfElectronMaterialEffects_cfi.py:7
GsfBetheHeitlerUpdator
Definition:
GsfBetheHeitlerUpdator.h:22
ESHandle.h
GsfMaterialEffectsESProducer.h
gsfElectronCkfTrackCandidateMaker_cff.updator
updator
Definition:
gsfElectronCkfTrackCandidateMaker_cff.py:41
GsfElectronMaterialEffects_cfi.EnergyLossUpdator
EnergyLossUpdator
Definition:
GsfElectronMaterialEffects_cfi.py:5
GsfMultipleScatteringUpdator.h
GsfMaterialEffectsESProducer::GsfMaterialEffectsESProducer
GsfMaterialEffectsESProducer(const edm::ParameterSet &p)
Definition:
GsfMaterialEffectsESProducer.cc:20
EnergyLossUpdator.h
ESProducer.h
MillePedeFileConverter_cfg.fileName
fileName
Definition:
MillePedeFileConverter_cfg.py:32
edm
HLT enums.
Definition:
AlignableModifier.h:17
GsfCombinedMaterialEffectsUpdator.h
GsfMaterialEffectsAdapter.h
GsfMaterialEffectsESProducer::~GsfMaterialEffectsESProducer
~GsfMaterialEffectsESProducer() override
Definition:
GsfMaterialEffectsESProducer.cc:27
edm::ParameterSet
Definition:
ParameterSet.h:36
ModuleFactory.h
GsfBetheHeitlerUpdator.h
GsfMaterialEffectsAdapter
Definition:
GsfMaterialEffectsAdapter.h:11
ResonanceBuilder.mass
mass
Definition:
ResonanceBuilder.py:8
MultipleScatteringUpdator.h
Generated for CMSSW Reference Manual by
1.8.11