Pandora
Pandora source code navigator
Loading...
Searching...
No Matches
lar_content::TrackConsolidationAlgorithm Class Reference

TrackConsolidationAlgorithm class. More...

#include "TrackConsolidationAlgorithm.h"

Inheritance diagram for lar_content::TrackConsolidationAlgorithm:
Collaboration diagram for lar_content::TrackConsolidationAlgorithm:

Public Member Functions

 TrackConsolidationAlgorithm ()
 Default constructor.
 
const std::string & GetType () const
 Get the type.
 
const std::string & GetInstanceName () const
 Get the instance name.
 
const PandoraGetPandora () const
 Get the associated pandora instance.
 

Protected Types

typedef std::unordered_map< const pandora::Cluster *, pandora::CaloHitListClusterToHitMap
 

Protected Member Functions

pandora::StatusCode Run ()
 Run the algorithm.
 
virtual StatusCode Initialize ()
 Perform any operations that must occur after reading settings, but before running the process.
 
virtual StatusCode Reset ()
 Perform any operations when pandora is reset, typically at the end of each event.
 
StatusCode RegisterDetails (const Pandora *const pPandora, const std::string &type, const std::string &instanceName)
 Register i) the pandora instance that will run the process and ii) the process type.
 

Protected Attributes

const Pandoram_pPandora
 The pandora object that will run the process.
 
std::string m_type
 The process type.
 
std::string m_instanceName
 The process instance name.
 

Private Member Functions

pandora::StatusCode ReadSettings (const pandora::TiXmlHandle xmlHandle)
 Read the algorithm settings.
 
void GetReclusteredHits (const TwoDSlidingFitResultList &slidingFitResultList, const pandora::ClusterVector &showerClusters, ClusterToHitMap &caloHitsToAdd, ClusterToHitMap &caloHitsToRemove) const
 Get the list of hits to be added to track clusters and removed from shower clusters.
 
void GetReclusteredHits (const TwoDSlidingFitResult &slidingFitResult, const pandora::Cluster *const pTargetCluster, ClusterToHitMap &caloHitsToAdd, ClusterToHitMap &caloHitsToRemove) const
 Get the list of hits to be added to a track cluster and removed from a shower cluster.
 
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.
 
void BuildSlidingLinearFits (const pandora::ClusterVector &trackClusters, TwoDSlidingFitResultList &slidingFitResultList) const
 Apply sliding linear fits to track clusters.
 
pandora::StatusCode RemoveHitsFromClusters (const ClusterToHitMap &clustersToRebuild, pandora::ClusterSet &unavailableClusters) const
 Remove hits from clusters.
 
pandora::StatusCode AddHitsToClusters (const ClusterToHitMap &clustersToRebuild, pandora::ClusterSet &unavailableClusters) const
 Add hits to clusters.
 
pandora::StatusCode RebuildClusters (const ClusterToHitMap &clustersAtStart, const pandora::ClusterSet &unavailableClusters) const
 Re-build clusters.
 

Private Attributes

float m_maxTransverseDisplacement
 
float m_minAssociatedSpan
 
float m_minAssociatedFraction
 
std::string m_reclusteringAlgorithmName
 Name of daughter algorithm to use for cluster re-building.
 
float m_minTrackLength
 Minimum length of track clusters to consolidate.
 
float m_maxClusterLength
 Maximum length of shower clusters to use in re-building.
 
unsigned int m_halfWindowLayers
 Size of layer window for sliding fit results.
 

Detailed Description

Member Typedef Documentation

◆ ClusterToHitMap

Constructor & Destructor Documentation

◆ TrackConsolidationAlgorithm()

lar_content::TrackConsolidationAlgorithm::TrackConsolidationAlgorithm ( )

Default constructor.

Definition at line 18 of file TrackConsolidationAlgorithm.cc.

Member Function Documentation

◆ AddHitsToClusters()

StatusCode lar_content::TwoDSlidingFitConsolidationAlgorithm::AddHitsToClusters ( const ClusterToHitMap clustersToRebuild,
pandora::ClusterSet unavailableClusters 
) const
privateinherited

Add hits to clusters.

Parameters
clustersToRebuildthe list of hits to be added to clusters
unavailableClustersthe list of modified clusters

Definition at line 146 of file TwoDSlidingFitConsolidationAlgorithm.cc.

Here is the call graph for this function:
Here is the caller graph for this function:

◆ BuildSlidingLinearFits()

