Pandora
Pandora source code navigator
Loading...
Searching...
No Matches
lar_content::ThreeViewMatchingControl< T > Class Template Reference

ThreeViewMatchingControl class. More...

#include "ThreeViewMatchingControl.h"

Inheritance diagram for lar_content::ThreeViewMatchingControl< T >:
Collaboration diagram for lar_content::ThreeViewMatchingControl< T >:

Public Types

typedef OverlapTensor< T > TensorType
 

Public Member Functions

 ThreeViewMatchingControl (MatchingBaseAlgorithm *const pAlgorithm)
 Constructor.
 
virtual ~ThreeViewMatchingControl ()
 Destructor.
 
TensorTypeGetOverlapTensor ()
 Get the overlap tensor.
 

Protected Attributes

MatchingBaseAlgorithmm_pAlgorithm
 The address of the matching base algorithm.
 

Private Member Functions

void UpdateForNewCluster (const pandora::Cluster *const pNewCluster)
 Update to reflect addition of a new cluster to the problem space.
 
void UpdateUponDeletion (const pandora::Cluster *const pDeletedCluster)
 Update to reflect cluster deletion.
 
const std::string & GetClusterListName (const pandora::HitType hitType) const
 Get the cluster list name corresponding to a specified hit type.
 
const pandora::ClusterListGetInputClusterList (const pandora::HitType hitType) const
 Get the input cluster list corresponding to a specified hit type.
 
const pandora::ClusterListGetSelectedClusterList (const pandora::HitType hitType) const
 Get the selected cluster list corresponding to a specified hit type.
 
void SelectAllInputClusters ()
 Select a subset of input clusters for processing in this algorithm.
 
void PrepareAllInputClusters ()
 Perform any preparatory steps required on the input clusters, e.g. caching expensive fit results.
 
void PerformMainLoop ()
 Main loop over cluster combinations in order to populate the overlap container. Responsible for calling CalculateOverlapResult.
 
void TidyUp ()
 Tidy member variables.
 
pandora::StatusCode ReadSettings (const pandora::TiXmlHandle xmlHandle)
 Read settings from xml.
 

Private Attributes

const pandora::ClusterListm_pInputClusterListU
 Address of the input cluster list U.
 
const pandora::ClusterListm_pInputClusterListV
 Address of the input cluster list V.
 
const pandora::ClusterListm_pInputClusterListW
 Address of the input cluster list W.
 
pandora::ClusterList m_clusterListU
 The selected modified cluster list U.
 
pandora::ClusterList m_clusterListV
 The selected modified cluster list V.
 
pandora::ClusterList m_clusterListW
 The selected modified cluster list W.
 
TensorType m_overlapTensor
 The overlap tensor.
 
std::string m_inputClusterListNameU
 The name of the view U cluster list.
 
std::string m_inputClusterListNameV
 The name of the view V cluster list.
 
std::string m_inputClusterListNameW
 The name of the view W cluster list.
 

Friends

class ThreeViewTrackFragmentsAlgorithm
 ATTN This is for legacy purposes only.
 
class ThreeViewDeltaRayMatchingAlgorithm
 
template<typename U >
class NViewMatchingAlgorithm
 

Detailed Description

template<typename T>
class lar_content::ThreeViewMatchingControl< T >

ThreeViewMatchingControl class.

Definition at line 22 of file ThreeViewMatchingControl.h.

Member Typedef Documentation

◆ TensorType

template<typename T >
typedef OverlapTensor<T> lar_content::ThreeViewMatchingControl< T >::TensorType

Definition at line 25 of file ThreeViewMatchingControl.h.

Constructor & Destructor Documentation

◆ ThreeViewMatchingControl()

template<typename T >
lar_content::ThreeViewMatchingControl< T >::ThreeViewMatchingControl ( MatchingBaseAlgorithm *const  pAlgorithm)

Constructor.

Parameters
pAlgorithmaddress of the matching base algorithm

Definition at line 25 of file ThreeViewMatchingControl.cc.

◆ ~ThreeViewMatchingControl()

