UndershootTracksTool class.
More...
#include "UndershootTracksTool.h"
|
typedef ThreeViewTransverseTracksAlgorithm::MatchingType::TensorType | TensorType |
|
typedef std::vector< TensorType::ElementList::const_iterator > | IteratorList |
|
|
void | GetIteratorListModifications (ThreeViewTransverseTracksAlgorithm *const pAlgorithm, const IteratorList &iteratorList, ModificationList &modificationList) const |
| Get modification objects for a specific elements of the tensor, identifying required splits and merges for clusters.
|
|
pandora::StatusCode | ReadSettings (const pandora::TiXmlHandle xmlHandle) |
| Read the algorithm settings.
|
|
bool | IsThreeDKink (ThreeViewTransverseTracksAlgorithm *const pAlgorithm, const Particle &particle, const pandora::CartesianVector &splitPosition, const bool isALowestInX) const |
| Whether the provided particle is consistent with being a kink, when examined in three dimensions at the provided split position.
|
|
void | GetModifications (ThreeViewTransverseTracksAlgorithm *const pAlgorithm, const TensorType &overlapTensor, ModificationList &modificationList) const |
| Get modification objects, identifying required splits and merges for clusters.
|
|
void | SelectTensorElements (TensorType::ElementList::const_iterator eIter, const TensorType::ElementList &elementList, const pandora::ClusterSet &usedClusters, IteratorList &iteratorList) const |
| Select elements representing possible components of interest due to overshoots or undershoots in clustering.
|
|
bool | ApplyChanges (ThreeViewTransverseTracksAlgorithm *const pAlgorithm, const ModificationList &modificationList) const |
| Apply the changes cached in a modification list and update the tensor accordingly.
|
|
◆ IteratorList
◆ ModificationList
◆ TensorType
◆ UndershootTracksTool()
lar_content::UndershootTracksTool::UndershootTracksTool |
( |
| ) |
|
◆ ApplyChanges()
Apply the changes cached in a modification list and update the tensor accordingly.
- Parameters
-
pAlgorithm | address of the calling algorithm |
modificationList | the modification list |
- Returns
- whether changes to the tensor have been made
Definition at line 188 of file ThreeDKinkBaseTool.cc.
◆ 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.
◆ GetIteratorListModifications()
Get modification objects for a specific elements of the tensor, identifying required splits and merges for clusters.
- Parameters
-
pAlgorithm | address of the calling algorithm |
iteratorList | list of iterators to relevant tensor elements |
modificationList | to be populated with modifications |
Implements lar_content::ThreeDKinkBaseTool.
Definition at line 35 of file UndershootTracksTool.cc.
◆ GetModifications()
Get modification objects, identifying required splits and merges for clusters.
- Parameters
-
pAlgorithm | address of the calling algorithm |
overlapTensor | the overlap tensor |
modificationList | to be populated with modifications |
Definition at line 140 of file ThreeDKinkBaseTool.cc.
◆ 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.
◆ GetType()
const std::string & pandora::Process::GetType |
( |
| ) |
const |
|
inlineinherited |
Get the type.
- Returns
- The type
Definition at line 102 of file Process.h.
◆ GetXSamplingPoint()
Get a sampling point in x that is common to sliding linear fit objects in three views.
- Parameters
-
splitPosition1 | the split position in view 1 |
isForwardInX | whether to work forwards (or backwards) in x |
fitResult1 | the sliding fit result in view 1 |
fitResult2 | the sliding fit result in view 2 |
fitResult3 | the sliding fit result in view 3 |
- Returns
- the sampling point
Definition at line 59 of file ThreeDKinkBaseTool.cc.
◆ Initialize()
|
inlineprotectedvirtualinherited |
◆ IsALowestInX()
Whether pointing cluster labelled A extends to lowest x positions (as opposed to that labelled B)
- Parameters
-
pointingClusterA | pointing cluster A |
pointingClusterB | pointing cluster B |
Definition at line 107 of file ThreeDKinkBaseTool.cc.
◆ IsThreeDKink()
Whether the provided particle is consistent with being a kink, when examined in three dimensions at the provided split position.
- Parameters
-
pAlgorithm | the calling algorithm |
particle | the particle |
splitPosition | the candidate split position |
isALowestInX | whether cluster associated with tensor element a extends to lowest x positions |
- Returns
- boolean
Definition at line 129 of file UndershootTracksTool.cc.
◆ PassesElementCuts()
bool lar_content::ThreeDKinkBaseTool::PassesElementCuts |
( |
TensorType::ElementList::const_iterator |
eIter, |
|
|
const pandora::ClusterSet & |
usedClusters |
|
) |
| const |
|
protectedvirtualinherited |
Whether a provided (iterator to a) tensor element passes the selection cuts for overshoot identification.
- Parameters
-
eIter | the iterator to the tensor element |
usedClusters | the list of used clusters |
Definition at line 43 of file ThreeDKinkBaseTool.cc.
◆ ReadSettings()
◆ 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
-
pPandora | address of the pandora object that will run the process |
type | the process type |
instanceName | the process instance name |
Definition at line 146 of file Process.h.
◆ Reset()
|
inlineprotectedvirtualinherited |
◆ Run()
◆ SelectTensorElements()
void lar_content::ThreeDKinkBaseTool::SelectTensorElements |
( |
TensorType::ElementList::const_iterator |
eIter, |
|
|
const TensorType::ElementList & |
elementList, |
|
|
const pandora::ClusterSet & |
usedClusters, |
|
|
IteratorList & |
iteratorList |
|
) |
| const |
|
privateinherited |
Select elements representing possible components of interest due to overshoots or undershoots in clustering.
- Parameters
-
eIter | iterator to a candidate element |
elementList | the provided element list |
usedClusters | the list of used clusters |
iteratorList | to receive a list of iterators to relevant elements |
Definition at line 237 of file ThreeDKinkBaseTool.cc.
◆ m_additionalXStepForKinkSearch
float lar_content::ThreeDKinkBaseTool::m_additionalXStepForKinkSearch |
|
protectedinherited |
An additional (safety) step to tack-on when choosing x sampling points.
Definition at line 100 of file ThreeDKinkBaseTool.h.
◆ m_cosThetaCutForKinkSearch
float lar_content::UndershootTracksTool::m_cosThetaCutForKinkSearch |
|
private |
◆ m_instanceName
std::string pandora::Process::m_instanceName |
|
protectedinherited |
The process instance name.
Definition at line 89 of file Process.h.
◆ m_majorityRulesMode
bool lar_content::ThreeDKinkBaseTool::m_majorityRulesMode |
|
protectedinherited |
Whether to run in majority rules mode (always split overshoots, always merge undershoots)
Definition at line 95 of file ThreeDKinkBaseTool.h.
◆ m_maxTransverseImpactParameter
float lar_content::UndershootTracksTool::m_maxTransverseImpactParameter |
|
private |
The maximum transverse impact parameter for connecting broken clusters.
Definition at line 66 of file UndershootTracksTool.h.
◆ m_minImpactParameterCosTheta
float lar_content::UndershootTracksTool::m_minImpactParameterCosTheta |
|
private |
The minimum cos theta (angle between vertex directions) for connecting broken clusters.
Definition at line 67 of file UndershootTracksTool.h.
◆ m_minLongitudinalImpactParameter
float lar_content::ThreeDKinkBaseTool::m_minLongitudinalImpactParameter |
|
protectedinherited |
The min longitudinal impact parameter for connecting accompanying clusters.
Definition at line 98 of file ThreeDKinkBaseTool.h.
◆ m_minMatchedFraction
float lar_content::ThreeDKinkBaseTool::m_minMatchedFraction |
|
protectedinherited |
The min matched sampling point fraction for use as a key tensor element.
Definition at line 96 of file ThreeDKinkBaseTool.h.
◆ m_minMatchedSamplingPoints
unsigned int lar_content::ThreeDKinkBaseTool::m_minMatchedSamplingPoints |
|
protectedinherited |
The min number of matched sampling points for use as a key tensor element.
Definition at line 97 of file ThreeDKinkBaseTool.h.
◆ m_nCommonClusters
unsigned int lar_content::ThreeDKinkBaseTool::m_nCommonClusters |
|
protectedinherited |
◆ m_nLayersForKinkSearch
int lar_content::ThreeDKinkBaseTool::m_nLayersForKinkSearch |
|
protectedinherited |
The number of sliding fit layers to step in the kink search.
Definition at line 99 of file ThreeDKinkBaseTool.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_splitMode
bool lar_content::UndershootTracksTool::m_splitMode |
|
private |
Whether to run in cluster splitting mode, as opposed to cluster merging mode.
Definition at line 65 of file UndershootTracksTool.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: