CMS 3D CMS Logo

All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Macros Pages
TransientTrackFromFTS.cc
Go to the documentation of this file.
7 #include <iostream>
8 
9 using namespace reco;
10 
12  theField(0), initialTSOSAvailable(false), initialTSCPAvailable(false),
13  trackAvailable(false), blStateAvailable(false)
14 {}
15 
17  initialFTS(fts), theField(&(initialFTS.parameters().magneticField())),
18  initialTSOSAvailable(false), initialTSCPAvailable(false), trackAvailable(false),
19  blStateAvailable(false)
20 {}
21 
22 
25  initialFTS(fts), theField(&(initialFTS.parameters().magneticField())),
26  initialTSOSAvailable(false), initialTSCPAvailable(false), trackAvailable(false),
27  blStateAvailable(false), theTrackingGeometry(tg)
28 {}
29 
30 
32  initialFTS(tt.initialFreeState()), theField(tt.field()), initialTSOSAvailable(false),
33  initialTSCPAvailable(false), trackAvailable(false)
34 {
35  if (tt.initialTSOSAvailable) {
37  initialTSOSAvailable = true;
38  }
39  if (tt.initialTSCPAvailable) {
41  initialTSCPAvailable = true;
42  }
43 }
44 
45 
46 
48 {
50 }
51 
52 void
54 {
56 }
57 
59 {
60  theBeamSpot = beamSpot;
61  blStateAvailable = false;
62 }
63 
64 
66 {
68  return initialTSOS;
69 }
70 
72 {
73  if (!initialTSCPAvailable) {
75  initialTSCPAvailable = true;
76  }
77  return initialTSCP;
78 }
79 
81 {
82  throw cms::Exception("LogicError") <<
83  "TransientTrack built from a FreeTrajectoryState (TransientTrackFromFTS) can not have an outermostMeasurementState";
84 }
85 
87 {
88  throw cms::Exception("LogicError") <<
89  "TransientTrack built from a FreeTrajectoryState (TransientTrackFromFTS) can not have an innermostMeasurementState";
90 }
91 
92 
94 {
95  throw cms::Exception("LogicError") <<
96  "TransientTrack built from a FreeTrajectoryState (TransientTrackFromFTS) can not have an TrackBaseRef";
97 }
98 
99 
101 {
104  initialTSOSAvailable = true;
105 }
106 
109 {
111  return tipe.extrapolate(initialFTS, point);
112 }
113 
115 {
116  if (!trackAvailable) {
118  math::XYZPoint pos( v.x(), v.y(), v.z() );
120  math::XYZVector mom( p.x(), p.y(), p.z() );
121 
122  theTrack = Track(0., 0., pos, mom, initialFTS.charge(),
124  trackAvailable = true;
125  }
126  return theTrack;
127 }
128 
130 {
131  if (!blStateAvailable) {
132  TSCBLBuilderNoMaterial blsBuilder;
134  blStateAvailable = true;
135  }
137 }
138 
dictionary parameters
Definition: Parameters.py:2
TrajectoryStateOnSurface initialTSOS
TrajectoryStateOnSurface outermostMeasurementState() const
TrackCharge charge() const
const CurvilinearTrajectoryError & curvilinearError() const
const MagneticField * theField
TrackBaseRef trackBaseRef() const
void setES(const edm::EventSetup &)
void setBeamSpot(const reco::BeamSpot &beamSpot)
TrajectoryStateClosestToPoint initialTSCP
edm::ESHandle< GlobalTrackingGeometry > theTrackingGeometry
TrajectoryStateOnSurface innermostMeasurementState() const
GlobalVector momentum() const
ROOT::Math::DisplacementVector3D< ROOT::Math::Cartesian3D< float >, ROOT::Math::GlobalCoordinateSystemTag > GlobalVector
vector in glovbal coordinate system
Definition: Vector3D.h:28
TrajectoryStateClosestToBeamLine stateAtBeamLine() const
GlobalPoint position() const
void setTrackingGeometry(const edm::ESHandle< GlobalTrackingGeometry > &)
XYZVectorD XYZVector
spatial vector with cartesian internal representation
Definition: Vector3D.h:31
XYZPointD XYZPoint
point in space with cartesian internal representation
Definition: Point3D.h:13
const T & get() const
Definition: EventSetup.h:55
TrajectoryStateOnSurface stateOnSurface(const GlobalPoint &point) const
TrajectoryStateClosestToPoint impactPointTSCP() const
ROOT::Math::PositionVector3D< ROOT::Math::Cartesian3D< float >, ROOT::Math::GlobalCoordinateSystemTag > GlobalPoint
point in global coordinate system
Definition: Point3D.h:18
TrajectoryStateOnSurface extrapolate(const FreeTrajectoryState &fts, const GlobalPoint &vtx) const
extrapolation with default (=geometrical) propagator
TrajectoryStateOnSurface impactPointState() const
void setup(std::vector< TH2F > &depth, std::string name, std::string units="")
TrajectoryStateClosestToBeamLine trajectoryStateClosestToBeamLine
mathSSE::Vec4< T > v
*vegas h *****************************************************used in the default bin number in original ***version of VEGAS is ***a higher bin number might help to derive a more precise ***grade subtle point
Definition: invegas.h:5