Main Page
Namespaces
Classes
Package Documentation
RecoTracker
TrackProducer
interface
DAFTrackProducerAlgorithm.h
Go to the documentation of this file.
1
8
#ifndef DAFTrackProducerAlgorithm_h
9
#define DAFTrackProducerAlgorithm_h
10
11
#include "
AlgoProductTraits.h
"
12
13
#include "
FWCore/ParameterSet/interface/ParameterSet.h
"
14
#include "
TrackingTools/TransientTrackingRecHit/interface/TransientTrackingRecHit.h
"
15
#include "
DataFormats/TrackCandidate/interface/TrackCandidateCollection.h
"
16
#include "
DataFormats/TrajectorySeed/interface/PropagationDirection.h
"
17
#include "
DataFormats/BeamSpot/interface/BeamSpot.h
"
18
#include "
RecoTracker/MeasurementDet/interface/MeasurementTrackerEvent.h
"
19
#include "
TrackingTools/PatternTools/interface/TrajTrackAssociation.h
"
20
21
class
MagneticField
;
22
class
TrackingGeometry
;
23
class
TrajAnnealing
;
24
class
TrajectoryFitter
;
25
class
Trajectory
;
26
class
TrajectoryStateOnSurface
;
27
class
TransientTrackingRecHitBuilder
;
28
class
MultiRecHitCollector
;
29
class
SiTrackerMultiRecHitUpdator
;
30
namespace
reco
{
31
class
Track;
32
}
33
34
class
DAFTrackProducerAlgorithm
:
public
AlgoProductTraits
<reco::Track> {
35
public
:
36
using
Base
=
AlgoProductTraits<reco::Track>
;
37
using
TrackCollection
=
typename
Base::TrackCollection
;
38
using
AlgoProductCollection
=
typename
Base::AlgoProductCollection
;
39
40
using
TrajAnnealingCollection
= std::vector<TrajAnnealing>;
41
42
public
:
43
DAFTrackProducerAlgorithm
(
const
edm::ParameterSet
& conf);
44
~DAFTrackProducerAlgorithm
() {}
45
47
void
runWithCandidate(
const
TrackingGeometry
*,
48
const
MagneticField
*,
49
//const TrackCandidateCollection&,
50
const
TrajTrackAssociationCollection
&,
51
const
MeasurementTrackerEvent
* measTk,
52
const
TrajectoryFitter
*,
53
const
TransientTrackingRecHitBuilder
*,
54
const
MultiRecHitCollector
*
measurementTracker
,
55
const
SiTrackerMultiRecHitUpdator
*,
56
const
reco::BeamSpot
&,
57
AlgoProductCollection
&,
58
TrajAnnealingCollection
&,
59
bool
,
60
AlgoProductCollection
&,
61
AlgoProductCollection
&)
const
;
62
63
private
:
65
bool
buildTrack(
66
const
Trajectory
,
AlgoProductCollection
& algoResults,
float
,
const
reco::BeamSpot
&,
const
reco::TrackRef
*)
const
;
67
69
Trajectory
fit
(
const
std::pair<TransientTrackingRecHit::RecHitContainer, TrajectoryStateOnSurface>&
hits
,
70
const
TrajectoryFitter
* theFitter,
71
Trajectory
vtraj)
const
;
72
73
//calculates the ndof according to the DAF prescription
74
float
calculateNdof(
const
Trajectory
vtraj)
const
;
75
76
//creates MultiRecHits out of a KF trajectory
77
std::pair<TransientTrackingRecHit::RecHitContainer, TrajectoryStateOnSurface> collectHits(
78
const
Trajectory
vtraj,
79
const
MultiRecHitCollector
* measurementCollector,
80
const
MeasurementTrackerEvent
* measTk)
const
;
81
82
//updates the hits with the specified annealing factor
83
std::pair<TransientTrackingRecHit::RecHitContainer, TrajectoryStateOnSurface> updateHits(
84
const
Trajectory
vtraj,
85
const
SiTrackerMultiRecHitUpdator
*
updator
,
86
const
MeasurementTrackerEvent
* theMTE,
87
double
annealing)
const
;
88
89
//removes from the trajectory isolated hits with very low weight
90
void
filter
(
const
TrajectoryFitter
* fitter,
91
std::vector<Trajectory>&
input
,
92
int
minhits,
93
std::vector<Trajectory>&
output
,
94
const
TransientTrackingRecHitBuilder
* builder)
const
;
95
96
int
countingGoodHits(
const
Trajectory
traj)
const
;
97
98
int
checkHits(
Trajectory
iInitTraj,
const
Trajectory
iFinalTraj)
const
;
99
100
void
PrintHit(
const
TrackingRecHit
*
const
&
hit
,
TrajectoryStateOnSurface
& tsos)
const
;
101
102
edm::ParameterSet
conf_
;
103
int
minHits_
;
104
};
105
106
#endif
MeasurementTrackerEvent.h
TrackingGeometry
Definition:
TrackingGeometry.h:26
MultiRecHitCollector
Definition:
MultiRecHitCollector.h:10
edm::Ref< TrackCollection >
HLTSiStripMonitoring_cff.measurementTracker
measurementTracker
Definition:
HLTSiStripMonitoring_cff.py:178
DAFTrackProducerAlgorithm::TrackCollection
typename Base::TrackCollection TrackCollection
Definition:
DAFTrackProducerAlgorithm.h:37
hfClusterShapes_cfi.hits
hits
Definition:
hfClusterShapes_cfi.py:5
reco::TrackCollection
std::vector< Track > TrackCollection
collection of Tracks
Definition:
TrackFwd.h:14
MagneticField
Definition:
MagneticField.h:19
TrackingRecHit
Definition:
TrackingRecHit.h:22
convertSQLitetoXML_cfg.output
output
Definition:
convertSQLitetoXML_cfg.py:32
HLT_2018_cff.updator
updator
Definition:
HLT_2018_cff.py:123
TransientTrackingRecHitBuilder
Definition:
TransientTrackingRecHitBuilder.h:6
TrajectoryStateOnSurface
Definition:
TrajectoryStateOnSurface.h:16
Trajectory
Definition:
Trajectory.h:38
input
static std::string const input
Definition:
EdmProvDump.cc:48
DAFTrackProducerAlgorithm::TrajAnnealingCollection
std::vector< TrajAnnealing > TrajAnnealingCollection
Definition:
DAFTrackProducerAlgorithm.h:40
ParameterSet.h
TransientTrackingRecHit.h
DAFTrackProducerAlgorithm::~DAFTrackProducerAlgorithm
~DAFTrackProducerAlgorithm()
Definition:
DAFTrackProducerAlgorithm.h:44
MeasurementTrackerEvent
Definition:
MeasurementTrackerEvent.h:15
DAFTrackProducerAlgorithm::minHits_
int minHits_
Definition:
DAFTrackProducerAlgorithm.h:103
PropagationDirection.h
edm::AssociationMap< edm::OneToOne< std::vector< Trajectory >, reco::TrackCollection, unsigned short > >
TrajAnnealing
Definition:
TrajAnnealing.h:13
TrackCandidateCollection.h
TrajectoryFitter
Definition:
TrajectoryFitter.h:21
AlgoProductTraits< reco::Track >::AlgoProductCollection
std::vector< AlgoProduct > AlgoProductCollection
Definition:
AlgoProductTraits.h:20
AlgoProductTraits
Definition:
AlgoProductTraits.h:10
DAFTrackProducerAlgorithm::conf_
edm::ParameterSet conf_
Definition:
DAFTrackProducerAlgorithm.h:102
TrajTrackAssociation.h
ALCARECOTkAlBeamHalo_cff.filter
filter
Definition:
ALCARECOTkAlBeamHalo_cff.py:27
hit
Definition:
SiStripHitEffFromCalibTree.cc:88
DAFTrackProducerAlgorithm
Definition:
DAFTrackProducerAlgorithm.h:34
reco
fixed size matrix
Definition:
AlignmentAlgorithmBase.h:45
DAFTrackProducerAlgorithm::AlgoProductCollection
typename Base::AlgoProductCollection AlgoProductCollection
Definition:
DAFTrackProducerAlgorithm.h:38
BeamSpot.h
SiTrackerMultiRecHitUpdator
Definition:
SiTrackerMultiRecHitUpdator.h:27
AlgoProductTraits.h
edm::ParameterSet
Definition:
ParameterSet.h:36
trackingPlots.fit
fit
Definition:
trackingPlots.py:1454
reco::BeamSpot
Definition:
BeamSpot.h:21
Generated for CMSSW Reference Manual by
1.8.11