LArSoft  v06_85_00
Liquid Argon Software toolkit - http://larsoft.org/
SimpleClusterMergingAlgorithm.h
Go to the documentation of this file.
1 
8 #ifndef LAR_SIMPLE_CLUSTER_MERGING_ALGORITHM_H
9 #define LAR_SIMPLE_CLUSTER_MERGING_ALGORITHM_H 1
10 
11 #include "Pandora/Algorithm.h"
12 
14 
15 namespace lar_content
16 {
17 
22 {
23 public:
28 
29 private:
30  void GetListOfCleanClusters(const pandora::ClusterList *const pClusterList, pandora::ClusterVector &clusterVector) const;
31  void PopulateClusterMergeMap(const pandora::ClusterVector &clusterVector, ClusterMergeMap &clusterMergeMap) const;
32 
41  bool IsAssociated(const pandora::Cluster* const pClusterI, const pandora::Cluster* const pClusterJ) const;
42 
43  pandora::StatusCode ReadSettings(const pandora::TiXmlHandle xmlHandle);
44 
45  unsigned int m_minCaloHitsPerCluster;
47 };
48 
49 } // namespace lar_content
50 
51 #endif // #ifndef LAR_SIMPLE_CLUSTER_MERGING_ALGORITHM_H
unsigned int m_minCaloHitsPerCluster
The min number of calo hits per candidate cluster.
float m_maxClusterSeparation
Maximum distance at which clusters can be joined.
void GetListOfCleanClusters(const pandora::ClusterList *const pClusterList, pandora::ClusterVector &clusterVector) const
Populate cluster vector with subset of cluster list, containing clusters judged to be clean...
bool IsAssociated(const pandora::Cluster *const pClusterI, const pandora::Cluster *const pClusterJ) const
Decide whether two clusters are associated.
std::vector< art::Ptr< recob::Cluster > > ClusterVector
std::unordered_map< const pandora::Cluster *, pandora::ClusterList > ClusterMergeMap
pandora::StatusCode ReadSettings(const pandora::TiXmlHandle xmlHandle)
void PopulateClusterMergeMap(const pandora::ClusterVector &clusterVector, ClusterMergeMap &clusterMergeMap) const
Form associations between pointing clusters.
ClusterMergingAlgorithm class.
Header file for the cluster merging algorithm class.