APRILContent
Algorithm of Particle Reconstruction for ILC - implementation with PandoraSDK
 All Classes Namespaces Files Functions Variables Typedefs Enumerations
Classes | Public Member Functions | Protected Member Functions | Private Types | Private Member Functions | Private Attributes | List of all members
april_content::PerfectClusteringAlgorithm Class Reference

PerfectClusteringAlgorithm class. More...

#include <PerfectClusteringAlgorithm.h>

Inheritance diagram for april_content::PerfectClusteringAlgorithm:

Classes

class  Factory
 Factory class for instantiating algorithm. More...
 

Public Member Functions

 PerfectClusteringAlgorithm ()
 Default constructor.
 

Protected Member Functions

virtual bool SelectMCParticlesForClustering (const pandora::MCParticle *const pMCParticle) const
 

Private Types

typedef std::map< const
pandora::MCParticle
*, pandora::CaloHitList * > 
MCParticleToHitListMap
 

Private Member Functions

pandora::StatusCode Run ()
 
pandora::StatusCode ReadSettings (const pandora::TiXmlHandle xmlHandle)
 
void SimpleMCParticleCollection (const pandora::CaloHit *const pCaloHit, MCParticleToHitListMap &mcParticleToHitListMap) const
 Simple mc particle collection, using main mc particle associated with each calo hit. More...
 
void FullMCParticleCollection (const pandora::CaloHit *const pCaloHit, MCParticleToHitListMap &mcParticleToHitListMap) const
 Full mc particle collection, using map of mc particles to hit weights; fragment calo hits where necessary. More...
 
void AddToHitListMap (const pandora::CaloHit *const pCaloHitToAdd, const pandora::MCParticle *const pMCParticle, MCParticleToHitListMap &mcParticleToHitListMap) const
 Add a calo hit to the mc particle to hit list map. More...
 
void CreateClusters (const MCParticleToHitListMap &mcParticleToHitListMap) const
 Create clusters based on information in the mc particle to hit list map. More...
 

Private Attributes

pandora::IntVector m_particleIdList
 list of particle ids of MCPFOs to be selected
 
bool m_shouldUseOnlyECalHits
 Whether to only use ecal hits in the clustering algorithm.
 
bool m_shouldUseIsolatedHits
 Whether to use isolated hits in the clustering algorithm.
 
bool m_simpleMCParticleCollection
 Whether to use simple mc particle collection mechanism, or full mechanism.
 
float m_minWeightFraction
 The minimum mc particle calo hit weight for clustering consideration.
 

Detailed Description

PerfectClusteringAlgorithm class.

Member Function Documentation

void april_content::PerfectClusteringAlgorithm::AddToHitListMap ( const pandora::CaloHit *const  pCaloHitToAdd,
const pandora::MCParticle *const  pMCParticle,
MCParticleToHitListMap &  mcParticleToHitListMap 
) const
private

Add a calo hit to the mc particle to hit list map.

Parameters
pCaloHitaddress of the calo hit
pMCParticleaddress of the mc particle
mcParticleToHitListMapthe mc particle to hit list map
void april_content::PerfectClusteringAlgorithm::CreateClusters ( const MCParticleToHitListMap &  mcParticleToHitListMap) const
private

Create clusters based on information in the mc particle to hit list map.

Parameters
mcParticleToHitListMapthe mc particle to hit list map
void april_content::PerfectClusteringAlgorithm::FullMCParticleCollection ( const pandora::CaloHit *const  pCaloHit,
MCParticleToHitListMap &  mcParticleToHitListMap 
) const
private

Full mc particle collection, using map of mc particles to hit weights; fragment calo hits where necessary.

Parameters
pCaloHitaddress of the calo hit
mcParticleToHitListMapthe mc particle to hit list map
void april_content::PerfectClusteringAlgorithm::SimpleMCParticleCollection ( const pandora::CaloHit *const  pCaloHit,
MCParticleToHitListMap &  mcParticleToHitListMap 
) const
private

Simple mc particle collection, using main mc particle associated with each calo hit.

Parameters
pCaloHitaddress of the calo hit
mcParticleToHitListMapthe mc particle to hit list map

The documentation for this class was generated from the following files: