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