]>
Commit | Line | Data |
---|---|---|
f1d1affa | 1 | #ifndef ALIGENREADEREMD_H |
2 | #define ALIGENREADEREMD_H | |
3 | /* Copyright(c) 1998-1999, ALICE Experiment at CERN, All rights reserved. * | |
4 | * See cxx source for full Copyright notice */ | |
5 | ||
6 | // Class to read events from external (TNtupla) file | |
7 | // Events -> neutron removal by EM dissociation of Pb nuclei | |
8 | // Data from RELDIS code (by I. Pshenichov) | |
9 | // | |
10 | #include "AliGenReader.h" | |
11 | ||
12 | ||
13 | // -------------------------------------------------------------------------- | |
14 | class AliGenReaderEMD : public AliGenReader | |
15 | { | |
16 | public: | |
17 | AliGenReaderEMD(); | |
18 | ||
1c56e311 | 19 | AliGenReaderEMD(const AliGenReaderEMD &reader); |
f1d1affa | 20 | virtual ~AliGenReaderEMD(); |
21 | AliGenReaderEMD & operator=(const AliGenReaderEMD & rhs); | |
22 | // Initialise | |
23 | virtual void Init(); | |
24 | // Read | |
25 | virtual Int_t NextEvent(); | |
26 | virtual TParticle* NextParticle(); | |
27 | virtual void RewindEvent(){;} | |
28 | // Setter | |
29 | void SetIPSide(Int_t iside) {fIPSide = iside;} | |
30 | void SetPcToTrack(Int_t ipart) {fPcToTrack = ipart;} | |
31 | void SetStartEvent(Int_t nev) {fStartEvent = nev;} | |
32 | ||
33 | protected: | |
34 | Int_t fStartEvent; // points to the first event to read | |
35 | Int_t fNcurrent; // points to the current event to read | |
36 | Int_t fNparticle; // number of particles | |
37 | TTree *fTreeNtuple; // pointer to the TTree | |
38 | // | |
39 | Int_t fIPSide; // ZDC arm relative to IP | |
40 | Int_t fPcToTrack; // flag for particles to be tracked | |
41 | // | |
42 | // --- Declaration of leaves types | |
43 | // **** neutrons | |
44 | Int_t fNnLeft; // No. of neutrons emitted on left side | |
45 | Float_t fEnLeft; // Forward energy Left side | |
46 | Float_t fPxnLeft[70]; // momentum x component - left side | |
47 | Float_t fPynLeft[70]; // momentum y component - left side | |
48 | Float_t fPznLeft[70]; // momentum z component - left side | |
49 | // | |
50 | Int_t fNnRight; // No. of neutrons emitted on right side | |
51 | Float_t fEnRight; // Forward energy Right side | |
52 | Float_t fPxnRight[70]; // momentum x component - right side | |
53 | Float_t fPynRight[70]; // momentum y component - right side | |
54 | Float_t fPznRight[70]; // momentum z component - right side | |
55 | // | |
56 | // **** protons | |
57 | Int_t fNpLeft; // No. of protons emitted on left side | |
58 | Float_t fEtapLeft; // Forward energy Left side | |
59 | Float_t fPxpLeft[70]; // momentum x component - left side | |
60 | Float_t fPypLeft[70]; // momentum y component - left side | |
61 | Float_t fPzpLeft[70]; // momentum z component - left side | |
62 | // | |
63 | Int_t fNpRight; // No. of protons emitted on right side | |
64 | Float_t fEtapRight; // Forward energy Right side | |
65 | Float_t fPxpRight[70]; // momentum x component - right side | |
66 | Float_t fPypRight[70]; // momentum y component - right side | |
67 | Float_t fPzpRight[70]; // momentum z component - right side | |
68 | ||
69 | private: | |
70 | void Copy(TObject&) const; | |
71 | ClassDef(AliGenReaderEMD,1) // Class to read EMD data | |
72 | }; | |
73 | #endif | |
74 | ||
75 | ||
76 | ||
77 | ||
78 | ||
79 |