-/* $Id: rset.h,v 1.56 2005-06-07 14:53:38 adam Exp $
- Copyright (C) 1995-2005
+/* $Id: rset.h,v 1.60 2006-07-04 14:10:28 adam Exp $
+ Copyright (C) 1995-2006
Index Data ApS
This file is part of the Zebra server.
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, struct ord_list *ol,
- int reg_type);
+ 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. */
int (*cmp)(const void *p1, const void *p2);
void (*key_logdump_txt) (int logmask, const void *p, const char *txt);
zint (*getseq)(const void *p);
+ zint (*get_segment)(const void *p);
int (*filter_func)(const void *p, void *data);
void *filter_data;
void (*inc)(struct rset_key_control *kc);
/** rset_count counts or estimates the keys in it*/
zint rset_count(RSET rs);
-RSET rstemp_create(NMEM nmem, struct rset_key_control *kcontrol,
- int scope, const char *temp_path, TERMID term);
+RSET rset_create_temp(NMEM nmem, struct rset_key_control *kcontrol,
+ int scope, const char *temp_path, TERMID term);
-RSET rsnull_create(NMEM nmem, struct rset_key_control *kcontrol, TERMID term);
+RSET rset_create_null(NMEM nmem, struct rset_key_control *kcontrol, TERMID term);
-RSET rsbool_create_and(NMEM nmem, struct rset_key_control *kcontrol,
- int scope, RSET rset_l, RSET rset_r);
+RSET rset_create_not(NMEM nmem, struct rset_key_control *kcontrol,
+ int scope, RSET rset_l, RSET rset_r);
-RSET rsbool_create_or(NMEM nmem, struct rset_key_control *kcontrol,
- int scope, RSET rset_l, RSET rset_r);
+RSET rset_create_between(NMEM nmem, struct rset_key_control *kcontrol,
+ int scope, RSET rset_l, RSET rset_m, RSET rset_r,
+ RSET rset_attr);
-RSET rsbool_create_not(NMEM nmem, struct rset_key_control *kcontrol,
- int scope, RSET rset_l, RSET rset_r);
+RSET rset_create_or(NMEM nmem, struct rset_key_control *kcontrol,
+ int scope, TERMID termid, int no_rsets, RSET* rsets);
-RSET rsbetween_create(NMEM nmem, struct rset_key_control *kcontrol,
- int scope, RSET rset_l, RSET rset_m, RSET rset_r,
- RSET rset_attr);
+RSET rset_create_and(NMEM nmem, struct rset_key_control *kcontrol,
+ int scope, int no_rsets, RSET* rsets);
-RSET rsmulti_or_create(NMEM nmem, struct rset_key_control *kcontrol,
- int scope, TERMID termid, int no_rsets, RSET* rsets);
-
-RSET rsmulti_and_create(NMEM nmem, struct rset_key_control *kcontrol,
- int scope, int no_rsets, RSET* rsets);
-
-RSET rsprox_create(NMEM nmem, struct rset_key_control *kcontrol,
- int scope, int rset_no, RSET *rset,
- int ordered, int exclusion, int relation, int distance);
+RSET rset_create_prox(NMEM nmem, struct rset_key_control *kcontrol,
+ int scope, int rset_no, RSET *rset,
+ int ordered, int exclusion, int relation, int distance);
RSET rsisamb_create(NMEM nmem, struct rset_key_control *kcontrol,
int scope, ISAMB is, ISAM_P pos, TERMID term);
YAZ_END_CDECL
#endif
+/*
+ * Local variables:
+ * c-basic-offset: 4
+ * indent-tabs-mode: nil
+ * End:
+ * vim: shiftwidth=4 tabstop=8 expandtab
+ */
+