1 | /* Generated automatically by the YAZ ASN.1 Compiler 0.3 */
|
---|
2 | /* Module-H ElementSpecificationFormat-eSpec-1 */
|
---|
3 |
|
---|
4 | #ifndef z_espec1_H
|
---|
5 | #define z_espec1_H
|
---|
6 |
|
---|
7 | #include <yaz/odr.h>
|
---|
8 | #include <yaz/z-grs.h>
|
---|
9 | #include <yaz/z-core.h>
|
---|
10 | #ifdef __cplusplus
|
---|
11 | extern "C" {
|
---|
12 | #endif
|
---|
13 |
|
---|
14 | typedef struct Z_Espec1 Z_Espec1;
|
---|
15 | YAZ_EXPORT int z_Espec1 (ODR o, Z_Espec1 **p, int opt, const char *name);
|
---|
16 |
|
---|
17 | typedef struct Z_ElementRequestCompositeElementPrimitives Z_ElementRequestCompositeElementPrimitives;
|
---|
18 | YAZ_EXPORT int z_ElementRequestCompositeElementPrimitives (ODR o, Z_ElementRequestCompositeElementPrimitives **p, int opt, const char *name);
|
---|
19 |
|
---|
20 | typedef struct Z_ElementRequestCompositeElementSpecs Z_ElementRequestCompositeElementSpecs;
|
---|
21 | YAZ_EXPORT int z_ElementRequestCompositeElementSpecs (ODR o, Z_ElementRequestCompositeElementSpecs **p, int opt, const char *name);
|
---|
22 |
|
---|
23 | typedef struct Z_ElementRequestCompositeElement Z_ElementRequestCompositeElement;
|
---|
24 | YAZ_EXPORT int z_ElementRequestCompositeElement (ODR o, Z_ElementRequestCompositeElement **p, int opt, const char *name);
|
---|
25 |
|
---|
26 | typedef struct Z_ElementRequest Z_ElementRequest;
|
---|
27 | YAZ_EXPORT int z_ElementRequest (ODR o, Z_ElementRequest **p, int opt, const char *name);
|
---|
28 |
|
---|
29 | typedef struct Z_SimpleElement Z_SimpleElement;
|
---|
30 | YAZ_EXPORT int z_SimpleElement (ODR o, Z_SimpleElement **p, int opt, const char *name);
|
---|
31 |
|
---|
32 | typedef struct Z_SpecificTag Z_SpecificTag;
|
---|
33 | YAZ_EXPORT int z_SpecificTag (ODR o, Z_SpecificTag **p, int opt, const char *name);
|
---|
34 |
|
---|
35 | typedef struct Z_ETagUnit Z_ETagUnit;
|
---|
36 | YAZ_EXPORT int z_ETagUnit (ODR o, Z_ETagUnit **p, int opt, const char *name);
|
---|
37 |
|
---|
38 | typedef struct Z_ETagPath Z_ETagPath;
|
---|
39 | YAZ_EXPORT int z_ETagPath (ODR o, Z_ETagPath **p, int opt, const char *name);
|
---|
40 |
|
---|
41 | typedef struct Z_OccurValues Z_OccurValues;
|
---|
42 | YAZ_EXPORT int z_OccurValues (ODR o, Z_OccurValues **p, int opt, const char *name);
|
---|
43 |
|
---|
44 | typedef struct Z_Occurrences Z_Occurrences;
|
---|
45 | YAZ_EXPORT int z_Occurrences (ODR o, Z_Occurrences **p, int opt, const char *name);
|
---|
46 | #ifdef __cplusplus
|
---|
47 | }
|
---|
48 | #endif
|
---|
49 | #ifdef __cplusplus
|
---|
50 | extern "C" {
|
---|
51 | #endif
|
---|
52 | struct Z_Espec1 {
|
---|
53 | int num_elementSetNames;
|
---|
54 | Z_InternationalString **elementSetNames; /* OPT */
|
---|
55 | Odr_oid *defaultVariantSetId; /* OPT */
|
---|
56 | Z_Variant *defaultVariantRequest; /* OPT */
|
---|
57 | int *defaultTagType; /* OPT */
|
---|
58 | int num_elements;
|
---|
59 | Z_ElementRequest **elements; /* OPT */
|
---|
60 | };
|
---|
61 |
|
---|
62 | struct Z_ElementRequestCompositeElementPrimitives {
|
---|
63 | int num;
|
---|
64 | Z_InternationalString **elements;
|
---|
65 | };
|
---|
66 |
|
---|
67 | struct Z_ElementRequestCompositeElementSpecs {
|
---|
68 | int num;
|
---|
69 | Z_SimpleElement **elements;
|
---|
70 | };
|
---|
71 |
|
---|
72 | struct Z_ElementRequestCompositeElement {
|
---|
73 | int which;
|
---|
74 | union {
|
---|
75 | Z_ElementRequestCompositeElementPrimitives *primitives;
|
---|
76 | Z_ElementRequestCompositeElementSpecs *specs;
|
---|
77 | #define Z_ElementRequestCompositeElement_primitives 1
|
---|
78 | #define Z_ElementRequestCompositeElement_specs 2
|
---|
79 | } u;
|
---|
80 | Z_ETagPath *deliveryTag;
|
---|
81 | Z_Variant *variantRequest; /* OPT */
|
---|
82 | };
|
---|
83 |
|
---|
84 | struct Z_ElementRequest {
|
---|
85 | int which;
|
---|
86 | union {
|
---|
87 | Z_SimpleElement *simpleElement;
|
---|
88 | Z_ElementRequestCompositeElement *compositeElement;
|
---|
89 | #define Z_ERequest_simpleElement 1
|
---|
90 | #define Z_ERequest_compositeElement 2
|
---|
91 | } u;
|
---|
92 | };
|
---|
93 |
|
---|
94 | struct Z_SimpleElement {
|
---|
95 | Z_ETagPath *path;
|
---|
96 | Z_Variant *variantRequest; /* OPT */
|
---|
97 | };
|
---|
98 |
|
---|
99 | struct Z_SpecificTag {
|
---|
100 | int *tagType; /* OPT */
|
---|
101 | Z_StringOrNumeric *tagValue;
|
---|
102 | Z_Occurrences *occurrences; /* OPT */
|
---|
103 | };
|
---|
104 |
|
---|
105 | struct Z_ETagUnit {
|
---|
106 | int which;
|
---|
107 | union {
|
---|
108 | Z_SpecificTag *specificTag;
|
---|
109 | Z_Occurrences *wildThing;
|
---|
110 | Odr_null *wildPath;
|
---|
111 | #define Z_ETagUnit_specificTag 1
|
---|
112 | #define Z_ETagUnit_wildThing 2
|
---|
113 | #define Z_ETagUnit_wildPath 3
|
---|
114 | } u;
|
---|
115 | };
|
---|
116 |
|
---|
117 | struct Z_ETagPath {
|
---|
118 | int num_tags;
|
---|
119 | Z_ETagUnit **tags;
|
---|
120 | };
|
---|
121 |
|
---|
122 | struct Z_OccurValues {
|
---|
123 | int *start;
|
---|
124 | int *howMany; /* OPT */
|
---|
125 | };
|
---|
126 |
|
---|
127 | struct Z_Occurrences {
|
---|
128 | int which;
|
---|
129 | union {
|
---|
130 | Odr_null *all;
|
---|
131 | Odr_null *last;
|
---|
132 | Z_OccurValues *values;
|
---|
133 | #define Z_Occurrences_all 1
|
---|
134 | #define Z_Occurrences_last 2
|
---|
135 | #define Z_Occurrences_values 3
|
---|
136 | } u;
|
---|
137 | };
|
---|
138 |
|
---|
139 | #ifdef __cplusplus
|
---|
140 | }
|
---|
141 | #endif
|
---|
142 | #endif
|
---|