Main Page
Namespaces
Classes
Package Documentation
All
Classes
Namespaces
Files
Functions
Variables
Typedefs
Enumerations
Enumerator
Properties
Friends
Macros
Pages
RecoTracker
TkSeedGenerator
plugins
SeedFromConsecutiveHitsTripletOnlyCreator.cc
Go to the documentation of this file.
1
#include "
SeedFromConsecutiveHitsTripletOnlyCreator.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
#include "
RecoTracker/TkSeedGenerator/interface/FastHelix.h
"
10
11
12
GlobalTrajectoryParameters
SeedFromConsecutiveHitsTripletOnlyCreator::initialKinematic
(
13
const
SeedingHitSet
& hits,
14
const
TrackingRegion
& region,
15
const
edm::EventSetup
& es,
16
const
SeedComparitor
*
filter
,
17
bool
&passesFilter)
const
18
{
19
GlobalTrajectoryParameters
kine;
20
21
const
TransientTrackingRecHit::ConstRecHitPointer
& tth1 = hits[0];
22
const
TransientTrackingRecHit::ConstRecHitPointer
& tth2 = hits[1];
23
const
TransientTrackingRecHit::ConstRecHitPointer
& tth3 = hits[2];
24
25
FastHelix
helix(tth3->globalPosition(), tth2->globalPosition(), tth1->globalPosition(), es, tth1->globalPosition());
26
kine = helix.stateAtVertex().parameters();
27
28
edm::ESHandle<MagneticField>
bfield;
29
es.
get
<
IdealMagneticFieldRecord
>().
get
(bfield);
30
bool
isBOFF = (
std::abs
(bfield->inTesla(
GlobalPoint
(0,0,0)).z()) < 1
e
-3 );
31
if
(isBOFF && (
theBOFFMomentum
> 0)) {
32
kine =
GlobalTrajectoryParameters
(kine.position(),
33
kine.momentum().unit() *
theBOFFMomentum
,
34
kine.charge(),
35
&*bfield);
36
}
37
passesFilter = (filter ? filter->
compatible
(hits, kine, helix, region) :
true
);
38
return
kine;
39
}
MessageLogger.h
SeedFromConsecutiveHitsTripletOnlyCreator::initialKinematic
virtual GlobalTrajectoryParameters initialKinematic(const SeedingHitSet &hits, const TrackingRegion ®ion, const edm::EventSetup &es, const SeedComparitor *filter, bool &passesFilter) const
Definition:
SeedFromConsecutiveHitsTripletOnlyCreator.cc:12
ConstReferenceCountingPointer< TransientTrackingRecHit >
GlobalTrajectoryParameters
Definition:
GlobalTrajectoryParameters.h:16
EventSetup.h
IdealMagneticFieldRecord
Definition:
IdealMagneticFieldRecord.h:11
abs
#define abs(x)
Definition:
mlp_lapack.h:159
FastHelix
Definition:
FastHelix.h:28
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
MagneticField.h
SeedFromConsecutiveHitsTripletOnlyCreator.h
SeedFromConsecutiveHitsCreator::theBOFFMomentum
double theBOFFMomentum
Definition:
SeedFromConsecutiveHitsCreator.h:62
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
alignCSCRings.e
list e
Definition:
alignCSCRings.py:90
Point3DBase< float, GlobalTag >
SeedComparitor
Definition:
SeedComparitor.h:22
IdealMagneticFieldRecord.h
FastHelix.h
Generated for CMSSW Reference Manual by
1.8.5