PostGIS 3.7.0dev-r@@SVN_REVISION@@
Loading...
Searching...
No Matches

◆ itree_new_node()

static IntervalTreeNode * itree_new_node ( IntervalTree itree)
static

Definition at line 99 of file intervaltree.c.

100{
101 IntervalTreeNode *node = NULL;
102 if (itree->numNodes >= itree->maxNodes)
103 lwerror("%s ran out of node space", __func__);
104
105 node = &(itree->nodes[itree->numNodes++]);
106 node->min = FLT_MAX;
107 node->max = FLT_MIN;
108 node->edgeIndex = UINT32_MAX;
109 node->numChildren = 0;
110 memset(node->children, 0, sizeof(node->children));
111 return node;
112}
void void lwerror(const char *fmt,...) __attribute__((format(printf
Write a notice out to the error handler.
#define UINT32_MAX
struct IntervalTreeNode * children[ITREE_MAX_NODES]
uint32_t numChildren
uint32_t maxNodes
struct IntervalTreeNode * nodes
uint32_t numNodes

References IntervalTreeNode::children, IntervalTreeNode::edgeIndex, lwerror(), IntervalTreeNode::max, IntervalTree::maxNodes, IntervalTreeNode::min, IntervalTree::nodes, IntervalTreeNode::numChildren, IntervalTree::numNodes, and UINT32_MAX.

Referenced by itree_add_pointarray(), and itree_merge_nodes().

Here is the call graph for this function:
Here is the caller graph for this function: