]> git.uio.no Git - u/mrichter/AliRoot.git/blobdiff - TPC/AliTPCcalibAlign.h
Updated list of libraries
[u/mrichter/AliRoot.git] / TPC / AliTPCcalibAlign.h
index 0f130061c7ba980b2ed7e2d511b200712f36eec2..9cf738cad3cbcf743e2827da5e0556dfca795afb 100644 (file)
@@ -12,13 +12,14 @@ class TFile;
 class TGraphErrors;
 class TH1;
 class THnSparse;
+class THnBase;
+class THn;
 #include <TLinearFitter.h>
 #include <TMatrixDfwd.h>
 class TObjArray;
 class TTree;
 
 #include "AliTPCcalibBase.h"
-class AliExternalComparison;
 class AliExternalTrackParam;
 class AliTPCPointCorrection;
 class AliTPCseed;
@@ -60,6 +61,7 @@ public:
                        const AliTPCseed * seed,
                        Int_t s1,Int_t s2);
   
+  void UpdateClusterDeltaField(const AliTPCseed * seed);
   void UpdateAlignSector(const AliTPCseed * seed,Int_t isec); 
   Int_t GetIndex(Int_t s1,Int_t s2) const {return 72*s1+s2;}
   //
@@ -96,7 +98,6 @@ public:
                 TLinearFitter *fitter) const;
   void Process9(const Double_t *const t1, const Double_t *const t2, TLinearFitter *fitter) const;
   void Process6(const Double_t *const t1, const Double_t *const t2, TLinearFitter *fitter) const;
-  void ProcessTree(TTree * tree, AliExternalComparison *comp=0);
   void GlobalAlign6(Int_t minPoints, Float_t sysError, Int_t niter);
   //
   // Cluster comparison Part
@@ -132,15 +133,22 @@ public:
   //
   //
   void MakeResidualHistos();
-  THnSparse * GetClusterDelta(Int_t index) const  { return fClusterDelta[index];}
+  void MakeResidualHistosTracklet();
+  THn * GetClusterDelta(Int_t index) const  { return fClusterDelta[index];}
+  THnSparse * GetTrackletDelta(Int_t index) const  { return fTrackletDelta[index];}
 public:
   
   void FillHisto(const Double_t *t1,
                 const Double_t *t2,
                 Int_t s1,Int_t s2);
+  void FillHisto(AliExternalTrackParam *tp1,
+                AliExternalTrackParam *tp2,
+                Int_t s1,Int_t s2);
 
+  static void SetMergeEntriesCut(Double_t entriesCut){fgkMergeEntriesCut = entriesCut;}
 protected:
-  THnSparse *fClusterDelta[6];  //clusters residuals
+  THn     *fClusterDelta[2];  //clusters residuals
+  THnSparse     *fTrackletDelta[4]; //track residuals
 
   TObjArray fDphiHistArray;    // array of residual histograms  phi      -kPhi
   TObjArray fDthetaHistArray;  // array of residual histograms  theta    -kTheta
@@ -169,7 +177,6 @@ protected:
   //
   TObjArray fCombinedMatrixArray6;      // array  combeined transformation matrix
   //
-  AliExternalComparison  *fCompTracklet;  //tracklet comparison
   //
   Int_t fPoints[72*72];        // number of points in the fitter 
   Bool_t fNoField;             // flag - no field data
@@ -195,10 +202,11 @@ protected:
   Bool_t    fUseInnerOuter;         // flag- use Inner Outer sector for left righ alignment
   
   static AliTPCcalibAlign*   fgInstance; //! Instance of this class (singleton implementation)
+  static Double_t            fgkMergeEntriesCut;  //maximal number of entries for merging  -can be modified via setter
 private:
   AliTPCcalibAlign&  operator=(const AliTPCcalibAlign&);// not implemented
 
-  ClassDef(AliTPCcalibAlign,3)
+  ClassDef(AliTPCcalibAlign,6)
 };