DeltaRayIdentificationAlgorithm class. More...
#include <DeltaRayIdentificationAlgorithm.h>
Public Member Functions | |
DeltaRayIdentificationAlgorithm () | |
Default constructor. More... | |
Private Types | |
typedef std::unordered_map< const pandora::ParticleFlowObject *, const pandora::ParticleFlowObject * > | PfoAssociationMap |
Private Member Functions | |
pandora::StatusCode | Run () |
void | GetPfos (const std::string &inputPfoListName, pandora::PfoVector &outputPfoVector) const |
Get the vector of Pfos, given the input list name. More... | |
void | BuildAssociationMap (const pandora::PfoVector &inputPfos, const pandora::PfoVector &outputPfos, PfoAssociationMap &pfoAssociationMap) const |
Build parent/daughter associations between PFOs. More... | |
bool | IsAssociated (const pandora::ParticleFlowObject *const pDaughterPfo, const pandora::ParticleFlowObject *const pParentPfo, float &displacement) const |
Determine if a given pair of Pfos have a parent/daughter association. More... | |
float | GetTwoDSeparation (const pandora::ParticleFlowObject *const pDaughterPfo, const pandora::ParticleFlowObject *const pParentPfo) const |
Calculate 2D separation between two Pfos. More... | |
void | GetTwoDVertices (const pandora::ParticleFlowObject *const pPfo, const pandora::HitType &hitType, pandora::CartesianPointVector &vertexVector) const |
Calculate 2D separation between two Pfos. More... | |
float | GetClosestDistance (const pandora::CartesianPointVector &vertexVector, const pandora::ClusterList &clusterList) const |
Calculate closest 2D separation between a set of vertices and a set of clusters. More... | |
void | BuildParentDaughterLinks (const PfoAssociationMap &pfoAssociationMap, pandora::PfoList &outputPfoList) const |
Build the parent/daughter links from the map of parent/daughter associations. More... | |
const pandora::ParticleFlowObject * | GetParent (const PfoAssociationMap &pfoAssociationMap, const pandora::ParticleFlowObject *const pPfo) const |
For a given daughter, follow the parent/daughter links to find the overall parent. More... | |
pandora::StatusCode | ReadSettings (const pandora::TiXmlHandle xmlHandle) |
Private Attributes | |
std::string | m_parentPfoListName |
The parent pfo list name. More... | |
std::string | m_daughterPfoListName |
The daughter pfo list name. More... | |
float | m_distanceForMatching |
Maximum allowed distance of delta ray from parent cosmic ray. More... | |
float | m_minParentLengthSquared |
Minimum allowed length of parent cosmic ray. More... | |
float | m_maxDaughterLengthSquared |
Maximum allowed length of daughter delta ray. More... | |
DeltaRayIdentificationAlgorithm class.
Definition at line 21 of file DeltaRayIdentificationAlgorithm.h.
|
private |
Definition at line 32 of file DeltaRayIdentificationAlgorithm.h.
lar_content::DeltaRayIdentificationAlgorithm::DeltaRayIdentificationAlgorithm | ( | ) |
Default constructor.
Definition at line 21 of file DeltaRayIdentificationAlgorithm.cc.
|
private |
Build parent/daughter associations between PFOs.
inputPfos | the input vector of current parent Pfos |
outputPfos | the input vector of current daughter Pfos |
pfoAssociationMap | the output map of parent/daughter associations |
Definition at line 76 of file DeltaRayIdentificationAlgorithm.cc.
|
private |
Build the parent/daughter links from the map of parent/daughter associations.
pfoAssociationMap | the map of parent/daughter associations |
outputPfoList | the output list of daughter Pfos |
Definition at line 275 of file DeltaRayIdentificationAlgorithm.cc.
|
private |
Calculate closest 2D separation between a set of vertices and a set of clusters.
vertexVector | the vector of possible vertex positions |
clusterList | the list of clusters |
Definition at line 249 of file DeltaRayIdentificationAlgorithm.cc.
|
private |
For a given daughter, follow the parent/daughter links to find the overall parent.
pfoAssociationMap | the map of parent/daughter associations |
pPfo | the daughter Pfo |
Definition at line 304 of file DeltaRayIdentificationAlgorithm.cc.
|
private |
Get the vector of Pfos, given the input list name.
inputPfoListName | the input Pfo list name |
outputPfoVector | the output vector of Pfos |
Definition at line 62 of file DeltaRayIdentificationAlgorithm.cc.
|
private |
Calculate 2D separation between two Pfos.
pDaughterPfo | the input daughter Pfo |
pParentPfo | the input parent Pfo |
Definition at line 186 of file DeltaRayIdentificationAlgorithm.cc.
|
private |
Calculate 2D separation between two Pfos.
pPfo | the input daughter Pfo |
hitType | the hit type |
vertexVector | the vector of possible vertex positions |
Definition at line 230 of file DeltaRayIdentificationAlgorithm.cc.
|
private |
Determine if a given pair of Pfos have a parent/daughter association.
pDaughterPfo | the input daughter Pfo |
pParentPfo | the input parent Pfo |
displacement | the average displacement between parent and daughter |
Definition at line 149 of file DeltaRayIdentificationAlgorithm.cc.
|
private |
Definition at line 324 of file DeltaRayIdentificationAlgorithm.cc.
|
private |
Definition at line 30 of file DeltaRayIdentificationAlgorithm.cc.
|
private |
The daughter pfo list name.
Definition at line 110 of file DeltaRayIdentificationAlgorithm.h.
|
private |
Maximum allowed distance of delta ray from parent cosmic ray.
Definition at line 112 of file DeltaRayIdentificationAlgorithm.h.
|
private |
Maximum allowed length of daughter delta ray.
Definition at line 114 of file DeltaRayIdentificationAlgorithm.h.
|
private |
Minimum allowed length of parent cosmic ray.
Definition at line 113 of file DeltaRayIdentificationAlgorithm.h.
|
private |
The parent pfo list name.
Definition at line 109 of file DeltaRayIdentificationAlgorithm.h.