int m_particlePolarization
StatusCode DFTwoBodyDecay(CLHEP::HepRandomEngine *engine, HepMC::GenParticlePtr, int)
HepPDT::ParticleDataTable * m_particleTable
ParticleDecayer(const std::string &name, ISvcLocator *pSvcLocator)
CLHEP::HepLorentzVector m_boostLV
std::string m_truthParticleContainerName
StatusCode getDecayProducts(CLHEP::HepRandomEngine *engine, CLHEP::HepLorentzVector, double, std::vector< CLHEP::HepLorentzVector > &, int decayType=0)
~ParticleDecayer()=default
void addParticle(HepMC::GenVertexPtr, int pdg, HepMC::FourVector, int statusCode)
bool m_expDecayDoTruncateLongDecays
bool m_oppositePolarization
CLHEP::HepLorentzVector m_posLV
double m_thetaEndCapBarrel
StatusCode setDecayPosition(CLHEP::HepRandomEngine *engine, HepMC::GenParticlePtr, HepMC::GenEvent *, bool doScalarDecay=false)
bool m_expDecayDoVariableLifetime
double m_particleLifeTime
double rnd_ExpLifetime(CLHEP::HepRandomEngine *engine, double ct)
double m_expDecayFractionToKeep
double cosgen(CLHEP::HepRandomEngine *engine, int itype)
bool m_doExponentialDecay
CLHEP::HepLorentzVector m_posLV2
double getParticleMass(int pdgID)
StatusCode genInitialize()
For initializing the generator, if required.
StatusCode changeMass(HepMC::GenParticlePtr, double)
CLHEP::HepLorentzVector m_posLV1
double rnd_DoubleRange(CLHEP::HepRandomEngine *engine, double a, double b)
StatusCode fillEvt(HepMC::GenEvent *)
For filling the HepMC event object.