2 /*** <<< INCLUDES [UnconstrainedREAL] >>> ***/
6 /*** <<< TYPE-DECLS [UnconstrainedREAL] >>> ***/
8 typedef REAL_t 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;
21 /*** <<< CODE [UnconstrainedREAL] >>> ***/
24 * This type is implemented using REAL,
25 * so here we adjust the DEF accordingly.
28 /*** <<< STAT-DEFS [UnconstrainedREAL] >>> ***/
30 static const ber_tlv_tag_t asn_DEF_UnconstrainedREAL_tags_1[] = {
31 (ASN_TAG_CLASS_UNIVERSAL | (9 << 2))
33 asn_TYPE_descriptor_t asn_DEF_UnconstrainedREAL = {
37 asn_DEF_UnconstrainedREAL_tags_1,
38 sizeof(asn_DEF_UnconstrainedREAL_tags_1)
39 /sizeof(asn_DEF_UnconstrainedREAL_tags_1[0]), /* 1 */
40 asn_DEF_UnconstrainedREAL_tags_1, /* Same as above */
41 sizeof(asn_DEF_UnconstrainedREAL_tags_1)
42 /sizeof(asn_DEF_UnconstrainedREAL_tags_1[0]), /* 1 */
43 { 0, 0, REAL_constraint },
44 0, 0, /* No members */
49 /*** <<< INCLUDES [WeirdlyConstrainedREAL] >>> ***/
53 /*** <<< TYPE-DECLS [WeirdlyConstrainedREAL] >>> ***/
55 typedef REAL_t WeirdlyConstrainedREAL_t;
57 /*** <<< FUNC-DECLS [WeirdlyConstrainedREAL] >>> ***/
59 extern asn_TYPE_descriptor_t asn_DEF_WeirdlyConstrainedREAL;
60 asn_struct_free_f WeirdlyConstrainedREAL_free;
61 asn_struct_print_f WeirdlyConstrainedREAL_print;
62 asn_constr_check_f WeirdlyConstrainedREAL_constraint;
63 ber_type_decoder_f WeirdlyConstrainedREAL_decode_ber;
64 der_type_encoder_f WeirdlyConstrainedREAL_encode_der;
65 xer_type_decoder_f WeirdlyConstrainedREAL_decode_xer;
66 xer_type_encoder_f WeirdlyConstrainedREAL_encode_xer;
68 /*** <<< CODE [WeirdlyConstrainedREAL] >>> ***/
71 WeirdlyConstrainedREAL_constraint(const asn_TYPE_descriptor_t *td, const void *sptr,
72 asn_app_constraint_failed_f *ctfailcb, void *app_key) {
73 const REAL_t *st = (const REAL_t *)sptr;
77 ASN__CTFAIL(app_key, td, sptr,
78 "%s: value not given (%s:%d)",
79 td->name, __FILE__, __LINE__);
83 if(asn_REAL2double(st, &value)) {
84 ASN__CTFAIL(app_key, td, sptr,
85 "%s: value too large (%s:%d)",
86 td->name, __FILE__, __LINE__);
91 /* Constraint check succeeded */
94 ASN__CTFAIL(app_key, td, sptr,
95 "%s: constraint failed (%s:%d)",
96 td->name, __FILE__, __LINE__);
102 * This type is implemented using REAL,
103 * so here we adjust the DEF accordingly.
106 /*** <<< STAT-DEFS [WeirdlyConstrainedREAL] >>> ***/
108 static const ber_tlv_tag_t asn_DEF_WeirdlyConstrainedREAL_tags_1[] = {
109 (ASN_TAG_CLASS_UNIVERSAL | (9 << 2))
111 asn_TYPE_descriptor_t asn_DEF_WeirdlyConstrainedREAL = {
112 "WeirdlyConstrainedREAL",
113 "WeirdlyConstrainedREAL",
115 asn_DEF_WeirdlyConstrainedREAL_tags_1,
116 sizeof(asn_DEF_WeirdlyConstrainedREAL_tags_1)
117 /sizeof(asn_DEF_WeirdlyConstrainedREAL_tags_1[0]), /* 1 */
118 asn_DEF_WeirdlyConstrainedREAL_tags_1, /* Same as above */
119 sizeof(asn_DEF_WeirdlyConstrainedREAL_tags_1)
120 /sizeof(asn_DEF_WeirdlyConstrainedREAL_tags_1[0]), /* 1 */
121 { 0, 0, WeirdlyConstrainedREAL_constraint },
122 0, 0, /* No members */
127 /*** <<< INCLUDES [Indirect-IEEE-binary32] >>> ***/
129 #include "UnconstrainedREAL.h"
131 /*** <<< TYPE-DECLS [Indirect-IEEE-binary32] >>> ***/
133 typedef UnconstrainedREAL_t Indirect_IEEE_binary32_t;
135 /*** <<< FUNC-DECLS [Indirect-IEEE-binary32] >>> ***/
137 extern asn_TYPE_descriptor_t asn_DEF_Indirect_IEEE_binary32;
138 extern const asn_REAL_specifics_t asn_SPC_Indirect_IEEE_binary32_specs_1;
139 asn_struct_free_f Indirect_IEEE_binary32_free;
140 asn_struct_print_f Indirect_IEEE_binary32_print;
141 asn_constr_check_f Indirect_IEEE_binary32_constraint;
142 ber_type_decoder_f Indirect_IEEE_binary32_decode_ber;
143 der_type_encoder_f Indirect_IEEE_binary32_encode_der;
144 xer_type_decoder_f Indirect_IEEE_binary32_decode_xer;
145 xer_type_encoder_f Indirect_IEEE_binary32_encode_xer;
147 /*** <<< CODE [Indirect-IEEE-binary32] >>> ***/
150 Indirect_IEEE_binary32_constraint(const asn_TYPE_descriptor_t *td, const void *sptr,
151 asn_app_constraint_failed_f *ctfailcb, void *app_key) {
154 ASN__CTFAIL(app_key, td, sptr,
155 "%s: value not given (%s:%d)",
156 td->name, __FILE__, __LINE__);
161 if(1 /* No applicable constraints whatsoever */) {
162 /* Nothing is here. See below */
165 return td->encoding_constraints.general_constraints(td, sptr, ctfailcb, app_key);
169 * This type is implemented using UnconstrainedREAL,
170 * so here we adjust the DEF accordingly.
173 /*** <<< STAT-DEFS [Indirect-IEEE-binary32] >>> ***/
175 const asn_NativeReal_specifics_t asn_SPC_Indirect_IEEE_binary32_specs_1 = {
176 4 /* Use 'float' type. */
178 static const ber_tlv_tag_t asn_DEF_Indirect_IEEE_binary32_tags_1[] = {
179 (ASN_TAG_CLASS_UNIVERSAL | (9 << 2))
181 asn_TYPE_descriptor_t asn_DEF_Indirect_IEEE_binary32 = {
182 "Indirect-IEEE-binary32",
183 "Indirect-IEEE-binary32",
185 asn_DEF_Indirect_IEEE_binary32_tags_1,
186 sizeof(asn_DEF_Indirect_IEEE_binary32_tags_1)
187 /sizeof(asn_DEF_Indirect_IEEE_binary32_tags_1[0]), /* 1 */
188 asn_DEF_Indirect_IEEE_binary32_tags_1, /* Same as above */
189 sizeof(asn_DEF_Indirect_IEEE_binary32_tags_1)
190 /sizeof(asn_DEF_Indirect_IEEE_binary32_tags_1[0]), /* 1 */
191 { 0, 0, Indirect_IEEE_binary32_constraint },
192 0, 0, /* No members */
193 &asn_SPC_Indirect_IEEE_binary32_specs_1 /* Additional specs */
197 /*** <<< INCLUDES [IEEE-binary32-w] >>> ***/
199 #include <NativeReal.h>
201 /*** <<< TYPE-DECLS [IEEE-binary32-w] >>> ***/
203 typedef float IEEE_binary32_w_t;
205 /*** <<< FUNC-DECLS [IEEE-binary32-w] >>> ***/
207 extern asn_TYPE_descriptor_t asn_DEF_IEEE_binary32_w;
208 extern const asn_NativeReal_specifics_t asn_SPC_IEEE_binary32_w_specs_1;
209 asn_struct_free_f IEEE_binary32_w_free;
210 asn_struct_print_f IEEE_binary32_w_print;
211 asn_constr_check_f IEEE_binary32_w_constraint;
212 ber_type_decoder_f IEEE_binary32_w_decode_ber;
213 der_type_encoder_f IEEE_binary32_w_encode_der;
214 xer_type_decoder_f IEEE_binary32_w_decode_xer;
215 xer_type_encoder_f IEEE_binary32_w_encode_xer;
217 /*** <<< CODE [IEEE-binary32-w] >>> ***/
220 IEEE_binary32_w_constraint(const asn_TYPE_descriptor_t *td, const void *sptr,
221 asn_app_constraint_failed_f *ctfailcb, void *app_key) {
224 ASN__CTFAIL(app_key, td, sptr,
225 "%s: value not given (%s:%d)",
226 td->name, __FILE__, __LINE__);
231 if(1 /* No applicable constraints whatsoever */) {
232 /* Nothing is here. See below */
235 return td->encoding_constraints.general_constraints(td, sptr, ctfailcb, app_key);
239 * This type is implemented using NativeReal,
240 * so here we adjust the DEF accordingly.
243 /*** <<< STAT-DEFS [IEEE-binary32-w] >>> ***/
245 const asn_NativeReal_specifics_t asn_SPC_IEEE_binary32_w_specs_1 = {
246 4 /* Use 'float' type. */
248 static const ber_tlv_tag_t asn_DEF_IEEE_binary32_w_tags_1[] = {
249 (ASN_TAG_CLASS_UNIVERSAL | (9 << 2))
251 asn_TYPE_descriptor_t asn_DEF_IEEE_binary32_w = {
255 asn_DEF_IEEE_binary32_w_tags_1,
256 sizeof(asn_DEF_IEEE_binary32_w_tags_1)
257 /sizeof(asn_DEF_IEEE_binary32_w_tags_1[0]), /* 1 */
258 asn_DEF_IEEE_binary32_w_tags_1, /* Same as above */
259 sizeof(asn_DEF_IEEE_binary32_w_tags_1)
260 /sizeof(asn_DEF_IEEE_binary32_w_tags_1[0]), /* 1 */
261 { 0, 0, IEEE_binary32_w_constraint },
262 0, 0, /* No members */
263 &asn_SPC_IEEE_binary32_w_specs_1 /* Additional specs */
267 /*** <<< INCLUDES [IEEE-binary32-0w] >>> ***/
269 #include <NativeReal.h>
271 /*** <<< TYPE-DECLS [IEEE-binary32-0w] >>> ***/
273 typedef float IEEE_binary32_0w_t;
275 /*** <<< FUNC-DECLS [IEEE-binary32-0w] >>> ***/
277 extern asn_TYPE_descriptor_t asn_DEF_IEEE_binary32_0w;
278 extern const asn_NativeReal_specifics_t asn_SPC_IEEE_binary32_0w_specs_1;
279 asn_struct_free_f IEEE_binary32_0w_free;
280 asn_struct_print_f IEEE_binary32_0w_print;
281 asn_constr_check_f IEEE_binary32_0w_constraint;
282 ber_type_decoder_f IEEE_binary32_0w_decode_ber;
283 der_type_encoder_f IEEE_binary32_0w_encode_der;
284 xer_type_decoder_f IEEE_binary32_0w_decode_xer;
285 xer_type_encoder_f IEEE_binary32_0w_encode_xer;
287 /*** <<< CODE [IEEE-binary32-0w] >>> ***/
290 IEEE_binary32_0w_constraint(const asn_TYPE_descriptor_t *td, const void *sptr,
291 asn_app_constraint_failed_f *ctfailcb, void *app_key) {
294 ASN__CTFAIL(app_key, td, sptr,
295 "%s: value not given (%s:%d)",
296 td->name, __FILE__, __LINE__);
301 if(1 /* No applicable constraints whatsoever */) {
302 /* Nothing is here. See below */
305 return td->encoding_constraints.general_constraints(td, sptr, ctfailcb, app_key);
309 * This type is implemented using NativeReal,
310 * so here we adjust the DEF accordingly.
313 /*** <<< STAT-DEFS [IEEE-binary32-0w] >>> ***/
315 const asn_NativeReal_specifics_t asn_SPC_IEEE_binary32_0w_specs_1 = {
316 4 /* Use 'float' type. */
318 static const ber_tlv_tag_t asn_DEF_IEEE_binary32_0w_tags_1[] = {
319 (ASN_TAG_CLASS_UNIVERSAL | (9 << 2))
321 asn_TYPE_descriptor_t asn_DEF_IEEE_binary32_0w = {
325 asn_DEF_IEEE_binary32_0w_tags_1,
326 sizeof(asn_DEF_IEEE_binary32_0w_tags_1)
327 /sizeof(asn_DEF_IEEE_binary32_0w_tags_1[0]), /* 1 */
328 asn_DEF_IEEE_binary32_0w_tags_1, /* Same as above */
329 sizeof(asn_DEF_IEEE_binary32_0w_tags_1)
330 /sizeof(asn_DEF_IEEE_binary32_0w_tags_1[0]), /* 1 */
331 { 0, 0, IEEE_binary32_0w_constraint },
332 0, 0, /* No members */
333 &asn_SPC_IEEE_binary32_0w_specs_1 /* Additional specs */
337 /*** <<< INCLUDES [IEEE-binary32-w0] >>> ***/
339 #include <NativeReal.h>
341 /*** <<< TYPE-DECLS [IEEE-binary32-w0] >>> ***/
343 typedef float IEEE_binary32_w0_t;
345 /*** <<< FUNC-DECLS [IEEE-binary32-w0] >>> ***/
347 extern asn_TYPE_descriptor_t asn_DEF_IEEE_binary32_w0;
348 extern const asn_NativeReal_specifics_t asn_SPC_IEEE_binary32_w0_specs_1;
349 asn_struct_free_f IEEE_binary32_w0_free;
350 asn_struct_print_f IEEE_binary32_w0_print;
351 asn_constr_check_f IEEE_binary32_w0_constraint;
352 ber_type_decoder_f IEEE_binary32_w0_decode_ber;
353 der_type_encoder_f IEEE_binary32_w0_encode_der;
354 xer_type_decoder_f IEEE_binary32_w0_decode_xer;
355 xer_type_encoder_f IEEE_binary32_w0_encode_xer;
357 /*** <<< CODE [IEEE-binary32-w0] >>> ***/
360 IEEE_binary32_w0_constraint(const asn_TYPE_descriptor_t *td, const void *sptr,
361 asn_app_constraint_failed_f *ctfailcb, void *app_key) {
364 ASN__CTFAIL(app_key, td, sptr,
365 "%s: value not given (%s:%d)",
366 td->name, __FILE__, __LINE__);
371 if(1 /* No applicable constraints whatsoever */) {
372 /* Nothing is here. See below */
375 return td->encoding_constraints.general_constraints(td, sptr, ctfailcb, app_key);
379 * This type is implemented using NativeReal,
380 * so here we adjust the DEF accordingly.
383 /*** <<< STAT-DEFS [IEEE-binary32-w0] >>> ***/
385 const asn_NativeReal_specifics_t asn_SPC_IEEE_binary32_w0_specs_1 = {
386 4 /* Use 'float' type. */
388 static const ber_tlv_tag_t asn_DEF_IEEE_binary32_w0_tags_1[] = {
389 (ASN_TAG_CLASS_UNIVERSAL | (9 << 2))
391 asn_TYPE_descriptor_t asn_DEF_IEEE_binary32_w0 = {
395 asn_DEF_IEEE_binary32_w0_tags_1,
396 sizeof(asn_DEF_IEEE_binary32_w0_tags_1)
397 /sizeof(asn_DEF_IEEE_binary32_w0_tags_1[0]), /* 1 */
398 asn_DEF_IEEE_binary32_w0_tags_1, /* Same as above */
399 sizeof(asn_DEF_IEEE_binary32_w0_tags_1)
400 /sizeof(asn_DEF_IEEE_binary32_w0_tags_1[0]), /* 1 */
401 { 0, 0, IEEE_binary32_w0_constraint },
402 0, 0, /* No members */
403 &asn_SPC_IEEE_binary32_w0_specs_1 /* Additional specs */
407 /*** <<< INCLUDES [IEEE-binary64-w] >>> ***/
409 #include <NativeReal.h>
411 /*** <<< TYPE-DECLS [IEEE-binary64-w] >>> ***/
413 typedef double IEEE_binary64_w_t;
415 /*** <<< FUNC-DECLS [IEEE-binary64-w] >>> ***/
417 extern asn_TYPE_descriptor_t asn_DEF_IEEE_binary64_w;
418 asn_struct_free_f IEEE_binary64_w_free;
419 asn_struct_print_f IEEE_binary64_w_print;
420 asn_constr_check_f IEEE_binary64_w_constraint;
421 ber_type_decoder_f IEEE_binary64_w_decode_ber;
422 der_type_encoder_f IEEE_binary64_w_encode_der;
423 xer_type_decoder_f IEEE_binary64_w_decode_xer;
424 xer_type_encoder_f IEEE_binary64_w_encode_xer;
426 /*** <<< CODE [IEEE-binary64-w] >>> ***/
429 IEEE_binary64_w_constraint(const asn_TYPE_descriptor_t *td, const void *sptr,
430 asn_app_constraint_failed_f *ctfailcb, void *app_key) {
433 ASN__CTFAIL(app_key, td, sptr,
434 "%s: value not given (%s:%d)",
435 td->name, __FILE__, __LINE__);
440 if(1 /* No applicable constraints whatsoever */) {
441 /* Nothing is here. See below */
444 return td->encoding_constraints.general_constraints(td, sptr, ctfailcb, app_key);
448 * This type is implemented using NativeReal,
449 * so here we adjust the DEF accordingly.
452 /*** <<< STAT-DEFS [IEEE-binary64-w] >>> ***/
454 static const ber_tlv_tag_t asn_DEF_IEEE_binary64_w_tags_1[] = {
455 (ASN_TAG_CLASS_UNIVERSAL | (9 << 2))
457 asn_TYPE_descriptor_t asn_DEF_IEEE_binary64_w = {
461 asn_DEF_IEEE_binary64_w_tags_1,
462 sizeof(asn_DEF_IEEE_binary64_w_tags_1)
463 /sizeof(asn_DEF_IEEE_binary64_w_tags_1[0]), /* 1 */
464 asn_DEF_IEEE_binary64_w_tags_1, /* Same as above */
465 sizeof(asn_DEF_IEEE_binary64_w_tags_1)
466 /sizeof(asn_DEF_IEEE_binary64_w_tags_1[0]), /* 1 */
467 { 0, 0, IEEE_binary64_w_constraint },
468 0, 0, /* No members */
473 /*** <<< INCLUDES [IEEE-binary64-0w] >>> ***/
475 #include <NativeReal.h>
477 /*** <<< TYPE-DECLS [IEEE-binary64-0w] >>> ***/
479 typedef double IEEE_binary64_0w_t;
481 /*** <<< FUNC-DECLS [IEEE-binary64-0w] >>> ***/
483 extern asn_TYPE_descriptor_t asn_DEF_IEEE_binary64_0w;
484 asn_struct_free_f IEEE_binary64_0w_free;
485 asn_struct_print_f IEEE_binary64_0w_print;
486 asn_constr_check_f IEEE_binary64_0w_constraint;
487 ber_type_decoder_f IEEE_binary64_0w_decode_ber;
488 der_type_encoder_f IEEE_binary64_0w_encode_der;
489 xer_type_decoder_f IEEE_binary64_0w_decode_xer;
490 xer_type_encoder_f IEEE_binary64_0w_encode_xer;
492 /*** <<< CODE [IEEE-binary64-0w] >>> ***/
495 IEEE_binary64_0w_constraint(const asn_TYPE_descriptor_t *td, const void *sptr,
496 asn_app_constraint_failed_f *ctfailcb, void *app_key) {
499 ASN__CTFAIL(app_key, td, sptr,
500 "%s: value not given (%s:%d)",
501 td->name, __FILE__, __LINE__);
506 if(1 /* No applicable constraints whatsoever */) {
507 /* Nothing is here. See below */
510 return td->encoding_constraints.general_constraints(td, sptr, ctfailcb, app_key);
514 * This type is implemented using NativeReal,
515 * so here we adjust the DEF accordingly.
518 /*** <<< STAT-DEFS [IEEE-binary64-0w] >>> ***/
520 static const ber_tlv_tag_t asn_DEF_IEEE_binary64_0w_tags_1[] = {
521 (ASN_TAG_CLASS_UNIVERSAL | (9 << 2))
523 asn_TYPE_descriptor_t asn_DEF_IEEE_binary64_0w = {
527 asn_DEF_IEEE_binary64_0w_tags_1,
528 sizeof(asn_DEF_IEEE_binary64_0w_tags_1)
529 /sizeof(asn_DEF_IEEE_binary64_0w_tags_1[0]), /* 1 */
530 asn_DEF_IEEE_binary64_0w_tags_1, /* Same as above */
531 sizeof(asn_DEF_IEEE_binary64_0w_tags_1)
532 /sizeof(asn_DEF_IEEE_binary64_0w_tags_1[0]), /* 1 */
533 { 0, 0, IEEE_binary64_0w_constraint },
534 0, 0, /* No members */
539 /*** <<< INCLUDES [IEEE-binary64-w0] >>> ***/
541 #include <NativeReal.h>
543 /*** <<< TYPE-DECLS [IEEE-binary64-w0] >>> ***/
545 typedef double IEEE_binary64_w0_t;
547 /*** <<< FUNC-DECLS [IEEE-binary64-w0] >>> ***/
549 extern asn_TYPE_descriptor_t asn_DEF_IEEE_binary64_w0;
550 asn_struct_free_f IEEE_binary64_w0_free;
551 asn_struct_print_f IEEE_binary64_w0_print;
552 asn_constr_check_f IEEE_binary64_w0_constraint;
553 ber_type_decoder_f IEEE_binary64_w0_decode_ber;
554 der_type_encoder_f IEEE_binary64_w0_encode_der;
555 xer_type_decoder_f IEEE_binary64_w0_decode_xer;
556 xer_type_encoder_f IEEE_binary64_w0_encode_xer;
558 /*** <<< CODE [IEEE-binary64-w0] >>> ***/
561 IEEE_binary64_w0_constraint(const asn_TYPE_descriptor_t *td, const void *sptr,
562 asn_app_constraint_failed_f *ctfailcb, void *app_key) {
565 ASN__CTFAIL(app_key, td, sptr,
566 "%s: value not given (%s:%d)",
567 td->name, __FILE__, __LINE__);
572 if(1 /* No applicable constraints whatsoever */) {
573 /* Nothing is here. See below */
576 return td->encoding_constraints.general_constraints(td, sptr, ctfailcb, app_key);
580 * This type is implemented using NativeReal,
581 * so here we adjust the DEF accordingly.
584 /*** <<< STAT-DEFS [IEEE-binary64-w0] >>> ***/
586 static const ber_tlv_tag_t asn_DEF_IEEE_binary64_w0_tags_1[] = {
587 (ASN_TAG_CLASS_UNIVERSAL | (9 << 2))
589 asn_TYPE_descriptor_t asn_DEF_IEEE_binary64_w0 = {
593 asn_DEF_IEEE_binary64_w0_tags_1,
594 sizeof(asn_DEF_IEEE_binary64_w0_tags_1)
595 /sizeof(asn_DEF_IEEE_binary64_w0_tags_1[0]), /* 1 */
596 asn_DEF_IEEE_binary64_w0_tags_1, /* Same as above */
597 sizeof(asn_DEF_IEEE_binary64_w0_tags_1)
598 /sizeof(asn_DEF_IEEE_binary64_w0_tags_1[0]), /* 1 */
599 { 0, 0, IEEE_binary64_w0_constraint },
600 0, 0, /* No members */
605 /*** <<< INCLUDES [Test] >>> ***/
607 #include "Indirect-IEEE-binary32.h"
608 #include "IEEE-binary32-w.h"
609 #include "IEEE-binary32-0w.h"
610 #include "IEEE-binary32-w0.h"
611 #include "IEEE-binary64-w.h"
612 #include "IEEE-binary64-0w.h"
613 #include "IEEE-binary64-w0.h"
614 #include <constr_SEQUENCE.h>
616 /*** <<< TYPE-DECLS [Test] >>> ***/
618 typedef struct Test {
619 Indirect_IEEE_binary32_t indirect_ieee_binary32;
620 IEEE_binary32_w_t ieee_binary32_w;
621 IEEE_binary32_0w_t ieee_binary32_0w;
622 IEEE_binary32_w0_t ieee_binary32_w0;
623 IEEE_binary64_w_t ieee_binary64_w;
624 IEEE_binary64_0w_t ieee_binary64_0w;
625 IEEE_binary64_w0_t ieee_binary64_w0;
627 /* Context for parsing across buffer boundaries */
628 asn_struct_ctx_t _asn_ctx;
631 /*** <<< FUNC-DECLS [Test] >>> ***/
633 /* extern asn_TYPE_descriptor_t asn_DEF_indirect_ieee_binary32_2; // (Use -fall-defs-global to expose) */
634 /* extern asn_TYPE_descriptor_t asn_DEF_ieee_binary32_w_3; // (Use -fall-defs-global to expose) */
635 /* extern asn_TYPE_descriptor_t asn_DEF_ieee_binary32_0w_4; // (Use -fall-defs-global to expose) */
636 /* extern asn_TYPE_descriptor_t asn_DEF_ieee_binary32_w0_5; // (Use -fall-defs-global to expose) */
637 extern asn_TYPE_descriptor_t asn_DEF_Test;
639 /*** <<< CODE [Test] >>> ***/
642 indirect_ieee_binary32_2_constraint(const asn_TYPE_descriptor_t *td, const void *sptr,
643 asn_app_constraint_failed_f *ctfailcb, void *app_key) {
646 ASN__CTFAIL(app_key, td, sptr,
647 "%s: value not given (%s:%d)",
648 td->name, __FILE__, __LINE__);
653 if(1 /* No applicable constraints whatsoever */) {
654 /* Nothing is here. See below */
657 return td->encoding_constraints.general_constraints(td, sptr, ctfailcb, app_key);
661 * This type is implemented using Indirect_IEEE_binary32,
662 * so here we adjust the DEF accordingly.
665 ieee_binary32_w_3_constraint(const asn_TYPE_descriptor_t *td, const void *sptr,
666 asn_app_constraint_failed_f *ctfailcb, void *app_key) {
669 ASN__CTFAIL(app_key, td, sptr,
670 "%s: value not given (%s:%d)",
671 td->name, __FILE__, __LINE__);
676 if(1 /* No applicable constraints whatsoever */) {
677 /* Nothing is here. See below */
680 return td->encoding_constraints.general_constraints(td, sptr, ctfailcb, app_key);
684 * This type is implemented using IEEE_binary32_w,
685 * so here we adjust the DEF accordingly.
688 ieee_binary32_0w_4_constraint(const asn_TYPE_descriptor_t *td, const void *sptr,
689 asn_app_constraint_failed_f *ctfailcb, void *app_key) {
692 ASN__CTFAIL(app_key, td, sptr,
693 "%s: value not given (%s:%d)",
694 td->name, __FILE__, __LINE__);
699 if(1 /* No applicable constraints whatsoever */) {
700 /* Nothing is here. See below */
703 return td->encoding_constraints.general_constraints(td, sptr, ctfailcb, app_key);
707 * This type is implemented using IEEE_binary32_0w,
708 * so here we adjust the DEF accordingly.
711 ieee_binary32_w0_5_constraint(const asn_TYPE_descriptor_t *td, const void *sptr,
712 asn_app_constraint_failed_f *ctfailcb, void *app_key) {
715 ASN__CTFAIL(app_key, td, sptr,
716 "%s: value not given (%s:%d)",
717 td->name, __FILE__, __LINE__);
722 if(1 /* No applicable constraints whatsoever */) {
723 /* Nothing is here. See below */
726 return td->encoding_constraints.general_constraints(td, sptr, ctfailcb, app_key);
730 * This type is implemented using IEEE_binary32_w0,
731 * so here we adjust the DEF accordingly.
734 /*** <<< STAT-DEFS [Test] >>> ***/
736 static const asn_NativeReal_specifics_t asn_SPC_indirect_ieee_binary32_specs_2 = {
737 4 /* Use 'float' type. */
739 static const ber_tlv_tag_t asn_DEF_indirect_ieee_binary32_tags_2[] = {
740 (ASN_TAG_CLASS_UNIVERSAL | (9 << 2))
742 static /* Use -fall-defs-global to expose */
743 asn_TYPE_descriptor_t asn_DEF_indirect_ieee_binary32_2 = {
744 "indirect-ieee-binary32",
745 "indirect-ieee-binary32",
747 asn_DEF_indirect_ieee_binary32_tags_2,
748 sizeof(asn_DEF_indirect_ieee_binary32_tags_2)
749 /sizeof(asn_DEF_indirect_ieee_binary32_tags_2[0]), /* 1 */
750 asn_DEF_indirect_ieee_binary32_tags_2, /* Same as above */
751 sizeof(asn_DEF_indirect_ieee_binary32_tags_2)
752 /sizeof(asn_DEF_indirect_ieee_binary32_tags_2[0]), /* 1 */
753 { 0, 0, indirect_ieee_binary32_2_constraint },
754 0, 0, /* No members */
755 &asn_SPC_indirect_ieee_binary32_specs_2 /* Additional specs */
758 static const asn_NativeReal_specifics_t asn_SPC_ieee_binary32_w_specs_3 = {
759 4 /* Use 'float' type. */
761 static const ber_tlv_tag_t asn_DEF_ieee_binary32_w_tags_3[] = {
762 (ASN_TAG_CLASS_UNIVERSAL | (9 << 2))
764 static /* Use -fall-defs-global to expose */
765 asn_TYPE_descriptor_t asn_DEF_ieee_binary32_w_3 = {
769 asn_DEF_ieee_binary32_w_tags_3,
770 sizeof(asn_DEF_ieee_binary32_w_tags_3)
771 /sizeof(asn_DEF_ieee_binary32_w_tags_3[0]), /* 1 */
772 asn_DEF_ieee_binary32_w_tags_3, /* Same as above */
773 sizeof(asn_DEF_ieee_binary32_w_tags_3)
774 /sizeof(asn_DEF_ieee_binary32_w_tags_3[0]), /* 1 */
775 { 0, 0, ieee_binary32_w_3_constraint },
776 0, 0, /* No members */
777 &asn_SPC_ieee_binary32_w_specs_3 /* Additional specs */
780 static const asn_NativeReal_specifics_t asn_SPC_ieee_binary32_0w_specs_4 = {
781 4 /* Use 'float' type. */
783 static const ber_tlv_tag_t asn_DEF_ieee_binary32_0w_tags_4[] = {
784 (ASN_TAG_CLASS_UNIVERSAL | (9 << 2))
786 static /* Use -fall-defs-global to expose */
787 asn_TYPE_descriptor_t asn_DEF_ieee_binary32_0w_4 = {
791 asn_DEF_ieee_binary32_0w_tags_4,
792 sizeof(asn_DEF_ieee_binary32_0w_tags_4)
793 /sizeof(asn_DEF_ieee_binary32_0w_tags_4[0]), /* 1 */
794 asn_DEF_ieee_binary32_0w_tags_4, /* Same as above */
795 sizeof(asn_DEF_ieee_binary32_0w_tags_4)
796 /sizeof(asn_DEF_ieee_binary32_0w_tags_4[0]), /* 1 */
797 { 0, 0, ieee_binary32_0w_4_constraint },
798 0, 0, /* No members */
799 &asn_SPC_ieee_binary32_0w_specs_4 /* Additional specs */
802 static const asn_NativeReal_specifics_t asn_SPC_ieee_binary32_w0_specs_5 = {
803 4 /* Use 'float' type. */
805 static const ber_tlv_tag_t asn_DEF_ieee_binary32_w0_tags_5[] = {
806 (ASN_TAG_CLASS_UNIVERSAL | (9 << 2))
808 static /* Use -fall-defs-global to expose */
809 asn_TYPE_descriptor_t asn_DEF_ieee_binary32_w0_5 = {
813 asn_DEF_ieee_binary32_w0_tags_5,
814 sizeof(asn_DEF_ieee_binary32_w0_tags_5)
815 /sizeof(asn_DEF_ieee_binary32_w0_tags_5[0]), /* 1 */
816 asn_DEF_ieee_binary32_w0_tags_5, /* Same as above */
817 sizeof(asn_DEF_ieee_binary32_w0_tags_5)
818 /sizeof(asn_DEF_ieee_binary32_w0_tags_5[0]), /* 1 */
819 { 0, 0, ieee_binary32_w0_5_constraint },
820 0, 0, /* No members */
821 &asn_SPC_ieee_binary32_w0_specs_5 /* Additional specs */
824 static asn_TYPE_member_t asn_MBR_Test_1[] = {
825 { ATF_NOFLAGS, 0, offsetof(struct Test, indirect_ieee_binary32),
826 .tag = (ASN_TAG_CLASS_UNIVERSAL | (9 << 2)),
828 .type = &asn_DEF_Indirect_IEEE_binary32,
830 { .oer_constraints = 0, .per_constraints = 0, .general_constraints = 0 },
831 0, 0, /* No default value */
832 .name = "indirect-ieee-binary32"
834 { ATF_NOFLAGS, 0, offsetof(struct Test, ieee_binary32_w),
835 .tag = (ASN_TAG_CLASS_UNIVERSAL | (9 << 2)),
837 .type = &asn_DEF_IEEE_binary32_w,
839 { .oer_constraints = 0, .per_constraints = 0, .general_constraints = 0 },
840 0, 0, /* No default value */
841 .name = "ieee-binary32-w"
843 { ATF_NOFLAGS, 0, offsetof(struct Test, ieee_binary32_0w),
844 .tag = (ASN_TAG_CLASS_UNIVERSAL | (9 << 2)),
846 .type = &asn_DEF_IEEE_binary32_0w,
848 { .oer_constraints = 0, .per_constraints = 0, .general_constraints = 0 },
849 0, 0, /* No default value */
850 .name = "ieee-binary32-0w"
852 { ATF_NOFLAGS, 0, offsetof(struct Test, ieee_binary32_w0),
853 .tag = (ASN_TAG_CLASS_UNIVERSAL | (9 << 2)),
855 .type = &asn_DEF_IEEE_binary32_w0,
857 { .oer_constraints = 0, .per_constraints = 0, .general_constraints = 0 },
858 0, 0, /* No default value */
859 .name = "ieee-binary32-w0"
861 { ATF_NOFLAGS, 0, offsetof(struct Test, ieee_binary64_w),
862 .tag = (ASN_TAG_CLASS_UNIVERSAL | (9 << 2)),
864 .type = &asn_DEF_IEEE_binary64_w,
866 { .oer_constraints = 0, .per_constraints = 0, .general_constraints = 0 },
867 0, 0, /* No default value */
868 .name = "ieee-binary64-w"
870 { ATF_NOFLAGS, 0, offsetof(struct Test, ieee_binary64_0w),
871 .tag = (ASN_TAG_CLASS_UNIVERSAL | (9 << 2)),
873 .type = &asn_DEF_IEEE_binary64_0w,
875 { .oer_constraints = 0, .per_constraints = 0, .general_constraints = 0 },
876 0, 0, /* No default value */
877 .name = "ieee-binary64-0w"
879 { ATF_NOFLAGS, 0, offsetof(struct Test, ieee_binary64_w0),
880 .tag = (ASN_TAG_CLASS_UNIVERSAL | (9 << 2)),
882 .type = &asn_DEF_IEEE_binary64_w0,
884 { .oer_constraints = 0, .per_constraints = 0, .general_constraints = 0 },
885 0, 0, /* No default value */
886 .name = "ieee-binary64-w0"
889 static const ber_tlv_tag_t asn_DEF_Test_tags_1[] = {
890 (ASN_TAG_CLASS_UNIVERSAL | (16 << 2))
892 static const asn_TYPE_tag2member_t asn_MAP_Test_tag2el_1[] = {
893 { (ASN_TAG_CLASS_UNIVERSAL | (9 << 2)), 0, 0, 6 }, /* indirect-ieee-binary32 */
894 { (ASN_TAG_CLASS_UNIVERSAL | (9 << 2)), 1, -1, 5 }, /* ieee-binary32-w */
895 { (ASN_TAG_CLASS_UNIVERSAL | (9 << 2)), 2, -2, 4 }, /* ieee-binary32-0w */
896 { (ASN_TAG_CLASS_UNIVERSAL | (9 << 2)), 3, -3, 3 }, /* ieee-binary32-w0 */
897 { (ASN_TAG_CLASS_UNIVERSAL | (9 << 2)), 4, -4, 2 }, /* ieee-binary64-w */
898 { (ASN_TAG_CLASS_UNIVERSAL | (9 << 2)), 5, -5, 1 }, /* ieee-binary64-0w */
899 { (ASN_TAG_CLASS_UNIVERSAL | (9 << 2)), 6, -6, 0 } /* ieee-binary64-w0 */
901 static asn_SEQUENCE_specifics_t asn_SPC_Test_specs_1 = {
903 offsetof(struct Test, _asn_ctx),
904 .tag2el = asn_MAP_Test_tag2el_1,
905 .tag2el_count = 7, /* Count of tags in the map */
906 0, 0, 0, /* Optional elements (not needed) */
907 -1, /* First extension addition */
909 asn_TYPE_descriptor_t asn_DEF_Test = {
914 sizeof(asn_DEF_Test_tags_1)
915 /sizeof(asn_DEF_Test_tags_1[0]), /* 1 */
916 asn_DEF_Test_tags_1, /* Same as above */
917 sizeof(asn_DEF_Test_tags_1)
918 /sizeof(asn_DEF_Test_tags_1[0]), /* 1 */
919 { 0, 0, SEQUENCE_constraint },
921 7, /* Elements count */
922 &asn_SPC_Test_specs_1 /* Additional specs */