Queries using simple ranked operands returns right number of hits.
[idzebra-moved-to-github.git] / include / rsrel.h
index 8188a5f..e1299bb 100644 (file)
@@ -1,10 +1,21 @@
 /*
- * Copyright (C) 1994-1997, Index Data I/S 
+ * Copyright (C) 1995-1998, Index Data I/S 
  * All rights reserved.
  * Sebastian Hammer, Adam Dickmeiss
  *
  * $Log: rsrel.h,v $
- * Revision 1.4  1997-09-05 15:30:05  adam
+ * Revision 1.7  1998-01-07 13:53:41  adam
+ * Queries using simple ranked operands returns right number of hits.
+ *
+ * Revision 1.6  1997/12/18 10:54:24  adam
+ * New method result set method rs_hits that returns the number of
+ * hits in result-set (if known). The ranked result set returns real
+ * number of hits but only when not combined with other operands.
+ *
+ * Revision 1.5  1997/09/22 12:39:06  adam
+ * Added get_pos method for the ranked result sets.
+ *
+ * Revision 1.4  1997/09/05 15:30:05  adam
  * Changed prototype for chr_map_input - added const.
  * Added support for C++, headers uses extern "C" for public definitions.
  *
@@ -30,6 +41,9 @@ extern "C" {
 
 extern const rset_control *rset_kind_relevance;
 
+#define RSREL_METHOD_A  1
+#define RSREL_METHOD_B  2
+
 typedef struct rset_relevance_parms
 {
     int     key_size;
@@ -38,11 +52,13 @@ typedef struct rset_relevance_parms
 
     ISAM    is;
     ISAMC   isc;
-    ISAM_P  *isam_positions;
+    ISAM_P  *isam_positions;            /* positions */
+    int     no_isam_positions;          /* no of positions (no of ISAM_P) */
+    int     no_terms;                   /* no of terms */
+    int     *term_no;                   /* which term at isam_position */
+    int     (*get_pos)(const void *p);
 
-    int     no_isam_positions;
-    int no_terms;
-    int *term_no;
+    int     method;
 } rset_relevance_parms;
 
 #ifdef __cplusplus