Geant4  10.00.p01
G4KDNode Class Reference

G4KDNode stores one entity in G4KDTree This class is for internal use only. More...

#include <G4KDNode.hh>

+ Collaboration diagram for G4KDNode:

Public Member Functions

 G4KDNode (G4KDTree *, const double *, void *, G4KDNode *, int axis0)
 
virtual ~G4KDNode ()
 
G4KDTreeGetTree ()
 
void SetTree (G4KDTree *)
 
const double * GetPosition ()
 
int GetDim ()
 
int GetAxis ()
 
void * GetData ()
 
void SetData (void *)
 
G4KDNodeGetParent ()
 
G4KDNodeGetLeft ()
 
G4KDNodeGetRight ()
 
G4KDNodeFindParent (const double *x0)
 
G4KDNodeInsert (const double *p, void *data)
 
int Insert (G4KDNode *newNode, double *p)
 
int Insert (G4KDNode *newNode, const double &x, const double &y, const double &z)
 
int Insert (G4KDNode *newNode)
 
void InactiveNode ()
 
void PullSubTree ()
 
void RetrieveNodeList (std::list< G4KDNode * > &node_list)
 

Protected Member Functions

int SetPosition (const double *newposition)
 

Protected Attributes

double * fPosition
 
int fAxis
 
void * fData
 
int fSide
 
G4KDTreefTree
 
G4KDNodefLeft
 
G4KDNodefRight
 
G4KDNodefParent
 

Private Member Functions

 G4KDNode (const G4KDNode &right)
 
G4KDNodeoperator= (const G4KDNode &right)
 

Detailed Description

G4KDNode stores one entity in G4KDTree This class is for internal use only.

Definition at line 50 of file G4KDNode.hh.

Constructor & Destructor Documentation

G4KDNode::G4KDNode ( G4KDTree tree,
const double *  position,
void *  data,
G4KDNode parent,
int  axis0 
)

Definition at line 71 of file G4KDNode.cc.

References fAxis, fSide, and SetPosition().

Referenced by Insert().

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

G4KDNode::~G4KDNode ( )
virtual

Definition at line 107 of file G4KDNode.cc.

References fPosition.

G4KDNode::G4KDNode ( const G4KDNode right)
private

Definition at line 82 of file G4KDNode.cc.

References fAxis, fPosition, and fSide.

Member Function Documentation

G4KDNode * G4KDNode::FindParent ( const double *  x0)

Definition at line 138 of file G4KDNode.cc.

References fAxis, fLeft, fPosition, and fRight.

Referenced by Insert().

+ Here is the caller graph for this function:

int G4KDNode::GetAxis ( )
inline

Definition at line 112 of file G4KDNode.hh.

References fAxis.

Referenced by G4KDTree::__NearestInRange(), G4KDTree::__NearestToNode(), and G4KDTree::__NearestToPosition().

+ Here is the caller graph for this function:

void * G4KDNode::GetData ( )
inline

Definition at line 117 of file G4KDNode.hh.

References fData.

Referenced by G4KDTree::__Clear_Rec(), G4KDTree::__NearestToNode(), G4KDTree::__NearestToPosition(), and GetData().

+ Here is the caller graph for this function:

int G4KDNode::GetDim ( )

Definition at line 112 of file G4KDNode.cc.

References fTree, and G4KDTree::GetDim().

+ Here is the call graph for this function:

G4KDNode * G4KDNode::GetLeft ( )
inline

Definition at line 137 of file G4KDNode.hh.

References fLeft.

Referenced by G4KDTree::__Clear_Rec(), G4KDTree::__NearestInRange(), G4KDTree::__NearestToNode(), and G4KDTree::__NearestToPosition().

+ Here is the caller graph for this function:

G4KDNode * G4KDNode::GetParent ( )
inline

Definition at line 132 of file G4KDNode.hh.

References fParent.

const double * G4KDNode::GetPosition ( )
inline

Definition at line 127 of file G4KDNode.hh.

References fPosition.

Referenced by G4KDTree::__NearestInRange(), G4KDTree::__NearestToNode(), G4KDTree::__NearestToPosition(), G4KDTree::Build(), GetNodePosition(), G4KDTree::Nearest(), G4KDTree::NearestInRange(), and __1DSortOut::sortOutNDim::operator()().

+ Here is the caller graph for this function:

G4KDNode * G4KDNode::GetRight ( )
inline

Definition at line 142 of file G4KDNode.hh.

References fRight.

