]> git.uio.no Git - u/mrichter/AliRoot.git/blame - TRD/Cal/AliTRDCalPIDLQ.h
First round of effc++ changes
[u/mrichter/AliRoot.git] / TRD / Cal / AliTRDCalPIDLQ.h
CommitLineData
7754cd1f 1#ifndef ALITRDCALPIDLQ_H
2#define ALITRDCALPIDLQ_H
3/* Copyright(c) 1998-1999, ALICE Experiment at CERN, All rights reserved. *
4 * See cxx source for full Copyright notice */
2745a409 5
6/* $Id$ */
7
8///////////////////////////////////////////////////////////////////////////////
9// //
10// Container for the distributions of dE/dx and the time bin of the //
11// max. cluster for electrons and pions //
12// //
13// Author: //
14// Prashant Shukla <shukla@pi0.physi.uni-heidelberg.de> //
15// //
16///////////////////////////////////////////////////////////////////////////////
7754cd1f 17
18#include <TNamed.h>
7754cd1f 19
20class TH1F;
21class TObjArray;
22
23class AliTRDCalPIDLQ : public TNamed {
b92cdef5 24
2745a409 25 public:
b92cdef5 26
2745a409 27 AliTRDCalPIDLQ();
28 AliTRDCalPIDLQ(const Text_t *name, const Text_t *title);
29 AliTRDCalPIDLQ(const AliTRDCalPIDLQ& pd);
30 virtual ~AliTRDCalPIDLQ();
31 AliTRDCalPIDLQ &operator=(const AliTRDCalPIDLQ &c);
7754cd1f 32
2745a409 33 virtual void Copy(TObject &c) const;
7754cd1f 34
2745a409 35 Bool_t ReadData(Char_t *responseFile);
36 void SetMeanChargeRatio(Double_t ratio) { fMeanChargeRatio = ratio; }
7754cd1f 37
2745a409 38 Double_t GetMeanChargeRatio() const { return fMeanChargeRatio; }
39 Double_t GetMomentum(Int_t ip) const { return fTrackMomentum[ip]; }
40 Double_t GetMean(Int_t iType, Int_t ip) const;
41 Double_t GetNormalization(Int_t iType, Int_t ip) const;
7754cd1f 42
2745a409 43 TH1F *GetHistogram(Int_t iType, Int_t ip) const;
44 TH1F *GetHistogramT(Int_t iType, Int_t ip) const;
7754cd1f 45
2745a409 46 Double_t GetProbability(Int_t iType, Double_t mom, Double_t dedx) const;
47 Double_t GetProbabilityT(Int_t iType, Double_t mom, Int_t timbin) const;
48 Int_t GetNbins() const { return fNbins; }
49 Double_t GetBinSize() const { return fBinSize; }
7754cd1f 50
2745a409 51 protected:
b92cdef5 52
2745a409 53 void Init();
54 void CleanUp();
55 inline Int_t GetHistID(Int_t part, Int_t mom) const { return part*fNMom + mom; }
7754cd1f 56
2745a409 57 static Char_t *fpartName[5]; //! Names of particle species
7754cd1f 58
2745a409 59 Int_t fNMom; // Number of momenta
60 Double_t *fTrackMomentum; //[fNMom] Track momenta for which response functions are available
61 Double_t fMeanChargeRatio; // Ratio of mean charge from real Det. to prob. dist.
7754cd1f 62
2745a409 63 Int_t fNbins; // Number of energy bins
64 Double_t fBinSize; // Size of energy bin
7754cd1f 65
2745a409 66 TObjArray *fHistdEdx; // Prob. of dEdx for 5 particles and for several momenta
67 TObjArray *fHistTimeBin; // Prob. of max time bin for 5 particles and for several momenta
7754cd1f 68
2745a409 69 ClassDef(AliTRDCalPIDLQ, 1) // The TRD PID response container class
7754cd1f 70
b92cdef5 71};
7754cd1f 72
73#endif
74