next50 trigger mask in AliHLTGlobalEsdConverterComponent
[u/mrichter/AliRoot.git] / TRD / AliTRDgtuTMU.h
CommitLineData
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"
52c19022 15
16#include "AliTRDtrackletGTU.h"
17#include "AliTRDgtuParam.h"
18
19class TTree;
6dbd105b
JK
20class TList;
21class TClonesArray;
52c19022 22class TBranch;
23class AliTRDtrackGTU;
24class AliESDEvent;
25
26class AliTRDgtuTMU : public TObject {
27 public:
28 AliTRDgtuTMU(Int_t stack = -1, Int_t sector = -1);
29 ~AliTRDgtuTMU();
30
31 Bool_t SetSector(Int_t sector);
32 Bool_t SetStack(Int_t stack);
33
44eafcf2 34 Bool_t AddTracklet(AliTRDtrackletGTU *tracklet, Int_t link);
52c19022 35
34d48b8f 36 Bool_t RunTMU(TList *ListOfTracks = 0x0, AliESDEvent *esd = 0x0, Int_t outLabel = -1);
52c19022 37 Bool_t Reset();
38
39 // ----- successive stages of the processing in the TMU -----
40 Bool_t RunInputUnit(Int_t layer);
41 Bool_t RunZChannelUnit(Int_t layer);
42 Bool_t RunTrackFinder(Int_t zchannel, TList* ListOfTracks);
5f006bd7 43 Bool_t RunTrackMerging(TList* ListOfTracks);
52c19022 44 Bool_t RunTrackReconstruction(TList* ListOfTracks);
45
5f006bd7 46 Bool_t CalculateTrackParams(AliTRDtrackGTU *track);
6419bebb 47 Bool_t Uniquifier(const TList* inlist, TList *outlist);
4ff7ed2b 48 Bool_t CalculatePID(AliTRDtrackGTU *track);
52c19022 49
50protected:
44eafcf2 51 TObjArray **fTracklets; // holding all tracklets per link
52 TObjArray **fTrackletsPostInput; // holding all tracklets of a layer
53 // after sorting/calculation in input units
52c19022 54 TList **fZChannelTracklets; // holding all tracklets for layer and z-channel
6dbd105b 55 TClonesArray *fTrackArray; // array of tracks
4cc89512 56 TList **fTracks; // lists of tracks
52c19022 57 AliTRDgtuParam *fGtuParam; // pointer to the instance of the GtuParam class
58
59 Int_t fStack; // Stack of this TMU
60 Int_t fSector; // Sector of this TMU
61
62 private:
63 AliTRDgtuTMU(const AliTRDgtuTMU &rhs); // not implemented
64 AliTRDgtuTMU& operator=(const AliTRDgtuTMU &rhs); // not implemented
65
66 ClassDef(AliTRDgtuTMU, 1);
67};
68
69#endif