X-Git-Url: http://git.indexdata.com/?a=blobdiff_plain;f=include%2Fyaz%2Fprt-ext.h;h=b59e3582149813f017f24009a5210c86360219fb;hb=6f7757087a49db5fb3fa4f3b12b8b67ebbbe3aa3;hp=3622192b549386cbc548a6661ae88b3114975361;hpb=964580242e2e0b2e570f652afa58bfb90ad0bb5e;p=yaz-moved-to-github.git diff --git a/include/yaz/prt-ext.h b/include/yaz/prt-ext.h index 3622192..b59e358 100644 --- a/include/yaz/prt-ext.h +++ b/include/yaz/prt-ext.h @@ -1,5 +1,5 @@ -/* - * Copyright (c) 1995-2006, Index Data +/* This file is part of the YAZ toolkit. + * Copyright (C) 1995-2008 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.14 2006-10-09 21:02:41 adam Exp $ */ /** * \file prt-ext.h @@ -39,7 +38,7 @@ #define PRT_EXT_H #include -#include +#include YAZ_BEGIN_CDECL @@ -50,7 +49,7 @@ YAZ_BEGIN_CDECL */ typedef struct Z_ext_typeent { - oid_value dref; /* the direct-reference OID value. */ + 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; @@ -139,10 +138,21 @@ 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(oid_value val); -/** \brief encodes EXTERNAL record based on OID (NULL if knot known) */ -YAZ_EXPORT Z_External *z_ext_record(ODR o, int format, const char *buf, - int len); +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