]>
Commit | Line | Data |
---|---|---|
1d99986f | 1 | #ifndef ALIESDFRIEND_H |
2 | #define ALIESDFRIEND_H | |
3 | ||
4 | //------------------------------------------------------------------------- | |
5 | // Class AliESDfriend | |
6 | // This class contains ESD additions | |
7 | // Origin: Iouri Belikov, CERN, Jouri.Belikov@cern.ch | |
8 | //------------------------------------------------------------------------- | |
9 | ||
10 | #include <TObject.h> | |
11 | #include <TClonesArray.h> | |
12 | ||
d65adc48 | 13 | #include "AliESDfriendTrack.h" |
73df58ab | 14 | |
15 | class AliESDVZEROfriend; | |
16 | class AliESDTZEROfriend; | |
1d99986f | 17 | |
18 | //_____________________________________________________________________________ | |
19 | class AliESDfriend : public TObject { | |
20 | public: | |
21 | AliESDfriend(); | |
22 | AliESDfriend(const AliESDfriend &); | |
c43af351 | 23 | AliESDfriend& operator=(const AliESDfriend& esd); |
1d99986f | 24 | virtual ~AliESDfriend(); |
25 | ||
26 | Int_t GetNumberOfTracks() const {return fTracks.GetEntriesFast();} | |
27 | AliESDfriendTrack *GetTrack(Int_t i) const { | |
e5a138f3 | 28 | return (AliESDfriendTrack *)fTracks.At(i); |
d75007f6 | 29 | } |
6d3a7bbf | 30 | Int_t GetEntriesInTracks() const {return fTracks.GetEntries();} |
d75007f6 | 31 | void AddTrack(const AliESDfriendTrack *t) { |
32 | new(fTracks[fTracks.GetEntriesFast()]) AliESDfriendTrack(*t); | |
1d99986f | 33 | } |
34 | ||
6d3a7bbf | 35 | void AddTrackAt(const AliESDfriendTrack *t, Int_t i) { |
36 | new(fTracks[i]) AliESDfriendTrack(*t); | |
37 | } | |
38 | ||
b090e6a3 | 39 | void SetVZEROfriend(AliESDVZEROfriend * obj); |
40 | AliESDVZEROfriend *GetVZEROfriend(){ return fESDVZEROfriend; } | |
73df58ab | 41 | void SetTZEROfriend(AliESDTZEROfriend * obj); |
42 | AliESDTZEROfriend *GetTZEROfriend(){ return fESDTZEROfriend; } | |
b090e6a3 | 43 | |
6d3a7bbf | 44 | void Ls(){ |
45 | return fTracks.ls(); | |
46 | } | |
47 | ||
d9880d92 | 48 | void Reset(); |
3e341ccb | 49 | // bit manipulation for filtering |
50 | void SetSkipBit(Bool_t skip){SetBit(23,skip);} | |
51 | Bool_t TestSkipBit() {return TestBit(23);} | |
ddfbc51a | 52 | |
5576d489 | 53 | //TPC cluster occupancy |
54 | Int_t GetNclustersTPC(UInt_t sector) const {return (sector<72)?fNclustersTPC[sector]:0;} | |
55 | Int_t GetNclustersTPCused(UInt_t sector) const {return (sector<72)?fNclustersTPCused[sector]:0;} | |
56 | void SetNclustersTPC(UInt_t sector, Int_t occupancy) {if (sector<72) fNclustersTPC[sector]=occupancy;} | |
57 | void SetNclustersTPCused(UInt_t sector, Int_t occupancy) {if (sector<72) fNclustersTPCused[sector]=occupancy;} | |
58 | ||
1d99986f | 59 | protected: |
60 | TClonesArray fTracks; // ESD friend tracks | |
b090e6a3 | 61 | AliESDVZEROfriend *fESDVZEROfriend; // VZERO object containing complete raw data |
73df58ab | 62 | AliESDTZEROfriend *fESDTZEROfriend; // TZERO calibration object |
5576d489 | 63 | |
64 | Int_t fNclustersTPC[72]; //cluster occupancy per sector per sector | |
65 | Int_t fNclustersTPCused[72]; //number of clusters used in tracking per sector | |
b090e6a3 | 66 | |
1049e059 | 67 | ClassDef(AliESDfriend,4) // ESD friend |
1d99986f | 68 | }; |
69 | ||
70 | #endif | |
71 | ||
72 |