cam_ts_OccupiedLanesWithConfidence.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=cam_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  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 <= 4UL)) {
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 static int
38  asn_app_constraint_failed_f *ctfailcb, void *app_key) {
39  size_t size;
40 
41  if(!sptr) {
42  ASN__CTFAIL(app_key, td, sptr,
43  "%s: value not given (%s:%d)",
44  td->name, __FILE__, __LINE__);
45  return -1;
46  }
47 
48  /* Determine the number of elements */
49  size = _A_CSEQUENCE_FROM_VOID(sptr)->count;
50 
51  if((size >= 1UL && size <= 4UL)) {
52  /* Perform validation of the inner elements */
53  return SEQUENCE_OF_constraint(td, sptr, ctfailcb, app_key);
54  } else {
55  ASN__CTFAIL(app_key, td, sptr,
56  "%s: constraint failed (%s:%d)",
57  td->name, __FILE__, __LINE__);
58  return -1;
59  }
60 }
61 
62 #if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT)
63 static asn_per_constraints_t asn_PER_type_cam_ts_lanePositionBased_constr_2 CC_NOTUSED = {
64  { APC_UNCONSTRAINED, -1, -1, 0, 0 },
65  { APC_CONSTRAINED, 2, 2, 1, 4 } /* (SIZE(1..4)) */,
66  0, 0 /* No PER value map */
67 };
68 #endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */
69 #if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT)
70 static asn_per_constraints_t asn_PER_type_cam_ts_mapBased_constr_4 CC_NOTUSED = {
71  { APC_UNCONSTRAINED, -1, -1, 0, 0 },
72  { APC_CONSTRAINED, 2, 2, 1, 4 } /* (SIZE(1..4)) */,
73  0, 0 /* No PER value map */
74 };
75 #endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */
76 #if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT)
77 static asn_per_constraints_t asn_PER_memb_cam_ts_lanePositionBased_constr_2 CC_NOTUSED = {
78  { APC_UNCONSTRAINED, -1, -1, 0, 0 },
79  { APC_CONSTRAINED, 2, 2, 1, 4 } /* (SIZE(1..4)) */,
80  0, 0 /* No PER value map */
81 };
82 #endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */
83 #if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT)
84 static asn_per_constraints_t asn_PER_memb_cam_ts_mapBased_constr_4 CC_NOTUSED = {
85  { APC_UNCONSTRAINED, -1, -1, 0, 0 },
86  { APC_CONSTRAINED, 2, 2, 1, 4 } /* (SIZE(1..4)) */,
87  0, 0 /* No PER value map */
88 };
89 #endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */
91  { ATF_POINTER, 0, 0,
92  -1 /* Ambiguous tag (CHOICE?) */,
93  0,
95  0,
96  {
97 #if !defined(ASN_DISABLE_OER_SUPPORT)
98  0,
99 #endif /* !defined(ASN_DISABLE_OER_SUPPORT) */
100 #if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT)
101  0,
102 #endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */
103 #if !defined(ASN_DISABLE_JER_SUPPORT)
104  0,
105 #endif /* !defined(ASN_DISABLE_JER_SUPPORT) */
106  0
107  },
108  0, 0, /* No default value */
109  ""
110  },
111 };
113  (ASN_TAG_CLASS_CONTEXT | (0 << 2)),
114  (ASN_TAG_CLASS_UNIVERSAL | (16 << 2))
115 };
117  sizeof(struct cam_ts_OccupiedLanesWithConfidence__lanePositionBased),
118  offsetof(struct cam_ts_OccupiedLanesWithConfidence__lanePositionBased, _asn_ctx),
119  2, /* XER encoding is XMLValueList */
120 };
121 static /* Use -fall-defs-global to expose */
123  "lanePositionBased",
124  "lanePositionBased",
128  /sizeof(asn_DEF_cam_ts_lanePositionBased_tags_2[0]) - 1, /* 1 */
129  asn_DEF_cam_ts_lanePositionBased_tags_2, /* Same as above */
131  /sizeof(asn_DEF_cam_ts_lanePositionBased_tags_2[0]), /* 2 */
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_type_cam_ts_lanePositionBased_constr_2,
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  },
145  1, /* Single element */
146  &asn_SPC_cam_ts_lanePositionBased_specs_2 /* Additional specs */
147 };
148 
150  { ATF_POINTER, 0, 0,
151  (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)),
152  0,
154  0,
155  {
156 #if !defined(ASN_DISABLE_OER_SUPPORT)
157  0,
158 #endif /* !defined(ASN_DISABLE_OER_SUPPORT) */
159 #if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT)
160  0,
161 #endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */
162 #if !defined(ASN_DISABLE_JER_SUPPORT)
163  0,
164 #endif /* !defined(ASN_DISABLE_JER_SUPPORT) */
165  0
166  },
167  0, 0, /* No default value */
168  ""
169  },
170 };
172  (ASN_TAG_CLASS_CONTEXT | (1 << 2)),
173  (ASN_TAG_CLASS_UNIVERSAL | (16 << 2))
174 };
176  sizeof(struct cam_ts_OccupiedLanesWithConfidence__mapBased),
177  offsetof(struct cam_ts_OccupiedLanesWithConfidence__mapBased, _asn_ctx),
178  0, /* XER encoding is XMLDelimitedItemList */
179 };
180 static /* Use -fall-defs-global to expose */
182  "mapBased",
183  "mapBased",
187  /sizeof(asn_DEF_cam_ts_mapBased_tags_4[0]) - 1, /* 1 */
188  asn_DEF_cam_ts_mapBased_tags_4, /* Same as above */
190  /sizeof(asn_DEF_cam_ts_mapBased_tags_4[0]), /* 2 */
191  {
192 #if !defined(ASN_DISABLE_OER_SUPPORT)
193  0,
194 #endif /* !defined(ASN_DISABLE_OER_SUPPORT) */
195 #if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT)
196  &asn_PER_type_cam_ts_mapBased_constr_4,
197 #endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */
198 #if !defined(ASN_DISABLE_JER_SUPPORT)
199  0,
200 #endif /* !defined(ASN_DISABLE_JER_SUPPORT) */
202  },
204  1, /* Single element */
205  &asn_SPC_cam_ts_mapBased_specs_4 /* Additional specs */
206 };
207 
209  { ATF_NOFLAGS, 0, offsetof(struct cam_ts_OccupiedLanesWithConfidence, lanePositionBased),
210  (ASN_TAG_CLASS_CONTEXT | (0 << 2)),
211  0,
213  0,
214  {
215 #if !defined(ASN_DISABLE_OER_SUPPORT)
216  0,
217 #endif /* !defined(ASN_DISABLE_OER_SUPPORT) */
218 #if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT)
219  &asn_PER_memb_cam_ts_lanePositionBased_constr_2,
220 #endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */
221 #if !defined(ASN_DISABLE_JER_SUPPORT)
222  0,
223 #endif /* !defined(ASN_DISABLE_JER_SUPPORT) */
225  },
226  0, 0, /* No default value */
227  "lanePositionBased"
228  },
230  (ASN_TAG_CLASS_CONTEXT | (1 << 2)),
231  0,
233  0,
234  {
235 #if !defined(ASN_DISABLE_OER_SUPPORT)
236  0,
237 #endif /* !defined(ASN_DISABLE_OER_SUPPORT) */
238 #if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT)
239  &asn_PER_memb_cam_ts_mapBased_constr_4,
240 #endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */
241 #if !defined(ASN_DISABLE_JER_SUPPORT)
242  0,
243 #endif /* !defined(ASN_DISABLE_JER_SUPPORT) */
245  },
246  0, 0, /* No default value */
247  "mapBased"
248  },
249  { ATF_NOFLAGS, 0, offsetof(struct cam_ts_OccupiedLanesWithConfidence, confidence),
250  (ASN_TAG_CLASS_CONTEXT | (2 << 2)),
251  -1, /* IMPLICIT tag at current level */
253  0,
254  {
255 #if !defined(ASN_DISABLE_OER_SUPPORT)
256  0,
257 #endif /* !defined(ASN_DISABLE_OER_SUPPORT) */
258 #if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT)
259  0,
260 #endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */
261 #if !defined(ASN_DISABLE_JER_SUPPORT)
262  0,
263 #endif /* !defined(ASN_DISABLE_JER_SUPPORT) */
264  0
265  },
266  0, 0, /* No default value */
267  "confidence"
268  },
269 };
272  (ASN_TAG_CLASS_UNIVERSAL | (16 << 2))
273 };
275  { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* lanePositionBased */
276  { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 }, /* mapBased */
277  { (ASN_TAG_CLASS_CONTEXT | (2 << 2)), 2, 0, 0 } /* confidence */
278 };
280  sizeof(struct cam_ts_OccupiedLanesWithConfidence),
283  3, /* Count of tags in the map */
285  1, 0, /* Root/Additions */
286  3, /* First extension addition */
287 };
289  "OccupiedLanesWithConfidence",
290  "OccupiedLanesWithConfidence",
298  {
299 #if !defined(ASN_DISABLE_OER_SUPPORT)
300  0,
301 #endif /* !defined(ASN_DISABLE_OER_SUPPORT) */
302 #if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT)
303  0,
304 #endif /* !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT) */
305 #if !defined(ASN_DISABLE_JER_SUPPORT)
306  0,
307 #endif /* !defined(ASN_DISABLE_JER_SUPPORT) */
309  },
311  3, /* Elements count */
313 };
314 
asn_OP_SEQUENCE
asn_TYPE_operation_t asn_OP_SEQUENCE
Definition: constr_SEQUENCE.c:9
_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
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
memb_cam_ts_mapBased_constraint_1
static int memb_cam_ts_mapBased_constraint_1(const asn_TYPE_descriptor_t *td, const void *sptr, asn_app_constraint_failed_f *ctfailcb, void *app_key)
Definition: cam_ts_OccupiedLanesWithConfidence.c:37
asn_DEF_cam_ts_mapBased_4
static asn_TYPE_descriptor_t asn_DEF_cam_ts_mapBased_4
Definition: cam_ts_OccupiedLanesWithConfidence.c:181
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
CC_NOTUSED
static asn_per_constraints_t asn_PER_type_cam_ts_lanePositionBased_constr_2 CC_NOTUSED
Definition: cam_ts_OccupiedLanesWithConfidence.c:63
asn_DEF_cam_ts_mapBased_tags_4
static const ber_tlv_tag_t asn_DEF_cam_ts_mapBased_tags_4[]
Definition: cam_ts_OccupiedLanesWithConfidence.c:171
SEQUENCE_OF_constraint
#define SEQUENCE_OF_constraint
Definition: constr_SEQUENCE_OF.h:28
cam_ts_OccupiedLanesWithConfidence.h
asn_TYPE_tag2member_s
Definition: constr_TYPE.h:289
asn_OP_SEQUENCE_OF
asn_TYPE_operation_t asn_OP_SEQUENCE_OF
Definition: constr_SEQUENCE_OF.c:10
ATF_POINTER
@ ATF_POINTER
Definition: constr_TYPE.h:268
SEQUENCE_constraint
asn_constr_check_f SEQUENCE_constraint
Definition: constr_SEQUENCE.h:56
asn_TYPE_descriptor_s
Definition: constr_TYPE.h:224
cam_ts_OccupiedLanesWithConfidence
Definition: cam_ts_OccupiedLanesWithConfidence.h:29
asn_SPC_cam_ts_mapBased_specs_4
static asn_SET_OF_specifics_t asn_SPC_cam_ts_mapBased_specs_4
Definition: cam_ts_OccupiedLanesWithConfidence.c:175
offsetof
#define offsetof(s, m)
Definition: asn_system.h:132
memb_cam_ts_lanePositionBased_constraint_1
static int memb_cam_ts_lanePositionBased_constraint_1(const asn_TYPE_descriptor_t *td, const void *sptr, asn_app_constraint_failed_f *ctfailcb, void *app_key)
Definition: cam_ts_OccupiedLanesWithConfidence.c:11
asn_SPC_cam_ts_lanePositionBased_specs_2
static asn_SET_OF_specifics_t asn_SPC_cam_ts_lanePositionBased_specs_2
Definition: cam_ts_OccupiedLanesWithConfidence.c:116
asn_DEF_cam_ts_lanePositionBased_tags_2
static const ber_tlv_tag_t asn_DEF_cam_ts_lanePositionBased_tags_2[]
Definition: cam_ts_OccupiedLanesWithConfidence.c:112
asn_DEF_cam_ts_OccupiedLanesWithConfidence_tags_1
static const ber_tlv_tag_t asn_DEF_cam_ts_OccupiedLanesWithConfidence_tags_1[]
Definition: cam_ts_OccupiedLanesWithConfidence.c:271
asn_DEF_cam_ts_lanePositionBased_2
static asn_TYPE_descriptor_t asn_DEF_cam_ts_lanePositionBased_2
Definition: cam_ts_OccupiedLanesWithConfidence.c:122
asn_SPC_cam_ts_OccupiedLanesWithConfidence_specs_1
static asn_SEQUENCE_specifics_t asn_SPC_cam_ts_OccupiedLanesWithConfidence_specs_1
Definition: cam_ts_OccupiedLanesWithConfidence.c:279
asn_MAP_cam_ts_OccupiedLanesWithConfidence_tag2el_1
static const asn_TYPE_tag2member_t asn_MAP_cam_ts_OccupiedLanesWithConfidence_tag2el_1[]
Definition: cam_ts_OccupiedLanesWithConfidence.c:274
asn_MAP_cam_ts_OccupiedLanesWithConfidence_oms_1
static const int asn_MAP_cam_ts_OccupiedLanesWithConfidence_oms_1[]
Definition: cam_ts_OccupiedLanesWithConfidence.c:270
asn_DEF_cam_ts_OccupiedLanesWithConfidence
asn_TYPE_descriptor_t asn_DEF_cam_ts_OccupiedLanesWithConfidence
Definition: cam_ts_OccupiedLanesWithConfidence.c:288
asn_DEF_cam_ts_MapPosition
asn_TYPE_descriptor_t asn_DEF_cam_ts_MapPosition
Definition: cam_ts_MapPosition.c:118
ATF_NOFLAGS
@ ATF_NOFLAGS
Definition: constr_TYPE.h:267
cam_ts_OccupiedLanesWithConfidence::_asn_ctx
asn_struct_ctx_t _asn_ctx
Definition: cam_ts_OccupiedLanesWithConfidence.h:49
asn_SEQUENCE_specifics_s
Definition: constr_SEQUENCE.h:14
ASN__CTFAIL
#define ASN__CTFAIL
Definition: constraints.h:57
asn_MBR_cam_ts_mapBased_4
static asn_TYPE_member_t asn_MBR_cam_ts_mapBased_4[]
Definition: cam_ts_OccupiedLanesWithConfidence.c:149
asn_DEF_cam_ts_LanePositionOptions
asn_TYPE_descriptor_t asn_DEF_cam_ts_LanePositionOptions
Definition: cam_ts_LanePositionOptions.c:136
asn_per_constraints_s
Definition: per_support.h:30
asn_TYPE_member_s
Definition: constr_TYPE.h:272
asn_DEF_cam_ts_MetaInformation
asn_TYPE_descriptor_t asn_DEF_cam_ts_MetaInformation
Definition: cam_ts_MetaInformation.c:90
asn_SET_OF_specifics_s
Definition: constr_SET_OF.h:15
asn_MBR_cam_ts_lanePositionBased_2
static asn_TYPE_member_t asn_MBR_cam_ts_lanePositionBased_2[]
Definition: cam_ts_OccupiedLanesWithConfidence.c:90
asn_MBR_cam_ts_OccupiedLanesWithConfidence_1
static asn_TYPE_member_t asn_MBR_cam_ts_OccupiedLanesWithConfidence_1[]
Definition: cam_ts_OccupiedLanesWithConfidence.c:208


etsi_its_cam_ts_coding
Author(s): Jean-Pierre Busch , Guido Küppers , Lennart Reiher
autogenerated on Sun May 18 2025 02:21:23