X-Git-Url: http://git.indexdata.com/?p=idzebra-moved-to-github.git;a=blobdiff_plain;f=dict%2Fdict-p.h;h=53cb8307bfa1f58f179df038078588c498e20b3d;hp=2cb6fef39dd04202b07c2918ccf49fff0c46b475;hb=a5c8c78e8671af863fc61b2ad8b24f92f827f7b2;hpb=4eb3b54bb2ca9af74f39f000d3d40dba99ded887 diff --git a/dict/dict-p.h b/dict/dict-p.h index 2cb6fef..53cb830 100644 --- a/dict/dict-p.h +++ b/dict/dict-p.h @@ -1,8 +1,5 @@ -/* $Id: dict-p.h,v 1.2 2004-12-13 20:51:29 adam Exp $ - Copyright (C) 2004 - Index Data Aps - -This file is part of the Zebra server. +/* This file is part of the Zebra server. + Copyright (C) 1994-2011 Index Data Zebra is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free @@ -15,9 +12,9 @@ FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details. You should have received a copy of the GNU General Public License -along with Zebra; see the file LICENSE.zebra. If not, write to the -Free Software Foundation, 59 Temple Place - Suite 330, Boston, MA -02111-1307, USA. +along with this program; if not, write to the Free Software +Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA + */ #ifndef DICT_P_H @@ -33,6 +30,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 +74,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 +92,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] @@ -111,3 +124,12 @@ void dict_bf_compact (Dict_BFile dbf); YAZ_END_CDECL #endif +/* + * Local variables: + * c-basic-offset: 4 + * c-file-style: "Stroustrup" + * indent-tabs-mode: nil + * End: + * vim: shiftwidth=4 tabstop=8 expandtab + */ +