LCOV - code coverage report
Current view: top level - TPC/TPCbase - AliTPCPointCorrection.h (source / functions) Hit Total Coverage
Test: coverage.info Lines: 1 4 25.0 %
Date: 2016-06-14 17:26:59 Functions: 1 8 12.5 %

          Line data    Source code
       1             : /// \class AliTPCPointCorrection
       2             : 
       3             : #ifndef ALITPCPOINTCORRECTION_H
       4             : #define ALITPCPOINTCORRECTION_H
       5             : 
       6             : /* Copyright(c) 1998-1999, ALICE Experiment at CERN, All rights reserved. *
       7             :  * See cxx source for full Copyright notice                               */
       8             : 
       9             : #include "TNamed.h"
      10             : #include "TArrayD.h"
      11             : #include "TObjArray.h"
      12             : #include "TVectorD.h"
      13             : 
      14             : 
      15             : class AliTPCPointCorrection:public TNamed {
      16             : public:
      17             :   AliTPCPointCorrection();
      18             :   AliTPCPointCorrection(const Text_t *name, const Text_t *title);
      19             :   virtual ~AliTPCPointCorrection();
      20             :   //
      21           0 :   TVectorD * GetParamOutR(Int_t sector) {return (TVectorD*)fParamsOutR.At(sector);}
      22           0 :   TVectorD * GetParamOutZ(Int_t sector) {return (TVectorD*)fParamsOutZ.At(sector);}
      23             :   //
      24             :   Double_t      GetDrOut(Bool_t isGlobal, Bool_t type, Double_t cx, Double_t cy, Double_t cz, Int_t sector);
      25             :   Double_t      GetDzOut(Bool_t isGlobal, Bool_t type, Double_t cx, Double_t cy, Double_t cz, Int_t sector);
      26             : 
      27             :   static Double_t      SGetDrOut(Bool_t isGlobal, Bool_t type, Double_t cx, Double_t cy, Double_t cz, Int_t sector);
      28             :   static Double_t      SGetDzOut(Bool_t isGlobal, Bool_t type, Double_t cx, Double_t cy, Double_t cz, Int_t sector);
      29             : 
      30             :   static AliTPCPointCorrection* Instance();
      31           0 :   void SetInstance(AliTPCPointCorrection*param){fgInstance = param;}
      32             :   //
      33             :   Double_t CorrectionOutR0(Bool_t isGlobal, Bool_t type, Double_t cx, Double_t cy, Double_t cz, Int_t sector);
      34             :   Double_t CorrectionOutZ0(Bool_t isGlobal, Bool_t type, Double_t cx, Double_t cy, Double_t cz, Int_t sector);
      35             : 
      36             :   Double_t RPhiCOGCorrection(Int_t sector, Int_t padrow, Float_t pad, Float_t cy, Float_t y, Float_t z, Float_t ky, Float_t qMax, Float_t threhsold);
      37             :   Double_t SRPhiCOGCorrection(Int_t sector, Int_t padrow, Float_t pad, Float_t cy, Float_t y, Float_t z, Float_t ky,  Float_t qMax, Float_t threhsold);
      38             :   //
      39             :   Double_t GetEdgeQ0(Int_t sector, Int_t padrow, Float_t y);
      40             :   static   Double_t SGetEdgeQ0(Int_t sector, Int_t padrow, Float_t y);
      41             :   //
      42             :   // IROC -OROC+Quadrant alignment
      43             :   //
      44             :   void     AddCorrectionSector(TObjArray & sideAPar, TObjArray &sideCPar, TObjArray & sideACov, TObjArray &sideCCov, Bool_t reset);
      45             :   Double_t GetCorrectionSector(Int_t coord, Int_t sector, Double_t lx, Double_t ly, Double_t lz, Int_t quadrant =-1);
      46             :   static Double_t SGetCorrectionSector(Int_t coord, Int_t sector, Double_t lx, Double_t ly, Double_t lz, Int_t quadrant=-1);
      47             :   //
      48             :   // Global alignment
      49             :   //
      50             :   Double_t GetCorrection(Int_t coord, Int_t sector, Double_t lx, Double_t ly, Double_t lz);
      51             :   static Double_t SGetCorrection(Int_t coord, Int_t sector, Double_t lx, Double_t ly, Double_t lz);
      52             : public:
      53             :   //
      54             :   // Correction out
      55             :   //
      56             :   TObjArray   fParamsOutR;       ///< Parameters  for radial distortion  - outer field cage
      57             :   TObjArray   fParamsOutZ;       ///< Parameters  for z      distortion  - outer field cage
      58             :   Int_t       fParamOutRVersion;  ///< version of the parameterization
      59             :   TObjArray   fErrorsOutR;       ///< Parameters  for radial distortion  - outer field cage
      60             :   TObjArray   fErrorsOutZ;       ///< Parameters  for z      distortion  - outer field cage
      61             :   Int_t       fParamOutZVersion;  ///< version of the parameterization
      62             :   //
      63             :   //  Edge rfi
      64             :   //
      65             :   //
      66             :   // Alignment part
      67             :   //
      68             :   Double_t fXIO;               ///< OROC-IROC boundary
      69             :   Double_t fXmiddle;           ///< center of the TPC sector local X
      70             :   Double_t fXquadrant;         ///< x quadrant
      71             :   //
      72             :   // IROC OROC alignment
      73             :   //
      74             :   TObjArray fArraySectorIntParam; ///< array of sector alignment parameters
      75             :   TObjArray fArraySectorIntCovar; ///< array of sector alignment covariances
      76             :   //
      77             :   // Kalman filter for global alignment
      78             :   //
      79             :   TMatrixD  *fSectorParam;     ///< Kalman parameter
      80             :   TMatrixD  *fSectorCovar;     ///< Kalman covariance
      81             :   //
      82             :   //
      83             :   //
      84             : private:
      85             : 
      86             :   AliTPCPointCorrection(const AliTPCPointCorrection&);
      87             :   AliTPCPointCorrection& operator=(const AliTPCPointCorrection&);
      88             :   static AliTPCPointCorrection*   fgInstance; //!<! Instance of this class (singleton implementation)
      89             :   /// \cond CLASSIMP
      90          24 :   ClassDef(AliTPCPointCorrection, 3);
      91             :   /// \endcond
      92             : };
      93             : 
      94             : #endif
      95             : 
      96             : 

Generated by: LCOV version 1.11