1 /** \file zes-update0.c
2 \brief ASN.1 Module ESFormat-Update0
4 Generated automatically by YAZ ASN.1 Compiler 0.4
7 #include <yaz/zes-update0.h>
9 int z_IU0UpdateEsRequest (ODR o, Z_IU0UpdateEsRequest **p, int opt, const char *name)
11 if (!odr_sequence_begin (o, p, sizeof(**p), name))
12 return odr_missing(o, opt, name) && odr_ok (o);
14 odr_explicit_tag (o, z_IU0OriginPartToKeep,
15 &(*p)->toKeep, ODR_CONTEXT, 1, 0, "toKeep") &&
16 odr_explicit_tag (o, z_IU0OriginPartNotToKeep,
17 &(*p)->notToKeep, ODR_CONTEXT, 2, 0, "notToKeep") &&
21 int z_IU0UpdateTaskPackage (ODR o, Z_IU0UpdateTaskPackage **p, int opt, const char *name)
23 if (!odr_sequence_begin (o, p, sizeof(**p), name))
24 return odr_missing(o, opt, name) && odr_ok (o);
26 odr_explicit_tag (o, z_IU0OriginPartToKeep,
27 &(*p)->originPart, ODR_CONTEXT, 1, 0, "originPart") &&
28 odr_explicit_tag (o, z_IU0TargetPart,
29 &(*p)->targetPart, ODR_CONTEXT, 2, 0, "targetPart") &&
33 int z_IU0Update (ODR o, Z_IU0Update **p, int opt, const char *name)
35 static Odr_arm arm[] = {
36 {ODR_IMPLICIT, ODR_CONTEXT, 1, Z_IU0Update_esRequest,
37 (Odr_fun) z_IU0UpdateEsRequest, "esRequest"},
38 {ODR_IMPLICIT, ODR_CONTEXT, 2, Z_IU0Update_taskPackage,
39 (Odr_fun) z_IU0UpdateTaskPackage, "taskPackage"},
40 {-1, -1, -1, -1, (Odr_fun) 0, 0}
42 if (!odr_initmember(o, p, sizeof(**p)))
43 return odr_missing(o, opt, name);
44 if (odr_choice(o, arm, &(*p)->u, &(*p)->which, name))
46 if(o->direction == ODR_DECODE)
48 return odr_missing(o, opt, name);
51 int z_IU0OriginPartToKeep (ODR o, Z_IU0OriginPartToKeep **p, int opt, const char *name)
53 if (!odr_sequence_begin (o, p, sizeof(**p), name))
54 return odr_missing(o, opt, name) && odr_ok (o);
56 odr_implicit_tag (o, odr_integer,
57 &(*p)->action, ODR_CONTEXT, 1, 0, "action") &&
58 odr_implicit_tag (o, z_InternationalString,
59 &(*p)->databaseName, ODR_CONTEXT, 2, 0, "databaseName") &&
60 odr_implicit_tag (o, odr_oid,
61 &(*p)->schema, ODR_CONTEXT, 3, 1, "schema") &&
62 odr_implicit_tag (o, z_InternationalString,
63 &(*p)->elementSetName, ODR_CONTEXT, 4, 1, "elementSetName") &&
67 int z_IU0OriginPartNotToKeep (ODR o, Z_IU0OriginPartNotToKeep **p, int opt, const char *name)
69 return z_IU0SuppliedRecords (o, p, opt, name);
72 int z_IU0TargetPart (ODR o, Z_IU0TargetPart **p, int opt, const char *name)
74 if (!odr_sequence_begin (o, p, sizeof(**p), name))
75 return odr_missing(o, opt, name) && odr_ok (o);
77 odr_implicit_tag (o, odr_integer,
78 &(*p)->updateStatus, ODR_CONTEXT, 1, 0, "updateStatus") &&
79 odr_implicit_settag (o, ODR_CONTEXT, 2) &&
80 (odr_sequence_of(o, (Odr_fun) z_DiagRec, &(*p)->globalDiagnostics,
81 &(*p)->num_globalDiagnostics, "globalDiagnostics") || odr_ok(o)) &&
82 odr_implicit_settag (o, ODR_CONTEXT, 3) &&
83 odr_sequence_of(o, (Odr_fun) z_IU0TaskPackageRecordStructure, &(*p)->taskPackageRecords,
84 &(*p)->num_taskPackageRecords, "taskPackageRecords") &&
88 int z_IU0SuppliedRecordsId (ODR o, Z_IU0SuppliedRecordsId **p, int opt, const char *name)
90 static Odr_arm arm[] = {
91 {ODR_IMPLICIT, ODR_CONTEXT, 1, Z_IU0SuppliedRecordsId_timeStamp,
92 (Odr_fun) odr_generalizedtime, "timeStamp"},
93 {ODR_IMPLICIT, ODR_CONTEXT, 2, Z_IU0SuppliedRecordsId_versionNumber,
94 (Odr_fun) z_InternationalString, "versionNumber"},
95 {ODR_IMPLICIT, ODR_CONTEXT, 3, Z_IU0SuppliedRecordsId_previousVersion,
96 (Odr_fun) z_External, "previousVersion"},
97 {-1, -1, -1, -1, (Odr_fun) 0, 0}
99 if (!odr_initmember(o, p, sizeof(**p)))
100 return odr_missing(o, opt, name);
101 if (odr_choice(o, arm, &(*p)->u, &(*p)->which, name))
103 if(o->direction == ODR_DECODE)
105 return odr_missing(o, opt, name);
108 int z_IU0SuppliedRecords_elem (ODR o, Z_IU0SuppliedRecords_elem **p, int opt, const char *name)
110 static Odr_arm arm[] = {
111 {ODR_IMPLICIT, ODR_CONTEXT, 1, Z_IU0SuppliedRecords_elem_number,
112 (Odr_fun) odr_integer, "number"},
113 {ODR_IMPLICIT, ODR_CONTEXT, 2, Z_IU0SuppliedRecords_elem_string,
114 (Odr_fun) z_InternationalString, "string"},
115 {ODR_IMPLICIT, ODR_CONTEXT, 3, Z_IU0SuppliedRecords_elem_opaque,
116 (Odr_fun) odr_octetstring, "opaque"},
117 {-1, -1, -1, -1, (Odr_fun) 0, 0}
119 if (!odr_sequence_begin (o, p, sizeof(**p), name))
120 return odr_missing(o, opt, name) && odr_ok (o);
122 ((odr_constructed_begin (o, &(*p)->u, ODR_CONTEXT, 1, "recordId") &&
123 odr_choice (o, arm, &(*p)->u, &(*p)->which, 0) &&
124 odr_constructed_end (o)) || odr_ok(o)) &&
125 odr_explicit_tag (o, z_IU0SuppliedRecordsId,
126 &(*p)->supplementalId, ODR_CONTEXT, 2, 1, "supplementalId") &&
127 odr_implicit_tag (o, z_IU0CorrelationInfo,
128 &(*p)->correlationInfo, ODR_CONTEXT, 3, 1, "correlationInfo") &&
129 odr_implicit_tag (o, z_External,
130 &(*p)->record, ODR_CONTEXT, 4, 0, "record") &&
131 odr_sequence_end (o);
134 int z_IU0SuppliedRecords (ODR o, Z_IU0SuppliedRecords **p, int opt, const char *name)
136 if (!odr_initmember (o, p, sizeof(**p)))
137 return odr_missing(o, opt, name);
138 if (odr_sequence_of (o, (Odr_fun) z_IU0SuppliedRecords_elem, &(*p)->elements,
141 if(o->direction == ODR_DECODE)
143 return odr_missing(o, opt, name);
146 int z_IU0CorrelationInfo (ODR o, Z_IU0CorrelationInfo **p, int opt, const char *name)
148 if (!odr_sequence_begin (o, p, sizeof(**p), name))
149 return odr_missing(o, opt, name) && odr_ok (o);
151 odr_implicit_tag (o, z_InternationalString,
152 &(*p)->note, ODR_CONTEXT, 1, 1, "note") &&
153 odr_implicit_tag (o, odr_integer,
154 &(*p)->id, ODR_CONTEXT, 2, 1, "id") &&
155 odr_sequence_end (o);
158 int z_IU0TaskPackageRecordStructure (ODR o, Z_IU0TaskPackageRecordStructure **p, int opt, const char *name)
160 static Odr_arm arm[] = {
161 {ODR_IMPLICIT, ODR_CONTEXT, 1, Z_IU0TaskPackageRecordStructure_record,
162 (Odr_fun) z_External, "record"},
163 {ODR_EXPLICIT, ODR_CONTEXT, 2, Z_IU0TaskPackageRecordStructure_diagnostic,
164 (Odr_fun) z_DiagRec, "diagnostic"},
165 {-1, -1, -1, -1, (Odr_fun) 0, 0}
167 if (!odr_sequence_begin (o, p, sizeof(**p), name))
168 return odr_missing(o, opt, name) && odr_ok (o);
170 ((odr_constructed_begin (o, &(*p)->u, ODR_CONTEXT, 1, "recordOrSurDiag") &&
171 odr_choice (o, arm, &(*p)->u, &(*p)->which, 0) &&
172 odr_constructed_end (o)) || odr_ok(o)) &&
173 odr_implicit_tag (o, z_IU0CorrelationInfo,
174 &(*p)->correlationInfo, ODR_CONTEXT, 2, 1, "correlationInfo") &&
175 odr_implicit_tag (o, odr_integer,
176 &(*p)->recordStatus, ODR_CONTEXT, 3, 0, "recordStatus") &&
177 odr_sequence_end (o);