-/* $Id: recctrl.h,v 1.14 2005-08-22 08:19:51 adam Exp $
- Copyright (C) 1995-2005
+/* $Id: recctrl.h,v 1.21 2006-06-07 10:14:40 adam Exp $
+ Copyright (C) 1995-2006
Index Data ApS
This file is part of the Zebra server.
02111-1307, USA.
*/
-#ifndef RECCTRL_H
-#define RECCTRL_H
+#ifndef IDZEBRA_RECCTRL_H
+#define IDZEBRA_RECCTRL_H
#include <sys/types.h>
#include <yaz/proto.h>
YAZ_BEGIN_CDECL
-#if NATTR
+/* 1 */
#define ZEBRA_XPATH_ELM_BEGIN "_XPATH_BEGIN"
+
+/* 2 */
#define ZEBRA_XPATH_ELM_END "_XPATH_END"
+
+/* 1016 */
#define ZEBRA_XPATH_CDATA "_XPATH_CDATA"
-#define ZEBRA_XPATH_ATTR "_XPATH_ATTR"
-#endif
+
+/* 3 */
+#define ZEBRA_XPATH_ATTR_NAME "_XPATH_ATTR_NAME"
+
+/* 1015 */
+#define ZEBRA_XPATH_ATTR_CDATA "_XPATH_ATTR_CDATA"
/* single word entity */
typedef struct {
-#if NATTR
-#else
- int attrSet;
- int attrUse;
-#endif
unsigned index_type;
const char *index_name;
const char *term_buf;
int flagShowRecords;
int seqno[256];
char match_criteria[256];
- int staticrank;
+ zint staticrank;
void (*schemaAdd)(struct recExtractCtrl *p, Odr_oid *oid);
data1_handle dh;
void *handle;
char *encoding; /* preferred character encoding */
zint localno; /* local id of record */
int score; /* score 0-1000 or -1 if none */
+ int staticrank; /* static rank >= 0, 0 if none */
int recordSize; /* size of record in bytes */
char *fname; /* name of file (or NULL if internal) */
data1_handle dh;
int version;
char *name; /* Name of record type */
void *(*init)(Res res, RecType recType); /* Init function - called once */
- void (*config)(void *clientData, Res res, const char *args); /* Config */
+ ZEBRA_RES (*config)(void *clientData, Res res, const char *args); /* Config */
void (*destroy)(void *clientData); /* Destroy function */
int (*extract)(void *clientData,
struct recExtractCtrl *ctrl); /* Extract proc */
RecTypeClass recTypeClass_create (Res res, NMEM nmem);
YAZ_EXPORT
+void recTypeClass_load_modules(RecTypeClass *rts, NMEM nmem,
+ const char *module_path);
+
+YAZ_EXPORT
+RecTypeClass recTypeClass_add_modules(Res res, NMEM nmem,
+ const char *module_path);
+
+YAZ_EXPORT
void recTypeClass_destroy(RecTypeClass rtc);
YAZ_EXPORT
YAZ_END_CDECL
#endif
+/*
+ * Local variables:
+ * c-basic-offset: 4
+ * indent-tabs-mode: nil
+ * End:
+ * vim: shiftwidth=4 tabstop=8 expandtab
+ */
+