GENFIT Rev: NoNumberAvailable
Loading...
Searching...
No Matches
KalmanFittedStateOnPlane.h
Go to the documentation of this file.
1/* Copyright 2008-2010, Technische Universitaet Muenchen,
2 Authors: Christian Hoeppner & Sebastian Neubert & Johannes Rauch
3
4 This file is part of GENFIT.
5
6 GENFIT is free software: you can redistribute it and/or modify
7 it under the terms of the GNU Lesser General Public License as published
8 by the Free Software Foundation, either version 3 of the License, or
9 (at your option) any later version.
10
11 GENFIT is distributed in the hope that it will be useful,
12 but WITHOUT ANY WARRANTY; without even the implied warranty of
13 MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
14 GNU Lesser General Public License for more details.
15
16 You should have received a copy of the GNU Lesser General Public License
17 along with GENFIT. If not, see <http://www.gnu.org/licenses/>.
18*/
22
23#ifndef genfit_KalmanFittedStateOnPlane_h
24#define genfit_KalmanFittedStateOnPlane_h
25
27
28
29namespace genfit {
30
31
36
37 public:
38
41 KalmanFittedStateOnPlane(const TVectorD& state, const TMatrixDSym& cov, const SharedPlanePtr& plane, const AbsTrackRep* rep, double chiSquareIncrement, double ndf);
42 KalmanFittedStateOnPlane(const TVectorD& state, const TMatrixDSym& cov, const SharedPlanePtr& plane, const AbsTrackRep* rep, const TVectorD& auxInfo, double chiSquareIncrement, double ndf);
43 KalmanFittedStateOnPlane(const MeasuredStateOnPlane& state, double chiSquareIncrement, double ndf);
44
46 void swap(KalmanFittedStateOnPlane& other); // nothrow
47
49
51 double getNdf() const {return ndf_;}
52
53 void setChiSquareIncrement(double chiSquareIncrement) {chiSquareIncrement_ = chiSquareIncrement;}
54 void setNdf(double ndf) {ndf_ = ndf;}
55
56
57 protected:
58
60
62 double ndf_;
63
64
65 public:
66
67 ClassDef(KalmanFittedStateOnPlane,1)
68
69};
70
71
77
78inline KalmanFittedStateOnPlane::KalmanFittedStateOnPlane(const TVectorD& state, const TMatrixDSym& cov, const SharedPlanePtr& plane, const AbsTrackRep* rep, double chiSquareIncrement, double ndf) :
79 MeasuredStateOnPlane(state, cov, plane, rep), chiSquareIncrement_(chiSquareIncrement), ndf_(ndf)
80{
81 ;
82}
83
84inline KalmanFittedStateOnPlane::KalmanFittedStateOnPlane(const TVectorD& state, const TMatrixDSym& cov, const SharedPlanePtr& plane, const AbsTrackRep* rep, const TVectorD& auxInfo, double chiSquareIncrement, double ndf) :
85 MeasuredStateOnPlane(state, cov, plane, rep, auxInfo), chiSquareIncrement_(chiSquareIncrement), ndf_(ndf)
86{
87 ;
88}
89
90inline KalmanFittedStateOnPlane::KalmanFittedStateOnPlane(const MeasuredStateOnPlane& state, double chiSquareIncrement, double ndf) :
91 MeasuredStateOnPlane(state), chiSquareIncrement_(chiSquareIncrement), ndf_(ndf)
92{
93 ;
94}
95
100
103 std::swap(this->chiSquareIncrement_, other.chiSquareIncrement_);
104 std::swap(this->ndf_, other.ndf_);
105}
106
107} /* End of namespace genfit */
109
110#endif // genfit_KalmanFittedStateOnPlane_h
Abstract base class for a track representation.
Definition AbsTrackRep.h:66
KalmanFittedStateOnPlane(const KalmanFittedStateOnPlane &)=default
double ndf_
Degrees of freedom. Needs to be a double because of DAF.
void swap(KalmanFittedStateOnPlane &other)
KalmanFittedStateOnPlane & operator=(KalmanFittedStateOnPlane other)
void setChiSquareIncrement(double chiSquareIncrement)
MeasuredStateOnPlane(const AbsTrackRep *rep=nullptr)
void swap(MeasuredStateOnPlane &other)
Defines for I/O streams used for error and debug printing.
std::shared_ptr< genfit::DetPlane > SharedPlanePtr
Shared Pointer to a DetPlane.