]> git.uio.no Git - u/mrichter/AliRoot.git/blobdiff - MUON/AliMUONTrackK.h
Updates (N. Bastid)
[u/mrichter/AliRoot.git] / MUON / AliMUONTrackK.h
index 7c79a3d1323eafc09e3847acb9dfcddbbc5990c9..faf296a894d120b6d65994a3745d86c5afeb5cd1 100644 (file)
@@ -7,20 +7,22 @@
 // Revision of includes 07/05/2004
 
 /// \ingroup rec
-/// \class AliMUONTrack
+/// \class AliMUONTrackK
 /// \brief Kalman track in MUON arm of ALICE
-
-#include <TObject.h>
-#include "AliMUONTrack.h" 
+///
+/// \author: Alexander Zinchenko, JINR Dubna
 
 class TArrayD;
-class TMatrixD;
-class AliMUONTrackReconstructor;
 class TClonesArray;
 class TObjArray;
-class AliMUONSegment;
-class AliMUONHitForRec;
+#include <TMatrixDfwd.h>
+#include <TObject.h>
+
 class AliMUONEventRecoCombi;
+class AliMUONHitForRec;
+class AliMUONSegment;
+class AliMUONTrackReconstructor;
+#include "AliMUONTrack.h" 
 
 class AliMUONTrackK : public AliMUONTrack {
 
@@ -33,8 +35,8 @@ class AliMUONTrackK : public AliMUONTrack {
   AliMUONTrackK(AliMUONSegment *segment); // Constructor from a segment
 
   // Pointer to hits on track
-  TObjArray* GetHitOnTrack(void) const {return fTrackHitsPtr;} // ptr. to hits on track
-  Int_t GetNTrackHits(void) const {return fNTrackHits;} // hits on track
+  TObjArray* GetTrackHits(void) const {return fTrackHits;} // ptr. to hits on track
+  Int_t GetNTrackHits(void) const {return fNmbTrackHits;} // hits on track
   Double_t GetTrackQuality(void) const {return fChi2;} // track quality
   TMatrixD* GetTrackParameters(void) const {return fTrackPar;} // track parameters
   Double_t GetZ(void) const {return fPosition;} // Z-coordinate of track 
@@ -78,42 +80,42 @@ class AliMUONTrackK : public AliMUONTrack {
 
  private:
  
-  static Int_t fgDebug; // debug level
-  static Int_t fgNOfPoints; // number of points in event
-  //static AliMUON *fgMUON; // pointer to MUON module  
-  static AliMUONTrackReconstructor *fgTrackReconstructor; // pointer to event reconstructor
-  static TClonesArray *fgHitForRec; // pointer to hits
-  static AliMUONEventRecoCombi *fgCombi; // pointer to combined cluster/track finder
-
-  AliMUONSegment *fStartSegment; // seed segment  
-  Double_t fPosition; // Z-coordinate of track
-  Double_t fPositionNew; //! Z-coordinate of track
-  Double_t fChi2; // Chi2 of track
-  TObjArray *fTrackHitsPtr; // pointer to hits on track
-  Int_t fNTrackHits; // number of points on track
-  Int_t fTrackDir; // track direction (+(-) towards high (low) z)
-  Bool_t fBPFlag; // backpropagation flag (TRUE if backpropagation)
-  Int_t fRecover; // recover flag (!=0 if recovery procedure was applied)
-  AliMUONHitForRec *fSkipHit; // hit to skip during recovery procedure
-
-  TMatrixD *fTrackPar; // track parameters
-  TMatrixD *fTrackParNew; //! track parameters
-  TMatrixD *fCovariance; // covariance matrix
-  TMatrixD *fWeight; //! weight matrix (inverse of covariance)
+  static Int_t fgDebug; ///< debug level
+  static Int_t fgNOfPoints; ///< number of points in event
+  //static AliMUON *fgMUON; ///< pointer to MUON module  
+  static AliMUONTrackReconstructor *fgTrackReconstructor; ///< pointer to event reconstructor
+  static TClonesArray *fgHitForRec; ///< pointer to hits
+  static AliMUONEventRecoCombi *fgCombi; ///< pointer to combined cluster/track finder
+
+  AliMUONSegment *fStartSegment; ///< seed segment  
+  Double_t fPosition; ///< Z-coordinate of track
+  Double_t fPositionNew; //!< Z-coordinate of track
+  Double_t fChi2; ///< Chi2 of track
+  TObjArray *fTrackHits; ///< pointer to hits on track
+  Int_t fNmbTrackHits; ///< number of points on track
+  Int_t fTrackDir; ///< track direction (+(-) towards high (low) z)
+  Bool_t fBPFlag; ///< backpropagation flag (TRUE if backpropagation)
+  Int_t fRecover; ///< recover flag (!=0 if recovery procedure was applied)
+  AliMUONHitForRec *fSkipHit; ///< hit to skip during recovery procedure
+
+  TMatrixD *fTrackPar; ///< track parameters
+  TMatrixD *fTrackParNew; //!< track parameters
+  TMatrixD *fCovariance; ///< covariance matrix
+  TMatrixD *fWeight; //!< weight matrix (inverse of covariance)
 
   // For smoother
-  TObjArray *fParExtrap; //! extrapolated track parameters
-  TObjArray *fParFilter; //! filtered track parameters
-  TObjArray *fParSmooth; //! smoothed track parameters
+  TObjArray *fParExtrap; //!< extrapolated track parameters
+  TObjArray *fParFilter; //!< filtered track parameters
+  TObjArray *fParSmooth; //!< smoothed track parameters
 
-  TObjArray *fCovExtrap; //! extrapolated covariance matrices
-  TObjArray *fCovFilter; //! filtered covariance matrices
+  TObjArray *fCovExtrap; //!< extrapolated covariance matrices
+  TObjArray *fCovFilter; //!< filtered covariance matrices
 
-  TObjArray *fJacob; //! Jacobian matrices
-  Int_t fNSteps; //!
-  TArrayD *fSteps; //!
-  TArrayD *fChi2Array; //!
-  TArrayD *fChi2Smooth; //!
+  TObjArray *fJacob; //!< Jacobian matrices
+  Int_t fNSteps;     //!< number of the track propagation points
+  TArrayD *fSteps;   //!< Z-coordinates of the track propagation points
+  TArrayD *fChi2Array; //!< measurements' contributions to the track Chi2
+  TArrayD *fChi2Smooth;//!< measurements' contributions to the smoothed track Chi2
 
   // Functions
 
@@ -128,7 +130,7 @@ class AliMUONTrackK : public AliMUONTrack {
   void GetFromGeantParam(Double_t *VGeant3, Int_t iFB);
   Bool_t Recover(void);
   void AddMatrices(AliMUONTrackK *trackK, Double_t dChi2, AliMUONHitForRec *hitAdd);
-  void CreateMatrix(TObjArray *objArray);
+  void CreateMatrix(TObjArray *objArray) const;
   void RemoveMatrices(Double_t zEnd);
   void RemoveMatrices(AliMUONTrackK* trackK);
   void Outlier();
@@ -140,11 +142,11 @@ class AliMUONTrackK : public AliMUONTrack {
 
   private:
    // Some constants
-   static const Int_t fgkSize; // number of track parameters
-   static const Int_t fgkNSigma; //4; // acceptance window width in sigmas
-   static const Double_t fgkChi2max; //25; // chi2 cut in smoother for outlier detection
-   static const Int_t fgkTriesMax; // max number of attempts to find exact position during tracking
-   static const Double_t fgkEpsilon; // tracking precision (cm)
+   static const Int_t fgkSize; ///< number of track parameters
+   static const Int_t fgkNSigma; ///< 4; acceptance window width in sigmas
+   static const Double_t fgkChi2max; ///< 25; chi2 cut in smoother for outlier detection
+   static const Int_t fgkTriesMax; ///< max number of attempts to find exact position during tracking
+   static const Double_t fgkEpsilon; ///< tracking precision (cm)
 
   ClassDef(AliMUONTrackK,0) // Kalman track in MUON arm of ALICE
     };