blob: 8abf6bb6ebca80306586964d6ff160b8f9045424 [file] [log] [blame]
Lev Walkin35631482004-07-01 00:52:50 +00001
Lev Walkinb47ddce2004-08-11 05:25:47 +00002/*** <<< INCLUDES [T1] >>> ***/
Lev Walkin35631482004-07-01 00:52:50 +00003
Lev Walkin35631482004-07-01 00:52:50 +00004#include <INTEGER.h>
Lev Walkinb47ddce2004-08-11 05:25:47 +00005#include <constr_SET.h>
6
7/*** <<< DEPS [T1] >>> ***/
Lev Walkin35631482004-07-01 00:52:50 +00008
9
10/*
11 * Method of determining the components presence
12 */
Lev Walkin64399722004-08-11 07:17:22 +000013typedef enum T1_PR {
Lev Walkin35631482004-07-01 00:52:50 +000014 T1_PR_i, /* Member i is present */
Lev Walkin64399722004-08-11 07:17:22 +000015} T1_PR;
Lev Walkin35631482004-07-01 00:52:50 +000016
17/*** <<< TYPE-DECLS [T1] >>> ***/
18
Lev Walkin35631482004-07-01 00:52:50 +000019typedef struct T1 {
20 INTEGER_t i;
21 /*
22 * This type is extensible,
23 * possible extensions are below.
24 */
25
26 /* Presence bitmask: ASN_SET_ISPRESENT(pT1, T1_PR_x) */
27 unsigned int _presence_map
28 [((1+(8*sizeof(unsigned int))-1)/(8*sizeof(unsigned int)))];
29
30 /* Context for parsing across buffer boundaries */
Lev Walkindfae9752004-09-29 13:19:37 +000031 asn_struct_ctx_t _asn_ctx;
Lev Walkin35631482004-07-01 00:52:50 +000032} T1_t;
33
Lev Walkinc8285712005-03-04 22:18:20 +000034/*** <<< FUNC-DECLS [T1] >>> ***/
35
36extern asn_TYPE_descriptor_t asn_DEF_T1;
37
Lev Walkin35631482004-07-01 00:52:50 +000038/*** <<< STAT-DEFS [T1] >>> ***/
39
Lev Walkine0272aa2005-03-04 11:26:08 +000040static asn_TYPE_member_t asn_MBR_T1_1[] = {
Lev Walkincc93b0f2004-09-10 09:18:20 +000041 { ATF_NOFLAGS, 0, offsetof(struct T1, i),
Lev Walkin2e3055d2004-08-20 13:36:32 +000042 .tag = (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)),
43 .tag_mode = 0,
Lev Walkinae7bf3f2005-08-29 10:31:14 +000044 .type = &asn_DEF_INTEGER,
Lev Walkinba58e1b2005-01-17 12:20:19 +000045 .memb_constraints = 0, /* Defer constraints checking to the member type */
Lev Walkin59b176e2005-11-26 11:25:14 +000046 .per_constraints = 0, /* PER is not compiled, use -gen-PER */
47 .default_value = 0,
Lev Walkin2e3055d2004-08-20 13:36:32 +000048 .name = "i"
Lev Walkin35631482004-07-01 00:52:50 +000049 },
50};
Lev Walkin59b176e2005-11-26 11:25:14 +000051static ber_tlv_tag_t asn_DEF_T1_tags_1[] = {
Lev Walkin35631482004-07-01 00:52:50 +000052 (ASN_TAG_CLASS_UNIVERSAL | (17 << 2))
53};
Lev Walkin59b176e2005-11-26 11:25:14 +000054static asn_TYPE_tag2member_t asn_MAP_T1_tag2el_1[] = {
Lev Walkin4062b012013-10-11 14:29:38 -070055 { (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)), 0, 0, 0 } /* i */
Lev Walkin35631482004-07-01 00:52:50 +000056};
Lev Walkin59b176e2005-11-26 11:25:14 +000057static uint8_t asn_MAP_T1_mmap_1[(1 + (8 * sizeof(unsigned int)) - 1) / 8] = {
Lev Walkin35631482004-07-01 00:52:50 +000058 (1 << 7)
59};
Lev Walkin59b176e2005-11-26 11:25:14 +000060static asn_SET_specifics_t asn_SPC_T1_specs_1 = {
Lev Walkin35631482004-07-01 00:52:50 +000061 sizeof(struct T1),
Lev Walkindfae9752004-09-29 13:19:37 +000062 offsetof(struct T1, _asn_ctx),
Lev Walkin35631482004-07-01 00:52:50 +000063 offsetof(struct T1, _presence_map),
Lev Walkin59b176e2005-11-26 11:25:14 +000064 asn_MAP_T1_tag2el_1,
Lev Walkin35631482004-07-01 00:52:50 +000065 1, /* Count of tags in the map */
Lev Walkin59b176e2005-11-26 11:25:14 +000066 asn_MAP_T1_tag2el_1, /* Same as above */
Lev Walkinf82138b2005-02-25 08:20:32 +000067 1, /* Count of tags in the CXER map */
Lev Walkin35631482004-07-01 00:52:50 +000068 1, /* Whether extensible */
Lev Walkin59b176e2005-11-26 11:25:14 +000069 (unsigned int *)asn_MAP_T1_mmap_1 /* Mandatory elements map */
Lev Walkin35631482004-07-01 00:52:50 +000070};
Lev Walkindfae9752004-09-29 13:19:37 +000071asn_TYPE_descriptor_t asn_DEF_T1 = {
Lev Walkin35631482004-07-01 00:52:50 +000072 "T1",
Lev Walkindc06f6b2004-10-20 15:50:55 +000073 "T1",
Lev Walkina9cc46e2004-09-22 16:06:28 +000074 SET_free,
75 SET_print,
Lev Walkin35631482004-07-01 00:52:50 +000076 SET_constraint,
77 SET_decode_ber,
78 SET_encode_der,
Lev Walkinb2230802005-02-14 20:31:31 +000079 SET_decode_xer,
Lev Walkina9cc46e2004-09-22 16:06:28 +000080 SET_encode_xer,
Lev Walkin9f5bb3a2006-08-18 01:46:46 +000081 0, 0, /* No PER support, use "-gen-PER" to enable */
Lev Walkin35631482004-07-01 00:52:50 +000082 0, /* Use generic outmost tag fetcher */
Lev Walkin59b176e2005-11-26 11:25:14 +000083 asn_DEF_T1_tags_1,
84 sizeof(asn_DEF_T1_tags_1)
85 /sizeof(asn_DEF_T1_tags_1[0]), /* 1 */
86 asn_DEF_T1_tags_1, /* Same as above */
87 sizeof(asn_DEF_T1_tags_1)
88 /sizeof(asn_DEF_T1_tags_1[0]), /* 1 */
89 0, /* No PER visible constraints */
Lev Walkine0272aa2005-03-04 11:26:08 +000090 asn_MBR_T1_1,
Lev Walkin2e3055d2004-08-20 13:36:32 +000091 1, /* Elements count */
Lev Walkin59b176e2005-11-26 11:25:14 +000092 &asn_SPC_T1_specs_1 /* Additional specs */
Lev Walkin35631482004-07-01 00:52:50 +000093};
94
95
Lev Walkinb47ddce2004-08-11 05:25:47 +000096/*** <<< INCLUDES [T2] >>> ***/
Lev Walkin35631482004-07-01 00:52:50 +000097
Lev Walkin35631482004-07-01 00:52:50 +000098#include <INTEGER.h>
Lev Walkinb47ddce2004-08-11 05:25:47 +000099#include <constr_SET.h>
100
101/*** <<< DEPS [T2] >>> ***/
Lev Walkin35631482004-07-01 00:52:50 +0000102
103
104/*
105 * Method of determining the components presence
106 */
Lev Walkin64399722004-08-11 07:17:22 +0000107typedef enum T2_PR {
Lev Walkin35631482004-07-01 00:52:50 +0000108 T2_PR_i, /* Member i is present */
Lev Walkin64399722004-08-11 07:17:22 +0000109} T2_PR;
Lev Walkin35631482004-07-01 00:52:50 +0000110
111/*** <<< TYPE-DECLS [T2] >>> ***/
112
Lev Walkin35631482004-07-01 00:52:50 +0000113typedef struct T2 {
114 INTEGER_t i;
115 /*
116 * This type is extensible,
117 * possible extensions are below.
118 */
119
120 /* Presence bitmask: ASN_SET_ISPRESENT(pT2, T2_PR_x) */
121 unsigned int _presence_map
122 [((1+(8*sizeof(unsigned int))-1)/(8*sizeof(unsigned int)))];
123
124 /* Context for parsing across buffer boundaries */
Lev Walkindfae9752004-09-29 13:19:37 +0000125 asn_struct_ctx_t _asn_ctx;
Lev Walkin35631482004-07-01 00:52:50 +0000126} T2_t;
127
Lev Walkinc8285712005-03-04 22:18:20 +0000128/*** <<< FUNC-DECLS [T2] >>> ***/
129
130extern asn_TYPE_descriptor_t asn_DEF_T2;
131
Lev Walkin35631482004-07-01 00:52:50 +0000132/*** <<< STAT-DEFS [T2] >>> ***/
133
Lev Walkine0272aa2005-03-04 11:26:08 +0000134static asn_TYPE_member_t asn_MBR_T2_1[] = {
Lev Walkincc93b0f2004-09-10 09:18:20 +0000135 { ATF_NOFLAGS, 0, offsetof(struct T2, i),
Lev Walkin2e3055d2004-08-20 13:36:32 +0000136 .tag = (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)),
137 .tag_mode = 0,
Lev Walkinae7bf3f2005-08-29 10:31:14 +0000138 .type = &asn_DEF_INTEGER,
Lev Walkinba58e1b2005-01-17 12:20:19 +0000139 .memb_constraints = 0, /* Defer constraints checking to the member type */
Lev Walkin59b176e2005-11-26 11:25:14 +0000140 .per_constraints = 0, /* PER is not compiled, use -gen-PER */
141 .default_value = 0,
Lev Walkin2e3055d2004-08-20 13:36:32 +0000142 .name = "i"
Lev Walkin35631482004-07-01 00:52:50 +0000143 },
144};
Lev Walkin59b176e2005-11-26 11:25:14 +0000145static ber_tlv_tag_t asn_DEF_T2_tags_1[] = {
Lev Walkin35631482004-07-01 00:52:50 +0000146 (ASN_TAG_CLASS_UNIVERSAL | (17 << 2))
147};
Lev Walkin59b176e2005-11-26 11:25:14 +0000148static asn_TYPE_tag2member_t asn_MAP_T2_tag2el_1[] = {
Lev Walkin4062b012013-10-11 14:29:38 -0700149 { (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)), 0, 0, 0 } /* i */
Lev Walkin35631482004-07-01 00:52:50 +0000150};
Lev Walkin59b176e2005-11-26 11:25:14 +0000151static uint8_t asn_MAP_T2_mmap_1[(1 + (8 * sizeof(unsigned int)) - 1) / 8] = {
Lev Walkin35631482004-07-01 00:52:50 +0000152 (1 << 7)
153};
Lev Walkin59b176e2005-11-26 11:25:14 +0000154static asn_SET_specifics_t asn_SPC_T2_specs_1 = {
Lev Walkin35631482004-07-01 00:52:50 +0000155 sizeof(struct T2),
Lev Walkindfae9752004-09-29 13:19:37 +0000156 offsetof(struct T2, _asn_ctx),
Lev Walkin35631482004-07-01 00:52:50 +0000157 offsetof(struct T2, _presence_map),
Lev Walkin59b176e2005-11-26 11:25:14 +0000158 asn_MAP_T2_tag2el_1,
Lev Walkin35631482004-07-01 00:52:50 +0000159 1, /* Count of tags in the map */
Lev Walkin59b176e2005-11-26 11:25:14 +0000160 asn_MAP_T2_tag2el_1, /* Same as above */
Lev Walkinf82138b2005-02-25 08:20:32 +0000161 1, /* Count of tags in the CXER map */
Lev Walkin35631482004-07-01 00:52:50 +0000162 1, /* Whether extensible */
Lev Walkin59b176e2005-11-26 11:25:14 +0000163 (unsigned int *)asn_MAP_T2_mmap_1 /* Mandatory elements map */
Lev Walkin35631482004-07-01 00:52:50 +0000164};
Lev Walkindfae9752004-09-29 13:19:37 +0000165asn_TYPE_descriptor_t asn_DEF_T2 = {
Lev Walkin35631482004-07-01 00:52:50 +0000166 "T2",
Lev Walkindc06f6b2004-10-20 15:50:55 +0000167 "T2",
Lev Walkina9cc46e2004-09-22 16:06:28 +0000168 SET_free,
169 SET_print,
Lev Walkin35631482004-07-01 00:52:50 +0000170 SET_constraint,
171 SET_decode_ber,
172 SET_encode_der,
Lev Walkinb2230802005-02-14 20:31:31 +0000173 SET_decode_xer,
Lev Walkina9cc46e2004-09-22 16:06:28 +0000174 SET_encode_xer,
Lev Walkin9f5bb3a2006-08-18 01:46:46 +0000175 0, 0, /* No PER support, use "-gen-PER" to enable */
Lev Walkin35631482004-07-01 00:52:50 +0000176 0, /* Use generic outmost tag fetcher */
Lev Walkin59b176e2005-11-26 11:25:14 +0000177 asn_DEF_T2_tags_1,
178 sizeof(asn_DEF_T2_tags_1)
179 /sizeof(asn_DEF_T2_tags_1[0]), /* 1 */
180 asn_DEF_T2_tags_1, /* Same as above */
181 sizeof(asn_DEF_T2_tags_1)
182 /sizeof(asn_DEF_T2_tags_1[0]), /* 1 */
183 0, /* No PER visible constraints */
Lev Walkine0272aa2005-03-04 11:26:08 +0000184 asn_MBR_T2_1,
Lev Walkin2e3055d2004-08-20 13:36:32 +0000185 1, /* Elements count */
Lev Walkin59b176e2005-11-26 11:25:14 +0000186 &asn_SPC_T2_specs_1 /* Additional specs */
Lev Walkin35631482004-07-01 00:52:50 +0000187};
188
189
Lev Walkinb47ddce2004-08-11 05:25:47 +0000190/*** <<< INCLUDES [T3] >>> ***/
191
192#include <INTEGER.h>
193#include <constr_CHOICE.h>
194
Lev Walkin35631482004-07-01 00:52:50 +0000195/*** <<< DEPS [T3] >>> ***/
196
Lev Walkinb47ddce2004-08-11 05:25:47 +0000197typedef enum T3_PR {
198 T3_PR_NOTHING, /* No components present */
199 T3_PR_i,
200 /* Extensions may appear below */
Lev Walkin9f5bb3a2006-08-18 01:46:46 +0000201
Lev Walkin64399722004-08-11 07:17:22 +0000202} T3_PR;
Lev Walkin35631482004-07-01 00:52:50 +0000203
204/*** <<< TYPE-DECLS [T3] >>> ***/
205
Lev Walkin35631482004-07-01 00:52:50 +0000206typedef struct T3 {
Lev Walkin64399722004-08-11 07:17:22 +0000207 T3_PR present;
Lev Walkin0f5d74c2005-08-14 15:03:31 +0000208 union T3_u {
Lev Walkin35631482004-07-01 00:52:50 +0000209 INTEGER_t i;
210 /*
211 * This type is extensible,
212 * possible extensions are below.
213 */
214 } choice;
215
216 /* Context for parsing across buffer boundaries */
Lev Walkindfae9752004-09-29 13:19:37 +0000217 asn_struct_ctx_t _asn_ctx;
Lev Walkin35631482004-07-01 00:52:50 +0000218} T3_t;
219
Lev Walkinc8285712005-03-04 22:18:20 +0000220/*** <<< FUNC-DECLS [T3] >>> ***/
221
222extern asn_TYPE_descriptor_t asn_DEF_T3;
223
Lev Walkin35631482004-07-01 00:52:50 +0000224/*** <<< STAT-DEFS [T3] >>> ***/
225
Lev Walkine0272aa2005-03-04 11:26:08 +0000226static asn_TYPE_member_t asn_MBR_T3_1[] = {
Lev Walkincc93b0f2004-09-10 09:18:20 +0000227 { ATF_NOFLAGS, 0, offsetof(struct T3, choice.i),
Lev Walkin2e3055d2004-08-20 13:36:32 +0000228 .tag = (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)),
229 .tag_mode = 0,
Lev Walkinae7bf3f2005-08-29 10:31:14 +0000230 .type = &asn_DEF_INTEGER,
Lev Walkinba58e1b2005-01-17 12:20:19 +0000231 .memb_constraints = 0, /* Defer constraints checking to the member type */
Lev Walkin59b176e2005-11-26 11:25:14 +0000232 .per_constraints = 0, /* PER is not compiled, use -gen-PER */
233 .default_value = 0,
Lev Walkin2e3055d2004-08-20 13:36:32 +0000234 .name = "i"
Lev Walkin35631482004-07-01 00:52:50 +0000235 },
236};
Lev Walkin59b176e2005-11-26 11:25:14 +0000237static asn_TYPE_tag2member_t asn_MAP_T3_tag2el_1[] = {
Lev Walkin4062b012013-10-11 14:29:38 -0700238 { (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)), 0, 0, 0 } /* i */
Lev Walkin35631482004-07-01 00:52:50 +0000239};
Lev Walkin59b176e2005-11-26 11:25:14 +0000240static asn_CHOICE_specifics_t asn_SPC_T3_specs_1 = {
Lev Walkin35631482004-07-01 00:52:50 +0000241 sizeof(struct T3),
Lev Walkindfae9752004-09-29 13:19:37 +0000242 offsetof(struct T3, _asn_ctx),
Lev Walkin35631482004-07-01 00:52:50 +0000243 offsetof(struct T3, present),
244 sizeof(((struct T3 *)0)->present),
Lev Walkin59b176e2005-11-26 11:25:14 +0000245 asn_MAP_T3_tag2el_1,
Lev Walkin35631482004-07-01 00:52:50 +0000246 1, /* Count of tags in the map */
Lev Walkin59b176e2005-11-26 11:25:14 +0000247 .canonical_order = 0,
248 .ext_start = 1 /* Extensions start */
Lev Walkin35631482004-07-01 00:52:50 +0000249};
Lev Walkindfae9752004-09-29 13:19:37 +0000250asn_TYPE_descriptor_t asn_DEF_T3 = {
Lev Walkin35631482004-07-01 00:52:50 +0000251 "T3",
Lev Walkindc06f6b2004-10-20 15:50:55 +0000252 "T3",
Lev Walkina9cc46e2004-09-22 16:06:28 +0000253 CHOICE_free,
254 CHOICE_print,
Lev Walkin35631482004-07-01 00:52:50 +0000255 CHOICE_constraint,
256 CHOICE_decode_ber,
257 CHOICE_encode_der,
Lev Walkin61b40d82004-10-23 15:07:45 +0000258 CHOICE_decode_xer,
Lev Walkina9cc46e2004-09-22 16:06:28 +0000259 CHOICE_encode_xer,
Lev Walkin9f5bb3a2006-08-18 01:46:46 +0000260 0, 0, /* No PER support, use "-gen-PER" to enable */
Lev Walkin35631482004-07-01 00:52:50 +0000261 CHOICE_outmost_tag,
Lev Walkin188ed2c2004-09-13 08:31:01 +0000262 0, /* No effective tags (pointer) */
263 0, /* No effective tags (count) */
264 0, /* No tags (pointer) */
265 0, /* No tags (count) */
Lev Walkin59b176e2005-11-26 11:25:14 +0000266 0, /* No PER visible constraints */
Lev Walkine0272aa2005-03-04 11:26:08 +0000267 asn_MBR_T3_1,
Lev Walkin2e3055d2004-08-20 13:36:32 +0000268 1, /* Elements count */
Lev Walkin59b176e2005-11-26 11:25:14 +0000269 &asn_SPC_T3_specs_1 /* Additional specs */
Lev Walkin35631482004-07-01 00:52:50 +0000270};
271
272
Lev Walkinb47ddce2004-08-11 05:25:47 +0000273/*** <<< INCLUDES [T4] >>> ***/
274
275#include <INTEGER.h>
276#include <constr_CHOICE.h>
277
Lev Walkin35631482004-07-01 00:52:50 +0000278/*** <<< DEPS [T4] >>> ***/
279
Lev Walkinb47ddce2004-08-11 05:25:47 +0000280typedef enum T4_PR {
281 T4_PR_NOTHING, /* No components present */
282 T4_PR_i,
283 /* Extensions may appear below */
Lev Walkin9f5bb3a2006-08-18 01:46:46 +0000284
Lev Walkin64399722004-08-11 07:17:22 +0000285} T4_PR;
Lev Walkin35631482004-07-01 00:52:50 +0000286
287/*** <<< TYPE-DECLS [T4] >>> ***/
288
Lev Walkin35631482004-07-01 00:52:50 +0000289typedef struct T4 {
Lev Walkin64399722004-08-11 07:17:22 +0000290 T4_PR present;
Lev Walkin0f5d74c2005-08-14 15:03:31 +0000291 union T4_u {
Lev Walkin35631482004-07-01 00:52:50 +0000292 INTEGER_t i;
293 /*
294 * This type is extensible,
295 * possible extensions are below.
296 */
297 } choice;
298
299 /* Context for parsing across buffer boundaries */
Lev Walkindfae9752004-09-29 13:19:37 +0000300 asn_struct_ctx_t _asn_ctx;
Lev Walkin35631482004-07-01 00:52:50 +0000301} T4_t;
302
Lev Walkinc8285712005-03-04 22:18:20 +0000303/*** <<< FUNC-DECLS [T4] >>> ***/
304
305extern asn_TYPE_descriptor_t asn_DEF_T4;
306
Lev Walkin35631482004-07-01 00:52:50 +0000307/*** <<< STAT-DEFS [T4] >>> ***/
308
Lev Walkine0272aa2005-03-04 11:26:08 +0000309static asn_TYPE_member_t asn_MBR_T4_1[] = {
Lev Walkincc93b0f2004-09-10 09:18:20 +0000310 { ATF_NOFLAGS, 0, offsetof(struct T4, choice.i),
Lev Walkin2e3055d2004-08-20 13:36:32 +0000311 .tag = (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)),
312 .tag_mode = 0,
Lev Walkinae7bf3f2005-08-29 10:31:14 +0000313 .type = &asn_DEF_INTEGER,
Lev Walkinba58e1b2005-01-17 12:20:19 +0000314 .memb_constraints = 0, /* Defer constraints checking to the member type */
Lev Walkin59b176e2005-11-26 11:25:14 +0000315 .per_constraints = 0, /* PER is not compiled, use -gen-PER */
316 .default_value = 0,
Lev Walkin2e3055d2004-08-20 13:36:32 +0000317 .name = "i"
Lev Walkin35631482004-07-01 00:52:50 +0000318 },
319};
Lev Walkin59b176e2005-11-26 11:25:14 +0000320static asn_TYPE_tag2member_t asn_MAP_T4_tag2el_1[] = {
Lev Walkin4062b012013-10-11 14:29:38 -0700321 { (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)), 0, 0, 0 } /* i */
Lev Walkin35631482004-07-01 00:52:50 +0000322};
Lev Walkin59b176e2005-11-26 11:25:14 +0000323static asn_CHOICE_specifics_t asn_SPC_T4_specs_1 = {
Lev Walkin35631482004-07-01 00:52:50 +0000324 sizeof(struct T4),
Lev Walkindfae9752004-09-29 13:19:37 +0000325 offsetof(struct T4, _asn_ctx),
Lev Walkin35631482004-07-01 00:52:50 +0000326 offsetof(struct T4, present),
327 sizeof(((struct T4 *)0)->present),
Lev Walkin59b176e2005-11-26 11:25:14 +0000328 asn_MAP_T4_tag2el_1,
Lev Walkin35631482004-07-01 00:52:50 +0000329 1, /* Count of tags in the map */
Lev Walkin59b176e2005-11-26 11:25:14 +0000330 .canonical_order = 0,
331 .ext_start = 1 /* Extensions start */
Lev Walkin35631482004-07-01 00:52:50 +0000332};
Lev Walkindfae9752004-09-29 13:19:37 +0000333asn_TYPE_descriptor_t asn_DEF_T4 = {
Lev Walkin35631482004-07-01 00:52:50 +0000334 "T4",
Lev Walkindc06f6b2004-10-20 15:50:55 +0000335 "T4",
Lev Walkina9cc46e2004-09-22 16:06:28 +0000336 CHOICE_free,
337 CHOICE_print,
Lev Walkin35631482004-07-01 00:52:50 +0000338 CHOICE_constraint,
339 CHOICE_decode_ber,
340 CHOICE_encode_der,
Lev Walkin61b40d82004-10-23 15:07:45 +0000341 CHOICE_decode_xer,
Lev Walkina9cc46e2004-09-22 16:06:28 +0000342 CHOICE_encode_xer,
Lev Walkin9f5bb3a2006-08-18 01:46:46 +0000343 0, 0, /* No PER support, use "-gen-PER" to enable */
Lev Walkin35631482004-07-01 00:52:50 +0000344 CHOICE_outmost_tag,
Lev Walkin188ed2c2004-09-13 08:31:01 +0000345 0, /* No effective tags (pointer) */
346 0, /* No effective tags (count) */
347 0, /* No tags (pointer) */
348 0, /* No tags (count) */
Lev Walkin59b176e2005-11-26 11:25:14 +0000349 0, /* No PER visible constraints */
Lev Walkine0272aa2005-03-04 11:26:08 +0000350 asn_MBR_T4_1,
Lev Walkin2e3055d2004-08-20 13:36:32 +0000351 1, /* Elements count */
Lev Walkin59b176e2005-11-26 11:25:14 +0000352 &asn_SPC_T4_specs_1 /* Additional specs */
Lev Walkin35631482004-07-01 00:52:50 +0000353};
354