X-Git-Url: http://git.indexdata.com/?p=yaz-moved-to-github.git;a=blobdiff_plain;f=include%2Fyaz%2Fprt-ext.h;h=9256d28da0547ece125ddd51b161b3516193002e;hp=daa58209a711a25e0a00421302f86f92a0cd48df;hb=2788a4851b551e1a3efb320a2878b809f2d8a9d7;hpb=7a4064cd15f6c6b34c1180e1bc51f0d0e90da320 diff --git a/include/yaz/prt-ext.h b/include/yaz/prt-ext.h index daa5820..9256d28 100644 --- a/include/yaz/prt-ext.h +++ b/include/yaz/prt-ext.h @@ -1,5 +1,5 @@ -/* - * Copyright (c) 1995-2007, Index Data +/* This file is part of the YAZ toolkit. + * Copyright (C) 1995-2009 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: @@ -24,7 +24,6 @@ * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF * THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. */ -/* $Id: prt-ext.h,v 1.16 2007-04-12 13:52:57 adam Exp $ */ /** * \file prt-ext.h @@ -50,11 +49,7 @@ YAZ_BEGIN_CDECL */ typedef struct Z_ext_typeent { -#if 0 - oid_value dref; /* the direct-reference OID value. */ -#else - int oid[OID_SIZE]; /* the direct-reference OID */ -#endif + Odr_oid oid[OID_SIZE]; /* the direct-reference OID */ int what; /* discriminator value for the external CHOICE */ Odr_fun fun; /* decoder function */ } Z_ext_typeent; @@ -143,10 +138,22 @@ struct Z_External /** \brief codec for BER EXTERNAL */ YAZ_EXPORT int z_External(ODR o, Z_External **p, int opt, const char *name); /** \brief returns type information for OID (NULL if not known) */ -YAZ_EXPORT Z_ext_typeent *z_ext_getentbyref(const int *oid); -/** \brief encodes EXTERNAL record based on OID (NULL if knot known) */ -YAZ_EXPORT Z_External *z_ext_record_oid(ODR o, const int *oid, +YAZ_EXPORT Z_ext_typeent *z_ext_getentbyref(const Odr_oid *oid); +/** \brief encodes EXTERNAL record based on OID (NULL if not known) */ +YAZ_EXPORT Z_External *z_ext_record_oid(ODR o, const Odr_oid *oid, + const char *buf, int len); +/** \brief encodes EXTERNAL record as ANY */ +YAZ_EXPORT Z_External *z_ext_record_oid_any(ODR o, const Odr_oid *oid, const char *buf, int len); +/** \brief encodes EXTERNAL XML record */ +YAZ_EXPORT Z_External *z_ext_record_xml(ODR o, const char *buf, int len); + +/** \brief encodes EXTERNAL SUTRS record */ +YAZ_EXPORT Z_External *z_ext_record_sutrs(ODR o, const char *buf, int len); + +/** \brief encodes EXTERNAL USMARC/MARC21 record */ +YAZ_EXPORT Z_External *z_ext_record_usmarc(ODR o, const char *buf, int len); + YAZ_END_CDECL #endif