2 * Copyright (c) 1995-1996, Index Data.
3 * See the file LICENSE for details.
21 typedef unsigned ISAMH_BLOCK_SIZE;
23 typedef struct ISAMH_file_s {
43 int alloc_entries_num;
44 int alloc_entries_max;
54 char *startblock; /* start of the chain, update lastptr and numKeys here */
55 char *lastblock; /* end of the chain, append here */
62 ISAMH_BLOCK_SIZE offset;
63 ISAMH_BLOCK_SIZE size;
64 int cat; /* category of this block */
65 int pos; /* block number of this block */
66 int next; /* number of the next block */
68 void *decodeClientData;
71 ISAMH_BLOCK_SIZE lastblock; /* last block in chain */
74 #define ISAMH_BLOCK_OFFSET_N (sizeof(int) + \
75 sizeof(ISAMH_BLOCK_SIZE))
76 #define ISAMH_BLOCK_OFFSET_1 (sizeof(int) + \
77 sizeof(ISAMH_BLOCK_SIZE) + \
79 sizeof(ISAMH_BLOCK_SIZE))
80 int isamh_alloc_block (ISAMH is, int cat);
81 void isamh_release_block (ISAMH is, int cat, int pos);
82 int isamh_read_block (ISAMH is, int cat, int pos, char *dst);
83 int isamh_write_block (ISAMH is, int cat, int pos, char *src);
93 * Revision 1.2 1999-07-06 09:37:05 heikki
94 * Working on isamh - not ready yet.
96 * Revision 1.1 1999/06/30 15:05:45 heikki
97 * opied from isamc.p.h, starting to simplify