LCOV - code coverage report
Current view: top level - TPC/TPCbase - AliTPCRF1D.h (source / functions) Hit Total Coverage
Test: coverage.info Lines: 2 5 40.0 %
Date: 2016-06-14 17:26:59 Functions: 2 9 22.2 %

          Line data    Source code
       1             : #ifndef ALITPCRF1D_H
       2             : #define ALITPCRF1D_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 AliTPCRF1D
       8             : /// \brief Manager class for AliTPCRF1D
       9             : 
      10             : 
      11             : // include files and class forward declarations
      12             : 
      13             : 
      14             : #include "TObject.h"
      15             : #include "TMath.h"
      16             : class TF1;
      17             : 
      18             : 
      19             : class AliTPCRF1D : public TObject {
      20             : public :
      21             :   AliTPCRF1D(Bool_t direct=kFALSE,Int_t np=0,Float_t step=0 );
      22             :   AliTPCRF1D(const AliTPCRF1D &prf);
      23             :   AliTPCRF1D & operator = (const AliTPCRF1D &prf);
      24             :   ~AliTPCRF1D();
      25             :   Float_t GetRF(Float_t xin); //return RF in point xin
      26             :   Float_t GetGRF(Float_t xin); //return generic response function  in xin
      27             :   void SetGauss(Float_t sigma,Float_t padWidth, Float_t kNorm);
      28             :   //adjust RF with GAUSIAN as generic GRF
      29             :   //if  direct = kTRUE then it does't convolute distribution
      30             :   void SetCosh(Float_t sigma,Float_t padWidth, Float_t kNorm);
      31             :   void SetGati(Float_t K3, Float_t padDistance, Float_t padWidth,
      32             :                Float_t kNorm);
      33             :   //adjust RF with 1/Cosh  as generic GRF
      34             :   void SetParam(TF1 * GRF,Float_t padwidth,Float_t kNorm,
      35             :                 Float_t sigma=0);
      36             :   //adjust RF with general function
      37           2 :   void SetOffset(Float_t xoff) {fOffset=xoff;}
      38             :   //set offset value
      39           0 :   Float_t GetOffset(){return fOffset;}
      40           0 :   Float_t GetPadWidth(){ return fpadWidth;};
      41             :   //return  pad width
      42           0 :   Float_t  GetSigma(){return fSigma;}
      43             :   //return estimated sigma of RF
      44             :   void DrawRF(Float_t x1=-3 ,Float_t x2 =3.,Int_t N = 200);
      45             :   //draw RF it don't delete histograms after drawing
      46             :   /// it's on user !!!!
      47             :   void Update();
      48             :   static Double_t Gamma4(Double_t x, Double_t p0, Double_t p1);
      49             : private:
      50             :   Double_t funParam[5];///< parameters of used charge function
      51             :   Int_t  fNRF;      ///< number of interpolations point
      52             :   Float_t fDSTEPM1;    ///< element step for point
      53             :   /// field with RF
      54             :   Float_t* fcharge; //[fNPRF]
      55             :   Float_t  forigsigma;///< sigma of original distribution;
      56             :   Float_t fpadWidth;  ///< width of pad
      57             :   Float_t fkNorm;     ///< normalisation factor of the charge integral
      58             :   Float_t fInteg;     ///< integral of GRF on +- infinity
      59             :   TF1 *  fGRF;        ///< charge distribution function
      60             :   Float_t fSigma;     ///< sigma of PAD response function
      61             : 
      62             :   Float_t fOffset;    ///< offset of response function (for time reponse we
      63             :   //have for expample shifted gauss)
      64             :   //calculated during update
      65             : 
      66             :   Bool_t fDirect;     ///< tell us if we use directly generalfunction
      67             : 
      68             :   Float_t fPadDistance;   ///< pad to wire distance
      69             :   char  fType[5];     ///< type of the parametrisation
      70             :   static Int_t   fgNRF;///< default  number of interpolation points
      71             :   static Float_t fgRFDSTEP;///< default step in cm
      72             :   /// \cond CLASSIMP
      73          24 :   ClassDef(AliTPCRF1D,2)
      74             :   /// \endcond
      75             : };
      76             : 
      77             : 
      78             : 
      79             : 
      80             : #endif /* ALITPCRF1D_H */
      81             : 

Generated by: LCOV version 1.11