]> git.uio.no Git - u/mrichter/AliRoot.git/blame - STEER/ESD/AliESDfriend.h
Updates for new TOF data structure: Setters (F. Noferini)
[u/mrichter/AliRoot.git] / STEER / ESD / AliESDfriend.h
CommitLineData
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
15class AliESDVZEROfriend;
16class AliESDTZEROfriend;
1d99986f 17
18//_____________________________________________________________________________
19class AliESDfriend : public TObject {
20public:
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 59protected:
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