8 #ifndef LAR_ISOLATED_CLUSTER_MOP_UP_ALGORITHM_H 9 #define LAR_ISOLATED_CLUSTER_MOP_UP_ALGORITHM_H 1 11 #include "Pandora/Algorithm.h" 15 #include <unordered_map> 20 template<
typename,
unsigned int>
class KDTreeLinkerAlgo;
21 template<
typename,
unsigned int>
class KDTreeNodeInfoT;
37 void ClusterMopUp(
const pandora::ClusterList &pfoClusters,
const pandora::ClusterList &remnantClusters)
const;
45 void DissolveClustersToHits(
const pandora::ClusterList &clusterList, pandora::CaloHitList &caloHitList)
const;
56 void GetCaloHitToClusterMap(
const pandora::CaloHitList &caloHitList,
const pandora::ClusterList &clusterList, CaloHitToClusterMap &caloHitToClusterMap)
const;
58 pandora::StatusCode
ReadSettings(
const pandora::TiXmlHandle xmlHandle);
71 #endif // #ifndef LAR_ISOLATED_CLUSTER_MOP_UP_ALGORITHM_H
pandora::StatusCode ReadSettings(const pandora::TiXmlHandle xmlHandle)
std::vector< HitKDNode2D > HitKDNode2DList
void ClusterMopUp(const pandora::ClusterList &pfoClusters, const pandora::ClusterList &remnantClusters) const
Cluster mop up for a single view. This function is responsible for instructing pandora to make cluste...
KDTreeLinkerAlgo< const pandora::CaloHit *, 2 > HitKDTree2D
Class that implements the KDTree partition of 2D space and a closest point search algorithm...
IsolatedClusterMopUpAlgorithm()
Default constructor.
unsigned int m_maxCaloHitsInCluster
The maximum number of hits in a cluster to be dissolved.
void DissolveClustersToHits(const pandora::ClusterList &clusterList, pandora::CaloHitList &caloHitList) const
Examine a list of clusters, identify and delete remnants; receive the list of newly available hits...
Data stored in each KDTree node. The dim1/dim2 fields are usually the duplication of some PFRecHit va...
ClusterMopUpBaseAlgorithm class.
bool m_addHitsAsIsolated
Whether to add hits to clusters as "isolated" (don't contribute to spatial properties) ...
KDTreeNodeInfoT< const pandora::CaloHit *, 2 > HitKDNode2D
Header file for the cluster mop up algorithm base class.
float m_maxHitClusterDistance
The maximum hit to cluster distance for isolated hit merging.
std::unordered_map< const pandora::CaloHit *, const pandora::Cluster * > CaloHitToClusterMap
IsolatedClusterMopUpAlgorithm class.
void GetCaloHitToClusterMap(const pandora::CaloHitList &caloHitList, const pandora::ClusterList &clusterList, CaloHitToClusterMap &caloHitToClusterMap) const
Look for isolated hit additions, considering a list of candidate hits and a list of host clusters...