19 #include <geos/export.h>
20 #include <geos/index/strtree/Boundable.h>
26 #pragma warning(disable: 4251)
45 std::vector<Boundable*> childBoundables;
54 AbstractNode(
int newLevel, std::size_t capacity = 10) : level(newLevel), bounds(
nullptr) {
55 childBoundables.reserve(capacity);
62 inline std::vector<Boundable*>*
65 return &childBoundables;
70 inline const std::vector<Boundable*>*
71 getChildBoundables()
const
73 return &childBoundables;
89 if(bounds ==
nullptr) {
90 bounds = computeBounds();
108 assert(bounds ==
nullptr);
109 childBoundables.push_back(childBoundable);
112 bool isLeaf()
const override {
118 virtual void* computeBounds()
const = 0;
120 mutable void* bounds;
A node of the STR tree.
Definition: AbstractNode.h:43
const void * getBounds() const override
Definition: AbstractNode.h:88
int getLevel()
Definition: AbstractNode.h:99
void addChildBoundable(Boundable *childBoundable)
Definition: AbstractNode.h:107
A spatial object in an AbstractSTRtree.
Definition: Boundable.h:24
Basic namespace for all GEOS functionalities.
Definition: Angle.h:25