summaryrefslogtreecommitdiff
path: root/src/kernel/lib/bitset.h
blob: f2441ceb05e2dd83b591bd3fd5443b74d18be623 (plain) (blame)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
#ifndef DEF_BITSET_H
#define DEF_BITSET_H

#include <types.h>

#define INDEX_FROM_BIT(a) (a/(8*4))
#define OFFSET_FROM_BIT(a) (a%(8*4))

struct bitset {
	uint32_t *bits;
	uint32_t size;

	void set(uint32_t num);
	void clear(uint32_t num);
	uint32_t test(uint32_t num);
	uint32_t firstFree();
};


#endif