8 typedef unsigned char byte;
9 typedef unsigned short word;
10 typedef unsigned int dword;
12 #define OPT_NO_RANK (1<<30)
26 #define RRR (1<<logRRR)
44 int setbit(pb *B, int i,int x);
45 int setbits(pb *B, int i, int d, int x);
46 int getbit(pb *B, int i);
47 dword getbits(pb *B, int i, int d);
48 //unsigned int popcount(pb x);
50 int darray_construct(darray *da, int n, pb *buf,int opt);
51 int darray_select(darray *da, int i,int f);
52 int darray_rank(darray *da, int i);
53 int darray_pat_construct(darray *da, int n, pb *buf, int k, pb pat, int opt);
54 int darray_pat_select(darray *da, int i, pb (*getpat)(pb *));
55 int darray_pat_rank(darray *da, int i, pb (*getpat)(pb *));
57 int darray_select_bsearch(darray *da, int i, pb (*getpat)(pb *));
59 // Added by Diego Arroyuelo
60 void destroyDarray(darray *da);