X-Git-Url: http://git.indexdata.com/?a=blobdiff_plain;ds=sidebyside;f=include%2Fyaz%2Foid.h;h=f47911ffbe08131321851fa8c663eec67bb0b094;hb=5b417578fa8bce4671d29d59201ae0ad0c7e5653;hp=a99b6d8e31a114523bb8844c41abd2f77068d3ac;hpb=d205d4870b1d64af05e9d6f6a2223086af4cce9e;p=yaz-moved-to-github.git diff --git a/include/yaz/oid.h b/include/yaz/oid.h index a99b6d8..f47911f 100644 --- a/include/yaz/oid.h +++ b/include/yaz/oid.h @@ -1,5 +1,5 @@ /* - * Copyright (c) 1995-1999, Index Data. + * Copyright (c) 1995-2003, Index Data. * * Permission to use, copy, modify, distribute, and sell this software and * its documentation, in whole or in part, for any purpose, is hereby granted, @@ -23,7 +23,7 @@ * LIABILITY, ARISING OUT OF OR IN CONNECTION WITH THE USE OR PERFORMANCE * OF THIS SOFTWARE. * - * $Id: oid.h,v 1.2 1999-12-16 23:36:19 adam Exp $ + * $Id: oid.h,v 1.21 2003-11-19 13:47:20 mike Exp $ */ #ifndef OID_H @@ -31,9 +31,7 @@ #include -#ifdef __cplusplus -extern "C" { -#endif +YAZ_BEGIN_CDECL #define OID_SIZE 20 @@ -43,7 +41,8 @@ typedef enum oid_proto PROTO_Z3950, PROTO_SR, PROTO_GENERAL, - PROTO_WAIS + PROTO_WAIS, + PROTO_HTTP } oid_proto; typedef enum oid_class @@ -63,7 +62,8 @@ typedef enum oid_class CLASS_VARSET, CLASS_SCHEMA, CLASS_TAGSET, - CLASS_GENERAL + CLASS_GENERAL, + CLASS_NEGOT } oid_class; typedef enum oid_value @@ -73,89 +73,154 @@ typedef enum oid_value VAL_BER, VAL_BASIC_CTX, VAL_BIB1, + VAL_EXP1, VAL_EXT1, VAL_CCL1, VAL_GILS, - VAL_WAIS, + VAL_WAIS, +/* 10 */ VAL_STAS, VAL_COLLECT1, VAL_CIMI1, VAL_GEO, VAL_DIAG1, + VAL_ISO2709, VAL_UNIMARC, VAL_INTERMARC, VAL_CCF, VAL_USMARC, +/* 20 */ VAL_UKMARC, VAL_NORMARC, VAL_LIBRISMARC, VAL_DANMARC, VAL_FINMARC, + VAL_MAB, VAL_CANMARC, VAL_SBN, VAL_PICAMARC, VAL_AUSMARC, +/* 30 */ VAL_IBERMARC, VAL_CATMARC, VAL_MALMARC, VAL_EXPLAIN, VAL_SUTRS, + VAL_OPAC, VAL_SUMMARY, VAL_GRS0, VAL_GRS1, VAL_EXTENDED, +/* 40 */ VAL_FRAGMENT, VAL_RESOURCE1, VAL_RESOURCE2, VAL_PROMPT1, VAL_DES1, + VAL_KRB1, VAL_PRESSET, VAL_PQUERY, VAL_PCQUERY, VAL_ITEMORDER, + +/* 50 */ VAL_DBUPDATE0, VAL_DBUPDATE, VAL_EXPORTSPEC, VAL_EXPORTINV, VAL_NONE, + VAL_SETM, VAL_SETG, VAL_VAR1, VAL_ESPEC1, VAL_SOIF, + +/* 60 */ VAL_SEARCHRES1, VAL_THESAURUS, VAL_CHARLANG, VAL_USERINFO1, VAL_MULTISRCH1, + VAL_MULTISRCH2, VAL_DATETIME, VAL_SQLRS, VAL_PDF, VAL_POSTSCRIPT, + +/* 70 */ VAL_HTML, VAL_TIFF, VAL_GIF, VAL_JPEG, VAL_PNG, + VAL_MPEG, VAL_SGML, VAL_TIFFB, VAL_WAV, VAL_UPDATEES, + +/* 80 */ VAL_TEXT_XML, VAL_APPLICATION_XML, VAL_UNIVERSE_REPORT, VAL_PROXY, VAL_COOKIE, + VAL_CLIENT_IP, VAL_ISO_ILL_1, -/* add new types here... */ + VAL_ZBIG, + VAL_UTIL, + VAL_XD1, + +/* 90 */ + VAL_ZTHES, + VAL_FIN1, + VAL_DAN1, + VAL_DIAG_ES, + VAL_DIAG_GENERAL, + + VAL_JPMARC, + VAL_SWEMARC, + VAL_SIGLEMARC, + VAL_ISDSMARC, + VAL_RUSMARC, + +/* 100 */ + VAL_ADMINSERVICE, + VAL_HOLDINGS, + VAL_HUNMARC, + VAL_CHARNEG3, + VAL_LIB1, + + VAL_VIRT, + VAL_UCS2, + VAL_UCS4, + VAL_UTF16, + VAL_UTF8, +/* 110 */ + + VAL_IDXPATH, + VAL_BIB2, + VAL_ZEEREX, + VAL_CQL, + VAL_DBUPDATE1, + + VAL_OCLCUI, + VAL_ID_CHARSET, + VAL_EXTLITE, + VAL_NACSISCATP, + VAL_FINMARC2000, +/* 120 */ + + VAL_MARC21FIN, /* VAL_DYNAMIC must have highest value */ VAL_DYNAMIC, @@ -184,8 +249,16 @@ YAZ_EXPORT struct oident *oid_addent (int *oid, enum oid_proto proto, enum oid_class oclass, const char *desc, int value); -#ifdef __cplusplus -} -#endif +YAZ_EXPORT void oid_trav (void (*func)(struct oident *oidinfo, void *vp), + void *vp); + +YAZ_EXPORT void oid_init(void); +YAZ_EXPORT void oid_exit(void); +YAZ_EXPORT int *oid_name_to_oid(oid_class oclass, const char *name, int *oid); +YAZ_EXPORT char *oid_to_dotstring(const int *oid, char *oidbuf); +YAZ_EXPORT char *oid_name_to_dotstring(oid_class oclass, const char *name, + char *oidbuf); + +YAZ_END_CDECL #endif