]> git.uio.no Git - u/mrichter/AliRoot.git/blobdiff - TPC/AliTPCRecoParam.h
adapted macro to QAManager
[u/mrichter/AliRoot.git] / TPC / AliTPCRecoParam.h
index 568c6f9d4c77289fec771e70727dcdf443d187f0..0a5376c91af05e1e4b9c5d1c93ebf24515d3aa9e 100644 (file)
 ///////////////////////////////////////////////////////////////////////////////
 
 
-#include "TObject.h"
+#include "AliDetectorRecoParam.h"
 
-class AliTPCRecoParam : public TObject
+class AliTPCRecoParam : public AliDetectorRecoParam
 {
  public: 
   AliTPCRecoParam();
   virtual ~AliTPCRecoParam();
+  void     SetClusterSharing(Bool_t sharing){fBClusterSharing=sharing;}
+  Bool_t   GetClusterSharing() const {return fBClusterSharing;}
   Double_t GetCtgRange() const     { return fCtgRange;}
   Double_t GetMaxSnpTracker() const{ return fMaxSnpTracker;}
   Double_t GetMaxSnpTrack() const  { return fMaxSnpTrack;}
   //
+  Bool_t   DumpSignal()     const  { return fDumpSignal;}
+  void     SetTimeInterval(Int_t first, Int_t last) { fFirstBin=first, fLastBin =last;}
   Int_t    GetFirstBin() const     { return fFirstBin;}
   Int_t    GetLastBin() const      { return fLastBin;}
   void     SetTimeBinRange(Int_t first, Int_t last){ fFirstBin = first; fLastBin = last;}
   Bool_t   GetCalcPedestal()       const  { return fBCalcPedestal;}
   Bool_t   GetDoUnfold()           const  { return fBDoUnfold;}
+  void     SetDoUnfold(Bool_t unfold)     { fBDoUnfold = unfold;}
   Float_t  GetDumpAmplitudeMin()   const  { return fDumpAmplitudeMin;}
   Float_t  GetMaxNoise()           const  { return fMaxNoise;}  
+  //
   Float_t  GetMinMaxCutAbs()       const  { return fMinMaxCutAbs; }
   Float_t  GetMinLeftRightCutAbs() const  { return fMinLeftRightCutAbs;}  // minimal amplitude left right - PRF
   Float_t  GetMinUpDownCutAbs()    const  { return fMinUpDownCutAbs;}  // minimal amplitude up-down - TRF 
   Float_t  GetMinMaxCutSigma()       const  { return fMinMaxCutSigma; }
   Float_t  GetMinLeftRightCutSigma() const  { return fMinLeftRightCutSigma;}  // minimal amplitude left right - PRF
   Float_t  GetMinUpDownCutSigma()    const  { return fMinUpDownCutSigma;}  // minimal amplitude up-down - TRF 
-
   //
+  void SetMinMaxCutAbs(Float_t th)         {   fMinMaxCutAbs=th; }
+  void SetMinLeftRightCutAbs(Float_t th)   {   fMinLeftRightCutAbs=th;}  // minimal amplitude left right - PRF
+  void SetMinUpDownCutAbs(Float_t th)      {   fMinUpDownCutAbs=th;}  // minimal amplitude up-down - TRF 
+  void SetMinMaxCutSigma(Float_t th)       {   fMinMaxCutSigma=th; }
+  void SetMinLeftRightCutSigma(Float_t th) {   fMinLeftRightCutSigma=th;}  // minimal amplitude left right - PRF
+  void SetMinUpDownCutSigma(Float_t th)    {   fMinUpDownCutSigma=th;}  // minimal amplitude up-down - TRF 
+  //
+  Int_t    GetLastSeedRowSec()       const  { return fLastSeedRowSec;} 
+  void     SetDoKinks(Bool_t on)   { fBKinkFinder=on; }
   Bool_t   GetDoKinks() const      { return fBKinkFinder;}
   Float_t  GetMaxC()    const      { return fMaxC;}
   Bool_t   GetSpecialSeeding() const { return fBSpecialSeeding;}
-  Bool_t   GetBYMirror() const { return fBYMirror;}
+  //
+  // Correction setup
+  //
+  void  SetUseFieldCorrection(Int_t flag){fUseFieldCorrection=flag;}
+  void  SetUseRPHICorrection(Int_t flag){fUseRPHICorrection=flag;}
+  void  SetUseRadialCorrection(Int_t flag){fUseRadialCorrection=flag;}
+  void  SetUseQuadrantAlignment(Int_t flag){fUseQuadrantAlignment=flag;}
+  void  SetUseSectorAlignment(Int_t flag){fUseSectorAlignment=flag;}
+  void  SetUseDriftCorrectionTime(Int_t flag){fUseDriftCorrectionTime=flag;}
+  void  SetUseDriftCorrectionGY(Int_t flag){fUseDriftCorrectionGY=flag;}
+  void  SetUseGainCorrectionTime(Int_t flag){fUseGainCorrectionTime=flag;}
+  //
+  Int_t GetUseFieldCorrection() const {return fUseFieldCorrection;}
+  Int_t GetUseRPHICorrection() const {return fUseRPHICorrection;}
+  Int_t GetUseRadialCorrection() const {return fUseRadialCorrection;}
+  Int_t GetUseQuadrantAlignment() const {return fUseQuadrantAlignment;}
+  Int_t GetUseSectorAlignment() const {return fUseSectorAlignment;}
+  Int_t GetUseDriftCorrectionTime() const {return fUseDriftCorrectionTime;}
+  Int_t GetUseDriftCorrectionGY() const {return fUseDriftCorrectionGY;}
+  Int_t GetUseGainCorrectionTime() const {return fUseGainCorrectionTime;}
+  Bool_t   GetUseTOFCorrection() {return fUseTOFCorrection;}
+  //
+  //
+  void     SetSystematicError(Double_t *systematic){ for (Int_t i=0; i<5;i++) fSystematicErrors[i]=systematic[i];}
+  const Double_t * GetSystematicError() const { return fSystematicErrors;}
+
   static   AliTPCRecoParam *GetLowFluxParam();        // make reco parameters for low  flux env.
   static   AliTPCRecoParam *GetHighFluxParam();       // make reco parameters for high flux env. 
+  static   AliTPCRecoParam *GetHLTParam(); // special setting for HLT  
   static   AliTPCRecoParam *GetLaserTestParam(Bool_t bPedestal);  // special setting for laser 
   static   AliTPCRecoParam *GetCosmicTestParam(Bool_t bPedestal); // special setting for cosmic  
   //
  protected:
+  Bool_t   fBClusterSharing; // allows or disable cluster sharing during tracking 
   Double_t fCtgRange;        // +-fCtgRange is the ctg(Theta) window used for clusterization and tracking (MI) 
   Double_t fMaxSnpTracker;   // max sin of local angle  - for TPC tracker
   Double_t fMaxSnpTrack;     // max sin of local angle  - for track 
-  Bool_t   fBYMirror;        // mirror of the y - pad coordinate 
   //
   //   clusterer parameters
   //
+  Bool_t   fDumpSignal;      // Dump Signal information flag
   Int_t    fFirstBin;        // first time bin used by cluster finder
   Int_t    fLastBin;         // last time bin  used by cluster finder 
   Bool_t   fBCalcPedestal;   // calculate Pedestal
@@ -70,7 +111,26 @@ class AliTPCRecoParam : public TObject
   Float_t  fMaxC;            // maximal curvature for tracking
   Bool_t   fBSpecialSeeding; // special seeding with big inclination angles allowed (for Cosmic and laser)
   Bool_t   fBKinkFinder;     // do kink finder reconstruction
-  ClassDef(AliTPCRecoParam, 1)
+  Int_t    fLastSeedRowSec;     // Most Inner Row to make seeding for secondaries
+  //
+  // Correction switches
+  //
+  Int_t fUseFieldCorrection;      // use rphi correction
+  Int_t fUseRPHICorrection;      // use rphi correction
+  Int_t fUseRadialCorrection;    // use radial correction
+  Int_t fUseQuadrantAlignment;   // use quadrant alignment
+  Int_t fUseSectorAlignment;     // use sector alignment
+  Int_t fUseDriftCorrectionTime; // use drift correction time
+  Int_t fUseDriftCorrectionGY;   // use drif correction global y
+  Int_t fUseGainCorrectionTime;  // use gain correction time
+  //
+
+  Bool_t fUseTOFCorrection;  // switch - kTRUE use TOF correction kFALSE - do not use
+  //
+  //  misscalibration
+  //
+  Double_t fSystematicErrors[5];  //systematic errors in the track parameters - to be added to TPC covariance matrix    
+  ClassDef(AliTPCRecoParam, 5)
 };