LCOV - code coverage report
Current view: top level - TPC/TPCbase - AliTPCParamSR.h (source / functions) Hit Total Coverage
Test: coverage.info Lines: 5 12 41.7 %
Date: 2016-06-14 17:26:59 Functions: 6 16 37.5 %

          Line data    Source code
       1             : #ifndef TPCParamSR_H
       2             : #define TPCParamSR_H
       3             : /* Copyright(c) 1998-1999, ALICE Experiment at CERN, All rights reserved. *
       4             :  * See cxx source for full Copyright notice                               */
       5             : 
       6             : 
       7             : /// \class AliTPCParamSR
       8             : /// \brief Manager class for TPC parameters
       9             : 
      10             : #include "AliTPCParam.h"
      11             : 
      12             : class AliTPCRF1D;
      13             : class AliTPCPRF2D;
      14             : 
      15             : class AliTPCParamSR : public AliTPCParam {
      16             : public:
      17             :   AliTPCParamSR();
      18             :   virtual ~AliTPCParamSR();
      19             : 
      20             :   Int_t  CalcResponse(Float_t* x, Int_t * index, Int_t row);
      21             :   Int_t CalcResponseFast(Float_t* x, Int_t * index, Int_t row,Float_t phase);
      22             :   //calculate bin response as function of the input position -x
      23             :   //return number of valid response bin
      24             : 
      25             : 
      26             :   void XYZtoCRXYZ(Float_t *xyz,
      27             :                   Int_t &sector, Int_t &padrow, Int_t option=3) const;
      28             :   //transform global position to the position relative to the sector padrow
      29             :   //if option=0  X calculate absolute            calculate sector
      30             :   //if option=1  X           absolute            use input sector
      31             :   //if option=2  X           relative to pad row calculate sector
      32             :   //if option=3  X           relative            use input sector
      33             : 
      34             :   void CRXYZtoXYZ(Float_t *xyz,
      35             :             const Int_t &sector, const Int_t & padrow, Int_t option=3) const;
      36             :   //transform relative position  to the gloabal position
      37             :   void TransformTo8(Float_t *xyz, Int_t *index) const;
      38             :   void TransformTo2(Float_t *xyz, Int_t *index) const;
      39             :   Bool_t Update();            //recalculate and check geometric parameters
      40             :   void SetDefault();          //set default parameters
      41           2 :   void   SetInnerPRF(AliTPCPRF2D * prf) {fInnerPRF = prf;}
      42           2 :   void   SetOuter1PRF(AliTPCPRF2D * prf) {fOuter1PRF = prf;} //e.k
      43           2 :   void   SetOuter2PRF(AliTPCPRF2D * prf) {fOuter2PRF = prf;} //e.k
      44           2 :   void   SetTimeRF(AliTPCRF1D * timerf) {fTimeRF = timerf;}
      45             : 
      46           0 :   AliTPCPRF2D * GetInnerPRF() const {return fInnerPRF;}
      47           0 :   AliTPCPRF2D * GetOuter1PRF() const {return fOuter1PRF;} //e.k
      48           0 :   AliTPCPRF2D * GetOuter2PRF() const {return fOuter2PRF;} //e.k
      49           0 :   AliTPCRF1D  * GetTimeRF()   const {return fTimeRF;}
      50           0 :   void SetFacSigmaPadRow(Float_t fac=3.) {fFacSigmaPadRow=fac;}
      51           0 :   void SetFacSigmaPad(Float_t fac=3.) {fFacSigmaPad=fac;}
      52           0 :   void SetFacSigmaTime(Float_t fac=3.) {fFacSigmaTime=fac;}
      53             : 
      54             :   //  Float_t GetPadRowRadiiLow(Int_t irow) const;
      55             :   //  Float_t GetPadRowRadiiUp(Int_t irow) const;
      56             :   Float_t GetYInner(Int_t irow) const; //e,k
      57             :   Float_t GetYOuter(Int_t irow) const; //e.k
      58             : 
      59             :   virtual Float_t GetPrimaryLoss(Float_t *x, Int_t *index, Float_t *angle);
      60             :   virtual Float_t GetTotalLoss(Float_t *x, Int_t *index, Float_t *angle);
      61             : 
      62             :   virtual void GetClusterSize(Float_t *x, Int_t *index, Float_t *angle, Int_t mode, Float_t *sigma);
      63             :   virtual void GetSpaceResolution(Float_t *x, Int_t *index, Float_t *angle, Float_t amplitude, Int_t mode,Float_t *sigma);
      64             :   virtual Float_t  GetAmp(Float_t *x, Int_t *index, Float_t *angle);
      65             :   virtual Float_t * GetAnglesAccMomentum(Float_t *x, Int_t * index, Float_t* momentum, Float_t *angle);
      66             : 
      67             : protected:
      68             :   AliTPCPRF2D * fInnerPRF;         ///< pad response function  for inner sector
      69             :   AliTPCPRF2D * fOuter1PRF;        ///< pad response function  for outer sector
      70             :   AliTPCPRF2D * fOuter2PRF;
      71             :   AliTPCRF1D  * fTimeRF;           ///< time response function object
      72             :   Float_t      fFacSigmaPadRow;    ///< factor-how many sigma of response I accept
      73             :   Float_t      fFacSigmaPad;       ///< factor-how many sigma of response I accept
      74             :   Float_t      fFacSigmaTime;      ///< factor-how many sigma of response I accept
      75             : 
      76             : private:
      77             :   AliTPCParamSR(const AliTPCParamSR &param); // copy constructor
      78             :   AliTPCParamSR &operator = (const AliTPCParamSR & param); //assignment operator
      79             : 
      80             :   /// \cond CLASSIMP
      81          90 :   ClassDef(AliTPCParamSR,2)  //parameter  object for set:TPC
      82             :   /// \endcond
      83             : };
      84             : 
      85             : #endif
      86             : 
      87             : 
      88             : 
      89             : 
      90             : 
      91             : 

Generated by: LCOV version 1.11