Main Page
Namespaces
Classes
Package Documentation
All
Classes
Namespaces
Files
Functions
Variables
Typedefs
Enumerations
Enumerator
Properties
Friends
Macros
Pages
src
RecoTracker
TkSeedGenerator
plugins
SeedFromConsecutiveHitsStraightLineCreator.cc
Go to the documentation of this file.
1
#include "
SeedFromConsecutiveHitsStraightLineCreator.h
"
2
3
#include "
FWCore/MessageLogger/interface/MessageLogger.h
"
4
#include "
MagneticField/Engine/interface/MagneticField.h
"
5
#include "
MagneticField/Records/interface/IdealMagneticFieldRecord.h
"
6
#include "
FWCore/Framework/interface/ESHandle.h
"
7
#include "
FWCore/Framework/interface/EventSetup.h
"
8
#include "
RecoTracker/TkTrackingRegions/interface/TrackingRegion.h
"
9
10
11
GlobalTrajectoryParameters
SeedFromConsecutiveHitsStraightLineCreator::initialKinematic
(
12
const
SeedingHitSet
& hits,
13
const
TrackingRegion
& region,
14
const
edm::EventSetup
& es,
15
const
SeedComparitor
*
filter
,
16
bool
&passesFilter)
const
17
{
18
GlobalTrajectoryParameters
kine;
19
20
const
TransientTrackingRecHit::ConstRecHitPointer
& tth1 = hits[0];
21
const
TransientTrackingRecHit::ConstRecHitPointer
& tth2 = hits[1];
22
23
const
GlobalPoint
& vertexPos = region.
origin
();
24
edm::ESHandle<MagneticField>
bfield;
25
es.
get
<
IdealMagneticFieldRecord
>().
get
(bfield);
26
27
// Assume initial state is straight line passing through beam spot
28
// with direction given by innermost two seed hits (with big uncertainty)
29
GlobalVector
initMomentum(tth2->globalPosition() - tth1->globalPosition());
30
double
rescale = 1000./initMomentum.
perp
();
31
initMomentum *= rescale;
// set to approximately infinite momentum
32
TrackCharge
q
= 1;
// irrelevant, since infinite momentum
33
kine =
GlobalTrajectoryParameters
(vertexPos, initMomentum, q, &*bfield);
34
35
passesFilter = (filter ? filter->
compatible
(hits, kine, region) :
true
);
36
return
kine;
37
}
38
MessageLogger.h
PV3DBase::perp
T perp() const
Definition:
PV3DBase.h:71
TrackingRegion::origin
virtual GlobalPoint origin() const =0
ConstReferenceCountingPointer< TransientTrackingRecHit >
Vector3DBase
Definition:
Vector3DBase.h:9
GlobalTrajectoryParameters
Definition:
GlobalTrajectoryParameters.h:16
EventSetup.h
IdealMagneticFieldRecord
Definition:
IdealMagneticFieldRecord.h:11
lumiQueryAPI.q
tuple q
Definition:
lumiQueryAPI.py:1839
alcazmumu_cfi.filter
tuple filter
Definition:
alcazmumu_cfi.py:34
SeedComparitor::compatible
virtual bool compatible(const SeedingHitSet &hits, const TrackingRegion ®ion) const =0
TrackingRegion
Definition:
TrackingRegion.h:26
SeedFromConsecutiveHitsStraightLineCreator.h
MagneticField.h
TrackCharge
int TrackCharge
Definition:
TrackCharge.h:4
SeedingHitSet
Definition:
SeedingHitSet.h:6
edm::ESHandle< MagneticField >
ESHandle.h
TrackingRegion.h
edm::EventSetup
Definition:
EventSetup.h:44
edm::EventSetup::get
const T & get() const
Definition:
EventSetup.h:55
Point3DBase< float, GlobalTag >
SeedFromConsecutiveHitsStraightLineCreator::initialKinematic
virtual GlobalTrajectoryParameters initialKinematic(const SeedingHitSet &hits, const TrackingRegion ®ion, const edm::EventSetup &es, const SeedComparitor *filter, bool &passesFilter) const
Definition:
SeedFromConsecutiveHitsStraightLineCreator.cc:11
SeedComparitor
Definition:
SeedComparitor.h:22
IdealMagneticFieldRecord.h
Generated for CMSSW Reference Manual by
1.8.5