67ff11bf35809879170f3a1725a9cc94686c39ae
[idzebra-moved-to-github.git] / include / isamb.h
1 /*
2  * Copyright (C) 2000-2002, Index Data
3  * All rights reserved.
4  * $Id: isamb.h,v 1.4 2002-07-15 11:50:45 adam Exp $
5  */
6
7 #ifndef ISAMB_H
8 #define ISAMB_H
9
10 #include <bfile.h>
11 #include <isamc.h>
12
13 typedef struct ISAMB_s *ISAMB;
14 typedef struct ISAMB_PP_s *ISAMB_PP;
15 typedef ISAMC_P ISAMB_P;
16
17 ISAMB isamb_open (BFiles bfs, const char *name, int writeflag, ISAMC_M method,
18                   int cache);
19 void isamb_close (ISAMB isamb);
20
21 ISAMB_P isamb_merge (ISAMB b, ISAMB_P pos, ISAMC_I data);
22
23 ISAMB_PP isamb_pp_open (ISAMB isamb, ISAMB_P pos);
24
25 int isamb_pp_read (ISAMB_PP pp, void *buf);
26
27 void isamb_pp_close (ISAMB_PP pp);
28
29 int isamb_pp_num (ISAMB_PP pp);
30
31 ISAMB_PP isamb_pp_open_x (ISAMB isamb, ISAMB_P pos, int *level);
32 void isamb_pp_close_x (ISAMB_PP pp, int *size, int *blocks);
33
34 int isamb_block_info (ISAMB isamb, int cat);
35
36 #endif