/* * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) * From ASN.1 module "NR-RRC-Definitions" * found in "/home/labadmin/hlal/rrc_15.3_asn.asn1" * `asn1c -D ./15_3_rrc/ -fcompound-names -fno-include-deps -findirect-choice -gen-PER -no-gen-example` */ #include "PTRS-DensityRecommendationUL.h" static int memb_frequencyDensity1_constraint_1(const asn_TYPE_descriptor_t *td, const void *sptr, asn_app_constraint_failed_f *ctfailcb, void *app_key) { long value; if(!sptr) { ASN__CTFAIL(app_key, td, sptr, "%s: value not given (%s:%d)", td->name, __FILE__, __LINE__); return -1; } value = *(const long *)sptr; if((value >= 1 && value <= 276)) { /* Constraint check succeeded */ return 0; } else { ASN__CTFAIL(app_key, td, sptr, "%s: constraint failed (%s:%d)", td->name, __FILE__, __LINE__); return -1; } } static int memb_frequencyDensity2_constraint_1(const asn_TYPE_descriptor_t *td, const void *sptr, asn_app_constraint_failed_f *ctfailcb, void *app_key) { long value; if(!sptr) { ASN__CTFAIL(app_key, td, sptr, "%s: value not given (%s:%d)", td->name, __FILE__, __LINE__); return -1; } value = *(const long *)sptr; if((value >= 1 && value <= 276)) { /* Constraint check succeeded */ return 0; } else { ASN__CTFAIL(app_key, td, sptr, "%s: constraint failed (%s:%d)", td->name, __FILE__, __LINE__); return -1; } } static int memb_timeDensity1_constraint_1(const asn_TYPE_descriptor_t *td, const void *sptr, asn_app_constraint_failed_f *ctfailcb, void *app_key) { long value; if(!sptr) { ASN__CTFAIL(app_key, td, sptr, "%s: value not given (%s:%d)", td->name, __FILE__, __LINE__); return -1; } value = *(const long *)sptr; if((value >= 0 && value <= 29)) { /* Constraint check succeeded */ return 0; } else { ASN__CTFAIL(app_key, td, sptr, "%s: constraint failed (%s:%d)", td->name, __FILE__, __LINE__); return -1; } } static int memb_timeDensity2_constraint_1(const asn_TYPE_descriptor_t *td, const void *sptr, asn_app_constraint_failed_f *ctfailcb, void *app_key) { long value; if(!sptr) { ASN__CTFAIL(app_key, td, sptr, "%s: value not given (%s:%d)", td->name, __FILE__, __LINE__); return -1; } value = *(const long *)sptr; if((value >= 0 && value <= 29)) { /* Constraint check succeeded */ return 0; } else { ASN__CTFAIL(app_key, td, sptr, "%s: constraint failed (%s:%d)", td->name, __FILE__, __LINE__); return -1; } } static int memb_timeDensity3_constraint_1(const asn_TYPE_descriptor_t *td, const void *sptr, asn_app_constraint_failed_f *ctfailcb, void *app_key) { long value; if(!sptr) { ASN__CTFAIL(app_key, td, sptr, "%s: value not given (%s:%d)", td->name, __FILE__, __LINE__); return -1; } value = *(const long *)sptr; if((value >= 0 && value <= 29)) { /* Constraint check succeeded */ return 0; } else { ASN__CTFAIL(app_key, td, sptr, "%s: constraint failed (%s:%d)", td->name, __FILE__, __LINE__); return -1; } } static int memb_sampleDensity1_constraint_1(const asn_TYPE_descriptor_t *td, const void *sptr, asn_app_constraint_failed_f *ctfailcb, void *app_key) { long value; if(!sptr) { ASN__CTFAIL(app_key, td, sptr, "%s: value not given (%s:%d)", td->name, __FILE__, __LINE__); return -1; } value = *(const long *)sptr; if((value >= 1 && value <= 276)) { /* Constraint check succeeded */ return 0; } else { ASN__CTFAIL(app_key, td, sptr, "%s: constraint failed (%s:%d)", td->name, __FILE__, __LINE__); return -1; } } static int memb_sampleDensity2_constraint_1(const asn_TYPE_descriptor_t *td, const void *sptr, asn_app_constraint_failed_f *ctfailcb, void *app_key) { long value; if(!sptr) { ASN__CTFAIL(app_key, td, sptr, "%s: value not given (%s:%d)", td->name, __FILE__, __LINE__); return -1; } value = *(const long *)sptr; if((value >= 1 && value <= 276)) { /* Constraint check succeeded */ return 0; } else { ASN__CTFAIL(app_key, td, sptr, "%s: constraint failed (%s:%d)", td->name, __FILE__, __LINE__); return -1; } } static int memb_sampleDensity3_constraint_1(const asn_TYPE_descriptor_t *td, const void *sptr, asn_app_constraint_failed_f *ctfailcb, void *app_key) { long value; if(!sptr) { ASN__CTFAIL(app_key, td, sptr, "%s: value not given (%s:%d)", td->name, __FILE__, __LINE__); return -1; } value = *(const long *)sptr; if((value >= 1 && value <= 276)) { /* Constraint check succeeded */ return 0; } else { ASN__CTFAIL(app_key, td, sptr, "%s: constraint failed (%s:%d)", td->name, __FILE__, __LINE__); return -1; } } static int memb_sampleDensity4_constraint_1(const asn_TYPE_descriptor_t *td, const void *sptr, asn_app_constraint_failed_f *ctfailcb, void *app_key) { long value; if(!sptr) { ASN__CTFAIL(app_key, td, sptr, "%s: value not given (%s:%d)", td->name, __FILE__, __LINE__); return -1; } value = *(const long *)sptr; if((value >= 1 && value <= 276)) { /* Constraint check succeeded */ return 0; } else { ASN__CTFAIL(app_key, td, sptr, "%s: constraint failed (%s:%d)", td->name, __FILE__, __LINE__); return -1; } } static int memb_sampleDensity5_constraint_1(const asn_TYPE_descriptor_t *td, const void *sptr, asn_app_constraint_failed_f *ctfailcb, void *app_key) { long value; if(!sptr) { ASN__CTFAIL(app_key, td, sptr, "%s: value not given (%s:%d)", td->name, __FILE__, __LINE__); return -1; } value = *(const long *)sptr; if((value >= 1 && value <= 276)) { /* Constraint check succeeded */ return 0; } else { ASN__CTFAIL(app_key, td, sptr, "%s: constraint failed (%s:%d)", td->name, __FILE__, __LINE__); return -1; } } static asn_oer_constraints_t asn_OER_memb_frequencyDensity1_constr_2 CC_NOTUSED = { { 2, 1 } /* (1..276) */, -1}; static asn_per_constraints_t asn_PER_memb_frequencyDensity1_constr_2 CC_NOTUSED = { { APC_CONSTRAINED, 9, 9, 1, 276 } /* (1..276) */, { APC_UNCONSTRAINED, -1, -1, 0, 0 }, 0, 0 /* No PER value map */ }; static asn_oer_constraints_t asn_OER_memb_frequencyDensity2_constr_3 CC_NOTUSED = { { 2, 1 } /* (1..276) */, -1}; static asn_per_constraints_t asn_PER_memb_frequencyDensity2_constr_3 CC_NOTUSED = { { APC_CONSTRAINED, 9, 9, 1, 276 } /* (1..276) */, { APC_UNCONSTRAINED, -1, -1, 0, 0 }, 0, 0 /* No PER value map */ }; static asn_oer_constraints_t asn_OER_memb_timeDensity1_constr_4 CC_NOTUSED = { { 1, 1 } /* (0..29) */, -1}; static asn_per_constraints_t asn_PER_memb_timeDensity1_constr_4 CC_NOTUSED = { { APC_CONSTRAINED, 5, 5, 0, 29 } /* (0..29) */, { APC_UNCONSTRAINED, -1, -1, 0, 0 }, 0, 0 /* No PER value map */ }; static asn_oer_constraints_t asn_OER_memb_timeDensity2_constr_5 CC_NOTUSED = { { 1, 1 } /* (0..29) */, -1}; static asn_per_constraints_t asn_PER_memb_timeDensity2_constr_5 CC_NOTUSED = { { APC_CONSTRAINED, 5, 5, 0, 29 } /* (0..29) */, { APC_UNCONSTRAINED, -1, -1, 0, 0 }, 0, 0 /* No PER value map */ }; static asn_oer_constraints_t asn_OER_memb_timeDensity3_constr_6 CC_NOTUSED = { { 1, 1 } /* (0..29) */, -1}; static asn_per_constraints_t asn_PER_memb_timeDensity3_constr_6 CC_NOTUSED = { { APC_CONSTRAINED, 5, 5, 0, 29 } /* (0..29) */, { APC_UNCONSTRAINED, -1, -1, 0, 0 }, 0, 0 /* No PER value map */ }; static asn_oer_constraints_t asn_OER_memb_sampleDensity1_constr_7 CC_NOTUSED = { { 2, 1 } /* (1..276) */, -1}; static asn_per_constraints_t asn_PER_memb_sampleDensity1_constr_7 CC_NOTUSED = { { APC_CONSTRAINED, 9, 9, 1, 276 } /* (1..276) */, { APC_UNCONSTRAINED, -1, -1, 0, 0 }, 0, 0 /* No PER value map */ }; static asn_oer_constraints_t asn_OER_memb_sampleDensity2_constr_8 CC_NOTUSED = { { 2, 1 } /* (1..276) */, -1}; static asn_per_constraints_t asn_PER_memb_sampleDensity2_constr_8 CC_NOTUSED = { { APC_CONSTRAINED, 9, 9, 1, 276 } /* (1..276) */, { APC_UNCONSTRAINED, -1, -1, 0, 0 }, 0, 0 /* No PER value map */ }; static asn_oer_constraints_t asn_OER_memb_sampleDensity3_constr_9 CC_NOTUSED = { { 2, 1 } /* (1..276) */, -1}; static asn_per_constraints_t asn_PER_memb_sampleDensity3_constr_9 CC_NOTUSED = { { APC_CONSTRAINED, 9, 9, 1, 276 } /* (1..276) */, { APC_UNCONSTRAINED, -1, -1, 0, 0 }, 0, 0 /* No PER value map */ }; static asn_oer_constraints_t asn_OER_memb_sampleDensity4_constr_10 CC_NOTUSED = { { 2, 1 } /* (1..276) */, -1}; static asn_per_constraints_t asn_PER_memb_sampleDensity4_constr_10 CC_NOTUSED = { { APC_CONSTRAINED, 9, 9, 1, 276 } /* (1..276) */, { APC_UNCONSTRAINED, -1, -1, 0, 0 }, 0, 0 /* No PER value map */ }; static asn_oer_constraints_t asn_OER_memb_sampleDensity5_constr_11 CC_NOTUSED = { { 2, 1 } /* (1..276) */, -1}; static asn_per_constraints_t asn_PER_memb_sampleDensity5_constr_11 CC_NOTUSED = { { APC_CONSTRAINED, 9, 9, 1, 276 } /* (1..276) */, { APC_UNCONSTRAINED, -1, -1, 0, 0 }, 0, 0 /* No PER value map */ }; asn_TYPE_member_t asn_MBR_PTRS_DensityRecommendationUL_1[] = { { ATF_NOFLAGS, 0, offsetof(struct PTRS_DensityRecommendationUL, frequencyDensity1), (ASN_TAG_CLASS_CONTEXT | (0 << 2)), -1, /* IMPLICIT tag at current level */ &asn_DEF_NativeInteger, 0, { &asn_OER_memb_frequencyDensity1_constr_2, &asn_PER_memb_frequencyDensity1_constr_2, memb_frequencyDensity1_constraint_1 }, 0, 0, /* No default value */ "frequencyDensity1" }, { ATF_NOFLAGS, 0, offsetof(struct PTRS_DensityRecommendationUL, frequencyDensity2), (ASN_TAG_CLASS_CONTEXT | (1 << 2)), -1, /* IMPLICIT tag at current level */ &asn_DEF_NativeInteger, 0, { &asn_OER_memb_frequencyDensity2_constr_3, &asn_PER_memb_frequencyDensity2_constr_3, memb_frequencyDensity2_constraint_1 }, 0, 0, /* No default value */ "frequencyDensity2" }, { ATF_NOFLAGS, 0, offsetof(struct PTRS_DensityRecommendationUL, timeDensity1), (ASN_TAG_CLASS_CONTEXT | (2 << 2)), -1, /* IMPLICIT tag at current level */ &asn_DEF_NativeInteger, 0, { &asn_OER_memb_timeDensity1_constr_4, &asn_PER_memb_timeDensity1_constr_4, memb_timeDensity1_constraint_1 }, 0, 0, /* No default value */ "timeDensity1" }, { ATF_NOFLAGS, 0, offsetof(struct PTRS_DensityRecommendationUL, timeDensity2), (ASN_TAG_CLASS_CONTEXT | (3 << 2)), -1, /* IMPLICIT tag at current level */ &asn_DEF_NativeInteger, 0, { &asn_OER_memb_timeDensity2_constr_5, &asn_PER_memb_timeDensity2_constr_5, memb_timeDensity2_constraint_1 }, 0, 0, /* No default value */ "timeDensity2" }, { ATF_NOFLAGS, 0, offsetof(struct PTRS_DensityRecommendationUL, timeDensity3), (ASN_TAG_CLASS_CONTEXT | (4 << 2)), -1, /* IMPLICIT tag at current level */ &asn_DEF_NativeInteger, 0, { &asn_OER_memb_timeDensity3_constr_6, &asn_PER_memb_timeDensity3_constr_6, memb_timeDensity3_constraint_1 }, 0, 0, /* No default value */ "timeDensity3" }, { ATF_NOFLAGS, 0, offsetof(struct PTRS_DensityRecommendationUL, sampleDensity1), (ASN_TAG_CLASS_CONTEXT | (5 << 2)), -1, /* IMPLICIT tag at current level */ &asn_DEF_NativeInteger, 0, { &asn_OER_memb_sampleDensity1_constr_7, &asn_PER_memb_sampleDensity1_constr_7, memb_sampleDensity1_constraint_1 }, 0, 0, /* No default value */ "sampleDensity1" }, { ATF_NOFLAGS, 0, offsetof(struct PTRS_DensityRecommendationUL, sampleDensity2), (ASN_TAG_CLASS_CONTEXT | (6 << 2)), -1, /* IMPLICIT tag at current level */ &asn_DEF_NativeInteger, 0, { &asn_OER_memb_sampleDensity2_constr_8, &asn_PER_memb_sampleDensity2_constr_8, memb_sampleDensity2_constraint_1 }, 0, 0, /* No default value */ "sampleDensity2" }, { ATF_NOFLAGS, 0, offsetof(struct PTRS_DensityRecommendationUL, sampleDensity3), (ASN_TAG_CLASS_CONTEXT | (7 << 2)), -1, /* IMPLICIT tag at current level */ &asn_DEF_NativeInteger, 0, { &asn_OER_memb_sampleDensity3_constr_9, &asn_PER_memb_sampleDensity3_constr_9, memb_sampleDensity3_constraint_1 }, 0, 0, /* No default value */ "sampleDensity3" }, { ATF_NOFLAGS, 0, offsetof(struct PTRS_DensityRecommendationUL, sampleDensity4), (ASN_TAG_CLASS_CONTEXT | (8 << 2)), -1, /* IMPLICIT tag at current level */ &asn_DEF_NativeInteger, 0, { &asn_OER_memb_sampleDensity4_constr_10, &asn_PER_memb_sampleDensity4_constr_10, memb_sampleDensity4_constraint_1 }, 0, 0, /* No default value */ "sampleDensity4" }, { ATF_NOFLAGS, 0, offsetof(struct PTRS_DensityRecommendationUL, sampleDensity5), (ASN_TAG_CLASS_CONTEXT | (9 << 2)), -1, /* IMPLICIT tag at current level */ &asn_DEF_NativeInteger, 0, { &asn_OER_memb_sampleDensity5_constr_11, &asn_PER_memb_sampleDensity5_constr_11, memb_sampleDensity5_constraint_1 }, 0, 0, /* No default value */ "sampleDensity5" }, }; static const ber_tlv_tag_t asn_DEF_PTRS_DensityRecommendationUL_tags_1[] = { (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) }; static const asn_TYPE_tag2member_t asn_MAP_PTRS_DensityRecommendationUL_tag2el_1[] = { { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* frequencyDensity1 */ { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 }, /* frequencyDensity2 */ { (ASN_TAG_CLASS_CONTEXT | (2 << 2)), 2, 0, 0 }, /* timeDensity1 */ { (ASN_TAG_CLASS_CONTEXT | (3 << 2)), 3, 0, 0 }, /* timeDensity2 */ { (ASN_TAG_CLASS_CONTEXT | (4 << 2)), 4, 0, 0 }, /* timeDensity3 */ { (ASN_TAG_CLASS_CONTEXT | (5 << 2)), 5, 0, 0 }, /* sampleDensity1 */ { (ASN_TAG_CLASS_CONTEXT | (6 << 2)), 6, 0, 0 }, /* sampleDensity2 */ { (ASN_TAG_CLASS_CONTEXT | (7 << 2)), 7, 0, 0 }, /* sampleDensity3 */ { (ASN_TAG_CLASS_CONTEXT | (8 << 2)), 8, 0, 0 }, /* sampleDensity4 */ { (ASN_TAG_CLASS_CONTEXT | (9 << 2)), 9, 0, 0 } /* sampleDensity5 */ }; asn_SEQUENCE_specifics_t asn_SPC_PTRS_DensityRecommendationUL_specs_1 = { sizeof(struct PTRS_DensityRecommendationUL), offsetof(struct PTRS_DensityRecommendationUL, _asn_ctx), asn_MAP_PTRS_DensityRecommendationUL_tag2el_1, 10, /* Count of tags in the map */ 0, 0, 0, /* Optional elements (not needed) */ -1, /* First extension addition */ }; asn_TYPE_descriptor_t asn_DEF_PTRS_DensityRecommendationUL = { "PTRS-DensityRecommendationUL", "PTRS-DensityRecommendationUL", &asn_OP_SEQUENCE, asn_DEF_PTRS_DensityRecommendationUL_tags_1, sizeof(asn_DEF_PTRS_DensityRecommendationUL_tags_1) /sizeof(asn_DEF_PTRS_DensityRecommendationUL_tags_1[0]), /* 1 */ asn_DEF_PTRS_DensityRecommendationUL_tags_1, /* Same as above */ sizeof(asn_DEF_PTRS_DensityRecommendationUL_tags_1) /sizeof(asn_DEF_PTRS_DensityRecommendationUL_tags_1[0]), /* 1 */ { 0, 0, SEQUENCE_constraint }, asn_MBR_PTRS_DensityRecommendationUL_1, 10, /* Elements count */ &asn_SPC_PTRS_DensityRecommendationUL_specs_1 /* Additional specs */ };