8 #ifndef LAR_ONE_VIEW_DELTA_RAY_MATCHING_ALGORITHM_H
9 #define LAR_ONE_VIEW_DELTA_RAY_MATCHING_ALGORITHM_H 1
11 #include "Pandora/Algorithm.h"
32 pandora::StatusCode
Run();
33 pandora::StatusCode
ReadSettings(
const pandora::TiXmlHandle xmlHandle);
72 bool IsMuonPfo(
const pandora::Cluster *
const pCluster);
82 bool AddIntoExistingDeltaRay(
const pandora::Cluster *
const pAvailableCluster,
const pandora::PfoVector &nearbyMuonPfoVector);
95 const pandora::ParticleFlowObject *
const pNearbyMuonPfo,
const pandora::HitType hitType,
const bool findAvailable);
113 void GetClusterSpanX(
const pandora::ClusterList &clusterList,
float &spanMinX,
float &spanMaxX);
122 void CreateDeltaRay(
const pandora::Cluster *
const pAvailableCluster,
const pandora::PfoVector &nearbyMuonPfoVector, pandora::ClusterSet &modifiedClusters);
131 void GetNearbyAvailableClusters(
const pandora::Cluster *
const pCluster, pandora::ClusterList &consideredClusters, pandora::ClusterList &foundClusters);
140 const pandora::Cluster *
MergeClusterGroup(
const pandora::ClusterList &clusterGroup);
149 void CreatePfo(
const pandora::Cluster *
const pCluster1,
const pandora::Cluster *
const pCluster2,
const pandora::Cluster *
const pCluster3);
171 #endif // #ifndef LAR_ONE_VIEW_DELTA_RAY_MATCHING_ALGORITHM_H
std::string m_inputClusterListNameW
The list of reconstructed W clusters.
const pandora::ClusterList GetInputClusterList(const pandora::HitType hitType)
Get the input cluster list of a given hit type.
Header file for the kd tree linker algo template class.
pandora::StatusCode ReadSettings(const pandora::TiXmlHandle xmlHandle)
const pandora::PfoList GetDeltaRayPfoList()
Get the input delta ray pfo list.
bool AddIntoExistingDeltaRay(const pandora::Cluster *const pAvailableCluster, const pandora::PfoVector &nearbyMuonPfoVector)
Use nearby muon pfos to project into other views and attempt to add a remaining delta ray cluster int...
void CreateDeltaRay(const pandora::Cluster *const pAvailableCluster, const pandora::PfoVector &nearbyMuonPfoVector, pandora::ClusterSet &modifiedClusters)
Use nearby muon pfos to project into other views and attempt to match a remaining delta ray cluster t...
Header file for the delta ray matching containers class.
bool IsDeltaRayPfo(const pandora::Cluster *const pCluster)
Determine whether an input cluster belongs to a delta ray pfo.
unsigned int m_minClusterHits
The minimum number of hits for a cluster to be significant.
void CreatePfo(const pandora::Cluster *const pCluster1, const pandora::Cluster *const pCluster2, const pandora::Cluster *const pCluster3)
Create a pfo from the input clusters updating the cluster to pfo map accordingly. ...
std::string m_inputClusterListNameU
The list of reconstructed U clusters.
std::string m_muonPfoListName
The list of reconstructed cosmic ray pfos.
std::string m_inputClusterListNameV
The list of reconstructed V clusters.
OneViewDeltaRayMatchingAlgorithm class.
const pandora::Cluster * GetBestProjectedCluster(const pandora::ClusterList &deltaRayClusterGroup, const pandora::ParticleFlowObject *const pNearbyMuonPfo, const pandora::HitType hitType, const bool findAvailable)
Get the best matched available or unavailable cluster of a remaining delta ray cluster group wrt a co...
DeltaRayMatchingContainers class.
void GetClusterSpanX(const pandora::ClusterList &clusterList, float &spanMinX, float &spanMaxX)
Determine cluster span (in x) of a group of clusters.
pandora::StatusCode Run()
void PerformOneViewMatching(const pandora::HitType hitType)
Use nearby muon pfos to project into other views and attempt to match the remaining delta ray cluster...
const pandora::Cluster * MergeClusterGroup(const pandora::ClusterList &clusterGroup)
Merge a collection of available clusters together updating hit containers accordingly.
OneViewDeltaRayMatchingAlgorithm()
Default constructor.
DeltaRayMatchingContainers m_deltaRayMatchingContainers
The class of hit, cluster and pfo ownership and proximity maps.
bool IsMuonPfo(const pandora::Cluster *const pCluster)
Determine whether an input cluster belongs to a cosmic ray pfo.
float m_overlapExtension
The extension to each side of the x overlap region in which to search for matched clusters...
void GetNearbyAvailableClusters(const pandora::Cluster *const pCluster, pandora::ClusterList &consideredClusters, pandora::ClusterList &foundClusters)
In the view of the input available cluster, gather nearby available clusters.
std::string m_deltaRayPfoListName
The list of reconstructed delta ray pfos.
std::string m_outputPfoListName
The list to receive the created delta ray pfos.
void PerformRecovery(const pandora::HitType hitType)
Create a delta ray pfo from any remaining, significant clusters.
const pandora::PfoList GetMuonPfoList()
Get the input cosmic ray pfo list.