Main Page
Namespaces
Classes
Package Documentation
All
Classes
Namespaces
Files
Functions
Variables
Typedefs
Enumerations
Enumerator
Properties
Friends
Macros
Pages
src
RecoTracker
TkSeedGenerator
interface
FastHelix.h
Go to the documentation of this file.
1
#ifndef TR_FastHelix_H_
2
#define TR_FastHelix_H_
3
4
#include "
DataFormats/GeometryVector/interface/GlobalPoint.h
"
5
#include "
TrackingTools/TrajectoryState/interface/FreeTrajectoryState.h
"
6
#include "
RecoTracker/TkSeedGenerator/interface/FastCircle.h
"
7
#include "
FWCore/Framework/interface/EventSetup.h
"
8
#include "
FWCore/Framework/interface/ESHandle.h
"
9
#include "
MagneticField/Engine/interface/MagneticField.h
"
10
#include "
MagneticField/Records/interface/IdealMagneticFieldRecord.h
"
11
27
class
FastHelix
{
28
29
private
:
30
31
typedef
FreeTrajectoryState
FTS
;
32
33
public
:
34
35
36
//Original constructor (no basis vertex)
37
FastHelix
(
const
GlobalPoint
& outerHit,
38
const
GlobalPoint
& middleHit,
39
const
GlobalPoint
& aVertex,
40
const
edm::EventSetup
& iSetup) :
theOuterHit
(outerHit),
41
theMiddleHit
(middleHit),
42
theVertex
(aVertex),
43
theCircle
(outerHit,
44
middleHit,
45
aVertex) {
46
iSetup.
get
<
IdealMagneticFieldRecord
>().
get
(
pSetup
);
47
tesla0
=
pSetup
->inTesla(
GlobalPoint
(0,0,0));
48
useBasisVertex
=
false
;
49
}
50
51
//New constructor (with basis vertex)
52
FastHelix
(
const
GlobalPoint
& outerHit,
53
const
GlobalPoint
& middleHit,
54
const
GlobalPoint
& aVertex,
55
const
edm::EventSetup
& iSetup,
56
const
GlobalPoint
& bVertex) :
theOuterHit
(outerHit),
57
theMiddleHit
(middleHit),
58
theVertex
(aVertex),
59
basisVertex
(bVertex),
60
theCircle
(outerHit,
61
middleHit,
62
aVertex) {
63
iSetup.
get
<
IdealMagneticFieldRecord
>().
get
(
pSetup
);
64
tesla0
=
pSetup
->inTesla(
GlobalPoint
(0,0,0));
65
useBasisVertex
=
true
;
66
}
67
68
~FastHelix
() {}
69
70
bool
isValid
()
const
{
return
theCircle
.
isValid
();}
71
72
FTS
stateAtVertex
()
const
;
73
74
FTS
helixStateAtVertex
()
const
;
75
76
FTS
straightLineStateAtVertex
()
const
;
77
78
private
:
79
80
GlobalPoint
theOuterHit
;
81
GlobalPoint
theMiddleHit
;
82
GlobalPoint
theVertex
;
83
GlobalPoint
basisVertex
;
84
FastCircle
theCircle
;
85
edm::ESHandle<MagneticField>
pSetup
;
86
GlobalVector
tesla0
;
87
bool
useBasisVertex
;
88
};
89
90
#endif //TR_FastHelix_H_
91
FastHelix::theMiddleHit
GlobalPoint theMiddleHit
Definition:
FastHelix.h:81
FastHelix::stateAtVertex
FTS stateAtVertex() const
Definition:
FastHelix.cc:7
FastHelix::theVertex
GlobalPoint theVertex
Definition:
FastHelix.h:82
FastHelix::isValid
bool isValid() const
Definition:
FastHelix.h:70
FastHelix::helixStateAtVertex
FTS helixStateAtVertex() const
Definition:
FastHelix.cc:16
FastHelix::~FastHelix
~FastHelix()
Definition:
FastHelix.h:68
Vector3DBase
Definition:
Vector3DBase.h:9
FastCircle
Definition:
FastCircle.h:33
EventSetup.h
GlobalPoint
Global3DPoint GlobalPoint
Definition:
GlobalPoint.h:10
FastHelix::basisVertex
GlobalPoint basisVertex
Definition:
FastHelix.h:83
IdealMagneticFieldRecord
Definition:
IdealMagneticFieldRecord.h:11
FastHelix
Definition:
FastHelix.h:27
FastHelix::theOuterHit
GlobalPoint theOuterHit
Definition:
FastHelix.h:80
FastCircle.h
FastHelix::theCircle
FastCircle theCircle
Definition:
FastHelix.h:84
MagneticField.h
FastCircle::isValid
bool isValid() const
Definition:
FastCircle.h:56
FreeTrajectoryState
Definition:
FreeTrajectoryState.h:24
edm::ESHandle< MagneticField >
ESHandle.h
edm::EventSetup
Definition:
EventSetup.h:44
FastHelix::FastHelix
FastHelix(const GlobalPoint &outerHit, const GlobalPoint &middleHit, const GlobalPoint &aVertex, const edm::EventSetup &iSetup, const GlobalPoint &bVertex)
Definition:
FastHelix.h:52
FastHelix::FastHelix
FastHelix(const GlobalPoint &outerHit, const GlobalPoint &middleHit, const GlobalPoint &aVertex, const edm::EventSetup &iSetup)
Definition:
FastHelix.h:37
edm::EventSetup::get
const T & get() const
Definition:
EventSetup.h:55
FastHelix::FTS
FreeTrajectoryState FTS
Definition:
FastHelix.h:31
Point3DBase< float, GlobalTag >
FastHelix::pSetup
edm::ESHandle< MagneticField > pSetup
Definition:
FastHelix.h:85
FastHelix::useBasisVertex
bool useBasisVertex
Definition:
FastHelix.h:87
FreeTrajectoryState.h
IdealMagneticFieldRecord.h
FastHelix::tesla0
GlobalVector tesla0
Definition:
FastHelix.h:86
GlobalPoint.h
FastHelix::straightLineStateAtVertex
FTS straightLineStateAtVertex() const
Definition:
FastHelix.cc:113
Generated for CMSSW Reference Manual by
1.8.5