]> git.uio.no Git - u/mrichter/AliRoot.git/blob - STEER/AliESDfriend.h
Wrong versiion was committed before, this is the correct one
[u/mrichter/AliRoot.git] / STEER / AliESDfriend.h
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
13 #include "AliESDfriendTrack.h"
14
15 class AliESDVZEROfriend;
16 class AliESDTZEROfriend;
17
18 //_____________________________________________________________________________
19 class AliESDfriend : public TObject {
20 public:
21   AliESDfriend();
22   AliESDfriend(const AliESDfriend &);
23   AliESDfriend& operator=(const AliESDfriend& esd);  
24   virtual ~AliESDfriend();
25
26   Int_t GetNumberOfTracks() const {return fTracks.GetEntriesFast();}
27   AliESDfriendTrack *GetTrack(Int_t i) const {
28      return (AliESDfriendTrack *)fTracks.At(i);
29   }
30   Int_t GetEntriesInTracks() const {return fTracks.GetEntries();}
31   void AddTrack(const AliESDfriendTrack *t) {
32      new(fTracks[fTracks.GetEntriesFast()]) AliESDfriendTrack(*t);
33   }
34
35   void AddTrackAt(const AliESDfriendTrack *t, Int_t i) {
36      new(fTracks[i]) AliESDfriendTrack(*t);
37   }
38
39   void SetVZEROfriend(AliESDVZEROfriend * obj);
40   AliESDVZEROfriend *GetVZEROfriend(){ return fESDVZEROfriend; }
41   void SetTZEROfriend(AliESDTZEROfriend * obj);
42   AliESDTZEROfriend *GetTZEROfriend(){ return fESDTZEROfriend; }
43
44   void Ls(){
45           return fTracks.ls();
46   }
47
48   // bit manipulation for filtering
49   void SetSkipBit(Bool_t skip){SetBit(23,skip);}
50   Bool_t TestSkipBit() {return TestBit(23);}
51
52 protected:
53   TClonesArray fTracks;    // ESD friend tracks
54   AliESDVZEROfriend *fESDVZEROfriend; // VZERO object containing complete raw data
55   AliESDTZEROfriend *fESDTZEROfriend; // TZERO calibration object
56
57   ClassDef(AliESDfriend,3) // ESD friend
58 };
59
60 #endif
61
62