ThreeDKinkBaseTool class.
More...
#include "ThreeDKinkBaseTool.h"
|
typedef ThreeViewTransverseTracksAlgorithm::MatchingType::TensorType | TensorType |
|
typedef std::vector< TensorType::ElementList::const_iterator > | IteratorList |
|
|
virtual bool | PassesElementCuts (TensorType::ElementList::const_iterator eIter, const pandora::ClusterSet &usedClusters) const |
| Whether a provided (iterator to a) tensor element passes the selection cuts for overshoot identification.
|
|
virtual void | GetIteratorListModifications (ThreeViewTransverseTracksAlgorithm *const pAlgorithm, const IteratorList &iteratorList, ModificationList &modificationList) const =0 |
| Get modification objects for a specific elements of the tensor, identifying required splits and merges for clusters.
|
|
float | GetXSamplingPoint (const pandora::CartesianVector &splitPosition1, const bool isForwardInX, const TwoDSlidingFitResult &fitResult1, const TwoDSlidingFitResult &fitResult2, const TwoDSlidingFitResult &fitResult3) const |
| Get a sampling point in x that is common to sliding linear fit objects in three views.
|
|
pandora::StatusCode | ReadSettings (const pandora::TiXmlHandle xmlHandle) |
| Read the algorithm settings.
|
|
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.
|
|
◆ lar_content::ThreeDKinkBaseTool::Modification
class lar_content::ThreeDKinkBaseTool::Modification |
◆ IteratorList
◆ ModificationList
◆ TensorType
◆ ThreeDKinkBaseTool()
lar_content::ThreeDKinkBaseTool::ThreeDKinkBaseTool |
( |
const unsigned int |
nCommonClusters | ) |
|
Constructor.
- Parameters
-
nCommonClusters | the number of common clusters to select |
Definition at line 22 of file ThreeDKinkBaseTool.cc.
◆ ~ThreeDKinkBaseTool()
lar_content::ThreeDKinkBaseTool::~ThreeDKinkBaseTool |
( |
| ) |
|
|
virtual |
◆ 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 |
Implemented in lar_content::OvershootTracksTool, and lar_content::UndershootTracksTool.
◆ 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.
◆ PassesElementCuts()
bool lar_content::ThreeDKinkBaseTool::PassesElementCuts |
( |
TensorType::ElementList::const_iterator |
eIter, |
|
|
const pandora::ClusterSet & |
usedClusters |
|
) |
| const |
|
protectedvirtual |
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 |
|
private |
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 |
|
protected |
An additional (safety) step to tack-on when choosing x sampling points.
Definition at line 100 of file ThreeDKinkBaseTool.h.
◆ 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 |
|
protected |
Whether to run in majority rules mode (always split overshoots, always merge undershoots)
Definition at line 95 of file ThreeDKinkBaseTool.h.
◆ m_minLongitudinalImpactParameter
float lar_content::ThreeDKinkBaseTool::m_minLongitudinalImpactParameter |
|
protected |
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 |
|
protected |
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 |
|
protected |
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 |
|
protected |
◆ m_nLayersForKinkSearch
int lar_content::ThreeDKinkBaseTool::m_nLayersForKinkSearch |
|
protected |
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_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: