TrackingTools
TrackRefitter
interface
TrackTransformer.h
Go to the documentation of this file.
1
#ifndef TrackingTools_TrackRefitter_TrackTransformer_H
2
#define TrackingTools_TrackRefitter_TrackTransformer_H
3
16
#include "
TrackingTools/TrackRefitter/interface/TrackTransformerBase.h
"
17
18
#include "
TrackingTools/TrackRefitter/interface/RefitDirection.h
"
19
20
#include "
FWCore/Framework/interface/ESHandle.h
"
21
22
#include "
Geometry/CommonDetUnit/interface/GlobalTrackingGeometry.h
"
23
#include "
MagneticField/Engine/interface/MagneticField.h
"
24
#include "
TrackingTools/TransientTrackingRecHit/interface/TransientTrackingRecHit.h
"
25
#include "
RecoTracker/TransientTrackingRecHit/interface/TkTransientTrackingRecHitBuilder.h
"
26
27
#include "
DataFormats/TrackReco/interface/TrackFwd.h
"
28
29
namespace
edm
{
30
class
ParameterSet
;
31
class
EventSetup
;
32
class
ParameterSetDescription
;
33
}
// namespace edm
34
namespace
reco
{
35
class
TransientTrack;
36
}
37
38
class
TrajectoryFitter
;
39
class
TrajectorySmoother
;
40
class
Propagator
;
41
class
TransientTrackingRecHitBuilder
;
42
class
Trajectory
;
43
44
class
TrackTransformer
final :
public
TrackTransformerBase
{
45
public
:
47
explicit
TrackTransformer
(
const
edm::ParameterSet
&);
48
50
~TrackTransformer
()
override
;
51
53
static
void
fillPSetDescription
(
edm::ParameterSetDescription
& descriptions,
54
bool
DoPredictionsOnly
=
false
,
55
const
std::string
&
Fitter
=
"KFFitterForRefitInsideOut"
,
56
const
std::string
&
Smoother
=
"KFSmootherForRefitInsideOut"
,
57
const
std::string
&
Propagator
=
"SmartPropagatorAnyRK"
,
58
const
std::string
&
RefitDirection
=
"alongMomentum"
,
59
bool
RefitRPCHits
=
true
,
60
const
std::string
&
TrackerRecHitBuilder
=
"WithTrackAngle"
,
61
const
std::string
&
MuonRecHitBuilder
=
"MuonRecHitBuilder"
,
62
const
std::string
&
MTDRecHitBuilder
=
"MTDRecHitBuilder"
);
63
64
// Operations
65
67
std::vector<Trajectory>
transform
(
const
reco::Track
&)
const override
;
68
70
std::vector<Trajectory>
transform
(
const
reco::TrackRef
&)
const
;
71
73
std::vector<Trajectory>
transform
(
const
reco::TransientTrack
&,
TransientTrackingRecHit::ConstRecHitContainer
&)
const
;
74
76
const
MagneticField
*
magneticField
()
const
{
return
&*
theMGField
; }
77
79
edm::ESHandle<GlobalTrackingGeometry>
trackingGeometry
()
const
{
return
theTrackingGeometry
; }
80
82
void
setServices
(
const
edm::EventSetup
&)
override
;
83
85
std::unique_ptr<TrajectoryFitter>
const
&
refitter
()
const
{
return
theFitter
; }
86
88
std::unique_ptr<TrajectorySmoother>
const
&
smoother
()
const
{
return
theSmoother
; }
89
90
TransientTrackingRecHit::ConstRecHitContainer
getTransientRecHits
(
const
reco::TransientTrack
&
track
)
const
;
91
92
private
:
93
RefitDirection::GeometricalDirection
checkRecHitsOrdering
(
TransientTrackingRecHit::ConstRecHitContainer
const
&)
const
;
94
95
unsigned
long
long
theCacheId_TC
= 0;
96
unsigned
long
long
theCacheId_GTG
= 0;
97
unsigned
long
long
theCacheId_MG
= 0;
98
unsigned
long
long
theCacheId_TRH
= 0;
99
100
const
bool
theRPCInTheFit
;
101
102
const
bool
theDoPredictionsOnly
;
103
const
RefitDirection
theRefitDirection
;
104
105
edm::ESHandle<GlobalTrackingGeometry>
theTrackingGeometry
;
106
edm::ESHandle<MagneticField>
theMGField
;
107
108
const
std::string
theFitterName
;
109
std::unique_ptr<TrajectoryFitter>
theFitter
;
110
111
const
std::string
theSmootherName
;
112
std::unique_ptr<TrajectorySmoother>
theSmoother
;
113
114
const
std::string
thePropagatorName
;
115
edm::ESHandle<Propagator>
const
&
propagator
()
const
{
return
thePropagator
; }
116
edm::ESHandle<Propagator>
thePropagator
;
117
118
const
std::string
theTrackerRecHitBuilderName
;
119
edm::ESHandle<TransientTrackingRecHitBuilder>
theTrackerRecHitBuilder
;
120
TkClonerImpl
hitCloner
;
121
122
const
std::string
theMuonRecHitBuilderName
;
123
edm::ESHandle<TransientTrackingRecHitBuilder>
theMuonRecHitBuilder
;
124
125
const
std::string
theMTDRecHitBuilderName
;
126
bool
theMtdAvailable
;
127
edm::ESHandle<TransientTrackingRecHitBuilder>
theMTDRecHitBuilder
;
128
};
129
#endif
TrackTransformer::theTrackerRecHitBuilderName
const std::string theTrackerRecHitBuilderName
Definition:
TrackTransformer.h:118
RefitDirection.h
TrackTransformer::theSmoother
std::unique_ptr< TrajectorySmoother > theSmoother
Definition:
TrackTransformer.h:112
TrackTransformer::theRPCInTheFit
const bool theRPCInTheFit
Definition:
TrackTransformer.h:100
ESHandle.h
TrackTransformer::setServices
void setServices(const edm::EventSetup &) override
set the services needed by the TrackTransformer
Definition:
TrackTransformer.cc:66
TrackTransformer::getTransientRecHits
TransientTrackingRecHit::ConstRecHitContainer getTransientRecHits(const reco::TransientTrack &track) const
Definition:
TrackTransformer.cc:117
edm
HLT enums.
Definition:
AlignableModifier.h:19
trackingRecoMaterialAnalyzer_cfi.MTDRecHitBuilder
MTDRecHitBuilder
Definition:
trackingRecoMaterialAnalyzer_cfi.py:14
TrackTransformer::theCacheId_MG
unsigned long long theCacheId_MG
Definition:
TrackTransformer.h:97
HLTSiStripMonitoring_cff.Fitter
Fitter
Definition:
HLTSiStripMonitoring_cff.py:207
RefitDirection::GeometricalDirection
GeometricalDirection
Definition:
RefitDirection.h:15
TrackTransformer::magneticField
const MagneticField * magneticField() const
the magnetic field
Definition:
TrackTransformer.h:76
edm::ParameterSetDescription
Definition:
ParameterSetDescription.h:52
TrackTransformer::transform
std::vector< Trajectory > transform(const reco::Track &) const override
Convert a reco::Track into Trajectory.
Definition:
TrackTransformer.cc:164
TrackTransformer::theCacheId_GTG
unsigned long long theCacheId_GTG
Definition:
TrackTransformer.h:96
TransientTrackingRecHit.h
reco
fixed size matrix
Definition:
AlignmentAlgorithmBase.h:45
TrackTransformer::theMGField
edm::ESHandle< MagneticField > theMGField
Definition:
TrackTransformer.h:106
TrackTransformer::smoother
std::unique_ptr< TrajectorySmoother > const & smoother() const
the smoother used to smooth the trajectory which came from the refitting step
Definition:
TrackTransformer.h:88
TrackTransformer::theMtdAvailable
bool theMtdAvailable
Definition:
TrackTransformer.h:126
TrackTransformer::~TrackTransformer
~TrackTransformer() override
Destructor.
Definition:
TrackTransformer.cc:43
TkTransientTrackingRecHitBuilder.h
edm::Ref< TrackCollection >
TrajectorySmoother
Definition:
TrajectorySmoother.h:11
Propagator
Definition:
Propagator.h:44
TrackTransformer::theTrackingGeometry
edm::ESHandle< GlobalTrackingGeometry > theTrackingGeometry
Definition:
TrackTransformer.h:105
TrackTransformer::theMTDRecHitBuilder
edm::ESHandle< TransientTrackingRecHitBuilder > theMTDRecHitBuilder
Definition:
TrackTransformer.h:127
TrackTransformer::thePropagator
edm::ESHandle< Propagator > thePropagator
Definition:
TrackTransformer.h:116
TrackTransformer::thePropagatorName
const std::string thePropagatorName
Definition:
TrackTransformer.h:114
TrackFwd.h
TrackTransformer::checkRecHitsOrdering
RefitDirection::GeometricalDirection checkRecHitsOrdering(TransientTrackingRecHit::ConstRecHitContainer const &) const
Definition:
TrackTransformer.cc:145
TrackTransformer::theFitterName
const std::string theFitterName
Definition:
TrackTransformer.h:108
TrackTransformer::theMuonRecHitBuilder
edm::ESHandle< TransientTrackingRecHitBuilder > theMuonRecHitBuilder
Definition:
TrackTransformer.h:123
TrackTransformer::theCacheId_TC
unsigned long long theCacheId_TC
Definition:
TrackTransformer.h:95
reco::Track
Definition:
Track.h:27
edm::ESHandle< GlobalTrackingGeometry >
AlCaHLTBitMon_QueryRunRegistry.string
string
Definition:
AlCaHLTBitMon_QueryRunRegistry.py:256
TrackTransformer::theDoPredictionsOnly
const bool theDoPredictionsOnly
Definition:
TrackTransformer.h:102
edm::ParameterSet
Definition:
ParameterSet.h:36
ParameterSet
Definition:
Functions.h:16
TrackingRecHit::ConstRecHitContainer
std::vector< ConstRecHitPointer > ConstRecHitContainer
Definition:
TrackingRecHit.h:32
TrackTransformer::trackingGeometry
edm::ESHandle< GlobalTrackingGeometry > trackingGeometry() const
the tracking geometry
Definition:
TrackTransformer.h:79
TrackTransformer::theCacheId_TRH
unsigned long long theCacheId_TRH
Definition:
TrackTransformer.h:98
MuonAlignmentFromReference_cff.RefitRPCHits
RefitRPCHits
Definition:
MuonAlignmentFromReference_cff.py:16
TrackTransformer::theTrackerRecHitBuilder
edm::ESHandle< TransientTrackingRecHitBuilder > theTrackerRecHitBuilder
Definition:
TrackTransformer.h:119
RefitDirection
Definition:
RefitDirection.h:13
TrackTransformerBase.h
MagneticField.h
edm::EventSetup
Definition:
EventSetup.h:57
TrackTransformerBase
Definition:
TrackTransformerBase.h:17
TrackTransformer::hitCloner
TkClonerImpl hitCloner
Definition:
TrackTransformer.h:120
trackingRecoMaterialAnalyzer_cfi.TrackerRecHitBuilder
TrackerRecHitBuilder
Definition:
trackingRecoMaterialAnalyzer_cfi.py:11
TrackTransformer::fillPSetDescription
static void fillPSetDescription(edm::ParameterSetDescription &descriptions, bool DoPredictionsOnly=false, const std::string &Fitter="KFFitterForRefitInsideOut", const std::string &Smoother="KFSmootherForRefitInsideOut", const std::string &Propagator="SmartPropagatorAnyRK", const std::string &RefitDirection="alongMomentum", bool RefitRPCHits=true, const std::string &TrackerRecHitBuilder="WithTrackAngle", const std::string &MuonRecHitBuilder="MuonRecHitBuilder", const std::string &MTDRecHitBuilder="MTDRecHitBuilder")
fillDescriptions
Definition:
TrackTransformer.cc:45
trackingRecoMaterialAnalyzer_cfi.MuonRecHitBuilder
MuonRecHitBuilder
Definition:
trackingRecoMaterialAnalyzer_cfi.py:13
TrackTransformer::theSmootherName
const std::string theSmootherName
Definition:
TrackTransformer.h:111
TrajectoryFitter
Definition:
TrajectoryFitter.h:19
TkClonerImpl
Definition:
TkClonerImpl.h:12
reco::TransientTrack
Definition:
TransientTrack.h:19
Trajectory
Definition:
Trajectory.h:38
TrackTransformer::theFitter
std::unique_ptr< TrajectoryFitter > theFitter
Definition:
TrackTransformer.h:109
trackingRecoMaterialAnalyzer_cfi.DoPredictionsOnly
DoPredictionsOnly
Definition:
trackingRecoMaterialAnalyzer_cfi.py:9
HLTSiStripMonitoring_cff.Smoother
Smoother
Definition:
HLTSiStripMonitoring_cff.py:209
ParameterSetDescription
HLT_2018_cff.track
track
Definition:
HLT_2018_cff.py:10352
TrackTransformer::refitter
std::unique_ptr< TrajectoryFitter > const & refitter() const
the refitter used to refit the reco::Track
Definition:
TrackTransformer.h:85
EventSetup
TrackTransformer::theMTDRecHitBuilderName
const std::string theMTDRecHitBuilderName
Definition:
TrackTransformer.h:125
TrackTransformer::theRefitDirection
const RefitDirection theRefitDirection
Definition:
TrackTransformer.h:103
GlobalTrackingGeometry.h
TrackTransformer::propagator
edm::ESHandle< Propagator > const & propagator() const
Definition:
TrackTransformer.h:115
MagneticField
Definition:
MagneticField.h:19
TransientTrackingRecHitBuilder
Definition:
TransientTrackingRecHitBuilder.h:6
TrackTransformer::theMuonRecHitBuilderName
const std::string theMuonRecHitBuilderName
Definition:
TrackTransformer.h:122
TrackTransformer
Definition:
TrackTransformer.h:44
TrackTransformer::TrackTransformer
TrackTransformer(const edm::ParameterSet &)
Constructor.
Definition:
TrackTransformer.cc:31
Generated for CMSSW Reference Manual by
1.8.16