LArSoft  v09_90_00
Liquid Argon Software toolkit - https://larsoft.org/
KFitTrack.h
Go to the documentation of this file.
1 
29 #ifndef KFITTRACK_H
30 #define KFITTRACK_H
31 
33 
34 namespace trkf {
35 
36  class KFitTrack : public KETrack {
37  public:
39  enum FitStatus {
40  INVALID, // No valid fit information.
41  UNKNOWN, // Unknown.
42  FORWARD, // Fit based on past measurements, including current surface.
43  FORWARD_PREDICTED, // Fit based on past measurements, not including current surface.
44  BACKWARD, // Fit based on future measurements, including current surface.
45  BACKWARD_PREDICTED, // Fit based on future measurements, not including current surface.
46  OPTIMAL, // Fit based on all measurements, including current surface.
47  OPTIMAL_PREDICTED // Fit based on all measurements, except current surface.
48  };
49 
51  KFitTrack();
52 
54  KFitTrack(const KETrack& tre, double s = 0., double chisq = 0., FitStatus stat = INVALID);
55 
57  virtual ~KFitTrack();
58 
59  // Accessors.
60 
61  double getPath() const { return fPath; }
62  double getChisq() const { return fChisq; }
63  FitStatus getStat() const { return fStat; }
64 
65  // Modifiers.
66 
67  void setPath(double path) { fPath = path; }
68  void setChisq(double chisq) { fChisq = chisq; }
69  void setStat(FitStatus stat) { fStat = stat; }
70 
72  bool combineFit(const KFitTrack& trf);
73 
75  virtual std::ostream& Print(std::ostream& out, bool doTitle = true) const;
76 
77  private:
78  // Attributes.
79 
80  double fPath;
81  double fChisq;
83  };
84 }
85 
86 #endif
FitStatus
Fit status enum.
Definition: KFitTrack.h:39
void setChisq(double chisq)
Set chisquare.
Definition: KFitTrack.h:68
FitStatus fStat
Fit status.
Definition: KFitTrack.h:82
double getPath() const
Propagation distance.
Definition: KFitTrack.h:61
virtual std::ostream & Print(std::ostream &out, bool doTitle=true) const
Printout.
Definition: KFitTrack.cxx:113
void setStat(FitStatus stat)
Set fit status.
Definition: KFitTrack.h:69
double fChisq
Fit chisquare.
Definition: KFitTrack.h:81
KFitTrack()
Default constructor.
Definition: KFitTrack.cxx:17
virtual ~KFitTrack()
Destructor.
Definition: KFitTrack.cxx:33
bool combineFit(const KFitTrack &trf)
Combine two tracks.
Definition: KFitTrack.cxx:65
double fPath
Propagation distance.
Definition: KFitTrack.h:80
void setPath(double path)
Set propagation distance.
Definition: KFitTrack.h:67
Basic Kalman filter track class, with error.
double getChisq() const
Fit chisquare.
Definition: KFitTrack.h:62
FitStatus getStat() const
Fit status.
Definition: KFitTrack.h:63