]>
Commit | Line | Data |
---|---|---|
ec852657 | 1 | #ifndef ALIGLAUBERNUCLEUS_H |
2 | #define ALIGLAUBERNUCLEUS_H | |
3 | ||
4 | /* Copyright(c) 1998-1999, ALICE Experiment at CERN, All rights reserved. * | |
5 | * See cxx source for full Copyright notice */ | |
6 | ||
7 | //////////////////////////////////////////////////////////////////////////////// | |
8 | // | |
9 | // AliGlauberNucleus | |
10 | // support classfor Glauber MC | |
11 | // | |
12 | // origin: PHOBOS experiment | |
13 | // alification: Mikolaj Krzewicki, Nikhef, mikolaj.krzewicki@cern.ch | |
14 | // | |
15 | //////////////////////////////////////////////////////////////////////////////// | |
16 | ||
19f030d3 | 17 | //class TNamed; |
18 | #include <TNamed.h> | |
ec852657 | 19 | class TObjArray; |
20 | class TF1; | |
21 | ||
22 | class AliGlauberNucleus : public TNamed { | |
23 | private: | |
24 | Int_t fN; //Number of nucleons | |
25 | Double_t fR; //Parameters of function | |
26 | Double_t fA; //Parameters of function | |
27 | Double_t fW; //Parameters of function | |
28 | Double_t fMinDist; //Minimum separation distance | |
29 | Int_t fF; //Type of radial distribution | |
30 | Int_t fTrials; //Store trials needed to complete nucleus | |
31 | TF1* fFunction; //Probability density function rho(r) | |
32 | TObjArray* fNucleons; //Array of nucleons | |
33 | ||
34 | void Lookup(Option_t* name); | |
35 | ||
36 | public: | |
37 | AliGlauberNucleus(Option_t* iname="Au", Int_t iN=0, Double_t iR=0, Double_t ia=0, Double_t iw=0, TF1* ifunc=0); | |
38 | virtual ~AliGlauberNucleus(); | |
566fc3d0 | 39 | AliGlauberNucleus(const AliGlauberNucleus& in); |
40 | AliGlauberNucleus& operator=(const AliGlauberNucleus& in); | |
ec852657 | 41 | |
42 | using TObject::Draw; | |
43 | void Draw(Double_t xs, Int_t col); | |
44 | Int_t GetN() const {return fN;} | |
45 | Double_t GetR() const {return fR;} | |
46 | Double_t GetA() const {return fA;} | |
47 | Double_t GetW() const {return fW;} | |
48 | TObjArray *GetNucleons() const {return fNucleons;} | |
49 | Int_t GetTrials() const {return fTrials;} | |
50 | void SetN(Int_t in) {fN=in;} | |
51 | void SetR(Double_t ir); | |
52 | void SetA(Double_t ia); | |
53 | void SetW(Double_t iw); | |
54 | void SetMinDist(Double_t min) {fMinDist=min;} | |
55 | void ThrowNucleons(Double_t xshift=0.); | |
56 | ||
57 | ClassDef(AliGlauberNucleus,1) | |
58 | }; | |
59 | ||
60 | #endif |