CMS 3D CMS Logo

 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Macros Pages
TrajectoryMeasurement.h
Go to the documentation of this file.
1 #ifndef _TRACKER_TRAJECTORYMEASUREMENT_H_
2 #define _TRACKER_TRAJECTORYMEASUREMENT_H_
3 
5 #include "boost/intrusive_ptr.hpp"
7 #include<algorithm>
8 
9 class DetLayer;
10 
26 public:
27 
30 
32 
34  TrajectoryMeasurement(TrajectoryStateOnSurface fwdTrajectoryStateOnSurface,
35  ConstRecHitPointer aRecHit) :
36  theFwdPredictedState(fwdTrajectoryStateOnSurface),
37  theUpdatedState(fwdTrajectoryStateOnSurface),
38  theRecHit(aRecHit),
39  theEstimate(0), theLayer(0) {}
40 
42  TrajectoryMeasurement(TrajectoryStateOnSurface fwdTrajectoryStateOnSurface,
43  ConstRecHitPointer aRecHit, float aEstimate) :
44  theFwdPredictedState(fwdTrajectoryStateOnSurface),
45  theUpdatedState(fwdTrajectoryStateOnSurface),
46  theRecHit(aRecHit),
47  theEstimate(aEstimate), theLayer(0) {}
48  TrajectoryMeasurement(TrajectoryStateOnSurface fwdTrajectoryStateOnSurface,
49  ConstRecHitPointer aRecHit, float aEstimate,
50  const DetLayer* layer) :
51  theFwdPredictedState(fwdTrajectoryStateOnSurface),
52  theUpdatedState(fwdTrajectoryStateOnSurface),
53  theRecHit(aRecHit),
54  theEstimate(aEstimate), theLayer(layer) {}
55 
57  TrajectoryMeasurement(TrajectoryStateOnSurface fwdPredTrajectoryStateOnSurface,
58  TrajectoryStateOnSurface uTrajectoryStateOnSurface,
59  ConstRecHitPointer aRecHit) :
60  theFwdPredictedState(fwdPredTrajectoryStateOnSurface),
61  theUpdatedState(uTrajectoryStateOnSurface),
62  theRecHit(aRecHit),
63  theEstimate(0), theLayer(0) {}
64 
66  TrajectoryMeasurement(TrajectoryStateOnSurface fwdPredTrajectoryStateOnSurface,
67  TrajectoryStateOnSurface uTrajectoryStateOnSurface,
68  ConstRecHitPointer aRecHit, float aEstimate) :
69  theFwdPredictedState(fwdPredTrajectoryStateOnSurface),
70  theUpdatedState(uTrajectoryStateOnSurface),
71  theRecHit(aRecHit),
72  theEstimate(aEstimate), theLayer(0) {}
73  TrajectoryMeasurement(TrajectoryStateOnSurface fwdPredTrajectoryStateOnSurface,
74  TrajectoryStateOnSurface uTrajectoryStateOnSurface,
75  ConstRecHitPointer aRecHit, float aEstimate,
76  const DetLayer* layer) :
77  theFwdPredictedState(fwdPredTrajectoryStateOnSurface),
78  theUpdatedState(uTrajectoryStateOnSurface),
79  theRecHit(aRecHit),
80  theEstimate(aEstimate), theLayer(layer) {}
81 
85  TrajectoryMeasurement(TrajectoryStateOnSurface fwdPredTrajectoryStateOnSurface,
86  TrajectoryStateOnSurface bwdPredTrajectoryStateOnSurface,
87  TrajectoryStateOnSurface uTrajectoryStateOnSurface,
88  ConstRecHitPointer aRecHit) :
89  theFwdPredictedState(fwdPredTrajectoryStateOnSurface),
90  theBwdPredictedState(bwdPredTrajectoryStateOnSurface),
91  theUpdatedState(uTrajectoryStateOnSurface),
92  theRecHit(aRecHit),
93  theEstimate(0), theLayer(0) {}
94 
98  TrajectoryMeasurement(TrajectoryStateOnSurface fwdPredTrajectoryStateOnSurface,
99  TrajectoryStateOnSurface bwdPredTrajectoryStateOnSurface,
100  TrajectoryStateOnSurface uTrajectoryStateOnSurface,
101  ConstRecHitPointer aRecHit, float aEstimate) :
102  theFwdPredictedState(fwdPredTrajectoryStateOnSurface),
103  theBwdPredictedState(bwdPredTrajectoryStateOnSurface),
104  theUpdatedState(uTrajectoryStateOnSurface),
105  theRecHit(aRecHit),
106  theEstimate(aEstimate), theLayer(0) {}
107  TrajectoryMeasurement(TrajectoryStateOnSurface fwdPredTrajectoryStateOnSurface,
108  TrajectoryStateOnSurface bwdPredTrajectoryStateOnSurface,
109  TrajectoryStateOnSurface uTrajectoryStateOnSurface,
110  ConstRecHitPointer aRecHit, float aEstimate,
111  const DetLayer* layer) :
112  theFwdPredictedState(fwdPredTrajectoryStateOnSurface),
113  theBwdPredictedState(bwdPredTrajectoryStateOnSurface),
114  theUpdatedState(uTrajectoryStateOnSurface),
115  theRecHit(aRecHit),
116  theEstimate(aEstimate), theLayer(layer) {}
117 
118 
119 #if defined( __GXX_EXPERIMENTAL_CXX0X__)
123  theUpdatedState(std::move(rh.theUpdatedState)),
124  theRecHit(std::move(rh.theRecHit)),
126 
128  using std::swap;
129  swap(theFwdPredictedState,rh.theFwdPredictedState);
130  swap(theBwdPredictedState,rh.theBwdPredictedState);
131  swap(theUpdatedState,rh.theUpdatedState);
132  swap(theRecHit,rh.theRecHit);
133  theEstimate=rh.theEstimate;
134  theLayer=rh.theLayer;
135 
136  return *this;
137 
138  }
139 
140 #endif
141 
142 
147  return theFwdPredictedState;
148  }
149 
152  return theFwdPredictedState;
153  }
156  return theBwdPredictedState;
157  }
158 
163  return theUpdatedState;
164  }
165 
167  return theRecHit;
168  }
169 
170  float estimate() const { return theEstimate;}
171 
172  const DetLayer* layer() const { return theLayer;}
173 
174  void setLayer( const DetLayer* il) { theLayer=il;}
175 
176 private:
181  float theEstimate;
183 };
184 
185 #endif
nocap nocap const skelname & operator=(const skelname &)
void swap(ora::Record &rh, ora::Record &lh)
Definition: Record.h:74
TrajectoryStateOnSurface theUpdatedState
TrajectoryStateOnSurface forwardPredictedState() const
Access to forward predicted state (from fitter or builder)
TrajectoryMeasurement(TrajectoryStateOnSurface fwdPredTrajectoryStateOnSurface, TrajectoryStateOnSurface bwdPredTrajectoryStateOnSurface, TrajectoryStateOnSurface uTrajectoryStateOnSurface, ConstRecHitPointer aRecHit)
ConstRecHitPointer recHit() const
TrajectoryMeasurement(TrajectoryStateOnSurface fwdTrajectoryStateOnSurface, ConstRecHitPointer aRecHit, float aEstimate, const DetLayer *layer)
void setLayer(const DetLayer *il)
TrajectoryMeasurement(TrajectoryStateOnSurface fwdPredTrajectoryStateOnSurface, TrajectoryStateOnSurface bwdPredTrajectoryStateOnSurface, TrajectoryStateOnSurface uTrajectoryStateOnSurface, ConstRecHitPointer aRecHit, float aEstimate, const DetLayer *layer)
TrajectoryMeasurement(TrajectoryStateOnSurface fwdPredTrajectoryStateOnSurface, TrajectoryStateOnSurface bwdPredTrajectoryStateOnSurface, TrajectoryStateOnSurface uTrajectoryStateOnSurface, ConstRecHitPointer aRecHit, float aEstimate)
TrajectoryMeasurement(TrajectoryStateOnSurface fwdTrajectoryStateOnSurface, ConstRecHitPointer aRecHit, float aEstimate)
Constructor with forward predicted state, RecHit, estimate.
TransientTrackingRecHit::ConstRecHitPointer ConstRecHitPointer
void swap(edm::DataFrameContainer &lhs, edm::DataFrameContainer &rhs)
TrajectoryMeasurement(TrajectoryStateOnSurface fwdTrajectoryStateOnSurface, ConstRecHitPointer aRecHit)
Constructor with forward predicted state, const TrackingRecHit*.
const DetLayer * layer() const
TrajectoryMeasurement(TrajectoryStateOnSurface fwdPredTrajectoryStateOnSurface, TrajectoryStateOnSurface uTrajectoryStateOnSurface, ConstRecHitPointer aRecHit)
Constructor with forward predicted &amp; updated state, RecHit.
TrajectoryStateOnSurface updatedState() const
TrajectoryStateOnSurface predictedState() const
TrajectoryMeasurement(TrajectoryStateOnSurface fwdPredTrajectoryStateOnSurface, TrajectoryStateOnSurface uTrajectoryStateOnSurface, ConstRecHitPointer aRecHit, float aEstimate)
Constructor with forward predicted &amp; updated state, RecHit, estimate.
TransientTrackingRecHit::RecHitPointer RecHitPointer
TrajectoryMeasurement(TrajectoryStateOnSurface fwdPredTrajectoryStateOnSurface, TrajectoryStateOnSurface uTrajectoryStateOnSurface, ConstRecHitPointer aRecHit, float aEstimate, const DetLayer *layer)
TrajectoryStateOnSurface theFwdPredictedState
TrajectoryStateOnSurface theBwdPredictedState
ConstRecHitPointer theRecHit
TrajectoryStateOnSurface backwardPredictedState() const
Access to backward predicted state (from smoother)