void Parse(const MCHitMap &mcHitMap)
Assess this child particle and its descendents to see if it is topologically significant either indep...
void AddChild(Particle *pChild)
Add a child particle to this particle.
std::list< Particle * > m_children
void ConstructVisibleHierarchy()
Construct a particle hierarchy based on the key topological features in an event. ...
pandora::CaloHitList m_caloHits
const pandora::MCParticle * m_pRoot
virtual ~LArEventTopology()
Destructor.
LArEventTopology(const pandora::CaloHitList &caloHitList2D)
Constructor.
Particle(const pandora::MCParticle *const pRoot)
Default constructor.
void Prune()
Prune particles from the hierarchy if they are not deemed topologically significant.
const std::string Print(const MCHitMap &mcHitMap, const std::string &indent) const
Print the visible hierarchy.
std::map< const pandora::MCParticle *, pandora::CaloHitList > MCHitMap
void PruneHierarchy()
Fold or remove particles that aren't substantive parts of the hierarchy.
void GetVertices(pandora::CartesianPointVector &vertices) const
Extract the clear topological vertices from the event.
pandora::MCParticleList m_particles