Initial commit
[yaz4j-moved-to-github.git] / dependencies / yaz-2.1.28 / include / yaz / z-opac.h
1 /** \file z-opac.h
2     \brief ASN.1 Module RecordSyntax-opac
3
4     Generated automatically by YAZ ASN.1 Compiler 0.4
5 */
6
7 #ifndef z_opac_H
8 #define z_opac_H
9
10 #include <yaz/odr.h>
11 #include <yaz/z-core.h>
12 #ifdef __cplusplus
13 extern "C" {
14 #endif
15
16 typedef struct Z_OPACRecord Z_OPACRecord;
17 YAZ_EXPORT int z_OPACRecord (ODR o, Z_OPACRecord **p, int opt, const char *name);
18
19 typedef struct Z_HoldingsRecord Z_HoldingsRecord;
20 YAZ_EXPORT int z_HoldingsRecord (ODR o, Z_HoldingsRecord **p, int opt, const char *name);
21
22 typedef struct Z_HoldingsAndCircData Z_HoldingsAndCircData;
23 YAZ_EXPORT int z_HoldingsAndCircData (ODR o, Z_HoldingsAndCircData **p, int opt, const char *name);
24
25 typedef struct Z_Volume Z_Volume;
26 YAZ_EXPORT int z_Volume (ODR o, Z_Volume **p, int opt, const char *name);
27
28 typedef struct Z_CircRecord Z_CircRecord;
29 YAZ_EXPORT int z_CircRecord (ODR o, Z_CircRecord **p, int opt, const char *name);
30 #ifdef __cplusplus
31 }
32 #endif
33 #ifdef __cplusplus
34 extern "C" {
35 #endif
36 struct Z_OPACRecord {
37         Z_External *bibliographicRecord; /* OPT */
38         int num_holdingsData;
39         Z_HoldingsRecord **holdingsData; /* OPT */
40 };
41
42 struct Z_HoldingsRecord {
43         int which;
44         union {
45                 Z_External *marcHoldingsRecord;
46                 Z_HoldingsAndCircData *holdingsAndCirc;
47 #define Z_HoldingsRecord_marcHoldingsRecord 1
48 #define Z_HoldingsRecord_holdingsAndCirc 2
49         } u;
50 };
51
52 struct Z_HoldingsAndCircData {
53         Z_InternationalString *typeOfRecord; /* OPT */
54         Z_InternationalString *encodingLevel; /* OPT */
55         Z_InternationalString *format; /* OPT */
56         Z_InternationalString *receiptAcqStatus; /* OPT */
57         Z_InternationalString *generalRetention; /* OPT */
58         Z_InternationalString *completeness; /* OPT */
59         Z_InternationalString *dateOfReport; /* OPT */
60         Z_InternationalString *nucCode; /* OPT */
61         Z_InternationalString *localLocation; /* OPT */
62         Z_InternationalString *shelvingLocation; /* OPT */
63         Z_InternationalString *callNumber; /* OPT */
64         Z_InternationalString *shelvingData; /* OPT */
65         Z_InternationalString *copyNumber; /* OPT */
66         Z_InternationalString *publicNote; /* OPT */
67         Z_InternationalString *reproductionNote; /* OPT */
68         Z_InternationalString *termsUseRepro; /* OPT */
69         Z_InternationalString *enumAndChron; /* OPT */
70         int num_volumes;
71         Z_Volume **volumes; /* OPT */
72         int num_circulationData;
73         Z_CircRecord **circulationData; /* OPT */
74 };
75
76 struct Z_Volume {
77         Z_InternationalString *enumeration; /* OPT */
78         Z_InternationalString *chronology; /* OPT */
79         Z_InternationalString *enumAndChron; /* OPT */
80 };
81
82 struct Z_CircRecord {
83         bool_t *availableNow;
84         Z_InternationalString *availablityDate; /* OPT */
85         Z_InternationalString *availableThru; /* OPT */
86         Z_InternationalString *restrictions; /* OPT */
87         Z_InternationalString *itemId; /* OPT */
88         bool_t *renewable;
89         bool_t *onHold;
90         Z_InternationalString *enumAndChron; /* OPT */
91         Z_InternationalString *midspine; /* OPT */
92         Z_InternationalString *temporaryLocation; /* OPT */
93 };
94
95 #ifdef __cplusplus
96 }
97 #endif
98 #endif