Pandora
Pandora source code navigator
Loading...
Searching...
No Matches
NViewMatchingAlgorithm.h
Go to the documentation of this file.
1
8#ifndef LAR_N_VIEW_MATCHING_ALGORITHM_H
9#define LAR_N_VIEW_MATCHING_ALGORITHM_H 1
10
12
13namespace lar_content
14{
15
19template <typename T>
21{
22public:
23 typedef T MatchingType;
24
29
34
35 void UpdateForNewCluster(const pandora::Cluster *const pNewCluster);
36 void UpdateUponDeletion(const pandora::Cluster *const pDeletedCluster);
37 const std::string &GetClusterListName(const pandora::HitType hitType) const;
40
41protected:
46
47 virtual void SelectAllInputClusters();
48 virtual void PrepareAllInputClusters();
49 virtual void PerformMainLoop();
50 virtual void TidyUp();
52
54};
55
56//------------------------------------------------------------------------------------------------------------------------------------------
57
58template <typename T>
60{
61 return m_matchingControl;
62}
63
64} // namespace lar_content
65
66#endif // #ifndef LAR_N_VIEW_MATCHING_ALGORITHM_H
Header file for the three dimension algorithm base class.
const std::string & GetClusterListName(const pandora::HitType hitType) const
Get the cluster list name corresponding to a specified hit type.
const pandora::ClusterList & GetInputClusterList(const pandora::HitType hitType) const
Get the input cluster list corresponding to a specified hit type.
void UpdateUponDeletion(const pandora::Cluster *const pDeletedCluster)
Update to reflect cluster deletion.
virtual void PerformMainLoop()
Main loop over cluster combinations in order to populate the overlap container. Responsible for calli...
virtual void PrepareAllInputClusters()
Perform any preparatory steps required, e.g. caching expensive fit results for clusters.
void UpdateForNewCluster(const pandora::Cluster *const pNewCluster)
Update to reflect addition of a new cluster to the problem space.
virtual pandora::StatusCode ReadSettings(const pandora::TiXmlHandle xmlHandle)
Read the algorithm settings.
MatchingType & GetMatchingControl()
Get the matching control.
virtual void TidyUp()
Tidy member variables in derived class.
const pandora::ClusterList & GetSelectedClusterList(const pandora::HitType hitType) const
Get the selected cluster list corresponding to a specified hit type.
virtual void SelectAllInputClusters()
Select a subset of input clusters for processing in this algorithm.
MatchingType m_matchingControl
The matching control.
Cluster class.
Definition Cluster.h:31
HitType
Calorimeter hit type enum.
MANAGED_CONTAINER< const Cluster * > ClusterList
StatusCode
The StatusCode enum.