File indexing completed on 2025-08-05 08:18:26
0001
0002
0003
0004
0005
0006
0007
0008
0009
0010
0011
0012
0013
0014
0015
0016
0017
0018
0019
0020
0021
0022
0023
0024
0025
0026
0027
0028
0029 #ifndef GFRAVETRACKPARAMETERS_H
0030 #define GFRAVETRACKPARAMETERS_H
0031
0032 #include "Track.h"
0033 #include "AbsTrackRep.h"
0034
0035 #include <TObject.h>
0036 #include <TVector3.h>
0037 #include <TVectorD.h>
0038 #include <TMatrixDSym.h>
0039 #include <TRef.h>
0040
0041 #include <iostream>
0042
0043
0044 namespace genfit {
0045
0046
0047
0048
0049
0050
0051 class GFRaveTrackParameters : public TObject
0052 {
0053 public:
0054
0055 GFRaveTrackParameters();
0056 GFRaveTrackParameters(const Track* track, MeasuredStateOnPlane* originalState, double weight, const TVectorD & state6, const TMatrixDSym & cov6x6, bool isSmoothed);
0057 GFRaveTrackParameters(const Track* track, MeasuredStateOnPlane* originalState, double weight);
0058
0059
0060 double getWeight() const {return weight_;}
0061
0062 bool hasTrack() const {return originalTrack_.GetObject() != nullptr;}
0063 const Track* getTrack() const {return static_cast<Track*>(originalTrack_.GetObject());}
0064
0065 UInt_t GetUniqueID() const {return originalTrack_.GetUniqueID();}
0066
0067 bool hasSmoothedData() const {return hasSmoothedData_;}
0068 TVectorD getState() const {return state_;}
0069 TVector3 getPos() const;
0070 TVector3 getMom() const;
0071 const TMatrixDSym & getCov() const {return cov_;}
0072
0073 double getCharge() const;
0074 double getPdg() const;
0075
0076 void Print(const Option_t* = "") const;
0077
0078 private:
0079
0080 const TRef originalTrack_;
0081
0082 double weight_;
0083 TVectorD state_;
0084 TMatrixDSym cov_;
0085 bool hasSmoothedData_;
0086
0087 private:
0088 ClassDef(GFRaveTrackParameters, 1)
0089 };
0090
0091 }
0092
0093
0094 #endif