StRoot  1
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Groups Pages
StarPythia8Decayer.h
1 #ifndef __StarPythia8Decayer_h__
2 #define __StarPythia8Decayer_h__
3 
4 #include "TVirtualMCDecayer.h"
5 #include "TClonesArray.h"
6 #ifndef __CINT__
7 #include "Pythia.h"
8 #endif
9 
10 class TLorentzVector;
11 
12 class StarPythia8Decayer : public TVirtualMCDecayer
13 {
14 public:
15 
17  void Init();
19  void Decay( int pdg, TLorentzVector *p=0 );
21  int ImportParticles( TClonesArray *array = 0 );
23  void SetForceDecay( int type );
25  void ForceDecay();
27  float GetPartialBranchingRatio( int pdgid );
29  float GetLifetime( int pdgid );
31  void ReadDecayTable();
33  void AppendParticle( int pdgid, TLorentzVector *p=0 );
35  void ClearEvent();
36 
38  void SetDebug( int dbg=1 ){ mDebug = dbg; }
39 
41  void Set( const char *cmd ){ mPythia->readString(cmd); }
42 
44  void SetRootS( double rs ){ mRootS = rs; }
45 
48 
49 
52 
53 private:
54 protected:
55 #ifndef __CINT__
56  Pythia8::Pythia *mPythia;
57 #endif
58  Bool_t mOwner;
59  int mDebug;
60  double mRootS;
61 
62  ClassDef(StarPythia8Decayer,1);
63 };
64 
65 #endif
float GetPartialBranchingRatio(int pdgid)
Return the branching ratio for the spdcified PDG ID.
~StarPythia8Decayer()
Class destructor.
void SetRootS(double rs)
Set root s.
int ImportParticles(TClonesArray *array=0)
Returns the decay products in a TClonesArray of TParticle.
void Init()
Initializes the decayer.
StarPythia8Decayer()
Class constructor.
void AppendParticle(int pdgid, TLorentzVector *p=0)
Add a particle with specified PDG ID to the stack.
void SetDebug(int dbg=1)
Set the debug level.
void ClearEvent()
Clear the event.
float GetLifetime(int pdgid)
Return teh lifetime in seconds for the specified particle.
void Set(const char *cmd)
Modify pythia8 behavior.
void Decay(int pdg, TLorentzVector *p=0)
Decays the particle specified by PDG id and lorentz vector.