#include <stdio.h>
+#include <stdlib.h>
#include "quadtree.h"
-void trap(void )
+#ifdef DEBUG
+#define debug 1
+#else
+#define debug 0
+#endif
+
+static void trap(void )
{
- exit(1);
+ if (debug)
+ exit(1);
}
static void validate_subtree(const struct quadtree *node)
static void validate_tree(const struct quadtree *node)
{
- const struct quadtree *parent = quadtree_find_parent(node);
-
- validate_subtree(parent);
+ if (debug)
+ validate_subtree(quadtree_find_parent(node));
}
/**
{
int direction, count = 0;
- direction = it->direction(head, it->ptr);
+ direction = it->direction(head, (struct quadtree_iterator *)it);
if ((direction & QUADTREE_UPLEFT) && head->child[0])
count += _walk_tree(head->child[0], it);
count += _walk_tree(head->child[3], it);
if ((direction & QUADTREE_SELF) && it->callback) {
- it->callback(head, it->ptr);
+ it->callback(head, (struct quadtree_iterator *)it);
count++;
}
return count;
}
-int walk_tree(const struct quadtree_iterator *it)
+int walk_quadtree(const struct quadtree_iterator *it)
{
return _walk_tree(it->head, it);
}