X-Git-Url: http://git.indexdata.com/?a=blobdiff_plain;f=index%2Frecindex.h;h=1c1321ba43a0d1fe925588b8013f9b4f8e44ef43;hb=87515c8d89b4b0e3ceadac4bded487efa099a94e;hp=4c061fafa9d052a979d2751a141aaa6a216fcc9d;hpb=795af4e3c7346eff351ff387228ec548956eada8;p=idzebra-moved-to-github.git diff --git a/index/recindex.h b/index/recindex.h index 4c061fa..1c1321b 100644 --- a/index/recindex.h +++ b/index/recindex.h @@ -1,10 +1,17 @@ /* - * Copyright (C) 1994-1999, Index Data + * Copyright (C) 1994-2000, Index Data * All rights reserved. * Sebastian Hammer, Adam Dickmeiss * * $Log: recindex.h,v $ - * Revision 1.16 1999-06-25 13:48:02 adam + * Revision 1.18 2000-04-05 09:49:35 adam + * On Unix, zebra/z'mbol uses automake. + * + * Revision 1.17 1999/07/06 12:28:04 adam + * Updated record index structure. Format includes version ID. Compression + * algorithm ID is stored for each record block. + * + * Revision 1.16 1999/06/25 13:48:02 adam * Updated MSVC project files. * Added BZIP2 record compression (not very well tested). * @@ -66,12 +73,13 @@ * */ +#ifndef RECINDEX_H +#define RECINDEX_H + #include #include -#ifdef __cplusplus -extern "C" { -#endif +YAZ_BEGIN_CDECL #define REC_NO_INFO 8 @@ -82,6 +90,7 @@ typedef struct record_info { size_t size[REC_NO_INFO]; char buf_size[REC_NO_INFO][6]; size_t size_size[REC_NO_INFO]; + Zebra_mutex mutex; } *Record; typedef struct records_info *Records; @@ -93,10 +102,13 @@ void rec_put (Records p, Record *recpp); Record rec_new (Records p); Record rec_get (Records p, int sysno); void rec_close (Records *p); -Records rec_open (BFiles bfs, int rw); +Records rec_open (BFiles bfs, int rw, int compression_method); char *rec_strdup (const char *s, size_t *len); void rec_prstat (Records p); +#define REC_COMPRESS_NONE 0 +#define REC_COMPRESS_BZIP2 1 + enum { recInfo_fileType, recInfo_filename, @@ -106,6 +118,5 @@ enum { recInfo_attr }; -#ifdef __cplusplus -} +YAZ_END_CDECL #endif