LArSoft
v09_90_00
Liquid Argon Software toolkit - https://larsoft.org/
|
CosmicRayBaseMatchingAlgorithm class. More...
#include "CosmicRayBaseMatchingAlgorithm.h"
Classes | |
class | Particle |
Particle class. More... | |
Protected Types | |
typedef std::vector< Particle > | ParticleList |
typedef std::unordered_map< const pandora::Cluster *, pandora::ClusterList > | ClusterAssociationMap |
typedef std::set< unsigned int > | UIntSet |
Protected Member Functions | |
pandora::StatusCode | Run () |
pandora::StatusCode | ReadSettings (const pandora::TiXmlHandle xmlHandle) |
virtual void | SelectCleanClusters (const pandora::ClusterVector &inputVector, pandora::ClusterVector &outputVector) const =0 |
Select a set of clusters judged to be clean. More... | |
virtual bool | MatchClusters (const pandora::Cluster *const pCluster1, const pandora::Cluster *const pCluster2) const =0 |
Match a pair of clusters from two views. More... | |
virtual bool | CheckMatchedClusters3D (const pandora::Cluster *const pCluster1, const pandora::Cluster *const pCluster2, const pandora::Cluster *const pCluster3) const =0 |
Check that three clusters have a consistent 3D position. More... | |
virtual void | SetPfoParameters (const CosmicRayBaseMatchingAlgorithm::Particle &protoParticle, PandoraContentApi::ParticleFlowObject::Parameters &pfoParameters) const =0 |
Calculate Pfo properties from proto particle. More... | |
Private Member Functions | |
pandora::StatusCode | GetAvailableClusters (const std::string inputClusterListName, pandora::ClusterVector &clusterVector) const |
Get a vector of available clusters. More... | |
void | MatchClusters (const pandora::ClusterVector &clusterVector1, const pandora::ClusterVector &clusterVector2, CosmicRayBaseMatchingAlgorithm::ClusterAssociationMap &matchedClusters12) const |
Match sets of clusters from two views. More... | |
void | MatchThreeViews (const CosmicRayBaseMatchingAlgorithm::ClusterAssociationMap &matchedClusters12, const CosmicRayBaseMatchingAlgorithm::ClusterAssociationMap &matchedClusters23, const CosmicRayBaseMatchingAlgorithm::ClusterAssociationMap &matchedClusters31, ParticleList &particleList) const |
Match clusters from three views and form into particles. More... | |
void | MatchTwoViews (const CosmicRayBaseMatchingAlgorithm::ClusterAssociationMap &matchedClusters12, const CosmicRayBaseMatchingAlgorithm::ClusterAssociationMap &matchedClusters23, const CosmicRayBaseMatchingAlgorithm::ClusterAssociationMap &matchedClusters31, ParticleList &particleList) const |
Match clusters from two views and form into particles. More... | |
void | MatchTwoViews (const CosmicRayBaseMatchingAlgorithm::ClusterAssociationMap &matchedClusters12, ParticleList &particleList) const |
Match clusters from two views and form into particles. More... | |
void | ResolveAmbiguities (const ParticleList &inputList, ParticleList &outputList) const |
Remove ambiguities between candidate particles. More... | |
void | BuildParticles (const ParticleList &particleList) |
Build PFO objects from candidate particles. More... | |
Private Attributes | |
std::string | m_inputClusterListNameU |
The name of the view U cluster list. More... | |
std::string | m_inputClusterListNameV |
The name of the view V cluster list. More... | |
std::string | m_inputClusterListNameW |
The name of the view W cluster list. More... | |
std::string | m_outputPfoListName |
The name of the output PFO list. More... | |
CosmicRayBaseMatchingAlgorithm class.
Definition at line 22 of file CosmicRayBaseMatchingAlgorithm.h.
|
protected |
Definition at line 49 of file CosmicRayBaseMatchingAlgorithm.h.
|
protected |
Definition at line 48 of file CosmicRayBaseMatchingAlgorithm.h.
|
protected |
Definition at line 50 of file CosmicRayBaseMatchingAlgorithm.h.
|
private |
Build PFO objects from candidate particles.
particleList | the input list of particles |
Definition at line 254 of file CosmicRayBaseMatchingAlgorithm.cc.
|
protectedpure virtual |
Check that three clusters have a consistent 3D position.
pCluster1 | the cluster from the first view |
pCluster2 | the cluster from the second view |
pCluster3 | the cluster from the third view |
Implemented in lar_content::CosmicRayShowerMatchingAlgorithm, and lar_content::CosmicRayTrackMatchingAlgorithm.
|
private |
Get a vector of available clusters.
inputClusterListName | the input name of the cluster list |
clusterVector | the output vector of available clusters |
Definition at line 52 of file CosmicRayBaseMatchingAlgorithm.cc.
|
protectedpure virtual |
Match a pair of clusters from two views.
pCluster1 | the first cluster |
pCluster2 | the second cluster |
Implemented in lar_content::CosmicRayShowerMatchingAlgorithm, and lar_content::CosmicRayTrackMatchingAlgorithm.
|
private |
Match sets of clusters from two views.
clusterVector1 | the vector of clusters from the first view |
clusterVector2 | the vector of clusters from the second view |
matchedClusters12 | the map of cluster matches |
|
private |
Match clusters from three views and form into particles.
matchedClusters12 | the map of matches between the view 1 and view 2 |
matchedClusters23 | the map of matches between the view 2 and view 3 |
matchedClusters31 | the map of matches between the view 3 and view 1 |
particleList | the output list of particles |
Definition at line 112 of file CosmicRayBaseMatchingAlgorithm.cc.
|
private |
Match clusters from two views and form into particles.
matchedClusters12 | the map of matches between the view 1 and view 2 |
matchedClusters23 | the map of matches between the view 2 and view 3 |
matchedClusters31 | the map of matches between the view 3 and view 1 |
particleList | the output list of particles |
Definition at line 178 of file CosmicRayBaseMatchingAlgorithm.cc.
|
private |
Match clusters from two views and form into particles.
matchedClusters12 | the map of matches between the first and second views |
particleList | the output list of particles |
Definition at line 191 of file CosmicRayBaseMatchingAlgorithm.cc.
|
protected |
Definition at line 310 of file CosmicRayBaseMatchingAlgorithm.cc.
References m_inputClusterListNameU, m_inputClusterListNameV, m_inputClusterListNameW, and m_outputPfoListName.
Referenced by lar_content::CosmicRayShowerMatchingAlgorithm::ReadSettings(), and lar_content::CosmicRayTrackMatchingAlgorithm::ReadSettings().
|
private |
Remove ambiguities between candidate particles.
inputList | the input list of particles |
outputList | the output list of particles |
Definition at line 221 of file CosmicRayBaseMatchingAlgorithm.cc.
|
protected |
Definition at line 21 of file CosmicRayBaseMatchingAlgorithm.cc.
|
protectedpure virtual |
Select a set of clusters judged to be clean.
inputVector | the input vector of all available clusters |
outputVector | the output vector of clean clusters |
Implemented in lar_content::CosmicRayShowerMatchingAlgorithm, and lar_content::CosmicRayTrackMatchingAlgorithm.
|
protectedpure virtual |
Calculate Pfo properties from proto particle.
protoParticle | the input proto particle |
pfoParameters | the output pfo parameters |
Implemented in lar_content::CosmicRayShowerMatchingAlgorithm, and lar_content::CosmicRayTrackMatchingAlgorithm.
|
private |
The name of the view U cluster list.
Definition at line 156 of file CosmicRayBaseMatchingAlgorithm.h.
Referenced by ReadSettings().
|
private |
The name of the view V cluster list.
Definition at line 157 of file CosmicRayBaseMatchingAlgorithm.h.
Referenced by ReadSettings().
|
private |
The name of the view W cluster list.
Definition at line 158 of file CosmicRayBaseMatchingAlgorithm.h.
Referenced by ReadSettings().
|
private |
The name of the output PFO list.
Definition at line 159 of file CosmicRayBaseMatchingAlgorithm.h.
Referenced by ReadSettings().