]> git.uio.no Git - u/mrichter/AliRoot.git/blob - HBTAN/AliHBTEvent.h
Corrections to obey the coding conventions
[u/mrichter/AliRoot.git] / HBTAN / AliHBTEvent.h
1 #ifndef ALIHBTEvent_H
2 #define ALIHBTEvent_H
3 //_________________________________________________________________________
4 ///////////////////////////////////////////////////////////////////////////
5 //                                                                       //
6 // class AliHBTEvent                                                     //
7 //                                                                       //
8 // This class stores HBT perticles for one event                         //
9 // more info: http://alisoft.cern.ch/people/skowron/analyzer/index.html  //
10 //                                                                       //
11 ///////////////////////////////////////////////////////////////////////////
12
13 #include <TObject.h>
14
15 class AliHBTParticle;
16 class TParticle;
17
18 class AliHBTEvent: public TObject
19  {
20   public:
21     AliHBTEvent();
22     virtual ~AliHBTEvent();
23
24     AliHBTParticle* GetParticle(Int_t n);  //gets particle 
25     AliHBTParticle* GetParticleSafely(Int_t n); //gets particle with index check
26     
27     void    AddParticle(AliHBTParticle* hbtpart); //adds particle to the event
28     void    AddParticle(TParticle* part); //adds particle to the event
29     void    AddParticle(Int_t pdg, Double_t px, Double_t py, Double_t pz, Double_t etot,
30                         Double_t vx, Double_t vy, Double_t vz, Double_t time);
31     
32     Int_t   GetNumberOfParticles() const;
33     void    Reset(); //deletes all entries
34     void    SetOwner(Bool_t owns = kTRUE){ fOwner = owns; }
35     Bool_t  IsOwner() const {return fOwner;}
36
37   protected:
38     Int_t  fSize;       //!current size of the array
39     AliHBTParticle ** fParticles; //!array of pointers to the particles
40     Int_t  fNParticles; //!number of particles in Event
41     Bool_t fOwner;      //flag if that event owns the 
42     void   Expand();    //expands the array if necessary
43
44   private:
45     const static UInt_t fgkInitEventSize; //initial number of the array
46                                          //if expanded, this size is used also
47   public:
48     ClassDef(AliHBTEvent,1)
49  };
50 /**************************************************************************/ 
51  
52 inline 
53 AliHBTParticle* AliHBTEvent::GetParticle(Int_t n)
54  {
55  //Gets particle without boundary check
56    return fParticles[n];
57  }
58
59 /**************************************************************************/ 
60  
61 inline 
62 Int_t  AliHBTEvent::GetNumberOfParticles() const
63  {
64  //reurns number of particles in this event
65    return fNParticles;
66  }
67  
68 #endif