LArSoft
v09_90_00
Liquid Argon Software toolkit - https://larsoft.org/
|
NViewMatchingControl class. More...
#include "NViewMatchingControl.h"
Public Member Functions | |
NViewMatchingControl (MatchingBaseAlgorithm *const pAlgorithm) | |
Constructor. More... | |
virtual | ~NViewMatchingControl () |
Destructor. More... | |
Protected Member Functions | |
virtual void | UpdateForNewCluster (const pandora::Cluster *const pNewCluster)=0 |
Update to reflect addition of a new cluster to the problem space. More... | |
virtual void | UpdateUponDeletion (const pandora::Cluster *const pDeletedCluster)=0 |
Update to reflect cluster deletion. More... | |
virtual const std::string & | GetClusterListName (const pandora::HitType hitType) const =0 |
Get the cluster list name corresponding to a specified hit type. More... | |
virtual const pandora::ClusterList & | GetInputClusterList (const pandora::HitType hitType) const =0 |
Get the input cluster list corresponding to a specified hit type. More... | |
virtual const pandora::ClusterList & | GetSelectedClusterList (const pandora::HitType hitType) const =0 |
Get the selected cluster list corresponding to a specified hit type. More... | |
virtual void | SelectAllInputClusters ()=0 |
Select a subset of input clusters for processing in this algorithm. More... | |
virtual void | PrepareAllInputClusters ()=0 |
Perform any preparatory steps required on the input clusters, e.g. caching expensive fit results. More... | |
virtual void | PerformMainLoop ()=0 |
Main loop over cluster combinations in order to populate the overlap container. Responsible for calling CalculateOverlapResult. More... | |
virtual void | TidyUp ()=0 |
Tidy member variables. More... | |
virtual pandora::StatusCode | ReadSettings (const pandora::TiXmlHandle xmlHandle)=0 |
Read settings from xml. More... | |
Protected Attributes | |
MatchingBaseAlgorithm * | m_pAlgorithm |
The address of the matching base algorithm. More... | |
NViewMatchingControl class.
Definition at line 21 of file NViewMatchingControl.h.
|
inline |
Constructor.
pAlgorithm | address of the matching base algorithm |
Definition at line 110 of file NViewMatchingControl.h.
|
inlinevirtual |
|
protectedpure virtual |
Get the cluster list name corresponding to a specified hit type.
hitType | the hit type |
Implemented in lar_content::TwoViewMatchingControl< T >, lar_content::TwoViewMatchingControl< TwoViewTransverseOverlapResult >, lar_content::TwoViewMatchingControl< TwoViewDeltaRayOverlapResult >, lar_content::ThreeViewMatchingControl< T >, lar_content::ThreeViewMatchingControl< DeltaRayOverlapResult >, lar_content::ThreeViewMatchingControl< float >, lar_content::ThreeViewMatchingControl< ShowerOverlapResult >, lar_content::ThreeViewMatchingControl< TransverseOverlapResult >, lar_content::ThreeViewMatchingControl< FragmentOverlapResult >, and lar_content::ThreeViewMatchingControl< LongitudinalOverlapResult >.
|
protectedpure virtual |
Get the input cluster list corresponding to a specified hit type.
hitType | the hit type |
Implemented in lar_content::TwoViewMatchingControl< T >, lar_content::TwoViewMatchingControl< TwoViewTransverseOverlapResult >, lar_content::TwoViewMatchingControl< TwoViewDeltaRayOverlapResult >, lar_content::ThreeViewMatchingControl< T >, lar_content::ThreeViewMatchingControl< DeltaRayOverlapResult >, lar_content::ThreeViewMatchingControl< float >, lar_content::ThreeViewMatchingControl< ShowerOverlapResult >, lar_content::ThreeViewMatchingControl< TransverseOverlapResult >, lar_content::ThreeViewMatchingControl< FragmentOverlapResult >, and lar_content::ThreeViewMatchingControl< LongitudinalOverlapResult >.
|
protectedpure virtual |
Get the selected cluster list corresponding to a specified hit type.
hitType | the hit type |
Implemented in lar_content::TwoViewMatchingControl< T >, lar_content::TwoViewMatchingControl< TwoViewTransverseOverlapResult >, lar_content::TwoViewMatchingControl< TwoViewDeltaRayOverlapResult >, lar_content::ThreeViewMatchingControl< T >, lar_content::ThreeViewMatchingControl< DeltaRayOverlapResult >, lar_content::ThreeViewMatchingControl< float >, lar_content::ThreeViewMatchingControl< ShowerOverlapResult >, lar_content::ThreeViewMatchingControl< TransverseOverlapResult >, lar_content::ThreeViewMatchingControl< FragmentOverlapResult >, and lar_content::ThreeViewMatchingControl< LongitudinalOverlapResult >.
|
protectedpure virtual |
Main loop over cluster combinations in order to populate the overlap container. Responsible for calling CalculateOverlapResult.
Implemented in lar_content::TwoViewMatchingControl< T >, lar_content::TwoViewMatchingControl< TwoViewTransverseOverlapResult >, lar_content::TwoViewMatchingControl< TwoViewDeltaRayOverlapResult >, lar_content::ThreeViewMatchingControl< T >, lar_content::ThreeViewMatchingControl< DeltaRayOverlapResult >, lar_content::ThreeViewMatchingControl< float >, lar_content::ThreeViewMatchingControl< ShowerOverlapResult >, lar_content::ThreeViewMatchingControl< TransverseOverlapResult >, lar_content::ThreeViewMatchingControl< FragmentOverlapResult >, and lar_content::ThreeViewMatchingControl< LongitudinalOverlapResult >.
|
protectedpure virtual |
Perform any preparatory steps required on the input clusters, e.g. caching expensive fit results.
Implemented in lar_content::TwoViewMatchingControl< T >, lar_content::TwoViewMatchingControl< TwoViewTransverseOverlapResult >, lar_content::TwoViewMatchingControl< TwoViewDeltaRayOverlapResult >, lar_content::ThreeViewMatchingControl< T >, lar_content::ThreeViewMatchingControl< DeltaRayOverlapResult >, lar_content::ThreeViewMatchingControl< float >, lar_content::ThreeViewMatchingControl< ShowerOverlapResult >, lar_content::ThreeViewMatchingControl< TransverseOverlapResult >, lar_content::ThreeViewMatchingControl< FragmentOverlapResult >, and lar_content::ThreeViewMatchingControl< LongitudinalOverlapResult >.
|
protectedpure virtual |
Read settings from xml.
xmlHandle | the xml handle |
Implemented in lar_content::TwoViewMatchingControl< T >, lar_content::TwoViewMatchingControl< TwoViewTransverseOverlapResult >, lar_content::TwoViewMatchingControl< TwoViewDeltaRayOverlapResult >, lar_content::ThreeViewMatchingControl< T >, lar_content::ThreeViewMatchingControl< DeltaRayOverlapResult >, lar_content::ThreeViewMatchingControl< float >, lar_content::ThreeViewMatchingControl< ShowerOverlapResult >, lar_content::ThreeViewMatchingControl< TransverseOverlapResult >, lar_content::ThreeViewMatchingControl< FragmentOverlapResult >, and lar_content::ThreeViewMatchingControl< LongitudinalOverlapResult >.
|
protectedpure virtual |
Select a subset of input clusters for processing in this algorithm.
Implemented in lar_content::TwoViewMatchingControl< T >, lar_content::TwoViewMatchingControl< TwoViewTransverseOverlapResult >, lar_content::TwoViewMatchingControl< TwoViewDeltaRayOverlapResult >, lar_content::ThreeViewMatchingControl< T >, lar_content::ThreeViewMatchingControl< DeltaRayOverlapResult >, lar_content::ThreeViewMatchingControl< float >, lar_content::ThreeViewMatchingControl< ShowerOverlapResult >, lar_content::ThreeViewMatchingControl< TransverseOverlapResult >, lar_content::ThreeViewMatchingControl< FragmentOverlapResult >, and lar_content::ThreeViewMatchingControl< LongitudinalOverlapResult >.
|
protectedpure virtual |
Tidy member variables.
Implemented in lar_content::TwoViewMatchingControl< T >, lar_content::TwoViewMatchingControl< TwoViewTransverseOverlapResult >, lar_content::TwoViewMatchingControl< TwoViewDeltaRayOverlapResult >, lar_content::ThreeViewMatchingControl< T >, lar_content::ThreeViewMatchingControl< DeltaRayOverlapResult >, lar_content::ThreeViewMatchingControl< float >, lar_content::ThreeViewMatchingControl< ShowerOverlapResult >, lar_content::ThreeViewMatchingControl< TransverseOverlapResult >, lar_content::ThreeViewMatchingControl< FragmentOverlapResult >, and lar_content::ThreeViewMatchingControl< LongitudinalOverlapResult >.
|
protectedpure virtual |
Update to reflect addition of a new cluster to the problem space.
pNewCluster | address of the new cluster |
Implemented in lar_content::TwoViewMatchingControl< T >, lar_content::TwoViewMatchingControl< TwoViewTransverseOverlapResult >, lar_content::TwoViewMatchingControl< TwoViewDeltaRayOverlapResult >, lar_content::ThreeViewMatchingControl< T >, lar_content::ThreeViewMatchingControl< DeltaRayOverlapResult >, lar_content::ThreeViewMatchingControl< float >, lar_content::ThreeViewMatchingControl< ShowerOverlapResult >, lar_content::ThreeViewMatchingControl< TransverseOverlapResult >, lar_content::ThreeViewMatchingControl< FragmentOverlapResult >, and lar_content::ThreeViewMatchingControl< LongitudinalOverlapResult >.
|
protectedpure virtual |
Update to reflect cluster deletion.
pDeletedCluster | address of the deleted cluster |
Implemented in lar_content::TwoViewMatchingControl< T >, lar_content::TwoViewMatchingControl< TwoViewTransverseOverlapResult >, lar_content::TwoViewMatchingControl< TwoViewDeltaRayOverlapResult >, lar_content::ThreeViewMatchingControl< T >, lar_content::ThreeViewMatchingControl< DeltaRayOverlapResult >, lar_content::ThreeViewMatchingControl< float >, lar_content::ThreeViewMatchingControl< ShowerOverlapResult >, lar_content::ThreeViewMatchingControl< TransverseOverlapResult >, lar_content::ThreeViewMatchingControl< FragmentOverlapResult >, and lar_content::ThreeViewMatchingControl< LongitudinalOverlapResult >.
|
protected |
The address of the matching base algorithm.
Definition at line 105 of file NViewMatchingControl.h.
Referenced by lar_content::ThreeViewMatchingControl< T >::PerformMainLoop(), lar_content::TwoViewMatchingControl< T >::PerformMainLoop(), lar_content::ThreeViewMatchingControl< T >::PrepareAllInputClusters(), lar_content::TwoViewMatchingControl< T >::PrepareAllInputClusters(), lar_content::ThreeViewMatchingControl< T >::SelectAllInputClusters(), lar_content::TwoViewMatchingControl< T >::SelectAllInputClusters(), lar_content::ThreeViewMatchingControl< T >::UpdateForNewCluster(), and lar_content::TwoViewMatchingControl< T >::UpdateForNewCluster().