File indexing completed on 2025-08-05 08:18:25
0001
0002
0003
0004
0005
0006
0007
0008
0009
0010
0011
0012
0013
0014
0015
0016
0017
0018
0019
0020
0021
0022
0023 #ifndef GFGBL_H
0024 #define GFGBL_H
0025
0026 #include "GblTrajectory.h"
0027 #include "AbsFitter.h"
0028
0029 #include <map>
0030 #include <iostream>
0031
0032 #include <TMatrixD.h>
0033 #include <assert.h>
0034 #include <sstream>
0035
0036 #include <TMath.h>
0037 #include <TVector3.h>
0038
0039
0040 namespace genfit {
0041
0042
0043
0044
0045
0046
0047
0048 class GFGbl : public AbsFitter {
0049
0050 private:
0051 GFGbl(const GFGbl&);
0052 GFGbl& operator=(GFGbl const&);
0053
0054 std::string m_milleFileName;
0055 std::string m_gblInternalIterations;
0056 double m_pValueCut;
0057 int m_minNdf;
0058 double m_chi2Cut;
0059 bool m_enableScatterers;
0060 bool m_enableIntermediateScatterer;
0061
0062
0063 public:
0064
0065
0066
0067
0068 GFGbl();
0069
0070
0071
0072
0073 virtual ~GFGbl() {;}
0074
0075
0076
0077
0078
0079 void beginRun();
0080
0081
0082
0083
0084
0085
0086 void endRun();
0087
0088
0089
0090
0091
0092
0093
0094 void setGBLOptions(std::string internalIterations = "THC", bool enableScatterers = true, bool enableIntermediateScatterer = true) {
0095 m_gblInternalIterations = internalIterations;
0096 if (!enableScatterers)
0097 enableIntermediateScatterer = false;
0098 m_enableScatterers = enableScatterers;
0099 m_enableIntermediateScatterer = enableIntermediateScatterer;
0100 }
0101
0102
0103
0104
0105
0106
0107
0108
0109 void setMP2Options(double pValueCut = 0., unsigned int minNdf = 1, std::string mille_file_name = "millefile.dat", double chi2Cut = 0.) {
0110 m_pValueCut = pValueCut;
0111 m_minNdf = minNdf;
0112 m_milleFileName = mille_file_name;
0113 m_chi2Cut = chi2Cut;
0114 }
0115
0116
0117
0118
0119
0120 void processTrackWithRep(Track* trk, const AbsTrackRep* rep, bool resortHits = false) override;
0121
0122
0123 public:
0124
0125 ClassDef(GFGbl, 1)
0126
0127 };
0128
0129 }
0130
0131
0132 #endif
0133