Omit CVS Id. Update copyright year.
[idzebra-moved-to-github.git] / index / recindex.h
index 6310a24..d353c3c 100644 (file)
@@ -1,8 +1,5 @@
-/* $Id: recindex.h,v 1.29 2006-09-15 10:45:13 adam Exp $
-   Copyright (C) 1995-2006
-   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
@@ -32,7 +29,7 @@ YAZ_BEGIN_CDECL
 #define REC_NO_INFO 8
 
 typedef struct record_info {
-    SYSNO sysno;
+    zint sysno;
     int newFlag;
     char *info[REC_NO_INFO];
     size_t size[REC_NO_INFO];
@@ -72,7 +69,7 @@ Record rec_new(Records p);
     \param sysno system ID (external number)
     \returns record pointer (or NULL on error)
 */
-Record rec_get(Records p, SYSNO sysno);
+Record rec_get(Records p, zint sysno);
 
 /** \brief gets root record
     \param p records handle
@@ -91,7 +88,7 @@ Records rec_open(BFiles bfs, int rw, int compression_method);
 char *rec_strdup(const char *s, size_t *len);
 void rec_prstat(Records p);
 
-SYSNO rec_sysno_to_int(SYSNO sysno);
+zint rec_sysno_to_int(zint sysno);
 
 /** \brief compression types */
 #define REC_COMPRESS_NONE   0
@@ -107,6 +104,26 @@ enum {
     recInfo_sortKeys
 };
 
+typedef struct recindex *recindex_t;
+
+/** \brief opens record index handle
+    \param bfs Block files handle
+    \param rw 1 for read and write; 0 for read-only
+    \param use_isamb 1 if ISAMB is to used for record index; 0 for flat (old)
+*/
+recindex_t recindex_open(BFiles bfs, int rw, int use_isamb);
+
+/** \brief closes record index handle
+    \param p records handle
+*/
+void recindex_close(recindex_t p);
+int recindex_read_head(recindex_t p, void *buf);
+const char *recindex_get_fname(recindex_t p);
+ZEBRA_RES recindex_write_head(recindex_t p, const void *buf, size_t len);
+int recindex_read_indx(recindex_t p, zint sysno, void *buf, int itemsize, 
+                       int ignoreError);
+void recindex_write_indx(recindex_t p, zint sysno, void *buf, int itemsize);
+
 YAZ_END_CDECL
 #endif
 /*