Adding include files where needed for latest ROOT
[u/mrichter/AliRoot.git] / PWG2 / RESONANCES / AliRsnEvent.h
1 /**************************************************************************
2  * Copyright(c) 1998-1999, ALICE Experiment at CERN, All rights reserved. *
3  * See cxx source for full Copyright notice                               *
4  **************************************************************************/
5
6 /* $Id$ */
7
8 //-------------------------------------------------------------------------
9 //                      Class AliRsnEvent
10 //  Simple collection of reconstructed tracks, selected from an ESD event
11 // 
12 // author: A. Pulvirenti             (email: alberto.pulvirenti@ct.infn.it)
13 //-------------------------------------------------------------------------
14
15 #ifndef ALIRSNEVENT_H
16 #define ALIRSNEVENT_H
17
18 #include <TClonesArray.h>
19
20 #include "AliPID.h"
21
22 class AliRsnDaughter;
23
24 class AliRsnEvent : public TObject
25 {
26 public:
27                        AliRsnEvent();
28                        AliRsnEvent(const AliRsnEvent& copy);
29                                    AliRsnEvent& operator=(const AliRsnEvent& copy);
30                          
31         virtual       ~AliRsnEvent() {Clear("DELETE");}
32         
33         void           AddTrack(AliRsnDaughter track);
34         void           Clear(Option_t *option = "");
35         void           ComputeMultiplicity();
36         Int_t          GetMultiplicity() const {return fMultiplicity;}
37         Double_t       GetPrimaryVertexX() const {return fPVx;}
38         Double_t       GetPrimaryVertexY() const {return fPVy;}
39         Double_t       GetPrimaryVertexZ() const {return fPVz;}
40         void           GetPrimaryVertex(Double_t &x, Double_t &y, Double_t &z) const {x=fPVx;y=fPVy;z=fPVz;}
41         TClonesArray*  GetTracks(Char_t sign, AliPID::EParticleType type);
42         void           Init();
43         Int_t          PDG2Enum(Int_t pdgcode);
44         void           PrintTracks();
45         void           SetPrimaryVertex(Double_t x, Double_t y, Double_t z) {fPVx=x;fPVy=y;fPVz=z;}
46
47 private:
48
49         Double_t       fPVx;                              // position of
50         Double_t       fPVy;                              // primary
51         Double_t       fPVz;                              // vertex
52         
53         Int_t          fMultiplicity;             // global event multiplicity
54
55         TClonesArray  *fPos[AliPID::kSPECIES];    // collections of positive particles
56         TClonesArray  *fNeg[AliPID::kSPECIES];    // collections of negative particles
57         TClonesArray  *fPosNoPID;                 // collection of unidentified positive particles
58         TClonesArray  *fNegNoPID;                 // collection of unidentified positive particles
59         
60         ClassDef(AliRsnEvent,1);
61 };
62
63 #endif