The base class for nodes in a Quadtree.
More...
#include <NodeBase.h>
Public Member Functions |
std::vector< void * > & | getItems () |
void | add (void *item) |
std::vector< void * > & | addAllItems (std::vector< void * > &resultItems) const |
| Push all node items to the given vector, return the argument.
|
virtual void | addAllItemsFromOverlapping (const geom::Envelope &searchEnv, std::vector< void * > &resultItems) const |
unsigned int | depth () const |
unsigned int | size () const |
unsigned int | getNodeCount () const |
virtual std::string | toString () const |
virtual void | visit (const geom::Envelope *searchEnv, ItemVisitor &visitor) |
bool | remove (const geom::Envelope *itemEnv, void *item) |
bool | hasItems () const |
bool | hasChildren () const |
bool | isPrunable () const |
Protected Member Functions |
virtual bool | isSearchMatch (const geom::Envelope &searchEnv) const =0 |
Protected Attributes |
std::vector< void * > | items |
| Actual items are NOT owned by this class.
|
Node * | subnode [4] |
Detailed Description
The base class for nodes in a Quadtree.
Member Function Documentation
void geos::index::quadtree::NodeBase::add |
( |
void * |
item | ) |
|
Add an item to this node. Ownership of the item is left to caller.
bool geos::index::quadtree::NodeBase::remove |
( |
const geom::Envelope * |
itemEnv, |
|
|
void * |
item |
|
) |
| |
Removes a single item from this subtree.
- Parameters
-
searchEnv | the envelope containing the item |
item | the item to remove |
- Returns
true
if the item was found and removed
Member Data Documentation
Node* geos::index::quadtree::NodeBase::subnode[4] |
|
protected |
subquads are numbered as follows:
2 | 3
--+--
0 | 1
Nodes are owned by this class
The documentation for this class was generated from the following file: