![]() |
LArSoft
v07_13_02
Liquid Argon Software toolkit - http://larsoft.org/
|
TwoDTrackSplittingAlgorithm class. More...
#include "TwoDSlidingFitMultiSplitAlgorithm.h"
Public Member Functions | |
| TwoDSlidingFitMultiSplitAlgorithm () | |
| Default constructor. More... | |
Protected Types | |
| typedef std::unordered_map< const pandora::Cluster *, pandora::CartesianPointVector > | ClusterPositionMap |
Protected Member Functions | |
| virtual void | GetListOfCleanClusters (const pandora::ClusterList *const pClusterList, pandora::ClusterVector &clusterVector) const =0 |
| Populate cluster vector with subset of cluster list, containing clusters judged to be clean. More... | |
| virtual void | FindBestSplitPositions (const TwoDSlidingFitResultMap &slidingFitResultMap, ClusterPositionMap &clusterSplittingMap) const =0 |
| Determine best split positions based on sliding fit result. More... | |
| pandora::StatusCode | ReadSettings (const pandora::TiXmlHandle xmlHandle) |
Private Member Functions | |
| pandora::StatusCode | Run () |
| void | BuildSlidingFitResultMap (const pandora::ClusterVector &clusterVector, const unsigned int halfWindowLayers, TwoDSlidingFitResultMap &slidingFitResultMap) const |
| Build the map of sliding fit results. More... | |
| pandora::StatusCode | SplitClusters (const TwoDSlidingFitResultMap &slidingFitResultMap, const ClusterPositionMap &clusterSplittingMap) const |
| Split clusters. More... | |
| pandora::StatusCode | SplitCluster (const TwoDSlidingFitResult &slidingFitResult, const pandora::CartesianPointVector &splitPositionList) const |
| Split cluster. More... | |
Private Attributes | |
| unsigned int | m_slidingFitHalfWindow |
| std::string | m_inputClusterList |
TwoDTrackSplittingAlgorithm class.
Definition at line 21 of file TwoDSlidingFitMultiSplitAlgorithm.h.
|
protected |
Definition at line 30 of file TwoDSlidingFitMultiSplitAlgorithm.h.
| lar_content::TwoDSlidingFitMultiSplitAlgorithm::TwoDSlidingFitMultiSplitAlgorithm | ( | ) |
Default constructor.
Definition at line 21 of file TwoDSlidingFitMultiSplitAlgorithm.cc.
|
private |
Build the map of sliding fit results.
| clusterVector | the vector of selected clusters |
| halfWindowLayers | the half-window to use for the sliding fits |
| slidingFitResultMap | the sliding fit result map |
Definition at line 74 of file TwoDSlidingFitMultiSplitAlgorithm.cc.
References lar_content::LArGeometryHelper::GetWireZPitch().
Referenced by Run().
|
protectedpure virtual |
Determine best split positions based on sliding fit result.
| slidingFitResultMap | mapping from clusters to sliding fit results |
| clusterSplittingMap | mapping from clusters to split positions |
Implemented in lar_content::OvershootSplittingAlgorithm.
Referenced by Run().
|
protectedpure virtual |
Populate cluster vector with subset of cluster list, containing clusters judged to be clean.
| pClusterList | address of the cluster list |
| clusterVector | to receive the populated cluster vector |
Implemented in lar_content::OvershootSplittingAlgorithm.
Referenced by Run().
|
protected |
Definition at line 212 of file TwoDSlidingFitMultiSplitAlgorithm.cc.
References m_inputClusterList, and m_slidingFitHalfWindow.
Referenced by lar_content::OvershootSplittingAlgorithm::ReadSettings().
|
private |
Definition at line 29 of file TwoDSlidingFitMultiSplitAlgorithm.cc.
References BuildSlidingFitResultMap(), FindBestSplitPositions(), GetListOfCleanClusters(), m_inputClusterList, m_slidingFitHalfWindow, and SplitClusters().
|
private |
Split cluster.
| slidingFitResult | input sliding fit result |
| splitPositionList | vector of split positions |
Definition at line 132 of file TwoDSlidingFitMultiSplitAlgorithm.cc.
References f, lar_content::TwoDSlidingFitResult::GetCluster(), lar_content::TwoDSlidingFitResult::GetL(), lar_content::TwoDSlidingFitResult::GetLocalPosition(), and lar_content::TwoDSlidingFitResult::GetMaxLayer().
Referenced by SplitClusters().
|
private |
Split clusters.
| slidingFitResultMap | mapping from clusters to sliding fit results |
| clusterSplittingMap | mapping from clusters to split positions |
Definition at line 101 of file TwoDSlidingFitMultiSplitAlgorithm.cc.
References lar_content::LArClusterHelper::SortByNHits(), and SplitCluster().
Referenced by Run().
|
private |
Definition at line 80 of file TwoDSlidingFitMultiSplitAlgorithm.h.
Referenced by ReadSettings(), and Run().
|
private |
Definition at line 79 of file TwoDSlidingFitMultiSplitAlgorithm.h.
Referenced by ReadSettings(), and Run().