template<typename T >
lar_content::ThreeViewMatchingControl< T >::~ThreeViewMatchingControl ( )
virtual

Destructor.

Definition at line 36 of file ThreeViewMatchingControl.cc.

Member Function Documentation

◆ GetClusterListName()

template<typename T >
const std::string & lar_content::ThreeViewMatchingControl< T >::GetClusterListName ( const pandora::HitType  hitType) const
privatevirtual

Get the cluster list name corresponding to a specified hit type.

Parameters
hitTypethe hit type
Returns
the cluster list name

Implements lar_content::NViewMatchingControl.

Definition at line 117 of file ThreeViewMatchingControl.cc.

◆ GetInputClusterList()

template<typename T >
const pandora::ClusterList & lar_content::ThreeViewMatchingControl< T >::GetInputClusterList ( const pandora::HitType  hitType) const
privatevirtual

Get the input cluster list corresponding to a specified hit type.

Parameters
hitTypethe hit type
Returns
the input cluster list

Implements lar_content::NViewMatchingControl.

Definition at line 134 of file ThreeViewMatchingControl.cc.

◆ GetOverlapTensor()

template<typename T >
ThreeViewMatchingControl< T >::TensorType & lar_content::ThreeViewMatchingControl< T >::GetOverlapTensor ( )

Get the overlap tensor.

Returns
the overlap tensor

Definition at line 43 of file ThreeViewMatchingControl.cc.

Here is the caller graph for this function:

◆ GetSelectedClusterList()

template<typename T >
const pandora::ClusterList & lar_content::ThreeViewMatchingControl< T >::GetSelectedClusterList ( const pandora::HitType  hitType) const
privatevirtual

Get the selected cluster list corresponding to a specified hit type.

Parameters
hitTypethe hit type
Returns
the selected cluster list

Implements lar_content::NViewMatchingControl.

Definition at line 151 of file ThreeViewMatchingControl.cc.

◆ PerformMainLoop()

template<typename T >
void lar_content::ThreeViewMatchingControl< T >::PerformMainLoop ( )
privatevirtual

Main loop over cluster combinations in order to populate the overlap container. Responsible for calling CalculateOverlapResult.

Implements lar_content::NViewMatchingControl.

Definition at line 219 of file ThreeViewMatchingControl.cc.

Here is the call graph for this function:

◆ PrepareAllInputClusters()

template<typename T >
void lar_content::ThreeViewMatchingControl< T >::PrepareAllInputClusters ( )
privatevirtual

Perform any preparatory steps required on the input clusters, e.g. caching expensive fit results.

Implements lar_content::NViewMatchingControl.

Definition at line 193 of file ThreeViewMatchingControl.cc.

◆ ReadSettings()

template<typename T >
StatusCode lar_content::ThreeViewMatchingControl< T >::ReadSettings ( const pandora::TiXmlHandle  xmlHandle)
privatevirtual

Read settings from xml.

Parameters
xmlHandlethe xml handle

Implements lar_content::NViewMatchingControl.

Definition at line 241 of file ThreeViewMatchingControl.cc.

Here is the call graph for this function:

◆ SelectAllInputClusters()

template<typename T >
void lar_content::ThreeViewMatchingControl< T >::SelectAllInputClusters ( )
privatevirtual

Select a subset of input clusters for processing in this algorithm.

Implements lar_content::NViewMatchingControl.

Definition at line 168 of file ThreeViewMatchingControl.cc.

Here is the call graph for this function:

◆ TidyUp()

template<typename T >
void lar_content::ThreeViewMatchingControl< T >::TidyUp ( )
privatevirtual

Tidy member variables.

Implements lar_content::NViewMatchingControl.

Definition at line 203 of file ThreeViewMatchingControl.cc.

◆ UpdateForNewCluster()

template<typename T >
void lar_content::ThreeViewMatchingControl< T >::UpdateForNewCluster ( const pandora::Cluster *const  pNewCluster)
privatevirtual

Update to reflect addition of a new cluster to the problem space.

Parameters
pNewClusteraddress of the new cluster

Implements lar_content::NViewMatchingControl.

Definition at line 51 of file ThreeViewMatchingControl.cc.

◆ UpdateUponDeletion()

template<typename T >
void lar_content::ThreeViewMatchingControl< T >::UpdateUponDeletion ( const pandora::Cluster *const  pDeletedCluster)
privatevirtual

Update to reflect cluster deletion.

Parameters
pDeletedClusteraddress of the deleted cluster

Implements lar_content::NViewMatchingControl.

Definition at line 96 of file ThreeViewMatchingControl.cc.

Friends And Related Symbol Documentation

◆ NViewMatchingAlgorithm

template<typename T >
template<typename U >
friend class NViewMatchingAlgorithm
friend

Definition at line 76 of file ThreeViewMatchingControl.h.

◆ ThreeViewDeltaRayMatchingAlgorithm

template<typename T >
friend class ThreeViewDeltaRayMatchingAlgorithm
friend

Definition at line 73 of file ThreeViewMatchingControl.h.

◆ ThreeViewTrackFragmentsAlgorithm

template<typename T >
friend class ThreeViewTrackFragmentsAlgorithm
friend

ATTN This is for legacy purposes only.

Definition at line 72 of file ThreeViewMatchingControl.h.

Member Data Documentation

◆ m_clusterListU

template<typename T >
pandora::ClusterList lar_content::ThreeViewMatchingControl< T >::m_clusterListU
private

The selected modified cluster list U.

Definition at line 62 of file ThreeViewMatchingControl.h.

◆ m_clusterListV

template<typename T >
pandora::ClusterList lar_content::ThreeViewMatchingControl< T >::m_clusterListV
private

The selected modified cluster list V.

Definition at line 63 of file ThreeViewMatchingControl.h.

◆ m_clusterListW

template<typename T >
pandora::ClusterList lar_content::ThreeViewMatchingControl< T >::m_clusterListW
private

The selected modified cluster list W.

Definition at line 64 of file ThreeViewMatchingControl.h.

◆ m_inputClusterListNameU

template<typename T >
std::string lar_content::ThreeViewMatchingControl< T >::m_inputClusterListNameU
private

The name of the view U cluster list.

Definition at line 68 of file ThreeViewMatchingControl.h.

◆ m_inputClusterListNameV

template<typename T >
std::string lar_content::ThreeViewMatchingControl< T >::m_inputClusterListNameV
private

The name of the view V cluster list.

Definition at line 69 of file ThreeViewMatchingControl.h.

◆ m_inputClusterListNameW

template<typename T >
std::string lar_content::ThreeViewMatchingControl< T >::m_inputClusterListNameW
private

The name of the view W cluster list.

Definition at line 70 of file ThreeViewMatchingControl.h.

◆ m_overlapTensor

template<typename T >
TensorType lar_content::ThreeViewMatchingControl< T >::m_overlapTensor
private

The overlap tensor.

Definition at line 66 of file ThreeViewMatchingControl.h.

◆ m_pAlgorithm

MatchingBaseAlgorithm* lar_content::NViewMatchingControl::m_pAlgorithm
protectedinherited

The address of the matching base algorithm.

Definition at line 105 of file NViewMatchingControl.h.

◆ m_pInputClusterListU

template<typename T >
const pandora::ClusterList* lar_content::ThreeViewMatchingControl< T >::m_pInputClusterListU
private

Address of the input cluster list U.

Definition at line 58 of file ThreeViewMatchingControl.h.

◆ m_pInputClusterListV

template<typename T >
const pandora::ClusterList* lar_content::ThreeViewMatchingControl< T >::m_pInputClusterListV
private

Address of the input cluster list V.

Definition at line 59 of file ThreeViewMatchingControl.h.

◆ m_pInputClusterListW

template<typename T >
const pandora::ClusterList* lar_content::ThreeViewMatchingControl< T >::m_pInputClusterListW
private

Address of the input cluster list W.

Definition at line 60 of file ThreeViewMatchingControl.h.


The documentation for this class was generated from the following files: