IDZEBRA  2.1.2
Macros | Functions
isamc.c File Reference
#include <stdlib.h>
#include <assert.h>
#include <string.h>
#include <stdio.h>
#include <yaz/log.h>
#include <yaz/xmalloc.h>
#include "isamc-p.h"

Go to the source code of this file.

Macros

#define ISAMC_FREELIST_CHUNK   0
 
#define SMALL_TEST   0
 

Functions

static void flush_block (ISAMC is, int cat)
 
static void release_fc (ISAMC is, int cat)
 
static void init_fc (ISAMC is, int cat)
 
void isamc_getmethod (ISAMC_M *m)
 
ISAMC isamc_open (BFiles bfs, const char *name, int writeflag, ISAMC_M *method)
 
zint isamc_block_used (ISAMC is, int type)
 
int isamc_block_size (ISAMC is, int type)
 
int isamc_close (ISAMC is)
 
int isamc_read_block (ISAMC is, int cat, zint pos, char *dst)
 
int isamc_write_block (ISAMC is, int cat, zint pos, char *src)
 
int isamc_write_dblock (ISAMC is, int cat, zint pos, char *src, zint nextpos, int offset)
 
static zint alloc_block (ISAMC is, int cat)
 
static void release_block (ISAMC is, int cat, zint pos)
 
zint isamc_alloc_block (ISAMC is, int cat)
 
void isamc_release_block (ISAMC is, int cat, zint pos)
 
void isamc_pp_close (ISAMC_PP pp)
 
ISAMC_PP isamc_pp_open (ISAMC is, ISAM_P ipos)
 
int isamc_pp_read (ISAMC_PP pp, void *buf)
 
int isamc_read_item (ISAMC_PP pp, char **dst)
 
zint isamc_pp_num (ISAMC_PP pp)
 

Macro Definition Documentation

#define ISAMC_FREELIST_CHUNK   0

Definition at line 40 of file isamc.c.

#define SMALL_TEST   0

Definition at line 42 of file isamc.c.

Function Documentation

static zint alloc_block ( ISAMC  is,
int  cat 
)
static
static void flush_block ( ISAMC  is,
int  cat 
)
static

Definition at line 360 of file isamc.c.

Referenced by isamc_close(), and isamc_write_dblock().

static void init_fc ( ISAMC  is,
int  cat 
)
static

Definition at line 433 of file isamc.c.

References ISAMC_file_s::fc_list, ISAMC_file_s::fc_max, and ISAMC_s::files.

Referenced by isamc_open().

zint isamc_alloc_block ( ISAMC  is,
int  cat 
)
int isamc_block_size ( ISAMC  is,
int  type 
)
zint isamc_block_used ( ISAMC  is,
int  type 
)
int isamc_close ( ISAMC  is)
void isamc_getmethod ( ISAMC_M m)
ISAMC isamc_open ( BFiles  bfs,
const char *  name,
int  writeflag,
ISAMC_M method 
)
void isamc_pp_close ( ISAMC_PP  pp)
zint isamc_pp_num ( ISAMC_PP  pp)

Definition at line 586 of file isamc.c.

References ISAMC_PP_s::numKeys.

Referenced by inv_stat_handle(), and isamc_merge().

ISAMC_PP isamc_pp_open ( ISAMC  is,
ISAM_P  ipos 
)
int isamc_pp_read ( ISAMC_PP  pp,
void *  buf 
)

Definition at line 510 of file isamc.c.

References isamc_read_item().

Referenced by inv_stat_handle(), r_read(), and rset_trunc_r().

int isamc_read_block ( ISAMC  is,
int  cat,
zint  pos,
char *  dst 
)

Definition at line 237 of file isamc.c.

References ISAMC_file_s::bf, bf_read(), ISAMC_s::files, and ISAMC_file_s::no_reads.

Referenced by isamc_pp_open(), and isamc_read_item().

int isamc_read_item ( ISAMC_PP  pp,
char **  dst 
)
void isamc_release_block ( ISAMC  is,
int  cat,
zint  pos 
)
int isamc_write_block ( ISAMC  is,
int  cat,
zint  pos,
char *  src 
)
int isamc_write_dblock ( ISAMC  is,
int  cat,
zint  pos,
char *  src,
zint  nextpos,
int  offset 
)
static void release_block ( ISAMC  is,
int  cat,
zint  pos 
)
static
static void release_fc ( ISAMC  is,
int  cat 
)
static

Definition at line 444 of file isamc.c.

References ISAMC_file_s::fc_list, ISAMC_file_s::fc_max, ISAMC_s::files, and release_block().

Referenced by isamc_close().