Added support for multi-homed YAZ frontend server. A backend config
[yaz-moved-to-github.git] / include / yaz / proto.h
index 5023c15..243ac0a 100644 (file)
@@ -1,9 +1,12 @@
 /*
- * Copyright (c) 1998-2003, Index Data
+ * Copyright (C) 1995-2005, Index Data ApS
  * See the file LICENSE for details.
- * Sebastian Hammer, Adam Dickmeiss
  *
- * $Id: proto.h,v 1.11 2003-07-18 19:54:30 mike Exp $
+ * $Id: proto.h,v 1.19 2005-01-27 09:06:51 adam Exp $
+ */
+/**
+ * \file proto.h
+ * \brief Header for Z39.50 Protocol
  */
 #ifndef Z_PROTO_H
 #define Z_PROTO_H
@@ -47,6 +50,7 @@
 
 YAZ_BEGIN_CDECL
 
+#if 1
 #define Z_PRES_SUCCESS   Z_PresentStatus_success
 #define Z_PRES_PARTIAL_1 Z_PresentStatus_partial_1
 #define Z_PRES_PARTIAL_2 Z_PresentStatus_partial_2
@@ -96,6 +100,7 @@ YAZ_BEGIN_CDECL
 #define Z_SortResultSetStatus_interim     Z_SortResponse_interim
 #define Z_SortResultSetStatus_unchanged   Z_SortResponse_unchanged
 #define Z_SortResultSetStatus_none        Z_SortResponse_none
+#endif
 
 typedef Z_External Z_DatabaseRecord;
 typedef struct Z_IOItemOrder Z_ItemOrder;
@@ -110,10 +115,47 @@ YAZ_EXPORT const char *yaz_z3950oid_to_str (Odr_oid *oid, int *oid_class);
 
 YAZ_EXPORT const char* yaz_z3950_oid_value_to_str(oid_value ov, oid_class oc);
 
+/** \brief Performs "pretty" display of GRS-1 record to WRBUF */
 YAZ_EXPORT void yaz_display_grs1(WRBUF wrbuf, Z_GenericRecord *r, int flags);
 
+/** \brief Performs "pretty" display of OPAC record to WRBUF */
 YAZ_EXPORT void yaz_display_OPAC(WRBUF wrbuf, Z_OPACRecord *r, int flags);
 
+/** \brief Encodes Z39.50 Init OPtions based on string mnemonics */
+YAZ_EXPORT int yaz_init_opt_encode(Z_Options *opt, const char *opt_str,
+                                  int *error_pos);
+
+/** \brief Decodes Z39.50 Init Options - for printing */
+YAZ_EXPORT void yaz_init_opt_decode(Z_Options *opt,
+                                   void (*pr)(const char *name,
+                                              void *clientData),
+                                   void *clientData);
+/** \brief Creates Default Diag Format Diagnostic */
+YAZ_EXPORT
+Z_DefaultDiagFormat *zget_DefaultDiagFormat(ODR o, int error,
+                                           const char *addinfo);
+
+/** \brief Creates Surrogate Diagnostic Records */
+YAZ_EXPORT
+Z_NamePlusRecord *zget_surrogateDiagRec(ODR o, const char *dbname,
+                                       int error, const char *addinfo);
+
+/** \brief Creates Initialize Response diagnostics */
+YAZ_EXPORT
+Z_External *zget_init_diagnostics(ODR odr, int error, const char *addinfo);
+
+/** \brief Creates Initialize Response diagnostics (Octet-aligned EXTERNAL) */
+YAZ_EXPORT
+Z_External *zget_init_diagnostics_octet(ODR odr, int error, const char *addinfo);
+
+/** \brief Creates Diagnostic record - Z_DiagRecs type */
+YAZ_EXPORT
+Z_DiagRecs *zget_DiagRecs(ODR o, int error, const char *addinfo);
+
+/** \brief Creates Diagnostic record - Z_DiagRecs type */
+YAZ_EXPORT
+Z_DiagRec *zget_DiagRec(ODR o, int error, const char *addinfo);
+
 YAZ_END_CDECL
 
 #include <yaz/prt-ext.h>