CMS 3D CMS Logo

RefittedTrackState.h
Go to the documentation of this file.
1 #ifndef RefittedTrackState_H
2 #define RefittedTrackState_H
3 
8 #include <vector>
9 
17 class Surface;
18 class Propagator;
19 
20 template <unsigned int N>
22 public:
23  // typedef ROOT::Math::SMatrix<double,N,N,ROOT::Math::MatRepSym<double,N> > AlgebraicMatrixN3;
24  typedef ROOT::Math::SVector<double, N> AlgebraicVectorN;
25  typedef ROOT::Math::SVector<double, N - 2> AlgebraicVectorM;
26  // typedef ROOT::Math::SMatrix<double,N,3,ROOT::Math::MatRepStd<double,N,3> > AlgebraicMatrixN3;
27  // typedef ROOT::Math::SMatrix<double,N-2,3,ROOT::Math::MatRepStd<double,N-2,3> > AlgebraicMatrixM3;
28  typedef ROOT::Math::SMatrix<double, N, N, ROOT::Math::MatRepSym<double, N> > AlgebraicSymMatrixNN;
29 
30  ~RefittedTrackState() override {}
31 
35  virtual FreeTrajectoryState freeTrajectoryState() const = 0;
36 
40  virtual TrajectoryStateOnSurface trajectoryStateOnSurface(const Surface& surface) const = 0;
41 
47  const Propagator& propagator) const = 0;
48 
52  virtual AlgebraicVectorN parameters() const = 0;
53 
57  virtual AlgebraicSymMatrixNN covariance() const = 0;
58 
62  virtual GlobalPoint position() const = 0;
63 
68  virtual AlgebraicVectorM momentumVector() const = 0;
69 
74  virtual double weight() const = 0;
75 
81  virtual ReferenceCountingPointer<RefittedTrackState> stateWithNewWeight(const double newWeight) const = 0;
82 
83  virtual std::vector<ReferenceCountingPointer<RefittedTrackState> > components() const = 0;
84 
85  virtual reco::TransientTrack transientTrack() const = 0;
86 };
87 #endif
RefittedTrackState::AlgebraicVectorM
ROOT::Math::SVector< double, N - 2 > AlgebraicVectorM
Definition: RefittedTrackState.h:25
RefittedTrackState::AlgebraicSymMatrixNN
ROOT::Math::SMatrix< double, N, N, ROOT::Math::MatRepSym< double, N > > AlgebraicSymMatrixNN
Definition: RefittedTrackState.h:28
RefittedTrackState::~RefittedTrackState
~RefittedTrackState() override
Definition: RefittedTrackState.h:30
RefittedTrackState::components
virtual std::vector< ReferenceCountingPointer< RefittedTrackState > > components() const =0
Surface
Definition: Surface.h:36
ReferenceCountingPointer
Definition: ReferenceCounted.h:60
TransientTrack.h
RefittedTrackState::stateWithNewWeight
virtual ReferenceCountingPointer< RefittedTrackState > stateWithNewWeight(const double newWeight) const =0
Propagator
Definition: Propagator.h:44
TrajectoryStateOnSurface
Definition: TrajectoryStateOnSurface.h:16
RefittedTrackState::momentumVector
virtual AlgebraicVectorM momentumVector() const =0
TrackCandidateProducer_cfi.propagator
propagator
Definition: TrackCandidateProducer_cfi.py:17
RefittedTrackState::trajectoryStateOnSurface
virtual TrajectoryStateOnSurface trajectoryStateOnSurface(const Surface &surface) const =0
N
#define N
Definition: blowfish.cc:9
Point3DBase< float, GlobalTag >
RefittedTrackState::freeTrajectoryState
virtual FreeTrajectoryState freeTrajectoryState() const =0
RefittedTrackState
Definition: RefittedTrackState.h:21
RefittedTrackState::transientTrack
virtual reco::TransientTrack transientTrack() const =0
RefittedTrackState::AlgebraicVectorN
ROOT::Math::SVector< double, N > AlgebraicVectorN
Definition: RefittedTrackState.h:24
ReferenceCounted.h
reco::TransientTrack
Definition: TransientTrack.h:19
FreeTrajectoryState
Definition: FreeTrajectoryState.h:27
RefittedTrackState::weight
virtual double weight() const =0
RefittedTrackState::covariance
virtual AlgebraicSymMatrixNN covariance() const =0
ReferenceCounted
GlobalPoint.h
AlgebraicROOTObjects.h
RefittedTrackState::position
virtual GlobalPoint position() const =0
RefittedTrackState::parameters
virtual AlgebraicVectorN parameters() const =0