2 /*** <<< INCLUDES [UnconstrainedREAL] >>> ***/
4 #include <NativeReal.h>
6 /*** <<< TYPE-DECLS [UnconstrainedREAL] >>> ***/
8 typedef double UnconstrainedREAL_t;
10 /*** <<< FUNC-DECLS [UnconstrainedREAL] >>> ***/
12 extern asn_TYPE_descriptor_t asn_DEF_UnconstrainedREAL;
13 asn_struct_free_f UnconstrainedREAL_free;
14 asn_struct_print_f UnconstrainedREAL_print;
15 asn_constr_check_f UnconstrainedREAL_constraint;
16 ber_type_decoder_f UnconstrainedREAL_decode_ber;
17 der_type_encoder_f UnconstrainedREAL_encode_der;
18 xer_type_decoder_f UnconstrainedREAL_decode_xer;
19 xer_type_encoder_f UnconstrainedREAL_encode_xer;
20 oer_type_decoder_f UnconstrainedREAL_decode_oer;
21 oer_type_encoder_f UnconstrainedREAL_encode_oer;
23 /*** <<< CODE [UnconstrainedREAL] >>> ***/
26 * This type is implemented using NativeReal,
27 * so here we adjust the DEF accordingly.
30 /*** <<< STAT-DEFS [UnconstrainedREAL] >>> ***/
32 static const ber_tlv_tag_t asn_DEF_UnconstrainedREAL_tags_1[] = {
33 (ASN_TAG_CLASS_UNIVERSAL | (9 << 2))
35 asn_TYPE_descriptor_t asn_DEF_UnconstrainedREAL = {
39 asn_DEF_UnconstrainedREAL_tags_1,
40 sizeof(asn_DEF_UnconstrainedREAL_tags_1)
41 /sizeof(asn_DEF_UnconstrainedREAL_tags_1[0]), /* 1 */
42 asn_DEF_UnconstrainedREAL_tags_1, /* Same as above */
43 sizeof(asn_DEF_UnconstrainedREAL_tags_1)
44 /sizeof(asn_DEF_UnconstrainedREAL_tags_1[0]), /* 1 */
45 { 0, 0, NativeReal_constraint },
46 0, 0, /* No members */
51 /*** <<< INCLUDES [WeirdlyConstrainedREAL] >>> ***/
53 #include <NativeReal.h>
55 /*** <<< TYPE-DECLS [WeirdlyConstrainedREAL] >>> ***/
57 typedef double WeirdlyConstrainedREAL_t;
59 /*** <<< FUNC-DECLS [WeirdlyConstrainedREAL] >>> ***/
61 extern asn_TYPE_descriptor_t asn_DEF_WeirdlyConstrainedREAL;
62 asn_struct_free_f WeirdlyConstrainedREAL_free;
63 asn_struct_print_f WeirdlyConstrainedREAL_print;
64 asn_constr_check_f WeirdlyConstrainedREAL_constraint;
65 ber_type_decoder_f WeirdlyConstrainedREAL_decode_ber;
66 der_type_encoder_f WeirdlyConstrainedREAL_encode_der;
67 xer_type_decoder_f WeirdlyConstrainedREAL_decode_xer;
68 xer_type_encoder_f WeirdlyConstrainedREAL_encode_xer;
69 oer_type_decoder_f WeirdlyConstrainedREAL_decode_oer;
70 oer_type_encoder_f WeirdlyConstrainedREAL_encode_oer;
72 /*** <<< CODE [WeirdlyConstrainedREAL] >>> ***/
75 WeirdlyConstrainedREAL_constraint(const asn_TYPE_descriptor_t *td, const void *sptr,
76 asn_app_constraint_failed_f *ctfailcb, void *app_key) {
80 ASN__CTFAIL(app_key, td, sptr,
81 "%s: value not given (%s:%d)",
82 td->name, __FILE__, __LINE__);
86 value = *(const double *)sptr;
89 /* Constraint check succeeded */
92 ASN__CTFAIL(app_key, td, sptr,
93 "%s: constraint failed (%s:%d)",
94 td->name, __FILE__, __LINE__);
100 * This type is implemented using NativeReal,
101 * so here we adjust the DEF accordingly.
104 /*** <<< CTDEFS [WeirdlyConstrainedREAL] >>> ***/
106 static asn_oer_constraints_t asn_OER_type_WeirdlyConstrainedREAL_constr_1 CC_NOTUSED = {
110 /*** <<< STAT-DEFS [WeirdlyConstrainedREAL] >>> ***/
112 static const ber_tlv_tag_t asn_DEF_WeirdlyConstrainedREAL_tags_1[] = {
113 (ASN_TAG_CLASS_UNIVERSAL | (9 << 2))
115 asn_TYPE_descriptor_t asn_DEF_WeirdlyConstrainedREAL = {
116 "WeirdlyConstrainedREAL",
117 "WeirdlyConstrainedREAL",
119 asn_DEF_WeirdlyConstrainedREAL_tags_1,
120 sizeof(asn_DEF_WeirdlyConstrainedREAL_tags_1)
121 /sizeof(asn_DEF_WeirdlyConstrainedREAL_tags_1[0]), /* 1 */
122 asn_DEF_WeirdlyConstrainedREAL_tags_1, /* Same as above */
123 sizeof(asn_DEF_WeirdlyConstrainedREAL_tags_1)
124 /sizeof(asn_DEF_WeirdlyConstrainedREAL_tags_1[0]), /* 1 */
125 { &asn_OER_type_WeirdlyConstrainedREAL_constr_1, 0, WeirdlyConstrainedREAL_constraint },
126 0, 0, /* No members */
131 /*** <<< INCLUDES [Indirect-IEEE-binary32] >>> ***/
133 #include "UnconstrainedREAL.h"
135 /*** <<< TYPE-DECLS [Indirect-IEEE-binary32] >>> ***/
137 typedef UnconstrainedREAL_t Indirect_IEEE_binary32_t;
139 /*** <<< FUNC-DECLS [Indirect-IEEE-binary32] >>> ***/
141 extern asn_TYPE_descriptor_t asn_DEF_Indirect_IEEE_binary32;
142 extern const asn_NativeReal_specifics_t asn_SPC_Indirect_IEEE_binary32_specs_1;
143 asn_struct_free_f Indirect_IEEE_binary32_free;
144 asn_struct_print_f Indirect_IEEE_binary32_print;
145 asn_constr_check_f Indirect_IEEE_binary32_constraint;
146 ber_type_decoder_f Indirect_IEEE_binary32_decode_ber;
147 der_type_encoder_f Indirect_IEEE_binary32_encode_der;
148 xer_type_decoder_f Indirect_IEEE_binary32_decode_xer;
149 xer_type_encoder_f Indirect_IEEE_binary32_encode_xer;
150 oer_type_decoder_f Indirect_IEEE_binary32_decode_oer;
151 oer_type_encoder_f Indirect_IEEE_binary32_encode_oer;
153 /*** <<< CODE [Indirect-IEEE-binary32] >>> ***/
156 Indirect_IEEE_binary32_constraint(const asn_TYPE_descriptor_t *td, const void *sptr,
157 asn_app_constraint_failed_f *ctfailcb, void *app_key) {
160 ASN__CTFAIL(app_key, td, sptr,
161 "%s: value not given (%s:%d)",
162 td->name, __FILE__, __LINE__);
167 if(1 /* No applicable constraints whatsoever */) {
168 /* Nothing is here. See below */
171 return td->encoding_constraints.general_constraints(td, sptr, ctfailcb, app_key);
175 * This type is implemented using UnconstrainedREAL,
176 * so here we adjust the DEF accordingly.
179 /*** <<< CTDEFS [Indirect-IEEE-binary32] >>> ***/
181 static asn_oer_constraints_t asn_OER_type_Indirect_IEEE_binary32_constr_1 CC_NOTUSED = {
182 { sizeof(float), 0 },
185 /*** <<< STAT-DEFS [Indirect-IEEE-binary32] >>> ***/
187 const asn_NativeReal_specifics_t asn_SPC_Indirect_IEEE_binary32_specs_1 = {
188 4 /* Use 'float' type. */
190 static const ber_tlv_tag_t asn_DEF_Indirect_IEEE_binary32_tags_1[] = {
191 (ASN_TAG_CLASS_UNIVERSAL | (9 << 2))
193 asn_TYPE_descriptor_t asn_DEF_Indirect_IEEE_binary32 = {
194 "Indirect-IEEE-binary32",
195 "Indirect-IEEE-binary32",
197 asn_DEF_Indirect_IEEE_binary32_tags_1,
198 sizeof(asn_DEF_Indirect_IEEE_binary32_tags_1)
199 /sizeof(asn_DEF_Indirect_IEEE_binary32_tags_1[0]), /* 1 */
200 asn_DEF_Indirect_IEEE_binary32_tags_1, /* Same as above */
201 sizeof(asn_DEF_Indirect_IEEE_binary32_tags_1)
202 /sizeof(asn_DEF_Indirect_IEEE_binary32_tags_1[0]), /* 1 */
203 { &asn_OER_type_Indirect_IEEE_binary32_constr_1, 0, Indirect_IEEE_binary32_constraint },
204 0, 0, /* No members */
205 &asn_SPC_Indirect_IEEE_binary32_specs_1 /* Additional specs */
209 /*** <<< INCLUDES [IEEE-binary32-w] >>> ***/
211 #include <NativeReal.h>
213 /*** <<< TYPE-DECLS [IEEE-binary32-w] >>> ***/
215 typedef float IEEE_binary32_w_t;
217 /*** <<< FUNC-DECLS [IEEE-binary32-w] >>> ***/
219 extern asn_TYPE_descriptor_t asn_DEF_IEEE_binary32_w;
220 extern const asn_NativeReal_specifics_t asn_SPC_IEEE_binary32_w_specs_1;
221 asn_struct_free_f IEEE_binary32_w_free;
222 asn_struct_print_f IEEE_binary32_w_print;
223 asn_constr_check_f IEEE_binary32_w_constraint;
224 ber_type_decoder_f IEEE_binary32_w_decode_ber;
225 der_type_encoder_f IEEE_binary32_w_encode_der;
226 xer_type_decoder_f IEEE_binary32_w_decode_xer;
227 xer_type_encoder_f IEEE_binary32_w_encode_xer;
228 oer_type_decoder_f IEEE_binary32_w_decode_oer;
229 oer_type_encoder_f IEEE_binary32_w_encode_oer;
231 /*** <<< CODE [IEEE-binary32-w] >>> ***/
234 IEEE_binary32_w_constraint(const asn_TYPE_descriptor_t *td, const void *sptr,
235 asn_app_constraint_failed_f *ctfailcb, void *app_key) {
238 ASN__CTFAIL(app_key, td, sptr,
239 "%s: value not given (%s:%d)",
240 td->name, __FILE__, __LINE__);
245 if(1 /* No applicable constraints whatsoever */) {
246 /* Nothing is here. See below */
249 return td->encoding_constraints.general_constraints(td, sptr, ctfailcb, app_key);
253 * This type is implemented using NativeReal,
254 * so here we adjust the DEF accordingly.
257 /*** <<< CTDEFS [IEEE-binary32-w] >>> ***/
259 static asn_oer_constraints_t asn_OER_type_IEEE_binary32_w_constr_1 CC_NOTUSED = {
260 { sizeof(float), 0 },
263 /*** <<< STAT-DEFS [IEEE-binary32-w] >>> ***/
265 const asn_NativeReal_specifics_t asn_SPC_IEEE_binary32_w_specs_1 = {
266 4 /* Use 'float' type. */
268 static const ber_tlv_tag_t asn_DEF_IEEE_binary32_w_tags_1[] = {
269 (ASN_TAG_CLASS_UNIVERSAL | (9 << 2))
271 asn_TYPE_descriptor_t asn_DEF_IEEE_binary32_w = {
275 asn_DEF_IEEE_binary32_w_tags_1,
276 sizeof(asn_DEF_IEEE_binary32_w_tags_1)
277 /sizeof(asn_DEF_IEEE_binary32_w_tags_1[0]), /* 1 */
278 asn_DEF_IEEE_binary32_w_tags_1, /* Same as above */
279 sizeof(asn_DEF_IEEE_binary32_w_tags_1)
280 /sizeof(asn_DEF_IEEE_binary32_w_tags_1[0]), /* 1 */
281 { &asn_OER_type_IEEE_binary32_w_constr_1, 0, IEEE_binary32_w_constraint },
282 0, 0, /* No members */
283 &asn_SPC_IEEE_binary32_w_specs_1 /* Additional specs */
287 /*** <<< INCLUDES [IEEE-binary32-0w] >>> ***/
289 #include <NativeReal.h>
291 /*** <<< TYPE-DECLS [IEEE-binary32-0w] >>> ***/
293 typedef float IEEE_binary32_0w_t;
295 /*** <<< FUNC-DECLS [IEEE-binary32-0w] >>> ***/
297 extern asn_TYPE_descriptor_t asn_DEF_IEEE_binary32_0w;
298 extern const asn_NativeReal_specifics_t asn_SPC_IEEE_binary32_0w_specs_1;
299 asn_struct_free_f IEEE_binary32_0w_free;
300 asn_struct_print_f IEEE_binary32_0w_print;
301 asn_constr_check_f IEEE_binary32_0w_constraint;
302 ber_type_decoder_f IEEE_binary32_0w_decode_ber;
303 der_type_encoder_f IEEE_binary32_0w_encode_der;
304 xer_type_decoder_f IEEE_binary32_0w_decode_xer;
305 xer_type_encoder_f IEEE_binary32_0w_encode_xer;
306 oer_type_decoder_f IEEE_binary32_0w_decode_oer;
307 oer_type_encoder_f IEEE_binary32_0w_encode_oer;
309 /*** <<< CODE [IEEE-binary32-0w] >>> ***/
312 IEEE_binary32_0w_constraint(const asn_TYPE_descriptor_t *td, const void *sptr,
313 asn_app_constraint_failed_f *ctfailcb, void *app_key) {
316 ASN__CTFAIL(app_key, td, sptr,
317 "%s: value not given (%s:%d)",
318 td->name, __FILE__, __LINE__);
323 if(1 /* No applicable constraints whatsoever */) {
324 /* Nothing is here. See below */
327 return td->encoding_constraints.general_constraints(td, sptr, ctfailcb, app_key);
331 * This type is implemented using NativeReal,
332 * so here we adjust the DEF accordingly.
335 /*** <<< CTDEFS [IEEE-binary32-0w] >>> ***/
337 static asn_oer_constraints_t asn_OER_type_IEEE_binary32_0w_constr_1 CC_NOTUSED = {
338 { sizeof(float), 0 },
341 /*** <<< STAT-DEFS [IEEE-binary32-0w] >>> ***/
343 const asn_NativeReal_specifics_t asn_SPC_IEEE_binary32_0w_specs_1 = {
344 4 /* Use 'float' type. */
346 static const ber_tlv_tag_t asn_DEF_IEEE_binary32_0w_tags_1[] = {
347 (ASN_TAG_CLASS_UNIVERSAL | (9 << 2))
349 asn_TYPE_descriptor_t asn_DEF_IEEE_binary32_0w = {
353 asn_DEF_IEEE_binary32_0w_tags_1,
354 sizeof(asn_DEF_IEEE_binary32_0w_tags_1)
355 /sizeof(asn_DEF_IEEE_binary32_0w_tags_1[0]), /* 1 */
356 asn_DEF_IEEE_binary32_0w_tags_1, /* Same as above */
357 sizeof(asn_DEF_IEEE_binary32_0w_tags_1)
358 /sizeof(asn_DEF_IEEE_binary32_0w_tags_1[0]), /* 1 */
359 { &asn_OER_type_IEEE_binary32_0w_constr_1, 0, IEEE_binary32_0w_constraint },
360 0, 0, /* No members */
361 &asn_SPC_IEEE_binary32_0w_specs_1 /* Additional specs */
365 /*** <<< INCLUDES [IEEE-binary32-w0] >>> ***/
367 #include <NativeReal.h>
369 /*** <<< TYPE-DECLS [IEEE-binary32-w0] >>> ***/
371 typedef float IEEE_binary32_w0_t;
373 /*** <<< FUNC-DECLS [IEEE-binary32-w0] >>> ***/
375 extern asn_TYPE_descriptor_t asn_DEF_IEEE_binary32_w0;
376 extern const asn_NativeReal_specifics_t asn_SPC_IEEE_binary32_w0_specs_1;
377 asn_struct_free_f IEEE_binary32_w0_free;
378 asn_struct_print_f IEEE_binary32_w0_print;
379 asn_constr_check_f IEEE_binary32_w0_constraint;
380 ber_type_decoder_f IEEE_binary32_w0_decode_ber;
381 der_type_encoder_f IEEE_binary32_w0_encode_der;
382 xer_type_decoder_f IEEE_binary32_w0_decode_xer;
383 xer_type_encoder_f IEEE_binary32_w0_encode_xer;
384 oer_type_decoder_f IEEE_binary32_w0_decode_oer;
385 oer_type_encoder_f IEEE_binary32_w0_encode_oer;
387 /*** <<< CODE [IEEE-binary32-w0] >>> ***/
390 IEEE_binary32_w0_constraint(const asn_TYPE_descriptor_t *td, const void *sptr,
391 asn_app_constraint_failed_f *ctfailcb, void *app_key) {
394 ASN__CTFAIL(app_key, td, sptr,
395 "%s: value not given (%s:%d)",
396 td->name, __FILE__, __LINE__);
401 if(1 /* No applicable constraints whatsoever */) {
402 /* Nothing is here. See below */
405 return td->encoding_constraints.general_constraints(td, sptr, ctfailcb, app_key);
409 * This type is implemented using NativeReal,
410 * so here we adjust the DEF accordingly.
413 /*** <<< CTDEFS [IEEE-binary32-w0] >>> ***/
415 static asn_oer_constraints_t asn_OER_type_IEEE_binary32_w0_constr_1 CC_NOTUSED = {
416 { sizeof(float), 0 },
419 /*** <<< STAT-DEFS [IEEE-binary32-w0] >>> ***/
421 const asn_NativeReal_specifics_t asn_SPC_IEEE_binary32_w0_specs_1 = {
422 4 /* Use 'float' type. */
424 static const ber_tlv_tag_t asn_DEF_IEEE_binary32_w0_tags_1[] = {
425 (ASN_TAG_CLASS_UNIVERSAL | (9 << 2))
427 asn_TYPE_descriptor_t asn_DEF_IEEE_binary32_w0 = {
431 asn_DEF_IEEE_binary32_w0_tags_1,
432 sizeof(asn_DEF_IEEE_binary32_w0_tags_1)
433 /sizeof(asn_DEF_IEEE_binary32_w0_tags_1[0]), /* 1 */
434 asn_DEF_IEEE_binary32_w0_tags_1, /* Same as above */
435 sizeof(asn_DEF_IEEE_binary32_w0_tags_1)
436 /sizeof(asn_DEF_IEEE_binary32_w0_tags_1[0]), /* 1 */
437 { &asn_OER_type_IEEE_binary32_w0_constr_1, 0, IEEE_binary32_w0_constraint },
438 0, 0, /* No members */
439 &asn_SPC_IEEE_binary32_w0_specs_1 /* Additional specs */
443 /*** <<< INCLUDES [IEEE-binary64-w] >>> ***/
445 #include <NativeReal.h>
447 /*** <<< TYPE-DECLS [IEEE-binary64-w] >>> ***/
449 typedef double IEEE_binary64_w_t;
451 /*** <<< FUNC-DECLS [IEEE-binary64-w] >>> ***/
453 extern asn_TYPE_descriptor_t asn_DEF_IEEE_binary64_w;
454 asn_struct_free_f IEEE_binary64_w_free;
455 asn_struct_print_f IEEE_binary64_w_print;
456 asn_constr_check_f IEEE_binary64_w_constraint;
457 ber_type_decoder_f IEEE_binary64_w_decode_ber;
458 der_type_encoder_f IEEE_binary64_w_encode_der;
459 xer_type_decoder_f IEEE_binary64_w_decode_xer;
460 xer_type_encoder_f IEEE_binary64_w_encode_xer;
461 oer_type_decoder_f IEEE_binary64_w_decode_oer;
462 oer_type_encoder_f IEEE_binary64_w_encode_oer;
464 /*** <<< CODE [IEEE-binary64-w] >>> ***/
467 IEEE_binary64_w_constraint(const asn_TYPE_descriptor_t *td, const void *sptr,
468 asn_app_constraint_failed_f *ctfailcb, void *app_key) {
471 ASN__CTFAIL(app_key, td, sptr,
472 "%s: value not given (%s:%d)",
473 td->name, __FILE__, __LINE__);
478 if(1 /* No applicable constraints whatsoever */) {
479 /* Nothing is here. See below */
482 return td->encoding_constraints.general_constraints(td, sptr, ctfailcb, app_key);
486 * This type is implemented using NativeReal,
487 * so here we adjust the DEF accordingly.
490 /*** <<< CTDEFS [IEEE-binary64-w] >>> ***/
492 static asn_oer_constraints_t asn_OER_type_IEEE_binary64_w_constr_1 CC_NOTUSED = {
493 { sizeof(double), 0 },
496 /*** <<< STAT-DEFS [IEEE-binary64-w] >>> ***/
498 static const ber_tlv_tag_t asn_DEF_IEEE_binary64_w_tags_1[] = {
499 (ASN_TAG_CLASS_UNIVERSAL | (9 << 2))
501 asn_TYPE_descriptor_t asn_DEF_IEEE_binary64_w = {
505 asn_DEF_IEEE_binary64_w_tags_1,
506 sizeof(asn_DEF_IEEE_binary64_w_tags_1)
507 /sizeof(asn_DEF_IEEE_binary64_w_tags_1[0]), /* 1 */
508 asn_DEF_IEEE_binary64_w_tags_1, /* Same as above */
509 sizeof(asn_DEF_IEEE_binary64_w_tags_1)
510 /sizeof(asn_DEF_IEEE_binary64_w_tags_1[0]), /* 1 */
511 { &asn_OER_type_IEEE_binary64_w_constr_1, 0, IEEE_binary64_w_constraint },
512 0, 0, /* No members */
517 /*** <<< INCLUDES [IEEE-binary64-0w] >>> ***/
519 #include <NativeReal.h>
521 /*** <<< TYPE-DECLS [IEEE-binary64-0w] >>> ***/
523 typedef double IEEE_binary64_0w_t;
525 /*** <<< FUNC-DECLS [IEEE-binary64-0w] >>> ***/
527 extern asn_TYPE_descriptor_t asn_DEF_IEEE_binary64_0w;
528 asn_struct_free_f IEEE_binary64_0w_free;
529 asn_struct_print_f IEEE_binary64_0w_print;
530 asn_constr_check_f IEEE_binary64_0w_constraint;
531 ber_type_decoder_f IEEE_binary64_0w_decode_ber;
532 der_type_encoder_f IEEE_binary64_0w_encode_der;
533 xer_type_decoder_f IEEE_binary64_0w_decode_xer;
534 xer_type_encoder_f IEEE_binary64_0w_encode_xer;
535 oer_type_decoder_f IEEE_binary64_0w_decode_oer;
536 oer_type_encoder_f IEEE_binary64_0w_encode_oer;
538 /*** <<< CODE [IEEE-binary64-0w] >>> ***/
541 IEEE_binary64_0w_constraint(const asn_TYPE_descriptor_t *td, const void *sptr,
542 asn_app_constraint_failed_f *ctfailcb, void *app_key) {
545 ASN__CTFAIL(app_key, td, sptr,
546 "%s: value not given (%s:%d)",
547 td->name, __FILE__, __LINE__);
552 if(1 /* No applicable constraints whatsoever */) {
553 /* Nothing is here. See below */
556 return td->encoding_constraints.general_constraints(td, sptr, ctfailcb, app_key);
560 * This type is implemented using NativeReal,
561 * so here we adjust the DEF accordingly.
564 /*** <<< CTDEFS [IEEE-binary64-0w] >>> ***/
566 static asn_oer_constraints_t asn_OER_type_IEEE_binary64_0w_constr_1 CC_NOTUSED = {
567 { sizeof(double), 0 },
570 /*** <<< STAT-DEFS [IEEE-binary64-0w] >>> ***/
572 static const ber_tlv_tag_t asn_DEF_IEEE_binary64_0w_tags_1[] = {
573 (ASN_TAG_CLASS_UNIVERSAL | (9 << 2))
575 asn_TYPE_descriptor_t asn_DEF_IEEE_binary64_0w = {
579 asn_DEF_IEEE_binary64_0w_tags_1,
580 sizeof(asn_DEF_IEEE_binary64_0w_tags_1)
581 /sizeof(asn_DEF_IEEE_binary64_0w_tags_1[0]), /* 1 */
582 asn_DEF_IEEE_binary64_0w_tags_1, /* Same as above */
583 sizeof(asn_DEF_IEEE_binary64_0w_tags_1)
584 /sizeof(asn_DEF_IEEE_binary64_0w_tags_1[0]), /* 1 */
585 { &asn_OER_type_IEEE_binary64_0w_constr_1, 0, IEEE_binary64_0w_constraint },
586 0, 0, /* No members */
591 /*** <<< INCLUDES [IEEE-binary64-w0] >>> ***/
593 #include <NativeReal.h>
595 /*** <<< TYPE-DECLS [IEEE-binary64-w0] >>> ***/
597 typedef double IEEE_binary64_w0_t;
599 /*** <<< FUNC-DECLS [IEEE-binary64-w0] >>> ***/
601 extern asn_TYPE_descriptor_t asn_DEF_IEEE_binary64_w0;
602 asn_struct_free_f IEEE_binary64_w0_free;
603 asn_struct_print_f IEEE_binary64_w0_print;
604 asn_constr_check_f IEEE_binary64_w0_constraint;
605 ber_type_decoder_f IEEE_binary64_w0_decode_ber;
606 der_type_encoder_f IEEE_binary64_w0_encode_der;
607 xer_type_decoder_f IEEE_binary64_w0_decode_xer;
608 xer_type_encoder_f IEEE_binary64_w0_encode_xer;
609 oer_type_decoder_f IEEE_binary64_w0_decode_oer;
610 oer_type_encoder_f IEEE_binary64_w0_encode_oer;
612 /*** <<< CODE [IEEE-binary64-w0] >>> ***/
615 IEEE_binary64_w0_constraint(const asn_TYPE_descriptor_t *td, const void *sptr,
616 asn_app_constraint_failed_f *ctfailcb, void *app_key) {
619 ASN__CTFAIL(app_key, td, sptr,
620 "%s: value not given (%s:%d)",
621 td->name, __FILE__, __LINE__);
626 if(1 /* No applicable constraints whatsoever */) {
627 /* Nothing is here. See below */
630 return td->encoding_constraints.general_constraints(td, sptr, ctfailcb, app_key);
634 * This type is implemented using NativeReal,
635 * so here we adjust the DEF accordingly.
638 /*** <<< CTDEFS [IEEE-binary64-w0] >>> ***/
640 static asn_oer_constraints_t asn_OER_type_IEEE_binary64_w0_constr_1 CC_NOTUSED = {
641 { sizeof(double), 0 },
644 /*** <<< STAT-DEFS [IEEE-binary64-w0] >>> ***/
646 static const ber_tlv_tag_t asn_DEF_IEEE_binary64_w0_tags_1[] = {
647 (ASN_TAG_CLASS_UNIVERSAL | (9 << 2))
649 asn_TYPE_descriptor_t asn_DEF_IEEE_binary64_w0 = {
653 asn_DEF_IEEE_binary64_w0_tags_1,
654 sizeof(asn_DEF_IEEE_binary64_w0_tags_1)
655 /sizeof(asn_DEF_IEEE_binary64_w0_tags_1[0]), /* 1 */
656 asn_DEF_IEEE_binary64_w0_tags_1, /* Same as above */
657 sizeof(asn_DEF_IEEE_binary64_w0_tags_1)
658 /sizeof(asn_DEF_IEEE_binary64_w0_tags_1[0]), /* 1 */
659 { &asn_OER_type_IEEE_binary64_w0_constr_1, 0, IEEE_binary64_w0_constraint },
660 0, 0, /* No members */
665 /*** <<< INCLUDES [Test] >>> ***/
667 #include "Indirect-IEEE-binary32.h"
668 #include "IEEE-binary32-w.h"
669 #include "IEEE-binary32-0w.h"
670 #include "IEEE-binary32-w0.h"
671 #include "IEEE-binary64-w.h"
672 #include "IEEE-binary64-0w.h"
673 #include "IEEE-binary64-w0.h"
674 #include <constr_SEQUENCE.h>
676 /*** <<< TYPE-DECLS [Test] >>> ***/
678 typedef struct Test {
679 Indirect_IEEE_binary32_t indirect_ieee_binary32;
680 IEEE_binary32_w_t ieee_binary32_w;
681 IEEE_binary32_0w_t ieee_binary32_0w;
682 IEEE_binary32_w0_t ieee_binary32_w0;
683 IEEE_binary64_w_t ieee_binary64_w;
684 IEEE_binary64_0w_t ieee_binary64_0w;
685 IEEE_binary64_w0_t ieee_binary64_w0;
687 /* Context for parsing across buffer boundaries */
688 asn_struct_ctx_t _asn_ctx;
691 /*** <<< FUNC-DECLS [Test] >>> ***/
693 /* extern asn_TYPE_descriptor_t asn_DEF_indirect_ieee_binary32_2; // (Use -fall-defs-global to expose) */
694 /* extern asn_TYPE_descriptor_t asn_DEF_ieee_binary32_w_3; // (Use -fall-defs-global to expose) */
695 /* extern asn_TYPE_descriptor_t asn_DEF_ieee_binary32_0w_4; // (Use -fall-defs-global to expose) */
696 /* extern asn_TYPE_descriptor_t asn_DEF_ieee_binary32_w0_5; // (Use -fall-defs-global to expose) */
697 extern asn_TYPE_descriptor_t asn_DEF_Test;
699 /*** <<< CODE [Test] >>> ***/
702 indirect_ieee_binary32_2_constraint(const asn_TYPE_descriptor_t *td, const void *sptr,
703 asn_app_constraint_failed_f *ctfailcb, void *app_key) {
706 ASN__CTFAIL(app_key, td, sptr,
707 "%s: value not given (%s:%d)",
708 td->name, __FILE__, __LINE__);
713 if(1 /* No applicable constraints whatsoever */) {
714 /* Nothing is here. See below */
717 return td->encoding_constraints.general_constraints(td, sptr, ctfailcb, app_key);
721 * This type is implemented using Indirect_IEEE_binary32,
722 * so here we adjust the DEF accordingly.
725 ieee_binary32_w_3_constraint(const asn_TYPE_descriptor_t *td, const void *sptr,
726 asn_app_constraint_failed_f *ctfailcb, void *app_key) {
729 ASN__CTFAIL(app_key, td, sptr,
730 "%s: value not given (%s:%d)",
731 td->name, __FILE__, __LINE__);
736 if(1 /* No applicable constraints whatsoever */) {
737 /* Nothing is here. See below */
740 return td->encoding_constraints.general_constraints(td, sptr, ctfailcb, app_key);
744 * This type is implemented using IEEE_binary32_w,
745 * so here we adjust the DEF accordingly.
748 ieee_binary32_0w_4_constraint(const asn_TYPE_descriptor_t *td, const void *sptr,
749 asn_app_constraint_failed_f *ctfailcb, void *app_key) {
752 ASN__CTFAIL(app_key, td, sptr,
753 "%s: value not given (%s:%d)",
754 td->name, __FILE__, __LINE__);
759 if(1 /* No applicable constraints whatsoever */) {
760 /* Nothing is here. See below */
763 return td->encoding_constraints.general_constraints(td, sptr, ctfailcb, app_key);
767 * This type is implemented using IEEE_binary32_0w,
768 * so here we adjust the DEF accordingly.
771 ieee_binary32_w0_5_constraint(const asn_TYPE_descriptor_t *td, const void *sptr,
772 asn_app_constraint_failed_f *ctfailcb, void *app_key) {
775 ASN__CTFAIL(app_key, td, sptr,
776 "%s: value not given (%s:%d)",
777 td->name, __FILE__, __LINE__);
782 if(1 /* No applicable constraints whatsoever */) {
783 /* Nothing is here. See below */
786 return td->encoding_constraints.general_constraints(td, sptr, ctfailcb, app_key);
790 * This type is implemented using IEEE_binary32_w0,
791 * so here we adjust the DEF accordingly.
794 /*** <<< CTDEFS [Test] >>> ***/
796 static asn_oer_constraints_t asn_OER_type_indirect_ieee_binary32_constr_2 CC_NOTUSED = {
797 { sizeof(float), 0 },
799 static asn_oer_constraints_t asn_OER_type_ieee_binary32_w_constr_3 CC_NOTUSED = {
800 { sizeof(float), 0 },
802 static asn_oer_constraints_t asn_OER_type_ieee_binary32_0w_constr_4 CC_NOTUSED = {
803 { sizeof(float), 0 },
805 static asn_oer_constraints_t asn_OER_type_ieee_binary32_w0_constr_5 CC_NOTUSED = {
806 { sizeof(float), 0 },
809 /*** <<< STAT-DEFS [Test] >>> ***/
811 static const asn_NativeReal_specifics_t asn_SPC_indirect_ieee_binary32_specs_2 = {
812 4 /* Use 'float' type. */
814 static const ber_tlv_tag_t asn_DEF_indirect_ieee_binary32_tags_2[] = {
815 (ASN_TAG_CLASS_UNIVERSAL | (9 << 2))
817 static /* Use -fall-defs-global to expose */
818 asn_TYPE_descriptor_t asn_DEF_indirect_ieee_binary32_2 = {
819 "indirect-ieee-binary32",
820 "indirect-ieee-binary32",
822 asn_DEF_indirect_ieee_binary32_tags_2,
823 sizeof(asn_DEF_indirect_ieee_binary32_tags_2)
824 /sizeof(asn_DEF_indirect_ieee_binary32_tags_2[0]), /* 1 */
825 asn_DEF_indirect_ieee_binary32_tags_2, /* Same as above */
826 sizeof(asn_DEF_indirect_ieee_binary32_tags_2)
827 /sizeof(asn_DEF_indirect_ieee_binary32_tags_2[0]), /* 1 */
828 { &asn_OER_type_indirect_ieee_binary32_constr_2, 0, indirect_ieee_binary32_2_constraint },
829 0, 0, /* No members */
830 &asn_SPC_indirect_ieee_binary32_specs_2 /* Additional specs */
833 static const asn_NativeReal_specifics_t asn_SPC_ieee_binary32_w_specs_3 = {
834 4 /* Use 'float' type. */
836 static const ber_tlv_tag_t asn_DEF_ieee_binary32_w_tags_3[] = {
837 (ASN_TAG_CLASS_UNIVERSAL | (9 << 2))
839 static /* Use -fall-defs-global to expose */
840 asn_TYPE_descriptor_t asn_DEF_ieee_binary32_w_3 = {
844 asn_DEF_ieee_binary32_w_tags_3,
845 sizeof(asn_DEF_ieee_binary32_w_tags_3)
846 /sizeof(asn_DEF_ieee_binary32_w_tags_3[0]), /* 1 */
847 asn_DEF_ieee_binary32_w_tags_3, /* Same as above */
848 sizeof(asn_DEF_ieee_binary32_w_tags_3)
849 /sizeof(asn_DEF_ieee_binary32_w_tags_3[0]), /* 1 */
850 { &asn_OER_type_ieee_binary32_w_constr_3, 0, ieee_binary32_w_3_constraint },
851 0, 0, /* No members */
852 &asn_SPC_ieee_binary32_w_specs_3 /* Additional specs */
855 static const asn_NativeReal_specifics_t asn_SPC_ieee_binary32_0w_specs_4 = {
856 4 /* Use 'float' type. */
858 static const ber_tlv_tag_t asn_DEF_ieee_binary32_0w_tags_4[] = {
859 (ASN_TAG_CLASS_UNIVERSAL | (9 << 2))
861 static /* Use -fall-defs-global to expose */
862 asn_TYPE_descriptor_t asn_DEF_ieee_binary32_0w_4 = {
866 asn_DEF_ieee_binary32_0w_tags_4,
867 sizeof(asn_DEF_ieee_binary32_0w_tags_4)
868 /sizeof(asn_DEF_ieee_binary32_0w_tags_4[0]), /* 1 */
869 asn_DEF_ieee_binary32_0w_tags_4, /* Same as above */
870 sizeof(asn_DEF_ieee_binary32_0w_tags_4)
871 /sizeof(asn_DEF_ieee_binary32_0w_tags_4[0]), /* 1 */
872 { &asn_OER_type_ieee_binary32_0w_constr_4, 0, ieee_binary32_0w_4_constraint },
873 0, 0, /* No members */
874 &asn_SPC_ieee_binary32_0w_specs_4 /* Additional specs */
877 static const asn_NativeReal_specifics_t asn_SPC_ieee_binary32_w0_specs_5 = {
878 4 /* Use 'float' type. */
880 static const ber_tlv_tag_t asn_DEF_ieee_binary32_w0_tags_5[] = {
881 (ASN_TAG_CLASS_UNIVERSAL | (9 << 2))
883 static /* Use -fall-defs-global to expose */
884 asn_TYPE_descriptor_t asn_DEF_ieee_binary32_w0_5 = {
888 asn_DEF_ieee_binary32_w0_tags_5,
889 sizeof(asn_DEF_ieee_binary32_w0_tags_5)
890 /sizeof(asn_DEF_ieee_binary32_w0_tags_5[0]), /* 1 */
891 asn_DEF_ieee_binary32_w0_tags_5, /* Same as above */
892 sizeof(asn_DEF_ieee_binary32_w0_tags_5)
893 /sizeof(asn_DEF_ieee_binary32_w0_tags_5[0]), /* 1 */
894 { &asn_OER_type_ieee_binary32_w0_constr_5, 0, ieee_binary32_w0_5_constraint },
895 0, 0, /* No members */
896 &asn_SPC_ieee_binary32_w0_specs_5 /* Additional specs */
899 static asn_TYPE_member_t asn_MBR_Test_1[] = {
900 { ATF_NOFLAGS, 0, offsetof(struct Test, indirect_ieee_binary32),
901 .tag = (ASN_TAG_CLASS_UNIVERSAL | (9 << 2)),
903 .type = &asn_DEF_Indirect_IEEE_binary32,
905 { .oer_constraints = 0, .per_constraints = 0, .general_constraints = 0 },
906 0, 0, /* No default value */
907 .name = "indirect-ieee-binary32"
909 { ATF_NOFLAGS, 0, offsetof(struct Test, ieee_binary32_w),
910 .tag = (ASN_TAG_CLASS_UNIVERSAL | (9 << 2)),
912 .type = &asn_DEF_IEEE_binary32_w,
914 { .oer_constraints = 0, .per_constraints = 0, .general_constraints = 0 },
915 0, 0, /* No default value */
916 .name = "ieee-binary32-w"
918 { ATF_NOFLAGS, 0, offsetof(struct Test, ieee_binary32_0w),
919 .tag = (ASN_TAG_CLASS_UNIVERSAL | (9 << 2)),
921 .type = &asn_DEF_IEEE_binary32_0w,
923 { .oer_constraints = 0, .per_constraints = 0, .general_constraints = 0 },
924 0, 0, /* No default value */
925 .name = "ieee-binary32-0w"
927 { ATF_NOFLAGS, 0, offsetof(struct Test, ieee_binary32_w0),
928 .tag = (ASN_TAG_CLASS_UNIVERSAL | (9 << 2)),
930 .type = &asn_DEF_IEEE_binary32_w0,
932 { .oer_constraints = 0, .per_constraints = 0, .general_constraints = 0 },
933 0, 0, /* No default value */
934 .name = "ieee-binary32-w0"
936 { ATF_NOFLAGS, 0, offsetof(struct Test, ieee_binary64_w),
937 .tag = (ASN_TAG_CLASS_UNIVERSAL | (9 << 2)),
939 .type = &asn_DEF_IEEE_binary64_w,
941 { .oer_constraints = 0, .per_constraints = 0, .general_constraints = 0 },
942 0, 0, /* No default value */
943 .name = "ieee-binary64-w"
945 { ATF_NOFLAGS, 0, offsetof(struct Test, ieee_binary64_0w),
946 .tag = (ASN_TAG_CLASS_UNIVERSAL | (9 << 2)),
948 .type = &asn_DEF_IEEE_binary64_0w,
950 { .oer_constraints = 0, .per_constraints = 0, .general_constraints = 0 },
951 0, 0, /* No default value */
952 .name = "ieee-binary64-0w"
954 { ATF_NOFLAGS, 0, offsetof(struct Test, ieee_binary64_w0),
955 .tag = (ASN_TAG_CLASS_UNIVERSAL | (9 << 2)),
957 .type = &asn_DEF_IEEE_binary64_w0,
959 { .oer_constraints = 0, .per_constraints = 0, .general_constraints = 0 },
960 0, 0, /* No default value */
961 .name = "ieee-binary64-w0"
964 static const ber_tlv_tag_t asn_DEF_Test_tags_1[] = {
965 (ASN_TAG_CLASS_UNIVERSAL | (16 << 2))
967 static const asn_TYPE_tag2member_t asn_MAP_Test_tag2el_1[] = {
968 { (ASN_TAG_CLASS_UNIVERSAL | (9 << 2)), 0, 0, 6 }, /* indirect-ieee-binary32 */
969 { (ASN_TAG_CLASS_UNIVERSAL | (9 << 2)), 1, -1, 5 }, /* ieee-binary32-w */
970 { (ASN_TAG_CLASS_UNIVERSAL | (9 << 2)), 2, -2, 4 }, /* ieee-binary32-0w */
971 { (ASN_TAG_CLASS_UNIVERSAL | (9 << 2)), 3, -3, 3 }, /* ieee-binary32-w0 */
972 { (ASN_TAG_CLASS_UNIVERSAL | (9 << 2)), 4, -4, 2 }, /* ieee-binary64-w */
973 { (ASN_TAG_CLASS_UNIVERSAL | (9 << 2)), 5, -5, 1 }, /* ieee-binary64-0w */
974 { (ASN_TAG_CLASS_UNIVERSAL | (9 << 2)), 6, -6, 0 } /* ieee-binary64-w0 */
976 static asn_SEQUENCE_specifics_t asn_SPC_Test_specs_1 = {
978 offsetof(struct Test, _asn_ctx),
979 .tag2el = asn_MAP_Test_tag2el_1,
980 .tag2el_count = 7, /* Count of tags in the map */
981 0, 0, 0, /* Optional elements (not needed) */
982 -1, /* First extension addition */
984 asn_TYPE_descriptor_t asn_DEF_Test = {
989 sizeof(asn_DEF_Test_tags_1)
990 /sizeof(asn_DEF_Test_tags_1[0]), /* 1 */
991 asn_DEF_Test_tags_1, /* Same as above */
992 sizeof(asn_DEF_Test_tags_1)
993 /sizeof(asn_DEF_Test_tags_1[0]), /* 1 */
994 { 0, 0, SEQUENCE_constraint },
996 7, /* Elements count */
997 &asn_SPC_Test_specs_1 /* Additional specs */