blob: e109a8b307a75acb6f5b38401d7fb5d098909c82 [file] [log] [blame]
vlm0d9046e2005-02-14 20:40:57 +00001
2/*** <<< INCLUDES [PDU] >>> ***/
3
vlmea226772006-09-13 02:51:20 +00004#include "Sequence.h"
5#include "Set.h"
6#include "SequenceOf.h"
7#include "ExtensibleSet.h"
8#include "ExtensibleSequence.h"
9#include "ExtensibleSequence2.h"
10#include "SetOfNULL.h"
11#include "SetOfREAL.h"
12#include "SetOfEnums.h"
13#include "NamedSetOfNULL.h"
14#include "NamedSetOfREAL.h"
15#include "NamedSetOfEnums.h"
16#include "SeqOfZuka.h"
17#include "SetOfChoice.h"
18#include "NamedSetOfChoice.h"
vlm0d9046e2005-02-14 20:40:57 +000019#include <constr_CHOICE.h>
20
21/*** <<< DEPS [PDU] >>> ***/
22
23typedef enum PDU_PR {
24 PDU_PR_NOTHING, /* No components present */
25 PDU_PR_sequence,
26 PDU_PR_set,
vlm422e4ce2005-02-18 16:30:26 +000027 PDU_PR_sequenceOf,
28 PDU_PR_extensibleSet,
29 PDU_PR_extensibleSequence,
vlm1a9741e2005-07-03 05:27:19 +000030 PDU_PR_extensibleSequence2,
vlm6d5cb6b2005-02-24 22:38:43 +000031 PDU_PR_setOfNULL,
vlmfbc0bbb2005-11-07 15:26:47 +000032 PDU_PR_setOfREAL,
vlm6d5cb6b2005-02-24 22:38:43 +000033 PDU_PR_setOfEnums,
vlmfbc0bbb2005-11-07 15:26:47 +000034 PDU_PR_namedSetOfNULL,
35 PDU_PR_namedSetOfREAL,
36 PDU_PR_namedSetOfEnums,
vlm6d5cb6b2005-02-24 22:38:43 +000037 PDU_PR_seqOfZuka,
vlmfbc0bbb2005-11-07 15:26:47 +000038 PDU_PR_setOfChoice,
39 PDU_PR_namedSetOfChoice,
vlm422e4ce2005-02-18 16:30:26 +000040 /* Extensions may appear below */
vlmb1b193e2006-08-18 01:46:46 +000041
vlm0d9046e2005-02-14 20:40:57 +000042} PDU_PR;
vlm0d9046e2005-02-14 20:40:57 +000043
44/*** <<< TYPE-DECLS [PDU] >>> ***/
45
vlm0d9046e2005-02-14 20:40:57 +000046typedef struct PDU {
47 PDU_PR present;
vlm2e774282005-08-14 15:03:31 +000048 union PDU_u {
vlm0d9046e2005-02-14 20:40:57 +000049 Sequence_t sequence;
50 Set_t set;
vlm422e4ce2005-02-18 16:30:26 +000051 SequenceOf_t sequenceOf;
52 ExtensibleSet_t extensibleSet;
53 ExtensibleSequence_t extensibleSequence;
vlm1a9741e2005-07-03 05:27:19 +000054 ExtensibleSequence2_t extensibleSequence2;
vlm6d5cb6b2005-02-24 22:38:43 +000055 SetOfNULL_t setOfNULL;
vlmfbc0bbb2005-11-07 15:26:47 +000056 SetOfREAL_t setOfREAL;
vlm6d5cb6b2005-02-24 22:38:43 +000057 SetOfEnums_t setOfEnums;
vlmfbc0bbb2005-11-07 15:26:47 +000058 NamedSetOfNULL_t namedSetOfNULL;
59 NamedSetOfREAL_t namedSetOfREAL;
60 NamedSetOfEnums_t namedSetOfEnums;
vlm6d5cb6b2005-02-24 22:38:43 +000061 SeqOfZuka_t seqOfZuka;
vlmfbc0bbb2005-11-07 15:26:47 +000062 SetOfChoice_t setOfChoice;
63 NamedSetOfChoice_t namedSetOfChoice;
vlm422e4ce2005-02-18 16:30:26 +000064 /*
65 * This type is extensible,
66 * possible extensions are below.
67 */
vlm0d9046e2005-02-14 20:40:57 +000068 } choice;
69
70 /* Context for parsing across buffer boundaries */
71 asn_struct_ctx_t _asn_ctx;
72} PDU_t;
73
vlm0b567bf2005-03-04 22:18:20 +000074/*** <<< FUNC-DECLS [PDU] >>> ***/
75
76extern asn_TYPE_descriptor_t asn_DEF_PDU;
77
vlm0d9046e2005-02-14 20:40:57 +000078/*** <<< STAT-DEFS [PDU] >>> ***/
79
vlm44fe49a2005-03-04 11:26:08 +000080static asn_TYPE_member_t asn_MBR_PDU_1[] = {
vlm0d9046e2005-02-14 20:40:57 +000081 { ATF_NOFLAGS, 0, offsetof(struct PDU, choice.sequence),
82 .tag = (ASN_TAG_CLASS_CONTEXT | (0 << 2)),
83 .tag_mode = -1, /* IMPLICIT tag at current level */
vlme0fea712005-08-29 10:31:14 +000084 .type = &asn_DEF_Sequence,
vlm0d9046e2005-02-14 20:40:57 +000085 .memb_constraints = 0, /* Defer constraints checking to the member type */
vlm337167e2005-11-26 11:25:14 +000086 .per_constraints = 0, /* PER is not compiled, use -gen-PER */
87 .default_value = 0,
vlm0d9046e2005-02-14 20:40:57 +000088 .name = "sequence"
89 },
90 { ATF_NOFLAGS, 0, offsetof(struct PDU, choice.set),
91 .tag = (ASN_TAG_CLASS_CONTEXT | (1 << 2)),
92 .tag_mode = -1, /* IMPLICIT tag at current level */
vlme0fea712005-08-29 10:31:14 +000093 .type = &asn_DEF_Set,
vlm0d9046e2005-02-14 20:40:57 +000094 .memb_constraints = 0, /* Defer constraints checking to the member type */
vlm337167e2005-11-26 11:25:14 +000095 .per_constraints = 0, /* PER is not compiled, use -gen-PER */
96 .default_value = 0,
vlm0d9046e2005-02-14 20:40:57 +000097 .name = "set"
98 },
vlm422e4ce2005-02-18 16:30:26 +000099 { ATF_NOFLAGS, 0, offsetof(struct PDU, choice.sequenceOf),
vlmfbc0bbb2005-11-07 15:26:47 +0000100 .tag = (ASN_TAG_CLASS_CONTEXT | (2 << 2)),
vlm0d9046e2005-02-14 20:40:57 +0000101 .tag_mode = -1, /* IMPLICIT tag at current level */
vlme0fea712005-08-29 10:31:14 +0000102 .type = &asn_DEF_SequenceOf,
vlm0d9046e2005-02-14 20:40:57 +0000103 .memb_constraints = 0, /* Defer constraints checking to the member type */
vlm337167e2005-11-26 11:25:14 +0000104 .per_constraints = 0, /* PER is not compiled, use -gen-PER */
105 .default_value = 0,
vlm422e4ce2005-02-18 16:30:26 +0000106 .name = "sequenceOf"
107 },
108 { ATF_NOFLAGS, 0, offsetof(struct PDU, choice.extensibleSet),
vlmfbc0bbb2005-11-07 15:26:47 +0000109 .tag = (ASN_TAG_CLASS_CONTEXT | (3 << 2)),
vlm422e4ce2005-02-18 16:30:26 +0000110 .tag_mode = -1, /* IMPLICIT tag at current level */
vlme0fea712005-08-29 10:31:14 +0000111 .type = &asn_DEF_ExtensibleSet,
vlm422e4ce2005-02-18 16:30:26 +0000112 .memb_constraints = 0, /* Defer constraints checking to the member type */
vlm337167e2005-11-26 11:25:14 +0000113 .per_constraints = 0, /* PER is not compiled, use -gen-PER */
114 .default_value = 0,
vlm422e4ce2005-02-18 16:30:26 +0000115 .name = "extensibleSet"
116 },
117 { ATF_NOFLAGS, 0, offsetof(struct PDU, choice.extensibleSequence),
vlmfbc0bbb2005-11-07 15:26:47 +0000118 .tag = (ASN_TAG_CLASS_CONTEXT | (4 << 2)),
vlm422e4ce2005-02-18 16:30:26 +0000119 .tag_mode = -1, /* IMPLICIT tag at current level */
vlme0fea712005-08-29 10:31:14 +0000120 .type = &asn_DEF_ExtensibleSequence,
vlm422e4ce2005-02-18 16:30:26 +0000121 .memb_constraints = 0, /* Defer constraints checking to the member type */
vlm337167e2005-11-26 11:25:14 +0000122 .per_constraints = 0, /* PER is not compiled, use -gen-PER */
123 .default_value = 0,
vlm422e4ce2005-02-18 16:30:26 +0000124 .name = "extensibleSequence"
vlm0d9046e2005-02-14 20:40:57 +0000125 },
vlm1a9741e2005-07-03 05:27:19 +0000126 { ATF_NOFLAGS, 0, offsetof(struct PDU, choice.extensibleSequence2),
vlmfbc0bbb2005-11-07 15:26:47 +0000127 .tag = (ASN_TAG_CLASS_CONTEXT | (5 << 2)),
vlm6d5cb6b2005-02-24 22:38:43 +0000128 .tag_mode = -1, /* IMPLICIT tag at current level */
vlme0fea712005-08-29 10:31:14 +0000129 .type = &asn_DEF_ExtensibleSequence2,
vlm1a9741e2005-07-03 05:27:19 +0000130 .memb_constraints = 0, /* Defer constraints checking to the member type */
vlm337167e2005-11-26 11:25:14 +0000131 .per_constraints = 0, /* PER is not compiled, use -gen-PER */
132 .default_value = 0,
vlm1a9741e2005-07-03 05:27:19 +0000133 .name = "extensibleSequence2"
134 },
135 { ATF_NOFLAGS, 0, offsetof(struct PDU, choice.setOfNULL),
vlmfbc0bbb2005-11-07 15:26:47 +0000136 .tag = (ASN_TAG_CLASS_CONTEXT | (6 << 2)),
vlm1a9741e2005-07-03 05:27:19 +0000137 .tag_mode = -1, /* IMPLICIT tag at current level */
vlme0fea712005-08-29 10:31:14 +0000138 .type = &asn_DEF_SetOfNULL,
vlm6d5cb6b2005-02-24 22:38:43 +0000139 .memb_constraints = 0, /* Defer constraints checking to the member type */
vlm337167e2005-11-26 11:25:14 +0000140 .per_constraints = 0, /* PER is not compiled, use -gen-PER */
141 .default_value = 0,
vlm6d5cb6b2005-02-24 22:38:43 +0000142 .name = "setOfNULL"
143 },
vlmfbc0bbb2005-11-07 15:26:47 +0000144 { ATF_NOFLAGS, 0, offsetof(struct PDU, choice.setOfREAL),
145 .tag = (ASN_TAG_CLASS_CONTEXT | (7 << 2)),
146 .tag_mode = -1, /* IMPLICIT tag at current level */
147 .type = &asn_DEF_SetOfREAL,
148 .memb_constraints = 0, /* Defer constraints checking to the member type */
vlm337167e2005-11-26 11:25:14 +0000149 .per_constraints = 0, /* PER is not compiled, use -gen-PER */
150 .default_value = 0,
vlmfbc0bbb2005-11-07 15:26:47 +0000151 .name = "setOfREAL"
152 },
vlm6d5cb6b2005-02-24 22:38:43 +0000153 { ATF_NOFLAGS, 0, offsetof(struct PDU, choice.setOfEnums),
vlm1a9741e2005-07-03 05:27:19 +0000154 .tag = (ASN_TAG_CLASS_CONTEXT | (8 << 2)),
vlm6d5cb6b2005-02-24 22:38:43 +0000155 .tag_mode = -1, /* IMPLICIT tag at current level */
vlme0fea712005-08-29 10:31:14 +0000156 .type = &asn_DEF_SetOfEnums,
vlm6d5cb6b2005-02-24 22:38:43 +0000157 .memb_constraints = 0, /* Defer constraints checking to the member type */
vlm337167e2005-11-26 11:25:14 +0000158 .per_constraints = 0, /* PER is not compiled, use -gen-PER */
159 .default_value = 0,
vlm6d5cb6b2005-02-24 22:38:43 +0000160 .name = "setOfEnums"
161 },
vlmfbc0bbb2005-11-07 15:26:47 +0000162 { ATF_NOFLAGS, 0, offsetof(struct PDU, choice.namedSetOfNULL),
vlm1a9741e2005-07-03 05:27:19 +0000163 .tag = (ASN_TAG_CLASS_CONTEXT | (9 << 2)),
vlm6d5cb6b2005-02-24 22:38:43 +0000164 .tag_mode = -1, /* IMPLICIT tag at current level */
vlmfbc0bbb2005-11-07 15:26:47 +0000165 .type = &asn_DEF_NamedSetOfNULL,
166 .memb_constraints = 0, /* Defer constraints checking to the member type */
vlm337167e2005-11-26 11:25:14 +0000167 .per_constraints = 0, /* PER is not compiled, use -gen-PER */
168 .default_value = 0,
vlmfbc0bbb2005-11-07 15:26:47 +0000169 .name = "namedSetOfNULL"
170 },
171 { ATF_NOFLAGS, 0, offsetof(struct PDU, choice.namedSetOfREAL),
172 .tag = (ASN_TAG_CLASS_CONTEXT | (10 << 2)),
173 .tag_mode = -1, /* IMPLICIT tag at current level */
174 .type = &asn_DEF_NamedSetOfREAL,
175 .memb_constraints = 0, /* Defer constraints checking to the member type */
vlm337167e2005-11-26 11:25:14 +0000176 .per_constraints = 0, /* PER is not compiled, use -gen-PER */
177 .default_value = 0,
vlmfbc0bbb2005-11-07 15:26:47 +0000178 .name = "namedSetOfREAL"
179 },
180 { ATF_NOFLAGS, 0, offsetof(struct PDU, choice.namedSetOfEnums),
181 .tag = (ASN_TAG_CLASS_CONTEXT | (11 << 2)),
182 .tag_mode = -1, /* IMPLICIT tag at current level */
183 .type = &asn_DEF_NamedSetOfEnums,
184 .memb_constraints = 0, /* Defer constraints checking to the member type */
vlm337167e2005-11-26 11:25:14 +0000185 .per_constraints = 0, /* PER is not compiled, use -gen-PER */
186 .default_value = 0,
vlmfbc0bbb2005-11-07 15:26:47 +0000187 .name = "namedSetOfEnums"
188 },
189 { ATF_NOFLAGS, 0, offsetof(struct PDU, choice.seqOfZuka),
190 .tag = (ASN_TAG_CLASS_CONTEXT | (12 << 2)),
191 .tag_mode = -1, /* IMPLICIT tag at current level */
vlme0fea712005-08-29 10:31:14 +0000192 .type = &asn_DEF_SeqOfZuka,
vlm6d5cb6b2005-02-24 22:38:43 +0000193 .memb_constraints = 0, /* Defer constraints checking to the member type */
vlm337167e2005-11-26 11:25:14 +0000194 .per_constraints = 0, /* PER is not compiled, use -gen-PER */
195 .default_value = 0,
vlm6d5cb6b2005-02-24 22:38:43 +0000196 .name = "seqOfZuka"
197 },
vlmfbc0bbb2005-11-07 15:26:47 +0000198 { ATF_NOFLAGS, 0, offsetof(struct PDU, choice.setOfChoice),
199 .tag = (ASN_TAG_CLASS_CONTEXT | (13 << 2)),
200 .tag_mode = -1, /* IMPLICIT tag at current level */
201 .type = &asn_DEF_SetOfChoice,
202 .memb_constraints = 0, /* Defer constraints checking to the member type */
vlm337167e2005-11-26 11:25:14 +0000203 .per_constraints = 0, /* PER is not compiled, use -gen-PER */
204 .default_value = 0,
vlmfbc0bbb2005-11-07 15:26:47 +0000205 .name = "setOfChoice"
206 },
207 { ATF_NOFLAGS, 0, offsetof(struct PDU, choice.namedSetOfChoice),
208 .tag = (ASN_TAG_CLASS_CONTEXT | (14 << 2)),
209 .tag_mode = -1, /* IMPLICIT tag at current level */
210 .type = &asn_DEF_NamedSetOfChoice,
211 .memb_constraints = 0, /* Defer constraints checking to the member type */
vlm337167e2005-11-26 11:25:14 +0000212 .per_constraints = 0, /* PER is not compiled, use -gen-PER */
213 .default_value = 0,
vlmfbc0bbb2005-11-07 15:26:47 +0000214 .name = "namedSetOfChoice"
215 },
vlm0d9046e2005-02-14 20:40:57 +0000216};
vlm337167e2005-11-26 11:25:14 +0000217static asn_TYPE_tag2member_t asn_MAP_PDU_tag2el_1[] = {
vlm0d9046e2005-02-14 20:40:57 +0000218 { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* sequence at 19 */
219 { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 }, /* set at 20 */
vlmfbc0bbb2005-11-07 15:26:47 +0000220 { (ASN_TAG_CLASS_CONTEXT | (2 << 2)), 2, 0, 0 }, /* sequenceOf at 21 */
221 { (ASN_TAG_CLASS_CONTEXT | (3 << 2)), 3, 0, 0 }, /* extensibleSet at 22 */
222 { (ASN_TAG_CLASS_CONTEXT | (4 << 2)), 4, 0, 0 }, /* extensibleSequence at 23 */
223 { (ASN_TAG_CLASS_CONTEXT | (5 << 2)), 5, 0, 0 }, /* extensibleSequence2 at 24 */
224 { (ASN_TAG_CLASS_CONTEXT | (6 << 2)), 6, 0, 0 }, /* setOfNULL at 25 */
225 { (ASN_TAG_CLASS_CONTEXT | (7 << 2)), 7, 0, 0 }, /* setOfREAL at 26 */
vlm1a9741e2005-07-03 05:27:19 +0000226 { (ASN_TAG_CLASS_CONTEXT | (8 << 2)), 8, 0, 0 }, /* setOfEnums at 27 */
vlmfbc0bbb2005-11-07 15:26:47 +0000227 { (ASN_TAG_CLASS_CONTEXT | (9 << 2)), 9, 0, 0 }, /* namedSetOfNULL at 28 */
228 { (ASN_TAG_CLASS_CONTEXT | (10 << 2)), 10, 0, 0 }, /* namedSetOfREAL at 29 */
229 { (ASN_TAG_CLASS_CONTEXT | (11 << 2)), 11, 0, 0 }, /* namedSetOfEnums at 30 */
230 { (ASN_TAG_CLASS_CONTEXT | (12 << 2)), 12, 0, 0 }, /* seqOfZuka at 31 */
231 { (ASN_TAG_CLASS_CONTEXT | (13 << 2)), 13, 0, 0 }, /* setOfChoice at 32 */
232 { (ASN_TAG_CLASS_CONTEXT | (14 << 2)), 14, 0, 0 } /* namedSetOfChoice at 33 */
vlm0d9046e2005-02-14 20:40:57 +0000233};
vlm337167e2005-11-26 11:25:14 +0000234static asn_CHOICE_specifics_t asn_SPC_PDU_specs_1 = {
vlm0d9046e2005-02-14 20:40:57 +0000235 sizeof(struct PDU),
236 offsetof(struct PDU, _asn_ctx),
237 offsetof(struct PDU, present),
238 sizeof(((struct PDU *)0)->present),
vlm337167e2005-11-26 11:25:14 +0000239 asn_MAP_PDU_tag2el_1,
vlmfbc0bbb2005-11-07 15:26:47 +0000240 15, /* Count of tags in the map */
vlm337167e2005-11-26 11:25:14 +0000241 .canonical_order = 0,
242 .ext_start = 15 /* Extensions start */
vlm0d9046e2005-02-14 20:40:57 +0000243};
244asn_TYPE_descriptor_t asn_DEF_PDU = {
245 "PDU",
246 "PDU",
247 CHOICE_free,
248 CHOICE_print,
249 CHOICE_constraint,
250 CHOICE_decode_ber,
251 CHOICE_encode_der,
252 CHOICE_decode_xer,
253 CHOICE_encode_xer,
vlmb1b193e2006-08-18 01:46:46 +0000254 0, 0, /* No PER support, use "-gen-PER" to enable */
vlm0d9046e2005-02-14 20:40:57 +0000255 CHOICE_outmost_tag,
256 0, /* No effective tags (pointer) */
257 0, /* No effective tags (count) */
258 0, /* No tags (pointer) */
259 0, /* No tags (count) */
vlm337167e2005-11-26 11:25:14 +0000260 0, /* No PER visible constraints */
vlm44fe49a2005-03-04 11:26:08 +0000261 asn_MBR_PDU_1,
vlmfbc0bbb2005-11-07 15:26:47 +0000262 15, /* Elements count */
vlm337167e2005-11-26 11:25:14 +0000263 &asn_SPC_PDU_specs_1 /* Additional specs */
vlm0d9046e2005-02-14 20:40:57 +0000264};
265
266
267/*** <<< INCLUDES [Sequence] >>> ***/
268
269#include <INTEGER.h>
vlm0d9046e2005-02-14 20:40:57 +0000270#include <BIT_STRING.h>
271#include <UTF8String.h>
272#include <constr_SEQUENCE.h>
273
vlm0b567bf2005-03-04 22:18:20 +0000274/*** <<< FWD-DECLS [Sequence] >>> ***/
vlm0d9046e2005-02-14 20:40:57 +0000275
vlm5feb7522005-03-04 23:50:56 +0000276struct Sequence;
vlm0d9046e2005-02-14 20:40:57 +0000277
278/*** <<< TYPE-DECLS [Sequence] >>> ***/
279
vlm0d9046e2005-02-14 20:40:57 +0000280typedef struct Sequence {
281 INTEGER_t integer;
282 struct Sequence *sequence /* OPTIONAL */;
283 BIT_STRING_t *bits /* OPTIONAL */;
284 UTF8String_t string;
285
286 /* Context for parsing across buffer boundaries */
287 asn_struct_ctx_t _asn_ctx;
288} Sequence_t;
289
vlm0b567bf2005-03-04 22:18:20 +0000290/*** <<< FUNC-DECLS [Sequence] >>> ***/
291
292extern asn_TYPE_descriptor_t asn_DEF_Sequence;
293
294/*** <<< POST-INCLUDE [Sequence] >>> ***/
295
vlmea226772006-09-13 02:51:20 +0000296#include "Sequence.h"
vlm0b567bf2005-03-04 22:18:20 +0000297
vlm0d9046e2005-02-14 20:40:57 +0000298/*** <<< STAT-DEFS [Sequence] >>> ***/
299
vlm44fe49a2005-03-04 11:26:08 +0000300static asn_TYPE_member_t asn_MBR_Sequence_1[] = {
vlm0d9046e2005-02-14 20:40:57 +0000301 { ATF_NOFLAGS, 0, offsetof(struct Sequence, integer),
302 .tag = (ASN_TAG_CLASS_CONTEXT | (0 << 2)),
303 .tag_mode = -1, /* IMPLICIT tag at current level */
vlme0fea712005-08-29 10:31:14 +0000304 .type = &asn_DEF_INTEGER,
vlm0d9046e2005-02-14 20:40:57 +0000305 .memb_constraints = 0, /* Defer constraints checking to the member type */
vlm337167e2005-11-26 11:25:14 +0000306 .per_constraints = 0, /* PER is not compiled, use -gen-PER */
307 .default_value = 0,
vlm0d9046e2005-02-14 20:40:57 +0000308 .name = "integer"
309 },
310 { ATF_POINTER, 2, offsetof(struct Sequence, sequence),
311 .tag = (ASN_TAG_CLASS_CONTEXT | (1 << 2)),
312 .tag_mode = -1, /* IMPLICIT tag at current level */
vlme0fea712005-08-29 10:31:14 +0000313 .type = &asn_DEF_Sequence,
vlm0d9046e2005-02-14 20:40:57 +0000314 .memb_constraints = 0, /* Defer constraints checking to the member type */
vlm337167e2005-11-26 11:25:14 +0000315 .per_constraints = 0, /* PER is not compiled, use -gen-PER */
316 .default_value = 0,
vlm0d9046e2005-02-14 20:40:57 +0000317 .name = "sequence"
318 },
319 { ATF_POINTER, 1, offsetof(struct Sequence, bits),
320 .tag = (ASN_TAG_CLASS_CONTEXT | (2 << 2)),
321 .tag_mode = -1, /* IMPLICIT tag at current level */
vlme0fea712005-08-29 10:31:14 +0000322 .type = &asn_DEF_BIT_STRING,
vlm0d9046e2005-02-14 20:40:57 +0000323 .memb_constraints = 0, /* Defer constraints checking to the member type */
vlm337167e2005-11-26 11:25:14 +0000324 .per_constraints = 0, /* PER is not compiled, use -gen-PER */
325 .default_value = 0,
vlm0d9046e2005-02-14 20:40:57 +0000326 .name = "bits"
327 },
328 { ATF_NOFLAGS, 0, offsetof(struct Sequence, string),
329 .tag = (ASN_TAG_CLASS_CONTEXT | (3 << 2)),
330 .tag_mode = -1, /* IMPLICIT tag at current level */
vlme0fea712005-08-29 10:31:14 +0000331 .type = &asn_DEF_UTF8String,
vlm0d9046e2005-02-14 20:40:57 +0000332 .memb_constraints = 0, /* Defer constraints checking to the member type */
vlm337167e2005-11-26 11:25:14 +0000333 .per_constraints = 0, /* PER is not compiled, use -gen-PER */
334 .default_value = 0,
vlm0d9046e2005-02-14 20:40:57 +0000335 .name = "string"
336 },
337};
vlm337167e2005-11-26 11:25:14 +0000338static ber_tlv_tag_t asn_DEF_Sequence_tags_1[] = {
vlm0d9046e2005-02-14 20:40:57 +0000339 (ASN_TAG_CLASS_UNIVERSAL | (16 << 2))
340};
vlm337167e2005-11-26 11:25:14 +0000341static asn_TYPE_tag2member_t asn_MAP_Sequence_tag2el_1[] = {
vlmfbc0bbb2005-11-07 15:26:47 +0000342 { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* integer at 38 */
343 { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 }, /* sequence at 39 */
344 { (ASN_TAG_CLASS_CONTEXT | (2 << 2)), 2, 0, 0 }, /* bits at 40 */
345 { (ASN_TAG_CLASS_CONTEXT | (3 << 2)), 3, 0, 0 } /* string at 41 */
vlm0d9046e2005-02-14 20:40:57 +0000346};
vlm337167e2005-11-26 11:25:14 +0000347static asn_SEQUENCE_specifics_t asn_SPC_Sequence_specs_1 = {
vlm0d9046e2005-02-14 20:40:57 +0000348 sizeof(struct Sequence),
349 offsetof(struct Sequence, _asn_ctx),
vlm337167e2005-11-26 11:25:14 +0000350 asn_MAP_Sequence_tag2el_1,
vlm0d9046e2005-02-14 20:40:57 +0000351 4, /* Count of tags in the map */
vlm337167e2005-11-26 11:25:14 +0000352 0, 0, 0, /* Optional elements (not needed) */
vlm0d9046e2005-02-14 20:40:57 +0000353 -1, /* Start extensions */
354 -1 /* Stop extensions */
355};
356asn_TYPE_descriptor_t asn_DEF_Sequence = {
357 "Sequence",
358 "Sequence",
359 SEQUENCE_free,
360 SEQUENCE_print,
361 SEQUENCE_constraint,
362 SEQUENCE_decode_ber,
363 SEQUENCE_encode_der,
364 SEQUENCE_decode_xer,
365 SEQUENCE_encode_xer,
vlmb1b193e2006-08-18 01:46:46 +0000366 0, 0, /* No PER support, use "-gen-PER" to enable */
vlm0d9046e2005-02-14 20:40:57 +0000367 0, /* Use generic outmost tag fetcher */
vlm337167e2005-11-26 11:25:14 +0000368 asn_DEF_Sequence_tags_1,
369 sizeof(asn_DEF_Sequence_tags_1)
370 /sizeof(asn_DEF_Sequence_tags_1[0]), /* 1 */
371 asn_DEF_Sequence_tags_1, /* Same as above */
372 sizeof(asn_DEF_Sequence_tags_1)
373 /sizeof(asn_DEF_Sequence_tags_1[0]), /* 1 */
374 0, /* No PER visible constraints */
vlm44fe49a2005-03-04 11:26:08 +0000375 asn_MBR_Sequence_1,
vlm0d9046e2005-02-14 20:40:57 +0000376 4, /* Elements count */
vlm337167e2005-11-26 11:25:14 +0000377 &asn_SPC_Sequence_specs_1 /* Additional specs */
vlm0d9046e2005-02-14 20:40:57 +0000378};
379
380
381/*** <<< INCLUDES [Set] >>> ***/
382
383#include <RELATIVE-OID.h>
384#include <OCTET_STRING.h>
385#include <constr_SET.h>
386
387/*** <<< DEPS [Set] >>> ***/
388
389
390/*
391 * Method of determining the components presence
392 */
393typedef enum Set_PR {
394 Set_PR_roid, /* Member roid is present */
395 Set_PR_opaque, /* Member opaque is present */
396} Set_PR;
vlm0d9046e2005-02-14 20:40:57 +0000397
398/*** <<< TYPE-DECLS [Set] >>> ***/
399
vlm0d9046e2005-02-14 20:40:57 +0000400typedef struct Set {
401 RELATIVE_OID_t roid;
402 OCTET_STRING_t *opaque /* OPTIONAL */;
403
404 /* Presence bitmask: ASN_SET_ISPRESENT(pSet, Set_PR_x) */
405 unsigned int _presence_map
406 [((2+(8*sizeof(unsigned int))-1)/(8*sizeof(unsigned int)))];
407
408 /* Context for parsing across buffer boundaries */
409 asn_struct_ctx_t _asn_ctx;
410} Set_t;
411
vlm0b567bf2005-03-04 22:18:20 +0000412/*** <<< FUNC-DECLS [Set] >>> ***/
413
414extern asn_TYPE_descriptor_t asn_DEF_Set;
415
vlm0d9046e2005-02-14 20:40:57 +0000416/*** <<< STAT-DEFS [Set] >>> ***/
417
vlm44fe49a2005-03-04 11:26:08 +0000418static asn_TYPE_member_t asn_MBR_Set_1[] = {
vlm0d9046e2005-02-14 20:40:57 +0000419 { ATF_NOFLAGS, 0, offsetof(struct Set, roid),
420 .tag = (ASN_TAG_CLASS_CONTEXT | (0 << 2)),
421 .tag_mode = -1, /* IMPLICIT tag at current level */
vlme0fea712005-08-29 10:31:14 +0000422 .type = &asn_DEF_RELATIVE_OID,
vlm0d9046e2005-02-14 20:40:57 +0000423 .memb_constraints = 0, /* Defer constraints checking to the member type */
vlm337167e2005-11-26 11:25:14 +0000424 .per_constraints = 0, /* PER is not compiled, use -gen-PER */
425 .default_value = 0,
vlm0d9046e2005-02-14 20:40:57 +0000426 .name = "roid"
427 },
428 { ATF_POINTER, 1, offsetof(struct Set, opaque),
429 .tag = (ASN_TAG_CLASS_CONTEXT | (1 << 2)),
430 .tag_mode = -1, /* IMPLICIT tag at current level */
vlme0fea712005-08-29 10:31:14 +0000431 .type = &asn_DEF_OCTET_STRING,
vlm0d9046e2005-02-14 20:40:57 +0000432 .memb_constraints = 0, /* Defer constraints checking to the member type */
vlm337167e2005-11-26 11:25:14 +0000433 .per_constraints = 0, /* PER is not compiled, use -gen-PER */
434 .default_value = 0,
vlm0d9046e2005-02-14 20:40:57 +0000435 .name = "opaque"
436 },
437};
vlm337167e2005-11-26 11:25:14 +0000438static ber_tlv_tag_t asn_DEF_Set_tags_1[] = {
vlm0d9046e2005-02-14 20:40:57 +0000439 (ASN_TAG_CLASS_UNIVERSAL | (17 << 2))
440};
vlm337167e2005-11-26 11:25:14 +0000441static asn_TYPE_tag2member_t asn_MAP_Set_tag2el_1[] = {
vlmfbc0bbb2005-11-07 15:26:47 +0000442 { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* roid at 45 */
443 { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 } /* opaque at 46 */
vlm0d9046e2005-02-14 20:40:57 +0000444};
vlm337167e2005-11-26 11:25:14 +0000445static uint8_t asn_MAP_Set_mmap_1[(2 + (8 * sizeof(unsigned int)) - 1) / 8] = {
vlm0d9046e2005-02-14 20:40:57 +0000446 (1 << 7) | (0 << 6)
447};
vlm337167e2005-11-26 11:25:14 +0000448static asn_SET_specifics_t asn_SPC_Set_specs_1 = {
vlm0d9046e2005-02-14 20:40:57 +0000449 sizeof(struct Set),
450 offsetof(struct Set, _asn_ctx),
451 offsetof(struct Set, _presence_map),
vlm337167e2005-11-26 11:25:14 +0000452 asn_MAP_Set_tag2el_1,
vlm0d9046e2005-02-14 20:40:57 +0000453 2, /* Count of tags in the map */
vlm337167e2005-11-26 11:25:14 +0000454 asn_MAP_Set_tag2el_1, /* Same as above */
vlm6d5cb6b2005-02-24 22:38:43 +0000455 2, /* Count of tags in the CXER map */
vlm0d9046e2005-02-14 20:40:57 +0000456 0, /* Whether extensible */
vlm337167e2005-11-26 11:25:14 +0000457 (unsigned int *)asn_MAP_Set_mmap_1 /* Mandatory elements map */
vlm0d9046e2005-02-14 20:40:57 +0000458};
459asn_TYPE_descriptor_t asn_DEF_Set = {
460 "Set",
461 "Set",
462 SET_free,
463 SET_print,
464 SET_constraint,
465 SET_decode_ber,
466 SET_encode_der,
467 SET_decode_xer,
468 SET_encode_xer,
vlmb1b193e2006-08-18 01:46:46 +0000469 0, 0, /* No PER support, use "-gen-PER" to enable */
vlm0d9046e2005-02-14 20:40:57 +0000470 0, /* Use generic outmost tag fetcher */
vlm337167e2005-11-26 11:25:14 +0000471 asn_DEF_Set_tags_1,
472 sizeof(asn_DEF_Set_tags_1)
473 /sizeof(asn_DEF_Set_tags_1[0]), /* 1 */
474 asn_DEF_Set_tags_1, /* Same as above */
475 sizeof(asn_DEF_Set_tags_1)
476 /sizeof(asn_DEF_Set_tags_1[0]), /* 1 */
477 0, /* No PER visible constraints */
vlm44fe49a2005-03-04 11:26:08 +0000478 asn_MBR_Set_1,
vlm0d9046e2005-02-14 20:40:57 +0000479 2, /* Elements count */
vlm337167e2005-11-26 11:25:14 +0000480 &asn_SPC_Set_specs_1 /* Additional specs */
vlm0d9046e2005-02-14 20:40:57 +0000481};
482
483
vlm422e4ce2005-02-18 16:30:26 +0000484/*** <<< INCLUDES [ExtensibleSet] >>> ***/
485
486#include <UTF8String.h>
vlm9ef0e492005-03-10 11:20:47 +0000487#include <ENUMERATED.h>
vlm422e4ce2005-02-18 16:30:26 +0000488#include <constr_SET.h>
489
490/*** <<< DEPS [ExtensibleSet] >>> ***/
491
492
493/*
494 * Method of determining the components presence
495 */
496typedef enum ExtensibleSet_PR {
497 ExtensibleSet_PR_string, /* Member string is present */
vlm9ef0e492005-03-10 11:20:47 +0000498 ExtensibleSet_PR_enum, /* Member enum is present */
vlm422e4ce2005-02-18 16:30:26 +0000499} ExtensibleSet_PR;
vlm9ef0e492005-03-10 11:20:47 +0000500typedef enum Enum {
501 enum_b = 0,
502 enum_a = 1
vlm7c8aa5e2006-03-21 07:25:18 +0000503} e_enum;
vlm422e4ce2005-02-18 16:30:26 +0000504
505/*** <<< TYPE-DECLS [ExtensibleSet] >>> ***/
506
vlm422e4ce2005-02-18 16:30:26 +0000507typedef struct ExtensibleSet {
508 UTF8String_t *string /* OPTIONAL */;
509 /*
510 * This type is extensible,
511 * possible extensions are below.
512 */
vlm9ef0e492005-03-10 11:20:47 +0000513 ENUMERATED_t *Enum;
vlm422e4ce2005-02-18 16:30:26 +0000514
515 /* Presence bitmask: ASN_SET_ISPRESENT(pExtensibleSet, ExtensibleSet_PR_x) */
516 unsigned int _presence_map
vlm9ef0e492005-03-10 11:20:47 +0000517 [((2+(8*sizeof(unsigned int))-1)/(8*sizeof(unsigned int)))];
vlm422e4ce2005-02-18 16:30:26 +0000518
519 /* Context for parsing across buffer boundaries */
520 asn_struct_ctx_t _asn_ctx;
521} ExtensibleSet_t;
522
vlm0b567bf2005-03-04 22:18:20 +0000523/*** <<< FUNC-DECLS [ExtensibleSet] >>> ***/
524
vlm9ef0e492005-03-10 11:20:47 +0000525/* extern asn_TYPE_descriptor_t asn_DEF_enum_4; // (Use -fall-defs-global to expose) */
vlm0b567bf2005-03-04 22:18:20 +0000526extern asn_TYPE_descriptor_t asn_DEF_ExtensibleSet;
527
vlm9ef0e492005-03-10 11:20:47 +0000528/*** <<< CODE [ExtensibleSet] >>> ***/
529
530static int
531enum_4_constraint(asn_TYPE_descriptor_t *td, const void *sptr,
vlmaf68ef52006-07-13 11:19:01 +0000532 asn_app_constraint_failed_f *ctfailcb, void *app_key) {
vlm9ef0e492005-03-10 11:20:47 +0000533 /* Replace with underlying type checker */
534 td->check_constraints = asn_DEF_ENUMERATED.check_constraints;
vlmaf68ef52006-07-13 11:19:01 +0000535 return td->check_constraints(td, sptr, ctfailcb, app_key);
vlm9ef0e492005-03-10 11:20:47 +0000536}
537
538/*
539 * This type is implemented using ENUMERATED,
540 * so here we adjust the DEF accordingly.
541 */
542static void
543enum_4_inherit_TYPE_descriptor(asn_TYPE_descriptor_t *td) {
544 td->free_struct = asn_DEF_ENUMERATED.free_struct;
545 td->print_struct = asn_DEF_ENUMERATED.print_struct;
546 td->ber_decoder = asn_DEF_ENUMERATED.ber_decoder;
547 td->der_encoder = asn_DEF_ENUMERATED.der_encoder;
548 td->xer_decoder = asn_DEF_ENUMERATED.xer_decoder;
549 td->xer_encoder = asn_DEF_ENUMERATED.xer_encoder;
vlm337167e2005-11-26 11:25:14 +0000550 td->uper_decoder = asn_DEF_ENUMERATED.uper_decoder;
vlmb1b193e2006-08-18 01:46:46 +0000551 td->uper_encoder = asn_DEF_ENUMERATED.uper_encoder;
vlm337167e2005-11-26 11:25:14 +0000552 if(!td->per_constraints)
553 td->per_constraints = asn_DEF_ENUMERATED.per_constraints;
vlm9ef0e492005-03-10 11:20:47 +0000554 td->elements = asn_DEF_ENUMERATED.elements;
555 td->elements_count = asn_DEF_ENUMERATED.elements_count;
vlm541def92005-03-29 19:05:37 +0000556 /* td->specifics = asn_DEF_ENUMERATED.specifics; // Defined explicitly */
vlm9ef0e492005-03-10 11:20:47 +0000557}
558
559static void
560enum_4_free(asn_TYPE_descriptor_t *td,
561 void *struct_ptr, int contents_only) {
562 enum_4_inherit_TYPE_descriptor(td);
563 td->free_struct(td, struct_ptr, contents_only);
564}
565
566static int
567enum_4_print(asn_TYPE_descriptor_t *td, const void *struct_ptr,
568 int ilevel, asn_app_consume_bytes_f *cb, void *app_key) {
569 enum_4_inherit_TYPE_descriptor(td);
570 return td->print_struct(td, struct_ptr, ilevel, cb, app_key);
571}
572
573static asn_dec_rval_t
574enum_4_decode_ber(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td,
vlmc04faea2005-03-17 21:57:19 +0000575 void **structure, const void *bufptr, size_t size, int tag_mode) {
vlm9ef0e492005-03-10 11:20:47 +0000576 enum_4_inherit_TYPE_descriptor(td);
577 return td->ber_decoder(opt_codec_ctx, td, structure, bufptr, size, tag_mode);
578}
579
580static asn_enc_rval_t
581enum_4_encode_der(asn_TYPE_descriptor_t *td,
582 void *structure, int tag_mode, ber_tlv_tag_t tag,
583 asn_app_consume_bytes_f *cb, void *app_key) {
584 enum_4_inherit_TYPE_descriptor(td);
585 return td->der_encoder(td, structure, tag_mode, tag, cb, app_key);
586}
587
588static asn_dec_rval_t
589enum_4_decode_xer(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td,
vlmc04faea2005-03-17 21:57:19 +0000590 void **structure, const char *opt_mname, const void *bufptr, size_t size) {
vlm9ef0e492005-03-10 11:20:47 +0000591 enum_4_inherit_TYPE_descriptor(td);
592 return td->xer_decoder(opt_codec_ctx, td, structure, opt_mname, bufptr, size);
593}
594
595static asn_enc_rval_t
596enum_4_encode_xer(asn_TYPE_descriptor_t *td, void *structure,
597 int ilevel, enum xer_encoder_flags_e flags,
598 asn_app_consume_bytes_f *cb, void *app_key) {
599 enum_4_inherit_TYPE_descriptor(td);
600 return td->xer_encoder(td, structure, ilevel, flags, cb, app_key);
601}
602
603
vlm422e4ce2005-02-18 16:30:26 +0000604/*** <<< STAT-DEFS [ExtensibleSet] >>> ***/
605
vlm337167e2005-11-26 11:25:14 +0000606static asn_INTEGER_enum_map_t asn_MAP_enum_value2enum_4[] = {
vlm9ef0e492005-03-10 11:20:47 +0000607 { 0, 1, "b" },
608 { 1, 1, "a" }
609};
vlm337167e2005-11-26 11:25:14 +0000610static unsigned int asn_MAP_enum_enum2value_4[] = {
vlm9ef0e492005-03-10 11:20:47 +0000611 1, /* a(1) */
612 0 /* b(0) */
613};
vlm337167e2005-11-26 11:25:14 +0000614static asn_INTEGER_specifics_t asn_SPC_enum_specs_4 = {
615 asn_MAP_enum_value2enum_4, /* "tag" => N; sorted by tag */
616 asn_MAP_enum_enum2value_4, /* N => "tag"; sorted by N */
vlm9ef0e492005-03-10 11:20:47 +0000617 2, /* Number of elements in the maps */
618 0, /* Enumeration is not extensible */
vlm12164c42007-12-03 13:41:36 +0000619 1, /* Strict enumeration */
620 0, /* Native long size */
621 0
vlm9ef0e492005-03-10 11:20:47 +0000622};
vlm337167e2005-11-26 11:25:14 +0000623static ber_tlv_tag_t asn_DEF_enum_tags_4[] = {
vlm9ef0e492005-03-10 11:20:47 +0000624 (ASN_TAG_CLASS_CONTEXT | (1 << 2)),
625 (ASN_TAG_CLASS_UNIVERSAL | (10 << 2))
626};
627static /* Use -fall-defs-global to expose */
628asn_TYPE_descriptor_t asn_DEF_enum_4 = {
629 "enum",
630 "enum",
631 enum_4_free,
632 enum_4_print,
633 enum_4_constraint,
634 enum_4_decode_ber,
635 enum_4_encode_der,
636 enum_4_decode_xer,
637 enum_4_encode_xer,
vlmb1b193e2006-08-18 01:46:46 +0000638 0, 0, /* No PER support, use "-gen-PER" to enable */
vlm9ef0e492005-03-10 11:20:47 +0000639 0, /* Use generic outmost tag fetcher */
vlm337167e2005-11-26 11:25:14 +0000640 asn_DEF_enum_tags_4,
641 sizeof(asn_DEF_enum_tags_4)
642 /sizeof(asn_DEF_enum_tags_4[0]) - 1, /* 1 */
643 asn_DEF_enum_tags_4, /* Same as above */
644 sizeof(asn_DEF_enum_tags_4)
645 /sizeof(asn_DEF_enum_tags_4[0]), /* 2 */
646 0, /* No PER visible constraints */
vlm9ef0e492005-03-10 11:20:47 +0000647 0, 0, /* Defined elsewhere */
vlm337167e2005-11-26 11:25:14 +0000648 &asn_SPC_enum_specs_4 /* Additional specs */
vlm9ef0e492005-03-10 11:20:47 +0000649};
650
vlm44fe49a2005-03-04 11:26:08 +0000651static asn_TYPE_member_t asn_MBR_ExtensibleSet_1[] = {
vlm9ef0e492005-03-10 11:20:47 +0000652 { ATF_POINTER, 2, offsetof(struct ExtensibleSet, string),
vlm422e4ce2005-02-18 16:30:26 +0000653 .tag = (ASN_TAG_CLASS_CONTEXT | (0 << 2)),
654 .tag_mode = -1, /* IMPLICIT tag at current level */
vlme0fea712005-08-29 10:31:14 +0000655 .type = &asn_DEF_UTF8String,
vlm422e4ce2005-02-18 16:30:26 +0000656 .memb_constraints = 0, /* Defer constraints checking to the member type */
vlm337167e2005-11-26 11:25:14 +0000657 .per_constraints = 0, /* PER is not compiled, use -gen-PER */
658 .default_value = 0,
vlm422e4ce2005-02-18 16:30:26 +0000659 .name = "string"
660 },
vlm6c4a8502005-08-18 13:38:19 +0000661 { ATF_POINTER, 1, offsetof(struct ExtensibleSet, Enum),
vlm9ef0e492005-03-10 11:20:47 +0000662 .tag = (ASN_TAG_CLASS_CONTEXT | (1 << 2)),
663 .tag_mode = -1, /* IMPLICIT tag at current level */
vlme0fea712005-08-29 10:31:14 +0000664 .type = &asn_DEF_enum_4,
vlm9ef0e492005-03-10 11:20:47 +0000665 .memb_constraints = 0, /* Defer constraints checking to the member type */
vlm337167e2005-11-26 11:25:14 +0000666 .per_constraints = 0, /* PER is not compiled, use -gen-PER */
667 .default_value = 0,
vlm9ef0e492005-03-10 11:20:47 +0000668 .name = "enum"
669 },
vlm422e4ce2005-02-18 16:30:26 +0000670};
vlm337167e2005-11-26 11:25:14 +0000671static ber_tlv_tag_t asn_DEF_ExtensibleSet_tags_1[] = {
vlm422e4ce2005-02-18 16:30:26 +0000672 (ASN_TAG_CLASS_UNIVERSAL | (17 << 2))
673};
vlm337167e2005-11-26 11:25:14 +0000674static asn_TYPE_tag2member_t asn_MAP_ExtensibleSet_tag2el_1[] = {
vlmfbc0bbb2005-11-07 15:26:47 +0000675 { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* string at 50 */
676 { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 } /* enum at 52 */
vlm422e4ce2005-02-18 16:30:26 +0000677};
vlm337167e2005-11-26 11:25:14 +0000678static uint8_t asn_MAP_ExtensibleSet_mmap_1[(2 + (8 * sizeof(unsigned int)) - 1) / 8] = {
vlm9ef0e492005-03-10 11:20:47 +0000679 (0 << 7) | (0 << 6)
vlm422e4ce2005-02-18 16:30:26 +0000680};
vlm337167e2005-11-26 11:25:14 +0000681static asn_SET_specifics_t asn_SPC_ExtensibleSet_specs_1 = {
vlm422e4ce2005-02-18 16:30:26 +0000682 sizeof(struct ExtensibleSet),
683 offsetof(struct ExtensibleSet, _asn_ctx),
684 offsetof(struct ExtensibleSet, _presence_map),
vlm337167e2005-11-26 11:25:14 +0000685 asn_MAP_ExtensibleSet_tag2el_1,
vlm9ef0e492005-03-10 11:20:47 +0000686 2, /* Count of tags in the map */
vlm337167e2005-11-26 11:25:14 +0000687 asn_MAP_ExtensibleSet_tag2el_1, /* Same as above */
vlm9ef0e492005-03-10 11:20:47 +0000688 2, /* Count of tags in the CXER map */
vlm422e4ce2005-02-18 16:30:26 +0000689 1, /* Whether extensible */
vlm337167e2005-11-26 11:25:14 +0000690 (unsigned int *)asn_MAP_ExtensibleSet_mmap_1 /* Mandatory elements map */
vlm422e4ce2005-02-18 16:30:26 +0000691};
692asn_TYPE_descriptor_t asn_DEF_ExtensibleSet = {
693 "ExtensibleSet",
694 "ExtensibleSet",
695 SET_free,
696 SET_print,
697 SET_constraint,
698 SET_decode_ber,
699 SET_encode_der,
700 SET_decode_xer,
701 SET_encode_xer,
vlmb1b193e2006-08-18 01:46:46 +0000702 0, 0, /* No PER support, use "-gen-PER" to enable */
vlm422e4ce2005-02-18 16:30:26 +0000703 0, /* Use generic outmost tag fetcher */
vlm337167e2005-11-26 11:25:14 +0000704 asn_DEF_ExtensibleSet_tags_1,
705 sizeof(asn_DEF_ExtensibleSet_tags_1)
706 /sizeof(asn_DEF_ExtensibleSet_tags_1[0]), /* 1 */
707 asn_DEF_ExtensibleSet_tags_1, /* Same as above */
708 sizeof(asn_DEF_ExtensibleSet_tags_1)
709 /sizeof(asn_DEF_ExtensibleSet_tags_1[0]), /* 1 */
710 0, /* No PER visible constraints */
vlm44fe49a2005-03-04 11:26:08 +0000711 asn_MBR_ExtensibleSet_1,
vlm9ef0e492005-03-10 11:20:47 +0000712 2, /* Elements count */
vlm337167e2005-11-26 11:25:14 +0000713 &asn_SPC_ExtensibleSet_specs_1 /* Additional specs */
vlm422e4ce2005-02-18 16:30:26 +0000714};
715
716
717/*** <<< INCLUDES [ExtensibleSequence] >>> ***/
718
719#include <UTF8String.h>
720#include <INTEGER.h>
vlm1a9741e2005-07-03 05:27:19 +0000721#include <GeneralizedTime.h>
vlm422e4ce2005-02-18 16:30:26 +0000722#include <constr_SEQUENCE.h>
723
vlm422e4ce2005-02-18 16:30:26 +0000724/*** <<< TYPE-DECLS [ExtensibleSequence] >>> ***/
725
vlm422e4ce2005-02-18 16:30:26 +0000726typedef struct ExtensibleSequence {
727 UTF8String_t *string /* OPTIONAL */;
728 /*
729 * This type is extensible,
730 * possible extensions are below.
731 */
732 INTEGER_t *integer /* OPTIONAL */;
vlm1a9741e2005-07-03 05:27:19 +0000733 GeneralizedTime_t *gtime;
vlm422e4ce2005-02-18 16:30:26 +0000734
735 /* Context for parsing across buffer boundaries */
736 asn_struct_ctx_t _asn_ctx;
737} ExtensibleSequence_t;
738
vlm0b567bf2005-03-04 22:18:20 +0000739/*** <<< FUNC-DECLS [ExtensibleSequence] >>> ***/
740
741extern asn_TYPE_descriptor_t asn_DEF_ExtensibleSequence;
742
vlm422e4ce2005-02-18 16:30:26 +0000743/*** <<< STAT-DEFS [ExtensibleSequence] >>> ***/
744
vlm44fe49a2005-03-04 11:26:08 +0000745static asn_TYPE_member_t asn_MBR_ExtensibleSequence_1[] = {
vlm1a9741e2005-07-03 05:27:19 +0000746 { ATF_POINTER, 3, offsetof(struct ExtensibleSequence, string),
vlm422e4ce2005-02-18 16:30:26 +0000747 .tag = (ASN_TAG_CLASS_CONTEXT | (0 << 2)),
748 .tag_mode = -1, /* IMPLICIT tag at current level */
vlme0fea712005-08-29 10:31:14 +0000749 .type = &asn_DEF_UTF8String,
vlm422e4ce2005-02-18 16:30:26 +0000750 .memb_constraints = 0, /* Defer constraints checking to the member type */
vlm337167e2005-11-26 11:25:14 +0000751 .per_constraints = 0, /* PER is not compiled, use -gen-PER */
752 .default_value = 0,
vlm422e4ce2005-02-18 16:30:26 +0000753 .name = "string"
754 },
vlm1a9741e2005-07-03 05:27:19 +0000755 { ATF_POINTER, 2, offsetof(struct ExtensibleSequence, integer),
vlm422e4ce2005-02-18 16:30:26 +0000756 .tag = (ASN_TAG_CLASS_CONTEXT | (1 << 2)),
757 .tag_mode = -1, /* IMPLICIT tag at current level */
vlme0fea712005-08-29 10:31:14 +0000758 .type = &asn_DEF_INTEGER,
vlm422e4ce2005-02-18 16:30:26 +0000759 .memb_constraints = 0, /* Defer constraints checking to the member type */
vlm337167e2005-11-26 11:25:14 +0000760 .per_constraints = 0, /* PER is not compiled, use -gen-PER */
761 .default_value = 0,
vlm422e4ce2005-02-18 16:30:26 +0000762 .name = "integer"
763 },
vlm6c4a8502005-08-18 13:38:19 +0000764 { ATF_POINTER, 1, offsetof(struct ExtensibleSequence, gtime),
vlm1a9741e2005-07-03 05:27:19 +0000765 .tag = (ASN_TAG_CLASS_CONTEXT | (2 << 2)),
766 .tag_mode = -1, /* IMPLICIT tag at current level */
vlme0fea712005-08-29 10:31:14 +0000767 .type = &asn_DEF_GeneralizedTime,
vlm1a9741e2005-07-03 05:27:19 +0000768 .memb_constraints = 0, /* Defer constraints checking to the member type */
vlm337167e2005-11-26 11:25:14 +0000769 .per_constraints = 0, /* PER is not compiled, use -gen-PER */
770 .default_value = 0,
vlm1a9741e2005-07-03 05:27:19 +0000771 .name = "gtime"
772 },
vlm422e4ce2005-02-18 16:30:26 +0000773};
vlm337167e2005-11-26 11:25:14 +0000774static ber_tlv_tag_t asn_DEF_ExtensibleSequence_tags_1[] = {
vlm422e4ce2005-02-18 16:30:26 +0000775 (ASN_TAG_CLASS_UNIVERSAL | (16 << 2))
776};
vlm337167e2005-11-26 11:25:14 +0000777static asn_TYPE_tag2member_t asn_MAP_ExtensibleSequence_tag2el_1[] = {
vlmfbc0bbb2005-11-07 15:26:47 +0000778 { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* string at 56 */
779 { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 }, /* integer at 58 */
780 { (ASN_TAG_CLASS_CONTEXT | (2 << 2)), 2, 0, 0 } /* gtime at 59 */
vlm422e4ce2005-02-18 16:30:26 +0000781};
vlm337167e2005-11-26 11:25:14 +0000782static asn_SEQUENCE_specifics_t asn_SPC_ExtensibleSequence_specs_1 = {
vlm422e4ce2005-02-18 16:30:26 +0000783 sizeof(struct ExtensibleSequence),
784 offsetof(struct ExtensibleSequence, _asn_ctx),
vlm337167e2005-11-26 11:25:14 +0000785 asn_MAP_ExtensibleSequence_tag2el_1,
vlm1a9741e2005-07-03 05:27:19 +0000786 3, /* Count of tags in the map */
vlm337167e2005-11-26 11:25:14 +0000787 0, 0, 0, /* Optional elements (not needed) */
vlm422e4ce2005-02-18 16:30:26 +0000788 0, /* Start extensions */
vlm1a9741e2005-07-03 05:27:19 +0000789 4 /* Stop extensions */
vlm422e4ce2005-02-18 16:30:26 +0000790};
791asn_TYPE_descriptor_t asn_DEF_ExtensibleSequence = {
792 "ExtensibleSequence",
793 "ExtensibleSequence",
794 SEQUENCE_free,
795 SEQUENCE_print,
796 SEQUENCE_constraint,
797 SEQUENCE_decode_ber,
798 SEQUENCE_encode_der,
799 SEQUENCE_decode_xer,
800 SEQUENCE_encode_xer,
vlmb1b193e2006-08-18 01:46:46 +0000801 0, 0, /* No PER support, use "-gen-PER" to enable */
vlm422e4ce2005-02-18 16:30:26 +0000802 0, /* Use generic outmost tag fetcher */
vlm337167e2005-11-26 11:25:14 +0000803 asn_DEF_ExtensibleSequence_tags_1,
804 sizeof(asn_DEF_ExtensibleSequence_tags_1)
805 /sizeof(asn_DEF_ExtensibleSequence_tags_1[0]), /* 1 */
806 asn_DEF_ExtensibleSequence_tags_1, /* Same as above */
807 sizeof(asn_DEF_ExtensibleSequence_tags_1)
808 /sizeof(asn_DEF_ExtensibleSequence_tags_1[0]), /* 1 */
809 0, /* No PER visible constraints */
vlm44fe49a2005-03-04 11:26:08 +0000810 asn_MBR_ExtensibleSequence_1,
vlm1a9741e2005-07-03 05:27:19 +0000811 3, /* Elements count */
vlm337167e2005-11-26 11:25:14 +0000812 &asn_SPC_ExtensibleSequence_specs_1 /* Additional specs */
vlm422e4ce2005-02-18 16:30:26 +0000813};
814
815
vlm1a9741e2005-07-03 05:27:19 +0000816/*** <<< INCLUDES [ExtensibleSequence2] >>> ***/
817
818#include <UTF8String.h>
819#include <INTEGER.h>
820#include <constr_SEQUENCE.h>
821
822/*** <<< TYPE-DECLS [ExtensibleSequence2] >>> ***/
823
824typedef struct ExtensibleSequence2 {
825 UTF8String_t *string /* OPTIONAL */;
826 /*
827 * This type is extensible,
828 * possible extensions are below.
829 */
830 INTEGER_t *integer /* OPTIONAL */;
831
832 /* Context for parsing across buffer boundaries */
833 asn_struct_ctx_t _asn_ctx;
834} ExtensibleSequence2_t;
835
836/*** <<< FUNC-DECLS [ExtensibleSequence2] >>> ***/
837
838extern asn_TYPE_descriptor_t asn_DEF_ExtensibleSequence2;
839
840/*** <<< STAT-DEFS [ExtensibleSequence2] >>> ***/
841
842static asn_TYPE_member_t asn_MBR_ExtensibleSequence2_1[] = {
843 { ATF_POINTER, 2, offsetof(struct ExtensibleSequence2, string),
844 .tag = (ASN_TAG_CLASS_CONTEXT | (0 << 2)),
845 .tag_mode = -1, /* IMPLICIT tag at current level */
vlme0fea712005-08-29 10:31:14 +0000846 .type = &asn_DEF_UTF8String,
vlm1a9741e2005-07-03 05:27:19 +0000847 .memb_constraints = 0, /* Defer constraints checking to the member type */
vlm337167e2005-11-26 11:25:14 +0000848 .per_constraints = 0, /* PER is not compiled, use -gen-PER */
849 .default_value = 0,
vlm1a9741e2005-07-03 05:27:19 +0000850 .name = "string"
851 },
852 { ATF_POINTER, 1, offsetof(struct ExtensibleSequence2, integer),
853 .tag = (ASN_TAG_CLASS_CONTEXT | (1 << 2)),
854 .tag_mode = -1, /* IMPLICIT tag at current level */
vlme0fea712005-08-29 10:31:14 +0000855 .type = &asn_DEF_INTEGER,
vlm1a9741e2005-07-03 05:27:19 +0000856 .memb_constraints = 0, /* Defer constraints checking to the member type */
vlm337167e2005-11-26 11:25:14 +0000857 .per_constraints = 0, /* PER is not compiled, use -gen-PER */
858 .default_value = 0,
vlm1a9741e2005-07-03 05:27:19 +0000859 .name = "integer"
860 },
861};
vlm337167e2005-11-26 11:25:14 +0000862static ber_tlv_tag_t asn_DEF_ExtensibleSequence2_tags_1[] = {
vlm1a9741e2005-07-03 05:27:19 +0000863 (ASN_TAG_CLASS_UNIVERSAL | (16 << 2))
864};
vlm337167e2005-11-26 11:25:14 +0000865static asn_TYPE_tag2member_t asn_MAP_ExtensibleSequence2_tag2el_1[] = {
vlmfbc0bbb2005-11-07 15:26:47 +0000866 { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* string at 63 */
867 { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 } /* integer at 65 */
vlm1a9741e2005-07-03 05:27:19 +0000868};
vlm337167e2005-11-26 11:25:14 +0000869static asn_SEQUENCE_specifics_t asn_SPC_ExtensibleSequence2_specs_1 = {
vlm1a9741e2005-07-03 05:27:19 +0000870 sizeof(struct ExtensibleSequence2),
871 offsetof(struct ExtensibleSequence2, _asn_ctx),
vlm337167e2005-11-26 11:25:14 +0000872 asn_MAP_ExtensibleSequence2_tag2el_1,
vlm1a9741e2005-07-03 05:27:19 +0000873 2, /* Count of tags in the map */
vlm337167e2005-11-26 11:25:14 +0000874 0, 0, 0, /* Optional elements (not needed) */
vlm1a9741e2005-07-03 05:27:19 +0000875 0, /* Start extensions */
876 3 /* Stop extensions */
877};
878asn_TYPE_descriptor_t asn_DEF_ExtensibleSequence2 = {
879 "ExtensibleSequence2",
880 "ExtensibleSequence2",
881 SEQUENCE_free,
882 SEQUENCE_print,
883 SEQUENCE_constraint,
884 SEQUENCE_decode_ber,
885 SEQUENCE_encode_der,
886 SEQUENCE_decode_xer,
887 SEQUENCE_encode_xer,
vlmb1b193e2006-08-18 01:46:46 +0000888 0, 0, /* No PER support, use "-gen-PER" to enable */
vlm1a9741e2005-07-03 05:27:19 +0000889 0, /* Use generic outmost tag fetcher */
vlm337167e2005-11-26 11:25:14 +0000890 asn_DEF_ExtensibleSequence2_tags_1,
891 sizeof(asn_DEF_ExtensibleSequence2_tags_1)
892 /sizeof(asn_DEF_ExtensibleSequence2_tags_1[0]), /* 1 */
893 asn_DEF_ExtensibleSequence2_tags_1, /* Same as above */
894 sizeof(asn_DEF_ExtensibleSequence2_tags_1)
895 /sizeof(asn_DEF_ExtensibleSequence2_tags_1[0]), /* 1 */
896 0, /* No PER visible constraints */
vlm1a9741e2005-07-03 05:27:19 +0000897 asn_MBR_ExtensibleSequence2_1,
898 2, /* Elements count */
vlm337167e2005-11-26 11:25:14 +0000899 &asn_SPC_ExtensibleSequence2_specs_1 /* Additional specs */
vlm1a9741e2005-07-03 05:27:19 +0000900};
901
902
vlm6d5cb6b2005-02-24 22:38:43 +0000903/*** <<< INCLUDES [SetOfNULL] >>> ***/
904
905#include <NULL.h>
906#include <asn_SET_OF.h>
907#include <constr_SET_OF.h>
908
vlm6d5cb6b2005-02-24 22:38:43 +0000909/*** <<< TYPE-DECLS [SetOfNULL] >>> ***/
910
vlm6d5cb6b2005-02-24 22:38:43 +0000911typedef struct SetOfNULL {
912 A_SET_OF(NULL_t) list;
913
914 /* Context for parsing across buffer boundaries */
915 asn_struct_ctx_t _asn_ctx;
916} SetOfNULL_t;
917
vlm0b567bf2005-03-04 22:18:20 +0000918/*** <<< FUNC-DECLS [SetOfNULL] >>> ***/
919
920extern asn_TYPE_descriptor_t asn_DEF_SetOfNULL;
921
vlm6d5cb6b2005-02-24 22:38:43 +0000922/*** <<< STAT-DEFS [SetOfNULL] >>> ***/
923
vlm44fe49a2005-03-04 11:26:08 +0000924static asn_TYPE_member_t asn_MBR_SetOfNULL_1[] = {
vlm2cebdf32005-08-16 16:57:17 +0000925 { ATF_POINTER, 0, 0,
vlm6d5cb6b2005-02-24 22:38:43 +0000926 .tag = (ASN_TAG_CLASS_UNIVERSAL | (5 << 2)),
927 .tag_mode = 0,
vlme0fea712005-08-29 10:31:14 +0000928 .type = &asn_DEF_NULL,
vlm6d5cb6b2005-02-24 22:38:43 +0000929 .memb_constraints = 0, /* Defer constraints checking to the member type */
vlm337167e2005-11-26 11:25:14 +0000930 .per_constraints = 0, /* PER is not compiled, use -gen-PER */
931 .default_value = 0,
vlm6d5cb6b2005-02-24 22:38:43 +0000932 .name = ""
933 },
934};
vlm337167e2005-11-26 11:25:14 +0000935static ber_tlv_tag_t asn_DEF_SetOfNULL_tags_1[] = {
vlm6d5cb6b2005-02-24 22:38:43 +0000936 (ASN_TAG_CLASS_UNIVERSAL | (17 << 2))
937};
vlm337167e2005-11-26 11:25:14 +0000938static asn_SET_OF_specifics_t asn_SPC_SetOfNULL_specs_1 = {
vlm6d5cb6b2005-02-24 22:38:43 +0000939 sizeof(struct SetOfNULL),
940 offsetof(struct SetOfNULL, _asn_ctx),
941 1, /* XER encoding is XMLValueList */
942};
943asn_TYPE_descriptor_t asn_DEF_SetOfNULL = {
944 "SetOfNULL",
945 "SetOfNULL",
946 SET_OF_free,
947 SET_OF_print,
948 SET_OF_constraint,
949 SET_OF_decode_ber,
950 SET_OF_encode_der,
951 SET_OF_decode_xer,
952 SET_OF_encode_xer,
vlmb1b193e2006-08-18 01:46:46 +0000953 0, 0, /* No PER support, use "-gen-PER" to enable */
vlm6d5cb6b2005-02-24 22:38:43 +0000954 0, /* Use generic outmost tag fetcher */
vlm337167e2005-11-26 11:25:14 +0000955 asn_DEF_SetOfNULL_tags_1,
956 sizeof(asn_DEF_SetOfNULL_tags_1)
957 /sizeof(asn_DEF_SetOfNULL_tags_1[0]), /* 1 */
958 asn_DEF_SetOfNULL_tags_1, /* Same as above */
959 sizeof(asn_DEF_SetOfNULL_tags_1)
960 /sizeof(asn_DEF_SetOfNULL_tags_1[0]), /* 1 */
961 0, /* No PER visible constraints */
vlm44fe49a2005-03-04 11:26:08 +0000962 asn_MBR_SetOfNULL_1,
vlm6d5cb6b2005-02-24 22:38:43 +0000963 1, /* Single element */
vlm337167e2005-11-26 11:25:14 +0000964 &asn_SPC_SetOfNULL_specs_1 /* Additional specs */
vlm6d5cb6b2005-02-24 22:38:43 +0000965};
966
967
vlmfbc0bbb2005-11-07 15:26:47 +0000968/*** <<< INCLUDES [SetOfREAL] >>> ***/
969
970#include <REAL.h>
971#include <asn_SET_OF.h>
972#include <constr_SET_OF.h>
973
974/*** <<< TYPE-DECLS [SetOfREAL] >>> ***/
975
976typedef struct SetOfREAL {
977 A_SET_OF(REAL_t) list;
978
979 /* Context for parsing across buffer boundaries */
980 asn_struct_ctx_t _asn_ctx;
981} SetOfREAL_t;
982
983/*** <<< FUNC-DECLS [SetOfREAL] >>> ***/
984
985extern asn_TYPE_descriptor_t asn_DEF_SetOfREAL;
986
987/*** <<< STAT-DEFS [SetOfREAL] >>> ***/
988
989static asn_TYPE_member_t asn_MBR_SetOfREAL_1[] = {
990 { ATF_POINTER, 0, 0,
991 .tag = (ASN_TAG_CLASS_UNIVERSAL | (9 << 2)),
992 .tag_mode = 0,
993 .type = &asn_DEF_REAL,
994 .memb_constraints = 0, /* Defer constraints checking to the member type */
vlm337167e2005-11-26 11:25:14 +0000995 .per_constraints = 0, /* PER is not compiled, use -gen-PER */
996 .default_value = 0,
vlmfbc0bbb2005-11-07 15:26:47 +0000997 .name = ""
998 },
999};
vlm337167e2005-11-26 11:25:14 +00001000static ber_tlv_tag_t asn_DEF_SetOfREAL_tags_1[] = {
vlmfbc0bbb2005-11-07 15:26:47 +00001001 (ASN_TAG_CLASS_UNIVERSAL | (17 << 2))
1002};
vlm337167e2005-11-26 11:25:14 +00001003static asn_SET_OF_specifics_t asn_SPC_SetOfREAL_specs_1 = {
vlmfbc0bbb2005-11-07 15:26:47 +00001004 sizeof(struct SetOfREAL),
1005 offsetof(struct SetOfREAL, _asn_ctx),
1006 0, /* XER encoding is XMLDelimitedItemList */
1007};
1008asn_TYPE_descriptor_t asn_DEF_SetOfREAL = {
1009 "SetOfREAL",
1010 "SetOfREAL",
1011 SET_OF_free,
1012 SET_OF_print,
1013 SET_OF_constraint,
1014 SET_OF_decode_ber,
1015 SET_OF_encode_der,
1016 SET_OF_decode_xer,
1017 SET_OF_encode_xer,
vlmb1b193e2006-08-18 01:46:46 +00001018 0, 0, /* No PER support, use "-gen-PER" to enable */
vlmfbc0bbb2005-11-07 15:26:47 +00001019 0, /* Use generic outmost tag fetcher */
vlm337167e2005-11-26 11:25:14 +00001020 asn_DEF_SetOfREAL_tags_1,
1021 sizeof(asn_DEF_SetOfREAL_tags_1)
1022 /sizeof(asn_DEF_SetOfREAL_tags_1[0]), /* 1 */
1023 asn_DEF_SetOfREAL_tags_1, /* Same as above */
1024 sizeof(asn_DEF_SetOfREAL_tags_1)
1025 /sizeof(asn_DEF_SetOfREAL_tags_1[0]), /* 1 */
1026 0, /* No PER visible constraints */
vlmfbc0bbb2005-11-07 15:26:47 +00001027 asn_MBR_SetOfREAL_1,
1028 1, /* Single element */
vlm337167e2005-11-26 11:25:14 +00001029 &asn_SPC_SetOfREAL_specs_1 /* Additional specs */
vlmfbc0bbb2005-11-07 15:26:47 +00001030};
1031
1032
vlm6d5cb6b2005-02-24 22:38:43 +00001033/*** <<< INCLUDES [SetOfEnums] >>> ***/
1034
1035#include <ENUMERATED.h>
1036#include <asn_SET_OF.h>
1037#include <constr_SET_OF.h>
1038
1039/*** <<< DEPS [SetOfEnums] >>> ***/
1040
vlm44fe49a2005-03-04 11:26:08 +00001041typedef enum Member {
1042 Member_one = 0,
1043 Member_oneMore = 1
vlm7c8aa5e2006-03-21 07:25:18 +00001044} e_Member;
vlm6d5cb6b2005-02-24 22:38:43 +00001045
1046/*** <<< TYPE-DECLS [SetOfEnums] >>> ***/
1047
vlm6d5cb6b2005-02-24 22:38:43 +00001048typedef struct SetOfEnums {
1049 A_SET_OF(ENUMERATED_t) list;
1050
1051 /* Context for parsing across buffer boundaries */
1052 asn_struct_ctx_t _asn_ctx;
1053} SetOfEnums_t;
1054
vlm82e33fb2005-02-25 08:35:54 +00001055/*** <<< FUNC-DECLS [SetOfEnums] >>> ***/
1056
vlm44fe49a2005-03-04 11:26:08 +00001057/* extern asn_TYPE_descriptor_t asn_DEF_Member_2; // (Use -fall-defs-global to expose) */
vlm0b567bf2005-03-04 22:18:20 +00001058extern asn_TYPE_descriptor_t asn_DEF_SetOfEnums;
vlm82e33fb2005-02-25 08:35:54 +00001059
1060/*** <<< CODE [SetOfEnums] >>> ***/
1061
1062static int
vlm44fe49a2005-03-04 11:26:08 +00001063Member_2_constraint(asn_TYPE_descriptor_t *td, const void *sptr,
vlmaf68ef52006-07-13 11:19:01 +00001064 asn_app_constraint_failed_f *ctfailcb, void *app_key) {
vlm82e33fb2005-02-25 08:35:54 +00001065 /* Replace with underlying type checker */
1066 td->check_constraints = asn_DEF_ENUMERATED.check_constraints;
vlmaf68ef52006-07-13 11:19:01 +00001067 return td->check_constraints(td, sptr, ctfailcb, app_key);
vlm82e33fb2005-02-25 08:35:54 +00001068}
1069
1070/*
1071 * This type is implemented using ENUMERATED,
1072 * so here we adjust the DEF accordingly.
1073 */
1074static void
vlm44fe49a2005-03-04 11:26:08 +00001075Member_2_inherit_TYPE_descriptor(asn_TYPE_descriptor_t *td) {
vlm82e33fb2005-02-25 08:35:54 +00001076 td->free_struct = asn_DEF_ENUMERATED.free_struct;
1077 td->print_struct = asn_DEF_ENUMERATED.print_struct;
1078 td->ber_decoder = asn_DEF_ENUMERATED.ber_decoder;
1079 td->der_encoder = asn_DEF_ENUMERATED.der_encoder;
1080 td->xer_decoder = asn_DEF_ENUMERATED.xer_decoder;
1081 td->xer_encoder = asn_DEF_ENUMERATED.xer_encoder;
vlm337167e2005-11-26 11:25:14 +00001082 td->uper_decoder = asn_DEF_ENUMERATED.uper_decoder;
vlmb1b193e2006-08-18 01:46:46 +00001083 td->uper_encoder = asn_DEF_ENUMERATED.uper_encoder;
vlm337167e2005-11-26 11:25:14 +00001084 if(!td->per_constraints)
1085 td->per_constraints = asn_DEF_ENUMERATED.per_constraints;
vlm82e33fb2005-02-25 08:35:54 +00001086 td->elements = asn_DEF_ENUMERATED.elements;
1087 td->elements_count = asn_DEF_ENUMERATED.elements_count;
vlm541def92005-03-29 19:05:37 +00001088 /* td->specifics = asn_DEF_ENUMERATED.specifics; // Defined explicitly */
vlm82e33fb2005-02-25 08:35:54 +00001089}
1090
1091static void
vlm44fe49a2005-03-04 11:26:08 +00001092Member_2_free(asn_TYPE_descriptor_t *td,
vlm82e33fb2005-02-25 08:35:54 +00001093 void *struct_ptr, int contents_only) {
vlm44fe49a2005-03-04 11:26:08 +00001094 Member_2_inherit_TYPE_descriptor(td);
vlm82e33fb2005-02-25 08:35:54 +00001095 td->free_struct(td, struct_ptr, contents_only);
1096}
1097
1098static int
vlm44fe49a2005-03-04 11:26:08 +00001099Member_2_print(asn_TYPE_descriptor_t *td, const void *struct_ptr,
vlm82e33fb2005-02-25 08:35:54 +00001100 int ilevel, asn_app_consume_bytes_f *cb, void *app_key) {
vlm44fe49a2005-03-04 11:26:08 +00001101 Member_2_inherit_TYPE_descriptor(td);
vlm82e33fb2005-02-25 08:35:54 +00001102 return td->print_struct(td, struct_ptr, ilevel, cb, app_key);
1103}
1104
1105static asn_dec_rval_t
vlm44fe49a2005-03-04 11:26:08 +00001106Member_2_decode_ber(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td,
vlmc04faea2005-03-17 21:57:19 +00001107 void **structure, const void *bufptr, size_t size, int tag_mode) {
vlm44fe49a2005-03-04 11:26:08 +00001108 Member_2_inherit_TYPE_descriptor(td);
vlm82e33fb2005-02-25 08:35:54 +00001109 return td->ber_decoder(opt_codec_ctx, td, structure, bufptr, size, tag_mode);
1110}
1111
1112static asn_enc_rval_t
vlm44fe49a2005-03-04 11:26:08 +00001113Member_2_encode_der(asn_TYPE_descriptor_t *td,
vlm82e33fb2005-02-25 08:35:54 +00001114 void *structure, int tag_mode, ber_tlv_tag_t tag,
1115 asn_app_consume_bytes_f *cb, void *app_key) {
vlm44fe49a2005-03-04 11:26:08 +00001116 Member_2_inherit_TYPE_descriptor(td);
vlm82e33fb2005-02-25 08:35:54 +00001117 return td->der_encoder(td, structure, tag_mode, tag, cb, app_key);
1118}
1119
1120static asn_dec_rval_t
vlm44fe49a2005-03-04 11:26:08 +00001121Member_2_decode_xer(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td,
vlmc04faea2005-03-17 21:57:19 +00001122 void **structure, const char *opt_mname, const void *bufptr, size_t size) {
vlm44fe49a2005-03-04 11:26:08 +00001123 Member_2_inherit_TYPE_descriptor(td);
vlm82e33fb2005-02-25 08:35:54 +00001124 return td->xer_decoder(opt_codec_ctx, td, structure, opt_mname, bufptr, size);
1125}
1126
1127static asn_enc_rval_t
vlm44fe49a2005-03-04 11:26:08 +00001128Member_2_encode_xer(asn_TYPE_descriptor_t *td, void *structure,
vlm82e33fb2005-02-25 08:35:54 +00001129 int ilevel, enum xer_encoder_flags_e flags,
1130 asn_app_consume_bytes_f *cb, void *app_key) {
vlm44fe49a2005-03-04 11:26:08 +00001131 Member_2_inherit_TYPE_descriptor(td);
vlm82e33fb2005-02-25 08:35:54 +00001132 return td->xer_encoder(td, structure, ilevel, flags, cb, app_key);
1133}
1134
1135
vlm6d5cb6b2005-02-24 22:38:43 +00001136/*** <<< STAT-DEFS [SetOfEnums] >>> ***/
1137
vlm337167e2005-11-26 11:25:14 +00001138static asn_INTEGER_enum_map_t asn_MAP_Member_value2enum_2[] = {
vlm56a1f3e2005-02-25 11:08:02 +00001139 { 0, 3, "one" },
1140 { 1, 7, "oneMore" }
1141};
vlm337167e2005-11-26 11:25:14 +00001142static unsigned int asn_MAP_Member_enum2value_2[] = {
vlm56a1f3e2005-02-25 11:08:02 +00001143 0, /* one(0) */
1144 1 /* oneMore(1) */
vlm82e33fb2005-02-25 08:35:54 +00001145};
vlm337167e2005-11-26 11:25:14 +00001146static asn_INTEGER_specifics_t asn_SPC_Member_specs_2 = {
1147 asn_MAP_Member_value2enum_2, /* "tag" => N; sorted by tag */
1148 asn_MAP_Member_enum2value_2, /* N => "tag"; sorted by N */
vlm82e33fb2005-02-25 08:35:54 +00001149 2, /* Number of elements in the maps */
vlmc018f362005-02-25 11:47:59 +00001150 0, /* Enumeration is not extensible */
vlm12164c42007-12-03 13:41:36 +00001151 1, /* Strict enumeration */
1152 0, /* Native long size */
1153 0
vlm82e33fb2005-02-25 08:35:54 +00001154};
vlm337167e2005-11-26 11:25:14 +00001155static ber_tlv_tag_t asn_DEF_Member_tags_2[] = {
vlm82e33fb2005-02-25 08:35:54 +00001156 (ASN_TAG_CLASS_UNIVERSAL | (10 << 2))
1157};
1158static /* Use -fall-defs-global to expose */
vlm44fe49a2005-03-04 11:26:08 +00001159asn_TYPE_descriptor_t asn_DEF_Member_2 = {
vlm337167e2005-11-26 11:25:14 +00001160 "ENUMERATED",
1161 "ENUMERATED",
vlm44fe49a2005-03-04 11:26:08 +00001162 Member_2_free,
1163 Member_2_print,
1164 Member_2_constraint,
1165 Member_2_decode_ber,
1166 Member_2_encode_der,
1167 Member_2_decode_xer,
1168 Member_2_encode_xer,
vlmb1b193e2006-08-18 01:46:46 +00001169 0, 0, /* No PER support, use "-gen-PER" to enable */
vlm82e33fb2005-02-25 08:35:54 +00001170 0, /* Use generic outmost tag fetcher */
vlm337167e2005-11-26 11:25:14 +00001171 asn_DEF_Member_tags_2,
1172 sizeof(asn_DEF_Member_tags_2)
1173 /sizeof(asn_DEF_Member_tags_2[0]), /* 1 */
1174 asn_DEF_Member_tags_2, /* Same as above */
1175 sizeof(asn_DEF_Member_tags_2)
1176 /sizeof(asn_DEF_Member_tags_2[0]), /* 1 */
1177 0, /* No PER visible constraints */
vlm82e33fb2005-02-25 08:35:54 +00001178 0, 0, /* Defined elsewhere */
vlm337167e2005-11-26 11:25:14 +00001179 &asn_SPC_Member_specs_2 /* Additional specs */
vlm82e33fb2005-02-25 08:35:54 +00001180};
1181
vlm44fe49a2005-03-04 11:26:08 +00001182static asn_TYPE_member_t asn_MBR_SetOfEnums_1[] = {
vlm2cebdf32005-08-16 16:57:17 +00001183 { ATF_POINTER, 0, 0,
vlm6d5cb6b2005-02-24 22:38:43 +00001184 .tag = (ASN_TAG_CLASS_UNIVERSAL | (10 << 2)),
1185 .tag_mode = 0,
vlme0fea712005-08-29 10:31:14 +00001186 .type = &asn_DEF_Member_2,
vlm6d5cb6b2005-02-24 22:38:43 +00001187 .memb_constraints = 0, /* Defer constraints checking to the member type */
vlm337167e2005-11-26 11:25:14 +00001188 .per_constraints = 0, /* PER is not compiled, use -gen-PER */
1189 .default_value = 0,
vlm6d5cb6b2005-02-24 22:38:43 +00001190 .name = ""
1191 },
1192};
vlm337167e2005-11-26 11:25:14 +00001193static ber_tlv_tag_t asn_DEF_SetOfEnums_tags_1[] = {
vlm6d5cb6b2005-02-24 22:38:43 +00001194 (ASN_TAG_CLASS_UNIVERSAL | (17 << 2))
1195};
vlm337167e2005-11-26 11:25:14 +00001196static asn_SET_OF_specifics_t asn_SPC_SetOfEnums_specs_1 = {
vlm6d5cb6b2005-02-24 22:38:43 +00001197 sizeof(struct SetOfEnums),
1198 offsetof(struct SetOfEnums, _asn_ctx),
vlm82e33fb2005-02-25 08:35:54 +00001199 1, /* XER encoding is XMLValueList */
vlm6d5cb6b2005-02-24 22:38:43 +00001200};
1201asn_TYPE_descriptor_t asn_DEF_SetOfEnums = {
1202 "SetOfEnums",
1203 "SetOfEnums",
1204 SET_OF_free,
1205 SET_OF_print,
1206 SET_OF_constraint,
1207 SET_OF_decode_ber,
1208 SET_OF_encode_der,
1209 SET_OF_decode_xer,
1210 SET_OF_encode_xer,
vlmb1b193e2006-08-18 01:46:46 +00001211 0, 0, /* No PER support, use "-gen-PER" to enable */
vlm6d5cb6b2005-02-24 22:38:43 +00001212 0, /* Use generic outmost tag fetcher */
vlm337167e2005-11-26 11:25:14 +00001213 asn_DEF_SetOfEnums_tags_1,
1214 sizeof(asn_DEF_SetOfEnums_tags_1)
1215 /sizeof(asn_DEF_SetOfEnums_tags_1[0]), /* 1 */
1216 asn_DEF_SetOfEnums_tags_1, /* Same as above */
1217 sizeof(asn_DEF_SetOfEnums_tags_1)
1218 /sizeof(asn_DEF_SetOfEnums_tags_1[0]), /* 1 */
1219 0, /* No PER visible constraints */
vlm44fe49a2005-03-04 11:26:08 +00001220 asn_MBR_SetOfEnums_1,
vlm6d5cb6b2005-02-24 22:38:43 +00001221 1, /* Single element */
vlm337167e2005-11-26 11:25:14 +00001222 &asn_SPC_SetOfEnums_specs_1 /* Additional specs */
vlm6d5cb6b2005-02-24 22:38:43 +00001223};
1224
1225
vlmfbc0bbb2005-11-07 15:26:47 +00001226/*** <<< INCLUDES [NamedSetOfNULL] >>> ***/
1227
1228#include <NULL.h>
1229#include <asn_SET_OF.h>
1230#include <constr_SET_OF.h>
1231
1232/*** <<< TYPE-DECLS [NamedSetOfNULL] >>> ***/
1233
1234typedef struct NamedSetOfNULL {
1235 A_SET_OF(NULL_t) list;
1236
1237 /* Context for parsing across buffer boundaries */
1238 asn_struct_ctx_t _asn_ctx;
1239} NamedSetOfNULL_t;
1240
1241/*** <<< FUNC-DECLS [NamedSetOfNULL] >>> ***/
1242
1243extern asn_TYPE_descriptor_t asn_DEF_NamedSetOfNULL;
1244
1245/*** <<< STAT-DEFS [NamedSetOfNULL] >>> ***/
1246
1247static asn_TYPE_member_t asn_MBR_NamedSetOfNULL_1[] = {
1248 { ATF_POINTER, 0, 0,
1249 .tag = (ASN_TAG_CLASS_UNIVERSAL | (5 << 2)),
1250 .tag_mode = 0,
1251 .type = &asn_DEF_NULL,
1252 .memb_constraints = 0, /* Defer constraints checking to the member type */
vlm337167e2005-11-26 11:25:14 +00001253 .per_constraints = 0, /* PER is not compiled, use -gen-PER */
1254 .default_value = 0,
vlmfbc0bbb2005-11-07 15:26:47 +00001255 .name = "y"
1256 },
1257};
vlm337167e2005-11-26 11:25:14 +00001258static ber_tlv_tag_t asn_DEF_NamedSetOfNULL_tags_1[] = {
vlmfbc0bbb2005-11-07 15:26:47 +00001259 (ASN_TAG_CLASS_UNIVERSAL | (17 << 2))
1260};
vlm337167e2005-11-26 11:25:14 +00001261static asn_SET_OF_specifics_t asn_SPC_NamedSetOfNULL_specs_1 = {
vlmfbc0bbb2005-11-07 15:26:47 +00001262 sizeof(struct NamedSetOfNULL),
1263 offsetof(struct NamedSetOfNULL, _asn_ctx),
1264 1, /* XER encoding is XMLValueList */
1265};
1266asn_TYPE_descriptor_t asn_DEF_NamedSetOfNULL = {
1267 "NamedSetOfNULL",
1268 "NamedSetOfNULL",
1269 SET_OF_free,
1270 SET_OF_print,
1271 SET_OF_constraint,
1272 SET_OF_decode_ber,
1273 SET_OF_encode_der,
1274 SET_OF_decode_xer,
1275 SET_OF_encode_xer,
vlmb1b193e2006-08-18 01:46:46 +00001276 0, 0, /* No PER support, use "-gen-PER" to enable */
vlmfbc0bbb2005-11-07 15:26:47 +00001277 0, /* Use generic outmost tag fetcher */
vlm337167e2005-11-26 11:25:14 +00001278 asn_DEF_NamedSetOfNULL_tags_1,
1279 sizeof(asn_DEF_NamedSetOfNULL_tags_1)
1280 /sizeof(asn_DEF_NamedSetOfNULL_tags_1[0]), /* 1 */
1281 asn_DEF_NamedSetOfNULL_tags_1, /* Same as above */
1282 sizeof(asn_DEF_NamedSetOfNULL_tags_1)
1283 /sizeof(asn_DEF_NamedSetOfNULL_tags_1[0]), /* 1 */
1284 0, /* No PER visible constraints */
vlmfbc0bbb2005-11-07 15:26:47 +00001285 asn_MBR_NamedSetOfNULL_1,
1286 1, /* Single element */
vlm337167e2005-11-26 11:25:14 +00001287 &asn_SPC_NamedSetOfNULL_specs_1 /* Additional specs */
vlmfbc0bbb2005-11-07 15:26:47 +00001288};
1289
1290
1291/*** <<< INCLUDES [NamedSetOfREAL] >>> ***/
1292
1293#include <REAL.h>
1294#include <asn_SET_OF.h>
1295#include <constr_SET_OF.h>
1296
1297/*** <<< TYPE-DECLS [NamedSetOfREAL] >>> ***/
1298
1299typedef struct NamedSetOfREAL {
1300 A_SET_OF(REAL_t) list;
1301
1302 /* Context for parsing across buffer boundaries */
1303 asn_struct_ctx_t _asn_ctx;
1304} NamedSetOfREAL_t;
1305
1306/*** <<< FUNC-DECLS [NamedSetOfREAL] >>> ***/
1307
1308extern asn_TYPE_descriptor_t asn_DEF_NamedSetOfREAL;
1309
1310/*** <<< STAT-DEFS [NamedSetOfREAL] >>> ***/
1311
1312static asn_TYPE_member_t asn_MBR_NamedSetOfREAL_1[] = {
1313 { ATF_POINTER, 0, 0,
1314 .tag = (ASN_TAG_CLASS_UNIVERSAL | (9 << 2)),
1315 .tag_mode = 0,
1316 .type = &asn_DEF_REAL,
1317 .memb_constraints = 0, /* Defer constraints checking to the member type */
vlm337167e2005-11-26 11:25:14 +00001318 .per_constraints = 0, /* PER is not compiled, use -gen-PER */
1319 .default_value = 0,
vlmfbc0bbb2005-11-07 15:26:47 +00001320 .name = "name"
1321 },
1322};
vlm337167e2005-11-26 11:25:14 +00001323static ber_tlv_tag_t asn_DEF_NamedSetOfREAL_tags_1[] = {
vlmfbc0bbb2005-11-07 15:26:47 +00001324 (ASN_TAG_CLASS_UNIVERSAL | (17 << 2))
1325};
vlm337167e2005-11-26 11:25:14 +00001326static asn_SET_OF_specifics_t asn_SPC_NamedSetOfREAL_specs_1 = {
vlmfbc0bbb2005-11-07 15:26:47 +00001327 sizeof(struct NamedSetOfREAL),
1328 offsetof(struct NamedSetOfREAL, _asn_ctx),
1329 0, /* XER encoding is XMLDelimitedItemList */
1330};
1331asn_TYPE_descriptor_t asn_DEF_NamedSetOfREAL = {
1332 "NamedSetOfREAL",
1333 "NamedSetOfREAL",
1334 SET_OF_free,
1335 SET_OF_print,
1336 SET_OF_constraint,
1337 SET_OF_decode_ber,
1338 SET_OF_encode_der,
1339 SET_OF_decode_xer,
1340 SET_OF_encode_xer,
vlmb1b193e2006-08-18 01:46:46 +00001341 0, 0, /* No PER support, use "-gen-PER" to enable */
vlmfbc0bbb2005-11-07 15:26:47 +00001342 0, /* Use generic outmost tag fetcher */
vlm337167e2005-11-26 11:25:14 +00001343 asn_DEF_NamedSetOfREAL_tags_1,
1344 sizeof(asn_DEF_NamedSetOfREAL_tags_1)
1345 /sizeof(asn_DEF_NamedSetOfREAL_tags_1[0]), /* 1 */
1346 asn_DEF_NamedSetOfREAL_tags_1, /* Same as above */
1347 sizeof(asn_DEF_NamedSetOfREAL_tags_1)
1348 /sizeof(asn_DEF_NamedSetOfREAL_tags_1[0]), /* 1 */
1349 0, /* No PER visible constraints */
vlmfbc0bbb2005-11-07 15:26:47 +00001350 asn_MBR_NamedSetOfREAL_1,
1351 1, /* Single element */
vlm337167e2005-11-26 11:25:14 +00001352 &asn_SPC_NamedSetOfREAL_specs_1 /* Additional specs */
vlmfbc0bbb2005-11-07 15:26:47 +00001353};
1354
1355
1356/*** <<< INCLUDES [NamedSetOfEnums] >>> ***/
1357
1358#include <ENUMERATED.h>
1359#include <asn_SET_OF.h>
1360#include <constr_SET_OF.h>
1361
1362/*** <<< DEPS [NamedSetOfEnums] >>> ***/
1363
1364typedef enum name {
1365 name_one = 0,
1366 name_oneMore = 1
vlm7c8aa5e2006-03-21 07:25:18 +00001367} e_name;
vlmfbc0bbb2005-11-07 15:26:47 +00001368
1369/*** <<< TYPE-DECLS [NamedSetOfEnums] >>> ***/
1370
1371typedef struct NamedSetOfEnums {
1372 A_SET_OF(ENUMERATED_t) list;
1373
1374 /* Context for parsing across buffer boundaries */
1375 asn_struct_ctx_t _asn_ctx;
1376} NamedSetOfEnums_t;
1377
1378/*** <<< FUNC-DECLS [NamedSetOfEnums] >>> ***/
1379
1380/* extern asn_TYPE_descriptor_t asn_DEF_name_2; // (Use -fall-defs-global to expose) */
1381extern asn_TYPE_descriptor_t asn_DEF_NamedSetOfEnums;
1382
1383/*** <<< CODE [NamedSetOfEnums] >>> ***/
1384
1385static int
1386name_2_constraint(asn_TYPE_descriptor_t *td, const void *sptr,
vlmaf68ef52006-07-13 11:19:01 +00001387 asn_app_constraint_failed_f *ctfailcb, void *app_key) {
vlmfbc0bbb2005-11-07 15:26:47 +00001388 /* Replace with underlying type checker */
1389 td->check_constraints = asn_DEF_ENUMERATED.check_constraints;
vlmaf68ef52006-07-13 11:19:01 +00001390 return td->check_constraints(td, sptr, ctfailcb, app_key);
vlmfbc0bbb2005-11-07 15:26:47 +00001391}
1392
1393/*
1394 * This type is implemented using ENUMERATED,
1395 * so here we adjust the DEF accordingly.
1396 */
1397static void
1398name_2_inherit_TYPE_descriptor(asn_TYPE_descriptor_t *td) {
1399 td->free_struct = asn_DEF_ENUMERATED.free_struct;
1400 td->print_struct = asn_DEF_ENUMERATED.print_struct;
1401 td->ber_decoder = asn_DEF_ENUMERATED.ber_decoder;
1402 td->der_encoder = asn_DEF_ENUMERATED.der_encoder;
1403 td->xer_decoder = asn_DEF_ENUMERATED.xer_decoder;
1404 td->xer_encoder = asn_DEF_ENUMERATED.xer_encoder;
vlm337167e2005-11-26 11:25:14 +00001405 td->uper_decoder = asn_DEF_ENUMERATED.uper_decoder;
vlmb1b193e2006-08-18 01:46:46 +00001406 td->uper_encoder = asn_DEF_ENUMERATED.uper_encoder;
vlm337167e2005-11-26 11:25:14 +00001407 if(!td->per_constraints)
1408 td->per_constraints = asn_DEF_ENUMERATED.per_constraints;
vlmfbc0bbb2005-11-07 15:26:47 +00001409 td->elements = asn_DEF_ENUMERATED.elements;
1410 td->elements_count = asn_DEF_ENUMERATED.elements_count;
1411 /* td->specifics = asn_DEF_ENUMERATED.specifics; // Defined explicitly */
1412}
1413
1414static void
1415name_2_free(asn_TYPE_descriptor_t *td,
1416 void *struct_ptr, int contents_only) {
1417 name_2_inherit_TYPE_descriptor(td);
1418 td->free_struct(td, struct_ptr, contents_only);
1419}
1420
1421static int
1422name_2_print(asn_TYPE_descriptor_t *td, const void *struct_ptr,
1423 int ilevel, asn_app_consume_bytes_f *cb, void *app_key) {
1424 name_2_inherit_TYPE_descriptor(td);
1425 return td->print_struct(td, struct_ptr, ilevel, cb, app_key);
1426}
1427
1428static asn_dec_rval_t
1429name_2_decode_ber(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td,
1430 void **structure, const void *bufptr, size_t size, int tag_mode) {
1431 name_2_inherit_TYPE_descriptor(td);
1432 return td->ber_decoder(opt_codec_ctx, td, structure, bufptr, size, tag_mode);
1433}
1434
1435static asn_enc_rval_t
1436name_2_encode_der(asn_TYPE_descriptor_t *td,
1437 void *structure, int tag_mode, ber_tlv_tag_t tag,
1438 asn_app_consume_bytes_f *cb, void *app_key) {
1439 name_2_inherit_TYPE_descriptor(td);
1440 return td->der_encoder(td, structure, tag_mode, tag, cb, app_key);
1441}
1442
1443static asn_dec_rval_t
1444name_2_decode_xer(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td,
1445 void **structure, const char *opt_mname, const void *bufptr, size_t size) {
1446 name_2_inherit_TYPE_descriptor(td);
1447 return td->xer_decoder(opt_codec_ctx, td, structure, opt_mname, bufptr, size);
1448}
1449
1450static asn_enc_rval_t
1451name_2_encode_xer(asn_TYPE_descriptor_t *td, void *structure,
1452 int ilevel, enum xer_encoder_flags_e flags,
1453 asn_app_consume_bytes_f *cb, void *app_key) {
1454 name_2_inherit_TYPE_descriptor(td);
1455 return td->xer_encoder(td, structure, ilevel, flags, cb, app_key);
1456}
1457
1458
1459/*** <<< STAT-DEFS [NamedSetOfEnums] >>> ***/
1460
vlm337167e2005-11-26 11:25:14 +00001461static asn_INTEGER_enum_map_t asn_MAP_name_value2enum_2[] = {
vlmfbc0bbb2005-11-07 15:26:47 +00001462 { 0, 3, "one" },
1463 { 1, 7, "oneMore" }
1464};
vlm337167e2005-11-26 11:25:14 +00001465static unsigned int asn_MAP_name_enum2value_2[] = {
vlmfbc0bbb2005-11-07 15:26:47 +00001466 0, /* one(0) */
1467 1 /* oneMore(1) */
1468};
vlm337167e2005-11-26 11:25:14 +00001469static asn_INTEGER_specifics_t asn_SPC_name_specs_2 = {
1470 asn_MAP_name_value2enum_2, /* "tag" => N; sorted by tag */
1471 asn_MAP_name_enum2value_2, /* N => "tag"; sorted by N */
vlmfbc0bbb2005-11-07 15:26:47 +00001472 2, /* Number of elements in the maps */
1473 0, /* Enumeration is not extensible */
vlm12164c42007-12-03 13:41:36 +00001474 1, /* Strict enumeration */
1475 0, /* Native long size */
1476 0
vlmfbc0bbb2005-11-07 15:26:47 +00001477};
vlm337167e2005-11-26 11:25:14 +00001478static ber_tlv_tag_t asn_DEF_name_tags_2[] = {
vlmfbc0bbb2005-11-07 15:26:47 +00001479 (ASN_TAG_CLASS_UNIVERSAL | (10 << 2))
1480};
1481static /* Use -fall-defs-global to expose */
1482asn_TYPE_descriptor_t asn_DEF_name_2 = {
vlm337167e2005-11-26 11:25:14 +00001483 "ENUMERATED",
1484 "ENUMERATED",
vlmfbc0bbb2005-11-07 15:26:47 +00001485 name_2_free,
1486 name_2_print,
1487 name_2_constraint,
1488 name_2_decode_ber,
1489 name_2_encode_der,
1490 name_2_decode_xer,
1491 name_2_encode_xer,
vlmb1b193e2006-08-18 01:46:46 +00001492 0, 0, /* No PER support, use "-gen-PER" to enable */
vlmfbc0bbb2005-11-07 15:26:47 +00001493 0, /* Use generic outmost tag fetcher */
vlm337167e2005-11-26 11:25:14 +00001494 asn_DEF_name_tags_2,
1495 sizeof(asn_DEF_name_tags_2)
1496 /sizeof(asn_DEF_name_tags_2[0]), /* 1 */
1497 asn_DEF_name_tags_2, /* Same as above */
1498 sizeof(asn_DEF_name_tags_2)
1499 /sizeof(asn_DEF_name_tags_2[0]), /* 1 */
1500 0, /* No PER visible constraints */
vlmfbc0bbb2005-11-07 15:26:47 +00001501 0, 0, /* Defined elsewhere */
vlm337167e2005-11-26 11:25:14 +00001502 &asn_SPC_name_specs_2 /* Additional specs */
vlmfbc0bbb2005-11-07 15:26:47 +00001503};
1504
1505static asn_TYPE_member_t asn_MBR_NamedSetOfEnums_1[] = {
1506 { ATF_POINTER, 0, 0,
1507 .tag = (ASN_TAG_CLASS_UNIVERSAL | (10 << 2)),
1508 .tag_mode = 0,
1509 .type = &asn_DEF_name_2,
1510 .memb_constraints = 0, /* Defer constraints checking to the member type */
vlm337167e2005-11-26 11:25:14 +00001511 .per_constraints = 0, /* PER is not compiled, use -gen-PER */
1512 .default_value = 0,
vlmfbc0bbb2005-11-07 15:26:47 +00001513 .name = "name"
1514 },
1515};
vlm337167e2005-11-26 11:25:14 +00001516static ber_tlv_tag_t asn_DEF_NamedSetOfEnums_tags_1[] = {
vlmfbc0bbb2005-11-07 15:26:47 +00001517 (ASN_TAG_CLASS_UNIVERSAL | (17 << 2))
1518};
vlm337167e2005-11-26 11:25:14 +00001519static asn_SET_OF_specifics_t asn_SPC_NamedSetOfEnums_specs_1 = {
vlmfbc0bbb2005-11-07 15:26:47 +00001520 sizeof(struct NamedSetOfEnums),
1521 offsetof(struct NamedSetOfEnums, _asn_ctx),
1522 1, /* XER encoding is XMLValueList */
1523};
1524asn_TYPE_descriptor_t asn_DEF_NamedSetOfEnums = {
1525 "NamedSetOfEnums",
1526 "NamedSetOfEnums",
1527 SET_OF_free,
1528 SET_OF_print,
1529 SET_OF_constraint,
1530 SET_OF_decode_ber,
1531 SET_OF_encode_der,
1532 SET_OF_decode_xer,
1533 SET_OF_encode_xer,
vlmb1b193e2006-08-18 01:46:46 +00001534 0, 0, /* No PER support, use "-gen-PER" to enable */
vlmfbc0bbb2005-11-07 15:26:47 +00001535 0, /* Use generic outmost tag fetcher */
vlm337167e2005-11-26 11:25:14 +00001536 asn_DEF_NamedSetOfEnums_tags_1,
1537 sizeof(asn_DEF_NamedSetOfEnums_tags_1)
1538 /sizeof(asn_DEF_NamedSetOfEnums_tags_1[0]), /* 1 */
1539 asn_DEF_NamedSetOfEnums_tags_1, /* Same as above */
1540 sizeof(asn_DEF_NamedSetOfEnums_tags_1)
1541 /sizeof(asn_DEF_NamedSetOfEnums_tags_1[0]), /* 1 */
1542 0, /* No PER visible constraints */
vlmfbc0bbb2005-11-07 15:26:47 +00001543 asn_MBR_NamedSetOfEnums_1,
1544 1, /* Single element */
vlm337167e2005-11-26 11:25:14 +00001545 &asn_SPC_NamedSetOfEnums_specs_1 /* Additional specs */
vlmfbc0bbb2005-11-07 15:26:47 +00001546};
1547
1548
vlm422e4ce2005-02-18 16:30:26 +00001549/*** <<< INCLUDES [SequenceOf] >>> ***/
vlm0d9046e2005-02-14 20:40:57 +00001550
1551#include <INTEGER.h>
1552#include <asn_SEQUENCE_OF.h>
1553#include <constr_SEQUENCE_OF.h>
1554
vlm422e4ce2005-02-18 16:30:26 +00001555/*** <<< TYPE-DECLS [SequenceOf] >>> ***/
vlm0d9046e2005-02-14 20:40:57 +00001556
vlm422e4ce2005-02-18 16:30:26 +00001557typedef struct SequenceOf {
vlm0d9046e2005-02-14 20:40:57 +00001558 A_SEQUENCE_OF(INTEGER_t) list;
1559
1560 /* Context for parsing across buffer boundaries */
1561 asn_struct_ctx_t _asn_ctx;
vlm422e4ce2005-02-18 16:30:26 +00001562} SequenceOf_t;
vlm0d9046e2005-02-14 20:40:57 +00001563
vlm0b567bf2005-03-04 22:18:20 +00001564/*** <<< FUNC-DECLS [SequenceOf] >>> ***/
1565
1566extern asn_TYPE_descriptor_t asn_DEF_SequenceOf;
1567
vlm422e4ce2005-02-18 16:30:26 +00001568/*** <<< STAT-DEFS [SequenceOf] >>> ***/
vlm0d9046e2005-02-14 20:40:57 +00001569
vlm44fe49a2005-03-04 11:26:08 +00001570static asn_TYPE_member_t asn_MBR_SequenceOf_1[] = {
vlm2cebdf32005-08-16 16:57:17 +00001571 { ATF_POINTER, 0, 0,
vlm0d9046e2005-02-14 20:40:57 +00001572 .tag = (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)),
1573 .tag_mode = 0,
vlme0fea712005-08-29 10:31:14 +00001574 .type = &asn_DEF_INTEGER,
vlm0d9046e2005-02-14 20:40:57 +00001575 .memb_constraints = 0, /* Defer constraints checking to the member type */
vlm337167e2005-11-26 11:25:14 +00001576 .per_constraints = 0, /* PER is not compiled, use -gen-PER */
1577 .default_value = 0,
vlm0d9046e2005-02-14 20:40:57 +00001578 .name = "id"
1579 },
1580};
vlm337167e2005-11-26 11:25:14 +00001581static ber_tlv_tag_t asn_DEF_SequenceOf_tags_1[] = {
vlm0d9046e2005-02-14 20:40:57 +00001582 (ASN_TAG_CLASS_UNIVERSAL | (16 << 2))
1583};
vlm337167e2005-11-26 11:25:14 +00001584static asn_SET_OF_specifics_t asn_SPC_SequenceOf_specs_1 = {
vlm422e4ce2005-02-18 16:30:26 +00001585 sizeof(struct SequenceOf),
1586 offsetof(struct SequenceOf, _asn_ctx),
vlm0d9046e2005-02-14 20:40:57 +00001587 0, /* XER encoding is XMLDelimitedItemList */
1588};
vlm422e4ce2005-02-18 16:30:26 +00001589asn_TYPE_descriptor_t asn_DEF_SequenceOf = {
1590 "SequenceOf",
1591 "SequenceOf",
vlm0d9046e2005-02-14 20:40:57 +00001592 SEQUENCE_OF_free,
1593 SEQUENCE_OF_print,
1594 SEQUENCE_OF_constraint,
1595 SEQUENCE_OF_decode_ber,
1596 SEQUENCE_OF_encode_der,
1597 SEQUENCE_OF_decode_xer,
1598 SEQUENCE_OF_encode_xer,
vlmb1b193e2006-08-18 01:46:46 +00001599 0, 0, /* No PER support, use "-gen-PER" to enable */
vlm0d9046e2005-02-14 20:40:57 +00001600 0, /* Use generic outmost tag fetcher */
vlm337167e2005-11-26 11:25:14 +00001601 asn_DEF_SequenceOf_tags_1,
1602 sizeof(asn_DEF_SequenceOf_tags_1)
1603 /sizeof(asn_DEF_SequenceOf_tags_1[0]), /* 1 */
1604 asn_DEF_SequenceOf_tags_1, /* Same as above */
1605 sizeof(asn_DEF_SequenceOf_tags_1)
1606 /sizeof(asn_DEF_SequenceOf_tags_1[0]), /* 1 */
1607 0, /* No PER visible constraints */
vlm44fe49a2005-03-04 11:26:08 +00001608 asn_MBR_SequenceOf_1,
vlm0d9046e2005-02-14 20:40:57 +00001609 1, /* Single element */
vlm337167e2005-11-26 11:25:14 +00001610 &asn_SPC_SequenceOf_specs_1 /* Additional specs */
vlm0d9046e2005-02-14 20:40:57 +00001611};
1612
vlm6d5cb6b2005-02-24 22:38:43 +00001613
1614/*** <<< INCLUDES [SeqOfZuka] >>> ***/
1615
1616#include <NULL.h>
1617#include <asn_SEQUENCE_OF.h>
1618#include <constr_SEQUENCE_OF.h>
1619
vlm6d5cb6b2005-02-24 22:38:43 +00001620/*** <<< TYPE-DECLS [SeqOfZuka] >>> ***/
1621
vlm6d5cb6b2005-02-24 22:38:43 +00001622typedef struct SeqOfZuka {
1623 A_SEQUENCE_OF(NULL_t) list;
1624
1625 /* Context for parsing across buffer boundaries */
1626 asn_struct_ctx_t _asn_ctx;
1627} SeqOfZuka_t;
1628
vlm0b567bf2005-03-04 22:18:20 +00001629/*** <<< FUNC-DECLS [SeqOfZuka] >>> ***/
1630
1631extern asn_TYPE_descriptor_t asn_DEF_SeqOfZuka;
1632
vlm6d5cb6b2005-02-24 22:38:43 +00001633/*** <<< STAT-DEFS [SeqOfZuka] >>> ***/
1634
vlm44fe49a2005-03-04 11:26:08 +00001635static asn_TYPE_member_t asn_MBR_SeqOfZuka_1[] = {
vlm2cebdf32005-08-16 16:57:17 +00001636 { ATF_POINTER, 0, 0,
vlm6d5cb6b2005-02-24 22:38:43 +00001637 .tag = (ASN_TAG_CLASS_UNIVERSAL | (5 << 2)),
1638 .tag_mode = 0,
vlme0fea712005-08-29 10:31:14 +00001639 .type = &asn_DEF_NULL,
vlm6d5cb6b2005-02-24 22:38:43 +00001640 .memb_constraints = 0, /* Defer constraints checking to the member type */
vlm337167e2005-11-26 11:25:14 +00001641 .per_constraints = 0, /* PER is not compiled, use -gen-PER */
1642 .default_value = 0,
vlm6d5cb6b2005-02-24 22:38:43 +00001643 .name = "zuka"
1644 },
1645};
vlm337167e2005-11-26 11:25:14 +00001646static ber_tlv_tag_t asn_DEF_SeqOfZuka_tags_1[] = {
vlm6d5cb6b2005-02-24 22:38:43 +00001647 (ASN_TAG_CLASS_UNIVERSAL | (16 << 2))
1648};
vlm337167e2005-11-26 11:25:14 +00001649static asn_SET_OF_specifics_t asn_SPC_SeqOfZuka_specs_1 = {
vlm6d5cb6b2005-02-24 22:38:43 +00001650 sizeof(struct SeqOfZuka),
1651 offsetof(struct SeqOfZuka, _asn_ctx),
1652 1, /* XER encoding is XMLValueList */
1653};
1654asn_TYPE_descriptor_t asn_DEF_SeqOfZuka = {
1655 "SeqOfZuka",
1656 "SeqOfZuka",
1657 SEQUENCE_OF_free,
1658 SEQUENCE_OF_print,
1659 SEQUENCE_OF_constraint,
1660 SEQUENCE_OF_decode_ber,
1661 SEQUENCE_OF_encode_der,
1662 SEQUENCE_OF_decode_xer,
1663 SEQUENCE_OF_encode_xer,
vlmb1b193e2006-08-18 01:46:46 +00001664 0, 0, /* No PER support, use "-gen-PER" to enable */
vlm6d5cb6b2005-02-24 22:38:43 +00001665 0, /* Use generic outmost tag fetcher */
vlm337167e2005-11-26 11:25:14 +00001666 asn_DEF_SeqOfZuka_tags_1,
1667 sizeof(asn_DEF_SeqOfZuka_tags_1)
1668 /sizeof(asn_DEF_SeqOfZuka_tags_1[0]), /* 1 */
1669 asn_DEF_SeqOfZuka_tags_1, /* Same as above */
1670 sizeof(asn_DEF_SeqOfZuka_tags_1)
1671 /sizeof(asn_DEF_SeqOfZuka_tags_1[0]), /* 1 */
1672 0, /* No PER visible constraints */
vlm44fe49a2005-03-04 11:26:08 +00001673 asn_MBR_SeqOfZuka_1,
vlm6d5cb6b2005-02-24 22:38:43 +00001674 1, /* Single element */
vlm337167e2005-11-26 11:25:14 +00001675 &asn_SPC_SeqOfZuka_specs_1 /* Additional specs */
vlm6d5cb6b2005-02-24 22:38:43 +00001676};
1677
vlmfbc0bbb2005-11-07 15:26:47 +00001678
1679/*** <<< INCLUDES [SetOfChoice] >>> ***/
1680
1681#include <asn_SET_OF.h>
1682#include <constr_SET_OF.h>
1683
1684/*** <<< FWD-DECLS [SetOfChoice] >>> ***/
1685
1686struct SimpleChoice;
1687
1688/*** <<< TYPE-DECLS [SetOfChoice] >>> ***/
1689
1690typedef struct SetOfChoice {
1691 A_SET_OF(struct SimpleChoice) list;
1692
1693 /* Context for parsing across buffer boundaries */
1694 asn_struct_ctx_t _asn_ctx;
1695} SetOfChoice_t;
1696
1697/*** <<< FUNC-DECLS [SetOfChoice] >>> ***/
1698
1699extern asn_TYPE_descriptor_t asn_DEF_SetOfChoice;
1700
1701/*** <<< POST-INCLUDE [SetOfChoice] >>> ***/
1702
vlmea226772006-09-13 02:51:20 +00001703#include "SimpleChoice.h"
vlmfbc0bbb2005-11-07 15:26:47 +00001704
1705/*** <<< STAT-DEFS [SetOfChoice] >>> ***/
1706
1707static asn_TYPE_member_t asn_MBR_SetOfChoice_1[] = {
1708 { ATF_POINTER, 0, 0,
1709 .tag = -1 /* Ambiguous tag (CHOICE?) */,
1710 .tag_mode = 0,
1711 .type = &asn_DEF_SimpleChoice,
1712 .memb_constraints = 0, /* Defer constraints checking to the member type */
vlm337167e2005-11-26 11:25:14 +00001713 .per_constraints = 0, /* PER is not compiled, use -gen-PER */
1714 .default_value = 0,
vlmfbc0bbb2005-11-07 15:26:47 +00001715 .name = ""
1716 },
1717};
vlm337167e2005-11-26 11:25:14 +00001718static ber_tlv_tag_t asn_DEF_SetOfChoice_tags_1[] = {
vlmfbc0bbb2005-11-07 15:26:47 +00001719 (ASN_TAG_CLASS_UNIVERSAL | (17 << 2))
1720};
vlm337167e2005-11-26 11:25:14 +00001721static asn_SET_OF_specifics_t asn_SPC_SetOfChoice_specs_1 = {
vlmfbc0bbb2005-11-07 15:26:47 +00001722 sizeof(struct SetOfChoice),
1723 offsetof(struct SetOfChoice, _asn_ctx),
vlm6d44a542005-11-08 03:06:16 +00001724 2, /* XER encoding is XMLValueList */
vlmfbc0bbb2005-11-07 15:26:47 +00001725};
1726asn_TYPE_descriptor_t asn_DEF_SetOfChoice = {
1727 "SetOfChoice",
1728 "SetOfChoice",
1729 SET_OF_free,
1730 SET_OF_print,
1731 SET_OF_constraint,
1732 SET_OF_decode_ber,
1733 SET_OF_encode_der,
1734 SET_OF_decode_xer,
1735 SET_OF_encode_xer,
vlmb1b193e2006-08-18 01:46:46 +00001736 0, 0, /* No PER support, use "-gen-PER" to enable */
vlmfbc0bbb2005-11-07 15:26:47 +00001737 0, /* Use generic outmost tag fetcher */
vlm337167e2005-11-26 11:25:14 +00001738 asn_DEF_SetOfChoice_tags_1,
1739 sizeof(asn_DEF_SetOfChoice_tags_1)
1740 /sizeof(asn_DEF_SetOfChoice_tags_1[0]), /* 1 */
1741 asn_DEF_SetOfChoice_tags_1, /* Same as above */
1742 sizeof(asn_DEF_SetOfChoice_tags_1)
1743 /sizeof(asn_DEF_SetOfChoice_tags_1[0]), /* 1 */
1744 0, /* No PER visible constraints */
vlmfbc0bbb2005-11-07 15:26:47 +00001745 asn_MBR_SetOfChoice_1,
1746 1, /* Single element */
vlm337167e2005-11-26 11:25:14 +00001747 &asn_SPC_SetOfChoice_specs_1 /* Additional specs */
vlmfbc0bbb2005-11-07 15:26:47 +00001748};
1749
1750
1751/*** <<< INCLUDES [NamedSetOfChoice] >>> ***/
1752
1753#include <asn_SET_OF.h>
1754#include <constr_SET_OF.h>
1755
1756/*** <<< FWD-DECLS [NamedSetOfChoice] >>> ***/
1757
1758struct SimpleChoice;
1759
1760/*** <<< TYPE-DECLS [NamedSetOfChoice] >>> ***/
1761
1762typedef struct NamedSetOfChoice {
1763 A_SET_OF(struct SimpleChoice) list;
1764
1765 /* Context for parsing across buffer boundaries */
1766 asn_struct_ctx_t _asn_ctx;
1767} NamedSetOfChoice_t;
1768
1769/*** <<< FUNC-DECLS [NamedSetOfChoice] >>> ***/
1770
1771extern asn_TYPE_descriptor_t asn_DEF_NamedSetOfChoice;
1772
1773/*** <<< POST-INCLUDE [NamedSetOfChoice] >>> ***/
1774
vlmea226772006-09-13 02:51:20 +00001775#include "SimpleChoice.h"
vlmfbc0bbb2005-11-07 15:26:47 +00001776
1777/*** <<< STAT-DEFS [NamedSetOfChoice] >>> ***/
1778
1779static asn_TYPE_member_t asn_MBR_NamedSetOfChoice_1[] = {
1780 { ATF_POINTER, 0, 0,
1781 .tag = -1 /* Ambiguous tag (CHOICE?) */,
1782 .tag_mode = 0,
1783 .type = &asn_DEF_SimpleChoice,
1784 .memb_constraints = 0, /* Defer constraints checking to the member type */
vlm337167e2005-11-26 11:25:14 +00001785 .per_constraints = 0, /* PER is not compiled, use -gen-PER */
1786 .default_value = 0,
vlmfbc0bbb2005-11-07 15:26:47 +00001787 .name = "whatever"
1788 },
1789};
vlm337167e2005-11-26 11:25:14 +00001790static ber_tlv_tag_t asn_DEF_NamedSetOfChoice_tags_1[] = {
vlmfbc0bbb2005-11-07 15:26:47 +00001791 (ASN_TAG_CLASS_UNIVERSAL | (17 << 2))
1792};
vlm337167e2005-11-26 11:25:14 +00001793static asn_SET_OF_specifics_t asn_SPC_NamedSetOfChoice_specs_1 = {
vlmfbc0bbb2005-11-07 15:26:47 +00001794 sizeof(struct NamedSetOfChoice),
1795 offsetof(struct NamedSetOfChoice, _asn_ctx),
vlm6d44a542005-11-08 03:06:16 +00001796 2, /* XER encoding is XMLValueList */
vlmfbc0bbb2005-11-07 15:26:47 +00001797};
1798asn_TYPE_descriptor_t asn_DEF_NamedSetOfChoice = {
1799 "NamedSetOfChoice",
1800 "NamedSetOfChoice",
1801 SET_OF_free,
1802 SET_OF_print,
1803 SET_OF_constraint,
1804 SET_OF_decode_ber,
1805 SET_OF_encode_der,
1806 SET_OF_decode_xer,
1807 SET_OF_encode_xer,
vlmb1b193e2006-08-18 01:46:46 +00001808 0, 0, /* No PER support, use "-gen-PER" to enable */
vlmfbc0bbb2005-11-07 15:26:47 +00001809 0, /* Use generic outmost tag fetcher */
vlm337167e2005-11-26 11:25:14 +00001810 asn_DEF_NamedSetOfChoice_tags_1,
1811 sizeof(asn_DEF_NamedSetOfChoice_tags_1)
1812 /sizeof(asn_DEF_NamedSetOfChoice_tags_1[0]), /* 1 */
1813 asn_DEF_NamedSetOfChoice_tags_1, /* Same as above */
1814 sizeof(asn_DEF_NamedSetOfChoice_tags_1)
1815 /sizeof(asn_DEF_NamedSetOfChoice_tags_1[0]), /* 1 */
1816 0, /* No PER visible constraints */
vlmfbc0bbb2005-11-07 15:26:47 +00001817 asn_MBR_NamedSetOfChoice_1,
1818 1, /* Single element */
vlm337167e2005-11-26 11:25:14 +00001819 &asn_SPC_NamedSetOfChoice_specs_1 /* Additional specs */
vlmfbc0bbb2005-11-07 15:26:47 +00001820};
1821
1822
1823/*** <<< INCLUDES [SimpleChoice] >>> ***/
1824
1825#include <NULL.h>
1826#include <INTEGER.h>
1827#include <constr_CHOICE.h>
1828
1829/*** <<< DEPS [SimpleChoice] >>> ***/
1830
1831typedef enum SimpleChoice_PR {
1832 SimpleChoice_PR_NOTHING, /* No components present */
1833 SimpleChoice_PR_a,
vlmb1b193e2006-08-18 01:46:46 +00001834 SimpleChoice_PR_b
vlmfbc0bbb2005-11-07 15:26:47 +00001835} SimpleChoice_PR;
1836
1837/*** <<< TYPE-DECLS [SimpleChoice] >>> ***/
1838
1839typedef struct SimpleChoice {
1840 SimpleChoice_PR present;
1841 union SimpleChoice_u {
1842 NULL_t a;
1843 INTEGER_t b;
1844 } choice;
1845
1846 /* Context for parsing across buffer boundaries */
1847 asn_struct_ctx_t _asn_ctx;
1848} SimpleChoice_t;
1849
1850/*** <<< FUNC-DECLS [SimpleChoice] >>> ***/
1851
1852extern asn_TYPE_descriptor_t asn_DEF_SimpleChoice;
1853
1854/*** <<< STAT-DEFS [SimpleChoice] >>> ***/
1855
1856static asn_TYPE_member_t asn_MBR_SimpleChoice_1[] = {
1857 { ATF_NOFLAGS, 0, offsetof(struct SimpleChoice, choice.a),
1858 .tag = (ASN_TAG_CLASS_CONTEXT | (0 << 2)),
1859 .tag_mode = -1, /* IMPLICIT tag at current level */
1860 .type = &asn_DEF_NULL,
1861 .memb_constraints = 0, /* Defer constraints checking to the member type */
vlm337167e2005-11-26 11:25:14 +00001862 .per_constraints = 0, /* PER is not compiled, use -gen-PER */
1863 .default_value = 0,
vlmfbc0bbb2005-11-07 15:26:47 +00001864 .name = "a"
1865 },
1866 { ATF_NOFLAGS, 0, offsetof(struct SimpleChoice, choice.b),
1867 .tag = (ASN_TAG_CLASS_CONTEXT | (1 << 2)),
1868 .tag_mode = -1, /* IMPLICIT tag at current level */
1869 .type = &asn_DEF_INTEGER,
1870 .memb_constraints = 0, /* Defer constraints checking to the member type */
vlm337167e2005-11-26 11:25:14 +00001871 .per_constraints = 0, /* PER is not compiled, use -gen-PER */
1872 .default_value = 0,
vlmfbc0bbb2005-11-07 15:26:47 +00001873 .name = "b"
1874 },
1875};
vlm337167e2005-11-26 11:25:14 +00001876static asn_TYPE_tag2member_t asn_MAP_SimpleChoice_tag2el_1[] = {
vlmfbc0bbb2005-11-07 15:26:47 +00001877 { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* a at 79 */
1878 { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 } /* b at 79 */
1879};
vlm337167e2005-11-26 11:25:14 +00001880static asn_CHOICE_specifics_t asn_SPC_SimpleChoice_specs_1 = {
vlmfbc0bbb2005-11-07 15:26:47 +00001881 sizeof(struct SimpleChoice),
1882 offsetof(struct SimpleChoice, _asn_ctx),
1883 offsetof(struct SimpleChoice, present),
1884 sizeof(((struct SimpleChoice *)0)->present),
vlm337167e2005-11-26 11:25:14 +00001885 asn_MAP_SimpleChoice_tag2el_1,
vlmfbc0bbb2005-11-07 15:26:47 +00001886 2, /* Count of tags in the map */
vlm337167e2005-11-26 11:25:14 +00001887 .canonical_order = 0,
1888 .ext_start = -1 /* Extensions start */
vlmfbc0bbb2005-11-07 15:26:47 +00001889};
1890asn_TYPE_descriptor_t asn_DEF_SimpleChoice = {
1891 "SimpleChoice",
1892 "SimpleChoice",
1893 CHOICE_free,
1894 CHOICE_print,
1895 CHOICE_constraint,
1896 CHOICE_decode_ber,
1897 CHOICE_encode_der,
1898 CHOICE_decode_xer,
1899 CHOICE_encode_xer,
vlmb1b193e2006-08-18 01:46:46 +00001900 0, 0, /* No PER support, use "-gen-PER" to enable */
vlmfbc0bbb2005-11-07 15:26:47 +00001901 CHOICE_outmost_tag,
1902 0, /* No effective tags (pointer) */
1903 0, /* No effective tags (count) */
1904 0, /* No tags (pointer) */
1905 0, /* No tags (count) */
vlm337167e2005-11-26 11:25:14 +00001906 0, /* No PER visible constraints */
vlmfbc0bbb2005-11-07 15:26:47 +00001907 asn_MBR_SimpleChoice_1,
1908 2, /* Elements count */
vlm337167e2005-11-26 11:25:14 +00001909 &asn_SPC_SimpleChoice_specs_1 /* Additional specs */
vlmfbc0bbb2005-11-07 15:26:47 +00001910};
1911