OctTree Class Reference

#include <OctTree.h>

Inheritance diagram for OctTree:

SDS List of all members.

Public Member Functions

 OctTree (bool, unsigned)
virtual ~OctTree ()
virtual SDS * clone () const
virtual Iterator * createIterator ()
virtual InspectorSDS * createInspector (unsigned)
virtual int append (SceneGraphObject *)
virtual SceneGraphObject * detach (SceneGraphObject::OID)
virtual bool update (void)
virtual bool build (void)
virtual void dump (const char *, const char *)
virtual void dump (const char *)
virtual void __debug ()

Static Public Member Functions

static Matrix4 * multiTrans (const Matrix4 *, const Matrix4 *, Vector3 &)
static Matrix4 * multiTrans (const Matrix4 *, const Matrix4 *, double &)

Protected Member Functions

void _append (SceneGraphObject *, Node *)
SceneGraphObject * _detach (SceneGraphObject::OID, Node)
void _build_tree (Node *)
void _rebuild_tree (Node *)
void _destroy_tree (Node *)
virtual void _duplicate_attributes (const SDS &)=0

Protected Attributes

esg::OctTree::Node _root
unsigned _sideLength
bool _delayBuild
List< SceneGraphObject > _intangibleChildren

Classes

struct  Node

Detailed Description

Definition at line 16 of file OctTree.h.


Constructor & Destructor Documentation

OctTree (  bool  ,
unsigned 
) 
 

Definition at line 42 of file OctTree.cc.

Referenced by OctTree::clone().

virtual ~OctTree (   )  [inline, virtual]
 

Definition at line 47 of file OctTree.h.

References OctTree::_destroy_tree(), and OctTree::_root.


Member Function Documentation

virtual void __debug (  void   )  [inline, virtual, inherited]
 

Reimplemented in BVH, and Heap.

Definition at line 90 of file SDS.h.

void _append (  SceneGraphObject *  ,
Node * 
)  [protected]
 

Definition at line 5 of file OctTree.cc.

void _build_tree (  Node *   )  [protected]
 

Definition at line 16 of file OctTree.cc.

Referenced by OctTree::build().

void _destroy_tree (  Node *   )  [protected]
 

Definition at line 26 of file OctTree.cc.

References OctTree::Node::children, List::dropAll(), OctTree::Node::isInner(), and OctTree::Node::objectList.

Referenced by OctTree::~OctTree().

SceneGraphObject* _detach (  SceneGraphObject::OID  ,
Node 
)  [protected]
 

Referenced by OctTree::detach().

virtual void _duplicate_attributes (  const SDS &   )  [protected, pure virtual]
 

Reimplemented from SDS.

Referenced by OctTree::clone().

void _rebuild_tree (  Node *   )  [protected]
 

Definition at line 21 of file OctTree.cc.

Referenced by OctTree::update().

int append (  SceneGraphObject *   )  [virtual]
 

Implements SDS.

Definition at line 68 of file OctTree.cc.

References SDS::_intangibleChildren, List::append(), and SceneGraphObject::tangible().

bool build (  void   )  [virtual]
 

Implements SDS.

Definition at line 95 of file OctTree.cc.

References OctTree::_build_tree(), SDS::_delayBuild, and OctTree::_root.

SDS * clone (   )  const [virtual]
 

Implements SDS.

Definition at line 51 of file OctTree.cc.

References OctTree::_duplicate_attributes(), and OctTree::OctTree().

virtual InspectorSDS* createInspector (  unsigned   )  [virtual]
 

Implements SDS.

Iterator * createIterator (   )  [virtual]
 

Implements SDS.

Definition at line 58 of file OctTree.cc.

SceneGraphObject * detach (  SceneGraphObject::OID   )  [virtual]
 

Implements SDS.

Definition at line 83 of file OctTree.cc.

References OctTree::_detach(), and OctTree::_root.

virtual void dump (  const char *   )  [inline, virtual]
 

Reimplemented from SDS.

Definition at line 74 of file OctTree.h.

References OctTree::dump().

virtual void dump (  const char *  ,
const char * 
)  [inline, virtual]
 

Implements SDS.

Definition at line 73 of file OctTree.h.

Referenced by OctTree::dump().

Matrix4 * multiTrans (  const Matrix4 *  ,
const Matrix4 *  ,
double & 
)  [static, inherited]
 

Definition at line 116 of file SDS.cc.

Matrix4 * multiTrans (  const Matrix4 *  ,
const Matrix4 *  ,
Vector3 & 
)  [static, inherited]
 

Definition at line 10 of file SDS.cc.

Referenced by FDH14Tree::_dr_init(), BVH::_dr_init(), and BVH::collision().

bool update (  void   )  [virtual]
 

Implements SDS.

Definition at line 88 of file OctTree.cc.

References SDS::_delayBuild, OctTree::_rebuild_tree(), and OctTree::_root.


Member Data Documentation

bool _delayBuild [protected, inherited]
 

Definition at line 31 of file SDS.h.

Referenced by SDS::_duplicate_attributes(), OctTree::build(), BVH::build(), BVH::collision(), BVH::distance(), BVH::separation(), OctTree::update(), and BVH::update().

List<SceneGraphObject> _intangibleChildren [protected, inherited]
 

Definition at line 32 of file SDS.h.

Referenced by OctTree::append(), Heap::append(), BVH::append(), IteratorSDS::firstChild(), and IteratorSDS::nextChild().

struct esg::OctTree::Node _root [protected]
 

Referenced by OctTree::build(), OctTree::detach(), OctTree::update(), and OctTree::~OctTree().

unsigned _sideLength [protected]
 

Definition at line 42 of file OctTree.h.


The documentation for this class was generated from the following files:
Generated on Wed Jun 28 12:24:35 2006 for esg by  doxygen 1.4.6