]>
Commit | Line | Data |
---|---|---|
51a0ce25 | 1 | /************************************************************************** |
2 | * Copyright(c) 1998-1999, ALICE Experiment at CERN, All rights reserved. * | |
3 | * * | |
4 | * Author: The ALICE Off-line Project. * | |
5 | * Contributors are mentioned in the code where appropriate. * | |
6 | * * | |
7 | * Permission to use, copy, modify and distribute this software and its * | |
8 | * documentation strictly for non-commercial purposes is hereby granted * | |
9 | * without fee, provided that the above copyright notice appears in all * | |
10 | * copies and that both the copyright notice and this permission notice * | |
11 | * appear in the supporting documentation. The authors make no claims * | |
12 | * about the suitability of this software for any purpose. It is * | |
13 | * provided "as is" without express or implied warranty. * | |
14 | **************************************************************************/ | |
15 | // | |
16 | // Container for the reference distributions for the TRD PID | |
17 | // Provides storing of the references together with the mometum steps | |
18 | // they were taken | |
19 | // More information can be found in the implementation file | |
20 | // | |
21 | #ifndef ALITRDPIDREFERENCE_H | |
22 | #define ALITRDPIDREFERENCE_H | |
23 | ||
24 | #include <TNamed.h> | |
25 | #include <TArrayF.h> | |
26 | #include "AliPID.h" | |
27 | ||
28 | class TObjArray; | |
29 | ||
30 | class AliTRDPIDReference : public TNamed{ | |
31 | public: | |
32 | AliTRDPIDReference(); | |
33 | AliTRDPIDReference(const Char_t *name); | |
34 | AliTRDPIDReference(const AliTRDPIDReference &ref); | |
35 | AliTRDPIDReference &operator=(const AliTRDPIDReference &ref); | |
36 | ~AliTRDPIDReference(); | |
37 | ||
38 | void SetNumberOfMomentumBins(Int_t nBins, Float_t *momenta); | |
39 | void AddReference(TObject *histo, AliPID::EParticleType spec, Int_t pbin); | |
40 | ||
41 | // Derive reference | |
42 | TObject *GetLowerReference(AliPID::EParticleType spec, Float_t p, Float_t &pLower) const; | |
43 | TObject *GetUpperReference(AliPID::EParticleType spec, Float_t p, Float_t &pUpper) const; | |
44 | ||
45 | Int_t GetNumberOfMomentumBins() const { return fMomentumBins.GetSize(); } | |
46 | void Print(const Option_t *) const; | |
47 | private: | |
48 | enum{ | |
49 | kIsOwner = BIT(14) | |
50 | }; | |
51 | TObjArray *fRefContainer; // Histogram container | |
52 | TArrayF fMomentumBins; // Momentum Bins | |
53 | ||
54 | ClassDef(AliTRDPIDReference, 1) // Container for TRD references | |
55 | }; | |
56 | #endif | |
57 |