IDZEBRA  2.1.2
Data Structures | Macros | Functions
key_block.c File Reference
#include <stdio.h>
#include <stdlib.h>
#include <string.h>
#include <assert.h>
#include <ctype.h>
#include "key_block.h"
#include <yaz/nmem.h>
#include <yaz/xmalloc.h>

Go to the source code of this file.

Data Structures

struct  zebra_key_block
struct  encode_info


#define ENCODE_BUFLEN   768
#define USE_SHELLSORT   0


static void encode_key_init (struct encode_info *i)
static void encode_key_write (const char *k, struct encode_info *i, FILE *outf)
static void encode_key_flush (struct encode_info *i, FILE *outf)
void key_block_flush_int (zebra_key_block_t p, char **key_buf, size_t ptr_top, size_t ptr_i)
zebra_key_block_t key_block_create (int mem, const char *key_tmp_dir, int use_threads)
void key_block_destroy (zebra_key_block_t *pp)
void key_block_write (zebra_key_block_t p, zint sysno, struct it_key *key_in, int cmd, const char *str_buf, size_t str_len, zint staticrank, int static_rank_enable)
void key_block_flush (zebra_key_block_t p, int is_final)
int key_block_get_no_files (zebra_key_block_t p)

Macro Definition Documentation

#define ENCODE_BUFLEN   768

Definition at line 61 of file key_block.c.

#define USE_SHELLSORT   0

Definition at line 68 of file key_block.c.

Function Documentation

static void encode_key_flush ( struct encode_info i,
FILE *  outf 
static void encode_key_init ( struct encode_info i)

Definition at line 96 of file key_block.c.

References encode_info::decode_handle, encode_info::encode_handle, and iscz1_start().

Referenced by key_block_flush_int().

static void encode_key_write ( const char *  k,
struct encode_info i,
FILE *  outf 
zebra_key_block_t key_block_create ( int  mem,
const char *  key_tmp_dir,
int  use_threads 
void key_block_destroy ( zebra_key_block_t pp)
void key_block_flush ( zebra_key_block_t  p,
int  is_final 
void key_block_flush_int ( zebra_key_block_t  p,
char **  key_buf,
size_t  ptr_top,
size_t  ptr_i 
int key_block_get_no_files ( zebra_key_block_t  p)

Definition at line 409 of file key_block.c.

References zebra_key_block::key_file_no.

Referenced by zebra_index_merge().

void key_block_write ( zebra_key_block_t  p,
zint  sysno,
struct it_key key_in,
int  cmd,
const char *  str_buf,
size_t  str_len,
zint  staticrank,
int  static_rank_enable