X-Git-Url: http://git.indexdata.com/?a=blobdiff_plain;f=index%2Frecindex.h;h=1c1321ba43a0d1fe925588b8013f9b4f8e44ef43;hb=cc9f94a61cbd9dcc0df0cf7d0c7c41d2cec88189;hp=af1da33ecf35280a997af639c54acd927450380f;hpb=c325477904a47c61586ad9b756b9280c22351c6b;p=idzebra-moved-to-github.git diff --git a/index/recindex.h b/index/recindex.h index af1da33..1c1321b 100644 --- a/index/recindex.h +++ b/index/recindex.h @@ -1,10 +1,38 @@ /* - * Copyright (C) 1994-1995, Index Data I/S + * Copyright (C) 1994-2000, Index Data * All rights reserved. * Sebastian Hammer, Adam Dickmeiss * * $Log: recindex.h,v $ - * Revision 1.10 1996-10-29 14:06:53 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). + * + * Revision 1.15 1999/05/26 07:49:13 adam + * C++ compilation. + * + * Revision 1.14 1999/02/02 14:51:04 adam + * Updated WIN32 code specific sections. Changed header. + * + * Revision 1.13 1998/03/05 08:45:12 adam + * New result set model and modular ranking system. Moved towards + * descent server API. System information stored as "SGML" records. + * + * Revision 1.12 1998/01/12 15:04:08 adam + * The test option (-s) only uses read-lock (and not write lock). + * + * Revision 1.11 1997/09/17 12:19:16 adam + * Zebra version corresponds to YAZ version 1.4. + * Changed Zebra server so that it doesn't depend on global common_resource. + * + * Revision 1.10 1996/10/29 14:06:53 adam * Include zebrautl.h instead of alexutil.h. * * Revision 1.9 1996/05/01 13:46:36 adam @@ -45,7 +73,13 @@ * */ +#ifndef RECINDEX_H +#define RECINDEX_H + #include +#include + +YAZ_BEGIN_CDECL #define REC_NO_INFO 8 @@ -54,6 +88,9 @@ typedef struct record_info { int newFlag; char *info[REC_NO_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; @@ -65,8 +102,12 @@ 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 (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, @@ -74,6 +115,8 @@ enum { recInfo_delKeys, recInfo_databaseName, recInfo_storeData, - recInfo_offset + recInfo_attr }; +YAZ_END_CDECL +#endif