Referenced by G4KDTree::__Clear_Rec(), G4KDTree::__NearestInRange(), G4KDTree::__NearestToNode(), and G4KDTree::__NearestToPosition().

+ Here is the caller graph for this function:

G4KDTree * G4KDNode::GetTree ( )
inline

Definition at line 147 of file G4KDNode.hh.

References fTree.

void G4KDNode::InactiveNode ( )

Definition at line 120 of file G4KDNode.cc.

References fData.

Referenced by InactiveNode().

+ Here is the caller graph for this function:

G4KDNode * G4KDNode::Insert ( const double *  p,
void *  data 
)

Definition at line 156 of file G4KDNode.cc.

References fAxis, G4KDTree::fDim, FindParent(), fLeft, fPosition, fRight, fSide, fTree, and G4KDNode().

Referenced by G4KDTree::Build(), Insert(), and G4KDTree::Insert().

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

int G4KDNode::Insert ( G4KDNode newNode,
double *  p 
)

Definition at line 180 of file G4KDNode.cc.

References fAxis, G4KDTree::fDim, FindParent(), fLeft, fParent, fPosition, fRight, fSide, and fTree.

+ Here is the call graph for this function:

int G4KDNode::Insert ( G4KDNode newNode,
const double &  x,
const double &  y,
const double &  z 
)

Definition at line 206 of file G4KDNode.cc.

References Insert(), and z.

+ Here is the call graph for this function:

int G4KDNode::Insert ( G4KDNode newNode)

Definition at line 215 of file G4KDNode.cc.

References fPosition, and Insert().

+ Here is the call graph for this function:

G4KDNode & G4KDNode::operator= ( const G4KDNode right)
private

Definition at line 92 of file G4KDNode.cc.

References fAxis, fData, fLeft, fParent, fPosition, fRight, fSide, fTree, and SetPosition().

+ Here is the call graph for this function:

void G4KDNode::PullSubTree ( )

Definition at line 220 of file G4KDNode.cc.

References fLeft, fParent, fRight, fSide, and fTree.

void G4KDNode::RetrieveNodeList ( std::list< G4KDNode * > &  node_list)

Definition at line 240 of file G4KDNode.cc.

References fLeft, fRight, and RetrieveNodeList().

Referenced by RetrieveNodeList().

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

void G4KDNode::SetData ( void *  data)
inline

Definition at line 122 of file G4KDNode.hh.

References fData.

Referenced by G4KDTree::__Clear_Rec().

+ Here is the caller graph for this function:

int G4KDNode::SetPosition ( const double *  newposition)
protected

Definition at line 125 of file G4KDNode.cc.

References G4KDTree::fDim, fPosition, and fTree.

Referenced by G4KDNode(), and operator=().

+ Here is the caller graph for this function:

void G4KDNode::SetTree ( G4KDTree tree)
inline

Definition at line 152 of file G4KDNode.hh.

References fTree.

Member Data Documentation

int G4KDNode::fAxis
protected

Definition at line 93 of file G4KDNode.hh.

Referenced by FindParent(), G4KDNode(), GetAxis(), Insert(), and operator=().

void* G4KDNode::fData
protected

Definition at line 94 of file G4KDNode.hh.

Referenced by GetData(), InactiveNode(), operator=(), and SetData().

G4KDNode* G4KDNode::fLeft
protected

Definition at line 102 of file G4KDNode.hh.

Referenced by FindParent(), GetLeft(), Insert(), operator=(), PullSubTree(), and RetrieveNodeList().

G4KDNode * G4KDNode::fParent
protected

Definition at line 102 of file G4KDNode.hh.

Referenced by GetParent(), Insert(), operator=(), and PullSubTree().

double* G4KDNode::fPosition
protected

Definition at line 92 of file G4KDNode.hh.

Referenced by FindParent(), G4KDNode(), GetPosition(), Insert(), operator=(), SetPosition(), and ~G4KDNode().

G4KDNode * G4KDNode::fRight
protected

Definition at line 102 of file G4KDNode.hh.

Referenced by FindParent(), GetRight(), Insert(), operator=(), PullSubTree(), and RetrieveNodeList().

int G4KDNode::fSide
protected

Definition at line 95 of file G4KDNode.hh.

Referenced by G4KDNode(), Insert(), operator=(), and PullSubTree().

G4KDTree* G4KDNode::fTree
protected

Definition at line 101 of file G4KDNode.hh.

Referenced by GetDim(), GetTree(), Insert(), operator=(), PullSubTree(), SetPosition(), and SetTree().


The documentation for this class was generated from the following files: