IDZEBRA
2.0.54
Main Page
Data Structures
Files
File List
Globals
index
recindex.h
Go to the documentation of this file.
1
/* This file is part of the Zebra server.
2
Copyright (C) 2004-2013 Index Data
3
4
Zebra is free software; you can redistribute it and/or modify it under
5
the terms of the GNU General Public License as published by the Free
6
Software Foundation; either version 2, or (at your option) any later
7
version.
8
9
Zebra is distributed in the hope that it will be useful, but WITHOUT ANY
10
WARRANTY; without even the implied warranty of MERCHANTABILITY or
11
FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License
12
for more details.
13
14
You should have received a copy of the GNU General Public License
15
along with this program; if not, write to the Free Software
16
Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA
17
18
*/
19
20
#ifndef RECINDEX_H
21
#define RECINDEX_H
22
23
#include <
idzebra/util.h
>
24
#include <
zebra-lock.h
>
25
#include <
idzebra/bfile.h
>
26
27
YAZ_BEGIN_CDECL
28
29
#define REC_NO_INFO 8
30
31
typedef
struct
record_info
{
32
zint
sysno
;
33
int
newFlag
;
34
char
*
info
[
REC_NO_INFO
];
35
size_t
size
[
REC_NO_INFO
];
36
char
buf_size
[
REC_NO_INFO
][6];
37
size_t
size_size
[
REC_NO_INFO
];
38
Zebra_mutex
mutex
;
39
} *
Record
;
40
41
typedef
struct
records_info
*
Records
;
42
48
ZEBRA_RES
rec_del
(Records p,
Record
*recpp);
49
53
void
rec_free
(
Record
*recpp);
54
60
ZEBRA_RES
rec_put
(Records p,
Record
*recpp);
61
66
Record
rec_new
(Records p);
72
Record
rec_get
(Records p,
zint
sysno);
73
78
Record
rec_get_root
(Records p);
79
80
86
Record
rec_get_next
(Records p,
Record
rec);
87
88
ZEBRA_RES
rec_close
(Records *p);
89
95
Records
rec_open
(
BFiles
bfs,
int
rw
,
int
compression_method
);
96
102
int
rec_check_compression_method
(
int
compression_method
);
103
104
char
*
rec_strdup
(
const
char
*s,
size_t
*len);
105
void
rec_prstat
(Records p,
int
verbose);
106
107
zint
rec_sysno_to_int
(
zint
sysno);
108
109
111
#define REC_COMPRESS_NONE 0
112
113
#define REC_COMPRESS_BZIP2 1
114
115
#define REC_COMPRESS_ZLIB 2
116
117
118
enum
{
119
recInfo_fileType
,
120
recInfo_filename
,
121
recInfo_delKeys
,
122
recInfo_databaseName
,
123
recInfo_storeData
,
124
recInfo_attr
,
125
recInfo_sortKeys
126
};
127
128
typedef
struct
recindex
*
recindex_t
;
129
135
recindex_t
recindex_open
(
BFiles
bfs,
int
rw,
int
use_isamb);
136
140
void
recindex_close
(recindex_t p);
141
int
recindex_read_head
(recindex_t p,
void
*buf);
142
const
char
*
recindex_get_fname
(recindex_t p);
143
ZEBRA_RES
recindex_write_head
(recindex_t p,
const
void
*buf,
size_t
len);
144
int
recindex_read_indx
(recindex_t p,
zint
sysno,
void
*buf,
int
itemsize,
145
int
ignoreError);
146
void
recindex_write_indx
(recindex_t p,
zint
sysno,
void
*buf,
int
itemsize);
147
148
YAZ_END_CDECL
149
#endif
150
/*
151
* Local variables:
152
* c-basic-offset: 4
153
* c-file-style: "Stroustrup"
154
* indent-tabs-mode: nil
155
* End:
156
* vim: shiftwidth=4 tabstop=8 expandtab
157
*/
158
Generated on Mon Jan 21 2013 13:16:50 for IDZEBRA by
1.8.1.2