/*
* Private C header for ZOOM C.
- * $Id: zoom-p.h,v 1.5 2001-11-18 21:14:23 adam Exp $
+ * $Id: zoom-p.h,v 1.10 2002-05-18 09:52:37 oleg Exp $
*/
#include <yaz/proto.h>
#include <yaz/comstack.h>
#include <yaz/wrbuf.h>
#include <yaz/zoom.h>
+#include <yaz/sortspec.h>
typedef struct ZOOM_Event_p *ZOOM_Event;
char *buf_out;
int len_out;
char *proxy;
+ char *charset;
+ char *lang;
char *cookie_out;
char *cookie_in;
int async;
+ int support_named_resultsets;
+ int last_event;
ZOOM_task tasks;
ZOOM_options options;
ZOOM_resultset resultsets;
int start;
int count;
int piggyback;
+ char *setname;
ODR odr;
ZOOM_record_cache record_cache;
ZOOM_options options;
ZOOM_record_cache next;
};
+struct ZOOM_scanset_p {
+ int refcount;
+ ODR odr;
+ ZOOM_options options;
+ ZOOM_connection connection;
+ Z_AttributesPlusTerm *termListAndStartPoint;
+ Z_AttributeSetId *attributeSet;
+ Z_ScanResponse *scan_response;
+};
+
struct ZOOM_task_p {
int running;
int which;
union {
#define ZOOM_TASK_SEARCH 1
- ZOOM_resultset resultset;
+ struct {
+ ZOOM_resultset resultset;
+ } search;
#define ZOOM_TASK_RETRIEVE 2
- /** also resultset here */
+ struct {
+ int start;
+ ZOOM_resultset resultset;
+ int count;
+ } retrieve;
#define ZOOM_TASK_CONNECT 3
+#define ZOOM_TASK_SCAN 4
+ struct {
+ ZOOM_scanset scan;
+ } scan;
} u;
ZOOM_task next;
};
ZOOM_Event prev;
};
-
-#ifndef YAZ_DATE
-COMSTACK cs_create_host(const char *type_and_host, int blocking, void **vp);
-Odr_oid *yaz_str_to_z3950oid (ODR o, int oid_class, const char *str);
-Z_SortKeySpecList *yaz_sort_spec (ODR out, const char *arg);
-#else
-#include <yaz/sortspec.h>
-#endif
+void ZOOM_options_addref (ZOOM_options opt);