#include <OctreeImplementation.h>
Collaboration diagram for hxa7241_graphics::OctreeRoot:
Public Member Functions | |
OctreeRoot (const Vector3r &position, real sizeOfCube, dword maxItemsPerCell, dword maxLevelCount, real minCellSize) | |
standard object services --------------------------------------------------- | |
~OctreeRoot () | |
OctreeRoot (const OctreeRoot &) | |
OctreeRoot & | operator= (const OctreeRoot &) |
bool | insert (const void *pItem, const OctreeAgentV &agent) |
commands ------------------------------------------------------------------- | |
bool | remove (const void *pItem, const OctreeAgentV &agent) |
void | visit (OctreeVisitorV &visitor) const |
queries -------------------------------------------------------------------- | |
bool | isEmpty () const |
void | getInfo (dword rootWrapperByteSize, dword &byteSize, dword &leafCount, dword &itemCount, dword &maxDepth) const |
const Vector3r & | getPosition () const |
real | getSize () const |
dword | getMaxItemCountPerCell () const |
dword | getMaxLevelCount () const |
real | getMinCellSize () const |
Static Public Member Functions | |
static void | continueVisit (const OctreeCell *pRootCell, const OctreeData &octreeData, OctreeVisitorV &visitor) |
statics -------------------------------------------------------------------- |
pRootCell_m can be null, or point to an OctreeCell instance.
At construction, pRootCell_m is set to a legal value.
At destruction, pRootCell_m is deleted.
Whenever pRootCell_m is modified, it must be deleted then set to a legal value.
A legal value is: either 0, or the value from invocation of 'new'.
OctreeRoot::OctreeRoot | ( | const Vector3r & | position, | |
real | sizeOfCube, | |||
dword | maxItemsPerCell, | |||
dword | maxLevelCount, | |||
real | minCellSize | |||
) |
standard object services ---------------------------------------------------
OctreeRoot::~OctreeRoot | ( | ) |
OctreeRoot::OctreeRoot | ( | const OctreeRoot & | ) |
OctreeRoot & OctreeRoot::operator= | ( | const OctreeRoot & | ) |
bool OctreeRoot::insert | ( | const void * | pItem, | |
const OctreeAgentV & | agent | |||
) |
commands -------------------------------------------------------------------
bool OctreeRoot::remove | ( | const void * | pItem, | |
const OctreeAgentV & | agent | |||
) |
void OctreeRoot::visit | ( | OctreeVisitorV & | visitor | ) | const |
queries --------------------------------------------------------------------
bool OctreeRoot::isEmpty | ( | ) | const |
void OctreeRoot::getInfo | ( | dword | rootWrapperByteSize, | |
dword & | byteSize, | |||
dword & | leafCount, | |||
dword & | itemCount, | |||
dword & | maxDepth | |||
) | const |
const Vector3r & OctreeRoot::getPosition | ( | ) | const |
real OctreeRoot::getSize | ( | ) | const |
dword OctreeRoot::getMaxItemCountPerCell | ( | ) | const |
dword OctreeRoot::getMaxLevelCount | ( | ) | const |
real OctreeRoot::getMinCellSize | ( | ) | const |
void OctreeRoot::continueVisit | ( | const OctreeCell * | pRootCell, | |
const OctreeData & | octreeData, | |||
OctreeVisitorV & | visitor | |||
) | [static] |
statics --------------------------------------------------------------------