Logo ROOT   6.14/05
Reference Guide
TMCParticle.h
Go to the documentation of this file.
1 // @(#)root/pythia6:$Id$
2 // Author: Piotr Golonka 17/09/97
3 
4 /*************************************************************************
5  * Copyright (C) 1995-2000, Rene Brun and Fons Rademakers. *
6  * All rights reserved. *
7  * *
8  * For the licensing terms see $ROOTSYS/LICENSE. *
9  * For the list of contributors see $ROOTSYS/README/CREDITS. *
10  *************************************************************************/
11 
12 #ifndef ROOT_TMCParticle
13 #define ROOT_TMCParticle
14 
15 #include "TObject.h"
16 #include "TAttLine.h"
17 #include "TPrimary.h"
18 
19 
20 class TMCParticle : public TObject, public TAttLine {
21 
22 private:
23 
24  Int_t fKS; // status of particle ( LUJETS K[1] )
25  Int_t fKF; // KF flavour code ( LUJETS K[2] )
26  Int_t fParent; // parrent's id ( LUJETS K[3] )
27  Int_t fFirstChild; // id of first child ( LUJETS K[4] )
28  Int_t fLastChild; // id of last child ( LUJETS K[5] )
29 
30  Float_t fPx; // X momenta [GeV/c] ( LUJETS P[1] )
31  Float_t fPy; // Y momenta [GeV/c] ( LUJETS P[2] )
32  Float_t fPz; // Z momenta [GeV/c] ( LUJETS P[3] )
33  Float_t fEnergy; // Energy [GeV] ( LUJETS P[4] )
34  Float_t fMass; // Mass [Gev/c^2] ( LUJETS P[5] )
35 
36  Float_t fVx; // X vertex [mm] ( LUJETS V[1] )
37  Float_t fVy; // Y vertex [mm] ( LUJETS V[2] )
38  Float_t fVz; // Z vertex [mm] ( LUJETS V[3] )
39  Float_t fTime; // time of procuction [mm/c]( LUJETS V[4] )
40  Float_t fLifetime; // proper lifetime [mm/c] ( LUJETS V[5] )
41 
42 
43 public:
44  TMCParticle() : fKS(0), fKF(0), fParent(0), fFirstChild(0),
45  fLastChild(0), fPx(0), fPy(0), fPz(0), fEnergy(0), fMass(0),
46  fVx(0), fVy(0), fVz(0), fTime(0), fLifetime(0) {}
47 
48  TMCParticle(Int_t kS, Int_t kF, Int_t parent,
49  Int_t firstchild, Int_t lastchild,
50  Float_t px, Float_t py, Float_t pz,
51  Float_t energy, Float_t mass,
52  Float_t vx, Float_t vy, Float_t vz,
53  Float_t time, Float_t lifetime) :
54 
55  fKS(kS),
56  fKF(kF),
57  fParent(parent),
58  fFirstChild(firstchild),
59  fLastChild(lastchild),
60  fPx(px),
61  fPy(py),
62  fPz(pz),
63  fEnergy(energy),
64  fMass(mass),
65  fVx(vx),
66  fVy(vy),
67  fVz(vz),
68  fTime(time),
69  fLifetime(lifetime) { }
70 
71 
72  virtual ~TMCParticle() { }
73 
74  Int_t GetKS() const {return fKS;}
75  Int_t GetKF() const {return fKF;}
76  Int_t GetParent() const {return fParent;}
77  Int_t GetFirstChild() const {return fFirstChild;}
78  Int_t GetLastChild() const {return fLastChild;}
79 
80  Float_t GetPx() const {return fPx;}
81  Float_t GetPy() const {return fPy;}
82  Float_t GetPz() const {return fPz;}
83  Float_t GetEnergy() const {return fEnergy;}
84  Float_t GetMass() const {return fMass;}
85 
86  Float_t GetVx() const {return fVx;}
87  Float_t GetVy() const {return fVy;}
88  Float_t GetVz() const {return fVz;}
89  Float_t GetTime() const {return fTime;}
90  Float_t GetLifetime() const {return fLifetime;}
91  virtual const char *GetName() const;
92 
93  virtual void SetKS(Int_t kS) {fKS=kS;}
94  virtual void SetKF(Int_t kF) {fKF=kF;}
95  virtual void SetParent(Int_t parent) {fParent=parent;}
96  virtual void SetFirstChild(Int_t first) {fFirstChild=first;}
97  virtual void SetLastChild(Int_t last) {fLastChild=last;}
98 
99  virtual void SetPx(Float_t px) {fPx=px;}
100  virtual void SetPy(Float_t py) {fPy=py;}
101  virtual void SetPz(Float_t pz) {fPz=pz;}
102  virtual void SetEnergy(Float_t energy) {fEnergy=energy;}
103  virtual void SetMass(Float_t mass) {fMass=mass;}
104 
105  virtual void SetVx(Float_t vx) {fVx=vx;}
106  virtual void SetVy(Float_t vy) {fVy=vy;}
107  virtual void SetVz(Float_t vz) {fVz=vz;}
108  virtual void SetTime(Float_t time) {fTime=time;}
109  virtual void SetLifetime(Float_t lifetime) {fLifetime=lifetime;}
110 
111 
112  virtual void ls(Option_t* option) const;
113 
114  ClassDef(TMCParticle,1) // LUJETS particles data record.
115 };
116 
117 #endif
Int_t fFirstChild
Definition: TMCParticle.h:27
virtual ~TMCParticle()
Definition: TMCParticle.h:72
virtual void SetParent(Int_t parent)
Definition: TMCParticle.h:95
virtual void SetEnergy(Float_t energy)
Definition: TMCParticle.h:102
virtual void SetLastChild(Int_t last)
Definition: TMCParticle.h:97
Float_t fEnergy
Definition: TMCParticle.h:33
float Float_t
Definition: RtypesCore.h:53
const char Option_t
Definition: RtypesCore.h:62
Int_t fLastChild
Definition: TMCParticle.h:28
Float_t GetPy() const
Definition: TMCParticle.h:81
Float_t GetVy() const
Definition: TMCParticle.h:87
virtual void SetPy(Float_t py)
Definition: TMCParticle.h:100
virtual void SetPx(Float_t px)
Definition: TMCParticle.h:99
Float_t fPx
Definition: TMCParticle.h:30
Float_t GetLifetime() const
Definition: TMCParticle.h:90
virtual void SetLifetime(Float_t lifetime)
Definition: TMCParticle.h:109
Int_t GetKF() const
Definition: TMCParticle.h:75
int Int_t
Definition: RtypesCore.h:41
Float_t fMass
Definition: TMCParticle.h:34
Float_t fPz
Definition: TMCParticle.h:32
Int_t GetFirstChild() const
Definition: TMCParticle.h:77
This class serves as a data storage for description of one particle.
Definition: TMCParticle.h:20
#define ClassDef(name, id)
Definition: Rtypes.h:320
virtual void SetKF(Int_t kF)
Definition: TMCParticle.h:94
virtual void SetKS(Int_t kS)
Definition: TMCParticle.h:93
Int_t fParent
Definition: TMCParticle.h:26
virtual void ls(Option_t *option) const
The ls function lists the contents of a class on stdout.
Definition: TMCParticle.cxx:30
TMCParticle(Int_t kS, Int_t kF, Int_t parent, Int_t firstchild, Int_t lastchild, Float_t px, Float_t py, Float_t pz, Float_t energy, Float_t mass, Float_t vx, Float_t vy, Float_t vz, Float_t time, Float_t lifetime)
Definition: TMCParticle.h:48
Float_t fTime
Definition: TMCParticle.h:39
Float_t GetVx() const
Definition: TMCParticle.h:86
virtual void SetTime(Float_t time)
Definition: TMCParticle.h:108
Float_t GetPx() const
Definition: TMCParticle.h:80
virtual void SetVy(Float_t vy)
Definition: TMCParticle.h:106
virtual void SetVz(Float_t vz)
Definition: TMCParticle.h:107
Int_t GetKS() const
Definition: TMCParticle.h:74
Float_t fLifetime
Definition: TMCParticle.h:40
Float_t fPy
Definition: TMCParticle.h:31
Float_t GetMass() const
Definition: TMCParticle.h:84
Int_t GetLastChild() const
Definition: TMCParticle.h:78
virtual void SetPz(Float_t pz)
Definition: TMCParticle.h:101
virtual void SetMass(Float_t mass)
Definition: TMCParticle.h:103
Float_t fVy
Definition: TMCParticle.h:37
Float_t fVz
Definition: TMCParticle.h:38
virtual void SetFirstChild(Int_t first)
Definition: TMCParticle.h:96
Mother of all ROOT objects.
Definition: TObject.h:37
Int_t GetParent() const
Definition: TMCParticle.h:76
Definition: first.py:1
Float_t GetVz() const
Definition: TMCParticle.h:88
Float_t GetEnergy() const
Definition: TMCParticle.h:83
virtual void SetVx(Float_t vx)
Definition: TMCParticle.h:105
Float_t GetPz() const
Definition: TMCParticle.h:82
Line Attributes class.
Definition: TAttLine.h:18
virtual const char * GetName() const
Return name of this particle via Pythia.
Definition: TMCParticle.cxx:43
Float_t GetTime() const
Definition: TMCParticle.h:89
Float_t fVx
Definition: TMCParticle.h:36