/* This file is part of the YAZ toolkit.
- * Copyright (C) 1995-2010 Index Data.
+ * Copyright (C) 1995-2011 Index Data.
* All rights reserved.
* Redistribution and use in source and binary forms, with or without
* modification, are permitted provided that the following conditions are met:
/** \brief Output format: MarcXchange (ISO25577) */
#define YAZ_MARC_XCHANGE 5
/** \brief Output format: check only (no marc output) */
-#define YAZ_MARC_CHECK 6
-/** \brief Output format: Turbo MARCXML Index Data format*/
-#define YAZ_MARC_TMARCXML 7
+#define YAZ_MARC_CHECK 6
+/** \brief Output format: Turbo MARC Index Data format (XML based) */
+#define YAZ_MARC_TURBOMARC 7
/** \brief set iconv handle for character set conversion */
YAZ_EXPORT void yaz_marc_iconv(yaz_marc_t mt, yaz_iconv_t cd);
void *client_data);
#if YAZ_HAVE_XML2
-/** \brief parses MARCXML/MarcXchange record from xmlNode pointer
+/** \brief parses MARCXML/MarcXchange/TurboMARC record from xmlNode pointer
\param mt handle
\param ptr is a pointer to root xml node
\retval 0 OK
*/
YAZ_EXPORT int yaz_marc_write_marcxml(yaz_marc_t mt, WRBUF wrbuf);
-/** \brief writes record in TMARCXML format
+/** \brief writes record in TurboMARC format
\param mt handle
\param wrbuf WRBUF for output
\retval 0 OK
\retval -1 ERROR
*/
-YAZ_EXPORT int yaz_marc_write_turbo_xml(yaz_marc_t mt, WRBUF wrbuf);
+YAZ_EXPORT int yaz_marc_write_turbomarc(yaz_marc_t mt, WRBUF wrbuf);
/** \brief writes record in MarcXchange XML (ISO25577)
\param mt handle
\param mt handle
\param r OPAC record
\param wrbuf WRBUF for resulting display string
+
+ This function uses iconv_handle of yaz_marc_t for character set
+ conversion of both OPAC + ISO2709 part.
\*/
YAZ_EXPORT void yaz_opac_decode_wrbuf(yaz_marc_t mt, Z_OPACRecord *r,
WRBUF wrbuf);
+/** \brief Performs "pretty" display of OPAC record to WRBUF using marc_t
+ \param mt handle
+ \param r OPAC record
+ \param wrbuf WRBUF for resulting display string
+ \param cd iconv handle for OPAC content (not ISO2709 part)
+
+ This function uses iconv handle of yaz_marc_t for character set
+ conversion of ISO2709 part and supplied handle (cd) for OPAC part.
+ \*/
+YAZ_EXPORT void yaz_opac_decode_wrbuf2(yaz_marc_t mt, Z_OPACRecord *r,
+ WRBUF wrbuf, yaz_iconv_t cd);
+
/** \brief flushes records
\param mt handle
\param wr WRBUF for output