]>
Commit | Line | Data |
---|---|---|
108615fc | 1 | #ifndef ALIL3TRACKARRAY_H |
2 | #define ALIL3TRACKARRAY_H | |
3 | ||
4 | #include "AliL3RootTypes.h" | |
5 | class AliL3ConfMapTrack; | |
6 | class AliL3Track; | |
7 | class AliL3TrackSegmentData; | |
108615fc | 8 | |
9 | class AliL3TrackArray{ | |
10 | private: | |
11 | void DeleteArray(); | |
12 | ||
13 | Char_t fTrackType; | |
14 | Int_t fSize; | |
15 | Bool_t *fIsPresent;//! | |
16 | Int_t fNAbsent; | |
17 | ||
18 | AliL3Track **fTrack;//! | |
19 | Int_t fNTracks; | |
20 | ||
21 | UInt_t WriteConfMapTracks(AliL3TrackSegmentData* tr); | |
22 | ||
23 | public: | |
24 | AliL3TrackArray(); | |
25 | AliL3TrackArray(Int_t ntrack); | |
26 | AliL3TrackArray(char* tracktype,Int_t ntrack); | |
27 | AliL3TrackArray(char* tracktype); | |
28 | virtual ~AliL3TrackArray(); | |
29 | Int_t GetTrackType(){return fTrackType;} | |
30 | Int_t GetSize(){return fSize;} | |
31 | Bool_t SetSize(Int_t newsize=2000); | |
32 | ||
33 | Int_t GetNPresent(){return (fNTracks- fNAbsent);} | |
34 | ||
35 | Int_t GetNTracks(){return fNTracks;} | |
36 | AliL3Track *NextTrack(); | |
37 | AliL3Track *GetCheckedTrack(Int_t t){if(fIsPresent[t]) return fTrack[t]; return 0;} | |
38 | AliL3Track *GetTrack(Int_t t){return fTrack[t];} | |
39 | ||
40 | void Remove(Int_t track); | |
41 | void RemoveLast() {fNTracks--;} | |
42 | void Compress(); | |
43 | void Reset(); | |
44 | void QSort(); | |
45 | void QSort( AliL3Track **a, Int_t first, Int_t last); | |
46 | Int_t TrackCompare(AliL3Track *a, AliL3Track *b); | |
47 | ||
48 | ||
494fad94 | 49 | void FillTracks(Int_t ntracks, AliL3TrackSegmentData* tr,Int_t slice); //Fill tracks and transform |
108615fc | 50 | void FillTracks(Int_t ntracks, AliL3TrackSegmentData* tr); //Fill tracks |
51 | UInt_t WriteTracks(AliL3TrackSegmentData* tr); //Write tracks | |
52 | UInt_t WriteTracks(UInt_t & ntracks,AliL3TrackSegmentData* tr); //Write tracks | |
53 | UInt_t GetOutSize(); | |
54 | UInt_t GetOutCount(){return (UInt_t) GetNPresent();} | |
71df269a | 55 | void AddTracks(AliL3TrackArray *newtrack,Bool_t remove_old=kTRUE,Int_t slice=-1);//add all Tracks to this |
2e843b99 | 56 | void AddLast(AliL3Track *track); |
57 | ||
71df269a | 58 | ClassDef(AliL3TrackArray,1) //Track array class |
108615fc | 59 | }; |
60 | ||
61 | #endif |