GRASS GIS 8 Programmer's Manual
8.2.2dev(2023)-3d2c704037
|
#include <stdio.h>
#include <stdlib.h>
#include <string.h>
#include <assert.h>
#include <grass/gis.h>
#include "index.h"
#include "split.h"
#include "card.h"
Go to the source code of this file.
Functions | |
void | RTreeInitNode (struct RTree *t, struct RTree_Node *n, int type) |
struct RTree_Node * | RTreeAllocNode (struct RTree *t, int level) |
void | RTreeFreeNode (struct RTree_Node *n) |
void | RTreeCopyNode (struct RTree_Node *n1, struct RTree_Node *n2, struct RTree *t) |
void | RTreeCopyBranch (struct RTree_Branch *b1, struct RTree_Branch *b2, struct RTree *t) |
void | RTreeNodeCover (struct RTree_Node *n, struct RTree_Rect *r, struct RTree *t) |
int | RTreePickBranch (struct RTree_Rect *r, struct RTree_Node *n, struct RTree *t) |
void | RTreeDisconnectBranch (struct RTree_Node *n, int i, struct RTree *t) |
void | RTreeDestroyNode (struct RTree_Node *n, int nodes) |
int | RTreeAddBranch (struct RTree_Branch *b, struct RTree_Node *n, struct RTree_Node **newnode, struct RTree_ListBranch **ee, struct RTree_Rect *cover, char *overflow, struct RTree *t) |
void | RTreeTabIn (int depth) |
void | RTreePrintNode (struct RTree_Node *n, int depth, struct RTree *t) |
int RTreeAddBranch | ( | struct RTree_Branch * | b, |
struct RTree_Node * | n, | ||
struct RTree_Node ** | newnode, | ||
struct RTree_ListBranch ** | ee, | ||
struct RTree_Rect * | cover, | ||
char * | overflow, | ||
struct RTree * | t | ||
) |
Definition at line 542 of file node.c.
References RTree_Node::branch, RTree_Branch::child, RTree_Node::count, RTree_Child::id, RTree_Node::level, MAXKIDS, RTree_Branch::rect, RTree::rootlevel, RTreeCopyRect, and RTree::valid_child.
struct RTree_Node* RTreeAllocNode | ( | struct RTree * | t, |
int | level | ||
) |
Definition at line 77 of file node.c.
References assert, RTree_Rect::boundary, RTree_Node::branch, RTree_Node::count, RTree_Node::level, malloc(), MAXCARD, RTree_Branch::rect, and RTreeAllocBoundary().
Referenced by RTreeCreateTree(), and RTreeInsertRectF().
void RTreeCopyBranch | ( | struct RTree_Branch * | b1, |
struct RTree_Branch * | b2, | ||
struct RTree * | t | ||
) |
Definition at line 126 of file node.c.
References RTree_Branch::child, RTree_Branch::rect, and RTreeCopyRect.
Referenced by RTreeCopyNode().
void RTreeCopyNode | ( | struct RTree_Node * | n1, |
struct RTree_Node * | n2, | ||
struct RTree * | t | ||
) |
Definition at line 112 of file node.c.
References assert, RTree_Node::branch, RTree_Node::count, RTree_Node::level, MAXCARD, and RTreeCopyBranch().
void RTreeDestroyNode | ( | struct RTree_Node * | n, |
int | nodes | ||
) |
Definition at line 291 of file node.c.
References RTree_Node::branch, RTree_Branch::child, RTree_Node::level, RTree_Child::ptr, RTreeDestroyNode(), and RTreeFreeNode().
Referenced by RTreeDestroyNode(), and RTreeDestroyTree().
void RTreeDisconnectBranch | ( | struct RTree_Node * | n, |
int | i, | ||
struct RTree * | t | ||
) |
Definition at line 270 of file node.c.
References assert, RTree_Node::branch, RTree_Branch::child, RTree::fd, and RTree::valid_child.
void RTreeFreeNode | ( | struct RTree_Node * | n | ) |
Definition at line 98 of file node.c.
References assert, RTree_Node::branch, free(), MAXCARD, RTree_Branch::rect, and RTreeFreeBoundary().
Referenced by RTreeCreateTree(), and RTreeDestroyNode().
void RTreeInitNode | ( | struct RTree * | t, |
struct RTree_Node * | n, | ||
int | type | ||
) |
void RTreeNodeCover | ( | struct RTree_Node * | n, |
struct RTree_Rect * | r, | ||
struct RTree * | t | ||
) |
Definition at line 136 of file node.c.
References RTree_Node::branch, RTree_Branch::child, RTree_Child::id, RTree::leafcard, RTree_Node::level, RTree::nodecard, RTree_Branch::rect, RTreeCopyRect, RTreeExpandRect(), and RTree::valid_child.
int RTreePickBranch | ( | struct RTree_Rect * | r, |
struct RTree_Node * | n, | ||
struct RTree * | t | ||
) |
void RTreePrintNode | ( | struct RTree_Node * | n, |
int | depth, | ||
struct RTree * | t | ||
) |
Definition at line 617 of file node.c.
References RTree_Node::branch, RTree_Branch::child, RTree_Node::count, RTree_Child::id, RTree::leafcard, RTree_Node::level, RTree::nodecard, RTree_Branch::rect, RTreePrintRect(), and RTreeTabIn().
void RTreeTabIn | ( | int | depth | ) |
Definition at line 602 of file node.c.
Referenced by RTreePrintNode().