17 #include <geos/export.h> 19 #include <geos/index/strtree/AbstractSTRtree.h> 20 #include <geos/index/strtree/Interval.h> 55 SIRtree(std::size_t nodeCapacity);
59 void insert(
double x1,
double x2,
void* item);
69 std::vector<void*>* results =
new std::vector<void*>();
70 Interval interval(std::min(x1, x2), std::max(x1, x2));
95 bool intersects(
const void* aBounds,
const void* bBounds)
override;
102 std::unique_ptr<BoundableList> createParentBoundables(
105 AbstractNode* createNode(
int level)
override;
113 std::unique_ptr<BoundableList> sortBoundables(
const BoundableList* input);
116 IntersectsOp* intersectsOp;
117 std::vector<std::unique_ptr<Interval>> intervals;
A contiguous portion of 1D-space. Used internally by SIRtree.
Definition: strtree/Interval.h:30
std::vector< void * > * query(double x1, double x2)
Definition: SIRtree.h:67
std::vector< void * > * query(double x)
Definition: SIRtree.h:79
Base class for STRtree and SIRtree.
Definition: AbstractSTRtree.h:138
A test for intersection between two bounds, necessary because subclasses of AbstractSTRtree have diff...
Definition: AbstractSTRtree.h:175
virtual void insert(const void *bounds, void *item)
Also builds the tree, if necessary.
Basic namespace for all GEOS functionalities.
Definition: Angle.h:25
void query(const void *searchBounds, std::vector< void *> &foundItems)
Also builds the tree, if necessary.
IntersectsOp * getIntersectsOp() override
Definition: SIRtree.h:108
One-dimensional version of an STR-packed R-tree.
Definition: SIRtree.h:40
std::vector< Boundable * > BoundableList
A list of boundables. TODO: use a list.
Definition: AbstractSTRtree.h:43