Pandora
Pandora source code navigator
|
ClusterExtensionAlgorithm class. More...
#include "ClusterExtensionAlgorithm.h"
Classes | |
class | ClusterAssociation |
ClusterAssociation class. More... | |
Public Member Functions | |
const std::string & | GetType () const |
Get the type. | |
const std::string & | GetInstanceName () const |
Get the instance name. | |
const Pandora & | GetPandora () const |
Get the associated pandora instance. | |
Protected Types | |
typedef std::unordered_map< const pandora::Cluster *, ClusterAssociation > | ClusterAssociationMap |
typedef std::unordered_map< const pandora::Cluster *, ClusterAssociationMap > | ClusterAssociationMatrix |
typedef std::unordered_map< const pandora::Cluster *, pandora::ClusterList > | ClusterMergeMap |
Protected Member Functions | |
void | PopulateClusterMergeMap (const pandora::ClusterVector &clusterVector, ClusterMergeMap &clusterMergeMatrix) const |
Form associations between pointing clusters. | |
virtual void | FillClusterAssociationMatrix (const pandora::ClusterVector &clusterVector, ClusterAssociationMatrix &clusterAssociationMatrix) const =0 |
Fill the cluster association matrix. | |
virtual void | FillClusterMergeMap (const ClusterAssociationMatrix &clusterAssociationMatrix, ClusterMergeMap &clusterMergeMap) const =0 |
Fill the cluster merge map. | |
virtual pandora::StatusCode | Run () |
Run the algorithm. | |
virtual pandora::StatusCode | ReadSettings (const pandora::TiXmlHandle xmlHandle) |
Read the algorithm settings. | |
virtual void | GetListOfCleanClusters (const pandora::ClusterList *const pClusterList, pandora::ClusterVector &clusterVector) const =0 |
Populate cluster vector with subset of cluster list, containing clusters judged to be clean. | |
void | MergeClusters (pandora::ClusterVector &clusterVector, ClusterMergeMap &clusterMergeMap) const |
Merge associated clusters. | |
void | CollectAssociatedClusters (const pandora::Cluster *const pSeedCluster, const ClusterMergeMap &clusterMergeMap, pandora::ClusterList &associatedClusterList) const |
Collect up all clusters associations related to a given seed cluster. | |
void | CollectAssociatedClusters (const pandora::Cluster *const pSeedCluster, const pandora::Cluster *const pCurrentCluster, const ClusterMergeMap &clusterMergeMap, const pandora::ClusterSet &clusterVetoList, pandora::ClusterList &associatedClusterList) const |
Collect up all clusters associations related to a given seed cluster. | |
void | GetSortedListOfCleanClusters (const pandora::ClusterVector &inputClusters, pandora::ClusterVector &outputClusters) const |
Sort the selected clusters, so that they have a well-defined ordering. | |
virtual StatusCode | Initialize () |
Perform any operations that must occur after reading settings, but before running the process. | |
virtual StatusCode | Reset () |
Perform any operations when pandora is reset, typically at the end of each event. | |
StatusCode | RegisterDetails (const Pandora *const pPandora, const std::string &type, const std::string &instanceName) |
Register i) the pandora instance that will run the process and ii) the process type. | |
Protected Attributes | |
std::string | m_inputClusterListName |
The name of the input cluster list. If not specified, will access current list. | |
const Pandora * | m_pPandora |
The pandora object that will run the process. | |
std::string | m_type |
The process type. | |
std::string | m_instanceName |
The process instance name. | |
ClusterExtensionAlgorithm class.
Definition at line 21 of file ClusterExtensionAlgorithm.h.
|
protected |
Definition at line 97 of file ClusterExtensionAlgorithm.h.
|
protected |
Definition at line 98 of file ClusterExtensionAlgorithm.h.
|
protectedinherited |
Definition at line 27 of file ClusterMergingAlgorithm.h.
|
protectedinherited |
Collect up all clusters associations related to a given seed cluster.
pSeedCluster | pointer to the initial cluster |
clusterMergeMap | the map of cluster associations |
associatedClusterList | the output list of associated clusters |
Definition at line 97 of file ClusterMergingAlgorithm.cc.
|
protectedinherited |
Collect up all clusters associations related to a given seed cluster.
pSeedCluster | pointer to the initial cluster |
pCurrentCluster | pointer to the current cluster |
clusterMergeMap | the map of cluster associations |
clusterVetoList | the list of clusters that have already been merged |
associatedClusterList | the output list of associated clusters |
Definition at line 106 of file ClusterMergingAlgorithm.cc.
|
protectedpure virtual |
Fill the cluster association matrix.
clusterVector | the input vector of clusters |
clusterAssociationMatrix | the matrix of associations |
Implemented in lar_content::CrossGapsExtensionAlgorithm, lar_content::LongitudinalExtensionAlgorithm, lar_content::TransverseExtensionAlgorithm, lar_content::CosmicRayExtensionAlgorithm, and lar_content::DeltaRayExtensionAlgorithm.
|
protectedpure virtual |
Fill the cluster merge map.
clusterAssociationMatrix | the matrix of cluster associations |
clusterMergeMap | the map of cluster merges |
Implemented in lar_content::CrossGapsExtensionAlgorithm, lar_content::LongitudinalExtensionAlgorithm, lar_content::TransverseExtensionAlgorithm, lar_content::CosmicRayExtensionAlgorithm, and lar_content::DeltaRayExtensionAlgorithm.
|
inlineinherited |
|
protectedpure virtualinherited |
Populate cluster vector with subset of cluster list, containing clusters judged to be clean.
pClusterList | address of the cluster list |
clusterVector | to receive the populated cluster vector |
Implemented in lar_content::CrossGapsExtensionAlgorithm, lar_content::LongitudinalExtensionAlgorithm, lar_content::SimpleClusterMergingAlgorithm, lar_content::TransverseExtensionAlgorithm, lar_content::CosmicRayExtensionAlgorithm, and lar_content::DeltaRayExtensionAlgorithm.
|
inlineinherited |
|
protectedinherited |
Sort the selected clusters, so that they have a well-defined ordering.
inputClusters | the input vector of clusters |
outputClusters | the output vector of clusters |
Definition at line 135 of file ClusterMergingAlgorithm.cc.
|
inlineinherited |
|
inlineprotectedvirtualinherited |
Perform any operations that must occur after reading settings, but before running the process.
Reimplemented in lar_content::BdtBeamParticleIdTool, lar_content::BeamParticleIdTool, lar_content::CosmicRayTaggingTool, lar_content::EventReadingAlgorithm, lar_content::EventWritingAlgorithm, lar_content::LArPseudoLayerPlugin, lar_content::LArRotationalTransformationPlugin, EventReadingAlgorithm, and EventWritingAlgorithm.
Definition at line 126 of file Process.h.
|
protectedinherited |
Merge associated clusters.
clusterVector | the vector of clean clusters |
clusterMergeMap | the matrix of cluster associations |
Definition at line 62 of file ClusterMergingAlgorithm.cc.
|
protectedvirtual |
Form associations between pointing clusters.
clusterVector | the vector of clean clusters |
clusterMergeMap | the matrix of cluster associations |
Implements lar_content::ClusterMergingAlgorithm.
Definition at line 18 of file ClusterExtensionAlgorithm.cc.
|
protectedvirtualinherited |
Read the algorithm settings.
xmlHandle | the relevant xml handle |
Implements pandora::Process.
Reimplemented in lar_content::CrossGapsExtensionAlgorithm, lar_content::LongitudinalExtensionAlgorithm, lar_content::SimpleClusterMergingAlgorithm, lar_content::TransverseExtensionAlgorithm, lar_content::CosmicRayExtensionAlgorithm, and lar_content::DeltaRayExtensionAlgorithm.
Definition at line 162 of file ClusterMergingAlgorithm.cc.
|
inlineprotectedinherited |
Register i) the pandora instance that will run the process and ii) the process type.
pPandora | address of the pandora object that will run the process |
type | the process type |
instanceName | the process instance name |
Definition at line 146 of file Process.h.
|
inlineprotectedvirtualinherited |
Perform any operations when pandora is reset, typically at the end of each event.
Reimplemented in lar_content::MasterAlgorithm, lar_content::PostProcessingAlgorithm, and lar_content::PreProcessingAlgorithm.
Definition at line 133 of file Process.h.
|
protectedvirtualinherited |
Run the algorithm.
Implements pandora::Algorithm.
Definition at line 20 of file ClusterMergingAlgorithm.cc.
|
protectedinherited |
The name of the input cluster list. If not specified, will access current list.
Definition at line 83 of file ClusterMergingAlgorithm.h.
|
protectedinherited |
|
protectedinherited |
|
protectedinherited |