File indexing completed on 2025-08-05 08:18:23
0001
0002
0003
0004
0005
0006
0007
0008
0009
0010
0011
0012
0013
0014
0015
0016
0017
0018
0019
0020
0021
0022
0023 #ifndef genfit_KalmanFittedStateOnPlane_h
0024 #define genfit_KalmanFittedStateOnPlane_h
0025
0026 #include "MeasuredStateOnPlane.h"
0027
0028
0029 namespace genfit {
0030
0031
0032
0033
0034
0035 class KalmanFittedStateOnPlane : public MeasuredStateOnPlane {
0036
0037 public:
0038
0039 KalmanFittedStateOnPlane();
0040 KalmanFittedStateOnPlane(const KalmanFittedStateOnPlane&) = default;
0041 KalmanFittedStateOnPlane(const TVectorD& state, const TMatrixDSym& cov, const SharedPlanePtr& plane, const AbsTrackRep* rep, double chiSquareIncrement, double ndf);
0042 KalmanFittedStateOnPlane(const TVectorD& state, const TMatrixDSym& cov, const SharedPlanePtr& plane, const AbsTrackRep* rep, const TVectorD& auxInfo, double chiSquareIncrement, double ndf);
0043 KalmanFittedStateOnPlane(const MeasuredStateOnPlane& state, double chiSquareIncrement, double ndf);
0044
0045 KalmanFittedStateOnPlane& operator=(KalmanFittedStateOnPlane other);
0046 void swap(KalmanFittedStateOnPlane& other);
0047
0048 virtual ~KalmanFittedStateOnPlane() {}
0049
0050 double getChiSquareIncrement() const {return chiSquareIncrement_;}
0051 double getNdf() const {return ndf_;}
0052
0053 void setChiSquareIncrement(double chiSquareIncrement) {chiSquareIncrement_ = chiSquareIncrement;}
0054 void setNdf(double ndf) {ndf_ = ndf;}
0055
0056
0057 protected:
0058
0059 double chiSquareIncrement_;
0060
0061
0062 double ndf_;
0063
0064
0065 public:
0066
0067 ClassDef(KalmanFittedStateOnPlane,1)
0068
0069 };
0070
0071
0072 inline KalmanFittedStateOnPlane::KalmanFittedStateOnPlane() :
0073 MeasuredStateOnPlane(), chiSquareIncrement_(0), ndf_(0)
0074 {
0075 ;
0076 }
0077
0078 inline KalmanFittedStateOnPlane::KalmanFittedStateOnPlane(const TVectorD& state, const TMatrixDSym& cov, const SharedPlanePtr& plane, const AbsTrackRep* rep, double chiSquareIncrement, double ndf) :
0079 MeasuredStateOnPlane(state, cov, plane, rep), chiSquareIncrement_(chiSquareIncrement), ndf_(ndf)
0080 {
0081 ;
0082 }
0083
0084 inline KalmanFittedStateOnPlane::KalmanFittedStateOnPlane(const TVectorD& state, const TMatrixDSym& cov, const SharedPlanePtr& plane, const AbsTrackRep* rep, const TVectorD& auxInfo, double chiSquareIncrement, double ndf) :
0085 MeasuredStateOnPlane(state, cov, plane, rep, auxInfo), chiSquareIncrement_(chiSquareIncrement), ndf_(ndf)
0086 {
0087 ;
0088 }
0089
0090 inline KalmanFittedStateOnPlane::KalmanFittedStateOnPlane(const MeasuredStateOnPlane& state, double chiSquareIncrement, double ndf) :
0091 MeasuredStateOnPlane(state), chiSquareIncrement_(chiSquareIncrement), ndf_(ndf)
0092 {
0093 ;
0094 }
0095
0096 inline KalmanFittedStateOnPlane& KalmanFittedStateOnPlane::operator=(KalmanFittedStateOnPlane other) {
0097 swap(other);
0098 return *this;
0099 }
0100
0101 inline void KalmanFittedStateOnPlane::swap(KalmanFittedStateOnPlane& other) {
0102 MeasuredStateOnPlane::swap(other);
0103 std::swap(this->chiSquareIncrement_, other.chiSquareIncrement_);
0104 std::swap(this->ndf_, other.ndf_);
0105 }
0106
0107 }
0108
0109
0110 #endif