void lar_content::TwoDSlidingFitConsolidationAlgorithm::BuildSlidingLinearFits ( const pandora::ClusterVector trackClusters,
TwoDSlidingFitResultList slidingFitResultList 
) const
privateinherited

Apply sliding linear fits to track clusters.

Parameters
trackClustersthe input vector of track-like clusters
slidingFitResultListthe output list of sliding linear fits

Definition at line 80 of file TwoDSlidingFitConsolidationAlgorithm.cc.

Here is the call graph for this function:
Here is the caller graph for this function:

◆ GetInstanceName()

const std::string & pandora::Process::GetInstanceName ( ) const
inlineinherited

Get the instance name.

Returns
The instance name

Definition at line 109 of file Process.h.

◆ GetPandora()

const Pandora & pandora::Process::GetPandora ( ) const
inlineinherited

Get the associated pandora instance.

Returns
the associated pandora instance

Definition at line 116 of file Process.h.

◆ GetReclusteredHits() [1/2]

void lar_content::TrackConsolidationAlgorithm::GetReclusteredHits ( const TwoDSlidingFitResult slidingFitResult,
const pandora::Cluster *const  pTargetCluster,
ClusterToHitMap caloHitsToAdd,
ClusterToHitMap caloHitsToRemove 
) const
private

Get the list of hits to be added to a track cluster and removed from a shower cluster.

Parameters
slidingFitResultsliding linear fit to track cluster
pTargetClustershower cluster
caloHitsToAddthe output map of hits to be added to clusters
caloHitsToRemovethe output map of hits to be removed from clusters

Definition at line 52 of file TrackConsolidationAlgorithm.cc.

Here is the call graph for this function:

◆ GetReclusteredHits() [2/2]

void lar_content::TrackConsolidationAlgorithm::GetReclusteredHits ( const TwoDSlidingFitResultList slidingFitResultList,
const pandora::ClusterVector showerClusters,
ClusterToHitMap caloHitsToAdd,
ClusterToHitMap caloHitsToRemove 
) const
privatevirtual

Get the list of hits to be added to track clusters and removed from shower clusters.

Parameters
slidingFitResultListthe list of sliding linear fits to track clusters
showerClustersthe vector of shower clusters
caloHitsToAddthe output map of hits to be added to clusters
caloHitsToRemovethe output map of hits to be removed from clusters

Implements lar_content::TwoDSlidingFitConsolidationAlgorithm.

Definition at line 27 of file TrackConsolidationAlgorithm.cc.

Here is the call graph for this function:
Here is the caller graph for this function:

◆ GetType()

const std::string & pandora::Process::GetType ( ) const
inlineinherited

Get the type.

Returns
The type

Definition at line 102 of file Process.h.

◆ Initialize()

StatusCode pandora::Process::Initialize ( )
inlineprotectedvirtualinherited

Perform any operations that must occur after reading settings, but before running the process.

Reimplemented in lar_content::BdtBeamParticleIdTool, lar_content::BeamParticleIdTool, lar_content::CosmicRayTaggingTool, lar_content::EventReadingAlgorithm, lar_content::EventWritingAlgorithm, lar_content::LArPseudoLayerPlugin, lar_content::LArRotationalTransformationPlugin, EventReadingAlgorithm, and EventWritingAlgorithm.

Definition at line 126 of file Process.h.

Here is the caller graph for this function:

◆ ReadSettings()

StatusCode lar_content::TrackConsolidationAlgorithm::ReadSettings ( const pandora::TiXmlHandle  xmlHandle)
privatevirtual

Read the algorithm settings.

Parameters
xmlHandlethe relevant xml handle

Implements pandora::Process.

Definition at line 135 of file TrackConsolidationAlgorithm.cc.

Here is the call graph for this function:

◆ RebuildClusters()

StatusCode lar_content::TwoDSlidingFitConsolidationAlgorithm::RebuildClusters ( const ClusterToHitMap clustersAtStart,
const pandora::ClusterSet unavailableClusters 
) const
privateinherited

Re-build clusters.

Parameters
clustersAtStartthe initial mapping of clusters to hits
unavailableClustersthe list of unavailable clusters

Definition at line 181 of file TwoDSlidingFitConsolidationAlgorithm.cc.

Here is the call graph for this function:
Here is the caller graph for this function:

◆ RegisterDetails()

StatusCode pandora::Process::RegisterDetails ( const Pandora *const  pPandora,
const std::string &  type,
const std::string &  instanceName 
)
inlineprotectedinherited

