LArSoft
v09_90_00
Liquid Argon Software toolkit - https://larsoft.org/
|
ClusterMopUpBaseAlgorithm class. More...
#include "ClusterMopUpBaseAlgorithm.h"
Public Member Functions | |
ClusterMopUpBaseAlgorithm () | |
Default constructor. More... | |
template<typename T > | |
const std::string | GetListName (const T *const pT) const |
Find the name of the list hosting a specific object. More... | |
Protected Types | |
typedef std::unordered_map< const pandora::Cluster *, float > | AssociationDetails |
typedef std::unordered_map< const pandora::Cluster *, AssociationDetails > | ClusterAssociationMap |
Protected Member Functions | |
virtual pandora::StatusCode | Run () |
virtual void | GetPfoClusterLists (pandora::ClusterList &clusterListU, pandora::ClusterList &clusterListV, pandora::ClusterList &clusterListW) const |
Get the two dimensional clusters contained in the input pfo list, divided into three different views. More... | |
virtual void | GetDaughterClusterLists (pandora::ClusterList &clusterListU, pandora::ClusterList &clusterListV, pandora::ClusterList &clusterListW) const |
Get the two dimensional clusters contained in the input remant/daughter cluster lists, divided into three different views. More... | |
virtual void | GetClusterLists (const pandora::ClusterList &inputClusterList, const bool availabilityFlag, pandora::ClusterList &clusterListU, pandora::ClusterList &clusterListV, pandora::ClusterList &clusterListW) const |
Get the two dimensional clusters contained in an input cluster list, divided into three different views. More... | |
virtual void | ClusterMopUp (const pandora::ClusterList &pfoClusters, const pandora::ClusterList &remnantClusters) const =0 |
Cluster mop up for a single view. This function is responsible for instructing pandora to make cluster alterations. More... | |
virtual void | MakeClusterMerges (const ClusterAssociationMap &clusterAssociationMap) const |
Make the cluster merges specified in the cluster association map, using list name information in the cluster list name map. More... | |
virtual pandora::StatusCode | ReadSettings (const pandora::TiXmlHandle xmlHandle) |
Protected Attributes | |
pandora::StringVector | m_pfoListNames |
The list of pfo list names. More... | |
bool | m_excludePfosContainingTracks |
Whether to exclude any pfos containing clusters flagged as fixed tracks. More... | |
pandora::StringVector | m_daughterListNames |
The list of potential daughter object list names. More... | |
ClusterMopUpBaseAlgorithm class.
Definition at line 22 of file ClusterMopUpBaseAlgorithm.h.
|
protected |
Definition at line 71 of file ClusterMopUpBaseAlgorithm.h.
|
protected |
Definition at line 72 of file ClusterMopUpBaseAlgorithm.h.
lar_content::ClusterMopUpBaseAlgorithm::ClusterMopUpBaseAlgorithm | ( | ) |
Default constructor.
Definition at line 21 of file ClusterMopUpBaseAlgorithm.cc.
|
protectedpure virtual |
Cluster mop up for a single view. This function is responsible for instructing pandora to make cluster alterations.
pfoClusters | the list of pfo clusters |
remnantClusters | the list of remnant clusters |
Implemented in lar_content::BoundedClusterMopUpAlgorithm, lar_content::IsolatedClusterMopUpAlgorithm, lar_content::NearbyClusterMopUpAlgorithm, and lar_content::ConeClusterMopUpAlgorithm.
Referenced by Run().
|
protectedvirtual |
Get the two dimensional clusters contained in an input cluster list, divided into three different views.
inputClusterList | the input cluster list |
availabilityFlag | only clusters with matching availability will be considered |
clusterListU | to receive the list of clusters in the u view |
clusterListV | to receive the list of clusters in the v view |
clusterListW | to receive the list of clusters in the w view |
Definition at line 82 of file ClusterMopUpBaseAlgorithm.cc.
References lar_content::LArClusterHelper::GetClusterHitType(), and target.
Referenced by GetDaughterClusterLists(), and GetPfoClusterLists().
|
protectedvirtual |
Get the two dimensional clusters contained in the input remant/daughter cluster lists, divided into three different views.
clusterListU | to receive the list of clusters in the u view |
clusterListV | to receive the list of clusters in the v view |
clusterListW | to receive the list of clusters in the w view |
Definition at line 67 of file ClusterMopUpBaseAlgorithm.cc.
References GetClusterLists(), and lar_content::MopUpBaseAlgorithm::m_daughterListNames.
Referenced by Run().
|
inherited |
Find the name of the list hosting a specific object.
pT | the address of the object |
Definition at line 19 of file MopUpBaseAlgorithm.cc.
Referenced by lar_content::IsolatedClusterMopUpAlgorithm::DissolveClustersToHits(), MakeClusterMerges(), and lar_content::SlidingConeClusterMopUpAlgorithm::MakeClusterMerges().
|
protectedvirtual |
Get the two dimensional clusters contained in the input pfo list, divided into three different views.
clusterListU | to receive the list of clusters in the u view |
clusterListV | to receive the list of clusters in the v view |
clusterListW | to receive the list of clusters in the w view |
Definition at line 45 of file ClusterMopUpBaseAlgorithm.cc.
References GetClusterLists(), lar_content::LArPfoHelper::IsTrack(), m_excludePfosContainingTracks, and m_pfoListNames.
Referenced by Run().
|
protectedvirtual |
Make the cluster merges specified in the cluster association map, using list name information in the cluster list name map.
clusterAssociationMap | the cluster association map |
Definition at line 104 of file ClusterMopUpBaseAlgorithm.cc.
References lar_content::MopUpBaseAlgorithm::GetListName(), and lar_content::LArClusterHelper::SortByNHits().
Referenced by lar_content::ConeClusterMopUpAlgorithm::ClusterMopUp(), lar_content::NearbyClusterMopUpAlgorithm::ClusterMopUp(), and lar_content::BoundedClusterMopUpAlgorithm::ClusterMopUp().
|
protectedvirtual |
Reimplemented from lar_content::MopUpBaseAlgorithm.
Reimplemented in lar_content::BoundedClusterMopUpAlgorithm, lar_content::IsolatedClusterMopUpAlgorithm, lar_content::ConeClusterMopUpAlgorithm, and lar_content::NearbyClusterMopUpAlgorithm.
Definition at line 144 of file ClusterMopUpBaseAlgorithm.cc.
References m_excludePfosContainingTracks, m_pfoListNames, and lar_content::MopUpBaseAlgorithm::ReadSettings().
Referenced by lar_content::NearbyClusterMopUpAlgorithm::ReadSettings(), lar_content::ConeClusterMopUpAlgorithm::ReadSettings(), lar_content::IsolatedClusterMopUpAlgorithm::ReadSettings(), and lar_content::BoundedClusterMopUpAlgorithm::ReadSettings().
|
protectedvirtual |
Definition at line 28 of file ClusterMopUpBaseAlgorithm.cc.
References ClusterMopUp(), GetDaughterClusterLists(), and GetPfoClusterLists().
|
protectedinherited |
The list of potential daughter object list names.
Definition at line 35 of file MopUpBaseAlgorithm.h.
Referenced by lar_content::SlidingConeClusterMopUpAlgorithm::GetAvailableTwoDClusters(), GetDaughterClusterLists(), lar_content::SlidingConePfoMopUpAlgorithm::ReadSettings(), and lar_content::VertexBasedPfoMopUpAlgorithm::ReadSettings().
|
protected |
Whether to exclude any pfos containing clusters flagged as fixed tracks.
Definition at line 84 of file ClusterMopUpBaseAlgorithm.h.
Referenced by GetPfoClusterLists(), lar_content::IsolatedClusterMopUpAlgorithm::IsolatedClusterMopUpAlgorithm(), and ReadSettings().
|
protected |
The list of pfo list names.
Definition at line 83 of file ClusterMopUpBaseAlgorithm.h.
Referenced by GetPfoClusterLists(), and ReadSettings().