X-Git-Url: http://git.indexdata.com/?a=blobdiff_plain;f=include%2Fyaz%2Fz-opac.h;fp=include%2Fyaz%2Fz-opac.h;h=1ed2674ca28bc897995cc70182342c91fdeba010;hb=51ce48f9d3319a9f8952c4c6deb2c39692403376;hp=0000000000000000000000000000000000000000;hpb=ee5338c518eced23556105b4b2ad3cd850fd79ea;p=yaz-moved-to-github.git diff --git a/include/yaz/z-opac.h b/include/yaz/z-opac.h new file mode 100644 index 0000000..1ed2674 --- /dev/null +++ b/include/yaz/z-opac.h @@ -0,0 +1,95 @@ +/* YC 0.2: Tue Feb 29 16:45:06 CET 2000 */ +/* Module-H RecordSyntax-opac */ + +#ifndef z_opac_H +#define z_opac_H + +#include +#include +#ifdef __cplusplus +extern "C" { +#endif + +typedef struct Z_OPACRecord Z_OPACRecord; +YAZ_EXPORT int z_OPACRecord (ODR o, Z_OPACRecord **p, int opt, const char *name); + +typedef struct Z_HoldingsRecord Z_HoldingsRecord; +YAZ_EXPORT int z_HoldingsRecord (ODR o, Z_HoldingsRecord **p, int opt, const char *name); + +typedef struct Z_HoldingsAndCircData Z_HoldingsAndCircData; +YAZ_EXPORT int z_HoldingsAndCircData (ODR o, Z_HoldingsAndCircData **p, int opt, const char *name); + +typedef struct Z_Volume Z_Volume; +YAZ_EXPORT int z_Volume (ODR o, Z_Volume **p, int opt, const char *name); + +typedef struct Z_CircRecord Z_CircRecord; +YAZ_EXPORT int z_CircRecord (ODR o, Z_CircRecord **p, int opt, const char *name); +#ifdef __cplusplus +} +#endif +#ifdef __cplusplus +extern "C" { +#endif +struct Z_OPACRecord { + Z_External *bibliographicRecord; /* OPT */ + int num_holdingsData; + Z_HoldingsRecord **holdingsData; /* OPT */ +}; + +struct Z_HoldingsRecord { + int which; + union { + Z_External *marcHoldingsRecord; + Z_HoldingsAndCircData *holdingsAndCirc; +#define Z_HoldingsRecord_marcHoldingsRecord 1 +#define Z_HoldingsRecord_holdingsAndCirc 2 + } u; +}; + +struct Z_HoldingsAndCircData { + Z_InternationalString *typeOfRecord; /* OPT */ + Z_InternationalString *encodingLevel; /* OPT */ + Z_InternationalString *format; /* OPT */ + Z_InternationalString *receiptAcqStatus; /* OPT */ + Z_InternationalString *generalRetention; /* OPT */ + Z_InternationalString *completeness; /* OPT */ + Z_InternationalString *dateOfReport; /* OPT */ + Z_InternationalString *nucCode; /* OPT */ + Z_InternationalString *localLocation; /* OPT */ + Z_InternationalString *shelvingLocation; /* OPT */ + Z_InternationalString *callNumber; /* OPT */ + Z_InternationalString *shelvingData; /* OPT */ + Z_InternationalString *copyNumber; /* OPT */ + Z_InternationalString *publicNote; /* OPT */ + Z_InternationalString *reproductionNote; /* OPT */ + Z_InternationalString *termsUseRepro; /* OPT */ + Z_InternationalString *enumAndChron; /* OPT */ + int num_volumes; + Z_Volume **volumes; /* OPT */ + int num_circulationData; + Z_CircRecord **circulationData; /* OPT */ +}; + +struct Z_Volume { + Z_InternationalString *enumeration; /* OPT */ + Z_InternationalString *chronology; /* OPT */ + Z_InternationalString *enumAndChron; /* OPT */ +}; + +struct Z_CircRecord { + bool_t *availableNow; + Z_InternationalString *availablityDate; /* OPT */ + Z_InternationalString *availableThru; /* OPT */ + Z_InternationalString *restrictions; /* OPT */ + Z_InternationalString *itemId; /* OPT */ + bool_t *renewable; + bool_t *onHold; + Z_InternationalString *enumAndChron; /* OPT */ + Z_InternationalString *midspine; /* OPT */ + Z_InternationalString *temporaryLocation; /* OPT */ +}; + +#ifdef __cplusplus +} +#endif +#endif