Register i) the pandora instance that will run the process and ii) the process type.

Parameters
pPandoraaddress of the pandora object that will run the process
typethe process type
instanceNamethe process instance name

Definition at line 146 of file Process.h.

Here is the caller graph for this function:

◆ RemoveHitsFromClusters()

StatusCode lar_content::TwoDSlidingFitConsolidationAlgorithm::RemoveHitsFromClusters ( const ClusterToHitMap clustersToRebuild,
pandora::ClusterSet unavailableClusters 
) const
privateinherited

Remove hits from clusters.

Parameters
clustersToRebuildthe list of hits to be removed from clusters
unavailableClustersthe list of deleted clusters

Definition at line 101 of file TwoDSlidingFitConsolidationAlgorithm.cc.

Here is the call graph for this function:
Here is the caller graph for this function:

◆ Reset()

StatusCode pandora::Process::Reset ( )
inlineprotectedvirtualinherited

Perform any operations when pandora is reset, typically at the end of each event.

Reimplemented in lar_content::MasterAlgorithm, lar_content::PostProcessingAlgorithm, and lar_content::PreProcessingAlgorithm.

Definition at line 133 of file Process.h.

Here is the caller graph for this function:

◆ Run()

StatusCode lar_content::TwoDSlidingFitConsolidationAlgorithm::Run ( )
protectedvirtualinherited

Run the algorithm.

Implements pandora::Algorithm.

Definition at line 30 of file TwoDSlidingFitConsolidationAlgorithm.cc.

Here is the call graph for this function:

◆ SortInputClusters()

void lar_content::TwoDSlidingFitConsolidationAlgorithm::SortInputClusters ( const pandora::ClusterList *const  pClusterList,
pandora::ClusterVector trackClusters,
pandora::ClusterVector showerClusters 
) const
privateinherited

Sort input cluster list into track-like clusters and shower-like clusters.

Parameters
pClusterListthe input cluster list
trackClustersthe output vector of track-like clusters
showerClustersthe output vector of shower-like clusters

Definition at line 58 of file TwoDSlidingFitConsolidationAlgorithm.cc.

Here is the call graph for this function:
Here is the caller graph for this function:

Member Data Documentation

◆ m_halfWindowLayers

unsigned int lar_content::TwoDSlidingFitConsolidationAlgorithm::m_halfWindowLayers
privateinherited

Size of layer window for sliding fit results.

Definition at line 94 of file TwoDSlidingFitConsolidationAlgorithm.h.

◆ m_instanceName

std::string pandora::Process::m_instanceName
protectedinherited

The process instance name.

Definition at line 89 of file Process.h.

◆ m_maxClusterLength

float lar_content::TwoDSlidingFitConsolidationAlgorithm::m_maxClusterLength
privateinherited

Maximum length of shower clusters to use in re-building.

Definition at line 93 of file TwoDSlidingFitConsolidationAlgorithm.h.

◆ m_maxTransverseDisplacement

float lar_content::TrackConsolidationAlgorithm::m_maxTransverseDisplacement
private

Definition at line 54 of file TrackConsolidationAlgorithm.h.

◆ m_minAssociatedFraction

float lar_content::TrackConsolidationAlgorithm::m_minAssociatedFraction
private

Definition at line 56 of file TrackConsolidationAlgorithm.h.

◆ m_minAssociatedSpan

float lar_content::TrackConsolidationAlgorithm::m_minAssociatedSpan
private

Definition at line 55 of file TrackConsolidationAlgorithm.h.

◆ m_minTrackLength

float lar_content::TwoDSlidingFitConsolidationAlgorithm::m_minTrackLength
privateinherited

Minimum length of track clusters to consolidate.

Definition at line 92 of file TwoDSlidingFitConsolidationAlgorithm.h.

◆ m_pPandora

const Pandora* pandora::Process::m_pPandora
protectedinherited

The pandora object that will run the process.

Definition at line 87 of file Process.h.

◆ m_reclusteringAlgorithmName

std::string lar_content::TwoDSlidingFitConsolidationAlgorithm::m_reclusteringAlgorithmName
privateinherited

Name of daughter algorithm to use for cluster re-building.

Definition at line 91 of file TwoDSlidingFitConsolidationAlgorithm.h.

◆ m_type

std::string pandora::Process::m_type
protectedinherited

The process type.

Definition at line 88 of file Process.h.


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