123456789101112131415161718192021222324252627 |
- #ifndef _LINUX_INTERVAL_TREE_H
- #define _LINUX_INTERVAL_TREE_H
- #include <linux/rbtree.h>
- struct interval_tree_node {
- struct rb_node rb;
- unsigned long start; /* Start of interval */
- unsigned long last; /* Last location _in_ interval */
- unsigned long __subtree_last;
- };
- extern void
- interval_tree_insert(struct interval_tree_node *node, struct rb_root *root);
- extern void
- interval_tree_remove(struct interval_tree_node *node, struct rb_root *root);
- extern struct interval_tree_node *
- interval_tree_iter_first(struct rb_root *root,
- unsigned long start, unsigned long last);
- extern struct interval_tree_node *
- interval_tree_iter_next(struct interval_tree_node *node,
- unsigned long start, unsigned long last);
- #endif /* _LINUX_INTERVAL_TREE_H */
|