]> git.uio.no Git - u/mrichter/AliRoot.git/blame - TPC/AliTPCParamCR.h
adding common functionality for the magnetic field to the component interface
[u/mrichter/AliRoot.git] / TPC / AliTPCParamCR.h
CommitLineData
cc80f89e 1#ifndef TPCParamCR_H
2#define TPCParamCR_H
3/* Copyright(c) 1998-1999, ALICE Experiment at CERN, All rights reserved. *
4 * See cxx source for full Copyright notice */
5
6/* $Id$ */
7
8////////////////////////////////////////////////
9// Manager class for TPC parameters //
10////////////////////////////////////////////////
cc80f89e 11#include "AliTPCParam.h"
12
73042f01 13class AliTPCRF1D;
14class AliTPCPRF2D;
15
cc80f89e 16class AliTPCParamCR : public AliTPCParam {
17public:
18 AliTPCParamCR();
179c6296 19 AliTPCParamCR(const AliTPCParamCR &param); // copy constructor
20 AliTPCParamCR &operator = (const AliTPCParamCR & param); //assignment operator
cc80f89e 21 virtual ~AliTPCParamCR();
73042f01 22 Int_t CalcResponse(Float_t* x, Int_t * index, Int_t dummy=0);
cc80f89e 23 //calculate bin response as function of the input position -x
24 //return number of valid response bin
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 Bool_t Update(); //recalculate and check geometric parameters
38 void SetDefault(); //set default parameters
39 void SetInnerPRF(AliTPCPRF2D * prf) {fInnerPRF = prf;}
f03e3423 40 void SetOuter1PRF(AliTPCPRF2D * prf) {fOuter1PRF = prf;}
41 void SetOuter2PRF(AliTPCPRF2D * prf) {fOuter2PRF = prf;}
cc80f89e 42 void SetTimeRF(AliTPCRF1D * timerf) {fTimeRF = timerf;}
43
44 AliTPCPRF2D * GetInnerPRF() const {return fInnerPRF;}
f03e3423 45 AliTPCPRF2D * GetOuter1PRF() const {return fOuter1PRF;}
46 AliTPCPRF2D * GetOuter2PRF() const {return fOuter2PRF;}
cc80f89e 47 AliTPCRF1D * GetTimeRF() const {return fTimeRF;}
48protected:
2ab0c725 49 AliTPCPRF2D * fInnerPRF; //!pad response function object for inner sector
f03e3423 50 AliTPCPRF2D * fOuter1PRF; //!pad response function object for inner sector
51 AliTPCPRF2D * fOuter2PRF;
2ab0c725 52 AliTPCRF1D * fTimeRF; //!time response function object
cc80f89e 53 Float_t fFacSigma; //factor-how many sigma of response I accept
946e3ae7 54 ClassDef(AliTPCParamCR,2) //parameter object for set:TPC
cc80f89e 55};
56
57#endif