vam_ts_InterferenceManagementChannel.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 "ETSI-ITS-CDD"
4  * found in "/input/ETSI-ITS-CDD.asn"
5  * `asn1c -fcompound-names -fprefix=vam_ts_ -no-gen-BER -no-gen-XER -no-gen-OER -no-gen-example -gen-UPER -gen-JER`
6  */
7 
9 
10 static int
12  asn_app_constraint_failed_f *ctfailcb, void *app_key) {
13  long value;
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  value = *(const long *)sptr;
23 
24  if((value >= 1L && value <= 99999L)) {
25  /* Constraint check succeeded */
26  return 0;
27  } else {
28  ASN__CTFAIL(app_key, td, sptr,
29  "%s: constraint failed (%s:%d)",
30  td->name, __FILE__, __LINE__);
31  return -1;
32  }
33 }
34 
35 static int
37  asn_app_constraint_failed_f *ctfailcb, void *app_key) {
38  long value;
39 
40  if(!sptr) {
41  ASN__CTFAIL(app_key, td, sptr,
42  "%s: value not given (%s:%d)",
43  td->name, __FILE__, __LINE__);
44  return -1;
45  }
46 
47  value = *(const long *)sptr;
48 
49  if((value >= 0L && value <= 9999L)) {
50  /* Constraint check succeeded */
51  return 0;
52  } else {
53  ASN__CTFAIL(app_key, td, sptr,
54  "%s: constraint failed (%s:%d)",
55  td->name, __FILE__, __LINE__);
56  return -1;
57  }
58 }
59 
60 static int
62  asn_app_constraint_failed_f *ctfailcb, void *app_key) {
63  long value;
64 
65  if(!sptr) {
66  ASN__CTFAIL(app_key, td, sptr,
67  "%s: value not given (%s:%d)",
68  td->name, __FILE__, __LINE__);
69  return -1;
70  }
71 
72  value = *(const long *)sptr;
73 
74  if((value >= 0L && value <= 15L)) {
75  /* Constraint check succeeded */
76  return 0;
77  } else {
78  ASN__CTFAIL(app_key, td, sptr,
79  "%s: constraint failed (%s:%d)",
80  td->name, __FILE__, __LINE__);
81  return -1;
82  }
83 }
84 
85 #if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT)
86 static asn_per_constraints_t asn_PER_memb_vam_ts_centreFrequency_constr_2 CC_NOTUSED = {
87  { APC_CONSTRAINED, 17, -1, 1, 99999 } /* (1..99999) */,
88  { APC_UNCONSTRAINED, -1, -1, 0, 0 },
89  0, 0 /* No PER value map */
90 };
91 #endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */
92 #if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT)
93 static asn_per_constraints_t asn_PER_memb_vam_ts_channelWidth_constr_3 CC_NOTUSED = {
94  { APC_CONSTRAINED, 14, 14, 0, 9999 } /* (0..9999) */,
95  { APC_UNCONSTRAINED, -1, -1, 0, 0 },
96  0, 0 /* No PER value map */
97 };
98 #endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */
99 #if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT)
100 static asn_per_constraints_t asn_PER_memb_vam_ts_exponent_constr_4 CC_NOTUSED = {
101  { APC_CONSTRAINED, 4, 4, 0, 15 } /* (0..15) */,
102  { APC_UNCONSTRAINED, -1, -1, 0, 0 },
103  0, 0 /* No PER value map */
104 };
105 #endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */
107  { ATF_NOFLAGS, 0, offsetof(struct vam_ts_InterferenceManagementChannel, centreFrequency),
108  (ASN_TAG_CLASS_CONTEXT | (0 << 2)),
109  -1, /* IMPLICIT tag at current level */
111  0,
112  {
113 #if !defined(ASN_DISABLE_OER_SUPPORT)
114  0,
115 #endif /* !defined(ASN_DISABLE_OER_SUPPORT) */
116 #if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT)
117  &asn_PER_memb_vam_ts_centreFrequency_constr_2,
118 #endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */
119 #if !defined(ASN_DISABLE_JER_SUPPORT)
120  0,
121 #endif /* !defined(ASN_DISABLE_JER_SUPPORT) */
123  },
124  0, 0, /* No default value */
125  "centreFrequency"
126  },
127  { ATF_NOFLAGS, 0, offsetof(struct vam_ts_InterferenceManagementChannel, channelWidth),
128  (ASN_TAG_CLASS_CONTEXT | (1 << 2)),
129  -1, /* IMPLICIT tag at current level */
131  0,
132  {
133 #if !defined(ASN_DISABLE_OER_SUPPORT)
134  0,
135 #endif /* !defined(ASN_DISABLE_OER_SUPPORT) */
136 #if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT)
137  &asn_PER_memb_vam_ts_channelWidth_constr_3,
138 #endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */
139 #if !defined(ASN_DISABLE_JER_SUPPORT)
140  0,
141 #endif /* !defined(ASN_DISABLE_JER_SUPPORT) */
143  },
144  0, 0, /* No default value */
145  "channelWidth"
146  },
148  (ASN_TAG_CLASS_CONTEXT | (2 << 2)),
149  -1, /* IMPLICIT tag at current level */
151  0,
152  {
153 #if !defined(ASN_DISABLE_OER_SUPPORT)
154  0,
155 #endif /* !defined(ASN_DISABLE_OER_SUPPORT) */
156 #if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT)
157  &asn_PER_memb_vam_ts_exponent_constr_4,
158 #endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */
159 #if !defined(ASN_DISABLE_JER_SUPPORT)
160  0,
161 #endif /* !defined(ASN_DISABLE_JER_SUPPORT) */
163  },
164  0, 0, /* No default value */
165  "exponent"
166  },
167 };
169  (ASN_TAG_CLASS_UNIVERSAL | (16 << 2))
170 };
172  { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* centreFrequency */
173  { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 }, /* channelWidth */
174  { (ASN_TAG_CLASS_CONTEXT | (2 << 2)), 2, 0, 0 } /* exponent */
175 };
180  3, /* Count of tags in the map */
181  0, 0, 0, /* Optional elements (not needed) */
182  -1, /* First extension addition */
183 };
185  "InterferenceManagementChannel",
186  "InterferenceManagementChannel",
194  {
195 #if !defined(ASN_DISABLE_OER_SUPPORT)
196  0,
197 #endif /* !defined(ASN_DISABLE_OER_SUPPORT) */
198 #if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT)
199  0,
200 #endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */
201 #if !defined(ASN_DISABLE_JER_SUPPORT)
202  0,
203 #endif /* !defined(ASN_DISABLE_JER_SUPPORT) */
205  },
207  3, /* Elements count */
209 };
210 
asn_OP_SEQUENCE
asn_TYPE_operation_t asn_OP_SEQUENCE
Definition: constr_SEQUENCE.c:9
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
ASN_TAG_CLASS_CONTEXT
@ ASN_TAG_CLASS_CONTEXT
Definition: ber_tlv_tag.h:15
ber_tlv_tag_t
unsigned ber_tlv_tag_t
Definition: ber_tlv_tag.h:18
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
asn_MAP_vam_ts_InterferenceManagementChannel_tag2el_1
static const asn_TYPE_tag2member_t asn_MAP_vam_ts_InterferenceManagementChannel_tag2el_1[]
Definition: vam_ts_InterferenceManagementChannel.c:171
memb_vam_ts_exponent_constraint_1
static int memb_vam_ts_exponent_constraint_1(const asn_TYPE_descriptor_t *td, const void *sptr, asn_app_constraint_failed_f *ctfailcb, void *app_key)
Definition: vam_ts_InterferenceManagementChannel.c:61
asn_TYPE_tag2member_s
Definition: constr_TYPE.h:289
asn_DEF_vam_ts_InterferenceManagementChannel
asn_TYPE_descriptor_t asn_DEF_vam_ts_InterferenceManagementChannel
Definition: vam_ts_InterferenceManagementChannel.c:184
vam_ts_InterferenceManagementChannel.h
CC_NOTUSED
static asn_per_constraints_t asn_PER_memb_vam_ts_centreFrequency_constr_2 CC_NOTUSED
Definition: vam_ts_InterferenceManagementChannel.c:86
SEQUENCE_constraint
asn_constr_check_f SEQUENCE_constraint
Definition: constr_SEQUENCE.h:56
asn_TYPE_descriptor_s
Definition: constr_TYPE.h:224
asn_SPC_vam_ts_InterferenceManagementChannel_specs_1
asn_SEQUENCE_specifics_t asn_SPC_vam_ts_InterferenceManagementChannel_specs_1
Definition: vam_ts_InterferenceManagementChannel.c:176
memb_vam_ts_centreFrequency_constraint_1
static int memb_vam_ts_centreFrequency_constraint_1(const asn_TYPE_descriptor_t *td, const void *sptr, asn_app_constraint_failed_f *ctfailcb, void *app_key)
Definition: vam_ts_InterferenceManagementChannel.c:11
offsetof
#define offsetof(s, m)
Definition: asn_system.h:132
vam_ts_InterferenceManagementChannel
Definition: vam_ts_InterferenceManagementChannel.h:23
asn_DEF_NativeInteger
asn_TYPE_descriptor_t asn_DEF_NativeInteger
Definition: NativeInteger.c:80
ATF_NOFLAGS
@ ATF_NOFLAGS
Definition: constr_TYPE.h:267
asn_SEQUENCE_specifics_s
Definition: constr_SEQUENCE.h:14
ASN__CTFAIL
#define ASN__CTFAIL
Definition: constraints.h:57
asn_MBR_vam_ts_InterferenceManagementChannel_1
asn_TYPE_member_t asn_MBR_vam_ts_InterferenceManagementChannel_1[]
Definition: vam_ts_InterferenceManagementChannel.c:106
vam_ts_InterferenceManagementChannel::_asn_ctx
asn_struct_ctx_t _asn_ctx
Definition: vam_ts_InterferenceManagementChannel.h:29
asn_per_constraints_s
Definition: per_support.h:30
asn_TYPE_member_s
Definition: constr_TYPE.h:272
asn_DEF_vam_ts_InterferenceManagementChannel_tags_1
static const ber_tlv_tag_t asn_DEF_vam_ts_InterferenceManagementChannel_tags_1[]
Definition: vam_ts_InterferenceManagementChannel.c:168
memb_vam_ts_channelWidth_constraint_1
static int memb_vam_ts_channelWidth_constraint_1(const asn_TYPE_descriptor_t *td, const void *sptr, asn_app_constraint_failed_f *ctfailcb, void *app_key)
Definition: vam_ts_InterferenceManagementChannel.c:36


etsi_its_vam_ts_coding
Author(s): Jean-Pierre Busch , Guido Küppers , Lennart Reiher
autogenerated on Sun May 18 2025 02:30:55