X-Git-Url: http://git.indexdata.com/?a=blobdiff_plain;f=index%2Fzebraapi.h;h=329c9cf2eb6ad979981bf8bf3ecd5b7f57a90528;hb=0df6c383d656dba662eb9d9acafed01a0973fcff;hp=a94d576ac3ba5d2a8645438604bdd63fa144a535;hpb=d0276ba178f8bdd1ccad216d8b4ec9af832b0cf7;p=idzebra-moved-to-github.git diff --git a/index/zebraapi.h b/index/zebraapi.h index a94d576..329c9cf 100644 --- a/index/zebraapi.h +++ b/index/zebraapi.h @@ -1,10 +1,20 @@ /* - * Copyright (C) 1994-1998, Index Data I/S + * Copyright (C) 1994-1998, Index Data * All rights reserved. * Sebastian Hammer, Adam Dickmeiss * * $Log: zebraapi.h,v $ - * Revision 1.1 1998-06-12 12:22:13 adam + * Revision 1.4 1998-09-02 13:53:18 adam + * Extra parameter decode added to search routines to implement + * persistent queries. + * + * Revision 1.3 1998/06/22 11:36:48 adam + * Added authentication check facility to zebra. + * + * Revision 1.2 1998/06/13 00:14:09 adam + * Minor changes. + * + * Revision 1.1 1998/06/12 12:22:13 adam * Work on Zebra API. * */ @@ -13,34 +23,40 @@ #include #include +/* Retrieval Record Descriptor */ typedef struct { - int errCode; - char *errString; - int position; - char *buf; - int len; - oid_value format; - char *base; + int errCode; /* non-zero if error when fetching this */ + char *errString; /* error string */ + int position; /* position of record in result set (1,2,..) */ + char *buf; /* record buffer (void pointer really) */ + int len; /* length */ + oid_value format; /* record syntax */ + char *base; } ZebraRetrievalRecord; +/* Scan Term Descriptor */ typedef struct { - int occurrences; - char *term; + int occurrences; /* scan term occurrences */ + char *term; /* scan term string */ } ZebraScanEntry; typedef struct zebra_info *ZebraHandle; -YAZ_EXPORT ZebraHandle zebra_open (const char *host); +/* Open Zebra using file 'configName' (usually zebra.cfg) */ +YAZ_EXPORT ZebraHandle zebra_open (const char *configName); -YAZ_EXPORT void zebra_search_rpn (ZebraHandle zh, ODR stream, - Z_RPNQuery *query, int num_bases, char **basenames, +/* Search using RPN-Query */ +YAZ_EXPORT void zebra_search_rpn (ZebraHandle zh, ODR stream, ODR decode, + Z_RPNQuery *query, int num_bases, char **basenames, const char *setname); +/* Retrieve record(s) */ YAZ_EXPORT void zebra_records_retrieve (ZebraHandle zh, ODR stream, - const char *setname, Z_RecordComposition *comp, - oid_value input_format, - int num_recs, ZebraRetrievalRecord *recs); + const char *setname, Z_RecordComposition *comp, + oid_value input_format, + int num_recs, ZebraRetrievalRecord *recs); +/* Browse */ YAZ_EXPORT void zebra_scan (ZebraHandle zh, ODR stream, Z_AttributesPlusTerm *zapt, oid_value attributeset, @@ -49,12 +65,20 @@ YAZ_EXPORT void zebra_scan (ZebraHandle zh, ODR stream, ZebraScanEntry **list, int *is_partial); +/* Close zebra and destroy handle */ YAZ_EXPORT void zebra_close (ZebraHandle zh); +/* last error code */ YAZ_EXPORT int zebra_errCode (ZebraHandle zh); +/* string representatio of above */ YAZ_EXPORT const char *zebra_errString (ZebraHandle zh); + +/* extra information associated with error */ YAZ_EXPORT char *zebra_errAdd (ZebraHandle zh); -YAZ_EXPORT int zebra_hits (ZebraHandle zh); +/* number of hits (after search) */ +YAZ_EXPORT int zebra_hits (ZebraHandle zh); +/* do authentication */ +YAZ_EXPORT int zebra_auth (ZebraHandle zh, const char *user, const char *pass);