CMS 3D CMS Logo

 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Macros Pages
MeasurementExtractor.h
Go to the documentation of this file.
1 #ifndef MeasurementExtractor_H
2 #define MeasurementExtractor_H
3 
6 
7 
13  public:
14  // construct
16  theTSoS(aTSoS) {}
17 
18  // access
19 
20  // Following methods can be overloaded against their argument
21  // thus allowing one to have different behaviour for different RecHit types
22 
25 
27  typedef typename AlgebraicROOTObject<D,5>::Matrix Mat;
29  Mat H = asSMatrix<D,5>( hit.projectionMatrix() );
30  return H*par5;
31  }
32 
33  template <unsigned int D> typename AlgebraicROOTObject<D>::SymMatrix measuredError(const TransientTrackingRecHit &hit) {
34  typedef typename AlgebraicROOTObject<D,5>::Matrix Mat;
36  Mat H = asSMatrix<D,5>( hit.projectionMatrix() );
37  return ROOT::Math::Similarity(H,err5);
38  }
39 
40  private:
42 };
43 
44 #endif
45 
46 
AlgebraicSymMatrix measuredError(const TransientTrackingRecHit &)
ROOT::Math::SMatrix< double, D1, D1, ROOT::Math::MatRepSym< double, D1 > > SymMatrix
MeasurementExtractor(const TrajectoryStateOnSurface &aTSoS)
const LocalTrajectoryParameters & localParameters() const
AlgebraicROOTObject< D >::Vector measuredParameters(const TransientTrackingRecHit &hit)
ROOT::Math::SMatrix< double, 5, 5, ROOT::Math::MatRepSym< double, 5 > > AlgebraicSymMatrix55
AlgebraicVector5 vector() const
ROOT::Math::SMatrix< double, D1, D2, ROOT::Math::MatRepStd< double, D1, D2 > > Matrix
const AlgebraicSymMatrix55 & matrix() const
const LocalTrajectoryError & localError() const
CLHEP::HepVector AlgebraicVector
ROOT::Math::SVector< double, D1 > Vector
AlgebraicROOTObject< D >::SymMatrix measuredError(const TransientTrackingRecHit &hit)
ROOT::Math::SVector< double, 5 > AlgebraicVector5
AlgebraicVector measuredParameters(const TransientTrackingRecHit &)
const TrajectoryStateOnSurface & theTSoS
virtual AlgebraicMatrix projectionMatrix() const =0
CLHEP::HepSymMatrix AlgebraicSymMatrix