]> git.uio.no Git - u/mrichter/AliRoot.git/blame - EVGEN/AliGenReaderEMD.h
Use SetProjectile and SetTarget from AliMC.
[u/mrichter/AliRoot.git] / EVGEN / AliGenReaderEMD.h
CommitLineData
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// --------------------------------------------------------------------------
14class AliGenReaderEMD : public AliGenReader
15{
16 public:
17 AliGenReaderEMD();
18
19 AliGenReaderEMD(const AliGenReaderEMD &reader):AliGenReader(reader)
20 {reader.Copy(*this);}
21 virtual ~AliGenReaderEMD();
22 AliGenReaderEMD & operator=(const AliGenReaderEMD & rhs);
23 // Initialise
24 virtual void Init();
25 // Read
26 virtual Int_t NextEvent();
27 virtual TParticle* NextParticle();
28 virtual void RewindEvent(){;}
29 // Setter
30 void SetIPSide(Int_t iside) {fIPSide = iside;}
31 void SetPcToTrack(Int_t ipart) {fPcToTrack = ipart;}
32 void SetStartEvent(Int_t nev) {fStartEvent = nev;}
33
34 protected:
35 Int_t fStartEvent; // points to the first event to read
36 Int_t fNcurrent; // points to the current event to read
37 Int_t fNparticle; // number of particles
38 TTree *fTreeNtuple; // pointer to the TTree
39 //
40 Int_t fIPSide; // ZDC arm relative to IP
41 Int_t fPcToTrack; // flag for particles to be tracked
42 //
43 // --- Declaration of leaves types
44 // **** neutrons
45 Int_t fNnLeft; // No. of neutrons emitted on left side
46 Float_t fEnLeft; // Forward energy Left side
47 Float_t fPxnLeft[70]; // momentum x component - left side
48 Float_t fPynLeft[70]; // momentum y component - left side
49 Float_t fPznLeft[70]; // momentum z component - left side
50 //
51 Int_t fNnRight; // No. of neutrons emitted on right side
52 Float_t fEnRight; // Forward energy Right side
53 Float_t fPxnRight[70]; // momentum x component - right side
54 Float_t fPynRight[70]; // momentum y component - right side
55 Float_t fPznRight[70]; // momentum z component - right side
56 //
57 // **** protons
58 Int_t fNpLeft; // No. of protons emitted on left side
59 Float_t fEtapLeft; // Forward energy Left side
60 Float_t fPxpLeft[70]; // momentum x component - left side
61 Float_t fPypLeft[70]; // momentum y component - left side
62 Float_t fPzpLeft[70]; // momentum z component - left side
63 //
64 Int_t fNpRight; // No. of protons emitted on right side
65 Float_t fEtapRight; // Forward energy Right side
66 Float_t fPxpRight[70]; // momentum x component - right side
67 Float_t fPypRight[70]; // momentum y component - right side
68 Float_t fPzpRight[70]; // momentum z component - right side
69
70 private:
71 void Copy(TObject&) const;
72 ClassDef(AliGenReaderEMD,1) // Class to read EMD data
73};
74#endif
75
76
77
78
79
80