]>
Commit | Line | Data |
---|---|---|
06351446 | 1 | // |
e0baff8c | 2 | // Class AliRsnPIDIndex |
06351446 | 3 | // |
4 | // It sorts the indexes of all tracks in an AliRsnEvent | |
5 | // for a fast retrieval of them according to charge and PID. | |
6 | // | |
7 | // author: M. Vala (email: martin.vala@cern.ch) | |
8 | // | |
9 | ||
10 | #ifndef AliRsnPIDIndex_h | |
11 | #define AliRsnPIDIndex_h | |
12 | ||
13 | #include <TArrayI.h> | |
14 | #include "AliRsnPID.h" | |
15 | ||
16 | class AliRsnPIDIndex : public TObject | |
17 | { | |
aec0ec32 | 18 | public: |
06351446 | 19 | |
e0baff8c | 20 | AliRsnPIDIndex(Int_t num = 1000); |
aec0ec32 | 21 | AliRsnPIDIndex(const AliRsnPIDIndex ©); |
06351446 | 22 | AliRsnPIDIndex& operator= (const AliRsnPIDIndex& copy); |
23 | ||
24 | virtual ~AliRsnPIDIndex(); | |
25 | ||
26 | void Print(Option_t *option = "") const; | |
27 | ||
28 | void AddIndex(const Int_t index, Char_t sign, AliRsnPID::EType type); | |
29 | void AddIndex(const Int_t index, Short_t sign, Int_t type); | |
30 | void SetCorrectIndexSize(); | |
31 | ||
aec0ec32 | 32 | TArrayI* GetTracksArray(Char_t sign, AliRsnPID::EType type); |
33 | TArrayI* GetCharged(Char_t sign); | |
06351446 | 34 | |
aec0ec32 | 35 | private: |
06351446 | 36 | |
aec0ec32 | 37 | Int_t ChargeIndex(Char_t sign) const; |
06351446 | 38 | |
39 | TArrayI fIndex[2][AliRsnPID::kSpecies+1]; // index arrays of pos/neg particles of each PID | |
40 | Int_t fNumOfIndex[2][AliRsnPID::kSpecies+1]; //! array size | |
41 | ||
aec0ec32 | 42 | ClassDef(AliRsnPIDIndex, 1); |
06351446 | 43 | }; |
44 | ||
45 | #endif |