1 #ifndef ALIITSUTRACKHYP_H
2 #define ALIITSUTRACKHYP_H
6 #include "AliITSUSeed.h"
9 // Container for track hypotheses
11 class AliITSUTrackHyp: public TObject
14 AliITSUTrackHyp(Int_t nlr=0);
15 AliITSUTrackHyp(const AliITSUTrackHyp& src);
16 AliITSUTrackHyp &operator=(const AliITSUTrackHyp &src);
17 virtual ~AliITSUTrackHyp();
19 Int_t GetNLayers() const {return fNLayers;}
20 Int_t GetNSeeds(Int_t lr) const {return lr<fNLayers ? fLayerSeeds[lr].GetEntriesFast() : 1;}
21 AliITSUSeed* GetSeed(Int_t lr, Int_t id) const;
22 AliITSUSeed* GetESDSeed() const {return fESDSeed;}
23 const TObjArray* GetLayerSeeds(Int_t lr) const {return lr<fNLayers ? &fLayerSeeds[lr] : 0;}
24 void AddSeed(AliITSUSeed* seed, Int_t lr);
25 void SetESDSeed(AliITSUSeed* seed) {fESDSeed = seed;}
29 virtual void Print(Option_t* option = "") const;
32 UChar_t fNLayers; // number of layers
33 AliITSUSeed* fESDSeed; // bare esd (TPC) seed
34 TObjArray* fLayerSeeds; // seeds of given layer
36 ClassDef(AliITSUTrackHyp,1)
39 //___________________________________________________________________
40 inline AliITSUSeed* AliITSUTrackHyp::GetSeed(Int_t lr, Int_t id) const
42 //return requested seed of given layer, no check is done on seed index
43 return lr<fNLayers ? (AliITSUSeed*)fLayerSeeds[lr].UncheckedAt(id) : fESDSeed;
46 //___________________________________________________________________
47 inline void AliITSUTrackHyp::AddSeed(AliITSUSeed* seed, Int_t lr)
49 //return requested seed of given layer, no check is done
50 if (lr<fNLayers) fLayerSeeds[lr].AddLast(seed);