31 ClassImp(TPythia8Decayer);
 
   36 TPythia8Decayer::TPythia8Decayer():
 
   37   fPythia8(new TPythia8()),
 
   40    fPythia8->Pythia8()->readString(
"SoftQCD:elastic = on");
 
   41    fPythia8->Pythia8()->init();
 
   47 void TPythia8Decayer::Init()
 
   54 void TPythia8Decayer::Decay(Int_t pdg, TLorentzVector* p)
 
   57    AppendParticle(pdg, p);
 
   58    Int_t idPart = fPythia8->Pythia8()->event[0].id();
 
   59    fPythia8->Pythia8()->particleData.mayDecay(idPart,kTRUE);
 
   60    fPythia8->Pythia8()->moreDecays();
 
   61    if (fDebug > 0) fPythia8->EventListing();
 
   67 Int_t TPythia8Decayer::ImportParticles(TClonesArray *particles)
 
   69    return (fPythia8->ImportParticles(particles, 
"All"));
 
   75 void TPythia8Decayer::SetForceDecay(Int_t )
 
   77    printf(
"SetForceDecay not yet implemented !\n");
 
   82 void TPythia8Decayer::ForceDecay()
 
   84    printf(
"ForceDecay not yet implemented !\n");
 
   88 Float_t TPythia8Decayer::GetPartialBranchingRatio(Int_t )
 
   95 Float_t TPythia8Decayer::GetLifetime(Int_t pdg)
 
   97    return (fPythia8->Pythia8()->particleData.tau0(pdg) * 3.3333e-12) ;
 
  103 void    TPythia8Decayer::ReadDecayTable()
 
  111 void TPythia8Decayer::AppendParticle(Int_t pdg, TLorentzVector* p)
 
  113    fPythia8->Pythia8()->event.append(pdg, 11, 0, 0, p->Px(), p->Py(), p->Pz(), p->E(), p->M());
 
  120 void TPythia8Decayer::ClearEvent()
 
  122    fPythia8->Pythia8()->event.clear();