X-Git-Url: http://git.indexdata.com/?p=yaz-moved-to-github.git;a=blobdiff_plain;f=include%2Fyaz%2Foid_db.h;h=4147990aaef116a0d00b349fa2a5e4fa8ab22a35;hp=c216c33a005a7704f486dc18166f766583ea1e6a;hb=05193e78a2553c93a61da19a39e1276b1a509bac;hpb=7a98e9bfbb9d5fe7d44822a9838e3becbdce9363 diff --git a/include/yaz/oid_db.h b/include/yaz/oid_db.h index c216c33..4147990 100644 --- a/include/yaz/oid_db.h +++ b/include/yaz/oid_db.h @@ -1,5 +1,5 @@ -/* - * Copyright (c) 1995-2007, Index Data +/* This file is part of the YAZ toolkit. + * Copyright (C) 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: oid_db.h,v 1.8 2007-05-08 08:22:35 adam Exp $ */ /** * \file oid_db.h @@ -63,9 +62,9 @@ typedef enum oid_class CLASS_GENERAL, CLASS_NEGOT } oid_class; - -/** \brief returns standard OID database + +/** \brief returns standard OID database \retval OID database handle */ YAZ_EXPORT @@ -73,7 +72,7 @@ yaz_oid_db_t yaz_oid_std(void); /** \brief maps named OID string to raw OID by database lookup \param oid_db OID database - \param oclass class of string (enum oid_class) + \param oclass class of string (enum oid_class) \param name OID name \returns raw OID or NULL if name is unknown (bad) @@ -88,7 +87,7 @@ const Odr_oid *yaz_string_to_oid(yaz_oid_db_t oid_db, /** \brief creates NMEM malloc'ed OID from string \param oid_db OID database - \param oclass class of string (enum oid_class) + \param oclass class of string (enum oid_class) \param name OID name \param nmem memory for returned OID \returns raw OID or NULL if name is unknown (bad) @@ -99,7 +98,7 @@ Odr_oid *yaz_string_to_oid_nmem(yaz_oid_db_t oid_db, /** \brief creates ODR malloc'ed OID from string \param oid_db OID database - \param oclass class of string (enum oid_class) + \param oclass class of string (enum oid_class) \param name OID name \param odr memory for returned OID \returns raw OID or NULL if name is unknown (bad) @@ -123,12 +122,23 @@ const char *yaz_oid_to_string(yaz_oid_db_t oid_db, \param oid raw OID \param oclass holds OID class if found (output parameter) \param buf string buffer for result (must be of size OID_STR_MAX) - \returns OID string (named or dot notatition) + \returns OID string (named or dot notatition) */ YAZ_EXPORT const char *yaz_oid_to_string_buf(const Odr_oid *oid, oid_class *oclass, char *buf); + +/** \brief maps named from standard database to dot notation + \param oclass class of string (enum oid_class) + \param name named OID + \param oid_buf buffer for result (must be of size OID_STR_MAX) + \returns OID string or NULL if name is not registered in database +*/ +YAZ_EXPORT +char *oid_name_to_dotstring(oid_class oclass, const char *name, char *oid_buf); + + /** \brief traverses OIDs in a database \param oid_db OID database \param func function to be called for each OID @@ -157,7 +167,7 @@ int yaz_oid_is_iso2709(const Odr_oid *oid); \retval -1 OID name+oclass already exists */ YAZ_EXPORT -int yaz_oid_add(yaz_oid_db_t oid_db, int oclass, const char *name, +int yaz_oid_add(yaz_oid_db_t oid_db, oid_class oclass, const char *name, const Odr_oid *new_oid); @@ -174,7 +184,7 @@ YAZ_EXPORT void yaz_oid_db_destroy(yaz_oid_db_t oid_db); struct yaz_oid_entry { - int oclass; + enum oid_class oclass; const Odr_oid *oid; char *name; }; @@ -189,6 +199,7 @@ YAZ_END_CDECL /* * Local variables: * c-basic-offset: 4 + * c-file-style: "Stroustrup" * indent-tabs-mode: nil * End: * vim: shiftwidth=4 tabstop=8 expandtab