LArSoft
v09_90_00
Liquid Argon Software toolkit - https://larsoft.org/
|
TwoDSlidingFitConsolidationAlgorithm class. More...
#include "TwoDSlidingFitConsolidationAlgorithm.h"
Public Member Functions | |
TwoDSlidingFitConsolidationAlgorithm () | |
Default constructor. More... | |
Protected Types | |
typedef std::unordered_map< const pandora::Cluster *, pandora::CaloHitList > | ClusterToHitMap |
Protected Member Functions | |
pandora::StatusCode | Run () |
pandora::StatusCode | ReadSettings (const pandora::TiXmlHandle xmlHandle) |
virtual void | GetReclusteredHits (const TwoDSlidingFitResultList &slidingFitResultList, const pandora::ClusterVector &showerClusters, ClusterToHitMap &caloHitsToAdd, ClusterToHitMap &caloHitsToRemove) const =0 |
Get the list of hits to be added or removed from clusters. More... | |
Private Member Functions | |
void | SortInputClusters (const pandora::ClusterList *const pClusterList, pandora::ClusterVector &trackClusters, pandora::ClusterVector &showerClusters) const |
Sort input cluster list into track-like clusters and shower-like clusters. More... | |
void | BuildSlidingLinearFits (const pandora::ClusterVector &trackClusters, TwoDSlidingFitResultList &slidingFitResultList) const |
Apply sliding linear fits to track clusters. More... | |
pandora::StatusCode | RemoveHitsFromClusters (const ClusterToHitMap &clustersToRebuild, pandora::ClusterSet &unavailableClusters) const |
Remove hits from clusters. More... | |
pandora::StatusCode | AddHitsToClusters (const ClusterToHitMap &clustersToRebuild, pandora::ClusterSet &unavailableClusters) const |
Add hits to clusters. More... | |
pandora::StatusCode | RebuildClusters (const ClusterToHitMap &clustersAtStart, const pandora::ClusterSet &unavailableClusters) const |
Re-build clusters. More... | |
Private Attributes | |
std::string | m_reclusteringAlgorithmName |
Name of daughter algorithm to use for cluster re-building. More... | |
float | m_minTrackLength |
Minimum length of track clusters to consolidate. More... | |
float | m_maxClusterLength |
Maximum length of shower clusters to use in re-building. More... | |
unsigned int | m_halfWindowLayers |
Size of layer window for sliding fit results. More... | |
TwoDSlidingFitConsolidationAlgorithm class.
Definition at line 23 of file TwoDSlidingFitConsolidationAlgorithm.h.
|
protected |
Definition at line 35 of file TwoDSlidingFitConsolidationAlgorithm.h.
lar_content::TwoDSlidingFitConsolidationAlgorithm::TwoDSlidingFitConsolidationAlgorithm | ( | ) |
Default constructor.
Definition at line 21 of file TwoDSlidingFitConsolidationAlgorithm.cc.
|
private |
Add hits to clusters.
clustersToRebuild | the list of hits to be added to clusters |
unavailableClusters | the list of modified clusters |
Definition at line 145 of file TwoDSlidingFitConsolidationAlgorithm.cc.
References lar_content::LArClusterHelper::SortByNHits().
Referenced by Run().
|
private |
Apply sliding linear fits to track clusters.
trackClusters | the input vector of track-like clusters |
slidingFitResultList | the output list of sliding linear fits |
Definition at line 80 of file TwoDSlidingFitConsolidationAlgorithm.cc.
References lar_content::LArClusterHelper::GetClusterHitType(), lar_content::LArGeometryHelper::GetWirePitch(), and m_halfWindowLayers.
Referenced by Run().
|
protectedpure virtual |
Get the list of hits to be added or removed from clusters.
slidingFitResultList | the list of sliding linear fits to track clusters |
showerClusters | the vector of shower clusters |
caloHitsToAdd | the output map of hits to be added to clusters |
caloHitsToRemove | the output map of hits to be removed from clusters |
Implemented in lar_content::TrackConsolidationAlgorithm.
Referenced by Run().
|
protected |
Definition at line 220 of file TwoDSlidingFitConsolidationAlgorithm.cc.
References m_halfWindowLayers, m_maxClusterLength, m_minTrackLength, and m_reclusteringAlgorithmName.
Referenced by lar_content::TrackConsolidationAlgorithm::ReadSettings().
|
private |
Re-build clusters.
clustersAtStart | the initial mapping of clusters to hits |
unavailableClusters | the list of unavailable clusters |
Definition at line 180 of file TwoDSlidingFitConsolidationAlgorithm.cc.
References m_reclusteringAlgorithmName, and lar_content::LArClusterHelper::SortByNHits().
Referenced by Run().
|
private |
Remove hits from clusters.
clustersToRebuild | the list of hits to be removed from clusters |
unavailableClusters | the list of deleted clusters |
Definition at line 100 of file TwoDSlidingFitConsolidationAlgorithm.cc.
References lar_content::LArClusterHelper::SortByNHits().
Referenced by Run().
|
protected |
Definition at line 30 of file TwoDSlidingFitConsolidationAlgorithm.cc.
References AddHitsToClusters(), BuildSlidingLinearFits(), GetReclusteredHits(), RebuildClusters(), RemoveHitsFromClusters(), and SortInputClusters().
|
private |
Sort input cluster list into track-like clusters and shower-like clusters.
pClusterList | the input cluster list |
trackClusters | the output vector of track-like clusters |
showerClusters | the output vector of shower-like clusters |
Definition at line 58 of file TwoDSlidingFitConsolidationAlgorithm.cc.
References lar_content::LArClusterHelper::GetLengthSquared(), m_maxClusterLength, m_minTrackLength, and lar_content::LArClusterHelper::SortByNHits().
Referenced by Run().
|
private |
Size of layer window for sliding fit results.
Definition at line 94 of file TwoDSlidingFitConsolidationAlgorithm.h.
Referenced by BuildSlidingLinearFits(), and ReadSettings().
|
private |
Maximum length of shower clusters to use in re-building.
Definition at line 93 of file TwoDSlidingFitConsolidationAlgorithm.h.
Referenced by ReadSettings(), and SortInputClusters().
|
private |
Minimum length of track clusters to consolidate.
Definition at line 92 of file TwoDSlidingFitConsolidationAlgorithm.h.
Referenced by ReadSettings(), and SortInputClusters().
|
private |
Name of daughter algorithm to use for cluster re-building.
Definition at line 91 of file TwoDSlidingFitConsolidationAlgorithm.h.
Referenced by ReadSettings(), and RebuildClusters().