CMS 3D CMS Logo

MultiRefittedTS.h
Go to the documentation of this file.
1 #ifndef MultiRefittedTS_H
2 #define MultiRefittedTS_H
3 
8 
15 class Surface;
16 
18 
19 public:
20 
23 
28  MultiRefittedTS(const std::vector<RefCountedRefittedTrackState> & prtsComp,
29  const Surface & referenceSurface);
30 
36  MultiRefittedTS(const std::vector<RefCountedRefittedTrackState> & prtsComp,
37  const GlobalPoint & referencePosition);
38 
39  ~MultiRefittedTS() override{}
40 
47 
52  const Surface & surface) const override;
53 
59  const Surface & surface, const Propagator & propagator) const override;
60 
66  reco::TransientTrack transientTrack() const override;
67 
73  AlgebraicVectorN parameters() const override;
74 
80  AlgebraicSymMatrixNN covariance() const override;
81 
87  GlobalPoint position() const override;
88 
95  AlgebraicVectorM momentumVector() const override;
96 
97  double weight() const override;
98 
99  std::vector<ReferenceCountingPointer<RefittedTrackState<5> > > components() const override
100  {
101  return theComponents;
102  }
103 
113  (const double newWeight) const override;
114 
115 
116 private:
117 
118  void computeFreeTrajectoryState() const;
119 
120 
121  typedef std::vector<RefCountedRefittedTrackState > RTSvector;
122 
123  mutable RTSvector theComponents;
125  mutable double totalWeight;
129  const bool surf;
130 
131 };
132 #endif
ReferenceCountingPointer< LinearizedTrackState< 5 > > RefCountedLinearizedTrackState
MultiRefittedTS(const std::vector< RefCountedRefittedTrackState > &prtsComp, const Surface &referenceSurface)
double weight() const override
void computeFreeTrajectoryState() const
FreeTrajectoryState fts
ReferenceCountingPointer< RefittedTrackState< 5 > > RefCountedRefittedTrackState
AlgebraicVectorN parameters() const override
ROOT::Math::SVector< double, N-2 > AlgebraicVectorM
FreeTrajectoryState freeTrajectoryState() const override
TrajectoryStateOnSurface trajectoryStateOnSurface(const Surface &surface) const override
const GlobalPoint refPosition
ROOT::Math::SVector< double, N > AlgebraicVectorN
reco::TransientTrack transientTrack() const override
ReferenceCountingPointer< RefittedTrackState< 5 > > stateWithNewWeight(const double newWeight) const override
ROOT::Math::SMatrix< double, N, N, ROOT::Math::MatRepSym< double, N > > AlgebraicSymMatrixNN
std::vector< RefCountedRefittedTrackState > RTSvector
std::vector< ReferenceCountingPointer< RefittedTrackState< 5 > > > components() const override
AlgebraicVectorM momentumVector() const override
GlobalPoint position() const override
~MultiRefittedTS() override
AlgebraicSymMatrixNN covariance() const override
RTSvector theComponents
ConstReferenceCountingPointer< Surface > refSurface