X-Git-Url: http://git.indexdata.com/?a=blobdiff_plain;f=include%2Frset.h;h=7c331163c60c1cea6eba6d36ac2d8c2c624fcfff;hb=e25e81fb1286e771866415bedd5ac963af86568c;hp=593d66628194043ec0098c7433dbae45e23ff1da;hpb=a876f6c2860bf13e36f47c8ce938d74b4ce98b8e;p=idzebra-moved-to-github.git diff --git a/include/rset.h b/include/rset.h index 593d666..7c33116 100644 --- a/include/rset.h +++ b/include/rset.h @@ -1,4 +1,4 @@ -/* $Id: rset.h,v 1.53 2005-06-02 11:59:53 adam Exp $ +/* $Id: rset.h,v 1.57 2005-06-22 19:42:37 adam Exp $ Copyright (C) 1995-2005 Index Data ApS @@ -35,6 +35,15 @@ YAZ_BEGIN_CDECL typedef struct rsfd *RSFD; typedef struct rset *RSET; +struct ord_list { + int ord; + struct ord_list *next; +}; + +struct ord_list *ord_list_create(NMEM nmem); +struct ord_list *ord_list_append(NMEM nmem, struct ord_list *list, int ord); +struct ord_list *ord_list_dup(NMEM nmem, struct ord_list *list); + /** * rset_term is all we need to know of a term to do ranking etc. * As far as the rsets are concerned, it is just a dummy pointer to @@ -49,13 +58,18 @@ struct rset_term { This info is used to return encoded term back for search-result-1 . */ + int reg_type; /** register type */ RSET rset; /** the rset corresponding to this term */ void *rankpriv;/** private stuff for the ranking algorithm */ + zint hits_limit;/** limit for hits if > 0 */ + char *ref_id; /** reference for this term */ + struct ord_list *ol; }; typedef struct rset_term *TERMID; TERMID rset_term_create (const char *name, int length, const char *flags, - int type, NMEM nmem); + int type, NMEM nmem, struct ord_list *ol, + int reg_type, zint hits_limit, const char *ref_id); /** rsfd is a "file descriptor" for reading from a rset */ struct rsfd { /* the stuff common to all rsfd's. */