-/* $Id: rset.h,v 1.58 2006-05-10 08:13:18 adam Exp $
- Copyright (C) 1995-2005
- Index Data ApS
-
-This file is part of the Zebra server.
+/* This file is part of the Zebra server.
+ Copyright (C) 1995-2008 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
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 RSET_H
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 rsnull_create(NMEM nmem, struct rset_key_control *kcontrol, TERMID term);
+RSET rset_create_temp(NMEM nmem, struct rset_key_control *kcontrol,
+ int scope, const char *temp_path, TERMID term);
-RSET rsbool_create_and(NMEM nmem, struct rset_key_control *kcontrol,
- int scope, RSET rset_l, RSET rset_r);
+RSET rset_create_null(NMEM nmem, struct rset_key_control *kcontrol, TERMID term);
-RSET rsbool_create_or(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_not(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 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_or(NMEM nmem, struct rset_key_control *kcontrol,
+ int scope, TERMID termid, 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 rset_create_and(NMEM nmem, struct rset_key_control *kcontrol,
+ int scope, 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);
void rset_visit(RSET rset, int level);
+void rset_set_hits_limit(RSET rs, zint l);
+
YAZ_END_CDECL
#endif