58 if ( baseParticle ==
nullptr ) {
72 this->
addVertex( baseParticle, hepMCGenParticle );
81 if ( theParticle !=
nullptr ) {
97 p4 = theParticle->
getP4();
101 double E = p4.
get( 0 );
102 double px = p4.
get( 1 );
103 double py = p4.
get( 2 );
104 double pz = p4.
get( 3 );
129 if (
m_theEvent ==
nullptr || inEvtParticle ==
nullptr ||
130 inGenParticle ==
nullptr ) {
142 theVertex->add_particle_in( inGenParticle );
145 int nDaug = inEvtParticle->
getNDaug();
148 for ( iDaug = 0; iDaug < nDaug; iDaug++ ) {
153 if ( genDaughter !=
nullptr ) {
155 theVertex->add_particle_out( genDaughter );
159 int nDaugProducts = evtDaughter->
getNDaug();
161 if ( nDaugProducts > 0 ) {
163 this->
addVertex( evtDaughter, genDaughter );
176 if ( theParticle !=
nullptr && theParticle->
getNDaug() != 0 ) {
182 if ( daugParticle !=
nullptr ) {
186 vertexCoord.setX( vtxPosition.
get( 1 ) );
187 vertexCoord.setY( vtxPosition.
get( 2 ) );
188 vertexCoord.setZ( vtxPosition.
get( 3 ) );
189 vertexCoord.setT( vtxPosition.
get( 0 ) );
HepMC3::GenVertexPtr GenVertexPtr
GenVertexPtr newGenVertexPtr(const FourVector &pos=FourVector::ZERO_VECTOR())
HepMC3::GenEvent GenEvent
GenParticlePtr newGenParticlePtr(const FourVector &mom=FourVector::ZERO_VECTOR(), int pid=0, int status=0)
HepMC3::GenParticlePtr GenParticlePtr
HepMC3::FourVector FourVector
EvtVector4R m_translation
GenParticlePtr createGenParticle(EvtParticle *theParticle, int frameType)
void constructEvent(EvtParticle *baseParticle)
FourVector getVertexCoord(EvtParticle *theParticle)
void addVertex(EvtParticle *inEvtParticle, GenParticlePtr inGenParticle)
static int getStdHep(EvtId id)
EvtVector4R getP4Restframe() const
const EvtVector4R & getP4() const
EvtParticle * getDaug(const int i)
EvtVector4R getP4Lab() const
EvtVector4R get4Pos() const