]> git.uio.no Git - u/mrichter/AliRoot.git/blobdiff - TRD/AliTRDcluster.h
Remove obsolete class
[u/mrichter/AliRoot.git] / TRD / AliTRDcluster.h
index f2b7009033446df5777f4ba37405eadb54339560..244497d81e414a43ab043fa663e46c3b039cfa9a 100644 (file)
@@ -17,6 +17,7 @@ class AliTRDtrackletWord;
 
 class AliTRDcluster : public AliCluster {
   friend class AliHLTTRDCluster;
+  friend class AliTRDtrackletOflHelper;
 
 public:
   enum ETRDclusterStatus { 
@@ -25,6 +26,7 @@ public:
    ,kLUT       = BIT(18)
    ,kGAUS      = BIT(19)
    ,kCOG       = BIT(20)
+   ,kXcorr     = BIT(21)  // steer efficient vd corrections
   };
   enum ETRDclusterMask { 
     kMaskedLeft   = 0
@@ -53,6 +55,7 @@ public:
           Bool_t    IsUsed() const                  { return IsClusterUsed();      }
           Bool_t    IsFivePad() const               { return TestBit(kFivePad);    }
   inline  Bool_t    IsRPhiMethod(ETRDclusterStatus m) const;
+          Bool_t    HasXcorr() const                { return TestBit(kXcorr);      }
 
           UChar_t   GetPadMaskedPosition() const    { return fClusterMasking & 7;  }
           UChar_t   GetPadMaskedStatus() const      { return fClusterMasking >> 3; }
@@ -96,6 +99,7 @@ public:
   void        SetPadMaskedStatus(UChar_t status);
   void        SetSigmaY2(Float_t s2, Float_t dt, Float_t exb, Float_t x0, Float_t z=-1., Float_t tgp=0.);
   inline void SetRPhiMethod(ETRDclusterStatus m);
+  void        SetXcorr(Bool_t xc = kTRUE)                 { SetBit(kXcorr,xc);                  }
 
   void        Use(Int_t u = 1)                            { SetBit(AliCluster::kUsed, u ? kTRUE : kFALSE); }
 
@@ -112,6 +116,8 @@ protected:
   Float_t fQ;              //  Amplitude 
   Float_t fCenter;         //  Center of the cluster relative to the pad 
 
+  inline void Update(Short_t adc[7]);
+
 private:
 
          Float_t   GetDYcog(const Double_t *const y1=0x0, const Double_t *const y2=0x0);
@@ -126,6 +132,15 @@ private:
 
 };
 
+//___________________________________________________
+inline void AliTRDcluster::Update(Short_t adc[7]) 
+{
+  memcpy(fSignals, adc, 7*sizeof(Short_t));
+  fQ = Float_t(adc[2]+adc[3]+adc[4]);
+  if(IsRPhiMethod(AliTRDcluster::kLUT)) GetDYlut();
+  else GetDYcog();
+}
+
 //________________________________________________
 inline Bool_t AliTRDcluster::IsRPhiMethod(ETRDclusterStatus m) const
 {