-/* $Id: api.h,v 1.38 2006-08-14 10:40:14 adam Exp $
- Copyright (C) 1995-2006
+/* $Id: api.h,v 1.43 2007-01-16 15:01:15 adam Exp $
+ Copyright (C) 1995-2007
Index Data ApS
This file is part of the Zebra server.
YAZ_BEGIN_CDECL
-/**
- expand GCC_ATTRIBUTE if GCC is in use. See :
- http://gcc.gnu.org/onlinedocs/gcc/Function-Attributes.html
-*/
-
-#ifndef GCC_ATTRIBUTE
-#ifdef __GNUC__
-#define GCC_ATTRIBUTE(x) __attribute__ (x)
-#else
-#define GCC_ATTRIBUTE(x)
-#endif
-#endif
-
typedef struct {
zint processed;
zint inserted;
int len; /* length */
oid_value format; /* record syntax */
char *base;
- SYSNO sysno;
+ zint sysno;
int score;
} ZebraRetrievalRecord;
*/
YAZ_EXPORT
ZebraService zebra_start(const char *configName
- ) GCC_ATTRIBUTE((warn_unused_result));
+ ) ZEBRA_GCC_ATTR((warn_unused_result));
/** \brief Creates a Zebra service with resources.
\param configName name of configuration file
YAZ_EXPORT
ZebraService zebra_start_res(const char *configName,
Res def_res, Res over_res
- ) GCC_ATTRIBUTE((warn_unused_result));
+ ) ZEBRA_GCC_ATTR((warn_unused_result));
/** \brief stops a Zebra service.
\param zs service handle
*/
YAZ_EXPORT
ZebraHandle zebra_open(ZebraService zs, Res res
- ) GCC_ATTRIBUTE((warn_unused_result));
+ ) ZEBRA_GCC_ATTR((warn_unused_result));
/** \brief Destroys Zebra session handle.
\param zh zebra session handle.
\param query RPN query using YAZ structure
\param setname name of resultset
\param hits number of hits is returned
+ \param estimated_hit_count whether hit count is an estimate
+ \param partial_resultset whether result is only partially evaluated
+*/
+YAZ_EXPORT
+ZEBRA_RES zebra_search_RPN_x(ZebraHandle zh, ODR o, Z_RPNQuery *query,
+ const char *setname, zint *hits,
+ int *estimated_hit_count,
+ int *partial_resultset);
+
+
+/** \brief Search using RPN Query structure (from ASN.1)
+ \param zh session handle
+ \param o ODR handle
+ \param query RPN query using YAZ structure
+ \param setname name of resultset
+ \param hits number of hits is returned
*/
YAZ_EXPORT
ZEBRA_RES zebra_search_RPN(ZebraHandle zh, ODR o, Z_RPNQuery *query,
YAZ_EXPORT
ZEBRA_RES zebra_begin_trans(ZebraHandle zh, int rw
- ) GCC_ATTRIBUTE((warn_unused_result));
+ ) ZEBRA_GCC_ATTR((warn_unused_result));
YAZ_EXPORT
ZEBRA_RES zebra_end_trans(ZebraHandle zh
- ) GCC_ATTRIBUTE((warn_unused_result));
+ ) ZEBRA_GCC_ATTR((warn_unused_result));
YAZ_EXPORT
ZEBRA_RES zebra_end_transaction(ZebraHandle zh,
YAZ_EXPORT
ZEBRA_RES zebra_insert_record(ZebraHandle zh,
const char *recordType,
- SYSNO *sysno, const char *match,
+ zint *sysno, const char *match,
const char *fname,
const char *buf, int buf_size,
int force_update);
YAZ_EXPORT
ZEBRA_RES zebra_update_record(ZebraHandle zh,
const char *recordType,
- SYSNO *sysno, const char *match,
+ zint *sysno, const char *match,
const char *fname,
const char *buf, int buf_size,
int force_update);
YAZ_EXPORT
ZEBRA_RES zebra_delete_record(ZebraHandle zh,
const char *recordType,
- SYSNO *sysno, const char *match, const char *fname,
+ zint *sysno, const char *match,
+ const char *fname,
const char *buf, int buf_size,
int force_update);
const char *output_setname,
Z_SortKeySpecList *sort_sequence,
int *sort_status
- ) GCC_ATTRIBUTE((warn_unused_result));
+ ) ZEBRA_GCC_ATTR((warn_unused_result));
YAZ_EXPORT
ZEBRA_RES zebra_select_databases(ZebraHandle zh, int num_bases,
const char **basenames
- ) GCC_ATTRIBUTE((warn_unused_result));
+ ) ZEBRA_GCC_ATTR((warn_unused_result));
YAZ_EXPORT
ZEBRA_RES zebra_select_database(ZebraHandle zh, const char *basename
- ) GCC_ATTRIBUTE((warn_unused_result));
+ ) ZEBRA_GCC_ATTR((warn_unused_result));
YAZ_EXPORT
void zebra_shadow_enable(ZebraHandle zh, int value);