19#ifndef GEOS_INDEX_STRTREE_BOUNDABLEPAIR_H
20#define GEOS_INDEX_STRTREE_BOUNDABLEPAIR_H
22#include <geos/index/strtree/Boundable.h>
23#include <geos/index/strtree/ItemDistance.h>
48 const Boundable* boundable1;
49 const Boundable* boundable2;
50 ItemDistance* itemDistance;
54 struct BoundablePairQueueCompare {
55 bool operator()(
const BoundablePair* a,
const BoundablePair* b) {
56 return a->getDistance() > b->getDistance();
60 typedef std::priority_queue<BoundablePair*, std::vector<BoundablePair*>, BoundablePairQueueCompare> BoundablePairQueue;
61 BoundablePair(
const Boundable* boundable1,
const Boundable* boundable2, ItemDistance* itemDistance);
70 const Boundable* getBoundable(
int i)
const;
81 double distance()
const;
93 double getDistance()
const;
100 bool isLeaves()
const;
102 static bool isComposite(
const Boundable* item);
104 static double area(
const Boundable* b);
106 void expandToQueue(BoundablePairQueue &,
double minDistance);
107 void expand(
const Boundable* bndComposite,
const Boundable* bndOther, BoundablePairQueue & priQ,
double minDistance);
Contains 2-D and 1-D versions of the Sort-Tile-Recursive (STR) tree, a query-only R-tree.
Definition SIRtreePointInRing.h:32
Provides classes for various kinds of spatial indexes.
Definition IndexedNestedRingTester.h:31
Basic namespace for all GEOS functionalities.
Definition IndexedNestedRingTester.h:25