src
cpm_ts_ConstraintWrappedCpmContainers.c
Go to the documentation of this file.
1
/*
2
* Generated by asn1c-0.9.29 (http://lionet.info/asn1c)
3
* From ASN.1 module "CPM-PDU-Descriptions"
4
* found in "/input/CPM-PDU-Descriptions.asn"
5
* `asn1c -fcompound-names -fprefix=cpm_ts_ -no-gen-BER -no-gen-XER -no-gen-OER -no-gen-example -gen-UPER -gen-JER`
6
*/
7
8
#include "
etsi_its_cpm_ts_coding/cpm_ts_ConstraintWrappedCpmContainers.h
"
9
10
int
11
cpm_ts_ConstraintWrappedCpmContainers_constraint
(
const
asn_TYPE_descriptor_t
*td,
const
void
*sptr,
12
asn_app_constraint_failed_f
*ctfailcb,
void
*app_key) {
13
size_t
size;
14
15
if
(!sptr) {
16
ASN__CTFAIL
(app_key, td, sptr,
17
"%s: value not given (%s:%d)"
,
18
td->
name
, __FILE__, __LINE__);
19
return
-1;
20
}
21
22
/* Determine the number of elements */
23
size =
_A_CSEQUENCE_FROM_VOID
(sptr)->count;
24
25
if
((size >= 1UL && size <= 8UL)) {
26
/* Perform validation of the inner elements */
27
return
SEQUENCE_OF_constraint
(td, sptr, ctfailcb, app_key);
28
}
else
{
29
ASN__CTFAIL
(app_key, td, sptr,
30
"%s: constraint failed (%s:%d)"
,
31
td->
name
, __FILE__, __LINE__);
32
return
-1;
33
}
34
}
35
36
/*
37
* This type is implemented using cpm_ts_WrappedCpmContainers,
38
* so here we adjust the DEF accordingly.
39
*/
40
#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT)
41
asn_per_constraints_t
asn_PER_type_cpm_ts_ConstraintWrappedCpmContainers_constr_1
CC_NOTUSED
= {
42
{ APC_UNCONSTRAINED, -1, -1, 0, 0 },
43
{ APC_CONSTRAINED, 3, 3, 1, 8 }
/* (SIZE(1..8)) */
,
44
0, 0
/* No PER value map */
45
};
46
#endif
/* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */
47
static
const
ber_tlv_tag_t
asn_DEF_cpm_ts_ConstraintWrappedCpmContainers_tags_1
[] = {
48
(
ASN_TAG_CLASS_UNIVERSAL
| (16 << 2))
49
};
50
asn_TYPE_descriptor_t
asn_DEF_cpm_ts_ConstraintWrappedCpmContainers
= {
51
"ConstraintWrappedCpmContainers"
,
52
"ConstraintWrappedCpmContainers"
,
53
&
asn_OP_SEQUENCE_OF
,
54
asn_DEF_cpm_ts_ConstraintWrappedCpmContainers_tags_1
,
55
sizeof
(
asn_DEF_cpm_ts_ConstraintWrappedCpmContainers_tags_1
)
56
/
sizeof
(
asn_DEF_cpm_ts_ConstraintWrappedCpmContainers_tags_1
[0]),
/* 1 */
57
asn_DEF_cpm_ts_ConstraintWrappedCpmContainers_tags_1
,
/* Same as above */
58
sizeof
(
asn_DEF_cpm_ts_ConstraintWrappedCpmContainers_tags_1
)
59
/
sizeof
(
asn_DEF_cpm_ts_ConstraintWrappedCpmContainers_tags_1
[0]),
/* 1 */
60
{
61
#if !defined(ASN_DISABLE_OER_SUPPORT)
62
0,
63
#endif
/* !defined(ASN_DISABLE_OER_SUPPORT) */
64
#if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT)
65
&
asn_PER_type_cpm_ts_ConstraintWrappedCpmContainers_constr_1
,
66
#endif
/* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */
67
#if !defined(ASN_DISABLE_JER_SUPPORT)
68
0,
69
#endif
/* !defined(ASN_DISABLE_JER_SUPPORT) */
70
cpm_ts_ConstraintWrappedCpmContainers_constraint
71
},
72
asn_MBR_cpm_ts_WrappedCpmContainers_1
,
73
1,
/* Single element */
74
&
asn_SPC_cpm_ts_WrappedCpmContainers_specs_1
/* Additional specs */
75
};
76
asn_DEF_cpm_ts_ConstraintWrappedCpmContainers_tags_1
static const ber_tlv_tag_t asn_DEF_cpm_ts_ConstraintWrappedCpmContainers_tags_1[]
Definition:
cpm_ts_ConstraintWrappedCpmContainers.c:47
_A_CSEQUENCE_FROM_VOID
#define _A_CSEQUENCE_FROM_VOID(ptr)
Definition:
asn_SEQUENCE_OF.h:46
asn_app_constraint_failed_f
void() asn_app_constraint_failed_f(void *application_specific_key, const struct asn_TYPE_descriptor_s *type_descriptor_which_failed, const void *structure_which_failed_ptr, const char *error_message_format,...) CC_PRINTFLIKE(4
Definition:
asn_application.h:167
ber_tlv_tag_t
unsigned ber_tlv_tag_t
Definition:
ber_tlv_tag.h:18
cpm_ts_ConstraintWrappedCpmContainers_constraint
int cpm_ts_ConstraintWrappedCpmContainers_constraint(const asn_TYPE_descriptor_t *td, const void *sptr, asn_app_constraint_failed_f *ctfailcb, void *app_key)
Definition:
cpm_ts_ConstraintWrappedCpmContainers.c:11
ASN_TAG_CLASS_UNIVERSAL
@ ASN_TAG_CLASS_UNIVERSAL
Definition:
ber_tlv_tag.h:13
asn_TYPE_descriptor_s::name
const char * name
Definition:
constr_TYPE.h:225
SEQUENCE_OF_constraint
#define SEQUENCE_OF_constraint
Definition:
constr_SEQUENCE_OF.h:28
asn_MBR_cpm_ts_WrappedCpmContainers_1
asn_TYPE_member_t asn_MBR_cpm_ts_WrappedCpmContainers_1[1]
Definition:
cpm_ts_WrappedCpmContainers.c:17
asn_OP_SEQUENCE_OF
asn_TYPE_operation_t asn_OP_SEQUENCE_OF
Definition:
constr_SEQUENCE_OF.c:10
asn_PER_type_cpm_ts_ConstraintWrappedCpmContainers_constr_1
asn_per_constraints_t asn_PER_type_cpm_ts_ConstraintWrappedCpmContainers_constr_1
asn_TYPE_descriptor_s
Definition:
constr_TYPE.h:224
asn_SPC_cpm_ts_WrappedCpmContainers_specs_1
asn_SET_OF_specifics_t asn_SPC_cpm_ts_WrappedCpmContainers_specs_1
Definition:
cpm_ts_WrappedCpmContainers.c:42
ASN__CTFAIL
#define ASN__CTFAIL
Definition:
constraints.h:57
asn_per_constraints_s
Definition:
per_support.h:30
asn_DEF_cpm_ts_ConstraintWrappedCpmContainers
asn_TYPE_descriptor_t asn_DEF_cpm_ts_ConstraintWrappedCpmContainers
Definition:
cpm_ts_ConstraintWrappedCpmContainers.c:50
cpm_ts_ConstraintWrappedCpmContainers.h
CC_NOTUSED
asn_per_constraints_t asn_PER_type_cpm_ts_ConstraintWrappedCpmContainers_constr_1 CC_NOTUSED
Definition:
cpm_ts_ConstraintWrappedCpmContainers.c:41
etsi_its_cpm_ts_coding
Author(s): Jean-Pierre Busch
, Guido Küppers
, Lennart Reiher
autogenerated on Sun May 18 2025 02:22:37