YAZ  5.34.0
z-espec1.h
Go to the documentation of this file.
1 
7 #ifndef z_espec1_H
8 #define z_espec1_H
9 
10 #include <yaz/odr.h>
11 #include <yaz/z-grs.h>
12 #include <yaz/z-core.h>
13 #ifdef __cplusplus
14 extern "C" {
15 #endif
16 
17 typedef struct Z_Espec1 Z_Espec1;
18 YAZ_EXPORT int z_Espec1(ODR o, Z_Espec1 **p, int opt, const char *name);
19 
22 
25 
28 
29 typedef struct Z_ElementRequest Z_ElementRequest;
30 YAZ_EXPORT int z_ElementRequest(ODR o, Z_ElementRequest **p, int opt, const char *name);
31 
32 typedef struct Z_SimpleElement Z_SimpleElement;
33 YAZ_EXPORT int z_SimpleElement(ODR o, Z_SimpleElement **p, int opt, const char *name);
34 
35 typedef struct Z_SpecificTag Z_SpecificTag;
36 YAZ_EXPORT int z_SpecificTag(ODR o, Z_SpecificTag **p, int opt, const char *name);
37 
38 typedef struct Z_ETagUnit Z_ETagUnit;
39 YAZ_EXPORT int z_ETagUnit(ODR o, Z_ETagUnit **p, int opt, const char *name);
40 
41 typedef struct Z_ETagPath Z_ETagPath;
42 YAZ_EXPORT int z_ETagPath(ODR o, Z_ETagPath **p, int opt, const char *name);
43 
44 typedef struct Z_OccurValues Z_OccurValues;
45 YAZ_EXPORT int z_OccurValues(ODR o, Z_OccurValues **p, int opt, const char *name);
46 
47 typedef struct Z_Occurrences Z_Occurrences;
48 YAZ_EXPORT int z_Occurrences(ODR o, Z_Occurrences **p, int opt, const char *name);
49 #ifdef __cplusplus
50 }
51 #endif
52 #ifdef __cplusplus
53 extern "C" {
54 #endif
55 struct Z_Espec1 {
60  Odr_int *defaultTagType; /* OPT */
63 };
64 
66  int num;
68 };
69 
71  int num;
73 };
74 
76  int which;
77  union {
80 #define Z_ElementRequestCompositeElement_primitives 1
81 #define Z_ElementRequestCompositeElement_specs 2
82  } u;
85 };
86 
88  int which;
89  union {
92 #define Z_ERequest_simpleElement 1
93 #define Z_ERequest_compositeElement 2
94  } u;
95 };
96 
100 };
101 
103  Odr_int *tagType; /* OPT */
106 };
107 
108 struct Z_ETagUnit {
109  int which;
110  union {
114 #define Z_ETagUnit_specificTag 1
115 #define Z_ETagUnit_wildThing 2
116 #define Z_ETagUnit_wildPath 3
117  } u;
118 };
119 
120 struct Z_ETagPath {
121  int num_tags;
123 };
124 
127  Odr_int *howMany; /* OPT */
128 };
129 
131  int which;
132  union {
136 #define Z_Occurrences_all 1
137 #define Z_Occurrences_last 2
138 #define Z_Occurrences_values 3
139  } u;
140 };
141 
142 #ifdef __cplusplus
143 }
144 #endif
145 #endif
int opt
Definition: initopt.c:19
char * name
Definition: initopt.c:18
Header for ODR (Open Data Representation)
nmem_int_t Odr_int
Definition: odr.h:47
void Odr_null
Definition: odr.h:105
short Odr_oid
Definition: oid_util.h:42
Z_ETagUnit ** tags
Definition: z-espec1.h:122
int num_tags
Definition: z-espec1.h:121
Z_SpecificTag * specificTag
Definition: z-espec1.h:111
int which
Definition: z-espec1.h:109
union Z_ETagUnit::@88 u
Z_Occurrences * wildThing
Definition: z-espec1.h:112
Odr_null * wildPath
Definition: z-espec1.h:113
Z_InternationalString ** elements
Definition: z-espec1.h:67
Z_ElementRequestCompositeElementSpecs * specs
Definition: z-espec1.h:79
union Z_ElementRequestCompositeElement::@86 u
Z_ElementRequestCompositeElementPrimitives * primitives
Definition: z-espec1.h:78
Z_SimpleElement * simpleElement
Definition: z-espec1.h:90
Z_ElementRequestCompositeElement * compositeElement
Definition: z-espec1.h:91
union Z_ElementRequest::@87 u
int num_elementSetNames
Definition: z-espec1.h:56
Z_ElementRequest ** elements
Definition: z-espec1.h:62
Z_InternationalString ** elementSetNames
Definition: z-espec1.h:57
Z_Variant * defaultVariantRequest
Definition: z-espec1.h:59
Odr_int * defaultTagType
Definition: z-espec1.h:60
int num_elements
Definition: z-espec1.h:61
Odr_oid * defaultVariantSetId
Definition: z-espec1.h:58
Odr_int * howMany
Definition: z-espec1.h:127
Odr_int * start
Definition: z-espec1.h:126
union Z_Occurrences::@89 u
Odr_null * last
Definition: z-espec1.h:134
Odr_null * all
Definition: z-espec1.h:133
Z_OccurValues * values
Definition: z-espec1.h:135
Z_Variant * variantRequest
Definition: z-espec1.h:99
Z_ETagPath * path
Definition: z-espec1.h:98
Z_Occurrences * occurrences
Definition: z-espec1.h:105
Odr_int * tagType
Definition: z-espec1.h:103
Z_StringOrNumeric * tagValue
Definition: z-espec1.h:104
Definition: odr.h:125
ASN.1 Module Z39-50-APDU-1995.
char Z_InternationalString
Definition: z-core.h:301
int z_ElementRequestCompositeElement(ODR o, Z_ElementRequestCompositeElement **p, int opt, const char *name)
Definition: z-espec1.c:56
int z_ElementRequest(ODR o, Z_ElementRequest **p, int opt, const char *name)
Definition: z-espec1.c:78
int z_OccurValues(ODR o, Z_OccurValues **p, int opt, const char *name)
Definition: z-espec1.c:154
int z_ETagUnit(ODR o, Z_ETagUnit **p, int opt, const char *name)
Definition: z-espec1.c:122
int z_ElementRequestCompositeElementPrimitives(ODR o, Z_ElementRequestCompositeElementPrimitives **p, int opt, const char *name)
Definition: z-espec1.c:32
int z_Occurrences(ODR o, Z_Occurrences **p, int opt, const char *name)
Definition: z-espec1.c:166
int z_SpecificTag(ODR o, Z_SpecificTag **p, int opt, const char *name)
Definition: z-espec1.c:108
int z_ETagPath(ODR o, Z_ETagPath **p, int opt, const char *name)
Definition: z-espec1.c:142
int z_ElementRequestCompositeElementSpecs(ODR o, Z_ElementRequestCompositeElementSpecs **p, int opt, const char *name)
Definition: z-espec1.c:44
int z_SimpleElement(ODR o, Z_SimpleElement **p, int opt, const char *name)
Definition: z-espec1.c:96
int z_Espec1(ODR o, Z_Espec1 **p, int opt, const char *name)
Definition: z-espec1.c:12
ASN.1 Module RecordSyntax-generic.