Back to home page

sPhenix code displayed by LXR

 
 

    


File indexing completed on 2025-08-05 08:18:24

0001 /* Copyright 2008-2010, Technische Universitaet Muenchen,
0002  *   Authors: Christian Hoeppner & Sebastian Neubert & Johannes Rauch
0003  * 
0004  *   This file is part of GENFIT.
0005  * 
0006  *   GENFIT is free software: you can redistribute it and/or modify
0007  *   it under the terms of the GNU Lesser General Public License as published
0008  *   by the Free Software Foundation, either version 3 of the License, or
0009  *   (at your option) any later version.
0010  * 
0011  *   GENFIT is distributed in the hope that it will be useful,
0012  *   but WITHOUT ANY WARRANTY; without even the implied warranty of
0013  *   MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
0014  *   GNU Lesser General Public License for more details.
0015  * 
0016  *   You should have received a copy of the GNU Lesser General Public License
0017  *   along with GENFIT.  If not, see <http://www.gnu.org/licenses/>.
0018  */
0019 /** @addtogroup genfit
0020  * @{
0021  */
0022 
0023 #ifndef genfit_GblFitStatus_h
0024 #define genfit_GblFitStatus_h
0025 
0026 #include "FitStatus.h"
0027 #include "Track.h"
0028 #include "GblFitterInfo.h"
0029 
0030 #include <Math/ProbFunc.h>
0031 #include "GblTrajectory.h"
0032 
0033 
0034 namespace genfit {
0035   
0036   /**
0037    * @brief FitStatus for use with GblFitter
0038    */
0039   class GblFitStatus : public FitStatus {
0040     
0041   public:
0042     
0043     GblFitStatus() :
0044     FitStatus(), numIterations_(0), fittedWithReferenceTrack_(false),
0045     trackLen_(0), curvatureFlag_(true), maxLocalFitParams_(0) {;}
0046     
0047     virtual ~GblFitStatus() {};
0048     
0049     virtual FitStatus* clone() const override {return new GblFitStatus(*this);}
0050     
0051     void setCurvature(bool useCurvature) {curvatureFlag_ = useCurvature;}
0052     bool hasCurvature() { return curvatureFlag_; }
0053     void setMaxLocalFitParams(unsigned maxLocalFitParams) {maxLocalFitParams_ = maxLocalFitParams;}
0054     bool getMaxLocalFitParams() { return maxLocalFitParams_; }
0055     
0056     unsigned int getNumIterations() const {return numIterations_;}
0057     bool isFittedWithReferenceTrack() const {return fittedWithReferenceTrack_;}
0058     double getTrackLen() const {return trackLen_;}
0059     // virtual double getPVal() : not overridden, as it does the right thing.
0060     
0061     void setNumIterations(unsigned int numIterations) {numIterations_ = numIterations;}
0062     void setIsFittedWithReferenceTrack(bool fittedWithReferenceTrack = true) {fittedWithReferenceTrack_ = fittedWithReferenceTrack;}
0063     void setTrackLen(double trackLen) {trackLen_ = trackLen;}
0064     
0065     virtual void Print(const Option_t* = "") const override {;}
0066     
0067   protected:
0068     
0069     unsigned int numIterations_; // number of iterations that have been performed
0070     bool fittedWithReferenceTrack_;
0071     
0072     double trackLen_;
0073     bool curvatureFlag_;
0074     int maxLocalFitParams_;
0075     
0076     
0077   public:
0078     
0079     ClassDefOverride(GblFitStatus, 1)
0080     
0081   };
0082   
0083 } /* End of namespace genfit */
0084 /** @} */
0085 
0086 #endif // genfit_GblFitStatus_h