X-Git-Url: http://git.indexdata.com/?a=blobdiff_plain;f=dict%2Fdict-p.h;h=e50fff8f8740b8674c8a496cf433f4a8363536b3;hb=3fbd2beb5c41de39604f27b39a9461335b2b176b;hp=3d9c722d521e75a1d91c36224687787c0fcaab0d;hpb=4478d785b7769691261005c98063b98a5a5971b3;p=idzebra-moved-to-github.git diff --git a/dict/dict-p.h b/dict/dict-p.h index 3d9c722..e50fff8 100644 --- a/dict/dict-p.h +++ b/dict/dict-p.h @@ -1,4 +1,4 @@ -/* $Id: dict-p.h,v 1.5 2006-08-14 10:40:09 adam Exp $ +/* $Id: dict-p.h,v 1.8 2006-12-12 13:42:24 adam Exp $ Copyright (C) 1995-2006 Index Data ApS @@ -33,6 +33,9 @@ YAZ_BEGIN_CDECL #define DICT_DEFAULT_PAGESIZE 4096 +typedef unsigned char Dict_char; +typedef unsigned Dict_ptr; + struct Dict_head { char magic_str[8]; int page_size; @@ -74,6 +77,12 @@ struct Dict_struct { Dict_BFile dbf; const char **(*grep_cmap)(void *vp, const char **from, int len); void *grep_cmap_data; + /** number of split page operations, since dict_open */ + zint no_split; + /** number of insert operations, since dict_open */ + zint no_insert; + /** number of lookup operations, since dict_open */ + zint no_lookup; struct Dict_head head; }; @@ -86,6 +95,13 @@ Dict_BFile dict_bf_open (BFiles bfs, const char *name, int block_size, int dict_bf_close (Dict_BFile dbf); void dict_bf_compact (Dict_BFile dbf); +int dict_strcmp (const Dict_char *s1, const Dict_char *s2); + +int dict_strncmp (const Dict_char *s1, const Dict_char *s2, size_t n); + +int dict_strlen (const Dict_char *s); + + #define DICT_EOS 0 #define DICT_type(x) 0[(Dict_ptr*) x] #define DICT_backptr(x) 1[(Dict_ptr*) x]