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 	Odr_bool *availableNow;
84 	Z_InternationalString *availablityDate; /* OPT */
85 	Z_InternationalString *availableThru; /* OPT */
86 	Z_InternationalString *restrictions; /* OPT */
87 	Z_InternationalString *itemId; /* OPT */
88 	Odr_bool *renewable;
89 	Odr_bool *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
99