Geant4  10.04
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros
G4KDNode_Base Class Referenceabstract
Inheritance diagram for G4KDNode_Base:
G4KDNode< PointT > G4KDNodeCopy< PointCopyT >

Public Member Functions

 G4KDNode_Base (G4KDTree *, G4KDNode_Base *)
 
virtual ~G4KDNode_Base ()
 
virtual double operator[] (size_t) const =0
 
virtual void InactiveNode ()
 
virtual bool IsValid () const
 
G4KDTreeGetTree () const
 
void SetTree (G4KDTree *tree)
 
int GetDim () const
 
int GetAxis () const
 
G4KDNode_BaseGetParent ()
 
G4KDNode_BaseGetLeft ()
 
G4KDNode_BaseGetRight ()
 
template<typename Position >
G4KDNode_BaseFindParent (const Position &x0)
 
template<typename PointT >
G4KDNode_BaseInsert (PointT *point)
 
template<typename PointT >
G4KDNode_BaseInsert (const PointT &point)
 
int Insert (G4KDNode_Base *newNode)
 
void PullSubTree ()
 
void RetrieveNodeList (std::list< G4KDNode_Base * > &node_list)
 
void Print (std::ostream &out, int level=0) const
 

Protected Attributes

size_t fAxis
 
int fSide
 
G4KDTreefTree
 
G4KDNode_BasefLeft
 
G4KDNode_BasefRight
 
G4KDNode_BasefParent
 

Private Member Functions

 G4KDNode_Base (const G4KDNode_Base &right)
 
G4KDNode_Baseoperator= (const G4KDNode_Base &right)
 

Constructor & Destructor Documentation

virtual ~G4KDNode_Base ( )
virtual
G4KDNode_Base ( const G4KDNode_Base right)
private

Member Function Documentation

virtual double operator[] ( size_t  ) const
pure virtual
virtual bool IsValid ( ) const
virtual
G4KDTree* GetTree ( ) const

References fTree.

void SetTree ( G4KDTree tree)

References fTree.

int GetDim ( ) const
int GetAxis ( ) const

References fAxis.

G4KDNode_Base* GetParent ( )

References fParent.

G4KDNode_Base* GetLeft ( )

References fLeft.

G4KDNode_Base* GetRight ( )

References fRight.

G4KDNode_Base* FindParent ( const Position &  x0)
G4KDNode_Base* Insert ( PointT *  point)
G4KDNode_Base* Insert ( const PointT &  point)
int Insert ( G4KDNode_Base newNode)
void PullSubTree ( )
void RetrieveNodeList ( std::list< G4KDNode_Base * > &  node_list)
void Print ( std::ostream &  out,
int  level = 0 
) const
G4KDNode_Base& operator= ( const G4KDNode_Base right)
private

Member Data Documentation

size_t fAxis
protected
int fSide
protected
G4KDNode_Base* fLeft
protected
G4KDNode_Base * fRight
protected
G4KDNode_Base * fParent
protected