75c432a7 |
1 | //////////////////////////////////////////////////////////////////////////////// |
2 | /// /// |
3 | /// AliFemtoModelFreezeOutGenerator - abstract base class for freeze-out /// |
4 | /// coordinates generator /// |
5 | /// Authors: Adam Kisiel kisiel@mps.ohio-state.edu /// |
6 | /// /// |
7 | //////////////////////////////////////////////////////////////////////////////// |
8 | #ifndef AliFemtoModelFreezeOutGenerator_hh |
9 | #define AliFemtoModelFreezeOutGenerator_hh |
10 | |
11 | #include "TRandom2.h" |
12 | #include "AliFemtoPair.h" |
13 | |
14 | class AliFemtoModelFreezeOutGenerator |
15 | { |
16 | public: |
17 | AliFemtoModelFreezeOutGenerator(); |
18 | AliFemtoModelFreezeOutGenerator(AliFemtoModelFreezeOutGenerator &aModel); |
19 | |
20 | AliFemtoModelFreezeOutGenerator& operator=(const AliFemtoModelFreezeOutGenerator& aGen); |
21 | |
22 | virtual ~AliFemtoModelFreezeOutGenerator(); |
23 | virtual void GenerateFreezeOut(AliFemtoPair *aPair) = 0; |
24 | |
25 | virtual AliFemtoModelFreezeOutGenerator* Clone() const; |
26 | |
27 | protected: |
28 | TRandom2 *fRandom; |
29 | |
30 | private: |
31 | |
32 | #ifdef __ROOT__ |
33 | ClassDef(AliFemtoModelFreezeOutGenerator, 1) |
34 | #endif |
35 | |
36 | }; |
37 | |
38 | inline AliFemtoModelFreezeOutGenerator::AliFemtoModelFreezeOutGenerator(): fRandom(0) { /* no-op */ }; |
39 | inline AliFemtoModelFreezeOutGenerator::AliFemtoModelFreezeOutGenerator(AliFemtoModelFreezeOutGenerator &aModel): fRandom(0){/* no-op */}; |
40 | inline AliFemtoModelFreezeOutGenerator& AliFemtoModelFreezeOutGenerator::operator=(const AliFemtoModelFreezeOutGenerator& aGen) |
41 | { |
42 | if (this == &aGen) return *this; |
43 | if (aGen.fRandom) |
44 | fRandom = new TRandom2(*aGen.fRandom); |
45 | else |
46 | fRandom=0; |
47 | return *this; |
48 | }; |
49 | |
50 | inline AliFemtoModelFreezeOutGenerator::AliFemtoModelFreezeOutGenerator* Clone() { return 0; }; |
51 | |
52 | |
53 | #endif |
54 | |
55 | |