X-Git-Url: http://git.nguyen.vg/gitweb/?a=blobdiff_plain;f=libcds%2Fsrc%2Fstatic_sequence%2Fstatic_sequence_bs.h;h=fe023d0a89bc679edffc1946b36c5ca3839cf26c;hb=45de465016fdd58a01d69012691772ef1b8d335c;hp=76de5aeaee53af2875dd7766f825bb4e95bbdf12;hpb=f21a49f63aa3813e0b0b972bf81dc752b2a37153;p=SXSI%2FXMLTree.git diff --git a/libcds/src/static_sequence/static_sequence_bs.h b/libcds/src/static_sequence/static_sequence_bs.h index 76de5ae..fe023d0 100644 --- a/libcds/src/static_sequence/static_sequence_bs.h +++ b/libcds/src/static_sequence/static_sequence_bs.h @@ -40,7 +40,7 @@ public: virtual uint rank(uint c, uint i); virtual uint select(uint c, uint i); - virtual uint select_next(uint c, uint i); + uint select_next(uint c, uint i); virtual uint access(uint i); @@ -50,7 +50,13 @@ public: /** Reads a bitmap determining the type */ static static_sequence_bs * load(FILE * fp); - + + uint select_next_unsafe(uint c, uint i){ + static_bitsequence * bs = bitmaps[c]; + static_bitsequence_sdarray * sd = reinterpret_cast(bs); + return sd->select_next1_unsafe(i); + }; + protected: uint sigma; static_bitsequence ** bitmaps;