RecoTracker
FinalTrackSelectors
plugins
TrackMerger.h
Go to the documentation of this file.
1
#include "
DataFormats/TrackReco/interface/Track.h
"
2
#include "
DataFormats/TrackCandidate/interface/TrackCandidate.h
"
3
#include "
TrackingTools/TransientTrackingRecHit/interface/TransientTrackingRecHitBuilder.h
"
4
#include "
MagneticField/Engine/interface/MagneticField.h
"
5
#include "
Geometry/TrackerGeometryBuilder/interface/TrackerGeometry.h
"
6
#include "
FWCore/Framework/interface/ESHandle.h
"
7
#include "
FWCore/ParameterSet/interface/ParameterSet.h
"
8
#include "
Geometry/Records/interface/TrackerDigiGeometryRecord.h
"
9
#include "
MagneticField/Records/interface/IdealMagneticFieldRecord.h
"
10
#include "
DataFormats/TrackerCommon/interface/TrackerTopology.h
"
11
12
#include "
DuplicateTrackType.h
"
13
14
class
dso_hidden
TrackMerger
{
15
public
:
16
TrackMerger
(
const
edm::ParameterSet
&iConfig);
17
~
TrackMerger
();
18
19
void
init
(
const
edm::EventSetup
&iSetup);
20
21
TrackCandidate
merge
(
const
reco::Track
&
inner
,
const
reco::Track
&
outer
,
DuplicateTrackType
duplicateType)
const
;
22
23
private
:
24
edm::ESHandle<TrackerGeometry>
theGeometry
;
25
edm::ESHandle<MagneticField>
theMagField
;
26
bool
useInnermostState_
;
27
bool
debug_
;
28
std::string
theBuilderName
;
29
edm::ESHandle<TransientTrackingRecHitBuilder>
theBuilder
;
30
edm::ESHandle<TrackerTopology>
theTrkTopo
;
31
32
void
addSecondTrackHits(std::vector<const TrackingRecHit *> &
hits
,
const
reco::Track
&
outer
)
const
;
33
void
sortByHitPosition(
const
GlobalVector
&
v
,
34
const
std::vector<const TrackingRecHit *> &
hits
,
35
TrackCandidate::RecHitContainer
&ownHits)
const
;
36
37
class
GlobalMomentumSort
{
38
public
:
39
GlobalMomentumSort
(
const
GlobalVector
&
dir
) :
dir_
(
dir
) {}
40
bool
operator()(
const
TransientTrackingRecHit::RecHitPointer
&hit1,
41
const
TransientTrackingRecHit::RecHitPointer
&hit2)
const
;
42
43
private
:
44
GlobalVector
dir_
;
45
};
46
class
MomentumSort
{
47
public
:
48
MomentumSort
(
const
GlobalVector
&
dir
,
const
TrackerGeometry
*
geometry
) :
dir_
(
dir
), geom_(
geometry
) {}
49
bool
operator()(
const
TrackingRecHit
*hit1,
const
TrackingRecHit
*hit2)
const
;
50
51
private
:
52
GlobalVector
dir_
;
53
const
TrackerGeometry
*
geom_
;
54
};
55
};
Vector3DBase
Definition:
Vector3DBase.h:8
init
int init
Definition:
HydjetWrapper.h:64
TrackerGeometry.h
hfClusterShapes_cfi.hits
hits
Definition:
hfClusterShapes_cfi.py:5
ESHandle.h
TrackMerger::theMagField
edm::ESHandle< MagneticField > theMagField
Definition:
TrackMerger.h:25
DuplicateTrackType.h
TrackMerger::GlobalMomentumSort::GlobalMomentumSort
GlobalMomentumSort(const GlobalVector &dir)
Definition:
TrackMerger.h:39
geometry
Definition:
geometry.py:1
sistrip::dir_
static const char dir_[]
Definition:
ConstantsForDqm.h:17
TrackMerger::theBuilderName
std::string theBuilderName
Definition:
TrackMerger.h:28
TrackMerger::MomentumSort::MomentumSort
MomentumSort(const GlobalVector &dir, const TrackerGeometry *geometry)
Definition:
TrackMerger.h:48
TrackMerger::MomentumSort::geom_
const TrackerGeometry * geom_
Definition:
TrackMerger.h:53
TrackingRecHit::RecHitPointer
std::shared_ptr< TrackingRecHit const > RecHitPointer
Definition:
TrackingRecHit.h:24
findQualityFiles.v
v
Definition:
findQualityFiles.py:179
TrackMerger::MomentumSort::dir_
GlobalVector dir_
Definition:
TrackMerger.h:52
TrackMerger
Definition:
TrackMerger.h:14
TrackMerger::debug_
bool debug_
Definition:
TrackMerger.h:27
TrackerTopology.h
Track.h
SurfaceOrientation::inner
Definition:
Surface.h:19
reco::Track
Definition:
Track.h:27
IdealMagneticFieldRecord.h
edm::ESHandle< TrackerGeometry >
TrackMerger::useInnermostState_
bool useInnermostState_
Definition:
TrackMerger.h:26
dso_hidden
#define dso_hidden
Definition:
Visibility.h:12
AlCaHLTBitMon_QueryRunRegistry.string
string
Definition:
AlCaHLTBitMon_QueryRunRegistry.py:256
TrackMerger::GlobalMomentumSort::dir_
GlobalVector dir_
Definition:
TrackMerger.h:44
TrackerDigiGeometryRecord.h
edm::ParameterSet
Definition:
ParameterSet.h:36
TrackCandidate
Definition:
TrackCandidate.h:23
DuplicateTrackType
DuplicateTrackType
Definition:
DuplicateTrackType.h:4
MagneticField.h
edm::EventSetup
Definition:
EventSetup.h:57
TrackingRecHit
Definition:
TrackingRecHit.h:21
TrackMerger::MomentumSort
Definition:
TrackMerger.h:46
TrackMerger::theBuilder
edm::ESHandle< TransientTrackingRecHitBuilder > theBuilder
Definition:
TrackMerger.h:29
TrackMerger::theGeometry
edm::ESHandle< TrackerGeometry > theGeometry
Definition:
TrackMerger.h:24
TrackMerger::theTrkTopo
edm::ESHandle< TrackerTopology > theTrkTopo
Definition:
TrackMerger.h:30
TransientTrackingRecHitBuilder.h
TrackMerger::GlobalMomentumSort
Definition:
TrackMerger.h:37
ParameterSet.h
TrackCandidate.h
SurfaceOrientation::outer
Definition:
Surface.h:19
MatrixUtil.merge
def merge(dictlist, TELL=False)
Definition:
MatrixUtil.py:194
edm::OwnVector< TrackingRecHit >
DeadROC_duringRun.dir
dir
Definition:
DeadROC_duringRun.py:23
TrackerGeometry
Definition:
TrackerGeometry.h:14
Generated for CMSSW Reference Manual by
1.8.16