about summary refs log tree commit diff stats
path: root/src/include/rbtree.h
blob: c210d55de50fe9e29bcba8cd4da370084bbb4a6f (plain) (blame)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
#include <stdint.h>

#ifndef RBTREE_H
#define RBTREE_H

typedef struct rbtree rbtree;

rbtree* init_rbtree();
void delete_rbtree(rbtree *tree);

uint32_t rb_get(rbtree *tree, uintptr_t addr);
int rb_get_end(rbtree* tree, uintptr_t addr, uint32_t* val, uintptr_t* end);
int rb_set(rbtree *tree, uintptr_t start, uintptr_t end, uint32_t data);
int rb_unset(rbtree *tree, uintptr_t start, uintptr_t end);
uintptr_t rb_get_righter(rbtree *tree);

void print_rbtree(const rbtree *tree);

#endif // RBTREE_H