remark release date
[Net-Radio-Location-SUPL-Test.git] / asn1 / GANSSGenericAssistDataElement.c
blob116cf1bb62cb0ac7914bb37661b427242edc03af
1 /*
2 * Generated by asn1c-0.9.23 (http://lionet.info/asn1c)
3 * From ASN.1 module "RRLP-Components"
4 * found in "../asn1src/RRLP-Components.asn"
5 * `asn1c -gen-PER -fskeletons-copy -fnative-types`
6 */
8 #include "GANSSGenericAssistDataElement.h"
10 static int
11 memb_ganssID_constraint_1(asn_TYPE_descriptor_t *td, const void *sptr,
12 asn_app_constraint_failed_f *ctfailcb, void *app_key) {
13 long value;
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;
22 value = *(const long *)sptr;
24 if((value >= 0 && value <= 7)) {
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;
35 static int
36 memb_sbasID_constraint_1(asn_TYPE_descriptor_t *td, const void *sptr,
37 asn_app_constraint_failed_f *ctfailcb, void *app_key) {
38 long value;
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;
47 value = *(const long *)sptr;
49 if((value >= 0 && value <= 7)) {
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;
60 static asn_per_constraints_t asn_PER_memb_ganssID_constr_2 = {
61 { APC_CONSTRAINED, 3, 3, 0, 7 } /* (0..7) */,
62 { APC_UNCONSTRAINED, -1, -1, 0, 0 },
63 0, 0 /* No PER value map */
65 static asn_per_constraints_t asn_PER_memb_sbasID_constr_14 = {
66 { APC_CONSTRAINED, 3, 3, 0, 7 } /* (0..7) */,
67 { APC_UNCONSTRAINED, -1, -1, 0, 0 },
68 0, 0 /* No PER value map */
70 static asn_TYPE_member_t asn_MBR_GANSSGenericAssistDataElement_1[] = {
71 { ATF_POINTER, 18, offsetof(struct GANSSGenericAssistDataElement, ganssID),
72 (ASN_TAG_CLASS_CONTEXT | (0 << 2)),
73 -1, /* IMPLICIT tag at current level */
74 &asn_DEF_NativeInteger,
75 memb_ganssID_constraint_1,
76 &asn_PER_memb_ganssID_constr_2,
78 "ganssID"
80 { ATF_POINTER, 17, offsetof(struct GANSSGenericAssistDataElement, ganssTimeModel),
81 (ASN_TAG_CLASS_CONTEXT | (1 << 2)),
82 -1, /* IMPLICIT tag at current level */
83 &asn_DEF_SeqOfGANSSTimeModel,
84 0, /* Defer constraints checking to the member type */
85 0, /* No PER visible constraints */
87 "ganssTimeModel"
89 { ATF_POINTER, 16, offsetof(struct GANSSGenericAssistDataElement, ganssDiffCorrections),
90 (ASN_TAG_CLASS_CONTEXT | (2 << 2)),
91 -1, /* IMPLICIT tag at current level */
92 &asn_DEF_GANSSDiffCorrections,
93 0, /* Defer constraints checking to the member type */
94 0, /* No PER visible constraints */
96 "ganssDiffCorrections"
98 { ATF_POINTER, 15, offsetof(struct GANSSGenericAssistDataElement, ganssNavigationModel),
99 (ASN_TAG_CLASS_CONTEXT | (3 << 2)),
100 -1, /* IMPLICIT tag at current level */
101 &asn_DEF_GANSSNavModel,
102 0, /* Defer constraints checking to the member type */
103 0, /* No PER visible constraints */
105 "ganssNavigationModel"
107 { ATF_POINTER, 14, offsetof(struct GANSSGenericAssistDataElement, ganssRealTimeIntegrity),
108 (ASN_TAG_CLASS_CONTEXT | (4 << 2)),
109 -1, /* IMPLICIT tag at current level */
110 &asn_DEF_GANSSRealTimeIntegrity,
111 0, /* Defer constraints checking to the member type */
112 0, /* No PER visible constraints */
114 "ganssRealTimeIntegrity"
116 { ATF_POINTER, 13, offsetof(struct GANSSGenericAssistDataElement, ganssDataBitAssist),
117 (ASN_TAG_CLASS_CONTEXT | (5 << 2)),
118 -1, /* IMPLICIT tag at current level */
119 &asn_DEF_GANSSDataBitAssist,
120 0, /* Defer constraints checking to the member type */
121 0, /* No PER visible constraints */
123 "ganssDataBitAssist"
125 { ATF_POINTER, 12, offsetof(struct GANSSGenericAssistDataElement, ganssRefMeasurementAssist),
126 (ASN_TAG_CLASS_CONTEXT | (6 << 2)),
127 -1, /* IMPLICIT tag at current level */
128 &asn_DEF_GANSSRefMeasurementAssist,
129 0, /* Defer constraints checking to the member type */
130 0, /* No PER visible constraints */
132 "ganssRefMeasurementAssist"
134 { ATF_POINTER, 11, offsetof(struct GANSSGenericAssistDataElement, ganssAlmanacModel),
135 (ASN_TAG_CLASS_CONTEXT | (7 << 2)),
136 -1, /* IMPLICIT tag at current level */
137 &asn_DEF_GANSSAlmanacModel,
138 0, /* Defer constraints checking to the member type */
139 0, /* No PER visible constraints */
141 "ganssAlmanacModel"
143 { ATF_POINTER, 10, offsetof(struct GANSSGenericAssistDataElement, ganssUTCModel),
144 (ASN_TAG_CLASS_CONTEXT | (8 << 2)),
145 -1, /* IMPLICIT tag at current level */
146 &asn_DEF_GANSSUTCModel,
147 0, /* Defer constraints checking to the member type */
148 0, /* No PER visible constraints */
150 "ganssUTCModel"
152 { ATF_POINTER, 9, offsetof(struct GANSSGenericAssistDataElement, ganssEphemerisExtension),
153 (ASN_TAG_CLASS_CONTEXT | (9 << 2)),
154 -1, /* IMPLICIT tag at current level */
155 &asn_DEF_GANSSEphemerisExtension,
156 0, /* Defer constraints checking to the member type */
157 0, /* No PER visible constraints */
159 "ganssEphemerisExtension"
161 { ATF_POINTER, 8, offsetof(struct GANSSGenericAssistDataElement, ganssEphemerisExtCheck),
162 (ASN_TAG_CLASS_CONTEXT | (10 << 2)),
163 -1, /* IMPLICIT tag at current level */
164 &asn_DEF_GANSSEphemerisExtensionCheck,
165 0, /* Defer constraints checking to the member type */
166 0, /* No PER visible constraints */
168 "ganssEphemerisExtCheck"
170 { ATF_POINTER, 7, offsetof(struct GANSSGenericAssistDataElement, sbasID),
171 (ASN_TAG_CLASS_CONTEXT | (11 << 2)),
172 -1, /* IMPLICIT tag at current level */
173 &asn_DEF_NativeInteger,
174 memb_sbasID_constraint_1,
175 &asn_PER_memb_sbasID_constr_14,
177 "sbasID"
179 { ATF_POINTER, 6, offsetof(struct GANSSGenericAssistDataElement, ganssAddUTCModel),
180 (ASN_TAG_CLASS_CONTEXT | (12 << 2)),
181 +1, /* EXPLICIT tag at current level */
182 &asn_DEF_GANSSAddUTCModel,
183 0, /* Defer constraints checking to the member type */
184 0, /* No PER visible constraints */
186 "ganssAddUTCModel"
188 { ATF_POINTER, 5, offsetof(struct GANSSGenericAssistDataElement, ganssAuxiliaryInfo),
189 (ASN_TAG_CLASS_CONTEXT | (13 << 2)),
190 +1, /* EXPLICIT tag at current level */
191 &asn_DEF_GANSSAuxiliaryInformation,
192 0, /* Defer constraints checking to the member type */
193 0, /* No PER visible constraints */
195 "ganssAuxiliaryInfo"
197 { ATF_POINTER, 4, offsetof(struct GANSSGenericAssistDataElement, ganssDiffCorrectionsValidityPeriod),
198 (ASN_TAG_CLASS_CONTEXT | (14 << 2)),
199 -1, /* IMPLICIT tag at current level */
200 &asn_DEF_GANSSDiffCorrectionsValidityPeriod,
201 0, /* Defer constraints checking to the member type */
202 0, /* No PER visible constraints */
204 "ganssDiffCorrectionsValidityPeriod"
206 { ATF_POINTER, 3, offsetof(struct GANSSGenericAssistDataElement, ganssTimeModel_R10_Ext),
207 (ASN_TAG_CLASS_CONTEXT | (15 << 2)),
208 -1, /* IMPLICIT tag at current level */
209 &asn_DEF_SeqOfGANSSTimeModel_R10_Ext,
210 0, /* Defer constraints checking to the member type */
211 0, /* No PER visible constraints */
213 "ganssTimeModel-R10-Ext"
215 { ATF_POINTER, 2, offsetof(struct GANSSGenericAssistDataElement, ganssRefMeasurementAssist_R10_Ext),
216 (ASN_TAG_CLASS_CONTEXT | (16 << 2)),
217 -1, /* IMPLICIT tag at current level */
218 &asn_DEF_GANSSRefMeasurementAssist_R10_Ext,
219 0, /* Defer constraints checking to the member type */
220 0, /* No PER visible constraints */
222 "ganssRefMeasurementAssist-R10-Ext"
224 { ATF_POINTER, 1, offsetof(struct GANSSGenericAssistDataElement, ganssAlmanacModel_R10_Ext),
225 (ASN_TAG_CLASS_CONTEXT | (17 << 2)),
226 -1, /* IMPLICIT tag at current level */
227 &asn_DEF_GANSSAlmanacModel_R10_Ext,
228 0, /* Defer constraints checking to the member type */
229 0, /* No PER visible constraints */
231 "ganssAlmanacModel-R10-Ext"
234 static int asn_MAP_GANSSGenericAssistDataElement_oms_1[] = { 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17 };
235 static ber_tlv_tag_t asn_DEF_GANSSGenericAssistDataElement_tags_1[] = {
236 (ASN_TAG_CLASS_UNIVERSAL | (16 << 2))
238 static asn_TYPE_tag2member_t asn_MAP_GANSSGenericAssistDataElement_tag2el_1[] = {
239 { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* ganssID at 1099 */
240 { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 }, /* ganssTimeModel at 1100 */
241 { (ASN_TAG_CLASS_CONTEXT | (2 << 2)), 2, 0, 0 }, /* ganssDiffCorrections at 1101 */
242 { (ASN_TAG_CLASS_CONTEXT | (3 << 2)), 3, 0, 0 }, /* ganssNavigationModel at 1102 */
243 { (ASN_TAG_CLASS_CONTEXT | (4 << 2)), 4, 0, 0 }, /* ganssRealTimeIntegrity at 1103 */
244 { (ASN_TAG_CLASS_CONTEXT | (5 << 2)), 5, 0, 0 }, /* ganssDataBitAssist at 1104 */
245 { (ASN_TAG_CLASS_CONTEXT | (6 << 2)), 6, 0, 0 }, /* ganssRefMeasurementAssist at 1105 */
246 { (ASN_TAG_CLASS_CONTEXT | (7 << 2)), 7, 0, 0 }, /* ganssAlmanacModel at 1106 */
247 { (ASN_TAG_CLASS_CONTEXT | (8 << 2)), 8, 0, 0 }, /* ganssUTCModel at 1107 */
248 { (ASN_TAG_CLASS_CONTEXT | (9 << 2)), 9, 0, 0 }, /* ganssEphemerisExtension at 1108 */
249 { (ASN_TAG_CLASS_CONTEXT | (10 << 2)), 10, 0, 0 }, /* ganssEphemerisExtCheck at 1109 */
250 { (ASN_TAG_CLASS_CONTEXT | (11 << 2)), 11, 0, 0 }, /* sbasID at 1111 */
251 { (ASN_TAG_CLASS_CONTEXT | (12 << 2)), 12, 0, 0 }, /* ganssAddUTCModel at 1112 */
252 { (ASN_TAG_CLASS_CONTEXT | (13 << 2)), 13, 0, 0 }, /* ganssAuxiliaryInfo at 1113 */
253 { (ASN_TAG_CLASS_CONTEXT | (14 << 2)), 14, 0, 0 }, /* ganssDiffCorrectionsValidityPeriod at 1114 */
254 { (ASN_TAG_CLASS_CONTEXT | (15 << 2)), 15, 0, 0 }, /* ganssTimeModel-R10-Ext at 1116 */
255 { (ASN_TAG_CLASS_CONTEXT | (16 << 2)), 16, 0, 0 }, /* ganssRefMeasurementAssist-R10-Ext at 1119 */
256 { (ASN_TAG_CLASS_CONTEXT | (17 << 2)), 17, 0, 0 } /* ganssAlmanacModel-R10-Ext at 1121 */
258 static asn_SEQUENCE_specifics_t asn_SPC_GANSSGenericAssistDataElement_specs_1 = {
259 sizeof(struct GANSSGenericAssistDataElement),
260 offsetof(struct GANSSGenericAssistDataElement, _asn_ctx),
261 asn_MAP_GANSSGenericAssistDataElement_tag2el_1,
262 18, /* Count of tags in the map */
263 asn_MAP_GANSSGenericAssistDataElement_oms_1, /* Optional members */
264 11, 7, /* Root/Additions */
265 10, /* Start extensions */
266 19 /* Stop extensions */
268 asn_TYPE_descriptor_t asn_DEF_GANSSGenericAssistDataElement = {
269 "GANSSGenericAssistDataElement",
270 "GANSSGenericAssistDataElement",
271 SEQUENCE_free,
272 SEQUENCE_print,
273 SEQUENCE_constraint,
274 SEQUENCE_decode_ber,
275 SEQUENCE_encode_der,
276 SEQUENCE_decode_xer,
277 SEQUENCE_encode_xer,
278 SEQUENCE_decode_uper,
279 SEQUENCE_encode_uper,
280 0, /* Use generic outmost tag fetcher */
281 asn_DEF_GANSSGenericAssistDataElement_tags_1,
282 sizeof(asn_DEF_GANSSGenericAssistDataElement_tags_1)
283 /sizeof(asn_DEF_GANSSGenericAssistDataElement_tags_1[0]), /* 1 */
284 asn_DEF_GANSSGenericAssistDataElement_tags_1, /* Same as above */
285 sizeof(asn_DEF_GANSSGenericAssistDataElement_tags_1)
286 /sizeof(asn_DEF_GANSSGenericAssistDataElement_tags_1[0]), /* 1 */
287 0, /* No PER visible constraints */
288 asn_MBR_GANSSGenericAssistDataElement_1,
289 18, /* Elements count */
290 &asn_SPC_GANSSGenericAssistDataElement_specs_1 /* Additional specs */