CMS 3D CMS Logo

 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Macros Groups Pages
TrajectoryMeasurement.h
Go to the documentation of this file.
1 #ifndef _TRACKER_TRAJECTORYMEASUREMENT_H_
2 #define _TRACKER_TRAJECTORYMEASUREMENT_H_
3 
5 
7 #include <algorithm>
8 
9 class DetLayer;
10 
26 public:
29 
31 
34  : theFwdPredictedState(fwdTrajectoryStateOnSurface),
35  theUpdatedState(fwdTrajectoryStateOnSurface),
36  theRecHit(aRecHit),
37  theLayer(nullptr),
38  theEstimate(0) {}
39 
41  TrajectoryMeasurement(TrajectoryStateOnSurface fwdTrajectoryStateOnSurface,
42  ConstRecHitPointer aRecHit,
43  float aEstimate)
44  : theFwdPredictedState(fwdTrajectoryStateOnSurface),
45  theUpdatedState(fwdTrajectoryStateOnSurface),
46  theRecHit(aRecHit),
47  theLayer(nullptr),
48  theEstimate(aEstimate) {}
49 
50  TrajectoryMeasurement(TrajectoryStateOnSurface fwdTrajectoryStateOnSurface,
51  ConstRecHitPointer aRecHit,
52  float aEstimate,
53  const DetLayer* layer)
54  : theFwdPredictedState(std::move(fwdTrajectoryStateOnSurface)),
56  theRecHit(std::move(aRecHit)),
57  theLayer(layer),
58  theEstimate(aEstimate) {}
59 
61  TrajectoryMeasurement(TrajectoryStateOnSurface fwdPredTrajectoryStateOnSurface,
62  TrajectoryStateOnSurface uTrajectoryStateOnSurface,
63  ConstRecHitPointer aRecHit)
64  : theFwdPredictedState(std::move(fwdPredTrajectoryStateOnSurface)),
65  theUpdatedState(std::move(uTrajectoryStateOnSurface)),
66  theRecHit(std::move(aRecHit)),
67  theLayer(nullptr),
68  theEstimate(0) {}
69 
71  TrajectoryMeasurement(TrajectoryStateOnSurface fwdPredTrajectoryStateOnSurface,
72  TrajectoryStateOnSurface uTrajectoryStateOnSurface,
73  ConstRecHitPointer aRecHit,
74  float aEstimate)
75  : theFwdPredictedState(std::move(fwdPredTrajectoryStateOnSurface)),
76  theUpdatedState(std::move(uTrajectoryStateOnSurface)),
77  theRecHit(std::move(aRecHit)),
78  theLayer(nullptr),
79  theEstimate(aEstimate) {}
80  TrajectoryMeasurement(TrajectoryStateOnSurface fwdPredTrajectoryStateOnSurface,
81  TrajectoryStateOnSurface uTrajectoryStateOnSurface,
82  ConstRecHitPointer aRecHit,
83  float aEstimate,
84  const DetLayer* layer)
85  : theFwdPredictedState(std::move(fwdPredTrajectoryStateOnSurface)),
86  theUpdatedState(std::move(uTrajectoryStateOnSurface)),
87  theRecHit(std::move(aRecHit)),
88  theLayer(layer),
89  theEstimate(aEstimate) {}
93  TrajectoryMeasurement(TrajectoryStateOnSurface fwdPredTrajectoryStateOnSurface,
94  TrajectoryStateOnSurface bwdPredTrajectoryStateOnSurface,
95  TrajectoryStateOnSurface uTrajectoryStateOnSurface,
96  ConstRecHitPointer aRecHit)
97  : theFwdPredictedState(fwdPredTrajectoryStateOnSurface),
98  theBwdPredictedState(bwdPredTrajectoryStateOnSurface),
99  theUpdatedState(uTrajectoryStateOnSurface),
100  theRecHit(aRecHit),
101  theLayer(nullptr),
102  theEstimate(0) {}
103 
107  TrajectoryMeasurement(TrajectoryStateOnSurface fwdPredTrajectoryStateOnSurface,
108  TrajectoryStateOnSurface bwdPredTrajectoryStateOnSurface,
109  TrajectoryStateOnSurface uTrajectoryStateOnSurface,
110  ConstRecHitPointer aRecHit,
111  float aEstimate)
112  : theFwdPredictedState(fwdPredTrajectoryStateOnSurface),
113  theBwdPredictedState(bwdPredTrajectoryStateOnSurface),
114  theUpdatedState(uTrajectoryStateOnSurface),
115  theRecHit(aRecHit),
116  theLayer(nullptr),
117  theEstimate(aEstimate) {}
118 
119  TrajectoryMeasurement(TrajectoryStateOnSurface fwdPredTrajectoryStateOnSurface,
120  TrajectoryStateOnSurface bwdPredTrajectoryStateOnSurface,
121  TrajectoryStateOnSurface uTrajectoryStateOnSurface,
122  ConstRecHitPointer aRecHit,
123  float aEstimate,
124  const DetLayer* layer)
125  : theFwdPredictedState(fwdPredTrajectoryStateOnSurface),
126  theBwdPredictedState(bwdPredTrajectoryStateOnSurface),
127  theUpdatedState(uTrajectoryStateOnSurface),
128  theRecHit(aRecHit),
129  theLayer(layer),
130  theEstimate(aEstimate) {}
131 
136  theRecHit(rh.theRecHit),
137  theLayer(rh.theLayer),
138  theEstimate(rh.theEstimate) {}
139 
144  theRecHit = rh.theRecHit;
146  theLayer = rh.theLayer;
147 
148  return *this;
149  }
150 
155  theRecHit(std::move(rh.theRecHit)),
156  theLayer(rh.theLayer),
157  theEstimate(rh.theEstimate) {}
158 
160  using std::swap;
161  swap(theFwdPredictedState, rh.theFwdPredictedState);
162  swap(theBwdPredictedState, rh.theBwdPredictedState);
163  swap(theUpdatedState, rh.theUpdatedState);
164  swap(theRecHit, rh.theRecHit);
165  theEstimate = rh.theEstimate;
166  theLayer = rh.theLayer;
167 
168  return *this;
169  }
170 
175 
180 
185 
186  ConstRecHitPointer::element_type const& recHitR() const { return *theRecHit; }
187 
188  ConstRecHitPointer const& recHitP() const { return theRecHit; }
189 
190  ConstRecHitPointer const& recHit() const { return recHitP(); }
191 
192  float estimate() const { return theEstimate; }
193 
194  const DetLayer* layer() const { return theLayer; }
195 
196  // void setLayer( DetLayer const * il) const { theLayer=il;}
197 
198 private:
204  float theEstimate;
205 };
206 
207 #endif
TrajectoryStateOnSurface const & predictedState() const
ConstRecHitPointer const & recHit() const
TrajectoryStateOnSurface theUpdatedState
TrajectoryMeasurement(TrajectoryStateOnSurface fwdPredTrajectoryStateOnSurface, TrajectoryStateOnSurface bwdPredTrajectoryStateOnSurface, TrajectoryStateOnSurface uTrajectoryStateOnSurface, ConstRecHitPointer aRecHit)
TrajectoryMeasurement(TrajectoryMeasurement const &rh)
TrackingRecHit::RecHitPointer RecHitPointer
TrajectoryMeasurement(TrajectoryStateOnSurface fwdTrajectoryStateOnSurface, ConstRecHitPointer aRecHit, float aEstimate, const DetLayer *layer)
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)
void swap(Association< C > &lhs, Association< C > &rhs)
Definition: Association.h:117
TrajectoryMeasurement(TrajectoryStateOnSurface fwdTrajectoryStateOnSurface, ConstRecHitPointer aRecHit, float aEstimate)
Constructor with forward predicted state, RecHit, estimate.
TrajectoryMeasurement & operator=(TrajectoryMeasurement &&rh) noexcept
TrajectoryMeasurement & operator=(TrajectoryMeasurement const &rh)
TrajectoryMeasurement(TrajectoryMeasurement &&rh) noexcept
std::shared_ptr< TrackingRecHit const > ConstRecHitPointer
void swap(edm::DataFrameContainer &lhs, edm::DataFrameContainer &rhs)
TrajectoryMeasurement(TrajectoryStateOnSurface fwdTrajectoryStateOnSurface, ConstRecHitPointer aRecHit)
Constructor with forward predicted state, const TrackingRecHit*.
def move
Definition: eostools.py:511
const DetLayer * layer() const
TrajectoryMeasurement(TrajectoryStateOnSurface fwdPredTrajectoryStateOnSurface, TrajectoryStateOnSurface uTrajectoryStateOnSurface, ConstRecHitPointer aRecHit)
Constructor with forward predicted &amp; updated state, RecHit.
ConstRecHitPointer const & recHitP() const
std::shared_ptr< TrackingRecHit const > RecHitPointer
TrajectoryStateOnSurface const & forwardPredictedState() const
Access to forward predicted state (from fitter or builder)
TrajectoryMeasurement(TrajectoryStateOnSurface fwdPredTrajectoryStateOnSurface, TrajectoryStateOnSurface uTrajectoryStateOnSurface, ConstRecHitPointer aRecHit, float aEstimate)
Constructor with forward predicted &amp; updated state, RecHit, estimate.
TrackingRecHit::ConstRecHitPointer ConstRecHitPointer
ConstRecHitPointer::element_type const & recHitR() const
TrajectoryMeasurement(TrajectoryStateOnSurface fwdPredTrajectoryStateOnSurface, TrajectoryStateOnSurface uTrajectoryStateOnSurface, ConstRecHitPointer aRecHit, float aEstimate, const DetLayer *layer)
TrajectoryStateOnSurface const & updatedState() const
TrajectoryStateOnSurface theFwdPredictedState
TrajectoryStateOnSurface theBwdPredictedState
ConstRecHitPointer theRecHit
TrajectoryStateOnSurface const & backwardPredictedState() const
Access to backward predicted state (from smoother)