Belle II Software
release-08-01-10
|
Predicate class that is feed the nodes in a WeightedHoughTree walk It decides if a node should be further expanded and extracts items from nodes that are considered as leafs to build tracks. More...
#include <AxialLegendreLeafProcessor.h>
Public Types | |
using | Candidate = std::pair< CDCTrajectory2D, std::vector< CDCRLWireHit > > |
Preliminary structure to save found hits and trajectory information. | |
Public Member Functions | |
AxialLegendreLeafProcessor (int maxLevel) | |
Initialize a new processor with the maximum level. | |
bool | operator() (ANode *node) |
Entry point for the WeightedHoughTree walk to ask if a node is a leaf that should not be further divided into sub nodes. | |
bool | skip (const ANode *node) |
Decide if the node should be expanded further or marks an end point of the depth search. | |
bool | isLeaf (const ANode *node) |
Decide when a leaf node is reached that should be processed further. | |
void | processLeaf (ANode *leaf) |
A valuable leaf has been found in the hough tree walk. More... | |
std::vector< WithSharedMark< CDCRLWireHit > > | searchRoad (const ANode &node, const CDCTrajectory2D &trajectory2D) |
Look for more hits near a ftted trajectory from hits available in the give node. | |
std::vector< Candidate > | getCandidates () const |
Getter for the candidates structure still used in some tests. | |
const std::vector< CDCTrack > & | getTracks () const |
Getter for the tracks. | |
void | clear () |
Clear the found candidates. | |
void | setAxialWireHits (std::vector< const CDCWireHit * > axialWireHits) |
Set the pool of all axial wire hits to be used in the postprocessing. | |
void | exposeParameters (ModuleParamList *moduleParamList, const std::string &prefix) |
Expose the parameters as a module parameter list. | |
void | beginWalk () |
Function to notify the leaf processor about changes in parameters before a new walk. | |
Public Attributes | |
int | m_nNodes = 0 |
Statistic: Number received node. | |
int | m_nSkippedNodes = 0 |
Statistic: Number of skipped nodes. | |
int | m_nLeafs = 0 |
Statistic: Number processed leaf. | |
Private Attributes | |
int | m_param_maxLevel = 1 |
Memory for the maximal level of the tree. | |
double | m_param_minWeight = 0 |
Memory for the minimal weight threshold for following the children of a node. | |
double | m_param_maxCurv = NAN |
Memory for the maximal curvature that should be searched in the current walk. | |
double | m_param_curlCurv = 0.018 |
Memory for the curvature of a curler in the CDC. | |
int | m_param_nRoadSearches = 0 |
Memory for the number of repeated road searches. | |
int | m_param_roadLevel = 0 |
Memory for the tree node level which should be the source of hits for the road searches. Defaults to the top most node. | |
std::string | m_param_curvResolution = "const" |
Memory for the name of the resolution function to be used. Valid values are 'none', 'const', 'basic', 'origin', 'offOrigin'. | |
std::vector< CDCTrack > | m_tracks |
Memory for found trajectories. | |
std::vector< const CDCWireHit * > | m_axialWireHits |
Memory for the pool of axial wire hits to can be used in the post processing. | |
std::function< double(double)> | m_curvResolution |
Memory for the freely defined curvature resolution function. | |
Predicate class that is feed the nodes in a WeightedHoughTree walk It decides if a node should be further expanded and extracts items from nodes that are considered as leafs to build tracks.
It accumulates the tracks in a member vector from where they can be taken after the walk over the tree has been completed.
Definition at line 36 of file AxialLegendreLeafProcessor.h.
void processLeaf | ( | ANode * | leaf | ) |
A valuable leaf has been found in the hough tree walk.
Extract its content! It may pull more hits from the whole tree by looking at the top node.
Definition at line 37 of file AxialLegendreLeafProcessor.icc.h.