-/* $Id: index.h,v 1.88 2002-10-16 09:30:57 heikki Exp $
+/* $Id: index.h,v 1.92 2002-11-26 22:18:34 adam Exp $
Copyright (C) 1995,1996,1997,1998,1999,2000,2001,2002
Index Data Aps
#include <isamd.h>
#include <isamb.h>
#define ISAM_DEFAULT "c"
-#include <yaz/data1.h>
+#include <data1.h>
#include <recctrl.h>
#include "recindex.h"
#include "zebraapi.h"
int key_SU_decode (int *ch, const unsigned char *out);
int key_SU_encode (int ch, char *out);
-// extern Res common_resource;
-
#define ENCODE_BUFLEN 768
struct encode_info {
int sysno; /* previously written values for delta-compress */
int prevSeqNo;
};
+#if 1
+struct sortKeys {
+ int buf_used;
+ int buf_max;
+ char *buf;
+};
+#else
struct sortKey {
char *string;
int length;
int attrUse;
struct sortKey *next;
};
+#endif
struct zebra_register {
char *name;
int stop_flag;
int active; /* 0=shutdown, 1=enabled and inactive, 2=activated */
-
-
struct recKeys keys;
+#if 1
+ struct sortKeys sortKeys;
+#else
struct sortKey *sortKeys;
-
+#endif
char **key_buf;
size_t ptr_top;
size_t ptr_i;
void extract_get_fname_tmp (ZebraHandle zh, char *fname, int no);
void zebra_index_merge (ZebraHandle zh);
+int bufferExtractRecord (ZebraHandle zh,
+ const char *buf, size_t buf_size,
+ struct recordGroup *rGroup,
+ int delete_flag,
+ int test_mode,
+ int *sysno,
+ const char *match_criteria,
+ const char *fname);
int extract_rec_in_mem (ZebraHandle zh, const char *recordType,
const char *buf, size_t buf_size,
int test_mode, int *sysno,
int store_keys, int store_data,
const char *match_criteria);
-
void extract_flushWriteKeys (ZebraHandle zh);
struct zebra_fetch_control {
void extract_flushRecordKeys (ZebraHandle zh, SYSNO sysno,
int cmd, struct recKeys *reckeys);
void extract_flushSortKeys (ZebraHandle zh, SYSNO sysno,
- int cmd, struct sortKey **skp);
+ int cmd, struct sortKeys *skp);
void extract_schema_add (struct recExtractCtrl *p, Odr_oid *oid);
void extract_token_add (RecWord *p);
int explain_extract (void *handle, Record rec, data1_node *n);