Update master to aliroot
[u/mrichter/AliRoot.git] / STEER / STEERBase / AliCollisionGeometry.h
CommitLineData
3126aea8 1#ifndef ALICOLLISIONGEOMETRY_H
2#define ALICOLLISIONGEOMETRY_H
3/* Copyright(c) 198-1999, ALICE Experiment at CERN, All rights reserved. *
4 * See cxx source for full Copyright notice */
5
6/* $Id$ */
fdf65bb5 7//-------------------------------------------------------------------------
8// Class AliCollisionGeometry
9// This is a class to handle the collison geometry defined by
10// the generator
11//-------------------------------------------------------------------------
3126aea8 12
116cbefd 13#include <Rtypes.h>
3126aea8 14
15class AliCollisionGeometry
16{
17public:
90e48c0c 18 AliCollisionGeometry();
2f3fd0f1 19 AliCollisionGeometry(const AliCollisionGeometry& cgeo);
3126aea8 20 virtual ~AliCollisionGeometry(){;}
21 // Getters
fdf65bb5 22 Float_t ImpactParameter() const {return fImpactParameter;}
23 Float_t ReactionPlaneAngle() const {return fReactionPlaneAngle;}
24 Int_t HardScatters() const {return fNHardScatters;}
25 Int_t ProjectileParticipants() const {return fNProjectileParticipants;}
26 Int_t TargetParticipants() const {return fNTargetParticipants;}
27 Int_t ProjSpectatorsn() const {return fProjectileSpecn;}
28 Int_t ProjSpectatorsp() const {return fProjectileSpecp;}
29 Int_t TargSpectatorsn() const {return fTargetSpecn; }
30 Int_t TargSpectatorsp() const {return fTargetSpecp; }
31 Int_t NN() const {return fNNColl;}
32 Int_t NNw() const {return fNNwColl;}
33 Int_t NwN() const {return fNwNColl;}
34 Int_t NwNw() const {return fNwNwColl;}
50a78f7f 35 void SetNDiffractive(Int_t sd1, Int_t sd2, Int_t sdd) {fNSD1 = sd1; fNSD2 = sd2; fNDD = sdd;}
3126aea8 36 // Setters
37 void SetImpactParameter(Float_t b) {fImpactParameter=b;}
2391ec2e 38 void SetReactionPlaneAngle(Float_t phi) {fReactionPlaneAngle = phi;}
3126aea8 39 void SetHardScatters(Int_t n) {fNHardScatters=n;}
40 void SetParticipants(Int_t np, Int_t nt)
41 {fNProjectileParticipants=np, fNTargetParticipants=nt;}
42 void SetCollisions(Int_t nn, Int_t nnw, Int_t nwn, Int_t nwnw)
43 {fNNColl=nn, fNNwColl=nnw, fNwNColl=nwn, fNwNwColl=nwnw;}
265fb9b0 44 void SetSpectators(Int_t nprojspecn, Int_t nprojspecp, Int_t ntargspecn, Int_t ntargspecp)
45 {fProjectileSpecn=nprojspecn, fProjectileSpecp=nprojspecp,
46 fTargetSpecn=ntargspecn, fTargetSpecp=ntargspecp;}
50a78f7f 47 void GetNDiffractive(Int_t& sd1, Int_t& sd2, Int_t& sdd) {sd1 = fNSD1; sd2 = fNSD2; sdd = fNDD;}
3126aea8 48 protected:
49 Int_t fNHardScatters; // Number of hard scatterings
50 Int_t fNProjectileParticipants; // Number of projectiles participants
51 Int_t fNTargetParticipants; // Number of target participants
52 Int_t fNNColl; // Number of N-N collisions
53 Int_t fNNwColl; // Number of N-Nwounded collisions
54 Int_t fNwNColl; // Number of Nwounded-N collisons
55 Int_t fNwNwColl; // Number of Nwounded-Nwounded collisions
265fb9b0 56 Int_t fProjectileSpecn; // Num. of spectator neutrons from projectile nucleus
57 Int_t fProjectileSpecp; // Num. of spectator protons from projectile nucleus
58 Int_t fTargetSpecn; // Num. of spectator neutrons from target nucleus
59 Int_t fTargetSpecp; // Num. of spectator protons from target nucleus
3126aea8 60 Float_t fImpactParameter; // Impact Parameter
2391ec2e 61 Float_t fReactionPlaneAngle; // Reaction plane angle
50a78f7f 62 Int_t fNSD1; // number of SD1 in pA, AA
63 Int_t fNSD2; // number of SD2 in pA, AA
64 Int_t fNDD; // number of DD in pA, AA
ee51dca6 65private:
66 AliCollisionGeometry& operator=(const AliCollisionGeometry& cg); //Not implemented
50a78f7f 67 ClassDef(AliCollisionGeometry,4) // Collision Geometry
3126aea8 68};
69#endif
70
71
72
73
74
75