]> git.uio.no Git - u/mrichter/AliRoot.git/blobdiff - TRD/AliTRDtrackV1.h
improving handling of processing failures in event processing
[u/mrichter/AliRoot.git] / TRD / AliTRDtrackV1.h
index e068bd3728126562822f13ec74b9c6eb20d7790b..403539ae3a3c75ae5ce75048f94a94e815d66d77 100644 (file)
 //                                                                           //
 ///////////////////////////////////////////////////////////////////////////////
 
-//#ifndef ALIKALMANTRACK_H
+#ifndef ALIKALMANTRACK_H
 #include "AliKalmanTrack.h"
-//#endif
+#endif
 
-//#ifndef ALITRDSEEDV1_H
+#ifndef ALITRDSEEDV1_H
 #include "AliTRDseedV1.h"
-//#endif
+#endif
 
-class AliTRDcluster;
 class AliESDtrack;
+class AliTRDcluster;
 class AliTRDReconstructor;
 class AliTRDtrackV1 : public AliKalmanTrack
 {
-  friend class AliHLTTRDTrack;
+  friend class AliHLTTRDTrack; // allow HLT special access
 public:
   enum ETRDtrackSize { 
     kNdet      = AliTRDgeometry::kNdet
@@ -72,8 +72,9 @@ public:
   AliTRDtrackV1(const AliESDtrack &ref);
   AliTRDtrackV1(const AliTRDtrackV1 &ref);
   virtual ~AliTRDtrackV1();
-  AliTRDtrackV1 &operator=(const AliTRDtrackV1 &ref) { *(new(this) AliTRDtrackV1(ref)); return *this; }
-  
+  AliTRDtrackV1 &operator=(const AliTRDtrackV1 &ref);
+  virtual void   Copy(TObject &ref) const;
   Bool_t         CookPID();
   Bool_t         CookLabel(Float_t wrong);
   AliTRDtrackV1* GetBackupTrack() const {return fBackupTrack;}
@@ -90,7 +91,7 @@ public:
   UChar_t        GetNumberOfTrackletsPID() const;
   Double_t       GetPredictedChi2(const AliTRDseedV1 *tracklet, Double_t *cov) const;
   Double_t       GetPredictedChi2(const AliCluster* /*c*/) const                   { return 0.0; }
-  Int_t          GetProlongation(Double_t xk, Double_t &y, Double_t &z);
+  Int_t          GetProlongation(Double_t xk, Double_t &y, Double_t &z) const;
   inline UChar_t GetStatusTRD(Int_t ly=-1) const;
   Int_t          GetSector() const;
   AliTRDseedV1*  GetTracklet(Int_t plane) const {return plane >=0 && plane <kNplane ? fTracklet[plane] : NULL;}
@@ -134,8 +135,8 @@ public:
   inline void    SetReconstructor(const AliTRDReconstructor *rec);
   inline Float_t StatusForTOF();
   void           UnsetTracklet(Int_t plane);
-  Bool_t         Update(Double_t *p, Double_t *cov, Double_t chi2, Bool_t useTRD=kTRUE);
   Bool_t         Update(const AliCluster *, Double_t, Int_t) { return kFALSE; };
+  void           UpdateChi2(Float_t chi2);
   void           UpdateESDtrack(AliESDtrack *t);
 
 private: