]>
Commit | Line | Data |
---|---|---|
52c19022 | 1 | #ifndef ALITRDGTUTMU_H |
2 | #define ALITRDGTUTMU_H | |
3 | /* Copyright(c) 1998-1999, ALICE Experiment at CERN, All rights reserved. * | |
4 | * See cxx source for full Copyright notice */ | |
5 | ||
6 | /* $Id: AliTRDgtuTMU.h 27496 2008-07-22 08:35:45Z cblume $ */ | |
7 | ||
8 | //-------------------------------------------------------------------- | |
9 | // | |
10 | // This class simulates the tracklet processing in a TMU | |
11 | // | |
12 | //-------------------------------------------------------------------- | |
13 | ||
14 | #include "TObject.h" | |
15 | #include "TList.h" | |
16 | ||
17 | #include "AliTRDtrackletGTU.h" | |
18 | #include "AliTRDgtuParam.h" | |
19 | ||
20 | class TTree; | |
21 | class TBranch; | |
22 | class AliTRDtrackGTU; | |
23 | class AliESDEvent; | |
24 | ||
25 | class AliTRDgtuTMU : public TObject { | |
26 | public: | |
27 | AliTRDgtuTMU(Int_t stack = -1, Int_t sector = -1); | |
28 | ~AliTRDgtuTMU(); | |
29 | ||
30 | Bool_t SetSector(Int_t sector); | |
31 | Bool_t SetStack(Int_t stack); | |
32 | ||
44eafcf2 | 33 | Bool_t AddTracklet(AliTRDtrackletGTU *tracklet, Int_t link); |
52c19022 | 34 | |
35 | Bool_t RunTMU(TList *ListOfTracks = 0x0, AliESDEvent *esd = 0x0); | |
36 | Bool_t Reset(); | |
37 | ||
38 | // ----- successive stages of the processing in the TMU ----- | |
39 | Bool_t RunInputUnit(Int_t layer); | |
40 | Bool_t RunZChannelUnit(Int_t layer); | |
41 | Bool_t RunTrackFinder(Int_t zchannel, TList* ListOfTracks); | |
5f006bd7 | 42 | Bool_t RunTrackMerging(TList* ListOfTracks); |
52c19022 | 43 | Bool_t RunTrackReconstruction(TList* ListOfTracks); |
44 | ||
5f006bd7 | 45 | Bool_t CalculateTrackParams(AliTRDtrackGTU *track); |
6419bebb | 46 | Bool_t Uniquifier(const TList* inlist, TList *outlist); |
4ff7ed2b | 47 | Bool_t CalculatePID(AliTRDtrackGTU *track); |
52c19022 | 48 | |
49 | protected: | |
44eafcf2 | 50 | TObjArray **fTracklets; // holding all tracklets per link |
51 | TObjArray **fTrackletsPostInput; // holding all tracklets of a layer | |
52 | // after sorting/calculation in input units | |
52c19022 | 53 | TList **fZChannelTracklets; // holding all tracklets for layer and z-channel |
4cc89512 | 54 | TList **fTracks; // lists of tracks |
52c19022 | 55 | AliTRDgtuParam *fGtuParam; // pointer to the instance of the GtuParam class |
56 | ||
57 | Int_t fStack; // Stack of this TMU | |
58 | Int_t fSector; // Sector of this TMU | |
59 | ||
60 | private: | |
61 | AliTRDgtuTMU(const AliTRDgtuTMU &rhs); // not implemented | |
62 | AliTRDgtuTMU& operator=(const AliTRDgtuTMU &rhs); // not implemented | |
63 | ||
64 | ClassDef(AliTRDgtuTMU, 1); | |
65 | }; | |
66 | ||
67 | #endif |