089d061f |
1 | #ifndef BUCKETSORT_H__ |
2 | #define BUCKETSORT_H__ |
3 | #include <stdint.h> |
089d061f |
4 | #include <stdlib.h> |
5 | typedef struct bucket { |
6 | uint32_t *head; |
7 | uint32_t *bp; |
8 | } bucket_t; |
9 | |
10 | typedef bucket_t bucket_array_t[2][0x100]; |
11 | |
12 | typedef struct bucket_info { |
13 | struct { |
14 | uint32_t *head, *tail; |
15 | } bucket_info[2][0x100]; |
16 | uint32_t numbuckets; |
17 | } bucket_info_t; |
18 | |
089d061f |
19 | void bucket_sort_intersect(uint32_t* const estart, uint32_t* const estop, |
20 | uint32_t* const ostart, uint32_t* const ostop, |
21 | bucket_info_t *bucket_info, bucket_array_t bucket); |
22 | #endif |