C++ compilation.
[idzebra-moved-to-github.git] / index / index.h
index 688f792..91b868b 100644 (file)
@@ -1,10 +1,27 @@
 /*
- * Copyright (C) 1995-1998, Index Data I/S 
+ * Copyright (C) 1995-1999, Index Data
  * All rights reserved.
  * Sebastian Hammer, Adam Dickmeiss
  *
  * $Log: index.h,v $
- * Revision 1.58  1998-05-20 10:12:16  adam
+ * Revision 1.63  1999-05-26 07:49:13  adam
+ * C++ compilation.
+ *
+ * Revision 1.62  1999/05/12 13:08:06  adam
+ * First version of ISAMS.
+ *
+ * Revision 1.61  1999/03/09 16:27:49  adam
+ * More work on SDRKit integration.
+ *
+ * Revision 1.60  1998/10/16 08:14:31  adam
+ * Updated record control system.
+ *
+ * Revision 1.59  1998/06/08 14:43:11  adam
+ * Added suport for EXPLAIN Proxy servers - added settings databasePath
+ * and explainDatabase to facilitate this. Increased maximum number
+ * of databases and attributes in one register.
+ *
+ * Revision 1.58  1998/05/20 10:12:16  adam
  * Implemented automatic EXPLAIN database maintenance.
  * Modified Zebra to work with ASN.1 compiled version of YAZ.
  *
 #include <dict.h>
 #include <isam.h>
 #include <isamc.h>
+#include <isams.h>
 #include <data1.h>
+#include <recctrl.h>
+
+#ifdef __cplusplus
+extern "C" {
+#endif
 
 #define IT_MAX_WORD 256
 #define IT_KEY_HAVE_SEQNO 1
@@ -245,7 +268,6 @@ struct dirs_entry {
     time_t mtime;
 };
 
-
 struct recordGroup {
     char         *groupName;
     char         *databaseName;
@@ -256,9 +278,15 @@ struct recordGroup {
     int          flagStoreKeys;
     int          flagRw;
     int          fileVerboseLimit;
+    int          databaseNamePath;
+    int          explainDatabase;
+#if ZEBRASDR
+    int          useSDR;
+#endif
     data1_handle dh;
     BFiles       bfs;
     ZebraMaps    zebra_maps;
+    RecTypes     recTypes;
 };
 
 void getFnameTmp (char *fname, int no);
@@ -290,13 +318,17 @@ int key_compare_it (const void *p1, const void *p2);
 int key_qsort_compare (const void *p1, const void *p2);
 void key_logdump (int mask, const void *p);
 void inv_prstat (BFiles bfs);
+void inv_compact (BFiles bfs);
 void key_input (BFiles bfs, int nkeys, int cache);
 ISAMC_M key_isamc_m (Res res);
+ISAMS_M key_isams_m (Res res);
 int merge_sort (char **buf, int from, int to);
+int key_SU_code (int ch, char *out);
 
 #define FNAME_DICT "dict"
 #define FNAME_ISAM "isam"
 #define FNAME_ISAMC "isamc"
+#define FNAME_ISAMS "isams"
 #define FNAME_CONFIG "zebra.cfg"
 
 #define GMATCH_DICT "gmatch"
@@ -336,3 +368,7 @@ void zebra_lock_prefix (Res res, char *dst);
 void zebra_load_atts (data1_handle dh, Res res);
 
 extern Res common_resource;
+
+#ifdef __cplusplus
+}
+#endif