OverlapMatrix class. More...
#include <LArOverlapMatrix.h>
Classes | |
| class | Element |
| Element class. More... | |
Public Types | |
| typedef T | OverlapResult |
| typedef std::vector< Element > | ElementList |
| typedef std::unordered_map < const pandora::Cluster *, pandora::ClusterList > | ClusterNavigationMap |
| typedef std::unordered_map < const pandora::Cluster *, OverlapResult > | OverlapList |
| typedef std::unordered_map < const pandora::Cluster *, OverlapList > | TheMatrix |
| typedef TheMatrix::const_iterator | const_iterator |
Public Member Functions | |
| void | GetUnambiguousElements (const bool ignoreUnavailable, ElementList &elementList) const |
| Get unambiguous elements. More... | |
| bool | DefaultAmbiguityFunction (const pandora::ClusterList &clusterList1, const pandora::ClusterList &clusterList2, const pandora::Cluster *&pCluster1, const pandora::Cluster *&pCluster2) const |
| Default ambiguity function, checking that only one cluster from view 1 and view 2 is found. More... | |
| void | GetNConnections (const pandora::Cluster *const pCluster, const bool ignoreUnavailable, unsigned int &n1, unsigned int &n2) const |
| Get the number of connections for a specified cluster. More... | |
| void | GetConnectedElements (const pandora::Cluster *const pCluster, const bool ignoreUnavailable, ElementList &elementList) const |
| Get a list of elements connected to a specified cluster. More... | |
| void | GetConnectedElements (const pandora::Cluster *const pCluster, const bool ignoreUnavailable, ElementList &elementList, unsigned int &n1, unsigned int &n2) const |
| Get a list of elements connected to a specified cluster. More... | |
| const_iterator | begin () const |
| Returns an iterator referring to the first element in the overlap matrix. More... | |
| const_iterator | end () const |
| Returns an iterator referring to the past-the-end element in the overlap matrix. More... | |
| void | GetSortedKeyClusters (pandora::ClusterVector &sortedKeyClusters) const |
| Get a sorted vector of key clusters (view 1 clusters with current implementation) More... | |
| const OverlapResult & | GetOverlapResult (const pandora::Cluster *const pCluster1, const pandora::Cluster *const pCluster2) const |
| Get the overlap result for a specified pair of clusters. More... | |
| const OverlapList & | GetOverlapList (const pandora::Cluster *const pCluster1) const |
| Get the overlap list for a specified cluster. More... | |
| const ClusterNavigationMap & | GetClusterNavigationMap12 () const |
| Get the cluster navigation map 1->2. More... | |
| const ClusterNavigationMap & | GetClusterNavigationMap21 () const |
| Get the cluster navigation map 2->1. More... | |
| void | SetOverlapResult (const pandora::Cluster *const pCluster1, const pandora::Cluster *const pCluster2, const OverlapResult &overlapResult) |
| Set overlap result. More... | |
| void | ReplaceOverlapResult (const pandora::Cluster *const pCluster1, const pandora::Cluster *const pCluster2, const OverlapResult &overlapResult) |
| SetReplace an existing overlap result. More... | |
| void | RemoveCluster (const pandora::Cluster *const pCluster) |
| Remove entries from matrix corresponding to specified cluster. More... | |
| void | Clear () |
| Clear overlap matrix. More... | |
Private Member Functions | |
| void | GetConnectedElements (const pandora::Cluster *const pCluster, const bool ignoreUnavailable, ElementList &elementList, pandora::ClusterList &clusterList1, pandora::ClusterList &clusterList2) const |
| Get elements connected to a specified cluster. More... | |
| void | ExploreConnections (const pandora::Cluster *const pCluster, const bool ignoreUnavailable, pandora::ClusterList &clusterList1, pandora::ClusterList &clusterList2) const |
| Explore connections associated with a given cluster. More... | |
Private Attributes | |
| TheMatrix | m_overlapMatrix |
| The overlap matrix. More... | |
| ClusterNavigationMap | m_clusterNavigationMap12 |
| The cluster navigation map 1->2. More... | |
| ClusterNavigationMap | m_clusterNavigationMap21 |
| The cluster navigation map 2->1. More... | |
OverlapMatrix class.
Definition at line 23 of file LArOverlapMatrix.h.
| typedef std::unordered_map<const pandora::Cluster *, pandora::ClusterList> lar_content::OverlapMatrix< T >::ClusterNavigationMap |
Definition at line 131 of file LArOverlapMatrix.h.
| typedef TheMatrix::const_iterator lar_content::OverlapMatrix< T >::const_iterator |
Definition at line 135 of file LArOverlapMatrix.h.
| typedef std::vector<Element> lar_content::OverlapMatrix< T >::ElementList |
Definition at line 77 of file LArOverlapMatrix.h.
| typedef std::unordered_map<const pandora::Cluster *, OverlapResult> lar_content::OverlapMatrix< T >::OverlapList |
Definition at line 132 of file LArOverlapMatrix.h.
| typedef T lar_content::OverlapMatrix< T >::OverlapResult |
Definition at line 26 of file LArOverlapMatrix.h.
| typedef std::unordered_map<const pandora::Cluster *, OverlapList> lar_content::OverlapMatrix< T >::TheMatrix |
Definition at line 133 of file LArOverlapMatrix.h.
|
inline |
Returns an iterator referring to the first element in the overlap matrix.
Definition at line 265 of file LArOverlapMatrix.h.
|
inline |
Clear overlap matrix.
Definition at line 325 of file LArOverlapMatrix.h.
| bool lar_content::OverlapMatrix< T >::DefaultAmbiguityFunction | ( | const pandora::ClusterList & | clusterList1, |
| const pandora::ClusterList & | clusterList2, | ||
| const pandora::Cluster *& | pCluster1, | ||
| const pandora::Cluster *& | pCluster2 | ||
| ) | const |
Default ambiguity function, checking that only one cluster from view 1 and view 2 is found.
| clusterList1 | cluster list 1 |
| clusterList2 | cluster list 2 |
| pCluster1 | to receive the address of the unambiguous cluster 1 |
| pCluster2 | to receive the address of the unambiguous cluster 2 |
Definition at line 63 of file LArOverlapMatrix.cc.
|
inline |
Returns an iterator referring to the past-the-end element in the overlap matrix.
Definition at line 273 of file LArOverlapMatrix.h.
|
private |
Explore connections associated with a given cluster.
| pCluster | address of the cluster |
| clusterList1 | connected view 1 clusters |
| clusterList2 | connected view 2 clusters |
Definition at line 235 of file LArOverlapMatrix.cc.
|
inline |
Get the cluster navigation map 1->2.
Definition at line 309 of file LArOverlapMatrix.h.
|
inline |
Get the cluster navigation map 2->1.
Definition at line 317 of file LArOverlapMatrix.h.
|
inline |
Get a list of elements connected to a specified cluster.
| pCluster | address of a cluster |
| ignoreUnavailable | whether to ignore unavailable clusters |
| elementList | to receive the connected element list |
Definition at line 256 of file LArOverlapMatrix.h.
| void lar_content::OverlapMatrix< T >::GetConnectedElements | ( | const pandora::Cluster *const | pCluster, |
| const bool | ignoreUnavailable, | ||
| ElementList & | elementList, | ||
| unsigned int & | n1, | ||
| unsigned int & | n2 | ||
| ) | const |
Get a list of elements connected to a specified cluster.
| pCluster | address of a cluster |
| ignoreUnavailable | whether to ignore unavailable clusters |
| elementList | to receive the connected element list |
| n1 | to receive the number of view 1 connections |
| n2 | to receive the number of view 2 connections |
Definition at line 78 of file LArOverlapMatrix.cc.
|
private |
Get elements connected to a specified cluster.
| pCluster | address of the cluster |
| elementList | the element list |
| clusterList1 | connected view 1 clusters |
| clusterList2 | connected view 2 clusters |
|
inline |
Get the number of connections for a specified cluster.
| pCluster | address of a cluster |
| ignoreUnavailable | whether to ignore unavailable clusters |
| n1 | to receive the number of view 1 connections |
| n2 | to receive the number of view 2 connections |
Definition at line 247 of file LArOverlapMatrix.h.
|
inline |
Get the overlap list for a specified cluster.
| pCluster1 | address of cluster 1 |
Definition at line 296 of file LArOverlapMatrix.h.
|
inline |
Get the overlap result for a specified pair of clusters.
| pCluster1 | address of cluster 1 |
| pCluster2 | address of cluster 2 |
Definition at line 281 of file LArOverlapMatrix.h.
| void lar_content::OverlapMatrix< T >::GetSortedKeyClusters | ( | pandora::ClusterVector & | sortedKeyClusters | ) | const |
Get a sorted vector of key clusters (view 1 clusters with current implementation)
| sortedKeyClusters | to receive the sorted vector of key clusters |
Definition at line 90 of file LArOverlapMatrix.cc.
| void lar_content::OverlapMatrix< T >::GetUnambiguousElements | ( | const bool | ignoreUnavailable, |
| ElementList & | elementList | ||
| ) | const |
Get unambiguous elements.
| ignoreUnavailable | whether to ignore unavailable clusters |
| elementList | to receive the unambiguous element list |
Definition at line 30 of file LArOverlapMatrix.cc.
| void lar_content::OverlapMatrix< T >::RemoveCluster | ( | const pandora::Cluster *const | pCluster | ) |
Remove entries from matrix corresponding to specified cluster.
| pCluster | address of the cluster |
Definition at line 142 of file LArOverlapMatrix.cc.
| void lar_content::OverlapMatrix< T >::ReplaceOverlapResult | ( | const pandora::Cluster *const | pCluster1, |
| const pandora::Cluster *const | pCluster2, | ||
| const OverlapResult & | overlapResult | ||
| ) |
SetReplace an existing overlap result.
| pCluster1 | address of cluster 1 |
| pCluster2 | address of cluster 2 |
| overlapResult | the overlap result |
Definition at line 124 of file LArOverlapMatrix.cc.
| void lar_content::OverlapMatrix< T >::SetOverlapResult | ( | const pandora::Cluster *const | pCluster1, |
| const pandora::Cluster *const | pCluster2, | ||
| const OverlapResult & | overlapResult | ||
| ) |
Set overlap result.
| pCluster1 | address of cluster 1 |
| pCluster2 | address of cluster 2 |
| overlapResult | the overlap result |
Definition at line 101 of file LArOverlapMatrix.cc.
|
private |
The cluster navigation map 1->2.
Definition at line 240 of file LArOverlapMatrix.h.
|
private |
The cluster navigation map 2->1.
Definition at line 241 of file LArOverlapMatrix.h.
|
private |
The overlap matrix.
Definition at line 239 of file LArOverlapMatrix.h.
1.8.5