New rank/select data structure based on sadakane's code
[SXSI/XMLTree.git] / libcds / src / static_bitsequence / static_bitsequence_sdarray.h
1
2 #ifndef _STATIC_BITSEQUENCE_SDARRAY_H
3 #define _STATIC_BITSEQUENCE_SDARRAY_H
4
5 #include <basics.h>
6 #include <static_bitsequence.h>
7 #include <sdarray.h>
8
9 class static_bitsequence_sdarray: public static_bitsequence {
10         public:
11                 static_bitsequence_sdarray(uint * buff, uint len);
12                 virtual ~static_bitsequence_sdarray();
13                 virtual uint select1(uint i);
14                 virtual uint rank1(uint i);
15                 virtual uint size();
16                 virtual int save(FILE * fp);
17                 static static_bitsequence_sdarray * load(FILE * fp);
18
19         protected:
20                 selects3 sd;
21                 static_bitsequence_sdarray();
22
23 };
24
25 #endif
26