Commit 6eae4421 authored by Bi-Ruei, Chiu's avatar Bi-Ruei, Chiu

Regenerate test cases

parent 6b76c7c7
...@@ -86,16 +86,20 @@ select_Frame_value_type(const asn_TYPE_descriptor_t *parent_type, const void *pa ...@@ -86,16 +86,20 @@ select_Frame_value_type(const asn_TYPE_descriptor_t *parent_type, const void *pa
const asn_ioc_set_t *itable = asn_IOS_FrameTypes_1; const asn_ioc_set_t *itable = asn_IOS_FrameTypes_1;
size_t constraining_column = 0; /* &id */ size_t constraining_column = 0; /* &id */
size_t for_column = 1; /* &Type */ size_t for_column = 1; /* &Type */
size_t row; size_t row, presence_index = 0;
const long *constraining_value = (const long *)((const char *)parent_sptr + offsetof(struct Frame, ident)); const long *constraining_value = (const long *)((const char *)parent_sptr + offsetof(struct Frame, ident));
for(row=0; row < itable->rows_count; row++) { for(row=0; row < itable->rows_count; row++) {
const asn_ioc_cell_t *constraining_cell = &itable->rows[row * itable->columns_count + constraining_column]; const asn_ioc_cell_t *constraining_cell = &itable->rows[row * itable->columns_count + constraining_column];
const asn_ioc_cell_t *type_cell = &itable->rows[row * itable->columns_count + for_column]; const asn_ioc_cell_t *type_cell = &itable->rows[row * itable->columns_count + for_column];
if(type_cell->cell_kind == aioc__undefined)
continue;
presence_index++;
if(constraining_cell->type_descriptor->op->compare_struct(constraining_cell->type_descriptor, constraining_value, constraining_cell->value_sptr) == 0) { if(constraining_cell->type_descriptor->op->compare_struct(constraining_cell->type_descriptor, constraining_value, constraining_cell->value_sptr) == 0) {
result.type_descriptor = type_cell->type_descriptor; result.type_descriptor = type_cell->type_descriptor;
result.presence_index = row + 1; result.presence_index = presence_index;
break; break;
} }
} }
...@@ -316,3 +320,25 @@ asn_TYPE_descriptor_t asn_DEF_ComplexMessage = { ...@@ -316,3 +320,25 @@ asn_TYPE_descriptor_t asn_DEF_ComplexMessage = {
&asn_SPC_ComplexMessage_specs_1 /* Additional specs */ &asn_SPC_ComplexMessage_specs_1 /* Additional specs */
}; };
/*** <<< asn_constant.h >>> ***/
/*
* Generated by asn1c-0.9.29 (http://lionet.info/asn1c)
*/
#ifndef _ASN_CONSTANT_H
#define _ASN_CONSTANT_H
#ifdef __cplusplus
extern "C" {
#endif
#define basicMessage (1)
#ifdef __cplusplus
}
#endif
#endif /* _ASN_CONSTANT_H */
...@@ -86,16 +86,20 @@ select_Frame_value_type(const asn_TYPE_descriptor_t *parent_type, const void *pa ...@@ -86,16 +86,20 @@ select_Frame_value_type(const asn_TYPE_descriptor_t *parent_type, const void *pa
const asn_ioc_set_t *itable = asn_IOS_FrameTypes_1; const asn_ioc_set_t *itable = asn_IOS_FrameTypes_1;
size_t constraining_column = 0; /* &id */ size_t constraining_column = 0; /* &id */
size_t for_column = 1; /* &Type */ size_t for_column = 1; /* &Type */
size_t row; size_t row, presence_index = 0;
const long *constraining_value = (const long *)((const char *)parent_sptr + offsetof(struct Frame, ident)); const long *constraining_value = (const long *)((const char *)parent_sptr + offsetof(struct Frame, ident));
for(row=0; row < itable->rows_count; row++) { for(row=0; row < itable->rows_count; row++) {
const asn_ioc_cell_t *constraining_cell = &itable->rows[row * itable->columns_count + constraining_column]; const asn_ioc_cell_t *constraining_cell = &itable->rows[row * itable->columns_count + constraining_column];
const asn_ioc_cell_t *type_cell = &itable->rows[row * itable->columns_count + for_column]; const asn_ioc_cell_t *type_cell = &itable->rows[row * itable->columns_count + for_column];
if(type_cell->cell_kind == aioc__undefined)
continue;
presence_index++;
if(constraining_cell->type_descriptor->op->compare_struct(constraining_cell->type_descriptor, constraining_value, constraining_cell->value_sptr) == 0) { if(constraining_cell->type_descriptor->op->compare_struct(constraining_cell->type_descriptor, constraining_value, constraining_cell->value_sptr) == 0) {
result.type_descriptor = type_cell->type_descriptor; result.type_descriptor = type_cell->type_descriptor;
result.presence_index = row + 1; result.presence_index = presence_index;
break; break;
} }
} }
...@@ -316,3 +320,25 @@ asn_TYPE_descriptor_t asn_DEF_ComplexMessage = { ...@@ -316,3 +320,25 @@ asn_TYPE_descriptor_t asn_DEF_ComplexMessage = {
&asn_SPC_ComplexMessage_specs_1 /* Additional specs */ &asn_SPC_ComplexMessage_specs_1 /* Additional specs */
}; };
/*** <<< asn_constant.h >>> ***/
/*
* Generated by asn1c-0.9.29 (http://lionet.info/asn1c)
*/
#ifndef _ASN_CONSTANT_H
#define _ASN_CONSTANT_H
#ifdef __cplusplus
extern "C" {
#endif
#define basicMessage (1)
#ifdef __cplusplus
}
#endif
#endif /* _ASN_CONSTANT_H */
...@@ -92,16 +92,20 @@ select_Frame_value_type(const asn_TYPE_descriptor_t *parent_type, const void *pa ...@@ -92,16 +92,20 @@ select_Frame_value_type(const asn_TYPE_descriptor_t *parent_type, const void *pa
const asn_ioc_set_t *itable = asn_IOS_FrameTypes_1; const asn_ioc_set_t *itable = asn_IOS_FrameTypes_1;
size_t constraining_column = 0; /* &id */ size_t constraining_column = 0; /* &id */
size_t for_column = 1; /* &Type */ size_t for_column = 1; /* &Type */
size_t row; size_t row, presence_index = 0;
const long *constraining_value = (const long *)((const char *)parent_sptr + offsetof(struct Frame, ident)); const long *constraining_value = (const long *)((const char *)parent_sptr + offsetof(struct Frame, ident));
for(row=0; row < itable->rows_count; row++) { for(row=0; row < itable->rows_count; row++) {
const asn_ioc_cell_t *constraining_cell = &itable->rows[row * itable->columns_count + constraining_column]; const asn_ioc_cell_t *constraining_cell = &itable->rows[row * itable->columns_count + constraining_column];
const asn_ioc_cell_t *type_cell = &itable->rows[row * itable->columns_count + for_column]; const asn_ioc_cell_t *type_cell = &itable->rows[row * itable->columns_count + for_column];
if(type_cell->cell_kind == aioc__undefined)
continue;
presence_index++;
if(constraining_cell->type_descriptor->op->compare_struct(constraining_cell->type_descriptor, constraining_value, constraining_cell->value_sptr) == 0) { if(constraining_cell->type_descriptor->op->compare_struct(constraining_cell->type_descriptor, constraining_value, constraining_cell->value_sptr) == 0) {
result.type_descriptor = type_cell->type_descriptor; result.type_descriptor = type_cell->type_descriptor;
result.presence_index = row + 1; result.presence_index = presence_index;
break; break;
} }
} }
...@@ -395,3 +399,26 @@ asn_TYPE_descriptor_t asn_DEF_ComplexMessage = { ...@@ -395,3 +399,26 @@ asn_TYPE_descriptor_t asn_DEF_ComplexMessage = {
&asn_SPC_ComplexMessage_specs_1 /* Additional specs */ &asn_SPC_ComplexMessage_specs_1 /* Additional specs */
}; };
/*** <<< asn_constant.h >>> ***/
/*
* Generated by asn1c-0.9.29 (http://lionet.info/asn1c)
*/
#ifndef _ASN_CONSTANT_H
#define _ASN_CONSTANT_H
#ifdef __cplusplus
extern "C" {
#endif
#define primMessage (1)
#define cplxMessage (2)
#ifdef __cplusplus
}
#endif
#endif /* _ASN_CONSTANT_H */
...@@ -7,7 +7,7 @@ ...@@ -7,7 +7,7 @@
/*** <<< TYPE-DECLS [Message] >>> ***/ /*** <<< TYPE-DECLS [Message] >>> ***/
typedef struct Message { typedef struct Message {
RegionalExtension_30P0_t content; RegionalExtension_t content;
/* Context for parsing across buffer boundaries */ /* Context for parsing across buffer boundaries */
asn_struct_ctx_t _asn_ctx; asn_struct_ctx_t _asn_ctx;
...@@ -23,7 +23,7 @@ static asn_TYPE_member_t asn_MBR_Message_1[] = { ...@@ -23,7 +23,7 @@ static asn_TYPE_member_t asn_MBR_Message_1[] = {
{ ATF_NOFLAGS, 0, offsetof(struct Message, content), { ATF_NOFLAGS, 0, offsetof(struct Message, content),
.tag = (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), .tag = (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)),
.tag_mode = 0, .tag_mode = 0,
.type = &asn_DEF_RegionalExtension_30P0, .type = &asn_DEF_RegionalExtension,
.type_selector = 0, .type_selector = 0,
{ .oer_constraints = 0, .per_constraints = 0, .general_constraints = 0 }, { .oer_constraints = 0, .per_constraints = 0, .general_constraints = 0 },
0, 0, /* No default value */ 0, 0, /* No default value */
...@@ -81,11 +81,11 @@ typedef enum value_PR { ...@@ -81,11 +81,11 @@ typedef enum value_PR {
/*** <<< TYPE-DECLS [SpecializedContent] >>> ***/ /*** <<< TYPE-DECLS [SpecializedContent] >>> ***/
typedef struct RegionalExtension_30P0 { typedef struct RegionalExtension {
long id; long id;
struct value { struct value {
value_PR present; value_PR present;
union RegionalExtension_30P0__value_u { union RegionalExtension__value_u {
long INTEGER; long INTEGER;
BOOLEAN_t BOOLEAN; BOOLEAN_t BOOLEAN;
} choice; } choice;
...@@ -96,13 +96,13 @@ typedef struct RegionalExtension_30P0 { ...@@ -96,13 +96,13 @@ typedef struct RegionalExtension_30P0 {
/* Context for parsing across buffer boundaries */ /* Context for parsing across buffer boundaries */
asn_struct_ctx_t _asn_ctx; asn_struct_ctx_t _asn_ctx;
} RegionalExtension_30P0_t; } RegionalExtension_t;
/*** <<< FUNC-DECLS [SpecializedContent] >>> ***/ /*** <<< FUNC-DECLS [SpecializedContent] >>> ***/
extern asn_TYPE_descriptor_t asn_DEF_RegionalExtension_30P0; extern asn_TYPE_descriptor_t asn_DEF_RegionalExtension;
extern asn_SEQUENCE_specifics_t asn_SPC_RegionalExtension_30P0_specs_1; extern asn_SEQUENCE_specifics_t asn_SPC_RegionalExtension_specs_1;
extern asn_TYPE_member_t asn_MBR_RegionalExtension_30P0_1[2]; extern asn_TYPE_member_t asn_MBR_RegionalExtension_1[2];
/*** <<< IOC-TABLES [SpecializedContent] >>> ***/ /*** <<< IOC-TABLES [SpecializedContent] >>> ***/
...@@ -140,21 +140,25 @@ memb_id_constraint_1(const asn_TYPE_descriptor_t *td, const void *sptr, ...@@ -140,21 +140,25 @@ memb_id_constraint_1(const asn_TYPE_descriptor_t *td, const void *sptr,
} }
static asn_type_selector_result_t static asn_type_selector_result_t
select_RegionalExtension_30P0_value_type(const asn_TYPE_descriptor_t *parent_type, const void *parent_sptr) { select_RegionalExtension_value_type(const asn_TYPE_descriptor_t *parent_type, const void *parent_sptr) {
asn_type_selector_result_t result = {0, 0}; asn_type_selector_result_t result = {0, 0};
const asn_ioc_set_t *itable = asn_IOS_RegionalExtension_1; const asn_ioc_set_t *itable = asn_IOS_RegionalExtension_1;
size_t constraining_column = 0; /* &id */ size_t constraining_column = 0; /* &id */
size_t for_column = 1; /* &Type */ size_t for_column = 1; /* &Type */
size_t row; size_t row, presence_index = 0;
const long *constraining_value = (const long *)((const char *)parent_sptr + offsetof(struct RegionalExtension_30P0, id)); const long *constraining_value = (const long *)((const char *)parent_sptr + offsetof(struct RegionalExtension, id));
for(row=0; row < itable->rows_count; row++) { for(row=0; row < itable->rows_count; row++) {
const asn_ioc_cell_t *constraining_cell = &itable->rows[row * itable->columns_count + constraining_column]; const asn_ioc_cell_t *constraining_cell = &itable->rows[row * itable->columns_count + constraining_column];
const asn_ioc_cell_t *type_cell = &itable->rows[row * itable->columns_count + for_column]; const asn_ioc_cell_t *type_cell = &itable->rows[row * itable->columns_count + for_column];
if(type_cell->cell_kind == aioc__undefined)
continue;
presence_index++;
if(constraining_cell->type_descriptor->op->compare_struct(constraining_cell->type_descriptor, constraining_value, constraining_cell->value_sptr) == 0) { if(constraining_cell->type_descriptor->op->compare_struct(constraining_cell->type_descriptor, constraining_value, constraining_cell->value_sptr) == 0) {
result.type_descriptor = type_cell->type_descriptor; result.type_descriptor = type_cell->type_descriptor;
result.presence_index = row + 1; result.presence_index = presence_index;
break; break;
} }
} }
...@@ -233,8 +237,8 @@ asn_TYPE_descriptor_t asn_DEF_value_3 = { ...@@ -233,8 +237,8 @@ asn_TYPE_descriptor_t asn_DEF_value_3 = {
&asn_SPC_value_specs_3 /* Additional specs */ &asn_SPC_value_specs_3 /* Additional specs */
}; };
asn_TYPE_member_t asn_MBR_RegionalExtension_30P0_1[] = { asn_TYPE_member_t asn_MBR_RegionalExtension_1[] = {
{ ATF_NOFLAGS, 0, offsetof(struct RegionalExtension_30P0, id), { ATF_NOFLAGS, 0, offsetof(struct RegionalExtension, id),
.tag = (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)), .tag = (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)),
.tag_mode = 0, .tag_mode = 0,
.type = &asn_DEF_NativeInteger, .type = &asn_DEF_NativeInteger,
...@@ -243,43 +247,43 @@ asn_TYPE_member_t asn_MBR_RegionalExtension_30P0_1[] = { ...@@ -243,43 +247,43 @@ asn_TYPE_member_t asn_MBR_RegionalExtension_30P0_1[] = {
0, 0, /* No default value */ 0, 0, /* No default value */
.name = "id" .name = "id"
}, },
{ ATF_OPEN_TYPE | ATF_NOFLAGS, 0, offsetof(struct RegionalExtension_30P0, value), { ATF_OPEN_TYPE | ATF_NOFLAGS, 0, offsetof(struct RegionalExtension, value),
.tag = -1 /* Ambiguous tag (ANY?) */, .tag = -1 /* Ambiguous tag (ANY?) */,
.tag_mode = 0, .tag_mode = 0,
.type = &asn_DEF_value_3, .type = &asn_DEF_value_3,
.type_selector = select_RegionalExtension_30P0_value_type, .type_selector = select_RegionalExtension_value_type,
{ .oer_constraints = 0, .per_constraints = 0, .general_constraints = memb_value_constraint_1 }, { .oer_constraints = 0, .per_constraints = 0, .general_constraints = memb_value_constraint_1 },
0, 0, /* No default value */ 0, 0, /* No default value */
.name = "value" .name = "value"
}, },
}; };
static const ber_tlv_tag_t asn_DEF_RegionalExtension_30P0_tags_1[] = { static const ber_tlv_tag_t asn_DEF_RegionalExtension_tags_1[] = {
(ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) (ASN_TAG_CLASS_UNIVERSAL | (16 << 2))
}; };
static const asn_TYPE_tag2member_t asn_MAP_RegionalExtension_30P0_tag2el_1[] = { static const asn_TYPE_tag2member_t asn_MAP_RegionalExtension_tag2el_1[] = {
{ (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)), 0, 0, 0 } /* id */ { (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)), 0, 0, 0 } /* id */
}; };
asn_SEQUENCE_specifics_t asn_SPC_RegionalExtension_30P0_specs_1 = { asn_SEQUENCE_specifics_t asn_SPC_RegionalExtension_specs_1 = {
sizeof(struct RegionalExtension_30P0), sizeof(struct RegionalExtension),
offsetof(struct RegionalExtension_30P0, _asn_ctx), offsetof(struct RegionalExtension, _asn_ctx),
.tag2el = asn_MAP_RegionalExtension_30P0_tag2el_1, .tag2el = asn_MAP_RegionalExtension_tag2el_1,
.tag2el_count = 1, /* Count of tags in the map */ .tag2el_count = 1, /* Count of tags in the map */
0, 0, 0, /* Optional elements (not needed) */ 0, 0, 0, /* Optional elements (not needed) */
-1, /* First extension addition */ -1, /* First extension addition */
}; };
asn_TYPE_descriptor_t asn_DEF_RegionalExtension_30P0 = { asn_TYPE_descriptor_t asn_DEF_RegionalExtension = {
"RegionalExtension", "RegionalExtension",
"RegionalExtension", "RegionalExtension",
&asn_OP_SEQUENCE, &asn_OP_SEQUENCE,
asn_DEF_RegionalExtension_30P0_tags_1, asn_DEF_RegionalExtension_tags_1,
sizeof(asn_DEF_RegionalExtension_30P0_tags_1) sizeof(asn_DEF_RegionalExtension_tags_1)
/sizeof(asn_DEF_RegionalExtension_30P0_tags_1[0]), /* 1 */ /sizeof(asn_DEF_RegionalExtension_tags_1[0]), /* 1 */
asn_DEF_RegionalExtension_30P0_tags_1, /* Same as above */ asn_DEF_RegionalExtension_tags_1, /* Same as above */
sizeof(asn_DEF_RegionalExtension_30P0_tags_1) sizeof(asn_DEF_RegionalExtension_tags_1)
/sizeof(asn_DEF_RegionalExtension_30P0_tags_1[0]), /* 1 */ /sizeof(asn_DEF_RegionalExtension_tags_1[0]), /* 1 */
{ 0, 0, SEQUENCE_constraint }, { 0, 0, SEQUENCE_constraint },
asn_MBR_RegionalExtension_30P0_1, asn_MBR_RegionalExtension_1,
2, /* Elements count */ 2, /* Elements count */
&asn_SPC_RegionalExtension_30P0_specs_1 /* Additional specs */ &asn_SPC_RegionalExtension_specs_1 /* Additional specs */
}; };
...@@ -7,7 +7,7 @@ ...@@ -7,7 +7,7 @@
/*** <<< TYPE-DECLS [Message] >>> ***/ /*** <<< TYPE-DECLS [Message] >>> ***/
typedef struct Message { typedef struct Message {
RegionalExtension_30P0_t content; RegionalExtension_t content;
/* Context for parsing across buffer boundaries */ /* Context for parsing across buffer boundaries */
asn_struct_ctx_t _asn_ctx; asn_struct_ctx_t _asn_ctx;
...@@ -23,7 +23,7 @@ static asn_TYPE_member_t asn_MBR_Message_1[] = { ...@@ -23,7 +23,7 @@ static asn_TYPE_member_t asn_MBR_Message_1[] = {
{ ATF_NOFLAGS, 0, offsetof(struct Message, content), { ATF_NOFLAGS, 0, offsetof(struct Message, content),
.tag = (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), .tag = (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)),
.tag_mode = 0, .tag_mode = 0,
.type = &asn_DEF_RegionalExtension_30P0, .type = &asn_DEF_RegionalExtension,
.type_selector = 0, .type_selector = 0,
{ .oer_constraints = 0, .per_constraints = 0, .general_constraints = 0 }, { .oer_constraints = 0, .per_constraints = 0, .general_constraints = 0 },
0, 0, /* No default value */ 0, 0, /* No default value */
...@@ -81,11 +81,11 @@ typedef enum value_PR { ...@@ -81,11 +81,11 @@ typedef enum value_PR {
/*** <<< TYPE-DECLS [SpecializedContent] >>> ***/ /*** <<< TYPE-DECLS [SpecializedContent] >>> ***/
typedef struct RegionalExtension_30P0 { typedef struct RegionalExtension {
long id; long id;
struct value { struct value {
value_PR present; value_PR present;
union RegionalExtension_30P0__value_u { union RegionalExtension__value_u {
long INTEGER; long INTEGER;
BOOLEAN_t BOOLEAN; BOOLEAN_t BOOLEAN;
} choice; } choice;
...@@ -96,13 +96,13 @@ typedef struct RegionalExtension_30P0 { ...@@ -96,13 +96,13 @@ typedef struct RegionalExtension_30P0 {
/* Context for parsing across buffer boundaries */ /* Context for parsing across buffer boundaries */
asn_struct_ctx_t _asn_ctx; asn_struct_ctx_t _asn_ctx;
} RegionalExtension_30P0_t; } RegionalExtension_t;
/*** <<< FUNC-DECLS [SpecializedContent] >>> ***/ /*** <<< FUNC-DECLS [SpecializedContent] >>> ***/
extern asn_TYPE_descriptor_t asn_DEF_RegionalExtension_30P0; extern asn_TYPE_descriptor_t asn_DEF_RegionalExtension;
extern asn_SEQUENCE_specifics_t asn_SPC_RegionalExtension_30P0_specs_1; extern asn_SEQUENCE_specifics_t asn_SPC_RegionalExtension_specs_1;
extern asn_TYPE_member_t asn_MBR_RegionalExtension_30P0_1[2]; extern asn_TYPE_member_t asn_MBR_RegionalExtension_1[2];
/*** <<< IOC-TABLES [SpecializedContent] >>> ***/ /*** <<< IOC-TABLES [SpecializedContent] >>> ***/
...@@ -140,21 +140,25 @@ memb_id_constraint_1(const asn_TYPE_descriptor_t *td, const void *sptr, ...@@ -140,21 +140,25 @@ memb_id_constraint_1(const asn_TYPE_descriptor_t *td, const void *sptr,
} }
static asn_type_selector_result_t static asn_type_selector_result_t
select_RegionalExtension_30P0_value_type(const asn_TYPE_descriptor_t *parent_type, const void *parent_sptr) { select_RegionalExtension_value_type(const asn_TYPE_descriptor_t *parent_type, const void *parent_sptr) {
asn_type_selector_result_t result = {0, 0}; asn_type_selector_result_t result = {0, 0};
const asn_ioc_set_t *itable = asn_IOS_RegionalExtension_1; const asn_ioc_set_t *itable = asn_IOS_RegionalExtension_1;
size_t constraining_column = 0; /* &id */ size_t constraining_column = 0; /* &id */
size_t for_column = 1; /* &Type */ size_t for_column = 1; /* &Type */
size_t row; size_t row, presence_index = 0;
const long *constraining_value = (const long *)((const char *)parent_sptr + offsetof(struct RegionalExtension_30P0, id)); const long *constraining_value = (const long *)((const char *)parent_sptr + offsetof(struct RegionalExtension, id));
for(row=0; row < itable->rows_count; row++) { for(row=0; row < itable->rows_count; row++) {
const asn_ioc_cell_t *constraining_cell = &itable->rows[row * itable->columns_count + constraining_column]; const asn_ioc_cell_t *constraining_cell = &itable->rows[row * itable->columns_count + constraining_column];
const asn_ioc_cell_t *type_cell = &itable->rows[row * itable->columns_count + for_column]; const asn_ioc_cell_t *type_cell = &itable->rows[row * itable->columns_count + for_column];
if(type_cell->cell_kind == aioc__undefined)
continue;
presence_index++;
if(constraining_cell->type_descriptor->op->compare_struct(constraining_cell->type_descriptor, constraining_value, constraining_cell->value_sptr) == 0) { if(constraining_cell->type_descriptor->op->compare_struct(constraining_cell->type_descriptor, constraining_value, constraining_cell->value_sptr) == 0) {
result.type_descriptor = type_cell->type_descriptor; result.type_descriptor = type_cell->type_descriptor;
result.presence_index = row + 1; result.presence_index = presence_index;
break; break;
} }
} }
...@@ -249,8 +253,8 @@ asn_TYPE_descriptor_t asn_DEF_value_3 = { ...@@ -249,8 +253,8 @@ asn_TYPE_descriptor_t asn_DEF_value_3 = {
&asn_SPC_value_specs_3 /* Additional specs */ &asn_SPC_value_specs_3 /* Additional specs */
}; };
asn_TYPE_member_t asn_MBR_RegionalExtension_30P0_1[] = { asn_TYPE_member_t asn_MBR_RegionalExtension_1[] = {
{ ATF_NOFLAGS, 0, offsetof(struct RegionalExtension_30P0, id), { ATF_NOFLAGS, 0, offsetof(struct RegionalExtension, id),
.tag = (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)), .tag = (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)),
.tag_mode = 0, .tag_mode = 0,
.type = &asn_DEF_NativeInteger, .type = &asn_DEF_NativeInteger,
...@@ -259,43 +263,43 @@ asn_TYPE_member_t asn_MBR_RegionalExtension_30P0_1[] = { ...@@ -259,43 +263,43 @@ asn_TYPE_member_t asn_MBR_RegionalExtension_30P0_1[] = {
0, 0, /* No default value */ 0, 0, /* No default value */
.name = "id" .name = "id"
}, },
{ ATF_OPEN_TYPE | ATF_NOFLAGS, 0, offsetof(struct RegionalExtension_30P0, value), { ATF_OPEN_TYPE | ATF_NOFLAGS, 0, offsetof(struct RegionalExtension, value),
.tag = -1 /* Ambiguous tag (ANY?) */, .tag = -1 /* Ambiguous tag (ANY?) */,
.tag_mode = 0, .tag_mode = 0,
.type = &asn_DEF_value_3, .type = &asn_DEF_value_3,
.type_selector = select_RegionalExtension_30P0_value_type, .type_selector = select_RegionalExtension_value_type,
{ .oer_constraints = 0, .per_constraints = &asn_PER_memb_value_constr_3, .general_constraints = memb_value_constraint_1 }, { .oer_constraints = 0, .per_constraints = &asn_PER_memb_value_constr_3, .general_constraints = memb_value_constraint_1 },
0, 0, /* No default value */ 0, 0, /* No default value */
.name = "value" .name = "value"
}, },
}; };
static const ber_tlv_tag_t asn_DEF_RegionalExtension_30P0_tags_1[] = { static const ber_tlv_tag_t asn_DEF_RegionalExtension_tags_1[] = {
(ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) (ASN_TAG_CLASS_UNIVERSAL | (16 << 2))
}; };
static const asn_TYPE_tag2member_t asn_MAP_RegionalExtension_30P0_tag2el_1[] = { static const asn_TYPE_tag2member_t asn_MAP_RegionalExtension_tag2el_1[] = {
{ (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)), 0, 0, 0 } /* id */ { (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)), 0, 0, 0 } /* id */
}; };
asn_SEQUENCE_specifics_t asn_SPC_RegionalExtension_30P0_specs_1 = { asn_SEQUENCE_specifics_t asn_SPC_RegionalExtension_specs_1 = {
sizeof(struct RegionalExtension_30P0), sizeof(struct RegionalExtension),
offsetof(struct RegionalExtension_30P0, _asn_ctx), offsetof(struct RegionalExtension, _asn_ctx),
.tag2el = asn_MAP_RegionalExtension_30P0_tag2el_1, .tag2el = asn_MAP_RegionalExtension_tag2el_1,
.tag2el_count = 1, /* Count of tags in the map */ .tag2el_count = 1, /* Count of tags in the map */
0, 0, 0, /* Optional elements (not needed) */ 0, 0, 0, /* Optional elements (not needed) */
-1, /* First extension addition */ -1, /* First extension addition */
}; };
asn_TYPE_descriptor_t asn_DEF_RegionalExtension_30P0 = { asn_TYPE_descriptor_t asn_DEF_RegionalExtension = {
"RegionalExtension", "RegionalExtension",
"RegionalExtension", "RegionalExtension",
&asn_OP_SEQUENCE, &asn_OP_SEQUENCE,
asn_DEF_RegionalExtension_30P0_tags_1, asn_DEF_RegionalExtension_tags_1,
sizeof(asn_DEF_RegionalExtension_30P0_tags_1) sizeof(asn_DEF_RegionalExtension_tags_1)
/sizeof(asn_DEF_RegionalExtension_30P0_tags_1[0]), /* 1 */ /sizeof(asn_DEF_RegionalExtension_tags_1[0]), /* 1 */
asn_DEF_RegionalExtension_30P0_tags_1, /* Same as above */ asn_DEF_RegionalExtension_tags_1, /* Same as above */
sizeof(asn_DEF_RegionalExtension_30P0_tags_1) sizeof(asn_DEF_RegionalExtension_tags_1)
/sizeof(asn_DEF_RegionalExtension_30P0_tags_1[0]), /* 1 */ /sizeof(asn_DEF_RegionalExtension_tags_1[0]), /* 1 */
{ 0, 0, SEQUENCE_constraint }, { 0, 0, SEQUENCE_constraint },
asn_MBR_RegionalExtension_30P0_1, asn_MBR_RegionalExtension_1,
2, /* Elements count */ 2, /* Elements count */
&asn_SPC_RegionalExtension_30P0_specs_1 /* Additional specs */ &asn_SPC_RegionalExtension_specs_1 /* Additional specs */
}; };
...@@ -9,6 +9,7 @@ typedef long PacketId_t; ...@@ -9,6 +9,7 @@ typedef long PacketId_t;
/*** <<< FUNC-DECLS [PacketId] >>> ***/ /*** <<< FUNC-DECLS [PacketId] >>> ***/
#define PacketId_id_TYPE1 ((PacketId_t)1)
extern asn_per_constraints_t asn_PER_type_PacketId_constr_1; extern asn_per_constraints_t asn_PER_type_PacketId_constr_1;
extern asn_TYPE_descriptor_t asn_DEF_PacketId; extern asn_TYPE_descriptor_t asn_DEF_PacketId;
asn_struct_free_f PacketId_free; asn_struct_free_f PacketId_free;
...@@ -501,7 +502,7 @@ asn_TYPE_descriptor_t asn_DEF_LowerLayer_List_45P0 = { ...@@ -501,7 +502,7 @@ asn_TYPE_descriptor_t asn_DEF_LowerLayer_List_45P0 = {
/*** <<< TYPE-DECLS [SinglePacket] >>> ***/ /*** <<< TYPE-DECLS [SinglePacket] >>> ***/
typedef ClassItem_51P0_t SinglePacket_48P0_t; typedef ClassItem_t SinglePacket_48P0_t;
/*** <<< FUNC-DECLS [SinglePacket] >>> ***/ /*** <<< FUNC-DECLS [SinglePacket] >>> ***/
...@@ -519,7 +520,7 @@ per_type_encoder_f SinglePacket_48P0_encode_uper; ...@@ -519,7 +520,7 @@ per_type_encoder_f SinglePacket_48P0_encode_uper;
/*** <<< CODE [SinglePacket] >>> ***/ /*** <<< CODE [SinglePacket] >>> ***/
/* /*
* This type is implemented using ClassItem_51P0, * This type is implemented using ClassItem,
* so here we adjust the DEF accordingly. * so here we adjust the DEF accordingly.
*/ */
...@@ -539,9 +540,9 @@ asn_TYPE_descriptor_t asn_DEF_SinglePacket_48P0 = { ...@@ -539,9 +540,9 @@ asn_TYPE_descriptor_t asn_DEF_SinglePacket_48P0 = {
sizeof(asn_DEF_SinglePacket_48P0_tags_1) sizeof(asn_DEF_SinglePacket_48P0_tags_1)
/sizeof(asn_DEF_SinglePacket_48P0_tags_1[0]), /* 1 */ /sizeof(asn_DEF_SinglePacket_48P0_tags_1[0]), /* 1 */
{ 0, 0, SEQUENCE_constraint }, { 0, 0, SEQUENCE_constraint },
asn_MBR_ClassItem_51P0_1, asn_MBR_ClassItem_1,
3, /* Elements count */ 3, /* Elements count */
&asn_SPC_ClassItem_51P0_specs_1 /* Additional specs */ &asn_SPC_ClassItem_specs_1 /* Additional specs */
}; };
...@@ -566,12 +567,12 @@ typedef enum value_PR { ...@@ -566,12 +567,12 @@ typedef enum value_PR {
/*** <<< TYPE-DECLS [Packet] >>> ***/ /*** <<< TYPE-DECLS [Packet] >>> ***/
typedef struct ClassItem_51P0 { typedef struct ClassItem {
PacketId_t id; PacketId_t id;
Color_t color; Color_t color;
struct value { struct value {
value_PR present; value_PR present;
union ClassItem_51P0__value_u { union ClassItem__value_u {
OCTET_STRING_t OCTET_STRING; OCTET_STRING_t OCTET_STRING;
} choice; } choice;
...@@ -581,13 +582,13 @@ typedef struct ClassItem_51P0 { ...@@ -581,13 +582,13 @@ typedef struct ClassItem_51P0 {
/* Context for parsing across buffer boundaries */ /* Context for parsing across buffer boundaries */
asn_struct_ctx_t _asn_ctx; asn_struct_ctx_t _asn_ctx;
} ClassItem_51P0_t; } ClassItem_t;
/*** <<< FUNC-DECLS [Packet] >>> ***/ /*** <<< FUNC-DECLS [Packet] >>> ***/
extern asn_TYPE_descriptor_t asn_DEF_ClassItem_51P0; extern asn_TYPE_descriptor_t asn_DEF_ClassItem;
extern asn_SEQUENCE_specifics_t asn_SPC_ClassItem_51P0_specs_1; extern asn_SEQUENCE_specifics_t asn_SPC_ClassItem_specs_1;
extern asn_TYPE_member_t asn_MBR_ClassItem_51P0_1[3]; extern asn_TYPE_member_t asn_MBR_ClassItem_1[3];
/*** <<< IOC-TABLES [Packet] >>> ***/ /*** <<< IOC-TABLES [Packet] >>> ***/
...@@ -632,21 +633,25 @@ memb_id_constraint_1(const asn_TYPE_descriptor_t *td, const void *sptr, ...@@ -632,21 +633,25 @@ memb_id_constraint_1(const asn_TYPE_descriptor_t *td, const void *sptr,
} }
static asn_type_selector_result_t static asn_type_selector_result_t
select_ClassItem_51P0_color_type(const asn_TYPE_descriptor_t *parent_type, const void *parent_sptr) { select_ClassItem_color_type(const asn_TYPE_descriptor_t *parent_type, const void *parent_sptr) {
asn_type_selector_result_t result = {0, 0}; asn_type_selector_result_t result = {0, 0};
const asn_ioc_set_t *itable = asn_IOS_ClassItem_1; const asn_ioc_set_t *itable = asn_IOS_ClassItem_1;
size_t constraining_column = 0; /* &id */ size_t constraining_column = 0; /* &id */
size_t for_column = 1; /* &color */ size_t for_column = 1; /* &color */
size_t row; size_t row, presence_index = 0;
const long *constraining_value = (const long *)((const char *)parent_sptr + offsetof(struct ClassItem_51P0, id)); const long *constraining_value = (const long *)((const char *)parent_sptr + offsetof(struct ClassItem, id));
for(row=0; row < itable->rows_count; row++) { for(row=0; row < itable->rows_count; row++) {
const asn_ioc_cell_t *constraining_cell = &itable->rows[row * itable->columns_count + constraining_column]; const asn_ioc_cell_t *constraining_cell = &itable->rows[row * itable->columns_count + constraining_column];
const asn_ioc_cell_t *type_cell = &itable->rows[row * itable->columns_count + for_column]; const asn_ioc_cell_t *type_cell = &itable->rows[row * itable->columns_count + for_column];
if(type_cell->cell_kind == aioc__undefined)
continue;
presence_index++;
if(constraining_cell->type_descriptor->op->compare_struct(constraining_cell->type_descriptor, constraining_value, constraining_cell->value_sptr) == 0) { if(constraining_cell->type_descriptor->op->compare_struct(constraining_cell->type_descriptor, constraining_value, constraining_cell->value_sptr) == 0) {
result.type_descriptor = type_cell->type_descriptor; result.type_descriptor = type_cell->type_descriptor;
result.presence_index = row + 1; result.presence_index = presence_index;
break; break;
} }
} }
...@@ -674,21 +679,25 @@ memb_color_constraint_1(const asn_TYPE_descriptor_t *td, const void *sptr, ...@@ -674,21 +679,25 @@ memb_color_constraint_1(const asn_TYPE_descriptor_t *td, const void *sptr,
} }
static asn_type_selector_result_t static asn_type_selector_result_t
select_ClassItem_51P0_value_type(const asn_TYPE_descriptor_t *parent_type, const void *parent_sptr) { select_ClassItem_value_type(const asn_TYPE_descriptor_t *parent_type, const void *parent_sptr) {
asn_type_selector_result_t result = {0, 0}; asn_type_selector_result_t result = {0, 0};
const asn_ioc_set_t *itable = asn_IOS_ClassItem_1; const asn_ioc_set_t *itable = asn_IOS_ClassItem_1;
size_t constraining_column = 0; /* &id */ size_t constraining_column = 0; /* &id */
size_t for_column = 2; /* &Value */ size_t for_column = 2; /* &Value */
size_t row; size_t row, presence_index = 0;
const long *constraining_value = (const long *)((const char *)parent_sptr + offsetof(struct ClassItem_51P0, id)); const long *constraining_value = (const long *)((const char *)parent_sptr + offsetof(struct ClassItem, id));
for(row=0; row < itable->rows_count; row++) { for(row=0; row < itable->rows_count; row++) {
const asn_ioc_cell_t *constraining_cell = &itable->rows[row * itable->columns_count + constraining_column]; const asn_ioc_cell_t *constraining_cell = &itable->rows[row * itable->columns_count + constraining_column];
const asn_ioc_cell_t *type_cell = &itable->rows[row * itable->columns_count + for_column]; const asn_ioc_cell_t *type_cell = &itable->rows[row * itable->columns_count + for_column];
if(type_cell->cell_kind == aioc__undefined)
continue;
presence_index++;
if(constraining_cell->type_descriptor->op->compare_struct(constraining_cell->type_descriptor, constraining_value, constraining_cell->value_sptr) == 0) { if(constraining_cell->type_descriptor->op->compare_struct(constraining_cell->type_descriptor, constraining_value, constraining_cell->value_sptr) == 0) {
result.type_descriptor = type_cell->type_descriptor; result.type_descriptor = type_cell->type_descriptor;
result.presence_index = row + 1; result.presence_index = presence_index;
break; break;
} }
} }
...@@ -775,8 +784,8 @@ asn_TYPE_descriptor_t asn_DEF_value_4 = { ...@@ -775,8 +784,8 @@ asn_TYPE_descriptor_t asn_DEF_value_4 = {
&asn_SPC_value_specs_4 /* Additional specs */ &asn_SPC_value_specs_4 /* Additional specs */
}; };
asn_TYPE_member_t asn_MBR_ClassItem_51P0_1[] = { asn_TYPE_member_t asn_MBR_ClassItem_1[] = {
{ ATF_NOFLAGS, 0, offsetof(struct ClassItem_51P0, id), { ATF_NOFLAGS, 0, offsetof(struct ClassItem, id),
.tag = (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)), .tag = (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)),
.tag_mode = 0, .tag_mode = 0,
.type = &asn_DEF_PacketId, .type = &asn_DEF_PacketId,
...@@ -785,53 +794,75 @@ asn_TYPE_member_t asn_MBR_ClassItem_51P0_1[] = { ...@@ -785,53 +794,75 @@ asn_TYPE_member_t asn_MBR_ClassItem_51P0_1[] = {
0, 0, /* No default value */ 0, 0, /* No default value */
.name = "id" .name = "id"
}, },
{ ATF_NOFLAGS, 0, offsetof(struct ClassItem_51P0, color), { ATF_NOFLAGS, 0, offsetof(struct ClassItem, color),
.tag = (ASN_TAG_CLASS_UNIVERSAL | (10 << 2)), .tag = (ASN_TAG_CLASS_UNIVERSAL | (10 << 2)),
.tag_mode = 0, .tag_mode = 0,
.type = &asn_DEF_Color, .type = &asn_DEF_Color,
.type_selector = select_ClassItem_51P0_color_type, .type_selector = select_ClassItem_color_type,
{ .oer_constraints = 0, .per_constraints = &asn_PER_memb_color_constr_3, .general_constraints = memb_color_constraint_1 }, { .oer_constraints = 0, .per_constraints = &asn_PER_memb_color_constr_3, .general_constraints = memb_color_constraint_1 },
0, 0, /* No default value */ 0, 0, /* No default value */
.name = "color" .name = "color"
}, },
{ ATF_OPEN_TYPE | ATF_NOFLAGS, 0, offsetof(struct ClassItem_51P0, value), { ATF_OPEN_TYPE | ATF_NOFLAGS, 0, offsetof(struct ClassItem, value),
.tag = -1 /* Ambiguous tag (ANY?) */, .tag = -1 /* Ambiguous tag (ANY?) */,
.tag_mode = 0, .tag_mode = 0,
.type = &asn_DEF_value_4, .type = &asn_DEF_value_4,
.type_selector = select_ClassItem_51P0_value_type, .type_selector = select_ClassItem_value_type,
{ .oer_constraints = 0, .per_constraints = &asn_PER_memb_value_constr_4, .general_constraints = memb_value_constraint_1 }, { .oer_constraints = 0, .per_constraints = &asn_PER_memb_value_constr_4, .general_constraints = memb_value_constraint_1 },
0, 0, /* No default value */ 0, 0, /* No default value */
.name = "value" .name = "value"
}, },
}; };
static const ber_tlv_tag_t asn_DEF_ClassItem_51P0_tags_1[] = { static const ber_tlv_tag_t asn_DEF_ClassItem_tags_1[] = {
(ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) (ASN_TAG_CLASS_UNIVERSAL | (16 << 2))
}; };
static const asn_TYPE_tag2member_t asn_MAP_ClassItem_51P0_tag2el_1[] = { static const asn_TYPE_tag2member_t asn_MAP_ClassItem_tag2el_1[] = {
{ (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)), 0, 0, 0 }, /* id */ { (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)), 0, 0, 0 }, /* id */
{ (ASN_TAG_CLASS_UNIVERSAL | (10 << 2)), 1, 0, 0 } /* color */ { (ASN_TAG_CLASS_UNIVERSAL | (10 << 2)), 1, 0, 0 } /* color */
}; };
asn_SEQUENCE_specifics_t asn_SPC_ClassItem_51P0_specs_1 = { asn_SEQUENCE_specifics_t asn_SPC_ClassItem_specs_1 = {
sizeof(struct ClassItem_51P0), sizeof(struct ClassItem),
offsetof(struct ClassItem_51P0, _asn_ctx), offsetof(struct ClassItem, _asn_ctx),
.tag2el = asn_MAP_ClassItem_51P0_tag2el_1, .tag2el = asn_MAP_ClassItem_tag2el_1,
.tag2el_count = 2, /* Count of tags in the map */ .tag2el_count = 2, /* Count of tags in the map */
0, 0, 0, /* Optional elements (not needed) */ 0, 0, 0, /* Optional elements (not needed) */
-1, /* First extension addition */ -1, /* First extension addition */
}; };
asn_TYPE_descriptor_t asn_DEF_ClassItem_51P0 = { asn_TYPE_descriptor_t asn_DEF_ClassItem = {
"ClassItem", "ClassItem",
"ClassItem", "ClassItem",
&asn_OP_SEQUENCE, &asn_OP_SEQUENCE,
asn_DEF_ClassItem_51P0_tags_1, asn_DEF_ClassItem_tags_1,
sizeof(asn_DEF_ClassItem_51P0_tags_1) sizeof(asn_DEF_ClassItem_tags_1)
/sizeof(asn_DEF_ClassItem_51P0_tags_1[0]), /* 1 */ /sizeof(asn_DEF_ClassItem_tags_1[0]), /* 1 */
asn_DEF_ClassItem_51P0_tags_1, /* Same as above */ asn_DEF_ClassItem_tags_1, /* Same as above */
sizeof(asn_DEF_ClassItem_51P0_tags_1) sizeof(asn_DEF_ClassItem_tags_1)
/sizeof(asn_DEF_ClassItem_51P0_tags_1[0]), /* 1 */ /sizeof(asn_DEF_ClassItem_tags_1[0]), /* 1 */
{ 0, 0, SEQUENCE_constraint }, { 0, 0, SEQUENCE_constraint },
asn_MBR_ClassItem_51P0_1, asn_MBR_ClassItem_1,
3, /* Elements count */ 3, /* Elements count */
&asn_SPC_ClassItem_51P0_specs_1 /* Additional specs */ &asn_SPC_ClassItem_specs_1 /* Additional specs */
}; };
/*** <<< asn_constant.h >>> ***/
/*
* Generated by asn1c-0.9.29 (http://lionet.info/asn1c)
*/
#ifndef _ASN_CONSTANT_H
#define _ASN_CONSTANT_H
#ifdef __cplusplus
extern "C" {
#endif
#define max_items (256)
#ifdef __cplusplus
}
#endif
#endif /* _ASN_CONSTANT_H */
...@@ -7,7 +7,7 @@ ...@@ -7,7 +7,7 @@
/*** <<< TYPE-DECLS [Message] >>> ***/ /*** <<< TYPE-DECLS [Message] >>> ***/
typedef struct Message { typedef struct Message {
TotalRegionExtension_42P0_t content; TotalRegionExtension_t content;
/* Context for parsing across buffer boundaries */ /* Context for parsing across buffer boundaries */
asn_struct_ctx_t _asn_ctx; asn_struct_ctx_t _asn_ctx;
...@@ -23,7 +23,7 @@ static asn_TYPE_member_t asn_MBR_Message_1[] = { ...@@ -23,7 +23,7 @@ static asn_TYPE_member_t asn_MBR_Message_1[] = {
{ ATF_NOFLAGS, 0, offsetof(struct Message, content), { ATF_NOFLAGS, 0, offsetof(struct Message, content),
.tag = (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), .tag = (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)),
.tag_mode = 0, .tag_mode = 0,
.type = &asn_DEF_TotalRegionExtension_42P0, .type = &asn_DEF_TotalRegionExtension,
.type_selector = 0, .type_selector = 0,
{ .oer_constraints = 0, .per_constraints = 0, .general_constraints = 0 }, { .oer_constraints = 0, .per_constraints = 0, .general_constraints = 0 },
0, 0, /* No default value */ 0, 0, /* No default value */
...@@ -83,11 +83,11 @@ typedef enum value_PR { ...@@ -83,11 +83,11 @@ typedef enum value_PR {
/*** <<< TYPE-DECLS [SpecializedContent] >>> ***/ /*** <<< TYPE-DECLS [SpecializedContent] >>> ***/
typedef struct TotalRegionExtension_42P0 { typedef struct TotalRegionExtension {
long id; long id;
struct value { struct value {
value_PR present; value_PR present;
union TotalRegionExtension_42P0__value_u { union TotalRegionExtension__value_u {
long INTEGER; long INTEGER;
BOOLEAN_t BOOLEAN; BOOLEAN_t BOOLEAN;
OCTET_STRING_t OCTET_STRING; OCTET_STRING_t OCTET_STRING;
...@@ -99,13 +99,13 @@ typedef struct TotalRegionExtension_42P0 { ...@@ -99,13 +99,13 @@ typedef struct TotalRegionExtension_42P0 {
/* Context for parsing across buffer boundaries */ /* Context for parsing across buffer boundaries */
asn_struct_ctx_t _asn_ctx; asn_struct_ctx_t _asn_ctx;
} TotalRegionExtension_42P0_t; } TotalRegionExtension_t;
/*** <<< FUNC-DECLS [SpecializedContent] >>> ***/ /*** <<< FUNC-DECLS [SpecializedContent] >>> ***/
extern asn_TYPE_descriptor_t asn_DEF_TotalRegionExtension_42P0; extern asn_TYPE_descriptor_t asn_DEF_TotalRegionExtension;
extern asn_SEQUENCE_specifics_t asn_SPC_TotalRegionExtension_42P0_specs_1; extern asn_SEQUENCE_specifics_t asn_SPC_TotalRegionExtension_specs_1;
extern asn_TYPE_member_t asn_MBR_TotalRegionExtension_42P0_1[2]; extern asn_TYPE_member_t asn_MBR_TotalRegionExtension_1[2];
/*** <<< IOC-TABLES [SpecializedContent] >>> ***/ /*** <<< IOC-TABLES [SpecializedContent] >>> ***/
...@@ -155,21 +155,25 @@ memb_id_constraint_1(const asn_TYPE_descriptor_t *td, const void *sptr, ...@@ -155,21 +155,25 @@ memb_id_constraint_1(const asn_TYPE_descriptor_t *td, const void *sptr,
} }
static asn_type_selector_result_t static asn_type_selector_result_t
select_TotalRegionExtension_42P0_value_type(const asn_TYPE_descriptor_t *parent_type, const void *parent_sptr) { select_TotalRegionExtension_value_type(const asn_TYPE_descriptor_t *parent_type, const void *parent_sptr) {
asn_type_selector_result_t result = {0, 0}; asn_type_selector_result_t result = {0, 0};
const asn_ioc_set_t *itable = asn_IOS_TotalRegionExtension_1; const asn_ioc_set_t *itable = asn_IOS_TotalRegionExtension_1;
size_t constraining_column = 0; /* &id */ size_t constraining_column = 0; /* &id */
size_t for_column = 1; /* &Type */ size_t for_column = 1; /* &Type */
size_t row; size_t row, presence_index = 0;
const long *constraining_value = (const long *)((const char *)parent_sptr + offsetof(struct TotalRegionExtension_42P0, id)); const long *constraining_value = (const long *)((const char *)parent_sptr + offsetof(struct TotalRegionExtension, id));
for(row=0; row < itable->rows_count; row++) { for(row=0; row < itable->rows_count; row++) {
const asn_ioc_cell_t *constraining_cell = &itable->rows[row * itable->columns_count + constraining_column]; const asn_ioc_cell_t *constraining_cell = &itable->rows[row * itable->columns_count + constraining_column];
const asn_ioc_cell_t *type_cell = &itable->rows[row * itable->columns_count + for_column]; const asn_ioc_cell_t *type_cell = &itable->rows[row * itable->columns_count + for_column];
if(type_cell->cell_kind == aioc__undefined)
continue;
presence_index++;
if(constraining_cell->type_descriptor->op->compare_struct(constraining_cell->type_descriptor, constraining_value, constraining_cell->value_sptr) == 0) { if(constraining_cell->type_descriptor->op->compare_struct(constraining_cell->type_descriptor, constraining_value, constraining_cell->value_sptr) == 0) {
result.type_descriptor = type_cell->type_descriptor; result.type_descriptor = type_cell->type_descriptor;
result.presence_index = row + 1; result.presence_index = presence_index;
break; break;
} }
} }
...@@ -274,8 +278,8 @@ asn_TYPE_descriptor_t asn_DEF_value_3 = { ...@@ -274,8 +278,8 @@ asn_TYPE_descriptor_t asn_DEF_value_3 = {
&asn_SPC_value_specs_3 /* Additional specs */ &asn_SPC_value_specs_3 /* Additional specs */
}; };
asn_TYPE_member_t asn_MBR_TotalRegionExtension_42P0_1[] = { asn_TYPE_member_t asn_MBR_TotalRegionExtension_1[] = {
{ ATF_NOFLAGS, 0, offsetof(struct TotalRegionExtension_42P0, id), { ATF_NOFLAGS, 0, offsetof(struct TotalRegionExtension, id),
.tag = (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)), .tag = (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)),
.tag_mode = 0, .tag_mode = 0,
.type = &asn_DEF_NativeInteger, .type = &asn_DEF_NativeInteger,
...@@ -284,43 +288,43 @@ asn_TYPE_member_t asn_MBR_TotalRegionExtension_42P0_1[] = { ...@@ -284,43 +288,43 @@ asn_TYPE_member_t asn_MBR_TotalRegionExtension_42P0_1[] = {
0, 0, /* No default value */ 0, 0, /* No default value */
.name = "id" .name = "id"
}, },
{ ATF_OPEN_TYPE | ATF_NOFLAGS, 0, offsetof(struct TotalRegionExtension_42P0, value), { ATF_OPEN_TYPE | ATF_NOFLAGS, 0, offsetof(struct TotalRegionExtension, value),
.tag = -1 /* Ambiguous tag (ANY?) */, .tag = -1 /* Ambiguous tag (ANY?) */,
.tag_mode = 0, .tag_mode = 0,
.type = &asn_DEF_value_3, .type = &asn_DEF_value_3,
.type_selector = select_TotalRegionExtension_42P0_value_type, .type_selector = select_TotalRegionExtension_value_type,
{ .oer_constraints = 0, .per_constraints = &asn_PER_memb_value_constr_3, .general_constraints = memb_value_constraint_1 }, { .oer_constraints = 0, .per_constraints = &asn_PER_memb_value_constr_3, .general_constraints = memb_value_constraint_1 },
0, 0, /* No default value */ 0, 0, /* No default value */
.name = "value" .name = "value"
}, },
}; };
static const ber_tlv_tag_t asn_DEF_TotalRegionExtension_42P0_tags_1[] = { static const ber_tlv_tag_t asn_DEF_TotalRegionExtension_tags_1[] = {
(ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) (ASN_TAG_CLASS_UNIVERSAL | (16 << 2))
}; };
static const asn_TYPE_tag2member_t asn_MAP_TotalRegionExtension_42P0_tag2el_1[] = { static const asn_TYPE_tag2member_t asn_MAP_TotalRegionExtension_tag2el_1[] = {
{ (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)), 0, 0, 0 } /* id */ { (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)), 0, 0, 0 } /* id */
}; };
asn_SEQUENCE_specifics_t asn_SPC_TotalRegionExtension_42P0_specs_1 = { asn_SEQUENCE_specifics_t asn_SPC_TotalRegionExtension_specs_1 = {
sizeof(struct TotalRegionExtension_42P0), sizeof(struct TotalRegionExtension),
offsetof(struct TotalRegionExtension_42P0, _asn_ctx), offsetof(struct TotalRegionExtension, _asn_ctx),
.tag2el = asn_MAP_TotalRegionExtension_42P0_tag2el_1, .tag2el = asn_MAP_TotalRegionExtension_tag2el_1,
.tag2el_count = 1, /* Count of tags in the map */ .tag2el_count = 1, /* Count of tags in the map */
0, 0, 0, /* Optional elements (not needed) */ 0, 0, 0, /* Optional elements (not needed) */
-1, /* First extension addition */ -1, /* First extension addition */
}; };
asn_TYPE_descriptor_t asn_DEF_TotalRegionExtension_42P0 = { asn_TYPE_descriptor_t asn_DEF_TotalRegionExtension = {
"TotalRegionExtension", "TotalRegionExtension",
"TotalRegionExtension", "TotalRegionExtension",
&asn_OP_SEQUENCE, &asn_OP_SEQUENCE,
asn_DEF_TotalRegionExtension_42P0_tags_1, asn_DEF_TotalRegionExtension_tags_1,
sizeof(asn_DEF_TotalRegionExtension_42P0_tags_1) sizeof(asn_DEF_TotalRegionExtension_tags_1)
/sizeof(asn_DEF_TotalRegionExtension_42P0_tags_1[0]), /* 1 */ /sizeof(asn_DEF_TotalRegionExtension_tags_1[0]), /* 1 */
asn_DEF_TotalRegionExtension_42P0_tags_1, /* Same as above */ asn_DEF_TotalRegionExtension_tags_1, /* Same as above */
sizeof(asn_DEF_TotalRegionExtension_42P0_tags_1) sizeof(asn_DEF_TotalRegionExtension_tags_1)
/sizeof(asn_DEF_TotalRegionExtension_42P0_tags_1[0]), /* 1 */ /sizeof(asn_DEF_TotalRegionExtension_tags_1[0]), /* 1 */
{ 0, 0, SEQUENCE_constraint }, { 0, 0, SEQUENCE_constraint },
asn_MBR_TotalRegionExtension_42P0_1, asn_MBR_TotalRegionExtension_1,
2, /* Elements count */ 2, /* Elements count */
&asn_SPC_TotalRegionExtension_42P0_specs_1 /* Additional specs */ &asn_SPC_TotalRegionExtension_specs_1 /* Additional specs */
}; };
...@@ -428,3 +428,25 @@ asn_TYPE_descriptor_t asn_DEF_SeqWithOptional = { ...@@ -428,3 +428,25 @@ asn_TYPE_descriptor_t asn_DEF_SeqWithOptional = {
&asn_SPC_SeqWithOptional_specs_1 /* Additional specs */ &asn_SPC_SeqWithOptional_specs_1 /* Additional specs */
}; };
/*** <<< asn_constant.h >>> ***/
/*
* Generated by asn1c-0.9.29 (http://lionet.info/asn1c)
*/
#ifndef _ASN_CONSTANT_H
#define _ASN_CONSTANT_H
#ifdef __cplusplus
extern "C" {
#endif
#define maxSize (10)
#ifdef __cplusplus
}
#endif
#endif /* _ASN_CONSTANT_H */
...@@ -17,6 +17,7 @@ ber_type_decoder_f Int1_decode_ber; ...@@ -17,6 +17,7 @@ ber_type_decoder_f Int1_decode_ber;
der_type_encoder_f Int1_encode_der; der_type_encoder_f Int1_encode_der;
xer_type_decoder_f Int1_decode_xer; xer_type_decoder_f Int1_decode_xer;
xer_type_encoder_f Int1_encode_xer; xer_type_encoder_f Int1_encode_xer;
#define Int1_ten ((Int1_t)10)
/*** <<< CODE [Int1] >>> ***/ /*** <<< CODE [Int1] >>> ***/
...@@ -2548,3 +2549,25 @@ asn_TYPE_descriptor_t asn_DEF_Identifier = { ...@@ -2548,3 +2549,25 @@ asn_TYPE_descriptor_t asn_DEF_Identifier = {
0 /* No specifics */ 0 /* No specifics */
}; };
/*** <<< asn_constant.h >>> ***/
/*
* Generated by asn1c-0.9.29 (http://lionet.info/asn1c)
*/
#ifndef _ASN_CONSTANT_H
#define _ASN_CONSTANT_H
#ifdef __cplusplus
extern "C" {
#endif
#define maxIdentifier (32)
#ifdef __cplusplus
}
#endif
#endif /* _ASN_CONSTANT_H */
...@@ -19,6 +19,7 @@ xer_type_decoder_f Int1_decode_xer; ...@@ -19,6 +19,7 @@ xer_type_decoder_f Int1_decode_xer;
xer_type_encoder_f Int1_encode_xer; xer_type_encoder_f Int1_encode_xer;
per_type_decoder_f Int1_decode_uper; per_type_decoder_f Int1_decode_uper;
per_type_encoder_f Int1_encode_uper; per_type_encoder_f Int1_encode_uper;
#define Int1_ten ((Int1_t)10)
/*** <<< CODE [Int1] >>> ***/ /*** <<< CODE [Int1] >>> ***/
...@@ -2835,3 +2836,25 @@ asn_TYPE_descriptor_t asn_DEF_Identifier = { ...@@ -2835,3 +2836,25 @@ asn_TYPE_descriptor_t asn_DEF_Identifier = {
0 /* No specifics */ 0 /* No specifics */
}; };
/*** <<< asn_constant.h >>> ***/
/*
* Generated by asn1c-0.9.29 (http://lionet.info/asn1c)
*/
#ifndef _ASN_CONSTANT_H
#define _ASN_CONSTANT_H
#ifdef __cplusplus
extern "C" {
#endif
#define maxIdentifier (32)
#ifdef __cplusplus
}
#endif
#endif /* _ASN_CONSTANT_H */
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment