AliRoot Core  d69033e (d69033e)
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Groups Pages
AliTPCParamSR.h
Go to the documentation of this file.
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 
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  void SetInnerPRF(AliTPCPRF2D * prf) {fInnerPRF = prf;}
42  void SetOuter1PRF(AliTPCPRF2D * prf) {fOuter1PRF = prf;} //e.k
43  void SetOuter2PRF(AliTPCPRF2D * prf) {fOuter2PRF = prf;} //e.k
44  void SetTimeRF(AliTPCRF1D * timerf) {fTimeRF = timerf;}
45 
46  AliTPCPRF2D * GetInnerPRF() const {return fInnerPRF;}
47  AliTPCPRF2D * GetOuter1PRF() const {return fOuter1PRF;} //e.k
48  AliTPCPRF2D * GetOuter2PRF() const {return fOuter2PRF;} //e.k
49  AliTPCRF1D * GetTimeRF() const {return fTimeRF;}
50  void SetFacSigmaPadRow(Float_t fac=3.) {fFacSigmaPadRow=fac;}
51  void SetFacSigmaPad(Float_t fac=3.) {fFacSigmaPad=fac;}
52  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:
72  Float_t fFacSigmaPadRow;
73  Float_t fFacSigmaPad;
74  Float_t fFacSigmaTime;
75 
76 private:
77  AliTPCParamSR(const AliTPCParamSR &param); // copy constructor
78  AliTPCParamSR &operator = (const AliTPCParamSR & param); //assignment operator
79 
81  ClassDef(AliTPCParamSR,2) //parameter object for set:TPC
83 };
84 
85 #endif
86 
87 
88 
89 
90 
91 
virtual Float_t GetAmp(Float_t *x, Int_t *index, Float_t *angle)
void CRXYZtoXYZ(Float_t *xyz, const Int_t &sector, const Int_t &padrow, Int_t option=3) const
void SetOuter2PRF(AliTPCPRF2D *prf)
Definition: AliTPCParamSR.h:43
Manager and of geomety classes for set: TPC.
Definition: AliTPCParamSR.h:15
AliTPCParamSR & operator=(const AliTPCParamSR &param)
AliTPCPRF2D * GetOuter2PRF() const
Definition: AliTPCParamSR.h:48
AliTPCPRF2D * fOuter1PRF
pad response function for outer sector
Definition: AliTPCParamSR.h:69
Manager and of geomety classes for set: TPC.
Definition: AliTPCParam.h:18
AliTPCPRF2D * GetInnerPRF() const
Definition: AliTPCParamSR.h:46
void SetOuter1PRF(AliTPCPRF2D *prf)
Definition: AliTPCParamSR.h:42
AliTPCPRF2D * fInnerPRF
pad response function for inner sector
Definition: AliTPCParamSR.h:68
AliTPCPRF2D * GetOuter1PRF() const
Definition: AliTPCParamSR.h:47
AliTPCRF1D * fTimeRF
time response function object
Definition: AliTPCParamSR.h:71
void TransformTo8(Float_t *xyz, Int_t *index) const
Int_t CalcResponse(Float_t *x, Int_t *index, Int_t row)
void SetFacSigmaPad(Float_t fac=3.)
Definition: AliTPCParamSR.h:51
virtual void GetClusterSize(Float_t *x, Int_t *index, Float_t *angle, Int_t mode, Float_t *sigma)
void XYZtoCRXYZ(Float_t *xyz, Int_t &sector, Int_t &padrow, Int_t option=3) const
virtual Float_t GetTotalLoss(Float_t *x, Int_t *index, Float_t *angle)
Float_t fFacSigmaPad
factor-how many sigma of response I accept
Definition: AliTPCParamSR.h:73
Float_t GetYOuter(Int_t irow) const
Declaration of class AliTPCRF1D.
Definition: AliTPCRF1D.h:19
void SetTimeRF(AliTPCRF1D *timerf)
Definition: AliTPCParamSR.h:44
Pad response function object in two dimesions.
Definition: AliTPCPRF2D.h:19
Int_t CalcResponseFast(Float_t *x, Int_t *index, Int_t row, Float_t phase)
void SetFacSigmaPadRow(Float_t fac=3.)
Definition: AliTPCParamSR.h:50
virtual void GetSpaceResolution(Float_t *x, Int_t *index, Float_t *angle, Float_t amplitude, Int_t mode, Float_t *sigma)
virtual Float_t * GetAnglesAccMomentum(Float_t *x, Int_t *index, Float_t *momentum, Float_t *angle)
virtual ~AliTPCParamSR()
virtual Float_t GetPrimaryLoss(Float_t *x, Int_t *index, Float_t *angle)
Float_t GetYInner(Int_t irow) const
AliTPCPRF2D * fOuter2PRF
Definition: AliTPCParamSR.h:70
AliTPCRF1D * GetTimeRF() const
Definition: AliTPCParamSR.h:49
void TransformTo2(Float_t *xyz, Int_t *index) const
Float_t fFacSigmaTime
factor-how many sigma of response I accept
Definition: AliTPCParamSR.h:74
Float_t fFacSigmaPadRow
factor-how many sigma of response I accept
Definition: AliTPCParamSR.h:72
void SetInnerPRF(AliTPCPRF2D *prf)
Definition: AliTPCParamSR.h:41
void SetFacSigmaTime(Float_t fac=3.)
Definition: AliTPCParamSR.h:52