X-Git-Url: http://git.indexdata.com/?a=blobdiff_plain;f=include%2Frecctrl.h;h=485b7468cd9eb8f2a737ba149b226ad05a40dd0b;hb=a20e59c5087fb92c419f2330c786367f9ce8ccd2;hp=15b7597e2d8455580adaec4536b7dafa8a69eb46;hpb=4415da5dbbba04e50d4524347486d60113ed569c;p=idzebra-moved-to-github.git diff --git a/include/recctrl.h b/include/recctrl.h index 15b7597..485b746 100644 --- a/include/recctrl.h +++ b/include/recctrl.h @@ -4,7 +4,26 @@ * Sebastian Hammer, Adam Dickmeiss * * $Log: recctrl.h,v $ - * Revision 1.29 1999-05-20 12:57:18 adam + * Revision 1.35 2002-04-13 18:16:42 adam + * More XPATH work; common sequence numbers for extract keys + * + * Revision 1.34 2000/03/20 19:08:36 adam + * Added remote record import using Z39.50 extended services and Segment + * Requests. + * + * Revision 1.33 2000/02/25 13:24:49 adam + * Fixed bug regarding pointer conversion that showed up on OSF V5. + * + * Revision 1.32 1999/11/30 13:48:03 adam + * Improved installation. Updated for inclusion of YAZ header files. + * + * Revision 1.31 1999/09/07 07:19:21 adam + * Work on character mapping. Implemented replace rules. + * + * Revision 1.30 1999/05/21 12:00:17 adam + * Better diagnostics for extraction process. + * + * Revision 1.29 1999/05/20 12:57:18 adam * Implemented TCL filter. Updated recctrl system. * * Revision 1.28 1999/03/02 16:15:42 quinn @@ -109,10 +128,10 @@ #ifndef RECCTRL_H #define RECCTRL_H -#include -#include -#include -#include +#include +#include +#include +#include #include #ifdef __cplusplus @@ -126,8 +145,9 @@ typedef struct { unsigned reg_type; char *string; int length; - int *seqnos; + int seqno; ZebraMaps zebra_maps; + struct recExtractCtrl *extractCtrl; } RecWord; /* Extract record control */ @@ -140,12 +160,14 @@ struct recExtractCtrl { off_t offset; /* start offset */ char *subType; void (*init)(struct recExtractCtrl *p, RecWord *w); - void (*addWord)(RecWord *p); + void *clientData; + void (*tokenAdd)(RecWord *w); ZebraMaps zebra_maps; int flagShowRecords; int seqno[256]; - void (*addSchema)(struct recExtractCtrl *p, Odr_oid *oid); + void (*schemaAdd)(struct recExtractCtrl *p, Odr_oid *oid); data1_handle dh; + void *handle; }; /* Retrieve record control */ @@ -168,7 +190,7 @@ struct recRetrieveCtrl { /* response */ oid_value output_format; void *rec_buf; - size_t rec_len; + int rec_len; int diagnostic; char *message; }; @@ -186,6 +208,10 @@ struct recType struct recRetrieveCtrl *ctrl); /* Retrieve proc */ }; +#define RECCTRL_EXTRACT_OK 0 +#define RECCTRL_EXTRACT_EOF 1 +#define RECCTRL_EXTRACT_ERROR 2 + typedef struct recTypes *RecTypes; RecTypes recTypes_init (data1_handle dh);