X-Git-Url: http://git.indexdata.com/?a=blobdiff_plain;ds=sidebyside;f=include%2Fsortidx.h;h=54aec5454cbadcbd3a6b77e2f847003e0a8dca66;hb=aa76dfa21ba30fe802a5ef6f3907b57ecd7e6c65;hp=31d210ba9a9500b7004665799dfdd99da163da4b;hpb=ce556bc293c5eed60090acaf82cc668d333abd7b;p=idzebra-moved-to-github.git diff --git a/include/sortidx.h b/include/sortidx.h index 31d210b..54aec54 100644 --- a/include/sortidx.h +++ b/include/sortidx.h @@ -23,6 +23,7 @@ Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA #include #include #include +#include YAZ_BEGIN_CDECL @@ -35,7 +36,7 @@ typedef struct zebra_sort_index *zebra_sort_index_t; #define ZEBRA_SORT_TYPE_FLAT 1 #define ZEBRA_SORT_TYPE_ISAMB 2 - +#define ZEBRA_SORT_TYPE_MULTI 3 /** \brief creates sort handle \param bfs block files handle @@ -61,14 +62,13 @@ int zebra_sort_type(zebra_sort_index_t si, int type); */ void zebra_sort_sysno(zebra_sort_index_t si, zint sysno); -/** \brief adds content to sort file +/** \brief adds multi-map content to sort file \param si sort index handle - \param buf buffer content - \param len length + \param w one or more 0-terminted strings (thus an array) zebra_sort_type and zebra_sort_sysno must be called prior to this */ -void zebra_sort_add(zebra_sort_index_t si, const char *buf, int len); +void zebra_sort_add(zebra_sort_index_t si, WRBUF w); /** \brief delete sort entry @@ -84,7 +84,7 @@ void zebra_sort_delete(zebra_sort_index_t si); \retval 0 could not be read \retval 1 could be read (found) */ -int zebra_sort_read(zebra_sort_index_t si, char *buf); +int zebra_sort_read(zebra_sort_index_t si, WRBUF w); YAZ_END_CDECL