X-Git-Url: http://git.nguyen.vg/gitweb/?a=blobdiff_plain;f=libcds%2Fsrc%2Fstatic_sequence%2Fwt_node_internal.h;h=3fd0579810045d881b154f81f0e29823c032f803;hb=95f2dabec7cabe4002865e5f9d12651e6e32229a;hp=b39efbd54dc74e767e399837dd5c2b21867307dd;hpb=4bd816265ae88b4e1631634260384baa559f8967;p=SXSI%2FXMLTree.git diff --git a/libcds/src/static_sequence/wt_node_internal.h b/libcds/src/static_sequence/wt_node_internal.h index b39efbd..3fd0579 100644 --- a/libcds/src/static_sequence/wt_node_internal.h +++ b/libcds/src/static_sequence/wt_node_internal.h @@ -38,10 +38,16 @@ class wt_node_internal: public wt_node { public: wt_node_internal(uint * seq, uint n, uint l, wt_coder * c, static_bitsequence_builder * bmb); wt_node_internal(uchar * seq, uint n, uint l, wt_coder * c, static_bitsequence_builder * bmb); + wt_node_internal(uchar * seq, uint n, uint l, wt_coder * c, static_bitsequence_builder * bmb, uint, uint *); virtual ~wt_node_internal(); virtual uint rank(uint symbol, uint pos, uint level, wt_coder * c); + virtual uint rankLessThan(uint &symbol, uint pos); virtual uint select(uint symbol, uint pos, uint level, wt_coder * c); virtual uint access(uint pos); + virtual uint access(uint pos, uint &rank); + virtual void access(vector &result, uint i, uint j, uint min, uint max, uint l, uint pivot); + virtual void access(vector &result, uint i, uint j); + virtual uint access(uint i, uint j, uint min, uint max, uint l, uint pivot); virtual uint size(); virtual uint save(FILE *fp); static wt_node_internal * load(FILE *fp);