Fixing error on gcc 4.5.1
[u/mrichter/AliRoot.git] / TTherminator / Therminator / Particle.h
CommitLineData
2e967919 1/******************************************************************************
2 * T H E R M I N A T O R *
3 * THERMal heavy-IoN generATOR *
4 * version 1.0 *
5 * *
6 * Authors of the model: Wojciech Broniowski, Wojciech.Broniowski@ifj.edu.pl, *
7 * Wojciech Florkowski, Wojciech.Florkowski@ifj.edu.pl *
8 * Authors of the code: Adam Kisiel, kisiel@if.pw.edu.pl *
9 * Tomasz Taluc, ttaluc@if.pw.edu.pl *
10 * Code designers: Adam Kisiel, Tomasz Taluc, Wojciech Broniowski, *
11 * Wojciech Florkowski *
12 * *
13 * For the detailed description of the program and furhter references *
14 * to the description of the model plesase refer to: nucl-th/0504047, *
15 * accessibile at: http://www.arxiv.org/nucl-th/0504047 *
16 * *
17 * Homepage: http://hirg.if.pw.edu.pl/en/therminator/ *
18 * *
19 * This code can be freely used and redistributed. However if you decide to *
20 * make modifications to the code, please contact the authors, especially *
21 * if you plan to publish the results obtained with such modified code. *
22 * Any publication of results obtained using this code must include the *
23 * reference to nucl-th/0504047 and the published version of it, when *
24 * available. *
25 * *
26 *****************************************************************************/
27#ifndef _BFPW_PARTICLE_
28#define _BFPW_PARTICLE_
29
30#include <iostream>
31#include "THGlobal.h"
32
33class ParticleType;
34
35class Particle
36{
37 public:
38 Particle();
39 Particle(double aRapidity, double aPt, double aPhip,
40 double aAlfam, double aRho, double aPhis, double aTau,
41 ParticleType *aType);
42 Particle(ParticleType *aType,
43 double aPx, double aPy, double aPz,
44 double aRx, double aRy, double aRz,
45 double aTime);
46 Particle(const Particle& aParticle);
47 ~Particle();
48
49 double Pt();
50 double Rapidity();
51 ParticleType *GetParticleType() const;
52 int HadDecayed();
53 double GetMass();
54 double GetI3();
55 double GetBarionN();
56 double GetStrangeness();
57 double GetEnergy();
58 int GetFather() const;
59
60 void WriteParticle(ostream *aOuts);
61 void SetDecayed();
62 void SetFather(int aFather);
63
64 double px, py, pz;
65 double rx, ry, rz, rt;
66
67 private:
68 int mDecayed;
69 int mHasFather;
70 ParticleType* mPartType;
71};
72
73
74
75#endif