CMS 3D CMS Logo

TwoBodyDecayEstimator.h
Go to the documentation of this file.
1 #ifndef Alignment_TwoBodyDecay_TwoBodyDecayEstimator_h
2 #define Alignment_TwoBodyDecay_TwoBodyDecayEstimator_h
3 
6 
9 
11 
21 public:
23 
25  virtual ~TwoBodyDecayEstimator(void) {}
26 
27  virtual TwoBodyDecay estimate(const std::vector<RefCountedLinearizedTrackState> &linTracks,
28  const TwoBodyDecayParameters &linearizationPoint,
29  const TwoBodyDecayVirtualMeasurement &vm) const;
30 
31  inline int ndf(void) const { return theNdf; }
32  inline const AlgebraicVector &pulls(void) const { return thePulls; }
33 
34  virtual TwoBodyDecayEstimator *clone(void) const { return new TwoBodyDecayEstimator(*this); }
35 
36 protected:
37  virtual bool constructMatrices(const std::vector<RefCountedLinearizedTrackState> &linTracks,
38  const TwoBodyDecayParameters &linearizationPoint,
40  AlgebraicVector &vecM,
41  AlgebraicSymMatrix &matG,
42  AlgebraicMatrix &matA) const;
43 
44 private:
45  bool checkValues(const AlgebraicVector &vec) const;
46 
51 
52  mutable int theNdf;
54 };
55 
56 #endif
bool checkValues(const AlgebraicVector &vec) const
PerigeeLinearizedTrackState::RefCountedLinearizedTrackState RefCountedLinearizedTrackState
virtual TwoBodyDecay estimate(const std::vector< RefCountedLinearizedTrackState > &linTracks, const TwoBodyDecayParameters &linearizationPoint, const TwoBodyDecayVirtualMeasurement &vm) const
Definition: config.py:1
const AlgebraicVector & pulls(void) const
TwoBodyDecayEstimator(const edm::ParameterSet &config)
CLHEP::HepMatrix AlgebraicMatrix
CLHEP::HepVector AlgebraicVector
virtual bool constructMatrices(const std::vector< RefCountedLinearizedTrackState > &linTracks, const TwoBodyDecayParameters &linearizationPoint, const TwoBodyDecayVirtualMeasurement &vm, AlgebraicVector &vecM, AlgebraicSymMatrix &matG, AlgebraicMatrix &matA) const
virtual ~TwoBodyDecayEstimator(void)
CLHEP::HepSymMatrix AlgebraicSymMatrix
virtual TwoBodyDecayEstimator * clone(void) const