8 #ifndef LAR_COSMIC_RAY_TRACK_RECOVERY_ALGORITHM_H 9 #define LAR_COSMIC_RAY_TRACK_RECOVERY_ALGORITHM_H 1 11 #include "Pandora/Algorithm.h" 31 pandora::StatusCode
Run();
32 pandora::StatusCode
ReadSettings(
const pandora::TiXmlHandle xmlHandle);
106 const ClusterAssociationMap &clusterAssociationMapVW,
const ClusterAssociationMap &clusterAssociationMapWU, ParticleList &particleList)
const;
121 const ClusterAssociationMap &clusterAssociationMapVW,
const ClusterAssociationMap &clusterAssociationMapWU, ParticleList &particleList)
const;
136 const ClusterAssociationMap &clusterAssociationMapVW,
const ClusterAssociationMap &clusterAssociationMapWU, ParticleList &particleList)
const;
144 void BuildVetoList(
const ParticleList &particleList, pandora::ClusterSet &vetoList)
const;
152 void RemoveAmbiguities(
const ParticleList &inputParticleList, ParticleList &outputParticleList)
const;
160 void MergeClusters(
const pandora::ClusterList &inputClusterList, pandora::ClusterList &outputClusterList)
const;
183 #endif // #ifndef LAR_COSMIC_RAY_TRACK_RECOVERY_ALGORITHM_H std::string m_inputClusterListNameU
void BuildSlidingFitResultMap(const pandora::ClusterVector &clusterVector, TwoDSlidingFitResultMap &slidingFitResultMap) const
Build the map of sliding fit results.
void RemoveAmbiguities(const ParticleList &inputParticleList, ParticleList &outputParticleList) const
Remove particles with duplicate clusters.
void MatchTwoViews(const pandora::ClusterVector &clusterVectorU, const pandora::ClusterVector &clusterVectorV, const pandora::ClusterVector &clusterVectorW, const ClusterAssociationMap &clusterAssociationMapUV, const ClusterAssociationMap &clusterAssociationMapVW, const ClusterAssociationMap &clusterAssociationMapWU, ParticleList &particleList) const
Create candidate particles using two primary clusters and one pair of broken clusters.
std::unordered_map< const pandora::Cluster *, pandora::ClusterList > ClusterAssociationMap
void BuildParticles(const ParticleList &particleList)
Build particle flow objects.
std::string m_outputPfoListName
void MatchOneView(const pandora::ClusterVector &clusterVectorU, const pandora::ClusterVector &clusterVectorV, const pandora::ClusterVector &clusterVectorW, const ClusterAssociationMap &clusterAssociationMapUV, const ClusterAssociationMap &clusterAssociationMapVW, const ClusterAssociationMap &clusterAssociationMapWU, ParticleList &particleList) const
Create candidate particles using one primary cluster and one pair of broken clusters.
void MatchClusters(const pandora::Cluster *const pSeedCluster, const pandora::ClusterVector &targetClusters, const TwoDSlidingFitResultMap &slidingFitResultMap, ClusterAssociationMap &clusterAssociationMap) const
Match a seed cluster with a list of target clusters and populate the cluster association map...
void BuildVetoList(const ParticleList &particleList, pandora::ClusterSet &vetoList) const
Build the list of clusters already used to create particles.
pandora::StatusCode Run()
void MatchThreeViews(const pandora::ClusterVector &clusterVectorU, const pandora::ClusterVector &clusterVectorV, const pandora::ClusterVector &clusterVectorW, const ClusterAssociationMap &clusterAssociationMapUV, const ClusterAssociationMap &clusterAssociationMapVW, const ClusterAssociationMap &clusterAssociationMapWU, ParticleList &particleList) const
Create candidate particles using three primary clusters.
pandora::StatusCode GetAvailableClusters(const std::string &inputClusterListName, pandora::ClusterVector &clusterVector) const
Get a vector of available clusters.
Header file for the lar two dimensional sliding fit result class.
std::vector< Particle > ParticleList
pandora::ClusterList m_clusterList
std::set< unsigned int > UIntSet
void SelectCleanClusters(const pandora::ClusterVector &inputVector, pandora::ClusterVector &outputVector) const
Select a set of clusters judged to be clean.
std::unordered_map< const pandora::Cluster *, TwoDSlidingFitResult > TwoDSlidingFitResultMap
std::string m_inputClusterListNameW
unsigned int m_clusterMinHits
pandora::StatusCode ReadSettings(const pandora::TiXmlHandle xmlHandle)
std::string m_inputClusterListNameV
CosmicRayTrackRecoveryAlgorithm class.
std::vector< art::Ptr< recob::Cluster > > ClusterVector
void MatchViews(const pandora::ClusterVector &clusterVector1, const pandora::ClusterVector &clusterVector2, const TwoDSlidingFitResultMap &slidingFitResultMap, ClusterAssociationMap &clusterAssociationMap) const
Match a pair of cluster vectors and populate the cluster association map.
void MergeClusters(const pandora::ClusterList &inputClusterList, pandora::ClusterList &outputClusterList) const
Merge broken clusters into a single cluster.
float m_clusterMinOverlapX
CosmicRayTrackRecoveryAlgorithm()
Default constructor.