Pandora
Pandora source code navigator
Loading...
Searching...
No Matches
ConnectedRemnantsTool.h
Go to the documentation of this file.
1
8#ifndef CONNECTED_REMNANTS_TOOL_H
9#define CONNECTED_REMNANTS_TOOL_H 1
10
12
13namespace lar_content
14{
15
20{
21public:
26
27 bool Run(ThreeViewRemnantsAlgorithm *const pAlgorithm, TensorType &overlapTensor);
28
29private:
31
39 void FindConnectedShowers(const TensorType &overlapTensor, ProtoParticleVector &protoParticleVector, ClusterMergeMap &clusterMergeMap) const;
40
50 void GetClusters(const TensorType::ElementList &connectedElements, const pandora::ClusterSet &usedClusters,
51 pandora::ClusterVector &clusterVectorU, pandora::ClusterVector &clusterVectorV, pandora::ClusterVector &clusterVectorW) const;
52
59 void FillMergeMap(const pandora::Cluster *const pCluster, const pandora::ClusterVector &clusterVector, ClusterMergeMap &clusterMergeMap) const;
60
66 bool IsConnected(const pandora::ClusterVector &clusterVector) const;
67
69};
70
71} // namespace lar_content
72
73#endif // #ifndef CONNECTED_REMNANTS_TOOL_H
Header file for the three view remnants algorithm class.
void FindConnectedShowers(const TensorType &overlapTensor, ProtoParticleVector &protoParticleVector, ClusterMergeMap &clusterMergeMap) const
Identify candidate particles.
void FillMergeMap(const pandora::Cluster *const pCluster, const pandora::ClusterVector &clusterVector, ClusterMergeMap &clusterMergeMap) const
Fill map of clusters to be merged.
bool Run(ThreeViewRemnantsAlgorithm *const pAlgorithm, TensorType &overlapTensor)
Run the algorithm tool.
void GetClusters(const TensorType::ElementList &connectedElements, const pandora::ClusterSet &usedClusters, pandora::ClusterVector &clusterVectorU, pandora::ClusterVector &clusterVectorV, pandora::ClusterVector &clusterVectorW) const
Separate connected clusters into cluster lists by view.
bool IsConnected(const pandora::ClusterVector &clusterVector) const
Check whether all clusters in a list are spatially connected.
pandora::StatusCode ReadSettings(const pandora::TiXmlHandle xmlHandle)
Read the algorithm settings.
ThreeViewRemnantsAlgorithm::MatchingType::TensorType TensorType
Cluster class.
Definition Cluster.h:31
std::unordered_map< const pandora::Cluster *, pandora::ClusterList > ClusterMergeMap
std::vector< ProtoParticle > ProtoParticleVector
std::vector< const Cluster * > ClusterVector
std::unordered_set< const Cluster * > ClusterSet
StatusCode
The StatusCode enum.