IDZEBRA 2.2.11
isam.h File Reference
#include <idzebra/bfile.h>

Go to the source code of this file.

Data Structures

struct  key_control
struct  isam_data_stream
struct  isam_conrol
struct  ISAM_s
struct  ISAM_CUR

Macros

#define isam_close(is)
#define isam_puf(is, pos, buf)
#define isam_del(is, pos, buf)
#define isam_get(is, pos, buf)
#define isam_merge(is, pos, data)
#define isam_cur_open(is, pos)
#define isam_read(cur, buf)
#define isam_forward(cur, buf, untilbuf)
#define isam_pos(cur, current, total)
#define isam_cur_close(cur)
#define isam_unlink(is, pos)

Typedefs

typedef struct key_control KEY_CONTROL
typedef struct isam_data_stram ISAM_DATA_STREAM
typedef zint ISAM_POS
typedef struct ISAM_s * ISAM
typedef struct ISAM_CUR_s * ISAM_CUR

Functions

const KEY_CONTROL * default_key_control ()
ISAM isam_open (BFiles bfs, const char *isamtype, const char *filename, int flags, const KEY_CONTROL *key_control)

Macro Definition Documentation

◆ isam_close

#define isam_close ( is)
Value:
(*(is)->ictrl->f_close)(is)

Shortcut defines to access the functions through the key_control block

Definition at line 192 of file isam.h.

◆ isam_cur_close

#define isam_cur_close ( cur)
Value:
(*(is)->ictrl->f_cur_close)(cur)

Definition at line 210 of file isam.h.

◆ isam_cur_open

#define isam_cur_open ( is,
pos )
Value:
(*(is)->ictrl->f_cur_open)((is),(pos))

Definition at line 202 of file isam.h.

◆ isam_del

#define isam_del ( is,
pos,
buf )
Value:
(*(is)->ictrl->f_del)((is),(pos)(buf))

Definition at line 196 of file isam.h.

◆ isam_forward

#define isam_forward ( cur,
buf,
untilbuf )
Value:
(*(is)->ictrl->f_forward)((cur),(buf)(untilbuf))

Definition at line 206 of file isam.h.

◆ isam_get

#define isam_get ( is,
pos,
buf )
Value:
(*(is)->ictrl->f_get)((is),(pos)(buf))

Definition at line 198 of file isam.h.

◆ isam_merge

#define isam_merge ( is,
pos,
data )
Value:
(*(is)->ictrl->f_merge)((is),(pos)(data))

Definition at line 200 of file isam.h.

◆ isam_pos

#define isam_pos ( cur,
current,
total )
Value:
(*(is)->ictrl->f_pos)((cur),(current),(total))

Definition at line 208 of file isam.h.

◆ isam_puf

#define isam_puf ( is,
pos,
buf )
Value:
(*(is)->ictrl->f_put)((is),(pos)(buf))

Definition at line 194 of file isam.h.

◆ isam_read

#define isam_read ( cur,
buf )
Value:
(*(is)->ictrl->f_read)((cur),(buf))

Definition at line 204 of file isam.h.

◆ isam_unlink

#define isam_unlink ( is,
pos )
Value:
(*(is)->ictrl->f_unlink)((is),(pos))

Definition at line 212 of file isam.h.

Typedef Documentation

◆ ISAM

typedef struct ISAM_s* ISAM

ISAM is a translation from POS to a set of values

Definition at line 113 of file isam.h.

◆ ISAM_CUR

typedef struct ISAM_CUR_s* ISAM_CUR

ISAM_CUR is a pointer into an ISAM

Definition at line 116 of file isam.h.

◆ ISAM_DATA_STREAM

typedef struct isam_data_stram ISAM_DATA_STREAM

Definition at line 106 of file isam.h.

◆ ISAM_POS

typedef zint ISAM_POS

ISAM_POS is a number the ISAM translates from

Definition at line 110 of file isam.h.

◆ KEY_CONTROL

typedef struct key_control KEY_CONTROL

Definition at line 93 of file isam.h.

Function Documentation

◆ default_key_control()

const KEY_CONTROL * default_key_control ( )

◆ isam_open()

ISAM isam_open ( BFiles bfs,
const char * isamtype,
const char * filename,
int flags,
const KEY_CONTROL * key_control )

Open the isam system