#include <KDTreeLinkerAlgo.h>
Public Member Functions | |
void | build (std::vector< KDTreeNodeInfo > &eltList, const KDTreeBox ®ion) |
void | clear () |
KDTreeLinkerAlgo () | |
void | search (const KDTreeBox &searchBox, std::vector< KDTreeNodeInfo > &resRecHitList) |
~KDTreeLinkerAlgo () | |
Private Member Functions | |
void | addSubtree (const KDTreeNode *current, std::vector< KDTreeNodeInfo > &recHits) |
void | clearTree () |
KDTreeNode * | getNextNode () |
int | medianSearch (std::vector< KDTreeNodeInfo > &eltList, int low, int high, int treeDepth) |
KDTreeNode * | recBuild (std::vector< KDTreeNodeInfo > &eltList, int low, int hight, int depth, const KDTreeBox ®ion) |
void | recSearch (const KDTreeNode *current, const KDTreeBox &trackBox, std::vector< KDTreeNodeInfo > &recHits) |
void | swap (KDTreeNodeInfo &e1, KDTreeNodeInfo &e2) |
Private Attributes | |
KDTreeNode * | nodePool_ |
int | nodePoolPos_ |
int | nodePoolSize_ |
KDTreeNode * | root_ |
Definition at line 10 of file KDTreeLinkerAlgo.h.
KDTreeLinkerAlgo::KDTreeLinkerAlgo | ( | ) |
Definition at line 3 of file KDTreeLinkerAlgo.cc.
KDTreeLinkerAlgo::~KDTreeLinkerAlgo | ( | ) |
Definition at line 11 of file KDTreeLinkerAlgo.cc.
References clear().
|
private |
Definition at line 209 of file KDTreeLinkerAlgo.cc.
References KDTreeNode::left, KDTreeNode::rh, and KDTreeNode::right.
Referenced by recSearch().
void KDTreeLinkerAlgo::build | ( | std::vector< KDTreeNodeInfo > & | eltList, |
const KDTreeBox & | region | ||
) |
Definition at line 17 of file KDTreeLinkerAlgo.cc.
References nodePool_, nodePoolSize_, recBuild(), and root_.
Referenced by KDTreeLinkerTrackEcal::buildTree(), KDTreeLinkerTrackHcal::buildTree(), and KDTreeLinkerPSEcal::buildTree().
void KDTreeLinkerAlgo::clear | ( | void | ) |
Definition at line 235 of file KDTreeLinkerAlgo.cc.
References clearTree(), and root_.
Referenced by KDTreeLinkerPSEcal::clear(), KDTreeLinkerTrackHcal::clear(), KDTreeLinkerTrackEcal::clear(), and ~KDTreeLinkerAlgo().
|
private |
Definition at line 225 of file KDTreeLinkerAlgo.cc.
References nodePool_, nodePoolPos_, nodePoolSize_, and root_.
Referenced by clear().
|
private |
Definition at line 243 of file KDTreeLinkerAlgo.cc.
References nodePool_, nodePoolPos_, and nodePoolSize_.
Referenced by recBuild().
|
private |
Definition at line 90 of file KDTreeLinkerAlgo.cc.
References KDTreeNodeInfo::dim1, KDTreeNodeInfo::dim2, i, j, prof2calltree::l, m, and swap().
Referenced by recBuild().
|
private |
Definition at line 31 of file KDTreeLinkerAlgo.cc.
References KDTreeBox::dim1max, KDTreeBox::dim1min, KDTreeBox::dim2max, KDTreeBox::dim2min, getNextNode(), python.Node::leaf, KDTreeNode::left, medianSearch(), python.Node::node, KDTreeNode::right, and KDTreeNode::setAttributs().
Referenced by build().
|
private |
Definition at line 154 of file KDTreeLinkerAlgo.cc.
References addSubtree(), KDTreeNodeInfo::dim1, KDTreeBox::dim1max, KDTreeBox::dim1min, KDTreeNodeInfo::dim2, KDTreeBox::dim2max, KDTreeBox::dim2min, KDTreeNode::left, KDTreeNode::region, KDTreeNode::rh, and KDTreeNode::right.
Referenced by search().
void KDTreeLinkerAlgo::search | ( | const KDTreeBox & | searchBox, |
std::vector< KDTreeNodeInfo > & | resRecHitList | ||
) |
Definition at line 146 of file KDTreeLinkerAlgo.cc.
References recSearch(), and root_.
Referenced by KDTreeLinkerPSEcal::searchLinks(), KDTreeLinkerTrackHcal::searchLinks(), and KDTreeLinkerTrackEcal::searchLinks().
|
private |
Definition at line 137 of file KDTreeLinkerAlgo.cc.
References tmp.
Referenced by medianSearch().
|
private |
Definition at line 35 of file KDTreeLinkerAlgo.h.
Referenced by build(), clearTree(), and getNextNode().
|
private |
Definition at line 37 of file KDTreeLinkerAlgo.h.
Referenced by clearTree(), and getNextNode().
|
private |
Definition at line 36 of file KDTreeLinkerAlgo.h.
Referenced by build(), clearTree(), and getNextNode().
|
private |
Definition at line 32 of file KDTreeLinkerAlgo.h.
Referenced by build(), clear(), clearTree(), and search().