X-Git-Url: http://git.indexdata.com/?p=yaz-moved-to-github.git;a=blobdiff_plain;f=include%2Fyaz%2Fzoom.h;h=ebbbf13b8a190724fae259d0845c0a12de7cb9c8;hp=61e7550ed29e11eb4b1e600fa249a3af33b0e00e;hb=3599bbc013ec757862d8a2d6e62aa6a432ba4514;hpb=13671e7cc0f3dd4e4b02f94d64a50778c5696ba6 diff --git a/include/yaz/zoom.h b/include/yaz/zoom.h index 61e7550..ebbbf13 100644 --- a/include/yaz/zoom.h +++ b/include/yaz/zoom.h @@ -1,6 +1,6 @@ /* * Public header for ZOOM C. - * $Id: zoom.h,v 1.7 2001-11-18 21:14:23 adam Exp $ + * $Id: zoom.h,v 1.9 2002-01-02 10:30:25 adam Exp $ */ #include @@ -20,6 +20,7 @@ typedef struct ZOOM_connection_p *ZOOM_connection; typedef struct ZOOM_resultset_p *ZOOM_resultset; typedef struct ZOOM_task_p *ZOOM_task; typedef struct ZOOM_record_p *ZOOM_record; +typedef struct ZOOM_scanset_p *ZOOM_scanset; /* ----------------------------------------------------------- */ /* connections */ @@ -77,6 +78,18 @@ const char *ZOOM_connection_addinfo (ZOOM_connection c); #define ZOOM_ERROR_INTERNAL 10006 #define ZOOM_ERROR_TIMEOUT 10007 +ZOOM_EXPORT +int ZOOM_connection_last_event(ZOOM_connection cs); + +#define ZOOM_EVENT_NONE 0 +#define ZOOM_EVENT_CONNECT 1 +#define ZOOM_EVENT_SEND_DATA 2 +#define ZOOM_EVENT_RECV_DATA 3 +#define ZOOM_EVENT_TIMEOUT 4 +#define ZOOM_EVENT_UNKNOWN 5 +#define ZOOM_EVENT_SEND_APDU 6 +#define ZOOM_EVENT_RECV_APDU 7 + /* ----------------------------------------------------------- */ /* result sets */ @@ -104,7 +117,7 @@ size_t ZOOM_resultset_size (ZOOM_resultset r); /* retrieve records */ ZOOM_EXPORT void ZOOM_resultset_records (ZOOM_resultset r, ZOOM_record *recs, - size_t start, size_t count); + size_t start, size_t count); /* return record object at pos. Returns 0 if unavailable */ ZOOM_EXPORT @@ -130,7 +143,7 @@ ZOOM_EXPORT ZOOM_record ZOOM_record_clone (ZOOM_record srec); /* ----------------------------------------------------------- */ -/* searches */ +/* queries */ /* create search object */ ZOOM_EXPORT @@ -146,6 +159,20 @@ ZOOM_EXPORT int ZOOM_query_sortby(ZOOM_query s, const char *criteria); /* ----------------------------------------------------------- */ +/* scan */ +ZOOM_EXPORT +ZOOM_scanset ZOOM_connection_scan (ZOOM_connection c, const char *startterm); + +ZOOM_EXPORT +const char * ZOOM_scanset_term(ZOOM_scanset scan, size_t pos, + int *occ, size_t *len); + +ZOOM_EXPORT +size_t ZOOM_scanset_size(ZOOM_scanset scan); + +ZOOM_EXPORT +void ZOOM_scanset_destroy (ZOOM_scanset scan); +/* ----------------------------------------------------------- */ /* options */ typedef const char *(*ZOOM_options_callback)(void *handle, const char *name); @@ -182,8 +209,7 @@ void ZOOM_options_addref (ZOOM_options opt); /* poll for events on a number of connections. Returns positive integer if event occurred ; zero if none occurred and no more events are pending. The positive integer specifies the - connection for which the event occurred. There's no way to get - the details yet, sigh. */ + connection for which the event occurred. */ ZOOM_EXPORT int ZOOM_event (int no, ZOOM_connection *cs);