1 /* Copyright(c) 1998-2007, ALICE Experiment at CERN, All rights reserved. *
2 * See cxx source for full Copyright notice */
6 //-------------------------------------------------------------------------
7 // AOD class to store tracklets
8 // Author: Jan Fiete Grosse-Oetringhaus, CERN
9 // Class created from AliMultiplicity
10 //-------------------------------------------------------------------------
12 #ifndef ALIAODTRACKLETS_H
13 #define ALIAODTRACKLETS_H
17 class AliAODTracklets : public TNamed
21 AliAODTracklets(const char* name, const char* title);
22 AliAODTracklets(const AliAODTracklets& evt);
23 AliAODTracklets& operator=(const AliAODTracklets& evt);
25 virtual ~AliAODTracklets();
27 void CreateContainer(Int_t nTracks);
28 void DeleteContainer();
30 Bool_t SetTracklet(Int_t pos, Double32_t theta, Double32_t phi, Double32_t deltaPhi, Int_t labelL1, Int_t labelL2);
32 Int_t GetNumberOfTracklets() const { return fNTracks; }
33 inline Double32_t GetTheta(Int_t i) const;
34 inline Double32_t GetPhi(Int_t i) const;
35 inline Double32_t GetDeltaPhi(Int_t i) const;
36 inline Int_t GetLabel(Int_t i, Int_t layer) const;
39 Int_t fNTracks; // Number of tracklets
40 Double32_t *fTheta; //[fNTracks] array with theta values
41 Double32_t *fPhi; //[fNTracks] array with phi values
42 Double32_t *fDeltaPhi; //[fNTracks] array with delta phi values
43 Int_t *fLabels; //[fNTracks] array with labels of cluster in L1 used for the tracklet
44 Int_t *fLabelsL2; //[fNTracks] array with labels of cluster in L2 used for the tracklet
47 ClassDef(AliAODTracklets, 3);
50 Double32_t AliAODTracklets::GetTheta(Int_t i) const
52 if (i>=0 && i<fNTracks)
57 Error("GetTheta","Invalid track number %d",i); return -9999.;
60 Double32_t AliAODTracklets::GetPhi(Int_t i) const
62 if (i>=0 && i<fNTracks)
67 Error("GetPhi","Invalid track number %d",i); return -9999.;
70 Double32_t AliAODTracklets::GetDeltaPhi(Int_t i) const
72 if (i>=0 && i<fNTracks)
77 Error("GetDeltaPhi","Invalid track number %d",i); return -9999.;
80 Int_t AliAODTracklets::GetLabel(Int_t i, Int_t layer) const
82 if (i>=0 && i<fNTracks)
84 return (layer == 0) ? fLabels[i] : fLabelsL2[i];
87 Error("GetLabel","Invalid track number %d",i); return -9999;