#include <VisSimulation/VisSimData/interface/VisHepMCParticleTree.h>
Public Member Functions | |
HepMCParticleTree (HepMC::GenParticle *particle) | |
HepMCParticleTree (std::vector< HepMC::GenParticle * > particles) | |
HepMCParticleTree (void) | |
void | makeSeparatorTree (SoSeparator *separator, const float mx, const float my, const float mz) |
~HepMCParticleTree (void) | |
Private Member Functions | |
float | recursiveMakeSeparatorTree (SoSeparator *separator, float x, float *nextY, float z) |
Private Attributes | |
std::vector< HepMCParticleTree * > | m_daughters |
HepMC::GenParticle * | m_particle |
Definition at line 27 of file VisHepMCParticleTree.h.
HepMCParticleTree::HepMCParticleTree | ( | void | ) | [inline] |
HepMCParticleTree::HepMCParticleTree | ( | std::vector< HepMC::GenParticle * > | particles | ) |
Definition at line 19 of file VisHepMCParticleTree.cc.
References HepMCParticleTree(), and iter.
00020 { 00021 std::vector<HepMCParticleTree* > mapping (particles.size ()); 00022 std::vector<HepMCParticleTree* >::iterator itdt = mapping.begin (); 00023 00024 for (std::vector<HepMC::GenParticle* >::iterator iter = particles.begin (); 00025 iter != particles.end (); 00026 iter++ ) 00027 { 00028 (*itdt) = new HepMCParticleTree (*iter); 00029 itdt ++; 00030 } 00031 00032 for (std::vector<HepMCParticleTree* >::iterator idt = mapping.begin (); idt != mapping.end (); idt++) 00033 { 00034 // if ((*idt)->m_particle->vertex ().hasParent ()) 00035 // { 00036 // mapping[(*idt)->m_particle->vertex ().mother ().id () ]->m_daughters.push_back (*idt); 00037 // } 00038 // else 00039 // { 00040 // m_daughters.push_back (*idt); 00041 // } 00042 } 00043 }
HepMCParticleTree::HepMCParticleTree | ( | HepMC::GenParticle * | particle | ) |
HepMCParticleTree::~HepMCParticleTree | ( | void | ) |
Definition at line 49 of file VisHepMCParticleTree.cc.
References m_daughters.
00050 { 00051 if (m_daughters.size () != 0) 00052 for (std::vector<HepMCParticleTree* >::iterator idt = m_daughters.begin (); 00053 idt != m_daughters.end (); 00054 idt++) 00055 { 00056 delete (*idt); 00057 } 00058 }
void HepMCParticleTree::makeSeparatorTree | ( | SoSeparator * | separator, | |
const float | mx, | |||
const float | my, | |||
const float | mz | |||
) |
float HepMCParticleTree::recursiveMakeSeparatorTree | ( | SoSeparator * | separator, | |
float | x, | |||
float * | nextY, | |||
float | z | |||
) | [private] |
std::vector<HepMCParticleTree *> HepMCParticleTree::m_daughters [private] |
HepMC::GenParticle* HepMCParticleTree::m_particle [private] |
Definition at line 42 of file VisHepMCParticleTree.h.