#include <OctreeImplementation.h>
Inheritance diagram for hxa7241_graphics::OctreeBranch:
Public Member Functions | |
OctreeBranch () | |
standard object services --------------------------------------------------- | |
OctreeBranch (const OctreeData &thisData, const Array< const void * > &items, const void *const pItem, const OctreeAgentV &agent) | |
virtual | ~OctreeBranch () |
OctreeBranch (const OctreeBranch &) | |
OctreeBranch & | operator= (const OctreeBranch &) |
virtual void | insert (const OctreeData &thisData, OctreeCell *&pThis, const void *pItem, const OctreeAgentV &agent) |
commands ------------------------------------------------------------------- | |
virtual bool | remove (OctreeCell *&pThis, const void *pItem, const dword maxItemsPerCell, dword &itemCount) |
virtual void | visit (const OctreeData &thisData, OctreeVisitorV &visitor) const |
queries -------------------------------------------------------------------- | |
virtual OctreeCell * | clone () const |
virtual void | getInfo (dword &byteSize, dword &leafCount, dword &itemCount, dword &maxDepth) const |
Static Public Member Functions | |
static void | continueVisit (const OctreeCell *subCells[8], const OctreeData &octreeData, dword subCellIndex, OctreeVisitorV &visitor) |
statics -------------------------------------------------------------------- | |
Protected Member Functions | |
virtual void | zeroSubCells () |
implementation ------------------------------------------------------------- |
Stores pointers to eight (at most) child cells.
subCells_m elements can be null, or point to an OctreeCell instance.
OctreeBranch::OctreeBranch | ( | ) |
standard object services ---------------------------------------------------
OctreeBranch::OctreeBranch | ( | const OctreeData & | thisData, | |
const Array< const void * > & | items, | |||
const void *const | pItem, | |||
const OctreeAgentV & | agent | |||
) |
OctreeBranch::~OctreeBranch | ( | ) | [virtual] |
OctreeBranch::OctreeBranch | ( | const OctreeBranch & | ) |
OctreeBranch & OctreeBranch::operator= | ( | const OctreeBranch & | ) |
void OctreeBranch::insert | ( | const OctreeData & | thisData, | |
OctreeCell *& | pThis, | |||
const void * | pItem, | |||
const OctreeAgentV & | agent | |||
) | [virtual] |
commands -------------------------------------------------------------------
Implements hxa7241_graphics::OctreeCell.
bool OctreeBranch::remove | ( | OctreeCell *& | pThis, | |
const void * | pItem, | |||
const dword | maxItemsPerCell, | |||
dword & | itemCount | |||
) | [virtual] |
Implements hxa7241_graphics::OctreeCell.
void OctreeBranch::visit | ( | const OctreeData & | thisData, | |
OctreeVisitorV & | visitor | |||
) | const [virtual] |
queries --------------------------------------------------------------------
Implements hxa7241_graphics::OctreeCell.
OctreeCell * OctreeBranch::clone | ( | ) | const [virtual] |
Implements hxa7241_graphics::OctreeCell.
void OctreeBranch::getInfo | ( | dword & | byteSize, | |
dword & | leafCount, | |||
dword & | itemCount, | |||
dword & | maxDepth | |||
) | const [virtual] |
Implements hxa7241_graphics::OctreeCell.
void OctreeBranch::continueVisit | ( | const OctreeCell * | subCells[8], | |
const OctreeData & | octreeData, | |||
dword | subCellIndex, | |||
OctreeVisitorV & | visitor | |||
) | [static] |
statics --------------------------------------------------------------------
void OctreeBranch::zeroSubCells | ( | ) | [protected, virtual] |
implementation -------------------------------------------------------------