GEOS 3.11.1
Public Member Functions | List of all members
geos::index::strtree::SimpleSTRnode Class Reference

A node of the STR tree. More...

#include <SimpleSTRnode.h>

Inheritance diagram for geos::index::strtree::SimpleSTRnode:
geos::index::strtree::ItemBoundable geos::index::strtree::Boundable

Public Member Functions

 SimpleSTRnode (std::size_t newLevel, const geom::Envelope *p_env, void *p_item, std::size_t capacity=10)
 
 SimpleSTRnode (std::size_t newLevel)
 
void toString (std::ostream &os, int indentLevel) const
 
std::size_t getNumNodes () const
 
std::size_t getNumLeafNodes () const
 
const std::vector< SimpleSTRnode * > & getChildNodes () const
 
void * getItem () const
 
bool removeItem (void *item)
 
bool removeChild (SimpleSTRnode *child)
 
const geom::EnvelopegetEnvelope () const
 
const void * getBounds () const override
 
std::size_t getLevel () const
 
std::size_t size () const
 
void addChildNode (SimpleSTRnode *childNode)
 
bool isLeaf () const override
 
bool isComposite () const
 
double area () const
 
- Public Member Functions inherited from geos::index::strtree::ItemBoundable
 ItemBoundable (const void *newBounds, void *newItem)
 
bool isLeaf () const override
 
const void * getBounds () const override
 
void * getItem () const
 
virtual const void * getBounds () const =0
 
virtual bool isLeaf () const =0
 

Detailed Description

A node of the STR tree.

Member Function Documentation

◆ addChildNode()

void geos::index::strtree::SimpleSTRnode::addChildNode ( SimpleSTRnode childNode)

Adds either an AbstractNode, or if this is a leaf node, a data object (wrapped in an ItemBoundable)

◆ getBounds()

const void * geos::index::strtree::SimpleSTRnode::getBounds ( ) const
inlineoverridevirtual

Returns a representation of space that encloses this Boundable, preferably not much bigger than this Boundable's boundary yet fast to test for intersection with the bounds of other Boundables.

The class of object returned depends on the subclass of AbstractSTRtree.

Returns
an Envelope (for STRtrees), an Interval (for SIRtrees), or other object (for other subclasses of AbstractSTRtree)
See also
AbstractSTRtree::IntersectsOp

Reimplemented from geos::index::strtree::ItemBoundable.

◆ getEnvelope()

const geom::Envelope & geos::index::strtree::SimpleSTRnode::getEnvelope ( ) const
inline

Returns a representation of space that encloses this Node

◆ getLevel()

std::size_t geos::index::strtree::SimpleSTRnode::getLevel ( ) const
inline

Returns 0 if this node is a leaf, 1 if a parent of a leaf, and so on; the root node will have the highest level

◆ isLeaf()

bool geos::index::strtree::SimpleSTRnode::isLeaf ( ) const
inlineoverridevirtual

The documentation for this class was generated from the following file: