]> git.uio.no Git - u/mrichter/AliRoot.git/blob - TRD/AliTRDpidLQ.h
1fdd521c243457df70f638011e47de0e801750a6
[u/mrichter/AliRoot.git] / TRD / AliTRDpidLQ.h
1 #ifndef ALITRDPIDLQ_H
2 #define ALITRDPIDLQ_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 #include "AliTRDpid.h"
9
10 class AliTRDpidLQ : public AliTRDpid {
11
12  public:
13
14   AliTRDpidLQ();
15   AliTRDpidLQ(const char* name, const char* title);
16   AliTRDpidLQ(const AliTRDpidLQ &p);
17   virtual ~AliTRDpidLQ();
18   AliTRDpidLQ &operator=(const AliTRDpidLQ &p);
19
20   virtual void          Copy(TObject &p);
21   virtual Bool_t        Init();
22   virtual Bool_t        AssignLikelihood(AliTRDtrack *t);
23   virtual Bool_t        CreateHistograms(const Int_t   nmom
24                                        , const Float_t minmom
25                                        , const Float_t maxmom);
26   virtual Bool_t        FillSpectra(const AliTRDtrack *t);
27
28   Int_t         GetIndex(const AliTRDtrack *t);
29   Int_t         GetIndex(const Int_t imom, const Int_t ipid);
30   Int_t         GetIndex(const Float_t mom, const Int_t ipid);
31
32           TObjArray*    GetHist() const                     { return fHist;        };
33
34           Float_t       GetChargeMin() const                { return fChargeMin;   };
35           Int_t         GetNClusterMin() const              { return fNClusterMin; };
36
37           Int_t         GetNLh() const                      { return fNLh;         };
38           Float_t       GetMinLh() const                    { return fMinLh;       };
39           Float_t       GetMaxLh() const                    { return fMaxLh;       };
40
41           void          SetChargeMin(const Float_t min)     { fChargeMin   = min;  };
42           void          SetNClusterMin(const Int_t min)     { fNClusterMin = min;  };
43
44           void          SetNLh(const Int_t n)               { fNLh         = n;    };
45           void          SetMinLh(const Float_t min)         { fMinLh       = min;  };
46           void          SetMaxLh(const Float_t max)         { fMaxLh       = max;  };
47
48  protected:
49
50   Int_t           fNMom;             //  Number of momentum bins
51   Float_t         fMinMom;           //  Lower momentum
52   Float_t         fMaxMom;           //  Upper momentum
53   Float_t         fWidMom;           //  Width of the momentum bins
54   TObjArray      *fHist;             //  Array of histograms
55
56   Int_t           fNLh;              //  Number of bins of the likelihood spectra
57   Float_t         fMinLh;            //  Lower range of the likelihood spectra
58   Float_t         fMaxLh;            //  Upper range of the likelihood spectra
59
60   Float_t         fChargeMin;        //  Minimum charge required in one plane
61   Int_t           fNClusterMin;      //  Minimum number of clusters required in one plane
62
63   ClassDef(AliTRDpidLQ,1)            //  Assigns e/pi propability to the tracks based on LQ method 
64
65 };
66 #endif