Geant4
10.03.p01
|
#include <G4KDTree.hh>
Classes | |
class | HyperRect |
Public Member Functions | |
G4KDTree (size_t dim=3) | |
~G4KDTree () | |
void | Clear () |
void | Print (std::ostream &out=G4cout) const |
void | Build () |
void | NoticeNodeDeactivation () |
size_t | GetDim () const |
int | GetNbNodes () const |
G4KDNode_Base * | GetRoot () |
template<typename PointT > | |
G4KDNode_Base * | InsertMap (PointT *pos) |
template<typename PointT > | |
G4KDNode_Base * | Insert (PointT *pos) |
template<typename PointT > | |
G4KDNode_Base * | Insert (const PointT &pos) |
template<typename Position > | |
G4KDTreeResultHandle | Nearest (const Position &pos) |
G4KDTreeResultHandle | Nearest (G4KDNode_Base *node) |
template<typename Position > | |
G4KDTreeResultHandle | NearestInRange (const Position &pos, const double &range) |
G4KDTreeResultHandle | NearestInRange (G4KDNode_Base *node, const double &range) |
void * | operator new (size_t) |
void | operator delete (void *) |
Protected Member Functions | |
void | __InsertMap (G4KDNode_Base *node) |
void | __Clear_Rec (G4KDNode_Base *node) |
template<typename Position > | |
int | __NearestInRange (G4KDNode_Base *node, const Position &pos, const double &range_sq, const double &range, G4KDTreeResult &list, int ordered, G4KDNode_Base *source_node=0) |
template<typename Position > | |
void | __NearestToPosition (G4KDNode_Base *node, const Position &pos, G4KDNode_Base *&result, double *result_dist_sq, HyperRect *fRect) |
template<typename Position > | |
void | __NearestToNode (G4KDNode_Base *source_node, G4KDNode_Base *node, const Position &pos, std::vector< G4KDNode_Base * > &result, double *result_dist_sq, HyperRect *fRect, int &nbresult) |
Protected Attributes | |
HyperRect * | fRect |
G4KDNode_Base * | fRoot |
size_t | fDim |
int | fNbNodes |
int | fNbActiveNodes |
G4KDMap * | fKDMap |
G4ThreadLocalStatic G4Allocator< G4KDTree > * | fgAllocator |
Friends | |
class | G4KDNode_Base |
G4KDTree is used by the ITManager to locate the neareast neighbours. A kdtree sorts out node in such a way that it reduces the number of node check. The results of this search can be retrieved by G4KDTreeResultHandle.
Definition at line 72 of file G4KDTree.hh.
G4KDTree::G4KDTree | ( | size_t | dim = 3 | ) |
Definition at line 50 of file G4KDTree.cc.
G4KDTree::~G4KDTree | ( | ) |
|
protected |
Definition at line 103 of file G4KDTree.cc.
|
protected |
|
protected |
|
protected |
|
protected |
void G4KDTree::Build | ( | ) |
Definition at line 118 of file G4KDTree.cc.
void G4KDTree::Clear | ( | ) |
Definition at line 90 of file G4KDTree.cc.
|
inline |
|
inline |
Definition at line 92 of file G4KDTree.hh.
|
inline |
Definition at line 96 of file G4KDTree.hh.
G4KDNode_Base* G4KDTree::Insert | ( | PointT * | pos | ) |
G4KDNode_Base* G4KDTree::Insert | ( | const PointT & | pos | ) |
G4KDNode_Base* G4KDTree::InsertMap | ( | PointT * | pos | ) |
G4KDTreeResultHandle G4KDTree::Nearest | ( | const Position & | pos | ) |
G4KDTreeResultHandle G4KDTree::Nearest | ( | G4KDNode_Base * | node | ) |
Definition at line 155 of file G4KDTree.cc.
G4KDTreeResultHandle G4KDTree::NearestInRange | ( | const Position & | pos, |
const double & | range | ||
) |
G4KDTreeResultHandle G4KDTree::NearestInRange | ( | G4KDNode_Base * | node, |
const double & | range | ||
) |
Definition at line 198 of file G4KDTree.cc.
|
inline |
Definition at line 82 of file G4KDTree.hh.
Definition at line 80 of file G4KDTree.cc.
void * G4KDTree::operator new | ( | size_t | ) |
Definition at line 74 of file G4KDTree.cc.
|
friend |
Definition at line 74 of file G4KDTree.hh.
|
protected |
Definition at line 270 of file G4KDTree.hh.
|
protected |
Definition at line 275 of file G4KDTree.hh.
|
protected |
Definition at line 273 of file G4KDTree.hh.
|
protected |
Definition at line 272 of file G4KDTree.hh.
|
protected |
Definition at line 271 of file G4KDTree.hh.
|
protected |
Definition at line 268 of file G4KDTree.hh.
|
protected |
Definition at line 269 of file G4KDTree.hh.