38 #define NUMSIDES 2*NUMDIMS
54 #define MAXCARD (int)((PGSIZE-(2*sizeof(int))) / sizeof(struct Branch))
int(* SearchHitCallback)(int id, void *arg)
RectReal boundary[NUMSIDES]
int RTreePickBranch(struct Rect *, struct Node *)
int RTreeInsertRect(struct Rect *, int, struct Node **, int depth)
int RTreeDeleteRect1(struct Rect *, struct Node *, struct Node **)
int RTreeAddBranch(struct Branch *, struct Node *, struct Node **)
void RTreeDestroyNode(struct Node *)
RectReal RTreeRectSphericalVolume(struct Rect *R)
void RTreePrintNode(struct Node *, int)
int RTreeSearch(struct Node *, struct Rect *, SearchHitCallback, void *)
int RTreeGetLeafMax(void)
void RTreeSplitNode(struct Node *, struct Branch *, struct Node **)
RectReal RTreeRectVolume(struct Rect *R)
struct Node * RTreeNewNode(void)
struct Node * RTreeNewIndex(void)
int RTreeDeleteRect(struct Rect *, int, struct Node **)
void RTreeInitRect(struct Rect *)
int RTreeInsertRect1(struct Rect *, struct Node *, struct Node **, int depth)
int RTreeOverlap(struct Rect *, struct Rect *)
void RTreePrintRect(struct Rect *, int)
struct Rect RTreeNodeCover(struct Node *)
struct Rect RTreeNullRect(void)
int RTreeGetNodeMax(void)
struct Rect RTreeCombineRect(struct Rect *, struct Rect *)
void RTreeInitNode(struct Node *)
RectReal RTreeRectArea(struct Rect *)
void RTreeFreeNode(struct Node *)
struct Branch branch[MAXCARD]
void RTreeDisconnectBranch(struct Node *, int)