]> git.uio.no Git - u/mrichter/AliRoot.git/blobdiff - TRD/AliTRDCalibraVdriftLinearFit.h
robust write tracklet quality to ESD track
[u/mrichter/AliRoot.git] / TRD / AliTRDCalibraVdriftLinearFit.h
index bc0aaf2ec0cbe6d4f5efb2008a42889fea260924..1e01183cfd57d794484fe285315b1ea5a2d3b82b 100644 (file)
 
 //class TVectorD;
 class TObjArray;
-class TH2F;
+class TH2S;
+class TH2;
+class TTreeSRedirector;
+class TString;
+class TGraphErrors;
+class TLinearFitter;
 class TTreeSRedirector;
 
 class AliTRDCalibraVdriftLinearFit : public TObject {
@@ -35,27 +40,46 @@ class AliTRDCalibraVdriftLinearFit : public TObject {
 
   void            Update(Int_t detector, Float_t tnp, Float_t pars1);
   void            FillPEArray();
-  void            Add(AliTRDCalibraVdriftLinearFit *ped);
-  TH2F           *GetLinearFitterHisto(Int_t detector, Bool_t force=kFALSE);
+  void            FillPEArray2();
+  void            SetNameCalibUsed(const char*name)          { fNameCalibUsed = name;};
+  const char*     GetNameCalibUsed() const                   { return fNameCalibUsed;};
+  void            Add(const AliTRDCalibraVdriftLinearFit *ped);
+  TH2S           *GetLinearFitterHisto(Int_t detector, Bool_t force=kFALSE);
+  TH2S           *GetLinearFitterHistoForce(Int_t detector);
+  TH2S           *GetLinearFitterHistoNoForce(Int_t detector) const   { return (TH2S*)fLinearFitterHistoArray.UncheckedAt(detector);};
   Bool_t          GetParam(Int_t detector, TVectorD *param);
   Bool_t          GetError(Int_t detector, TVectorD *error);
 
   TObjArray      *GetPArray()                    { return &fLinearFitterPArray;       };
   TObjArray      *GetEArray()                    { return &fLinearFitterEArray;       };
   TObjArray       GetHistoArray() const          { return fLinearFitterHistoArray;    };
+  void            SetRobustFit(Bool_t robustFit) { fRobustFit = robustFit;            };
+
+  // Debug
+  void     SetDebugLevel(Short_t level)          { fDebugLevel = level;               };
+  void     SetSeeDetector(Int_t seeDetector)     { fSeeDetector = seeDetector;        };
+
+private:
+  TGraphErrors   *DrawMS(const TH2 *const h2, Int_t &nEntries);
 
- private:
-   
   Int_t           fVersion;                 // Version of the object
+  TString         fNameCalibUsed;           // Info of the version, subversion, firstrun of the calib used
 
   TObjArray       fLinearFitterHistoArray;  // TObjArray of histo2D for debugging Linear Fitters
   TObjArray       fLinearFitterPArray;      // Array of result parameters from linear fitters for the detectors
   TObjArray       fLinearFitterEArray;      // Array of result errors from linear fitters for the detectors
-
-  ClassDef(AliTRDCalibraVdriftLinearFit,1)  // Online Vdrift calibration
+  Bool_t          fRobustFit;               // Robust fit or not
+  
+ //For debugging
+  TTreeSRedirector *fDebugStreamer;         //!Debug streamer
+  Short_t           fDebugLevel;            // Flag for debugging
+  Int_t             fSeeDetector;           // Detector to see
+  ClassDef(AliTRDCalibraVdriftLinearFit,3)  // Online Vdrift calibration
 
 };
 
 
 
 #endif
+