networkprotocolmodules/common/asn1rrlp/inc/RRLP-Components.h
branchRCL_3
changeset 52 29dbbeac905d
parent 39 a3482a8f15d8
child 53 419d6cfdb715
child 54 0c2046328c85
equal deleted inserted replaced
39:a3482a8f15d8 52:29dbbeac905d
     1 // Copyright (c) 2001-2009 Objective Systems, Inc. (http://www.obj-sys.com) 
       
     2 // All rights reserved.
       
     3 // This component and the accompanying materials are made available
       
     4 // under the terms of "Eclipse Public License v1.0"
       
     5 // which accompanies this distribution, and is available 
       
     6 // at the URL "http://www.eclipse.org/legal/epl-v10.html".
       
     7 //
       
     8 
       
     9 /**
       
    10  * This file was generated by the Objective Systems ASN1C Compiler
       
    11  * (http://www.obj-sys.com).
       
    12  */
       
    13 
       
    14 #ifndef RRLP_COMPONENTS_H
       
    15 #define RRLP_COMPONENTS_H
       
    16 
       
    17 #include <stdio.h>
       
    18 #include <stdlib.h>
       
    19 #include "rtkey.h"
       
    20 #include "rtpersrc/asn1PerCppTypes.h"
       
    21 #include "ASN1CSeqOfList.h"
       
    22 
       
    23 /**
       
    24  * Header file for ASN.1 module RRLP-Components
       
    25  */
       
    26 /**************************************************************/
       
    27 /*                                                            */
       
    28 /*  Accuracy                                                  */
       
    29 /*                                                            */
       
    30 /**************************************************************/
       
    31 
       
    32 #define TV_Accuracy	(TM_UNIV|TM_PRIM|2)
       
    33 
       
    34 typedef OSUINT8 ASN1T_Accuracy;
       
    35 
       
    36 IMPORT_C int asn1PE_Accuracy (OSCTXT* pctxt, ASN1T_Accuracy value);
       
    37 
       
    38 IMPORT_C int asn1PD_Accuracy (OSCTXT* pctxt, ASN1T_Accuracy* pvalue);
       
    39 
       
    40 IMPORT_C void asn1Print_Accuracy
       
    41    (const char* name, ASN1T_Accuracy* pvalue);
       
    42 
       
    43 /**************************************************************/
       
    44 /*                                                            */
       
    45 /*  AccuracyOpt                                               */
       
    46 /*                                                            */
       
    47 /**************************************************************/
       
    48 
       
    49 #define TV_AccuracyOpt	(TM_UNIV|TM_CONS|16)
       
    50 
       
    51 struct ASN1T_AccuracyOpt {
       
    52    struct {
       
    53       unsigned accuracyPresent : 1;
       
    54    } m;
       
    55    ASN1T_Accuracy accuracy;
       
    56    IMPORT_C ASN1T_AccuracyOpt ();
       
    57 } ;
       
    58 
       
    59 IMPORT_C int asn1PE_AccuracyOpt (OSCTXT* pctxt, ASN1T_AccuracyOpt* pvalue);
       
    60 
       
    61 IMPORT_C int asn1PD_AccuracyOpt (OSCTXT* pctxt, ASN1T_AccuracyOpt* pvalue);
       
    62 
       
    63 IMPORT_C void asn1Print_AccuracyOpt
       
    64    (const char* name, ASN1T_AccuracyOpt* pvalue);
       
    65 
       
    66 /**************************************************************/
       
    67 /*                                                            */
       
    68 /*  MethodType                                                */
       
    69 /*                                                            */
       
    70 /**************************************************************/
       
    71 
       
    72 /* Choice tag constants */
       
    73 
       
    74 #define T_MethodType_msAssisted         1
       
    75 #define T_MethodType_msBased            2
       
    76 #define T_MethodType_msBasedPref        3
       
    77 #define T_MethodType_msAssistedPref     4
       
    78 
       
    79 struct ASN1T_MethodType {
       
    80    int t;
       
    81    union {
       
    82       /* t = 1 */
       
    83       ASN1T_AccuracyOpt *msAssisted;
       
    84       /* t = 2 */
       
    85       ASN1T_Accuracy msBased;
       
    86       /* t = 3 */
       
    87       ASN1T_Accuracy msBasedPref;
       
    88       /* t = 4 */
       
    89       ASN1T_Accuracy msAssistedPref;
       
    90    } u;
       
    91 } ;
       
    92 
       
    93 IMPORT_C int asn1PE_MethodType (OSCTXT* pctxt, ASN1T_MethodType* pvalue);
       
    94 
       
    95 IMPORT_C int asn1PD_MethodType (OSCTXT* pctxt, ASN1T_MethodType* pvalue);
       
    96 
       
    97 IMPORT_C void asn1Print_MethodType
       
    98    (const char* name, ASN1T_MethodType* pvalue);
       
    99 
       
   100 IMPORT_C void asn1Free_MethodType (OSCTXT *pctxt, ASN1T_MethodType* pvalue);
       
   101 
       
   102 /**************************************************************/
       
   103 /*                                                            */
       
   104 /*  PositionMethod                                            */
       
   105 /*                                                            */
       
   106 /**************************************************************/
       
   107 
       
   108 #define TV_PositionMethod	(TM_UNIV|TM_PRIM|10)
       
   109 
       
   110 struct PositionMethod {
       
   111    enum Root {
       
   112       eotd = 0,
       
   113       gps = 1,
       
   114       gpsOrEOTD = 2
       
   115    } ;
       
   116 } ;
       
   117 
       
   118 typedef OSUINT32 ASN1T_PositionMethod;
       
   119 
       
   120 IMPORT_C int asn1PE_PositionMethod (OSCTXT* pctxt, ASN1T_PositionMethod value);
       
   121 
       
   122 IMPORT_C int asn1PD_PositionMethod (OSCTXT* pctxt, ASN1T_PositionMethod* pvalue);
       
   123 
       
   124 IMPORT_C void asn1Print_PositionMethod
       
   125    (const char* name, ASN1T_PositionMethod* pvalue);
       
   126 
       
   127 IMPORT_C const OSUTF8CHAR* ASN1T_PositionMethod_ToString (OSINT32 value);
       
   128 
       
   129 IMPORT_C int ASN1T_PositionMethod_ToEnum (OSCTXT* pctxt,
       
   130    const OSUTF8CHAR* value, ASN1T_PositionMethod* pvalue);
       
   131 
       
   132 /**************************************************************/
       
   133 /*                                                            */
       
   134 /*  MeasureResponseTime                                       */
       
   135 /*                                                            */
       
   136 /**************************************************************/
       
   137 
       
   138 #define TV_MeasureResponseTime	(TM_UNIV|TM_PRIM|2)
       
   139 
       
   140 typedef OSUINT8 ASN1T_MeasureResponseTime;
       
   141 
       
   142 IMPORT_C int asn1PE_MeasureResponseTime (OSCTXT* pctxt, ASN1T_MeasureResponseTime value);
       
   143 
       
   144 IMPORT_C int asn1PD_MeasureResponseTime (OSCTXT* pctxt, ASN1T_MeasureResponseTime* pvalue);
       
   145 
       
   146 IMPORT_C void asn1Print_MeasureResponseTime
       
   147    (const char* name, ASN1T_MeasureResponseTime* pvalue);
       
   148 
       
   149 /**************************************************************/
       
   150 /*                                                            */
       
   151 /*  UseMultipleSets                                           */
       
   152 /*                                                            */
       
   153 /**************************************************************/
       
   154 
       
   155 #define TV_UseMultipleSets	(TM_UNIV|TM_PRIM|10)
       
   156 
       
   157 struct UseMultipleSets {
       
   158    enum Root {
       
   159       multipleSets = 0,
       
   160       oneSet = 1
       
   161    } ;
       
   162 } ;
       
   163 
       
   164 typedef OSUINT32 ASN1T_UseMultipleSets;
       
   165 
       
   166 IMPORT_C int asn1PE_UseMultipleSets (OSCTXT* pctxt, ASN1T_UseMultipleSets value);
       
   167 
       
   168 IMPORT_C int asn1PD_UseMultipleSets (OSCTXT* pctxt, ASN1T_UseMultipleSets* pvalue);
       
   169 
       
   170 IMPORT_C void asn1Print_UseMultipleSets
       
   171    (const char* name, ASN1T_UseMultipleSets* pvalue);
       
   172 
       
   173 IMPORT_C const OSUTF8CHAR* ASN1T_UseMultipleSets_ToString (OSINT32 value);
       
   174 
       
   175 IMPORT_C int ASN1T_UseMultipleSets_ToEnum (OSCTXT* pctxt,
       
   176    const OSUTF8CHAR* value, ASN1T_UseMultipleSets* pvalue);
       
   177 
       
   178 /**************************************************************/
       
   179 /*                                                            */
       
   180 /*  EnvironmentCharacter                                      */
       
   181 /*                                                            */
       
   182 /**************************************************************/
       
   183 
       
   184 #define TV_EnvironmentCharacter	(TM_UNIV|TM_PRIM|10)
       
   185 
       
   186 struct EnvironmentCharacter {
       
   187    enum Root {
       
   188       badArea = 0,
       
   189       notBadArea = 1,
       
   190       mixedArea = 2
       
   191    } ;
       
   192 } ;
       
   193 
       
   194 typedef OSUINT32 ASN1T_EnvironmentCharacter;
       
   195 
       
   196 IMPORT_C int asn1PE_EnvironmentCharacter (OSCTXT* pctxt, ASN1T_EnvironmentCharacter value);
       
   197 
       
   198 IMPORT_C int asn1PD_EnvironmentCharacter (OSCTXT* pctxt, ASN1T_EnvironmentCharacter* pvalue);
       
   199 
       
   200 IMPORT_C void asn1Print_EnvironmentCharacter
       
   201    (const char* name, ASN1T_EnvironmentCharacter* pvalue);
       
   202 
       
   203 IMPORT_C const OSUTF8CHAR* ASN1T_EnvironmentCharacter_ToString (OSINT32 value);
       
   204 
       
   205 IMPORT_C int ASN1T_EnvironmentCharacter_ToEnum (OSCTXT* pctxt,
       
   206    const OSUTF8CHAR* value, ASN1T_EnvironmentCharacter* pvalue);
       
   207 
       
   208 /**************************************************************/
       
   209 /*                                                            */
       
   210 /*  PositionInstruct                                          */
       
   211 /*                                                            */
       
   212 /**************************************************************/
       
   213 
       
   214 #define TV_PositionInstruct	(TM_UNIV|TM_CONS|16)
       
   215 
       
   216 struct ASN1T_PositionInstruct {
       
   217    struct {
       
   218       unsigned environmentCharacterPresent : 1;
       
   219    } m;
       
   220    ASN1T_MethodType methodType;
       
   221    ASN1T_PositionMethod positionMethod;
       
   222    ASN1T_MeasureResponseTime measureResponseTime;
       
   223    ASN1T_UseMultipleSets useMultipleSets;
       
   224    ASN1T_EnvironmentCharacter environmentCharacter;
       
   225    IMPORT_C ASN1T_PositionInstruct ();
       
   226 } ;
       
   227 
       
   228 IMPORT_C int asn1PE_PositionInstruct (OSCTXT* pctxt, ASN1T_PositionInstruct* pvalue);
       
   229 
       
   230 IMPORT_C int asn1PD_PositionInstruct (OSCTXT* pctxt, ASN1T_PositionInstruct* pvalue);
       
   231 
       
   232 IMPORT_C void asn1Print_PositionInstruct
       
   233    (const char* name, ASN1T_PositionInstruct* pvalue);
       
   234 
       
   235 IMPORT_C void asn1Free_PositionInstruct (OSCTXT *pctxt, ASN1T_PositionInstruct* pvalue);
       
   236 
       
   237 /**************************************************************/
       
   238 /*                                                            */
       
   239 /*  BCCHCarrier                                               */
       
   240 /*                                                            */
       
   241 /**************************************************************/
       
   242 
       
   243 #define TV_BCCHCarrier	(TM_UNIV|TM_PRIM|2)
       
   244 
       
   245 typedef OSUINT16 ASN1T_BCCHCarrier;
       
   246 
       
   247 IMPORT_C int asn1PE_BCCHCarrier (OSCTXT* pctxt, ASN1T_BCCHCarrier value);
       
   248 
       
   249 IMPORT_C int asn1PD_BCCHCarrier (OSCTXT* pctxt, ASN1T_BCCHCarrier* pvalue);
       
   250 
       
   251 IMPORT_C void asn1Print_BCCHCarrier
       
   252    (const char* name, ASN1T_BCCHCarrier* pvalue);
       
   253 
       
   254 /**************************************************************/
       
   255 /*                                                            */
       
   256 /*  BSIC                                                      */
       
   257 /*                                                            */
       
   258 /**************************************************************/
       
   259 
       
   260 #define TV_BSIC	(TM_UNIV|TM_PRIM|2)
       
   261 
       
   262 typedef OSUINT8 ASN1T_BSIC;
       
   263 
       
   264 IMPORT_C int asn1PE_BSIC (OSCTXT* pctxt, ASN1T_BSIC value);
       
   265 
       
   266 IMPORT_C int asn1PD_BSIC (OSCTXT* pctxt, ASN1T_BSIC* pvalue);
       
   267 
       
   268 IMPORT_C void asn1Print_BSIC
       
   269    (const char* name, ASN1T_BSIC* pvalue);
       
   270 
       
   271 /**************************************************************/
       
   272 /*                                                            */
       
   273 /*  TimeSlotScheme                                            */
       
   274 /*                                                            */
       
   275 /**************************************************************/
       
   276 
       
   277 #define TV_TimeSlotScheme	(TM_UNIV|TM_PRIM|10)
       
   278 
       
   279 struct TimeSlotScheme {
       
   280    enum Root {
       
   281       equalLength = 0,
       
   282       variousLength = 1
       
   283    } ;
       
   284 } ;
       
   285 
       
   286 typedef OSUINT32 ASN1T_TimeSlotScheme;
       
   287 
       
   288 IMPORT_C int asn1PE_TimeSlotScheme (OSCTXT* pctxt, ASN1T_TimeSlotScheme value);
       
   289 
       
   290 IMPORT_C int asn1PD_TimeSlotScheme (OSCTXT* pctxt, ASN1T_TimeSlotScheme* pvalue);
       
   291 
       
   292 IMPORT_C void asn1Print_TimeSlotScheme
       
   293    (const char* name, ASN1T_TimeSlotScheme* pvalue);
       
   294 
       
   295 IMPORT_C const OSUTF8CHAR* ASN1T_TimeSlotScheme_ToString (OSINT32 value);
       
   296 
       
   297 IMPORT_C int ASN1T_TimeSlotScheme_ToEnum (OSCTXT* pctxt,
       
   298    const OSUTF8CHAR* value, ASN1T_TimeSlotScheme* pvalue);
       
   299 
       
   300 /**************************************************************/
       
   301 /*                                                            */
       
   302 /*  Ext_GeographicalInformation                               */
       
   303 /*                                                            */
       
   304 /**************************************************************/
       
   305 
       
   306 #define TV_Ext_GeographicalInformation	(TM_UNIV|TM_PRIM|4)
       
   307 
       
   308 struct ASN1T_Ext_GeographicalInformation {
       
   309    OSUINT32 numocts;
       
   310    OSOCTET data[20];
       
   311    // ctors
       
   312    ASN1T_Ext_GeographicalInformation () : numocts(0) {}
       
   313    ASN1T_Ext_GeographicalInformation (OSUINT32 _numocts, const OSOCTET* _data) :
       
   314       numocts (_numocts) {
       
   315       OSCRTLMEMCPY (data, _data, OSRTMIN (numocts, sizeof(data)));
       
   316    }
       
   317    ASN1T_Ext_GeographicalInformation (const char* cstring) {
       
   318       if (strlen(cstring) > 0) {
       
   319          numocts = OSRTMIN ((OSCRTLSTRLEN(cstring)+1), sizeof(data));
       
   320          OSCRTLSTRNCPY ((char*)data, cstring, sizeof(data));
       
   321       }
       
   322       else numocts = 0;
       
   323    }
       
   324    // assignment operators
       
   325    ASN1T_Ext_GeographicalInformation& operator= (const char* cstring) {
       
   326       if (strlen(cstring) > 0) {
       
   327          numocts = OSRTMIN ((OSCRTLSTRLEN(cstring)+1), sizeof(data));
       
   328          OSCRTLSTRNCPY ((char*)data, cstring, sizeof(data));
       
   329       }
       
   330       else numocts = 0;
       
   331       return *this;
       
   332    }
       
   333 } ;
       
   334 
       
   335 IMPORT_C int asn1PE_Ext_GeographicalInformation (OSCTXT* pctxt, ASN1T_Ext_GeographicalInformation* pvalue);
       
   336 
       
   337 IMPORT_C int asn1PD_Ext_GeographicalInformation (OSCTXT* pctxt, ASN1T_Ext_GeographicalInformation* pvalue);
       
   338 
       
   339 IMPORT_C void asn1Print_Ext_GeographicalInformation
       
   340    (const char* name, ASN1T_Ext_GeographicalInformation* pvalue);
       
   341 
       
   342 /**************************************************************/
       
   343 /*                                                            */
       
   344 /*  BTSPosition                                               */
       
   345 /*                                                            */
       
   346 /**************************************************************/
       
   347 
       
   348 #define TV_BTSPosition	(TM_UNIV|TM_PRIM|4)
       
   349 
       
   350 typedef ASN1T_Ext_GeographicalInformation ASN1T_BTSPosition;
       
   351 
       
   352 IMPORT_C int asn1PE_BTSPosition (OSCTXT* pctxt, ASN1T_BTSPosition* pvalue);
       
   353 
       
   354 IMPORT_C int asn1PD_BTSPosition (OSCTXT* pctxt, ASN1T_BTSPosition* pvalue);
       
   355 
       
   356 IMPORT_C void asn1Print_BTSPosition
       
   357    (const char* name, ASN1T_BTSPosition* pvalue);
       
   358 
       
   359 /**************************************************************/
       
   360 /*                                                            */
       
   361 /*  ReferenceAssistData                                       */
       
   362 /*                                                            */
       
   363 /**************************************************************/
       
   364 
       
   365 #define TV_ReferenceAssistData	(TM_UNIV|TM_CONS|16)
       
   366 
       
   367 struct ASN1T_ReferenceAssistData {
       
   368    struct {
       
   369       unsigned btsPositionPresent : 1;
       
   370    } m;
       
   371    ASN1T_BCCHCarrier bcchCarrier;
       
   372    ASN1T_BSIC bsic;
       
   373    ASN1T_TimeSlotScheme timeSlotScheme;
       
   374    ASN1T_BTSPosition btsPosition;
       
   375    IMPORT_C ASN1T_ReferenceAssistData ();
       
   376 } ;
       
   377 
       
   378 IMPORT_C int asn1PE_ReferenceAssistData (OSCTXT* pctxt, ASN1T_ReferenceAssistData* pvalue);
       
   379 
       
   380 IMPORT_C int asn1PD_ReferenceAssistData (OSCTXT* pctxt, ASN1T_ReferenceAssistData* pvalue);
       
   381 
       
   382 IMPORT_C void asn1Print_ReferenceAssistData
       
   383    (const char* name, ASN1T_ReferenceAssistData* pvalue);
       
   384 
       
   385 /**************************************************************/
       
   386 /*                                                            */
       
   387 /*  MultiFrameOffset                                          */
       
   388 /*                                                            */
       
   389 /**************************************************************/
       
   390 
       
   391 #define TV_MultiFrameOffset	(TM_UNIV|TM_PRIM|2)
       
   392 
       
   393 typedef OSUINT8 ASN1T_MultiFrameOffset;
       
   394 
       
   395 IMPORT_C int asn1PE_MultiFrameOffset (OSCTXT* pctxt, ASN1T_MultiFrameOffset value);
       
   396 
       
   397 IMPORT_C int asn1PD_MultiFrameOffset (OSCTXT* pctxt, ASN1T_MultiFrameOffset* pvalue);
       
   398 
       
   399 IMPORT_C void asn1Print_MultiFrameOffset
       
   400    (const char* name, ASN1T_MultiFrameOffset* pvalue);
       
   401 
       
   402 /**************************************************************/
       
   403 /*                                                            */
       
   404 /*  RoughRTD                                                  */
       
   405 /*                                                            */
       
   406 /**************************************************************/
       
   407 
       
   408 #define TV_RoughRTD	(TM_UNIV|TM_PRIM|2)
       
   409 
       
   410 typedef OSUINT16 ASN1T_RoughRTD;
       
   411 
       
   412 IMPORT_C int asn1PE_RoughRTD (OSCTXT* pctxt, ASN1T_RoughRTD value);
       
   413 
       
   414 IMPORT_C int asn1PD_RoughRTD (OSCTXT* pctxt, ASN1T_RoughRTD* pvalue);
       
   415 
       
   416 IMPORT_C void asn1Print_RoughRTD
       
   417    (const char* name, ASN1T_RoughRTD* pvalue);
       
   418 
       
   419 /**************************************************************/
       
   420 /*                                                            */
       
   421 /*  FineRTD                                                   */
       
   422 /*                                                            */
       
   423 /**************************************************************/
       
   424 
       
   425 #define TV_FineRTD	(TM_UNIV|TM_PRIM|2)
       
   426 
       
   427 typedef OSUINT8 ASN1T_FineRTD;
       
   428 
       
   429 IMPORT_C int asn1PE_FineRTD (OSCTXT* pctxt, ASN1T_FineRTD value);
       
   430 
       
   431 IMPORT_C int asn1PD_FineRTD (OSCTXT* pctxt, ASN1T_FineRTD* pvalue);
       
   432 
       
   433 IMPORT_C void asn1Print_FineRTD
       
   434    (const char* name, ASN1T_FineRTD* pvalue);
       
   435 
       
   436 /**************************************************************/
       
   437 /*                                                            */
       
   438 /*  RelDistance                                               */
       
   439 /*                                                            */
       
   440 /**************************************************************/
       
   441 
       
   442 #define TV_RelDistance	(TM_UNIV|TM_PRIM|2)
       
   443 
       
   444 typedef OSINT32 ASN1T_RelDistance;
       
   445 
       
   446 IMPORT_C int asn1PE_RelDistance (OSCTXT* pctxt, ASN1T_RelDistance value);
       
   447 
       
   448 IMPORT_C int asn1PD_RelDistance (OSCTXT* pctxt, ASN1T_RelDistance* pvalue);
       
   449 
       
   450 IMPORT_C void asn1Print_RelDistance
       
   451    (const char* name, ASN1T_RelDistance* pvalue);
       
   452 
       
   453 /**************************************************************/
       
   454 /*                                                            */
       
   455 /*  RelativeAlt                                               */
       
   456 /*                                                            */
       
   457 /**************************************************************/
       
   458 
       
   459 #define TV_RelativeAlt	(TM_UNIV|TM_PRIM|2)
       
   460 
       
   461 typedef OSINT16 ASN1T_RelativeAlt;
       
   462 
       
   463 IMPORT_C int asn1PE_RelativeAlt (OSCTXT* pctxt, ASN1T_RelativeAlt value);
       
   464 
       
   465 IMPORT_C int asn1PD_RelativeAlt (OSCTXT* pctxt, ASN1T_RelativeAlt* pvalue);
       
   466 
       
   467 IMPORT_C void asn1Print_RelativeAlt
       
   468    (const char* name, ASN1T_RelativeAlt* pvalue);
       
   469 
       
   470 /**************************************************************/
       
   471 /*                                                            */
       
   472 /*  ReferenceWGS84                                            */
       
   473 /*                                                            */
       
   474 /**************************************************************/
       
   475 
       
   476 #define TV_ReferenceWGS84	(TM_UNIV|TM_CONS|16)
       
   477 
       
   478 struct ASN1T_ReferenceWGS84 {
       
   479    struct {
       
   480       unsigned relativeAltPresent : 1;
       
   481    } m;
       
   482    ASN1T_RelDistance relativeNorth;
       
   483    ASN1T_RelDistance relativeEast;
       
   484    ASN1T_RelativeAlt relativeAlt;
       
   485    IMPORT_C ASN1T_ReferenceWGS84 ();
       
   486 } ;
       
   487 
       
   488 IMPORT_C int asn1PE_ReferenceWGS84 (OSCTXT* pctxt, ASN1T_ReferenceWGS84* pvalue);
       
   489 
       
   490 IMPORT_C int asn1PD_ReferenceWGS84 (OSCTXT* pctxt, ASN1T_ReferenceWGS84* pvalue);
       
   491 
       
   492 IMPORT_C void asn1Print_ReferenceWGS84
       
   493    (const char* name, ASN1T_ReferenceWGS84* pvalue);
       
   494 
       
   495 /**************************************************************/
       
   496 /*                                                            */
       
   497 /*  CalcAssistanceBTS                                         */
       
   498 /*                                                            */
       
   499 /**************************************************************/
       
   500 
       
   501 #define TV_CalcAssistanceBTS	(TM_UNIV|TM_CONS|16)
       
   502 
       
   503 struct ASN1T_CalcAssistanceBTS {
       
   504    ASN1T_FineRTD fineRTD;
       
   505    ASN1T_ReferenceWGS84 referenceWGS84;
       
   506    IMPORT_C ASN1T_CalcAssistanceBTS ();
       
   507 } ;
       
   508 
       
   509 IMPORT_C int asn1PE_CalcAssistanceBTS (OSCTXT* pctxt, ASN1T_CalcAssistanceBTS* pvalue);
       
   510 
       
   511 IMPORT_C int asn1PD_CalcAssistanceBTS (OSCTXT* pctxt, ASN1T_CalcAssistanceBTS* pvalue);
       
   512 
       
   513 IMPORT_C void asn1Print_CalcAssistanceBTS
       
   514    (const char* name, ASN1T_CalcAssistanceBTS* pvalue);
       
   515 
       
   516 /**************************************************************/
       
   517 /*                                                            */
       
   518 /*  MsrAssistBTS                                              */
       
   519 /*                                                            */
       
   520 /**************************************************************/
       
   521 
       
   522 #define TV_MsrAssistBTS	(TM_UNIV|TM_CONS|16)
       
   523 
       
   524 struct ASN1T_MsrAssistBTS {
       
   525    struct {
       
   526       unsigned calcAssistanceBTSPresent : 1;
       
   527    } m;
       
   528    ASN1T_BCCHCarrier bcchCarrier;
       
   529    ASN1T_BSIC bsic;
       
   530    ASN1T_MultiFrameOffset multiFrameOffset;
       
   531    ASN1T_TimeSlotScheme timeSlotScheme;
       
   532    ASN1T_RoughRTD roughRTD;
       
   533    ASN1T_CalcAssistanceBTS calcAssistanceBTS;
       
   534    IMPORT_C ASN1T_MsrAssistBTS ();
       
   535 } ;
       
   536 
       
   537 IMPORT_C int asn1PE_MsrAssistBTS (OSCTXT* pctxt, ASN1T_MsrAssistBTS* pvalue);
       
   538 
       
   539 IMPORT_C int asn1PD_MsrAssistBTS (OSCTXT* pctxt, ASN1T_MsrAssistBTS* pvalue);
       
   540 
       
   541 IMPORT_C void asn1Print_MsrAssistBTS
       
   542    (const char* name, ASN1T_MsrAssistBTS* pvalue);
       
   543 
       
   544 /**************************************************************/
       
   545 /*                                                            */
       
   546 /*  SeqOfMsrAssistBTS                                         */
       
   547 /*                                                            */
       
   548 /**************************************************************/
       
   549 
       
   550 #define TV_SeqOfMsrAssistBTS	(TM_UNIV|TM_CONS|16)
       
   551 
       
   552 /* List of ASN1T_MsrAssistBTS */
       
   553 typedef ASN1TSeqOfList ASN1T_SeqOfMsrAssistBTS;
       
   554 
       
   555 class ASN1C_SeqOfMsrAssistBTS :
       
   556 public ASN1CSeqOfList
       
   557 {
       
   558 protected:
       
   559    ASN1T_SeqOfMsrAssistBTS& msgData;
       
   560 public:
       
   561    IMPORT_C ASN1C_SeqOfMsrAssistBTS (ASN1T_SeqOfMsrAssistBTS& data);
       
   562    IMPORT_C ASN1C_SeqOfMsrAssistBTS (OSRTMessageBufferIF& msgBuf
       
   563       , ASN1T_SeqOfMsrAssistBTS& data);
       
   564    ASN1C_SeqOfMsrAssistBTS (ASN1CType& ccobj, ASN1T_SeqOfMsrAssistBTS& data);
       
   565    IMPORT_C ASN1C_SeqOfMsrAssistBTS (OSRTContext &context, ASN1T_SeqOfMsrAssistBTS& data
       
   566       );
       
   567    void Append (ASN1T_MsrAssistBTS* elem);
       
   568    ASN1T_MsrAssistBTS* NewElement ();
       
   569 } ;
       
   570 
       
   571 IMPORT_C int asn1PE_SeqOfMsrAssistBTS (OSCTXT* pctxt, ASN1T_SeqOfMsrAssistBTS* pvalue);
       
   572 
       
   573 IMPORT_C int asn1PD_SeqOfMsrAssistBTS (OSCTXT* pctxt, ASN1T_SeqOfMsrAssistBTS* pvalue);
       
   574 
       
   575 IMPORT_C void asn1Print_SeqOfMsrAssistBTS
       
   576    (const char* name, ASN1T_SeqOfMsrAssistBTS* pvalue);
       
   577 
       
   578 IMPORT_C void asn1Free_SeqOfMsrAssistBTS (OSCTXT *pctxt, ASN1T_SeqOfMsrAssistBTS* pvalue);
       
   579 
       
   580 /**************************************************************/
       
   581 /*                                                            */
       
   582 /*  MsrAssistData                                             */
       
   583 /*                                                            */
       
   584 /**************************************************************/
       
   585 
       
   586 #define TV_MsrAssistData	(TM_UNIV|TM_CONS|16)
       
   587 
       
   588 struct ASN1T_MsrAssistData {
       
   589    ASN1T_SeqOfMsrAssistBTS msrAssistList;
       
   590    IMPORT_C ASN1T_MsrAssistData ();
       
   591 } ;
       
   592 
       
   593 IMPORT_C int asn1PE_MsrAssistData (OSCTXT* pctxt, ASN1T_MsrAssistData* pvalue);
       
   594 
       
   595 IMPORT_C int asn1PD_MsrAssistData (OSCTXT* pctxt, ASN1T_MsrAssistData* pvalue);
       
   596 
       
   597 IMPORT_C void asn1Print_MsrAssistData
       
   598    (const char* name, ASN1T_MsrAssistData* pvalue);
       
   599 
       
   600 IMPORT_C void asn1Free_MsrAssistData (OSCTXT *pctxt, ASN1T_MsrAssistData* pvalue);
       
   601 
       
   602 /**************************************************************/
       
   603 /*                                                            */
       
   604 /*  AssistBTSData                                             */
       
   605 /*                                                            */
       
   606 /**************************************************************/
       
   607 
       
   608 #define TV_AssistBTSData	(TM_UNIV|TM_CONS|16)
       
   609 
       
   610 struct ASN1T_AssistBTSData {
       
   611    struct {
       
   612       unsigned calcAssistanceBTSPresent : 1;
       
   613    } m;
       
   614    ASN1T_BSIC bsic;
       
   615    ASN1T_MultiFrameOffset multiFrameOffset;
       
   616    ASN1T_TimeSlotScheme timeSlotScheme;
       
   617    ASN1T_RoughRTD roughRTD;
       
   618    ASN1T_CalcAssistanceBTS calcAssistanceBTS;
       
   619    IMPORT_C ASN1T_AssistBTSData ();
       
   620 } ;
       
   621 
       
   622 IMPORT_C int asn1PE_AssistBTSData (OSCTXT* pctxt, ASN1T_AssistBTSData* pvalue);
       
   623 
       
   624 IMPORT_C int asn1PD_AssistBTSData (OSCTXT* pctxt, ASN1T_AssistBTSData* pvalue);
       
   625 
       
   626 IMPORT_C void asn1Print_AssistBTSData
       
   627    (const char* name, ASN1T_AssistBTSData* pvalue);
       
   628 
       
   629 /**************************************************************/
       
   630 /*                                                            */
       
   631 /*  SystemInfoAssistBTS                                       */
       
   632 /*                                                            */
       
   633 /**************************************************************/
       
   634 
       
   635 /* Choice tag constants */
       
   636 
       
   637 #define T_SystemInfoAssistBTS_notPresent 1
       
   638 #define T_SystemInfoAssistBTS_present   2
       
   639 
       
   640 struct ASN1T_SystemInfoAssistBTS {
       
   641    int t;
       
   642    union {
       
   643       /* t = 1 */
       
   644       /* t = 2 */
       
   645       ASN1T_AssistBTSData *present;
       
   646    } u;
       
   647 } ;
       
   648 
       
   649 IMPORT_C int asn1PE_SystemInfoAssistBTS (OSCTXT* pctxt, ASN1T_SystemInfoAssistBTS* pvalue);
       
   650 
       
   651 IMPORT_C int asn1PD_SystemInfoAssistBTS (OSCTXT* pctxt, ASN1T_SystemInfoAssistBTS* pvalue);
       
   652 
       
   653 IMPORT_C void asn1Print_SystemInfoAssistBTS
       
   654    (const char* name, ASN1T_SystemInfoAssistBTS* pvalue);
       
   655 
       
   656 IMPORT_C void asn1Free_SystemInfoAssistBTS (OSCTXT *pctxt, ASN1T_SystemInfoAssistBTS* pvalue);
       
   657 
       
   658 /**************************************************************/
       
   659 /*                                                            */
       
   660 /*  SeqOfSystemInfoAssistBTS                                  */
       
   661 /*                                                            */
       
   662 /**************************************************************/
       
   663 
       
   664 #define TV_SeqOfSystemInfoAssistBTS	(TM_UNIV|TM_CONS|16)
       
   665 
       
   666 /* List of ASN1T_SystemInfoAssistBTS */
       
   667 typedef ASN1TSeqOfList ASN1T_SeqOfSystemInfoAssistBTS;
       
   668 
       
   669 class ASN1C_SeqOfSystemInfoAssistBTS :
       
   670 public ASN1CSeqOfList
       
   671 {
       
   672 protected:
       
   673    ASN1T_SeqOfSystemInfoAssistBTS& msgData;
       
   674 public:
       
   675    IMPORT_C ASN1C_SeqOfSystemInfoAssistBTS (ASN1T_SeqOfSystemInfoAssistBTS& data);
       
   676    IMPORT_C ASN1C_SeqOfSystemInfoAssistBTS (OSRTMessageBufferIF& msgBuf
       
   677       , ASN1T_SeqOfSystemInfoAssistBTS& data);
       
   678    ASN1C_SeqOfSystemInfoAssistBTS (ASN1CType& ccobj, ASN1T_SeqOfSystemInfoAssistBTS& data);
       
   679    IMPORT_C ASN1C_SeqOfSystemInfoAssistBTS (OSRTContext &context
       
   680       , ASN1T_SeqOfSystemInfoAssistBTS& data);
       
   681    void Append (ASN1T_SystemInfoAssistBTS* elem);
       
   682    ASN1T_SystemInfoAssistBTS* NewElement ();
       
   683 } ;
       
   684 
       
   685 IMPORT_C int asn1PE_SeqOfSystemInfoAssistBTS (OSCTXT* pctxt, ASN1T_SeqOfSystemInfoAssistBTS* pvalue);
       
   686 
       
   687 IMPORT_C int asn1PD_SeqOfSystemInfoAssistBTS (OSCTXT* pctxt, ASN1T_SeqOfSystemInfoAssistBTS* pvalue);
       
   688 
       
   689 IMPORT_C void asn1Print_SeqOfSystemInfoAssistBTS
       
   690    (const char* name, ASN1T_SeqOfSystemInfoAssistBTS* pvalue);
       
   691 
       
   692 IMPORT_C void asn1Free_SeqOfSystemInfoAssistBTS (OSCTXT *pctxt, ASN1T_SeqOfSystemInfoAssistBTS* pvalue);
       
   693 
       
   694 /**************************************************************/
       
   695 /*                                                            */
       
   696 /*  SystemInfoAssistData                                      */
       
   697 /*                                                            */
       
   698 /**************************************************************/
       
   699 
       
   700 #define TV_SystemInfoAssistData	(TM_UNIV|TM_CONS|16)
       
   701 
       
   702 struct ASN1T_SystemInfoAssistData {
       
   703    ASN1T_SeqOfSystemInfoAssistBTS systemInfoAssistList;
       
   704    IMPORT_C ASN1T_SystemInfoAssistData ();
       
   705 } ;
       
   706 
       
   707 IMPORT_C int asn1PE_SystemInfoAssistData (OSCTXT* pctxt, ASN1T_SystemInfoAssistData* pvalue);
       
   708 
       
   709 IMPORT_C int asn1PD_SystemInfoAssistData (OSCTXT* pctxt, ASN1T_SystemInfoAssistData* pvalue);
       
   710 
       
   711 IMPORT_C void asn1Print_SystemInfoAssistData
       
   712    (const char* name, ASN1T_SystemInfoAssistData* pvalue);
       
   713 
       
   714 IMPORT_C void asn1Free_SystemInfoAssistData (OSCTXT *pctxt, ASN1T_SystemInfoAssistData* pvalue);
       
   715 
       
   716 /**************************************************************/
       
   717 /*                                                            */
       
   718 /*  GPSTOW23b                                                 */
       
   719 /*                                                            */
       
   720 /**************************************************************/
       
   721 
       
   722 #define TV_GPSTOW23b	(TM_UNIV|TM_PRIM|2)
       
   723 
       
   724 typedef OSUINT32 ASN1T_GPSTOW23b;
       
   725 
       
   726 IMPORT_C int asn1PE_GPSTOW23b (OSCTXT* pctxt, ASN1T_GPSTOW23b value);
       
   727 
       
   728 IMPORT_C int asn1PD_GPSTOW23b (OSCTXT* pctxt, ASN1T_GPSTOW23b* pvalue);
       
   729 
       
   730 IMPORT_C void asn1Print_GPSTOW23b
       
   731    (const char* name, ASN1T_GPSTOW23b* pvalue);
       
   732 
       
   733 /**************************************************************/
       
   734 /*                                                            */
       
   735 /*  GPSWeek                                                   */
       
   736 /*                                                            */
       
   737 /**************************************************************/
       
   738 
       
   739 #define TV_GPSWeek	(TM_UNIV|TM_PRIM|2)
       
   740 
       
   741 typedef OSUINT16 ASN1T_GPSWeek;
       
   742 
       
   743 IMPORT_C int asn1PE_GPSWeek (OSCTXT* pctxt, ASN1T_GPSWeek value);
       
   744 
       
   745 IMPORT_C int asn1PD_GPSWeek (OSCTXT* pctxt, ASN1T_GPSWeek* pvalue);
       
   746 
       
   747 IMPORT_C void asn1Print_GPSWeek
       
   748    (const char* name, ASN1T_GPSWeek* pvalue);
       
   749 
       
   750 /**************************************************************/
       
   751 /*                                                            */
       
   752 /*  GPSTime                                                   */
       
   753 /*                                                            */
       
   754 /**************************************************************/
       
   755 
       
   756 #define TV_GPSTime	(TM_UNIV|TM_CONS|16)
       
   757 
       
   758 struct ASN1T_GPSTime {
       
   759    ASN1T_GPSTOW23b gpsTOW23b;
       
   760    ASN1T_GPSWeek gpsWeek;
       
   761    IMPORT_C ASN1T_GPSTime ();
       
   762 } ;
       
   763 
       
   764 IMPORT_C int asn1PE_GPSTime (OSCTXT* pctxt, ASN1T_GPSTime* pvalue);
       
   765 
       
   766 IMPORT_C int asn1PD_GPSTime (OSCTXT* pctxt, ASN1T_GPSTime* pvalue);
       
   767 
       
   768 IMPORT_C void asn1Print_GPSTime
       
   769    (const char* name, ASN1T_GPSTime* pvalue);
       
   770 
       
   771 /**************************************************************/
       
   772 /*                                                            */
       
   773 /*  FrameNumber                                               */
       
   774 /*                                                            */
       
   775 /**************************************************************/
       
   776 
       
   777 #define TV_FrameNumber	(TM_UNIV|TM_PRIM|2)
       
   778 
       
   779 typedef OSUINT32 ASN1T_FrameNumber;
       
   780 
       
   781 IMPORT_C int asn1PE_FrameNumber (OSCTXT* pctxt, ASN1T_FrameNumber value);
       
   782 
       
   783 IMPORT_C int asn1PD_FrameNumber (OSCTXT* pctxt, ASN1T_FrameNumber* pvalue);
       
   784 
       
   785 IMPORT_C void asn1Print_FrameNumber
       
   786    (const char* name, ASN1T_FrameNumber* pvalue);
       
   787 
       
   788 /**************************************************************/
       
   789 /*                                                            */
       
   790 /*  TimeSlot                                                  */
       
   791 /*                                                            */
       
   792 /**************************************************************/
       
   793 
       
   794 #define TV_TimeSlot	(TM_UNIV|TM_PRIM|2)
       
   795 
       
   796 typedef OSUINT8 ASN1T_TimeSlot;
       
   797 
       
   798 IMPORT_C int asn1PE_TimeSlot (OSCTXT* pctxt, ASN1T_TimeSlot value);
       
   799 
       
   800 IMPORT_C int asn1PD_TimeSlot (OSCTXT* pctxt, ASN1T_TimeSlot* pvalue);
       
   801 
       
   802 IMPORT_C void asn1Print_TimeSlot
       
   803    (const char* name, ASN1T_TimeSlot* pvalue);
       
   804 
       
   805 /**************************************************************/
       
   806 /*                                                            */
       
   807 /*  BitNumber                                                 */
       
   808 /*                                                            */
       
   809 /**************************************************************/
       
   810 
       
   811 #define TV_BitNumber	(TM_UNIV|TM_PRIM|2)
       
   812 
       
   813 typedef OSUINT8 ASN1T_BitNumber;
       
   814 
       
   815 IMPORT_C int asn1PE_BitNumber (OSCTXT* pctxt, ASN1T_BitNumber value);
       
   816 
       
   817 IMPORT_C int asn1PD_BitNumber (OSCTXT* pctxt, ASN1T_BitNumber* pvalue);
       
   818 
       
   819 IMPORT_C void asn1Print_BitNumber
       
   820    (const char* name, ASN1T_BitNumber* pvalue);
       
   821 
       
   822 /**************************************************************/
       
   823 /*                                                            */
       
   824 /*  GSMTime                                                   */
       
   825 /*                                                            */
       
   826 /**************************************************************/
       
   827 
       
   828 #define TV_GSMTime	(TM_UNIV|TM_CONS|16)
       
   829 
       
   830 struct ASN1T_GSMTime {
       
   831    ASN1T_BCCHCarrier bcchCarrier;
       
   832    ASN1T_BSIC bsic;
       
   833    ASN1T_FrameNumber frameNumber;
       
   834    ASN1T_TimeSlot timeSlot;
       
   835    ASN1T_BitNumber bitNumber;
       
   836    IMPORT_C ASN1T_GSMTime ();
       
   837 } ;
       
   838 
       
   839 IMPORT_C int asn1PE_GSMTime (OSCTXT* pctxt, ASN1T_GSMTime* pvalue);
       
   840 
       
   841 IMPORT_C int asn1PD_GSMTime (OSCTXT* pctxt, ASN1T_GSMTime* pvalue);
       
   842 
       
   843 IMPORT_C void asn1Print_GSMTime
       
   844    (const char* name, ASN1T_GSMTime* pvalue);
       
   845 
       
   846 /**************************************************************/
       
   847 /*                                                            */
       
   848 /*  SatelliteID                                               */
       
   849 /*                                                            */
       
   850 /**************************************************************/
       
   851 
       
   852 #define TV_SatelliteID	(TM_UNIV|TM_PRIM|2)
       
   853 
       
   854 typedef OSUINT8 ASN1T_SatelliteID;
       
   855 
       
   856 IMPORT_C int asn1PE_SatelliteID (OSCTXT* pctxt, ASN1T_SatelliteID value);
       
   857 
       
   858 IMPORT_C int asn1PD_SatelliteID (OSCTXT* pctxt, ASN1T_SatelliteID* pvalue);
       
   859 
       
   860 IMPORT_C void asn1Print_SatelliteID
       
   861    (const char* name, ASN1T_SatelliteID* pvalue);
       
   862 
       
   863 /**************************************************************/
       
   864 /*                                                            */
       
   865 /*  TLMWord                                                   */
       
   866 /*                                                            */
       
   867 /**************************************************************/
       
   868 
       
   869 #define TV_TLMWord	(TM_UNIV|TM_PRIM|2)
       
   870 
       
   871 typedef OSUINT16 ASN1T_TLMWord;
       
   872 
       
   873 IMPORT_C int asn1PE_TLMWord (OSCTXT* pctxt, ASN1T_TLMWord value);
       
   874 
       
   875 IMPORT_C int asn1PD_TLMWord (OSCTXT* pctxt, ASN1T_TLMWord* pvalue);
       
   876 
       
   877 IMPORT_C void asn1Print_TLMWord
       
   878    (const char* name, ASN1T_TLMWord* pvalue);
       
   879 
       
   880 /**************************************************************/
       
   881 /*                                                            */
       
   882 /*  AntiSpoofFlag                                             */
       
   883 /*                                                            */
       
   884 /**************************************************************/
       
   885 
       
   886 #define TV_AntiSpoofFlag	(TM_UNIV|TM_PRIM|2)
       
   887 
       
   888 typedef OSUINT8 ASN1T_AntiSpoofFlag;
       
   889 
       
   890 IMPORT_C int asn1PE_AntiSpoofFlag (OSCTXT* pctxt, ASN1T_AntiSpoofFlag value);
       
   891 
       
   892 IMPORT_C int asn1PD_AntiSpoofFlag (OSCTXT* pctxt, ASN1T_AntiSpoofFlag* pvalue);
       
   893 
       
   894 IMPORT_C void asn1Print_AntiSpoofFlag
       
   895    (const char* name, ASN1T_AntiSpoofFlag* pvalue);
       
   896 
       
   897 /**************************************************************/
       
   898 /*                                                            */
       
   899 /*  AlertFlag                                                 */
       
   900 /*                                                            */
       
   901 /**************************************************************/
       
   902 
       
   903 #define TV_AlertFlag	(TM_UNIV|TM_PRIM|2)
       
   904 
       
   905 typedef OSUINT8 ASN1T_AlertFlag;
       
   906 
       
   907 IMPORT_C int asn1PE_AlertFlag (OSCTXT* pctxt, ASN1T_AlertFlag value);
       
   908 
       
   909 IMPORT_C int asn1PD_AlertFlag (OSCTXT* pctxt, ASN1T_AlertFlag* pvalue);
       
   910 
       
   911 IMPORT_C void asn1Print_AlertFlag
       
   912    (const char* name, ASN1T_AlertFlag* pvalue);
       
   913 
       
   914 /**************************************************************/
       
   915 /*                                                            */
       
   916 /*  TLMReservedBits                                           */
       
   917 /*                                                            */
       
   918 /**************************************************************/
       
   919 
       
   920 #define TV_TLMReservedBits	(TM_UNIV|TM_PRIM|2)
       
   921 
       
   922 typedef OSUINT8 ASN1T_TLMReservedBits;
       
   923 
       
   924 IMPORT_C int asn1PE_TLMReservedBits (OSCTXT* pctxt, ASN1T_TLMReservedBits value);
       
   925 
       
   926 IMPORT_C int asn1PD_TLMReservedBits (OSCTXT* pctxt, ASN1T_TLMReservedBits* pvalue);
       
   927 
       
   928 IMPORT_C void asn1Print_TLMReservedBits
       
   929    (const char* name, ASN1T_TLMReservedBits* pvalue);
       
   930 
       
   931 /**************************************************************/
       
   932 /*                                                            */
       
   933 /*  GPSTOWAssistElement                                       */
       
   934 /*                                                            */
       
   935 /**************************************************************/
       
   936 
       
   937 #define TV_GPSTOWAssistElement	(TM_UNIV|TM_CONS|16)
       
   938 
       
   939 struct ASN1T_GPSTOWAssistElement {
       
   940    ASN1T_SatelliteID satelliteID;
       
   941    ASN1T_TLMWord tlmWord;
       
   942    ASN1T_AntiSpoofFlag antiSpoof;
       
   943    ASN1T_AlertFlag alert;
       
   944    ASN1T_TLMReservedBits tlmRsvdBits;
       
   945    IMPORT_C ASN1T_GPSTOWAssistElement ();
       
   946 } ;
       
   947 
       
   948 IMPORT_C int asn1PE_GPSTOWAssistElement (OSCTXT* pctxt, ASN1T_GPSTOWAssistElement* pvalue);
       
   949 
       
   950 IMPORT_C int asn1PD_GPSTOWAssistElement (OSCTXT* pctxt, ASN1T_GPSTOWAssistElement* pvalue);
       
   951 
       
   952 IMPORT_C void asn1Print_GPSTOWAssistElement
       
   953    (const char* name, ASN1T_GPSTOWAssistElement* pvalue);
       
   954 
       
   955 /**************************************************************/
       
   956 /*                                                            */
       
   957 /*  GPSTOWAssist                                              */
       
   958 /*                                                            */
       
   959 /**************************************************************/
       
   960 
       
   961 #define TV_GPSTOWAssist	(TM_UNIV|TM_CONS|16)
       
   962 
       
   963 /* List of ASN1T_GPSTOWAssistElement */
       
   964 typedef ASN1TSeqOfList ASN1T_GPSTOWAssist;
       
   965 
       
   966 class ASN1C_GPSTOWAssist :
       
   967 public ASN1CSeqOfList
       
   968 {
       
   969 protected:
       
   970    ASN1T_GPSTOWAssist& msgData;
       
   971 public:
       
   972    IMPORT_C ASN1C_GPSTOWAssist (ASN1T_GPSTOWAssist& data);
       
   973    IMPORT_C ASN1C_GPSTOWAssist (OSRTMessageBufferIF& msgBuf, ASN1T_GPSTOWAssist& data);
       
   974    ASN1C_GPSTOWAssist (ASN1CType& ccobj, ASN1T_GPSTOWAssist& data);
       
   975    IMPORT_C ASN1C_GPSTOWAssist (OSRTContext &context, ASN1T_GPSTOWAssist& data);
       
   976    void Append (ASN1T_GPSTOWAssistElement* elem);
       
   977    ASN1T_GPSTOWAssistElement* NewElement ();
       
   978 } ;
       
   979 
       
   980 IMPORT_C int asn1PE_GPSTOWAssist (OSCTXT* pctxt, ASN1T_GPSTOWAssist* pvalue);
       
   981 
       
   982 IMPORT_C int asn1PD_GPSTOWAssist (OSCTXT* pctxt, ASN1T_GPSTOWAssist* pvalue);
       
   983 
       
   984 IMPORT_C void asn1Print_GPSTOWAssist
       
   985    (const char* name, ASN1T_GPSTOWAssist* pvalue);
       
   986 
       
   987 IMPORT_C void asn1Free_GPSTOWAssist (OSCTXT *pctxt, ASN1T_GPSTOWAssist* pvalue);
       
   988 
       
   989 /**************************************************************/
       
   990 /*                                                            */
       
   991 /*  ReferenceTime                                             */
       
   992 /*                                                            */
       
   993 /**************************************************************/
       
   994 
       
   995 #define TV_ReferenceTime	(TM_UNIV|TM_CONS|16)
       
   996 
       
   997 struct ASN1T_ReferenceTime {
       
   998    struct {
       
   999       unsigned gsmTimePresent : 1;
       
  1000       unsigned gpsTowAssistPresent : 1;
       
  1001    } m;
       
  1002    ASN1T_GPSTime gpsTime;
       
  1003    ASN1T_GSMTime gsmTime;
       
  1004    ASN1T_GPSTOWAssist gpsTowAssist;
       
  1005    IMPORT_C ASN1T_ReferenceTime ();
       
  1006 } ;
       
  1007 
       
  1008 IMPORT_C int asn1PE_ReferenceTime (OSCTXT* pctxt, ASN1T_ReferenceTime* pvalue);
       
  1009 
       
  1010 IMPORT_C int asn1PD_ReferenceTime (OSCTXT* pctxt, ASN1T_ReferenceTime* pvalue);
       
  1011 
       
  1012 IMPORT_C void asn1Print_ReferenceTime
       
  1013    (const char* name, ASN1T_ReferenceTime* pvalue);
       
  1014 
       
  1015 IMPORT_C void asn1Free_ReferenceTime (OSCTXT *pctxt, ASN1T_ReferenceTime* pvalue);
       
  1016 
       
  1017 /**************************************************************/
       
  1018 /*                                                            */
       
  1019 /*  RefLocation                                               */
       
  1020 /*                                                            */
       
  1021 /**************************************************************/
       
  1022 
       
  1023 #define TV_RefLocation	(TM_UNIV|TM_CONS|16)
       
  1024 
       
  1025 struct ASN1T_RefLocation {
       
  1026    ASN1T_Ext_GeographicalInformation threeDLocation;
       
  1027    IMPORT_C ASN1T_RefLocation ();
       
  1028 } ;
       
  1029 
       
  1030 IMPORT_C int asn1PE_RefLocation (OSCTXT* pctxt, ASN1T_RefLocation* pvalue);
       
  1031 
       
  1032 IMPORT_C int asn1PD_RefLocation (OSCTXT* pctxt, ASN1T_RefLocation* pvalue);
       
  1033 
       
  1034 IMPORT_C void asn1Print_RefLocation
       
  1035    (const char* name, ASN1T_RefLocation* pvalue);
       
  1036 
       
  1037 /**************************************************************/
       
  1038 /*                                                            */
       
  1039 /*  SatElement                                                */
       
  1040 /*                                                            */
       
  1041 /**************************************************************/
       
  1042 
       
  1043 #define TV_SatElement	(TM_UNIV|TM_CONS|16)
       
  1044 
       
  1045 struct ASN1T_SatElement {
       
  1046    ASN1T_SatelliteID satelliteID;
       
  1047    OSUINT8 iode;
       
  1048    OSUINT8 udre;
       
  1049    OSINT16 pseudoRangeCor;
       
  1050    OSINT8 rangeRateCor;
       
  1051    OSINT8 deltaPseudoRangeCor2;
       
  1052    OSINT8 deltaRangeRateCor2;
       
  1053    OSINT8 deltaPseudoRangeCor3;
       
  1054    OSINT8 deltaRangeRateCor3;
       
  1055    IMPORT_C ASN1T_SatElement ();
       
  1056 } ;
       
  1057 
       
  1058 IMPORT_C int asn1PE_SatElement (OSCTXT* pctxt, ASN1T_SatElement* pvalue);
       
  1059 
       
  1060 IMPORT_C int asn1PD_SatElement (OSCTXT* pctxt, ASN1T_SatElement* pvalue);
       
  1061 
       
  1062 IMPORT_C void asn1Print_SatElement
       
  1063    (const char* name, ASN1T_SatElement* pvalue);
       
  1064 
       
  1065 /**************************************************************/
       
  1066 /*                                                            */
       
  1067 /*  SeqOfSatElement                                           */
       
  1068 /*                                                            */
       
  1069 /**************************************************************/
       
  1070 
       
  1071 #define TV_SeqOfSatElement	(TM_UNIV|TM_CONS|16)
       
  1072 
       
  1073 /* List of ASN1T_SatElement */
       
  1074 typedef ASN1TSeqOfList ASN1T_SeqOfSatElement;
       
  1075 
       
  1076 class ASN1C_SeqOfSatElement :
       
  1077 public ASN1CSeqOfList
       
  1078 {
       
  1079 protected:
       
  1080    ASN1T_SeqOfSatElement& msgData;
       
  1081 public:
       
  1082    IMPORT_C ASN1C_SeqOfSatElement (ASN1T_SeqOfSatElement& data);
       
  1083    IMPORT_C ASN1C_SeqOfSatElement (OSRTMessageBufferIF& msgBuf
       
  1084       , ASN1T_SeqOfSatElement& data);
       
  1085    ASN1C_SeqOfSatElement (ASN1CType& ccobj, ASN1T_SeqOfSatElement& data);
       
  1086    IMPORT_C ASN1C_SeqOfSatElement (OSRTContext &context, ASN1T_SeqOfSatElement& data);
       
  1087    void Append (ASN1T_SatElement* elem);
       
  1088    ASN1T_SatElement* NewElement ();
       
  1089 } ;
       
  1090 
       
  1091 IMPORT_C int asn1PE_SeqOfSatElement (OSCTXT* pctxt, ASN1T_SeqOfSatElement* pvalue);
       
  1092 
       
  1093 IMPORT_C int asn1PD_SeqOfSatElement (OSCTXT* pctxt, ASN1T_SeqOfSatElement* pvalue);
       
  1094 
       
  1095 IMPORT_C void asn1Print_SeqOfSatElement
       
  1096    (const char* name, ASN1T_SeqOfSatElement* pvalue);
       
  1097 
       
  1098 IMPORT_C void asn1Free_SeqOfSatElement (OSCTXT *pctxt, ASN1T_SeqOfSatElement* pvalue);
       
  1099 
       
  1100 /**************************************************************/
       
  1101 /*                                                            */
       
  1102 /*  DGPSCorrections                                           */
       
  1103 /*                                                            */
       
  1104 /**************************************************************/
       
  1105 
       
  1106 #define TV_DGPSCorrections	(TM_UNIV|TM_CONS|16)
       
  1107 
       
  1108 struct ASN1T_DGPSCorrections {
       
  1109    OSUINT32 gpsTOW;
       
  1110    OSUINT8 status;
       
  1111    ASN1T_SeqOfSatElement satList;
       
  1112    IMPORT_C ASN1T_DGPSCorrections ();
       
  1113 } ;
       
  1114 
       
  1115 IMPORT_C int asn1PE_DGPSCorrections (OSCTXT* pctxt, ASN1T_DGPSCorrections* pvalue);
       
  1116 
       
  1117 IMPORT_C int asn1PD_DGPSCorrections (OSCTXT* pctxt, ASN1T_DGPSCorrections* pvalue);
       
  1118 
       
  1119 IMPORT_C void asn1Print_DGPSCorrections
       
  1120    (const char* name, ASN1T_DGPSCorrections* pvalue);
       
  1121 
       
  1122 IMPORT_C void asn1Free_DGPSCorrections (OSCTXT *pctxt, ASN1T_DGPSCorrections* pvalue);
       
  1123 
       
  1124 /**************************************************************/
       
  1125 /*                                                            */
       
  1126 /*  EphemerisSubframe1Reserved                                */
       
  1127 /*                                                            */
       
  1128 /**************************************************************/
       
  1129 
       
  1130 #define TV_EphemerisSubframe1Reserved	(TM_UNIV|TM_CONS|16)
       
  1131 
       
  1132 struct ASN1T_EphemerisSubframe1Reserved {
       
  1133    OSUINT32 reserved1;
       
  1134    OSUINT32 reserved2;
       
  1135    OSUINT32 reserved3;
       
  1136    OSUINT16 reserved4;
       
  1137    IMPORT_C ASN1T_EphemerisSubframe1Reserved ();
       
  1138 } ;
       
  1139 
       
  1140 IMPORT_C int asn1PE_EphemerisSubframe1Reserved (OSCTXT* pctxt, ASN1T_EphemerisSubframe1Reserved* pvalue);
       
  1141 
       
  1142 IMPORT_C int asn1PD_EphemerisSubframe1Reserved (OSCTXT* pctxt, ASN1T_EphemerisSubframe1Reserved* pvalue);
       
  1143 
       
  1144 IMPORT_C void asn1Print_EphemerisSubframe1Reserved
       
  1145    (const char* name, ASN1T_EphemerisSubframe1Reserved* pvalue);
       
  1146 
       
  1147 /**************************************************************/
       
  1148 /*                                                            */
       
  1149 /*  UncompressedEphemeris                                     */
       
  1150 /*                                                            */
       
  1151 /**************************************************************/
       
  1152 
       
  1153 #define TV_UncompressedEphemeris	(TM_UNIV|TM_CONS|16)
       
  1154 
       
  1155 struct ASN1T_UncompressedEphemeris {
       
  1156    OSUINT8 ephemCodeOnL2;
       
  1157    OSUINT8 ephemURA;
       
  1158    OSUINT8 ephemSVhealth;
       
  1159    OSUINT16 ephemIODC;
       
  1160    OSUINT8 ephemL2Pflag;
       
  1161    ASN1T_EphemerisSubframe1Reserved ephemSF1Rsvd;
       
  1162    OSINT8 ephemTgd;
       
  1163    OSUINT16 ephemToc;
       
  1164    OSINT8 ephemAF2;
       
  1165    OSINT16 ephemAF1;
       
  1166    OSINT32 ephemAF0;
       
  1167    OSINT16 ephemCrs;
       
  1168    OSINT16 ephemDeltaN;
       
  1169    OSINT32 ephemM0;
       
  1170    OSINT16 ephemCuc;
       
  1171    OSUINT32 ephemE;
       
  1172    OSINT16 ephemCus;
       
  1173    OSUINT32 ephemAPowerHalf;
       
  1174    OSUINT16 ephemToe;
       
  1175    OSUINT8 ephemFitFlag;
       
  1176    OSUINT8 ephemAODA;
       
  1177    OSINT16 ephemCic;
       
  1178    OSINT32 ephemOmegaA0;
       
  1179    OSINT16 ephemCis;
       
  1180    OSINT32 ephemI0;
       
  1181    OSINT16 ephemCrc;
       
  1182    OSINT32 ephemW;
       
  1183    OSINT32 ephemOmegaADot;
       
  1184    OSINT16 ephemIDot;
       
  1185    IMPORT_C ASN1T_UncompressedEphemeris ();
       
  1186 } ;
       
  1187 
       
  1188 IMPORT_C int asn1PE_UncompressedEphemeris (OSCTXT* pctxt, ASN1T_UncompressedEphemeris* pvalue);
       
  1189 
       
  1190 IMPORT_C int asn1PD_UncompressedEphemeris (OSCTXT* pctxt, ASN1T_UncompressedEphemeris* pvalue);
       
  1191 
       
  1192 IMPORT_C void asn1Print_UncompressedEphemeris
       
  1193    (const char* name, ASN1T_UncompressedEphemeris* pvalue);
       
  1194 
       
  1195 /**************************************************************/
       
  1196 /*                                                            */
       
  1197 /*  SatStatus                                                 */
       
  1198 /*                                                            */
       
  1199 /**************************************************************/
       
  1200 
       
  1201 /* Choice tag constants */
       
  1202 
       
  1203 #define T_SatStatus_newSatelliteAndModelUC 1
       
  1204 #define T_SatStatus_oldSatelliteAndModel 2
       
  1205 #define T_SatStatus_newNaviModelUC      3
       
  1206 #define T_SatStatus_extElem1            4
       
  1207 
       
  1208 struct ASN1T_SatStatus {
       
  1209    int t;
       
  1210    union {
       
  1211       /* t = 1 */
       
  1212       ASN1T_UncompressedEphemeris *newSatelliteAndModelUC;
       
  1213       /* t = 2 */
       
  1214       /* t = 3 */
       
  1215       ASN1T_UncompressedEphemeris *newNaviModelUC;
       
  1216       /* t = 4 */
       
  1217    } u;
       
  1218 } ;
       
  1219 
       
  1220 IMPORT_C int asn1PE_SatStatus (OSCTXT* pctxt, ASN1T_SatStatus* pvalue);
       
  1221 
       
  1222 IMPORT_C int asn1PD_SatStatus (OSCTXT* pctxt, ASN1T_SatStatus* pvalue);
       
  1223 
       
  1224 IMPORT_C void asn1Print_SatStatus
       
  1225    (const char* name, ASN1T_SatStatus* pvalue);
       
  1226 
       
  1227 IMPORT_C void asn1Free_SatStatus (OSCTXT *pctxt, ASN1T_SatStatus* pvalue);
       
  1228 
       
  1229 /**************************************************************/
       
  1230 /*                                                            */
       
  1231 /*  NavModelElement                                           */
       
  1232 /*                                                            */
       
  1233 /**************************************************************/
       
  1234 
       
  1235 #define TV_NavModelElement	(TM_UNIV|TM_CONS|16)
       
  1236 
       
  1237 struct ASN1T_NavModelElement {
       
  1238    ASN1T_SatelliteID satelliteID;
       
  1239    ASN1T_SatStatus satStatus;
       
  1240    IMPORT_C ASN1T_NavModelElement ();
       
  1241 } ;
       
  1242 
       
  1243 IMPORT_C int asn1PE_NavModelElement (OSCTXT* pctxt, ASN1T_NavModelElement* pvalue);
       
  1244 
       
  1245 IMPORT_C int asn1PD_NavModelElement (OSCTXT* pctxt, ASN1T_NavModelElement* pvalue);
       
  1246 
       
  1247 IMPORT_C void asn1Print_NavModelElement
       
  1248    (const char* name, ASN1T_NavModelElement* pvalue);
       
  1249 
       
  1250 IMPORT_C void asn1Free_NavModelElement (OSCTXT *pctxt, ASN1T_NavModelElement* pvalue);
       
  1251 
       
  1252 /**************************************************************/
       
  1253 /*                                                            */
       
  1254 /*  SeqOfNavModelElement                                      */
       
  1255 /*                                                            */
       
  1256 /**************************************************************/
       
  1257 
       
  1258 #define TV_SeqOfNavModelElement	(TM_UNIV|TM_CONS|16)
       
  1259 
       
  1260 /* List of ASN1T_NavModelElement */
       
  1261 typedef ASN1TSeqOfList ASN1T_SeqOfNavModelElement;
       
  1262 
       
  1263 class ASN1C_SeqOfNavModelElement :
       
  1264 public ASN1CSeqOfList
       
  1265 {
       
  1266 protected:
       
  1267    ASN1T_SeqOfNavModelElement& msgData;
       
  1268 public:
       
  1269    IMPORT_C ASN1C_SeqOfNavModelElement (ASN1T_SeqOfNavModelElement& data);
       
  1270    IMPORT_C ASN1C_SeqOfNavModelElement (OSRTMessageBufferIF& msgBuf
       
  1271       , ASN1T_SeqOfNavModelElement& data);
       
  1272    ASN1C_SeqOfNavModelElement (ASN1CType& ccobj, ASN1T_SeqOfNavModelElement& data);
       
  1273    IMPORT_C ASN1C_SeqOfNavModelElement (OSRTContext &context
       
  1274       , ASN1T_SeqOfNavModelElement& data);
       
  1275    void Append (ASN1T_NavModelElement* elem);
       
  1276    ASN1T_NavModelElement* NewElement ();
       
  1277 } ;
       
  1278 
       
  1279 IMPORT_C int asn1PE_SeqOfNavModelElement (OSCTXT* pctxt, ASN1T_SeqOfNavModelElement* pvalue);
       
  1280 
       
  1281 IMPORT_C int asn1PD_SeqOfNavModelElement (OSCTXT* pctxt, ASN1T_SeqOfNavModelElement* pvalue);
       
  1282 
       
  1283 IMPORT_C void asn1Print_SeqOfNavModelElement
       
  1284    (const char* name, ASN1T_SeqOfNavModelElement* pvalue);
       
  1285 
       
  1286 IMPORT_C void asn1Free_SeqOfNavModelElement (OSCTXT *pctxt, ASN1T_SeqOfNavModelElement* pvalue);
       
  1287 
       
  1288 /**************************************************************/
       
  1289 /*                                                            */
       
  1290 /*  NavigationModelRrlp                                       */
       
  1291 /*                                                            */
       
  1292 /**************************************************************/
       
  1293 
       
  1294 #define TV_NavigationModelRrlp	(TM_UNIV|TM_CONS|16)
       
  1295 
       
  1296 struct ASN1T_NavigationModelRrlp {
       
  1297    ASN1T_SeqOfNavModelElement navModelList;
       
  1298    IMPORT_C ASN1T_NavigationModelRrlp ();
       
  1299 } ;
       
  1300 
       
  1301 IMPORT_C int asn1PE_NavigationModelRrlp (OSCTXT* pctxt, ASN1T_NavigationModelRrlp* pvalue);
       
  1302 
       
  1303 IMPORT_C int asn1PD_NavigationModelRrlp (OSCTXT* pctxt, ASN1T_NavigationModelRrlp* pvalue);
       
  1304 
       
  1305 IMPORT_C void asn1Print_NavigationModelRrlp
       
  1306    (const char* name, ASN1T_NavigationModelRrlp* pvalue);
       
  1307 
       
  1308 IMPORT_C void asn1Free_NavigationModelRrlp (OSCTXT *pctxt, ASN1T_NavigationModelRrlp* pvalue);
       
  1309 
       
  1310 /**************************************************************/
       
  1311 /*                                                            */
       
  1312 /*  IonosphericModel                                          */
       
  1313 /*                                                            */
       
  1314 /**************************************************************/
       
  1315 
       
  1316 #define TV_IonosphericModel	(TM_UNIV|TM_CONS|16)
       
  1317 
       
  1318 struct ASN1T_IonosphericModel {
       
  1319    OSINT8 alfa0;
       
  1320    OSINT8 alfa1;
       
  1321    OSINT8 alfa2;
       
  1322    OSINT8 alfa3;
       
  1323    OSINT8 beta0;
       
  1324    OSINT8 beta1;
       
  1325    OSINT8 beta2;
       
  1326    OSINT8 beta3;
       
  1327    IMPORT_C ASN1T_IonosphericModel ();
       
  1328 } ;
       
  1329 
       
  1330 IMPORT_C int asn1PE_IonosphericModel (OSCTXT* pctxt, ASN1T_IonosphericModel* pvalue);
       
  1331 
       
  1332 IMPORT_C int asn1PD_IonosphericModel (OSCTXT* pctxt, ASN1T_IonosphericModel* pvalue);
       
  1333 
       
  1334 IMPORT_C void asn1Print_IonosphericModel
       
  1335    (const char* name, ASN1T_IonosphericModel* pvalue);
       
  1336 
       
  1337 /**************************************************************/
       
  1338 /*                                                            */
       
  1339 /*  UTCModel                                                  */
       
  1340 /*                                                            */
       
  1341 /**************************************************************/
       
  1342 
       
  1343 #define TV_UTCModel	(TM_UNIV|TM_CONS|16)
       
  1344 
       
  1345 struct ASN1T_UTCModel {
       
  1346    OSINT32 utcA1;
       
  1347    OSINT32 utcA0;
       
  1348    OSUINT8 utcTot;
       
  1349    OSUINT8 utcWNt;
       
  1350    OSINT8 utcDeltaTls;
       
  1351    OSUINT8 utcWNlsf;
       
  1352    OSINT8 utcDN;
       
  1353    OSINT8 utcDeltaTlsf;
       
  1354    IMPORT_C ASN1T_UTCModel ();
       
  1355 } ;
       
  1356 
       
  1357 IMPORT_C int asn1PE_UTCModel (OSCTXT* pctxt, ASN1T_UTCModel* pvalue);
       
  1358 
       
  1359 IMPORT_C int asn1PD_UTCModel (OSCTXT* pctxt, ASN1T_UTCModel* pvalue);
       
  1360 
       
  1361 IMPORT_C void asn1Print_UTCModel
       
  1362    (const char* name, ASN1T_UTCModel* pvalue);
       
  1363 
       
  1364 /**************************************************************/
       
  1365 /*                                                            */
       
  1366 /*  AlmanacElement                                            */
       
  1367 /*                                                            */
       
  1368 /**************************************************************/
       
  1369 
       
  1370 #define TV_AlmanacElement	(TM_UNIV|TM_CONS|16)
       
  1371 
       
  1372 struct ASN1T_AlmanacElement {
       
  1373    ASN1T_SatelliteID satelliteID;
       
  1374    OSUINT16 almanacE;
       
  1375    OSUINT8 alamanacToa;
       
  1376    OSINT16 almanacKsii;
       
  1377    OSINT16 almanacOmegaDot;
       
  1378    OSUINT8 almanacSVhealth;
       
  1379    OSUINT32 almanacAPowerHalf;
       
  1380    OSINT32 almanacOmega0;
       
  1381    OSINT32 almanacW;
       
  1382    OSINT32 almanacM0;
       
  1383    OSINT16 almanacAF0;
       
  1384    OSINT16 almanacAF1;
       
  1385    IMPORT_C ASN1T_AlmanacElement ();
       
  1386 } ;
       
  1387 
       
  1388 IMPORT_C int asn1PE_AlmanacElement (OSCTXT* pctxt, ASN1T_AlmanacElement* pvalue);
       
  1389 
       
  1390 IMPORT_C int asn1PD_AlmanacElement (OSCTXT* pctxt, ASN1T_AlmanacElement* pvalue);
       
  1391 
       
  1392 IMPORT_C void asn1Print_AlmanacElement
       
  1393    (const char* name, ASN1T_AlmanacElement* pvalue);
       
  1394 
       
  1395 /**************************************************************/
       
  1396 /*                                                            */
       
  1397 /*  SeqOfAlmanacElement                                       */
       
  1398 /*                                                            */
       
  1399 /**************************************************************/
       
  1400 
       
  1401 #define TV_SeqOfAlmanacElement	(TM_UNIV|TM_CONS|16)
       
  1402 
       
  1403 /* List of ASN1T_AlmanacElement */
       
  1404 typedef ASN1TSeqOfList ASN1T_SeqOfAlmanacElement;
       
  1405 
       
  1406 class ASN1C_SeqOfAlmanacElement :
       
  1407 public ASN1CSeqOfList
       
  1408 {
       
  1409 protected:
       
  1410    ASN1T_SeqOfAlmanacElement& msgData;
       
  1411 public:
       
  1412    IMPORT_C ASN1C_SeqOfAlmanacElement (ASN1T_SeqOfAlmanacElement& data);
       
  1413    IMPORT_C ASN1C_SeqOfAlmanacElement (OSRTMessageBufferIF& msgBuf
       
  1414       , ASN1T_SeqOfAlmanacElement& data);
       
  1415    ASN1C_SeqOfAlmanacElement (ASN1CType& ccobj, ASN1T_SeqOfAlmanacElement& data);
       
  1416    IMPORT_C ASN1C_SeqOfAlmanacElement (OSRTContext &context
       
  1417       , ASN1T_SeqOfAlmanacElement& data);
       
  1418    void Append (ASN1T_AlmanacElement* elem);
       
  1419    ASN1T_AlmanacElement* NewElement ();
       
  1420 } ;
       
  1421 
       
  1422 IMPORT_C int asn1PE_SeqOfAlmanacElement (OSCTXT* pctxt, ASN1T_SeqOfAlmanacElement* pvalue);
       
  1423 
       
  1424 IMPORT_C int asn1PD_SeqOfAlmanacElement (OSCTXT* pctxt, ASN1T_SeqOfAlmanacElement* pvalue);
       
  1425 
       
  1426 IMPORT_C void asn1Print_SeqOfAlmanacElement
       
  1427    (const char* name, ASN1T_SeqOfAlmanacElement* pvalue);
       
  1428 
       
  1429 IMPORT_C void asn1Free_SeqOfAlmanacElement (OSCTXT *pctxt, ASN1T_SeqOfAlmanacElement* pvalue);
       
  1430 
       
  1431 /**************************************************************/
       
  1432 /*                                                            */
       
  1433 /*  Almanac                                                   */
       
  1434 /*                                                            */
       
  1435 /**************************************************************/
       
  1436 
       
  1437 #define TV_Almanac	(TM_UNIV|TM_CONS|16)
       
  1438 
       
  1439 struct ASN1T_Almanac {
       
  1440    OSUINT8 alamanacWNa;
       
  1441    ASN1T_SeqOfAlmanacElement almanacList;
       
  1442    IMPORT_C ASN1T_Almanac ();
       
  1443 } ;
       
  1444 
       
  1445 IMPORT_C int asn1PE_Almanac (OSCTXT* pctxt, ASN1T_Almanac* pvalue);
       
  1446 
       
  1447 IMPORT_C int asn1PD_Almanac (OSCTXT* pctxt, ASN1T_Almanac* pvalue);
       
  1448 
       
  1449 IMPORT_C void asn1Print_Almanac
       
  1450    (const char* name, ASN1T_Almanac* pvalue);
       
  1451 
       
  1452 IMPORT_C void asn1Free_Almanac (OSCTXT *pctxt, ASN1T_Almanac* pvalue);
       
  1453 
       
  1454 /**************************************************************/
       
  1455 /*                                                            */
       
  1456 /*  TimeRelation                                              */
       
  1457 /*                                                            */
       
  1458 /**************************************************************/
       
  1459 
       
  1460 #define TV_TimeRelation	(TM_UNIV|TM_CONS|16)
       
  1461 
       
  1462 struct ASN1T_TimeRelation {
       
  1463    struct {
       
  1464       unsigned gsmTimePresent : 1;
       
  1465    } m;
       
  1466    ASN1T_GPSTOW23b gpsTOW;
       
  1467    ASN1T_GSMTime gsmTime;
       
  1468    IMPORT_C ASN1T_TimeRelation ();
       
  1469 } ;
       
  1470 
       
  1471 IMPORT_C int asn1PE_TimeRelation (OSCTXT* pctxt, ASN1T_TimeRelation* pvalue);
       
  1472 
       
  1473 IMPORT_C int asn1PD_TimeRelation (OSCTXT* pctxt, ASN1T_TimeRelation* pvalue);
       
  1474 
       
  1475 IMPORT_C void asn1Print_TimeRelation
       
  1476    (const char* name, ASN1T_TimeRelation* pvalue);
       
  1477 
       
  1478 /**************************************************************/
       
  1479 /*                                                            */
       
  1480 /*  AddionalDopplerFields                                     */
       
  1481 /*                                                            */
       
  1482 /**************************************************************/
       
  1483 
       
  1484 #define TV_AddionalDopplerFields	(TM_UNIV|TM_CONS|16)
       
  1485 
       
  1486 struct ASN1T_AddionalDopplerFields {
       
  1487    OSUINT8 doppler1;
       
  1488    OSUINT8 dopplerUncertainty;
       
  1489    IMPORT_C ASN1T_AddionalDopplerFields ();
       
  1490 } ;
       
  1491 
       
  1492 IMPORT_C int asn1PE_AddionalDopplerFields (OSCTXT* pctxt, ASN1T_AddionalDopplerFields* pvalue);
       
  1493 
       
  1494 IMPORT_C int asn1PD_AddionalDopplerFields (OSCTXT* pctxt, ASN1T_AddionalDopplerFields* pvalue);
       
  1495 
       
  1496 IMPORT_C void asn1Print_AddionalDopplerFields
       
  1497    (const char* name, ASN1T_AddionalDopplerFields* pvalue);
       
  1498 
       
  1499 /**************************************************************/
       
  1500 /*                                                            */
       
  1501 /*  AddionalAngleFields                                       */
       
  1502 /*                                                            */
       
  1503 /**************************************************************/
       
  1504 
       
  1505 #define TV_AddionalAngleFields	(TM_UNIV|TM_CONS|16)
       
  1506 
       
  1507 struct ASN1T_AddionalAngleFields {
       
  1508    OSUINT8 azimuth;
       
  1509    OSUINT8 elevation;
       
  1510    IMPORT_C ASN1T_AddionalAngleFields ();
       
  1511 } ;
       
  1512 
       
  1513 IMPORT_C int asn1PE_AddionalAngleFields (OSCTXT* pctxt, ASN1T_AddionalAngleFields* pvalue);
       
  1514 
       
  1515 IMPORT_C int asn1PD_AddionalAngleFields (OSCTXT* pctxt, ASN1T_AddionalAngleFields* pvalue);
       
  1516 
       
  1517 IMPORT_C void asn1Print_AddionalAngleFields
       
  1518    (const char* name, ASN1T_AddionalAngleFields* pvalue);
       
  1519 
       
  1520 /**************************************************************/
       
  1521 /*                                                            */
       
  1522 /*  AcquisElement                                             */
       
  1523 /*                                                            */
       
  1524 /**************************************************************/
       
  1525 
       
  1526 #define TV_AcquisElement	(TM_UNIV|TM_CONS|16)
       
  1527 
       
  1528 struct ASN1T_AcquisElement {
       
  1529    struct {
       
  1530       unsigned addionalDopplerPresent : 1;
       
  1531       unsigned addionalAnglePresent : 1;
       
  1532    } m;
       
  1533    ASN1T_SatelliteID svid;
       
  1534    OSINT16 doppler0;
       
  1535    ASN1T_AddionalDopplerFields addionalDoppler;
       
  1536    OSUINT16 codePhase;
       
  1537    OSUINT8 intCodePhase;
       
  1538    OSUINT8 gpsBitNumber;
       
  1539    OSUINT8 codePhaseSearchWindow;
       
  1540    ASN1T_AddionalAngleFields addionalAngle;
       
  1541    IMPORT_C ASN1T_AcquisElement ();
       
  1542 } ;
       
  1543 
       
  1544 IMPORT_C int asn1PE_AcquisElement (OSCTXT* pctxt, ASN1T_AcquisElement* pvalue);
       
  1545 
       
  1546 IMPORT_C int asn1PD_AcquisElement (OSCTXT* pctxt, ASN1T_AcquisElement* pvalue);
       
  1547 
       
  1548 IMPORT_C void asn1Print_AcquisElement
       
  1549    (const char* name, ASN1T_AcquisElement* pvalue);
       
  1550 
       
  1551 /**************************************************************/
       
  1552 /*                                                            */
       
  1553 /*  SeqOfAcquisElement                                        */
       
  1554 /*                                                            */
       
  1555 /**************************************************************/
       
  1556 
       
  1557 #define TV_SeqOfAcquisElement	(TM_UNIV|TM_CONS|16)
       
  1558 
       
  1559 /* List of ASN1T_AcquisElement */
       
  1560 typedef ASN1TSeqOfList ASN1T_SeqOfAcquisElement;
       
  1561 
       
  1562 class ASN1C_SeqOfAcquisElement :
       
  1563 public ASN1CSeqOfList
       
  1564 {
       
  1565 protected:
       
  1566    ASN1T_SeqOfAcquisElement& msgData;
       
  1567 public:
       
  1568    IMPORT_C ASN1C_SeqOfAcquisElement (ASN1T_SeqOfAcquisElement& data);
       
  1569    IMPORT_C ASN1C_SeqOfAcquisElement (OSRTMessageBufferIF& msgBuf
       
  1570       , ASN1T_SeqOfAcquisElement& data);
       
  1571    ASN1C_SeqOfAcquisElement (ASN1CType& ccobj, ASN1T_SeqOfAcquisElement& data);
       
  1572    IMPORT_C ASN1C_SeqOfAcquisElement (OSRTContext &context
       
  1573       , ASN1T_SeqOfAcquisElement& data);
       
  1574    void Append (ASN1T_AcquisElement* elem);
       
  1575    ASN1T_AcquisElement* NewElement ();
       
  1576 } ;
       
  1577 
       
  1578 IMPORT_C int asn1PE_SeqOfAcquisElement (OSCTXT* pctxt, ASN1T_SeqOfAcquisElement* pvalue);
       
  1579 
       
  1580 IMPORT_C int asn1PD_SeqOfAcquisElement (OSCTXT* pctxt, ASN1T_SeqOfAcquisElement* pvalue);
       
  1581 
       
  1582 IMPORT_C void asn1Print_SeqOfAcquisElement
       
  1583    (const char* name, ASN1T_SeqOfAcquisElement* pvalue);
       
  1584 
       
  1585 IMPORT_C void asn1Free_SeqOfAcquisElement (OSCTXT *pctxt, ASN1T_SeqOfAcquisElement* pvalue);
       
  1586 
       
  1587 /**************************************************************/
       
  1588 /*                                                            */
       
  1589 /*  AcquisAssist                                              */
       
  1590 /*                                                            */
       
  1591 /**************************************************************/
       
  1592 
       
  1593 #define TV_AcquisAssist	(TM_UNIV|TM_CONS|16)
       
  1594 
       
  1595 struct ASN1T_AcquisAssist {
       
  1596    ASN1T_TimeRelation timeRelation;
       
  1597    ASN1T_SeqOfAcquisElement acquisList;
       
  1598    IMPORT_C ASN1T_AcquisAssist ();
       
  1599 } ;
       
  1600 
       
  1601 IMPORT_C int asn1PE_AcquisAssist (OSCTXT* pctxt, ASN1T_AcquisAssist* pvalue);
       
  1602 
       
  1603 IMPORT_C int asn1PD_AcquisAssist (OSCTXT* pctxt, ASN1T_AcquisAssist* pvalue);
       
  1604 
       
  1605 IMPORT_C void asn1Print_AcquisAssist
       
  1606    (const char* name, ASN1T_AcquisAssist* pvalue);
       
  1607 
       
  1608 IMPORT_C void asn1Free_AcquisAssist (OSCTXT *pctxt, ASN1T_AcquisAssist* pvalue);
       
  1609 
       
  1610 /**************************************************************/
       
  1611 /*                                                            */
       
  1612 /*  SeqOf_BadSatelliteSet                                     */
       
  1613 /*                                                            */
       
  1614 /**************************************************************/
       
  1615 
       
  1616 #define TV_SeqOf_BadSatelliteSet	(TM_UNIV|TM_CONS|16)
       
  1617 
       
  1618 typedef struct ASN1T_SeqOf_BadSatelliteSet {
       
  1619    OSUINT32 n;
       
  1620    ASN1T_SatelliteID elem[32];
       
  1621    ASN1T_SeqOf_BadSatelliteSet () : n (0) {}
       
  1622 } ASN1T_SeqOf_BadSatelliteSet;
       
  1623 
       
  1624 IMPORT_C int asn1PE_SeqOf_BadSatelliteSet (OSCTXT* pctxt, ASN1T_SeqOf_BadSatelliteSet* pvalue);
       
  1625 
       
  1626 IMPORT_C int asn1PD_SeqOf_BadSatelliteSet (OSCTXT* pctxt, ASN1T_SeqOf_BadSatelliteSet* pvalue);
       
  1627 
       
  1628 IMPORT_C void asn1Print_SeqOf_BadSatelliteSet
       
  1629    (const char* name, ASN1T_SeqOf_BadSatelliteSet* pvalue);
       
  1630 
       
  1631 /**************************************************************/
       
  1632 /*                                                            */
       
  1633 /*  ControlHeader                                             */
       
  1634 /*                                                            */
       
  1635 /**************************************************************/
       
  1636 
       
  1637 #define TV_ControlHeader	(TM_UNIV|TM_CONS|16)
       
  1638 
       
  1639 struct ASN1T_ControlHeader {
       
  1640    struct {
       
  1641       unsigned referenceTimePresent : 1;
       
  1642       unsigned refLocationPresent : 1;
       
  1643       unsigned dgpsCorrectionsPresent : 1;
       
  1644       unsigned navigationModelPresent : 1;
       
  1645       unsigned ionosphericModelPresent : 1;
       
  1646       unsigned utcModelPresent : 1;
       
  1647       unsigned almanacPresent : 1;
       
  1648       unsigned acquisAssistPresent : 1;
       
  1649       unsigned realTimeIntegrityPresent : 1;
       
  1650    } m;
       
  1651    ASN1T_ReferenceTime referenceTime;
       
  1652    ASN1T_RefLocation refLocation;
       
  1653    ASN1T_DGPSCorrections dgpsCorrections;
       
  1654    ASN1T_NavigationModelRrlp navigationModel;
       
  1655    ASN1T_IonosphericModel ionosphericModel;
       
  1656    ASN1T_UTCModel utcModel;
       
  1657    ASN1T_Almanac almanac;
       
  1658    ASN1T_AcquisAssist acquisAssist;
       
  1659    ASN1T_SeqOf_BadSatelliteSet realTimeIntegrity;
       
  1660    IMPORT_C ASN1T_ControlHeader ();
       
  1661 } ;
       
  1662 
       
  1663 IMPORT_C int asn1PE_ControlHeader (OSCTXT* pctxt, ASN1T_ControlHeader* pvalue);
       
  1664 
       
  1665 IMPORT_C int asn1PD_ControlHeader (OSCTXT* pctxt, ASN1T_ControlHeader* pvalue);
       
  1666 
       
  1667 IMPORT_C void asn1Print_ControlHeader
       
  1668    (const char* name, ASN1T_ControlHeader* pvalue);
       
  1669 
       
  1670 IMPORT_C void asn1Free_ControlHeader (OSCTXT *pctxt, ASN1T_ControlHeader* pvalue);
       
  1671 
       
  1672 /**************************************************************/
       
  1673 /*                                                            */
       
  1674 /*  GPS_AssistData                                            */
       
  1675 /*                                                            */
       
  1676 /**************************************************************/
       
  1677 
       
  1678 #define TV_GPS_AssistData	(TM_UNIV|TM_CONS|16)
       
  1679 
       
  1680 struct ASN1T_GPS_AssistData {
       
  1681    ASN1T_ControlHeader controlHeader;
       
  1682    IMPORT_C ASN1T_GPS_AssistData ();
       
  1683 } ;
       
  1684 
       
  1685 IMPORT_C int asn1PE_GPS_AssistData (OSCTXT* pctxt, ASN1T_GPS_AssistData* pvalue);
       
  1686 
       
  1687 IMPORT_C int asn1PD_GPS_AssistData (OSCTXT* pctxt, ASN1T_GPS_AssistData* pvalue);
       
  1688 
       
  1689 IMPORT_C void asn1Print_GPS_AssistData
       
  1690    (const char* name, ASN1T_GPS_AssistData* pvalue);
       
  1691 
       
  1692 IMPORT_C void asn1Free_GPS_AssistData (OSCTXT *pctxt, ASN1T_GPS_AssistData* pvalue);
       
  1693 
       
  1694 /**************************************************************/
       
  1695 /*                                                            */
       
  1696 /*  PrivateExtension                                          */
       
  1697 /*                                                            */
       
  1698 /**************************************************************/
       
  1699 
       
  1700 #define TV_PrivateExtension	(TM_UNIV|TM_CONS|16)
       
  1701 
       
  1702 struct ASN1T_PrivateExtension {
       
  1703    struct {
       
  1704       unsigned extTypePresent : 1;
       
  1705    } m;
       
  1706    ASN1TObjId extId;
       
  1707    ASN1TOpenType extType;
       
  1708    IMPORT_C ASN1T_PrivateExtension ();
       
  1709 } ;
       
  1710 
       
  1711 IMPORT_C int asn1PE_PrivateExtension (OSCTXT* pctxt, ASN1T_PrivateExtension* pvalue);
       
  1712 
       
  1713 IMPORT_C int asn1PD_PrivateExtension (OSCTXT* pctxt, ASN1T_PrivateExtension* pvalue);
       
  1714 
       
  1715 IMPORT_C void asn1Print_PrivateExtension
       
  1716    (const char* name, ASN1T_PrivateExtension* pvalue);
       
  1717 
       
  1718 IMPORT_C void asn1Free_PrivateExtension (OSCTXT *pctxt, ASN1T_PrivateExtension* pvalue);
       
  1719 
       
  1720 /**************************************************************/
       
  1721 /*                                                            */
       
  1722 /*  PrivateExtensionList                                      */
       
  1723 /*                                                            */
       
  1724 /**************************************************************/
       
  1725 
       
  1726 #define TV_PrivateExtensionList	(TM_UNIV|TM_CONS|16)
       
  1727 
       
  1728 /* List of ASN1T_PrivateExtension */
       
  1729 typedef ASN1TSeqOfList ASN1T_PrivateExtensionList;
       
  1730 
       
  1731 class ASN1C_PrivateExtensionList :
       
  1732 public ASN1CSeqOfList
       
  1733 {
       
  1734 protected:
       
  1735    ASN1T_PrivateExtensionList& msgData;
       
  1736 public:
       
  1737    IMPORT_C ASN1C_PrivateExtensionList (ASN1T_PrivateExtensionList& data);
       
  1738    IMPORT_C ASN1C_PrivateExtensionList (OSRTMessageBufferIF& msgBuf
       
  1739       , ASN1T_PrivateExtensionList& data);
       
  1740    ASN1C_PrivateExtensionList (ASN1CType& ccobj, ASN1T_PrivateExtensionList& data);
       
  1741    IMPORT_C ASN1C_PrivateExtensionList (OSRTContext &context
       
  1742       , ASN1T_PrivateExtensionList& data);
       
  1743    void Append (ASN1T_PrivateExtension* elem);
       
  1744    ASN1T_PrivateExtension* NewElement ();
       
  1745 } ;
       
  1746 
       
  1747 IMPORT_C int asn1PE_PrivateExtensionList (OSCTXT* pctxt, ASN1T_PrivateExtensionList* pvalue);
       
  1748 
       
  1749 IMPORT_C int asn1PD_PrivateExtensionList (OSCTXT* pctxt, ASN1T_PrivateExtensionList* pvalue);
       
  1750 
       
  1751 IMPORT_C void asn1Print_PrivateExtensionList
       
  1752    (const char* name, ASN1T_PrivateExtensionList* pvalue);
       
  1753 
       
  1754 IMPORT_C void asn1Free_PrivateExtensionList (OSCTXT *pctxt, ASN1T_PrivateExtensionList* pvalue);
       
  1755 
       
  1756 /**************************************************************/
       
  1757 /*                                                            */
       
  1758 /*  PCS_Extensions                                            */
       
  1759 /*                                                            */
       
  1760 /**************************************************************/
       
  1761 
       
  1762 #define TV_PCS_Extensions	(TM_UNIV|TM_CONS|16)
       
  1763 
       
  1764 struct ASN1T_PCS_Extensions {
       
  1765    OSOCTET __dummy__;
       
  1766    IMPORT_C ASN1T_PCS_Extensions ();
       
  1767 } ;
       
  1768 
       
  1769 IMPORT_C int asn1PE_PCS_Extensions (OSCTXT* pctxt, ASN1T_PCS_Extensions* pvalue);
       
  1770 
       
  1771 IMPORT_C int asn1PD_PCS_Extensions (OSCTXT* pctxt, ASN1T_PCS_Extensions* pvalue);
       
  1772 
       
  1773 IMPORT_C void asn1Print_PCS_Extensions
       
  1774    (const char* name, ASN1T_PCS_Extensions* pvalue);
       
  1775 
       
  1776 /**************************************************************/
       
  1777 /*                                                            */
       
  1778 /*  ExtensionContainer                                        */
       
  1779 /*                                                            */
       
  1780 /**************************************************************/
       
  1781 
       
  1782 #define TV_ExtensionContainer	(TM_UNIV|TM_CONS|16)
       
  1783 
       
  1784 struct ASN1T_ExtensionContainer {
       
  1785    struct {
       
  1786       unsigned privateExtensionListPresent : 1;
       
  1787       unsigned pcs_ExtensionsPresent : 1;
       
  1788    } m;
       
  1789    ASN1T_PrivateExtensionList privateExtensionList;
       
  1790    ASN1T_PCS_Extensions pcs_Extensions;
       
  1791    IMPORT_C ASN1T_ExtensionContainer ();
       
  1792 } ;
       
  1793 
       
  1794 IMPORT_C int asn1PE_ExtensionContainer (OSCTXT* pctxt, ASN1T_ExtensionContainer* pvalue);
       
  1795 
       
  1796 IMPORT_C int asn1PD_ExtensionContainer (OSCTXT* pctxt, ASN1T_ExtensionContainer* pvalue);
       
  1797 
       
  1798 IMPORT_C void asn1Print_ExtensionContainer
       
  1799    (const char* name, ASN1T_ExtensionContainer* pvalue);
       
  1800 
       
  1801 IMPORT_C void asn1Free_ExtensionContainer (OSCTXT *pctxt, ASN1T_ExtensionContainer* pvalue);
       
  1802 
       
  1803 /**************************************************************/
       
  1804 /*                                                            */
       
  1805 /*  ExpectedOTD                                               */
       
  1806 /*                                                            */
       
  1807 /**************************************************************/
       
  1808 
       
  1809 #define TV_ExpectedOTD	(TM_UNIV|TM_PRIM|2)
       
  1810 
       
  1811 typedef OSUINT16 ASN1T_ExpectedOTD;
       
  1812 
       
  1813 IMPORT_C int asn1PE_ExpectedOTD (OSCTXT* pctxt, ASN1T_ExpectedOTD value);
       
  1814 
       
  1815 IMPORT_C int asn1PD_ExpectedOTD (OSCTXT* pctxt, ASN1T_ExpectedOTD* pvalue);
       
  1816 
       
  1817 IMPORT_C void asn1Print_ExpectedOTD
       
  1818    (const char* name, ASN1T_ExpectedOTD* pvalue);
       
  1819 
       
  1820 /**************************************************************/
       
  1821 /*                                                            */
       
  1822 /*  ExpOTDUncertainty                                         */
       
  1823 /*                                                            */
       
  1824 /**************************************************************/
       
  1825 
       
  1826 #define TV_ExpOTDUncertainty	(TM_UNIV|TM_PRIM|2)
       
  1827 
       
  1828 typedef OSUINT8 ASN1T_ExpOTDUncertainty;
       
  1829 
       
  1830 IMPORT_C int asn1PE_ExpOTDUncertainty (OSCTXT* pctxt, ASN1T_ExpOTDUncertainty value);
       
  1831 
       
  1832 IMPORT_C int asn1PD_ExpOTDUncertainty (OSCTXT* pctxt, ASN1T_ExpOTDUncertainty* pvalue);
       
  1833 
       
  1834 IMPORT_C void asn1Print_ExpOTDUncertainty
       
  1835    (const char* name, ASN1T_ExpOTDUncertainty* pvalue);
       
  1836 
       
  1837 /**************************************************************/
       
  1838 /*                                                            */
       
  1839 /*  MsrAssistBTS_R98_ExpOTD                                   */
       
  1840 /*                                                            */
       
  1841 /**************************************************************/
       
  1842 
       
  1843 #define TV_MsrAssistBTS_R98_ExpOTD	(TM_UNIV|TM_CONS|16)
       
  1844 
       
  1845 struct ASN1T_MsrAssistBTS_R98_ExpOTD {
       
  1846    ASN1T_ExpectedOTD expectedOTD;
       
  1847    ASN1T_ExpOTDUncertainty expOTDUncertainty;
       
  1848    IMPORT_C ASN1T_MsrAssistBTS_R98_ExpOTD ();
       
  1849 } ;
       
  1850 
       
  1851 IMPORT_C int asn1PE_MsrAssistBTS_R98_ExpOTD (OSCTXT* pctxt, ASN1T_MsrAssistBTS_R98_ExpOTD* pvalue);
       
  1852 
       
  1853 IMPORT_C int asn1PD_MsrAssistBTS_R98_ExpOTD (OSCTXT* pctxt, ASN1T_MsrAssistBTS_R98_ExpOTD* pvalue);
       
  1854 
       
  1855 IMPORT_C void asn1Print_MsrAssistBTS_R98_ExpOTD
       
  1856    (const char* name, ASN1T_MsrAssistBTS_R98_ExpOTD* pvalue);
       
  1857 
       
  1858 /**************************************************************/
       
  1859 /*                                                            */
       
  1860 /*  SeqOfMsrAssistBTS_R98_ExpOTD                              */
       
  1861 /*                                                            */
       
  1862 /**************************************************************/
       
  1863 
       
  1864 #define TV_SeqOfMsrAssistBTS_R98_ExpOTD	(TM_UNIV|TM_CONS|16)
       
  1865 
       
  1866 /* List of ASN1T_MsrAssistBTS_R98_ExpOTD */
       
  1867 typedef ASN1TSeqOfList ASN1T_SeqOfMsrAssistBTS_R98_ExpOTD;
       
  1868 
       
  1869 class ASN1C_SeqOfMsrAssistBTS_R98_ExpOTD :
       
  1870 public ASN1CSeqOfList
       
  1871 {
       
  1872 protected:
       
  1873    ASN1T_SeqOfMsrAssistBTS_R98_ExpOTD& msgData;
       
  1874 public:
       
  1875    IMPORT_C ASN1C_SeqOfMsrAssistBTS_R98_ExpOTD
       
  1876        (ASN1T_SeqOfMsrAssistBTS_R98_ExpOTD& data);
       
  1877    IMPORT_C ASN1C_SeqOfMsrAssistBTS_R98_ExpOTD (OSRTMessageBufferIF& msgBuf
       
  1878       , ASN1T_SeqOfMsrAssistBTS_R98_ExpOTD& data);
       
  1879    ASN1C_SeqOfMsrAssistBTS_R98_ExpOTD (ASN1CType& ccobj, ASN1T_SeqOfMsrAssistBTS_R98_ExpOTD& data);
       
  1880    IMPORT_C ASN1C_SeqOfMsrAssistBTS_R98_ExpOTD (OSRTContext &context
       
  1881       , ASN1T_SeqOfMsrAssistBTS_R98_ExpOTD& data);
       
  1882    void Append (ASN1T_MsrAssistBTS_R98_ExpOTD* elem);
       
  1883    ASN1T_MsrAssistBTS_R98_ExpOTD* NewElement ();
       
  1884 } ;
       
  1885 
       
  1886 IMPORT_C int asn1PE_SeqOfMsrAssistBTS_R98_ExpOTD (OSCTXT* pctxt, ASN1T_SeqOfMsrAssistBTS_R98_ExpOTD* pvalue);
       
  1887 
       
  1888 IMPORT_C int asn1PD_SeqOfMsrAssistBTS_R98_ExpOTD (OSCTXT* pctxt, ASN1T_SeqOfMsrAssistBTS_R98_ExpOTD* pvalue);
       
  1889 
       
  1890 IMPORT_C void asn1Print_SeqOfMsrAssistBTS_R98_ExpOTD
       
  1891    (const char* name, ASN1T_SeqOfMsrAssistBTS_R98_ExpOTD* pvalue);
       
  1892 
       
  1893 IMPORT_C void asn1Free_SeqOfMsrAssistBTS_R98_ExpOTD (OSCTXT *pctxt, ASN1T_SeqOfMsrAssistBTS_R98_ExpOTD* pvalue);
       
  1894 
       
  1895 /**************************************************************/
       
  1896 /*                                                            */
       
  1897 /*  MsrAssistData_R98_ExpOTD                                  */
       
  1898 /*                                                            */
       
  1899 /**************************************************************/
       
  1900 
       
  1901 #define TV_MsrAssistData_R98_ExpOTD	(TM_UNIV|TM_CONS|16)
       
  1902 
       
  1903 struct ASN1T_MsrAssistData_R98_ExpOTD {
       
  1904    ASN1T_SeqOfMsrAssistBTS_R98_ExpOTD msrAssistList_R98_ExpOTD;
       
  1905    IMPORT_C ASN1T_MsrAssistData_R98_ExpOTD ();
       
  1906 } ;
       
  1907 
       
  1908 IMPORT_C int asn1PE_MsrAssistData_R98_ExpOTD (OSCTXT* pctxt, ASN1T_MsrAssistData_R98_ExpOTD* pvalue);
       
  1909 
       
  1910 IMPORT_C int asn1PD_MsrAssistData_R98_ExpOTD (OSCTXT* pctxt, ASN1T_MsrAssistData_R98_ExpOTD* pvalue);
       
  1911 
       
  1912 IMPORT_C void asn1Print_MsrAssistData_R98_ExpOTD
       
  1913    (const char* name, ASN1T_MsrAssistData_R98_ExpOTD* pvalue);
       
  1914 
       
  1915 IMPORT_C void asn1Free_MsrAssistData_R98_ExpOTD (OSCTXT *pctxt, ASN1T_MsrAssistData_R98_ExpOTD* pvalue);
       
  1916 
       
  1917 /**************************************************************/
       
  1918 /*                                                            */
       
  1919 /*  AssistBTSData_R98_ExpOTD                                  */
       
  1920 /*                                                            */
       
  1921 /**************************************************************/
       
  1922 
       
  1923 #define TV_AssistBTSData_R98_ExpOTD	(TM_UNIV|TM_CONS|16)
       
  1924 
       
  1925 struct ASN1T_AssistBTSData_R98_ExpOTD {
       
  1926    ASN1T_ExpectedOTD expectedOTD;
       
  1927    ASN1T_ExpOTDUncertainty expOTDuncertainty;
       
  1928    IMPORT_C ASN1T_AssistBTSData_R98_ExpOTD ();
       
  1929 } ;
       
  1930 
       
  1931 IMPORT_C int asn1PE_AssistBTSData_R98_ExpOTD (OSCTXT* pctxt, ASN1T_AssistBTSData_R98_ExpOTD* pvalue);
       
  1932 
       
  1933 IMPORT_C int asn1PD_AssistBTSData_R98_ExpOTD (OSCTXT* pctxt, ASN1T_AssistBTSData_R98_ExpOTD* pvalue);
       
  1934 
       
  1935 IMPORT_C void asn1Print_AssistBTSData_R98_ExpOTD
       
  1936    (const char* name, ASN1T_AssistBTSData_R98_ExpOTD* pvalue);
       
  1937 
       
  1938 /**************************************************************/
       
  1939 /*                                                            */
       
  1940 /*  SystemInfoAssistBTS_R98_ExpOTD                            */
       
  1941 /*                                                            */
       
  1942 /**************************************************************/
       
  1943 
       
  1944 /* Choice tag constants */
       
  1945 
       
  1946 #define T_SystemInfoAssistBTS_R98_ExpOTD_notPresent 1
       
  1947 #define T_SystemInfoAssistBTS_R98_ExpOTD_present 2
       
  1948 
       
  1949 struct ASN1T_SystemInfoAssistBTS_R98_ExpOTD {
       
  1950    int t;
       
  1951    union {
       
  1952       /* t = 1 */
       
  1953       /* t = 2 */
       
  1954       ASN1T_AssistBTSData_R98_ExpOTD *present;
       
  1955    } u;
       
  1956 } ;
       
  1957 
       
  1958 IMPORT_C int asn1PE_SystemInfoAssistBTS_R98_ExpOTD (OSCTXT* pctxt, ASN1T_SystemInfoAssistBTS_R98_ExpOTD* pvalue);
       
  1959 
       
  1960 IMPORT_C int asn1PD_SystemInfoAssistBTS_R98_ExpOTD (OSCTXT* pctxt, ASN1T_SystemInfoAssistBTS_R98_ExpOTD* pvalue);
       
  1961 
       
  1962 IMPORT_C void asn1Print_SystemInfoAssistBTS_R98_ExpOTD
       
  1963    (const char* name, ASN1T_SystemInfoAssistBTS_R98_ExpOTD* pvalue);
       
  1964 
       
  1965 IMPORT_C void asn1Free_SystemInfoAssistBTS_R98_ExpOTD (OSCTXT *pctxt, ASN1T_SystemInfoAssistBTS_R98_ExpOTD* pvalue);
       
  1966 
       
  1967 /**************************************************************/
       
  1968 /*                                                            */
       
  1969 /*  SeqOfSystemInfoAssistBTS_R98_ExpOTD                       */
       
  1970 /*                                                            */
       
  1971 /**************************************************************/
       
  1972 
       
  1973 #define TV_SeqOfSystemInfoAssistBTS_R98_ExpOTD	(TM_UNIV|TM_CONS|16)
       
  1974 
       
  1975 /* List of ASN1T_SystemInfoAssistBTS_R98_ExpOTD */
       
  1976 typedef ASN1TSeqOfList ASN1T_SeqOfSystemInfoAssistBTS_R98_ExpOTD;
       
  1977 
       
  1978 class ASN1C_SeqOfSystemInfoAssistBTS_R98_ExpOTD :
       
  1979 public ASN1CSeqOfList
       
  1980 {
       
  1981 protected:
       
  1982    ASN1T_SeqOfSystemInfoAssistBTS_R98_ExpOTD& msgData;
       
  1983 public:
       
  1984    IMPORT_C ASN1C_SeqOfSystemInfoAssistBTS_R98_ExpOTD
       
  1985        (ASN1T_SeqOfSystemInfoAssistBTS_R98_ExpOTD& data);
       
  1986    IMPORT_C ASN1C_SeqOfSystemInfoAssistBTS_R98_ExpOTD (OSRTMessageBufferIF& msgBuf
       
  1987       , ASN1T_SeqOfSystemInfoAssistBTS_R98_ExpOTD& data);
       
  1988    ASN1C_SeqOfSystemInfoAssistBTS_R98_ExpOTD (ASN1CType& ccobj, ASN1T_SeqOfSystemInfoAssistBTS_R98_ExpOTD& data);
       
  1989    IMPORT_C ASN1C_SeqOfSystemInfoAssistBTS_R98_ExpOTD (OSRTContext &context
       
  1990       , ASN1T_SeqOfSystemInfoAssistBTS_R98_ExpOTD& data);
       
  1991    void Append (ASN1T_SystemInfoAssistBTS_R98_ExpOTD* elem);
       
  1992    ASN1T_SystemInfoAssistBTS_R98_ExpOTD* NewElement ();
       
  1993 } ;
       
  1994 
       
  1995 IMPORT_C int asn1PE_SeqOfSystemInfoAssistBTS_R98_ExpOTD (OSCTXT* pctxt, ASN1T_SeqOfSystemInfoAssistBTS_R98_ExpOTD* pvalue);
       
  1996 
       
  1997 IMPORT_C int asn1PD_SeqOfSystemInfoAssistBTS_R98_ExpOTD (OSCTXT* pctxt, ASN1T_SeqOfSystemInfoAssistBTS_R98_ExpOTD* pvalue);
       
  1998 
       
  1999 IMPORT_C void asn1Print_SeqOfSystemInfoAssistBTS_R98_ExpOTD
       
  2000    (const char* name, ASN1T_SeqOfSystemInfoAssistBTS_R98_ExpOTD* pvalue);
       
  2001 
       
  2002 IMPORT_C void asn1Free_SeqOfSystemInfoAssistBTS_R98_ExpOTD (OSCTXT *pctxt, ASN1T_SeqOfSystemInfoAssistBTS_R98_ExpOTD* pvalue);
       
  2003 
       
  2004 /**************************************************************/
       
  2005 /*                                                            */
       
  2006 /*  SystemInfoAssistData_R98_ExpOTD                           */
       
  2007 /*                                                            */
       
  2008 /**************************************************************/
       
  2009 
       
  2010 #define TV_SystemInfoAssistData_R98_ExpOTD	(TM_UNIV|TM_CONS|16)
       
  2011 
       
  2012 struct ASN1T_SystemInfoAssistData_R98_ExpOTD {
       
  2013    ASN1T_SeqOfSystemInfoAssistBTS_R98_ExpOTD systemInfoAssistListR98_ExpOTD;
       
  2014    IMPORT_C ASN1T_SystemInfoAssistData_R98_ExpOTD ();
       
  2015 } ;
       
  2016 
       
  2017 IMPORT_C int asn1PE_SystemInfoAssistData_R98_ExpOTD (OSCTXT* pctxt, ASN1T_SystemInfoAssistData_R98_ExpOTD* pvalue);
       
  2018 
       
  2019 IMPORT_C int asn1PD_SystemInfoAssistData_R98_ExpOTD (OSCTXT* pctxt, ASN1T_SystemInfoAssistData_R98_ExpOTD* pvalue);
       
  2020 
       
  2021 IMPORT_C void asn1Print_SystemInfoAssistData_R98_ExpOTD
       
  2022    (const char* name, ASN1T_SystemInfoAssistData_R98_ExpOTD* pvalue);
       
  2023 
       
  2024 IMPORT_C void asn1Free_SystemInfoAssistData_R98_ExpOTD (OSCTXT *pctxt, ASN1T_SystemInfoAssistData_R98_ExpOTD* pvalue);
       
  2025 
       
  2026 /**************************************************************/
       
  2027 /*                                                            */
       
  2028 /*  Rel98_Ext_ExpOTD                                          */
       
  2029 /*                                                            */
       
  2030 /**************************************************************/
       
  2031 
       
  2032 #define TV_Rel98_Ext_ExpOTD	(TM_UNIV|TM_CONS|16)
       
  2033 
       
  2034 struct ASN1T_Rel98_Ext_ExpOTD {
       
  2035    struct {
       
  2036       unsigned msrAssistData_R98_ExpOTDPresent : 1;
       
  2037       unsigned systemInfoAssistData_R98_ExpOTDPresent : 1;
       
  2038    } m;
       
  2039    ASN1T_MsrAssistData_R98_ExpOTD msrAssistData_R98_ExpOTD;
       
  2040    ASN1T_SystemInfoAssistData_R98_ExpOTD systemInfoAssistData_R98_ExpOTD;
       
  2041    IMPORT_C ASN1T_Rel98_Ext_ExpOTD ();
       
  2042 } ;
       
  2043 
       
  2044 IMPORT_C int asn1PE_Rel98_Ext_ExpOTD (OSCTXT* pctxt, ASN1T_Rel98_Ext_ExpOTD* pvalue);
       
  2045 
       
  2046 IMPORT_C int asn1PD_Rel98_Ext_ExpOTD (OSCTXT* pctxt, ASN1T_Rel98_Ext_ExpOTD* pvalue);
       
  2047 
       
  2048 IMPORT_C void asn1Print_Rel98_Ext_ExpOTD
       
  2049    (const char* name, ASN1T_Rel98_Ext_ExpOTD* pvalue);
       
  2050 
       
  2051 IMPORT_C void asn1Free_Rel98_Ext_ExpOTD (OSCTXT *pctxt, ASN1T_Rel98_Ext_ExpOTD* pvalue);
       
  2052 
       
  2053 /**************************************************************/
       
  2054 /*                                                            */
       
  2055 /*  GPSReferenceTimeUncertainty                               */
       
  2056 /*                                                            */
       
  2057 /**************************************************************/
       
  2058 
       
  2059 #define TV_GPSReferenceTimeUncertainty	(TM_UNIV|TM_PRIM|2)
       
  2060 
       
  2061 typedef OSUINT8 ASN1T_GPSReferenceTimeUncertainty;
       
  2062 
       
  2063 IMPORT_C int asn1PE_GPSReferenceTimeUncertainty (OSCTXT* pctxt, ASN1T_GPSReferenceTimeUncertainty value);
       
  2064 
       
  2065 IMPORT_C int asn1PD_GPSReferenceTimeUncertainty (OSCTXT* pctxt, ASN1T_GPSReferenceTimeUncertainty* pvalue);
       
  2066 
       
  2067 IMPORT_C void asn1Print_GPSReferenceTimeUncertainty
       
  2068    (const char* name, ASN1T_GPSReferenceTimeUncertainty* pvalue);
       
  2069 
       
  2070 /**************************************************************/
       
  2071 /*                                                            */
       
  2072 /*  Rel98_MsrPosition_Req_Extension                           */
       
  2073 /*                                                            */
       
  2074 /**************************************************************/
       
  2075 
       
  2076 #define TV_Rel98_MsrPosition_Req_Extension	(TM_UNIV|TM_CONS|16)
       
  2077 
       
  2078 struct ASN1T_Rel98_MsrPosition_Req_Extension {
       
  2079    struct {
       
  2080       unsigned rel98_Ext_ExpOTDPresent : 1;
       
  2081       unsigned gpsTimeAssistanceMeasurementRequestPresent : 1;
       
  2082       unsigned gpsReferenceTimeUncertaintyPresent : 1;
       
  2083    } m;
       
  2084    ASN1T_Rel98_Ext_ExpOTD rel98_Ext_ExpOTD;
       
  2085    ASN1T_GPSReferenceTimeUncertainty gpsReferenceTimeUncertainty;
       
  2086    IMPORT_C ASN1T_Rel98_MsrPosition_Req_Extension ();
       
  2087 } ;
       
  2088 
       
  2089 IMPORT_C int asn1PE_Rel98_MsrPosition_Req_Extension (OSCTXT* pctxt, ASN1T_Rel98_MsrPosition_Req_Extension* pvalue);
       
  2090 
       
  2091 IMPORT_C int asn1PD_Rel98_MsrPosition_Req_Extension (OSCTXT* pctxt, ASN1T_Rel98_MsrPosition_Req_Extension* pvalue);
       
  2092 
       
  2093 IMPORT_C void asn1Print_Rel98_MsrPosition_Req_Extension
       
  2094    (const char* name, ASN1T_Rel98_MsrPosition_Req_Extension* pvalue);
       
  2095 
       
  2096 IMPORT_C void asn1Free_Rel98_MsrPosition_Req_Extension (OSCTXT *pctxt, ASN1T_Rel98_MsrPosition_Req_Extension* pvalue);
       
  2097 
       
  2098 /**************************************************************/
       
  2099 /*                                                            */
       
  2100 /*  Extended_reference                                        */
       
  2101 /*                                                            */
       
  2102 /**************************************************************/
       
  2103 
       
  2104 #define TV_Extended_reference	(TM_UNIV|TM_CONS|16)
       
  2105 
       
  2106 struct ASN1T_Extended_reference {
       
  2107    OSUINT8 smlc_code;
       
  2108    OSUINT32 transaction_ID;
       
  2109    IMPORT_C ASN1T_Extended_reference ();
       
  2110 } ;
       
  2111 
       
  2112 IMPORT_C int asn1PE_Extended_reference (OSCTXT* pctxt, ASN1T_Extended_reference* pvalue);
       
  2113 
       
  2114 IMPORT_C int asn1PD_Extended_reference (OSCTXT* pctxt, ASN1T_Extended_reference* pvalue);
       
  2115 
       
  2116 IMPORT_C void asn1Print_Extended_reference
       
  2117    (const char* name, ASN1T_Extended_reference* pvalue);
       
  2118 
       
  2119 /**************************************************************/
       
  2120 /*                                                            */
       
  2121 /*  Rel5_MsrPosition_Req_Extension                            */
       
  2122 /*                                                            */
       
  2123 /**************************************************************/
       
  2124 
       
  2125 #define TV_Rel5_MsrPosition_Req_Extension	(TM_UNIV|TM_CONS|16)
       
  2126 
       
  2127 struct ASN1T_Rel5_MsrPosition_Req_Extension {
       
  2128    ASN1T_Extended_reference extended_reference;
       
  2129    IMPORT_C ASN1T_Rel5_MsrPosition_Req_Extension ();
       
  2130 } ;
       
  2131 
       
  2132 IMPORT_C int asn1PE_Rel5_MsrPosition_Req_Extension (OSCTXT* pctxt, ASN1T_Rel5_MsrPosition_Req_Extension* pvalue);
       
  2133 
       
  2134 IMPORT_C int asn1PD_Rel5_MsrPosition_Req_Extension (OSCTXT* pctxt, ASN1T_Rel5_MsrPosition_Req_Extension* pvalue);
       
  2135 
       
  2136 IMPORT_C void asn1Print_Rel5_MsrPosition_Req_Extension
       
  2137    (const char* name, ASN1T_Rel5_MsrPosition_Req_Extension* pvalue);
       
  2138 
       
  2139 /**************************************************************/
       
  2140 /*                                                            */
       
  2141 /*  MsrPosition_Req                                           */
       
  2142 /*                                                            */
       
  2143 /**************************************************************/
       
  2144 
       
  2145 #define TV_MsrPosition_Req	(TM_UNIV|TM_CONS|16)
       
  2146 
       
  2147 struct ASN1T_MsrPosition_Req {
       
  2148    struct {
       
  2149       unsigned referenceAssistDataPresent : 1;
       
  2150       unsigned msrAssistDataPresent : 1;
       
  2151       unsigned systemInfoAssistDataPresent : 1;
       
  2152       unsigned gps_AssistDataPresent : 1;
       
  2153       unsigned extensionContainerPresent : 1;
       
  2154       unsigned rel98_MsrPosition_Req_extensionPresent : 1;
       
  2155       unsigned rel5_MsrPosition_Req_extensionPresent : 1;
       
  2156    } m;
       
  2157    ASN1T_PositionInstruct positionInstruct;
       
  2158    ASN1T_ReferenceAssistData referenceAssistData;
       
  2159    ASN1T_MsrAssistData msrAssistData;
       
  2160    ASN1T_SystemInfoAssistData systemInfoAssistData;
       
  2161    ASN1T_GPS_AssistData gps_AssistData;
       
  2162    ASN1T_ExtensionContainer extensionContainer;
       
  2163    ASN1T_Rel98_MsrPosition_Req_Extension rel98_MsrPosition_Req_extension;
       
  2164    ASN1T_Rel5_MsrPosition_Req_Extension rel5_MsrPosition_Req_extension;
       
  2165    IMPORT_C ASN1T_MsrPosition_Req ();
       
  2166 } ;
       
  2167 
       
  2168 IMPORT_C int asn1PE_MsrPosition_Req (OSCTXT* pctxt, ASN1T_MsrPosition_Req* pvalue);
       
  2169 
       
  2170 IMPORT_C int asn1PD_MsrPosition_Req (OSCTXT* pctxt, ASN1T_MsrPosition_Req* pvalue);
       
  2171 
       
  2172 IMPORT_C void asn1Print_MsrPosition_Req
       
  2173    (const char* name, ASN1T_MsrPosition_Req* pvalue);
       
  2174 
       
  2175 IMPORT_C void asn1Free_MsrPosition_Req (OSCTXT *pctxt, ASN1T_MsrPosition_Req* pvalue);
       
  2176 
       
  2177 /**************************************************************/
       
  2178 /*                                                            */
       
  2179 /*  ReferenceRelation                                         */
       
  2180 /*                                                            */
       
  2181 /**************************************************************/
       
  2182 
       
  2183 #define TV_ReferenceRelation	(TM_UNIV|TM_PRIM|10)
       
  2184 
       
  2185 struct ReferenceRelation {
       
  2186    enum Root {
       
  2187       secondBTSThirdSet = 0,
       
  2188       secondBTSSecondSet = 1,
       
  2189       firstBTSFirstSet = 2
       
  2190    } ;
       
  2191 } ;
       
  2192 
       
  2193 typedef OSUINT32 ASN1T_ReferenceRelation;
       
  2194 
       
  2195 IMPORT_C int asn1PE_ReferenceRelation (OSCTXT* pctxt, ASN1T_ReferenceRelation value);
       
  2196 
       
  2197 IMPORT_C int asn1PD_ReferenceRelation (OSCTXT* pctxt, ASN1T_ReferenceRelation* pvalue);
       
  2198 
       
  2199 IMPORT_C void asn1Print_ReferenceRelation
       
  2200    (const char* name, ASN1T_ReferenceRelation* pvalue);
       
  2201 
       
  2202 IMPORT_C const OSUTF8CHAR* ASN1T_ReferenceRelation_ToString (OSINT32 value);
       
  2203 
       
  2204 IMPORT_C int ASN1T_ReferenceRelation_ToEnum (OSCTXT* pctxt,
       
  2205    const OSUTF8CHAR* value, ASN1T_ReferenceRelation* pvalue);
       
  2206 
       
  2207 /**************************************************************/
       
  2208 /*                                                            */
       
  2209 /*  MultipleSets                                              */
       
  2210 /*                                                            */
       
  2211 /**************************************************************/
       
  2212 
       
  2213 #define TV_MultipleSets	(TM_UNIV|TM_CONS|16)
       
  2214 
       
  2215 struct ASN1T_MultipleSets {
       
  2216    struct {
       
  2217       unsigned referenceRelationPresent : 1;
       
  2218    } m;
       
  2219    OSUINT8 nbrOfSets;
       
  2220    OSUINT8 nbrOfReferenceBTSs;
       
  2221    ASN1T_ReferenceRelation referenceRelation;
       
  2222    IMPORT_C ASN1T_MultipleSets ();
       
  2223 } ;
       
  2224 
       
  2225 IMPORT_C int asn1PE_MultipleSets (OSCTXT* pctxt, ASN1T_MultipleSets* pvalue);
       
  2226 
       
  2227 IMPORT_C int asn1PD_MultipleSets (OSCTXT* pctxt, ASN1T_MultipleSets* pvalue);
       
  2228 
       
  2229 IMPORT_C void asn1Print_MultipleSets
       
  2230    (const char* name, ASN1T_MultipleSets* pvalue);
       
  2231 
       
  2232 /**************************************************************/
       
  2233 /*                                                            */
       
  2234 /*  BSICAndCarrier                                            */
       
  2235 /*                                                            */
       
  2236 /**************************************************************/
       
  2237 
       
  2238 #define TV_BSICAndCarrier	(TM_UNIV|TM_CONS|16)
       
  2239 
       
  2240 struct ASN1T_BSICAndCarrier {
       
  2241    ASN1T_BCCHCarrier carrier;
       
  2242    ASN1T_BSIC bsic;
       
  2243    IMPORT_C ASN1T_BSICAndCarrier ();
       
  2244 } ;
       
  2245 
       
  2246 IMPORT_C int asn1PE_BSICAndCarrier (OSCTXT* pctxt, ASN1T_BSICAndCarrier* pvalue);
       
  2247 
       
  2248 IMPORT_C int asn1PD_BSICAndCarrier (OSCTXT* pctxt, ASN1T_BSICAndCarrier* pvalue);
       
  2249 
       
  2250 IMPORT_C void asn1Print_BSICAndCarrier
       
  2251    (const char* name, ASN1T_BSICAndCarrier* pvalue);
       
  2252 
       
  2253 /**************************************************************/
       
  2254 /*                                                            */
       
  2255 /*  CellID                                                    */
       
  2256 /*                                                            */
       
  2257 /**************************************************************/
       
  2258 
       
  2259 #define TV_CellID	(TM_UNIV|TM_PRIM|2)
       
  2260 
       
  2261 typedef OSUINT16 ASN1T_CellID;
       
  2262 
       
  2263 IMPORT_C int asn1PE_CellID (OSCTXT* pctxt, ASN1T_CellID value);
       
  2264 
       
  2265 IMPORT_C int asn1PD_CellID (OSCTXT* pctxt, ASN1T_CellID* pvalue);
       
  2266 
       
  2267 IMPORT_C void asn1Print_CellID
       
  2268    (const char* name, ASN1T_CellID* pvalue);
       
  2269 
       
  2270 /**************************************************************/
       
  2271 /*                                                            */
       
  2272 /*  RequestIndex                                              */
       
  2273 /*                                                            */
       
  2274 /**************************************************************/
       
  2275 
       
  2276 #define TV_RequestIndex	(TM_UNIV|TM_PRIM|2)
       
  2277 
       
  2278 typedef OSUINT8 ASN1T_RequestIndex;
       
  2279 
       
  2280 IMPORT_C int asn1PE_RequestIndex (OSCTXT* pctxt, ASN1T_RequestIndex value);
       
  2281 
       
  2282 IMPORT_C int asn1PD_RequestIndex (OSCTXT* pctxt, ASN1T_RequestIndex* pvalue);
       
  2283 
       
  2284 IMPORT_C void asn1Print_RequestIndex
       
  2285    (const char* name, ASN1T_RequestIndex* pvalue);
       
  2286 
       
  2287 /**************************************************************/
       
  2288 /*                                                            */
       
  2289 /*  SystemInfoIndex                                           */
       
  2290 /*                                                            */
       
  2291 /**************************************************************/
       
  2292 
       
  2293 #define TV_SystemInfoIndex	(TM_UNIV|TM_PRIM|2)
       
  2294 
       
  2295 typedef OSUINT8 ASN1T_SystemInfoIndex;
       
  2296 
       
  2297 IMPORT_C int asn1PE_SystemInfoIndex (OSCTXT* pctxt, ASN1T_SystemInfoIndex value);
       
  2298 
       
  2299 IMPORT_C int asn1PD_SystemInfoIndex (OSCTXT* pctxt, ASN1T_SystemInfoIndex* pvalue);
       
  2300 
       
  2301 IMPORT_C void asn1Print_SystemInfoIndex
       
  2302    (const char* name, ASN1T_SystemInfoIndex* pvalue);
       
  2303 
       
  2304 /**************************************************************/
       
  2305 /*                                                            */
       
  2306 /*  LAC                                                       */
       
  2307 /*                                                            */
       
  2308 /**************************************************************/
       
  2309 
       
  2310 #define TV_LAC	(TM_UNIV|TM_PRIM|2)
       
  2311 
       
  2312 typedef OSUINT16 ASN1T_LAC;
       
  2313 
       
  2314 IMPORT_C int asn1PE_LAC (OSCTXT* pctxt, ASN1T_LAC value);
       
  2315 
       
  2316 IMPORT_C int asn1PD_LAC (OSCTXT* pctxt, ASN1T_LAC* pvalue);
       
  2317 
       
  2318 IMPORT_C void asn1Print_LAC
       
  2319    (const char* name, ASN1T_LAC* pvalue);
       
  2320 
       
  2321 /**************************************************************/
       
  2322 /*                                                            */
       
  2323 /*  CellIDAndLAC                                              */
       
  2324 /*                                                            */
       
  2325 /**************************************************************/
       
  2326 
       
  2327 #define TV_CellIDAndLAC	(TM_UNIV|TM_CONS|16)
       
  2328 
       
  2329 struct ASN1T_CellIDAndLAC {
       
  2330    ASN1T_LAC referenceLAC;
       
  2331    ASN1T_CellID referenceCI;
       
  2332    IMPORT_C ASN1T_CellIDAndLAC ();
       
  2333 } ;
       
  2334 
       
  2335 IMPORT_C int asn1PE_CellIDAndLAC (OSCTXT* pctxt, ASN1T_CellIDAndLAC* pvalue);
       
  2336 
       
  2337 IMPORT_C int asn1PD_CellIDAndLAC (OSCTXT* pctxt, ASN1T_CellIDAndLAC* pvalue);
       
  2338 
       
  2339 IMPORT_C void asn1Print_CellIDAndLAC
       
  2340    (const char* name, ASN1T_CellIDAndLAC* pvalue);
       
  2341 
       
  2342 /**************************************************************/
       
  2343 /*                                                            */
       
  2344 /*  ReferenceIdentityType                                     */
       
  2345 /*                                                            */
       
  2346 /**************************************************************/
       
  2347 
       
  2348 /* Choice tag constants */
       
  2349 
       
  2350 #define T_ReferenceIdentityType_bsicAndCarrier 1
       
  2351 #define T_ReferenceIdentityType_ci      2
       
  2352 #define T_ReferenceIdentityType_requestIndex 3
       
  2353 #define T_ReferenceIdentityType_systemInfoIndex 4
       
  2354 #define T_ReferenceIdentityType_ciAndLAC 5
       
  2355 
       
  2356 struct ASN1T_ReferenceIdentityType {
       
  2357    int t;
       
  2358    union {
       
  2359       /* t = 1 */
       
  2360       ASN1T_BSICAndCarrier *bsicAndCarrier;
       
  2361       /* t = 2 */
       
  2362       ASN1T_CellID ci;
       
  2363       /* t = 3 */
       
  2364       ASN1T_RequestIndex requestIndex;
       
  2365       /* t = 4 */
       
  2366       ASN1T_SystemInfoIndex systemInfoIndex;
       
  2367       /* t = 5 */
       
  2368       ASN1T_CellIDAndLAC *ciAndLAC;
       
  2369    } u;
       
  2370 } ;
       
  2371 
       
  2372 IMPORT_C int asn1PE_ReferenceIdentityType (OSCTXT* pctxt, ASN1T_ReferenceIdentityType* pvalue);
       
  2373 
       
  2374 IMPORT_C int asn1PD_ReferenceIdentityType (OSCTXT* pctxt, ASN1T_ReferenceIdentityType* pvalue);
       
  2375 
       
  2376 IMPORT_C void asn1Print_ReferenceIdentityType
       
  2377    (const char* name, ASN1T_ReferenceIdentityType* pvalue);
       
  2378 
       
  2379 IMPORT_C void asn1Free_ReferenceIdentityType (OSCTXT *pctxt, ASN1T_ReferenceIdentityType* pvalue);
       
  2380 
       
  2381 /**************************************************************/
       
  2382 /*                                                            */
       
  2383 /*  SeqOfReferenceIdentityType                                */
       
  2384 /*                                                            */
       
  2385 /**************************************************************/
       
  2386 
       
  2387 #define TV_SeqOfReferenceIdentityType	(TM_UNIV|TM_CONS|16)
       
  2388 
       
  2389 /* List of ASN1T_ReferenceIdentityType */
       
  2390 typedef ASN1TSeqOfList ASN1T_SeqOfReferenceIdentityType;
       
  2391 
       
  2392 class ASN1C_SeqOfReferenceIdentityType :
       
  2393 public ASN1CSeqOfList
       
  2394 {
       
  2395 protected:
       
  2396    ASN1T_SeqOfReferenceIdentityType& msgData;
       
  2397 public:
       
  2398    IMPORT_C ASN1C_SeqOfReferenceIdentityType (ASN1T_SeqOfReferenceIdentityType& data);
       
  2399    IMPORT_C ASN1C_SeqOfReferenceIdentityType (OSRTMessageBufferIF& msgBuf
       
  2400       , ASN1T_SeqOfReferenceIdentityType& data);
       
  2401    ASN1C_SeqOfReferenceIdentityType (ASN1CType& ccobj, ASN1T_SeqOfReferenceIdentityType& data);
       
  2402    IMPORT_C ASN1C_SeqOfReferenceIdentityType (OSRTContext &context
       
  2403       , ASN1T_SeqOfReferenceIdentityType& data);
       
  2404    void Append (ASN1T_ReferenceIdentityType* elem);
       
  2405    ASN1T_ReferenceIdentityType* NewElement ();
       
  2406 } ;
       
  2407 
       
  2408 IMPORT_C int asn1PE_SeqOfReferenceIdentityType (OSCTXT* pctxt, ASN1T_SeqOfReferenceIdentityType* pvalue);
       
  2409 
       
  2410 IMPORT_C int asn1PD_SeqOfReferenceIdentityType (OSCTXT* pctxt, ASN1T_SeqOfReferenceIdentityType* pvalue);
       
  2411 
       
  2412 IMPORT_C void asn1Print_SeqOfReferenceIdentityType
       
  2413    (const char* name, ASN1T_SeqOfReferenceIdentityType* pvalue);
       
  2414 
       
  2415 IMPORT_C void asn1Free_SeqOfReferenceIdentityType (OSCTXT *pctxt, ASN1T_SeqOfReferenceIdentityType* pvalue);
       
  2416 
       
  2417 /**************************************************************/
       
  2418 /*                                                            */
       
  2419 /*  ReferenceIdentity                                         */
       
  2420 /*                                                            */
       
  2421 /**************************************************************/
       
  2422 
       
  2423 #define TV_ReferenceIdentity	(TM_UNIV|TM_CONS|16)
       
  2424 
       
  2425 struct ASN1T_ReferenceIdentity {
       
  2426    ASN1T_SeqOfReferenceIdentityType refBTSList;
       
  2427    IMPORT_C ASN1T_ReferenceIdentity ();
       
  2428 } ;
       
  2429 
       
  2430 IMPORT_C int asn1PE_ReferenceIdentity (OSCTXT* pctxt, ASN1T_ReferenceIdentity* pvalue);
       
  2431 
       
  2432 IMPORT_C int asn1PD_ReferenceIdentity (OSCTXT* pctxt, ASN1T_ReferenceIdentity* pvalue);
       
  2433 
       
  2434 IMPORT_C void asn1Print_ReferenceIdentity
       
  2435    (const char* name, ASN1T_ReferenceIdentity* pvalue);
       
  2436 
       
  2437 IMPORT_C void asn1Free_ReferenceIdentity (OSCTXT *pctxt, ASN1T_ReferenceIdentity* pvalue);
       
  2438 
       
  2439 /**************************************************************/
       
  2440 /*                                                            */
       
  2441 /*  ModuloTimeSlot                                            */
       
  2442 /*                                                            */
       
  2443 /**************************************************************/
       
  2444 
       
  2445 #define TV_ModuloTimeSlot	(TM_UNIV|TM_PRIM|2)
       
  2446 
       
  2447 typedef OSUINT8 ASN1T_ModuloTimeSlot;
       
  2448 
       
  2449 IMPORT_C int asn1PE_ModuloTimeSlot (OSCTXT* pctxt, ASN1T_ModuloTimeSlot value);
       
  2450 
       
  2451 IMPORT_C int asn1PD_ModuloTimeSlot (OSCTXT* pctxt, ASN1T_ModuloTimeSlot* pvalue);
       
  2452 
       
  2453 IMPORT_C void asn1Print_ModuloTimeSlot
       
  2454    (const char* name, ASN1T_ModuloTimeSlot* pvalue);
       
  2455 
       
  2456 /**************************************************************/
       
  2457 /*                                                            */
       
  2458 /*  RefQuality                                                */
       
  2459 /*                                                            */
       
  2460 /**************************************************************/
       
  2461 
       
  2462 #define TV_RefQuality	(TM_UNIV|TM_PRIM|2)
       
  2463 
       
  2464 typedef OSUINT8 ASN1T_RefQuality;
       
  2465 
       
  2466 IMPORT_C int asn1PE_RefQuality (OSCTXT* pctxt, ASN1T_RefQuality value);
       
  2467 
       
  2468 IMPORT_C int asn1PD_RefQuality (OSCTXT* pctxt, ASN1T_RefQuality* pvalue);
       
  2469 
       
  2470 IMPORT_C void asn1Print_RefQuality
       
  2471    (const char* name, ASN1T_RefQuality* pvalue);
       
  2472 
       
  2473 /**************************************************************/
       
  2474 /*                                                            */
       
  2475 /*  NumOfMeasurements                                         */
       
  2476 /*                                                            */
       
  2477 /**************************************************************/
       
  2478 
       
  2479 #define TV_NumOfMeasurements	(TM_UNIV|TM_PRIM|2)
       
  2480 
       
  2481 typedef OSUINT8 ASN1T_NumOfMeasurements;
       
  2482 
       
  2483 IMPORT_C int asn1PE_NumOfMeasurements (OSCTXT* pctxt, ASN1T_NumOfMeasurements value);
       
  2484 
       
  2485 IMPORT_C int asn1PD_NumOfMeasurements (OSCTXT* pctxt, ASN1T_NumOfMeasurements* pvalue);
       
  2486 
       
  2487 IMPORT_C void asn1Print_NumOfMeasurements
       
  2488    (const char* name, ASN1T_NumOfMeasurements* pvalue);
       
  2489 
       
  2490 /**************************************************************/
       
  2491 /*                                                            */
       
  2492 /*  TOA_MeasurementsOfRef                                     */
       
  2493 /*                                                            */
       
  2494 /**************************************************************/
       
  2495 
       
  2496 #define TV_TOA_MeasurementsOfRef	(TM_UNIV|TM_CONS|16)
       
  2497 
       
  2498 struct ASN1T_TOA_MeasurementsOfRef {
       
  2499    ASN1T_RefQuality refQuality;
       
  2500    ASN1T_NumOfMeasurements numOfMeasurements;
       
  2501    IMPORT_C ASN1T_TOA_MeasurementsOfRef ();
       
  2502 } ;
       
  2503 
       
  2504 IMPORT_C int asn1PE_TOA_MeasurementsOfRef (OSCTXT* pctxt, ASN1T_TOA_MeasurementsOfRef* pvalue);
       
  2505 
       
  2506 IMPORT_C int asn1PD_TOA_MeasurementsOfRef (OSCTXT* pctxt, ASN1T_TOA_MeasurementsOfRef* pvalue);
       
  2507 
       
  2508 IMPORT_C void asn1Print_TOA_MeasurementsOfRef
       
  2509    (const char* name, ASN1T_TOA_MeasurementsOfRef* pvalue);
       
  2510 
       
  2511 /**************************************************************/
       
  2512 /*                                                            */
       
  2513 /*  StdResolution                                             */
       
  2514 /*                                                            */
       
  2515 /**************************************************************/
       
  2516 
       
  2517 #define TV_StdResolution	(TM_UNIV|TM_PRIM|2)
       
  2518 
       
  2519 typedef OSUINT8 ASN1T_StdResolution;
       
  2520 
       
  2521 IMPORT_C int asn1PE_StdResolution (OSCTXT* pctxt, ASN1T_StdResolution value);
       
  2522 
       
  2523 IMPORT_C int asn1PD_StdResolution (OSCTXT* pctxt, ASN1T_StdResolution* pvalue);
       
  2524 
       
  2525 IMPORT_C void asn1Print_StdResolution
       
  2526    (const char* name, ASN1T_StdResolution* pvalue);
       
  2527 
       
  2528 /**************************************************************/
       
  2529 /*                                                            */
       
  2530 /*  MultiFrameCarrier                                         */
       
  2531 /*                                                            */
       
  2532 /**************************************************************/
       
  2533 
       
  2534 #define TV_MultiFrameCarrier	(TM_UNIV|TM_CONS|16)
       
  2535 
       
  2536 struct ASN1T_MultiFrameCarrier {
       
  2537    ASN1T_BCCHCarrier bcchCarrier;
       
  2538    ASN1T_MultiFrameOffset multiFrameOffset;
       
  2539    IMPORT_C ASN1T_MultiFrameCarrier ();
       
  2540 } ;
       
  2541 
       
  2542 IMPORT_C int asn1PE_MultiFrameCarrier (OSCTXT* pctxt, ASN1T_MultiFrameCarrier* pvalue);
       
  2543 
       
  2544 IMPORT_C int asn1PD_MultiFrameCarrier (OSCTXT* pctxt, ASN1T_MultiFrameCarrier* pvalue);
       
  2545 
       
  2546 IMPORT_C void asn1Print_MultiFrameCarrier
       
  2547    (const char* name, ASN1T_MultiFrameCarrier* pvalue);
       
  2548 
       
  2549 /**************************************************************/
       
  2550 /*                                                            */
       
  2551 /*  NeighborIdentity                                          */
       
  2552 /*                                                            */
       
  2553 /**************************************************************/
       
  2554 
       
  2555 /* Choice tag constants */
       
  2556 
       
  2557 #define T_NeighborIdentity_bsicAndCarrier 1
       
  2558 #define T_NeighborIdentity_ci           2
       
  2559 #define T_NeighborIdentity_multiFrameCarrier 3
       
  2560 #define T_NeighborIdentity_requestIndex 4
       
  2561 #define T_NeighborIdentity_systemInfoIndex 5
       
  2562 #define T_NeighborIdentity_ciAndLAC     6
       
  2563 
       
  2564 struct ASN1T_NeighborIdentity {
       
  2565    int t;
       
  2566    union {
       
  2567       /* t = 1 */
       
  2568       ASN1T_BSICAndCarrier *bsicAndCarrier;
       
  2569       /* t = 2 */
       
  2570       ASN1T_CellID ci;
       
  2571       /* t = 3 */
       
  2572       ASN1T_MultiFrameCarrier *multiFrameCarrier;
       
  2573       /* t = 4 */
       
  2574       ASN1T_RequestIndex requestIndex;
       
  2575       /* t = 5 */
       
  2576       ASN1T_SystemInfoIndex systemInfoIndex;
       
  2577       /* t = 6 */
       
  2578       ASN1T_CellIDAndLAC *ciAndLAC;
       
  2579    } u;
       
  2580 } ;
       
  2581 
       
  2582 IMPORT_C int asn1PE_NeighborIdentity (OSCTXT* pctxt, ASN1T_NeighborIdentity* pvalue);
       
  2583 
       
  2584 IMPORT_C int asn1PD_NeighborIdentity (OSCTXT* pctxt, ASN1T_NeighborIdentity* pvalue);
       
  2585 
       
  2586 IMPORT_C void asn1Print_NeighborIdentity
       
  2587    (const char* name, ASN1T_NeighborIdentity* pvalue);
       
  2588 
       
  2589 IMPORT_C void asn1Free_NeighborIdentity (OSCTXT *pctxt, ASN1T_NeighborIdentity* pvalue);
       
  2590 
       
  2591 /**************************************************************/
       
  2592 /*                                                            */
       
  2593 /*  EOTDQuality                                               */
       
  2594 /*                                                            */
       
  2595 /**************************************************************/
       
  2596 
       
  2597 #define TV_EOTDQuality	(TM_UNIV|TM_CONS|16)
       
  2598 
       
  2599 struct ASN1T_EOTDQuality {
       
  2600    OSUINT8 nbrOfMeasurements;
       
  2601    OSUINT8 stdOfEOTD;
       
  2602    IMPORT_C ASN1T_EOTDQuality ();
       
  2603 } ;
       
  2604 
       
  2605 IMPORT_C int asn1PE_EOTDQuality (OSCTXT* pctxt, ASN1T_EOTDQuality* pvalue);
       
  2606 
       
  2607 IMPORT_C int asn1PD_EOTDQuality (OSCTXT* pctxt, ASN1T_EOTDQuality* pvalue);
       
  2608 
       
  2609 IMPORT_C void asn1Print_EOTDQuality
       
  2610    (const char* name, ASN1T_EOTDQuality* pvalue);
       
  2611 
       
  2612 /**************************************************************/
       
  2613 /*                                                            */
       
  2614 /*  OTDValue                                                  */
       
  2615 /*                                                            */
       
  2616 /**************************************************************/
       
  2617 
       
  2618 #define TV_OTDValue	(TM_UNIV|TM_PRIM|2)
       
  2619 
       
  2620 typedef OSUINT16 ASN1T_OTDValue;
       
  2621 
       
  2622 IMPORT_C int asn1PE_OTDValue (OSCTXT* pctxt, ASN1T_OTDValue value);
       
  2623 
       
  2624 IMPORT_C int asn1PD_OTDValue (OSCTXT* pctxt, ASN1T_OTDValue* pvalue);
       
  2625 
       
  2626 IMPORT_C void asn1Print_OTDValue
       
  2627    (const char* name, ASN1T_OTDValue* pvalue);
       
  2628 
       
  2629 /**************************************************************/
       
  2630 /*                                                            */
       
  2631 /*  OTD_MeasurementWithID                                     */
       
  2632 /*                                                            */
       
  2633 /**************************************************************/
       
  2634 
       
  2635 #define TV_OTD_MeasurementWithID	(TM_UNIV|TM_CONS|16)
       
  2636 
       
  2637 struct ASN1T_OTD_MeasurementWithID {
       
  2638    ASN1T_NeighborIdentity neighborIdentity;
       
  2639    ASN1T_ModuloTimeSlot nborTimeSlot;
       
  2640    ASN1T_EOTDQuality eotdQuality;
       
  2641    ASN1T_OTDValue otdValue;
       
  2642    IMPORT_C ASN1T_OTD_MeasurementWithID ();
       
  2643 } ;
       
  2644 
       
  2645 IMPORT_C int asn1PE_OTD_MeasurementWithID (OSCTXT* pctxt, ASN1T_OTD_MeasurementWithID* pvalue);
       
  2646 
       
  2647 IMPORT_C int asn1PD_OTD_MeasurementWithID (OSCTXT* pctxt, ASN1T_OTD_MeasurementWithID* pvalue);
       
  2648 
       
  2649 IMPORT_C void asn1Print_OTD_MeasurementWithID
       
  2650    (const char* name, ASN1T_OTD_MeasurementWithID* pvalue);
       
  2651 
       
  2652 IMPORT_C void asn1Free_OTD_MeasurementWithID (OSCTXT *pctxt, ASN1T_OTD_MeasurementWithID* pvalue);
       
  2653 
       
  2654 /**************************************************************/
       
  2655 /*                                                            */
       
  2656 /*  OTD_FirstSetMsrs                                          */
       
  2657 /*                                                            */
       
  2658 /**************************************************************/
       
  2659 
       
  2660 #define TV_OTD_FirstSetMsrs	(TM_UNIV|TM_CONS|16)
       
  2661 
       
  2662 typedef ASN1T_OTD_MeasurementWithID ASN1T_OTD_FirstSetMsrs;
       
  2663 
       
  2664 IMPORT_C int asn1PE_OTD_FirstSetMsrs (OSCTXT* pctxt, ASN1T_OTD_FirstSetMsrs* pvalue);
       
  2665 
       
  2666 IMPORT_C int asn1PD_OTD_FirstSetMsrs (OSCTXT* pctxt, ASN1T_OTD_FirstSetMsrs* pvalue);
       
  2667 
       
  2668 IMPORT_C void asn1Print_OTD_FirstSetMsrs
       
  2669    (const char* name, ASN1T_OTD_FirstSetMsrs* pvalue);
       
  2670 
       
  2671 IMPORT_C void asn1Free_OTD_FirstSetMsrs (OSCTXT *pctxt, ASN1T_OTD_FirstSetMsrs* pvalue);
       
  2672 
       
  2673 /**************************************************************/
       
  2674 /*                                                            */
       
  2675 /*  SeqOfOTD_FirstSetMsrs                                     */
       
  2676 /*                                                            */
       
  2677 /**************************************************************/
       
  2678 
       
  2679 #define TV_SeqOfOTD_FirstSetMsrs	(TM_UNIV|TM_CONS|16)
       
  2680 
       
  2681 /* List of ASN1T_OTD_FirstSetMsrs */
       
  2682 typedef ASN1TSeqOfList ASN1T_SeqOfOTD_FirstSetMsrs;
       
  2683 
       
  2684 class ASN1C_SeqOfOTD_FirstSetMsrs :
       
  2685 public ASN1CSeqOfList
       
  2686 {
       
  2687 protected:
       
  2688    ASN1T_SeqOfOTD_FirstSetMsrs& msgData;
       
  2689 public:
       
  2690    IMPORT_C ASN1C_SeqOfOTD_FirstSetMsrs (ASN1T_SeqOfOTD_FirstSetMsrs& data);
       
  2691    IMPORT_C ASN1C_SeqOfOTD_FirstSetMsrs (OSRTMessageBufferIF& msgBuf
       
  2692       , ASN1T_SeqOfOTD_FirstSetMsrs& data);
       
  2693    ASN1C_SeqOfOTD_FirstSetMsrs (ASN1CType& ccobj, ASN1T_SeqOfOTD_FirstSetMsrs& data);
       
  2694    IMPORT_C ASN1C_SeqOfOTD_FirstSetMsrs (OSRTContext &context
       
  2695       , ASN1T_SeqOfOTD_FirstSetMsrs& data);
       
  2696    void Append (ASN1T_OTD_FirstSetMsrs* elem);
       
  2697    ASN1T_OTD_FirstSetMsrs* NewElement ();
       
  2698 } ;
       
  2699 
       
  2700 IMPORT_C int asn1PE_SeqOfOTD_FirstSetMsrs (OSCTXT* pctxt, ASN1T_SeqOfOTD_FirstSetMsrs* pvalue);
       
  2701 
       
  2702 IMPORT_C int asn1PD_SeqOfOTD_FirstSetMsrs (OSCTXT* pctxt, ASN1T_SeqOfOTD_FirstSetMsrs* pvalue);
       
  2703 
       
  2704 IMPORT_C void asn1Print_SeqOfOTD_FirstSetMsrs
       
  2705    (const char* name, ASN1T_SeqOfOTD_FirstSetMsrs* pvalue);
       
  2706 
       
  2707 IMPORT_C void asn1Free_SeqOfOTD_FirstSetMsrs (OSCTXT *pctxt, ASN1T_SeqOfOTD_FirstSetMsrs* pvalue);
       
  2708 
       
  2709 /**************************************************************/
       
  2710 /*                                                            */
       
  2711 /*  OTD_MsrElementFirst                                       */
       
  2712 /*                                                            */
       
  2713 /**************************************************************/
       
  2714 
       
  2715 #define TV_OTD_MsrElementFirst	(TM_UNIV|TM_CONS|16)
       
  2716 
       
  2717 struct ASN1T_OTD_MsrElementFirst {
       
  2718    struct {
       
  2719       unsigned toaMeasurementsOfRefPresent : 1;
       
  2720       unsigned taCorrectionPresent : 1;
       
  2721       unsigned otd_FirstSetMsrsPresent : 1;
       
  2722    } m;
       
  2723    OSUINT16 refFrameNumber;
       
  2724    ASN1T_ModuloTimeSlot referenceTimeSlot;
       
  2725    ASN1T_TOA_MeasurementsOfRef toaMeasurementsOfRef;
       
  2726    ASN1T_StdResolution stdResolution;
       
  2727    OSUINT16 taCorrection;
       
  2728    ASN1T_SeqOfOTD_FirstSetMsrs otd_FirstSetMsrs;
       
  2729    IMPORT_C ASN1T_OTD_MsrElementFirst ();
       
  2730 } ;
       
  2731 
       
  2732 IMPORT_C int asn1PE_OTD_MsrElementFirst (OSCTXT* pctxt, ASN1T_OTD_MsrElementFirst* pvalue);
       
  2733 
       
  2734 IMPORT_C int asn1PD_OTD_MsrElementFirst (OSCTXT* pctxt, ASN1T_OTD_MsrElementFirst* pvalue);
       
  2735 
       
  2736 IMPORT_C void asn1Print_OTD_MsrElementFirst
       
  2737    (const char* name, ASN1T_OTD_MsrElementFirst* pvalue);
       
  2738 
       
  2739 IMPORT_C void asn1Free_OTD_MsrElementFirst (OSCTXT *pctxt, ASN1T_OTD_MsrElementFirst* pvalue);
       
  2740 
       
  2741 /**************************************************************/
       
  2742 /*                                                            */
       
  2743 /*  OTD_Measurement                                           */
       
  2744 /*                                                            */
       
  2745 /**************************************************************/
       
  2746 
       
  2747 #define TV_OTD_Measurement	(TM_UNIV|TM_CONS|16)
       
  2748 
       
  2749 struct ASN1T_OTD_Measurement {
       
  2750    ASN1T_ModuloTimeSlot nborTimeSlot;
       
  2751    ASN1T_EOTDQuality eotdQuality;
       
  2752    ASN1T_OTDValue otdValue;
       
  2753    IMPORT_C ASN1T_OTD_Measurement ();
       
  2754 } ;
       
  2755 
       
  2756 IMPORT_C int asn1PE_OTD_Measurement (OSCTXT* pctxt, ASN1T_OTD_Measurement* pvalue);
       
  2757 
       
  2758 IMPORT_C int asn1PD_OTD_Measurement (OSCTXT* pctxt, ASN1T_OTD_Measurement* pvalue);
       
  2759 
       
  2760 IMPORT_C void asn1Print_OTD_Measurement
       
  2761    (const char* name, ASN1T_OTD_Measurement* pvalue);
       
  2762 
       
  2763 /**************************************************************/
       
  2764 /*                                                            */
       
  2765 /*  OTD_MsrsOfOtherSets                                       */
       
  2766 /*                                                            */
       
  2767 /**************************************************************/
       
  2768 
       
  2769 /* Choice tag constants */
       
  2770 
       
  2771 #define T_OTD_MsrsOfOtherSets_identityNotPresent 1
       
  2772 #define T_OTD_MsrsOfOtherSets_identityPresent 2
       
  2773 
       
  2774 struct ASN1T_OTD_MsrsOfOtherSets {
       
  2775    int t;
       
  2776    union {
       
  2777       /* t = 1 */
       
  2778       ASN1T_OTD_Measurement *identityNotPresent;
       
  2779       /* t = 2 */
       
  2780       ASN1T_OTD_MeasurementWithID *identityPresent;
       
  2781    } u;
       
  2782 } ;
       
  2783 
       
  2784 IMPORT_C int asn1PE_OTD_MsrsOfOtherSets (OSCTXT* pctxt, ASN1T_OTD_MsrsOfOtherSets* pvalue);
       
  2785 
       
  2786 IMPORT_C int asn1PD_OTD_MsrsOfOtherSets (OSCTXT* pctxt, ASN1T_OTD_MsrsOfOtherSets* pvalue);
       
  2787 
       
  2788 IMPORT_C void asn1Print_OTD_MsrsOfOtherSets
       
  2789    (const char* name, ASN1T_OTD_MsrsOfOtherSets* pvalue);
       
  2790 
       
  2791 IMPORT_C void asn1Free_OTD_MsrsOfOtherSets (OSCTXT *pctxt, ASN1T_OTD_MsrsOfOtherSets* pvalue);
       
  2792 
       
  2793 /**************************************************************/
       
  2794 /*                                                            */
       
  2795 /*  SeqOfOTD_MsrsOfOtherSets                                  */
       
  2796 /*                                                            */
       
  2797 /**************************************************************/
       
  2798 
       
  2799 #define TV_SeqOfOTD_MsrsOfOtherSets	(TM_UNIV|TM_CONS|16)
       
  2800 
       
  2801 /* List of ASN1T_OTD_MsrsOfOtherSets */
       
  2802 typedef ASN1TSeqOfList ASN1T_SeqOfOTD_MsrsOfOtherSets;
       
  2803 
       
  2804 class ASN1C_SeqOfOTD_MsrsOfOtherSets :
       
  2805 public ASN1CSeqOfList
       
  2806 {
       
  2807 protected:
       
  2808    ASN1T_SeqOfOTD_MsrsOfOtherSets& msgData;
       
  2809 public:
       
  2810    IMPORT_C ASN1C_SeqOfOTD_MsrsOfOtherSets (ASN1T_SeqOfOTD_MsrsOfOtherSets& data);
       
  2811    IMPORT_C ASN1C_SeqOfOTD_MsrsOfOtherSets (OSRTMessageBufferIF& msgBuf
       
  2812       , ASN1T_SeqOfOTD_MsrsOfOtherSets& data);
       
  2813    ASN1C_SeqOfOTD_MsrsOfOtherSets (ASN1CType& ccobj, ASN1T_SeqOfOTD_MsrsOfOtherSets& data);
       
  2814    IMPORT_C ASN1C_SeqOfOTD_MsrsOfOtherSets (OSRTContext &context
       
  2815       , ASN1T_SeqOfOTD_MsrsOfOtherSets& data);
       
  2816    void Append (ASN1T_OTD_MsrsOfOtherSets* elem);
       
  2817    ASN1T_OTD_MsrsOfOtherSets* NewElement ();
       
  2818 } ;
       
  2819 
       
  2820 IMPORT_C int asn1PE_SeqOfOTD_MsrsOfOtherSets (OSCTXT* pctxt, ASN1T_SeqOfOTD_MsrsOfOtherSets* pvalue);
       
  2821 
       
  2822 IMPORT_C int asn1PD_SeqOfOTD_MsrsOfOtherSets (OSCTXT* pctxt, ASN1T_SeqOfOTD_MsrsOfOtherSets* pvalue);
       
  2823 
       
  2824 IMPORT_C void asn1Print_SeqOfOTD_MsrsOfOtherSets
       
  2825    (const char* name, ASN1T_SeqOfOTD_MsrsOfOtherSets* pvalue);
       
  2826 
       
  2827 IMPORT_C void asn1Free_SeqOfOTD_MsrsOfOtherSets (OSCTXT *pctxt, ASN1T_SeqOfOTD_MsrsOfOtherSets* pvalue);
       
  2828 
       
  2829 /**************************************************************/
       
  2830 /*                                                            */
       
  2831 /*  OTD_MsrElementRest                                        */
       
  2832 /*                                                            */
       
  2833 /**************************************************************/
       
  2834 
       
  2835 #define TV_OTD_MsrElementRest	(TM_UNIV|TM_CONS|16)
       
  2836 
       
  2837 struct ASN1T_OTD_MsrElementRest {
       
  2838    struct {
       
  2839       unsigned toaMeasurementsOfRefPresent : 1;
       
  2840       unsigned taCorrectionPresent : 1;
       
  2841       unsigned otd_MsrsOfOtherSetsPresent : 1;
       
  2842    } m;
       
  2843    OSUINT16 refFrameNumber;
       
  2844    ASN1T_ModuloTimeSlot referenceTimeSlot;
       
  2845    ASN1T_TOA_MeasurementsOfRef toaMeasurementsOfRef;
       
  2846    ASN1T_StdResolution stdResolution;
       
  2847    OSUINT16 taCorrection;
       
  2848    ASN1T_SeqOfOTD_MsrsOfOtherSets otd_MsrsOfOtherSets;
       
  2849    IMPORT_C ASN1T_OTD_MsrElementRest ();
       
  2850 } ;
       
  2851 
       
  2852 IMPORT_C int asn1PE_OTD_MsrElementRest (OSCTXT* pctxt, ASN1T_OTD_MsrElementRest* pvalue);
       
  2853 
       
  2854 IMPORT_C int asn1PD_OTD_MsrElementRest (OSCTXT* pctxt, ASN1T_OTD_MsrElementRest* pvalue);
       
  2855 
       
  2856 IMPORT_C void asn1Print_OTD_MsrElementRest
       
  2857    (const char* name, ASN1T_OTD_MsrElementRest* pvalue);
       
  2858 
       
  2859 IMPORT_C void asn1Free_OTD_MsrElementRest (OSCTXT *pctxt, ASN1T_OTD_MsrElementRest* pvalue);
       
  2860 
       
  2861 /**************************************************************/
       
  2862 /*                                                            */
       
  2863 /*  SeqOfOTD_MsrElementRest                                   */
       
  2864 /*                                                            */
       
  2865 /**************************************************************/
       
  2866 
       
  2867 #define TV_SeqOfOTD_MsrElementRest	(TM_UNIV|TM_CONS|16)
       
  2868 
       
  2869 /* List of ASN1T_OTD_MsrElementRest */
       
  2870 typedef ASN1TSeqOfList ASN1T_SeqOfOTD_MsrElementRest;
       
  2871 
       
  2872 class ASN1C_SeqOfOTD_MsrElementRest :
       
  2873 public ASN1CSeqOfList
       
  2874 {
       
  2875 protected:
       
  2876    ASN1T_SeqOfOTD_MsrElementRest& msgData;
       
  2877 public:
       
  2878    IMPORT_C ASN1C_SeqOfOTD_MsrElementRest (ASN1T_SeqOfOTD_MsrElementRest& data);
       
  2879    IMPORT_C ASN1C_SeqOfOTD_MsrElementRest (OSRTMessageBufferIF& msgBuf
       
  2880       , ASN1T_SeqOfOTD_MsrElementRest& data);
       
  2881    ASN1C_SeqOfOTD_MsrElementRest (ASN1CType& ccobj, ASN1T_SeqOfOTD_MsrElementRest& data);
       
  2882    IMPORT_C ASN1C_SeqOfOTD_MsrElementRest (OSRTContext &context
       
  2883       , ASN1T_SeqOfOTD_MsrElementRest& data);
       
  2884    void Append (ASN1T_OTD_MsrElementRest* elem);
       
  2885    ASN1T_OTD_MsrElementRest* NewElement ();
       
  2886 } ;
       
  2887 
       
  2888 IMPORT_C int asn1PE_SeqOfOTD_MsrElementRest (OSCTXT* pctxt, ASN1T_SeqOfOTD_MsrElementRest* pvalue);
       
  2889 
       
  2890 IMPORT_C int asn1PD_SeqOfOTD_MsrElementRest (OSCTXT* pctxt, ASN1T_SeqOfOTD_MsrElementRest* pvalue);
       
  2891 
       
  2892 IMPORT_C void asn1Print_SeqOfOTD_MsrElementRest
       
  2893    (const char* name, ASN1T_SeqOfOTD_MsrElementRest* pvalue);
       
  2894 
       
  2895 IMPORT_C void asn1Free_SeqOfOTD_MsrElementRest (OSCTXT *pctxt, ASN1T_SeqOfOTD_MsrElementRest* pvalue);
       
  2896 
       
  2897 /**************************************************************/
       
  2898 /*                                                            */
       
  2899 /*  OTD_MeasureInfo                                           */
       
  2900 /*                                                            */
       
  2901 /**************************************************************/
       
  2902 
       
  2903 #define TV_OTD_MeasureInfo	(TM_UNIV|TM_CONS|16)
       
  2904 
       
  2905 struct ASN1T_OTD_MeasureInfo {
       
  2906    struct {
       
  2907       unsigned otdMsrRestSetsPresent : 1;
       
  2908    } m;
       
  2909    ASN1T_OTD_MsrElementFirst otdMsrFirstSets;
       
  2910    ASN1T_SeqOfOTD_MsrElementRest otdMsrRestSets;
       
  2911    IMPORT_C ASN1T_OTD_MeasureInfo ();
       
  2912 } ;
       
  2913 
       
  2914 IMPORT_C int asn1PE_OTD_MeasureInfo (OSCTXT* pctxt, ASN1T_OTD_MeasureInfo* pvalue);
       
  2915 
       
  2916 IMPORT_C int asn1PD_OTD_MeasureInfo (OSCTXT* pctxt, ASN1T_OTD_MeasureInfo* pvalue);
       
  2917 
       
  2918 IMPORT_C void asn1Print_OTD_MeasureInfo
       
  2919    (const char* name, ASN1T_OTD_MeasureInfo* pvalue);
       
  2920 
       
  2921 IMPORT_C void asn1Free_OTD_MeasureInfo (OSCTXT *pctxt, ASN1T_OTD_MeasureInfo* pvalue);
       
  2922 
       
  2923 /**************************************************************/
       
  2924 /*                                                            */
       
  2925 /*  FixType                                                   */
       
  2926 /*                                                            */
       
  2927 /**************************************************************/
       
  2928 
       
  2929 #define TV_FixType	(TM_UNIV|TM_PRIM|2)
       
  2930 
       
  2931 struct FixType {
       
  2932    enum Root {
       
  2933       twoDFix = 0,
       
  2934       threeDFix = 1
       
  2935    } ;
       
  2936 } ;
       
  2937 
       
  2938 typedef OSUINT8 ASN1T_FixType;
       
  2939 
       
  2940 IMPORT_C int asn1PE_FixType (OSCTXT* pctxt, ASN1T_FixType value);
       
  2941 
       
  2942 IMPORT_C int asn1PD_FixType (OSCTXT* pctxt, ASN1T_FixType* pvalue);
       
  2943 
       
  2944 IMPORT_C void asn1Print_FixType
       
  2945    (const char* name, ASN1T_FixType* pvalue);
       
  2946 
       
  2947 /**************************************************************/
       
  2948 /*                                                            */
       
  2949 /*  LocationInfo                                              */
       
  2950 /*                                                            */
       
  2951 /**************************************************************/
       
  2952 
       
  2953 #define TV_LocationInfo	(TM_UNIV|TM_CONS|16)
       
  2954 
       
  2955 struct ASN1T_LocationInfo {
       
  2956    struct {
       
  2957       unsigned gpsTOWPresent : 1;
       
  2958    } m;
       
  2959    OSUINT16 refFrame;
       
  2960    OSUINT32 gpsTOW;
       
  2961    ASN1T_FixType fixType;
       
  2962    ASN1T_Ext_GeographicalInformation posEstimate;
       
  2963    IMPORT_C ASN1T_LocationInfo ();
       
  2964 } ;
       
  2965 
       
  2966 IMPORT_C int asn1PE_LocationInfo (OSCTXT* pctxt, ASN1T_LocationInfo* pvalue);
       
  2967 
       
  2968 IMPORT_C int asn1PD_LocationInfo (OSCTXT* pctxt, ASN1T_LocationInfo* pvalue);
       
  2969 
       
  2970 IMPORT_C void asn1Print_LocationInfo
       
  2971    (const char* name, ASN1T_LocationInfo* pvalue);
       
  2972 
       
  2973 /**************************************************************/
       
  2974 /*                                                            */
       
  2975 /*  GPSTOW24b                                                 */
       
  2976 /*                                                            */
       
  2977 /**************************************************************/
       
  2978 
       
  2979 #define TV_GPSTOW24b	(TM_UNIV|TM_PRIM|2)
       
  2980 
       
  2981 typedef OSUINT32 ASN1T_GPSTOW24b;
       
  2982 
       
  2983 IMPORT_C int asn1PE_GPSTOW24b (OSCTXT* pctxt, ASN1T_GPSTOW24b value);
       
  2984 
       
  2985 IMPORT_C int asn1PD_GPSTOW24b (OSCTXT* pctxt, ASN1T_GPSTOW24b* pvalue);
       
  2986 
       
  2987 IMPORT_C void asn1Print_GPSTOW24b
       
  2988    (const char* name, ASN1T_GPSTOW24b* pvalue);
       
  2989 
       
  2990 /**************************************************************/
       
  2991 /*                                                            */
       
  2992 /*  MpathIndic                                                */
       
  2993 /*                                                            */
       
  2994 /**************************************************************/
       
  2995 
       
  2996 #define TV_MpathIndic	(TM_UNIV|TM_PRIM|10)
       
  2997 
       
  2998 struct MpathIndic {
       
  2999    enum Root {
       
  3000       notMeasured = 0,
       
  3001       low = 1,
       
  3002       medium = 2,
       
  3003       high = 3
       
  3004    } ;
       
  3005 } ;
       
  3006 
       
  3007 typedef OSUINT32 ASN1T_MpathIndic;
       
  3008 
       
  3009 IMPORT_C int asn1PE_MpathIndic (OSCTXT* pctxt, ASN1T_MpathIndic value);
       
  3010 
       
  3011 IMPORT_C int asn1PD_MpathIndic (OSCTXT* pctxt, ASN1T_MpathIndic* pvalue);
       
  3012 
       
  3013 IMPORT_C void asn1Print_MpathIndic
       
  3014    (const char* name, ASN1T_MpathIndic* pvalue);
       
  3015 
       
  3016 IMPORT_C const OSUTF8CHAR* ASN1T_MpathIndic_ToString (OSINT32 value);
       
  3017 
       
  3018 IMPORT_C int ASN1T_MpathIndic_ToEnum (OSCTXT* pctxt,
       
  3019    const OSUTF8CHAR* value, ASN1T_MpathIndic* pvalue);
       
  3020 
       
  3021 /**************************************************************/
       
  3022 /*                                                            */
       
  3023 /*  GPS_MsrElement                                            */
       
  3024 /*                                                            */
       
  3025 /**************************************************************/
       
  3026 
       
  3027 #define TV_GPS_MsrElement	(TM_UNIV|TM_CONS|16)
       
  3028 
       
  3029 struct ASN1T_GPS_MsrElement {
       
  3030    ASN1T_SatelliteID satelliteID;
       
  3031    OSUINT8 cNo;
       
  3032    OSINT16 doppler;
       
  3033    OSUINT16 wholeChips;
       
  3034    OSUINT16 fracChips;
       
  3035    ASN1T_MpathIndic mpathIndic;
       
  3036    OSUINT8 pseuRangeRMSErr;
       
  3037    IMPORT_C ASN1T_GPS_MsrElement ();
       
  3038 } ;
       
  3039 
       
  3040 IMPORT_C int asn1PE_GPS_MsrElement (OSCTXT* pctxt, ASN1T_GPS_MsrElement* pvalue);
       
  3041 
       
  3042 IMPORT_C int asn1PD_GPS_MsrElement (OSCTXT* pctxt, ASN1T_GPS_MsrElement* pvalue);
       
  3043 
       
  3044 IMPORT_C void asn1Print_GPS_MsrElement
       
  3045    (const char* name, ASN1T_GPS_MsrElement* pvalue);
       
  3046 
       
  3047 /**************************************************************/
       
  3048 /*                                                            */
       
  3049 /*  SeqOfGPS_MsrElement                                       */
       
  3050 /*                                                            */
       
  3051 /**************************************************************/
       
  3052 
       
  3053 #define TV_SeqOfGPS_MsrElement	(TM_UNIV|TM_CONS|16)
       
  3054 
       
  3055 /* List of ASN1T_GPS_MsrElement */
       
  3056 typedef ASN1TSeqOfList ASN1T_SeqOfGPS_MsrElement;
       
  3057 
       
  3058 class ASN1C_SeqOfGPS_MsrElement :
       
  3059 public ASN1CSeqOfList
       
  3060 {
       
  3061 protected:
       
  3062    ASN1T_SeqOfGPS_MsrElement& msgData;
       
  3063 public:
       
  3064    IMPORT_C ASN1C_SeqOfGPS_MsrElement (ASN1T_SeqOfGPS_MsrElement& data);
       
  3065    IMPORT_C ASN1C_SeqOfGPS_MsrElement (OSRTMessageBufferIF& msgBuf
       
  3066       , ASN1T_SeqOfGPS_MsrElement& data);
       
  3067    IMPORT_C ASN1C_SeqOfGPS_MsrElement (ASN1CType& ccobj, ASN1T_SeqOfGPS_MsrElement& data);
       
  3068    IMPORT_C ASN1C_SeqOfGPS_MsrElement (OSRTContext &context
       
  3069       , ASN1T_SeqOfGPS_MsrElement& data);
       
  3070    IMPORT_C void Append (ASN1T_GPS_MsrElement* elem);
       
  3071    IMPORT_C ASN1T_GPS_MsrElement* NewElement ();
       
  3072 } ;
       
  3073 
       
  3074 IMPORT_C int asn1PE_SeqOfGPS_MsrElement (OSCTXT* pctxt, ASN1T_SeqOfGPS_MsrElement* pvalue);
       
  3075 
       
  3076 IMPORT_C int asn1PD_SeqOfGPS_MsrElement (OSCTXT* pctxt, ASN1T_SeqOfGPS_MsrElement* pvalue);
       
  3077 
       
  3078 IMPORT_C void asn1Print_SeqOfGPS_MsrElement
       
  3079    (const char* name, ASN1T_SeqOfGPS_MsrElement* pvalue);
       
  3080 
       
  3081 IMPORT_C void asn1Free_SeqOfGPS_MsrElement (OSCTXT *pctxt, ASN1T_SeqOfGPS_MsrElement* pvalue);
       
  3082 
       
  3083 /**************************************************************/
       
  3084 /*                                                            */
       
  3085 /*  GPS_MsrSetElement                                         */
       
  3086 /*                                                            */
       
  3087 /**************************************************************/
       
  3088 
       
  3089 #define TV_GPS_MsrSetElement	(TM_UNIV|TM_CONS|16)
       
  3090 
       
  3091 struct ASN1T_GPS_MsrSetElement {
       
  3092    struct {
       
  3093       unsigned refFramePresent : 1;
       
  3094    } m;
       
  3095    OSUINT16 refFrame;
       
  3096    ASN1T_GPSTOW24b gpsTOW;
       
  3097    ASN1T_SeqOfGPS_MsrElement gps_msrList;
       
  3098    IMPORT_C ASN1T_GPS_MsrSetElement ();
       
  3099 } ;
       
  3100 
       
  3101 IMPORT_C int asn1PE_GPS_MsrSetElement (OSCTXT* pctxt, ASN1T_GPS_MsrSetElement* pvalue);
       
  3102 
       
  3103 IMPORT_C int asn1PD_GPS_MsrSetElement (OSCTXT* pctxt, ASN1T_GPS_MsrSetElement* pvalue);
       
  3104 
       
  3105 IMPORT_C void asn1Print_GPS_MsrSetElement
       
  3106    (const char* name, ASN1T_GPS_MsrSetElement* pvalue);
       
  3107 
       
  3108 IMPORT_C void asn1Free_GPS_MsrSetElement (OSCTXT *pctxt, ASN1T_GPS_MsrSetElement* pvalue);
       
  3109 
       
  3110 /**************************************************************/
       
  3111 /*                                                            */
       
  3112 /*  SeqOfGPS_MsrSetElement                                    */
       
  3113 /*                                                            */
       
  3114 /**************************************************************/
       
  3115 
       
  3116 #define TV_SeqOfGPS_MsrSetElement	(TM_UNIV|TM_CONS|16)
       
  3117 
       
  3118 /* List of ASN1T_GPS_MsrSetElement */
       
  3119 typedef ASN1TSeqOfList ASN1T_SeqOfGPS_MsrSetElement;
       
  3120 
       
  3121 class ASN1C_SeqOfGPS_MsrSetElement :
       
  3122 public ASN1CSeqOfList
       
  3123 {
       
  3124 protected:
       
  3125    ASN1T_SeqOfGPS_MsrSetElement& msgData;
       
  3126 public:
       
  3127    IMPORT_C ASN1C_SeqOfGPS_MsrSetElement (ASN1T_SeqOfGPS_MsrSetElement& data);
       
  3128    IMPORT_C ASN1C_SeqOfGPS_MsrSetElement (OSRTMessageBufferIF& msgBuf
       
  3129       , ASN1T_SeqOfGPS_MsrSetElement& data);
       
  3130    IMPORT_C ASN1C_SeqOfGPS_MsrSetElement (ASN1CType& ccobj, ASN1T_SeqOfGPS_MsrSetElement& data);
       
  3131    IMPORT_C ASN1C_SeqOfGPS_MsrSetElement (OSRTContext &context
       
  3132       , ASN1T_SeqOfGPS_MsrSetElement& data);
       
  3133    IMPORT_C void Append (ASN1T_GPS_MsrSetElement* elem);
       
  3134    IMPORT_C ASN1T_GPS_MsrSetElement* NewElement ();
       
  3135 } ;
       
  3136 
       
  3137 IMPORT_C int asn1PE_SeqOfGPS_MsrSetElement (OSCTXT* pctxt, ASN1T_SeqOfGPS_MsrSetElement* pvalue);
       
  3138 
       
  3139 IMPORT_C int asn1PD_SeqOfGPS_MsrSetElement (OSCTXT* pctxt, ASN1T_SeqOfGPS_MsrSetElement* pvalue);
       
  3140 
       
  3141 IMPORT_C void asn1Print_SeqOfGPS_MsrSetElement
       
  3142    (const char* name, ASN1T_SeqOfGPS_MsrSetElement* pvalue);
       
  3143 
       
  3144 IMPORT_C void asn1Free_SeqOfGPS_MsrSetElement (OSCTXT *pctxt, ASN1T_SeqOfGPS_MsrSetElement* pvalue);
       
  3145 
       
  3146 /**************************************************************/
       
  3147 /*                                                            */
       
  3148 /*  GPS_MeasureInfo                                           */
       
  3149 /*                                                            */
       
  3150 /**************************************************************/
       
  3151 
       
  3152 #define TV_GPS_MeasureInfo	(TM_UNIV|TM_CONS|16)
       
  3153 
       
  3154 struct ASN1T_GPS_MeasureInfo {
       
  3155    ASN1T_SeqOfGPS_MsrSetElement gpsMsrSetList;
       
  3156    IMPORT_C ASN1T_GPS_MeasureInfo ();
       
  3157 } ;
       
  3158 
       
  3159 IMPORT_C int asn1PE_GPS_MeasureInfo (OSCTXT* pctxt, ASN1T_GPS_MeasureInfo* pvalue);
       
  3160 
       
  3161 IMPORT_C int asn1PD_GPS_MeasureInfo (OSCTXT* pctxt, ASN1T_GPS_MeasureInfo* pvalue);
       
  3162 
       
  3163 IMPORT_C void asn1Print_GPS_MeasureInfo
       
  3164    (const char* name, ASN1T_GPS_MeasureInfo* pvalue);
       
  3165 
       
  3166 IMPORT_C void asn1Free_GPS_MeasureInfo (OSCTXT *pctxt, ASN1T_GPS_MeasureInfo* pvalue);
       
  3167 
       
  3168 /**************************************************************/
       
  3169 /*                                                            */
       
  3170 /*  LocErrorReason                                            */
       
  3171 /*                                                            */
       
  3172 /**************************************************************/
       
  3173 
       
  3174 #define TV_LocErrorReason	(TM_UNIV|TM_PRIM|10)
       
  3175 
       
  3176 struct LocErrorReason {
       
  3177    enum Root {
       
  3178       unDefined = 0,
       
  3179       notEnoughBTSs = 1,
       
  3180       notEnoughSats = 2,
       
  3181       eotdLocCalAssDataMissing = 3,
       
  3182       eotdAssDataMissing = 4,
       
  3183       gpsLocCalAssDataMissing = 5,
       
  3184       gpsAssDataMissing = 6,
       
  3185       methodNotSupported = 7,
       
  3186       notProcessed = 8,
       
  3187       refBTSForGPSNotServingBTS = 9,
       
  3188       refBTSForEOTDNotServingBTS = 10
       
  3189    } ;
       
  3190 } ;
       
  3191 
       
  3192 typedef OSUINT32 ASN1T_LocErrorReason;
       
  3193 
       
  3194 IMPORT_C int asn1PE_LocErrorReason (OSCTXT* pctxt, ASN1T_LocErrorReason value);
       
  3195 
       
  3196 IMPORT_C int asn1PD_LocErrorReason (OSCTXT* pctxt, ASN1T_LocErrorReason* pvalue);
       
  3197 
       
  3198 IMPORT_C void asn1Print_LocErrorReason
       
  3199    (const char* name, ASN1T_LocErrorReason* pvalue);
       
  3200 
       
  3201 IMPORT_C const OSUTF8CHAR* ASN1T_LocErrorReason_ToString (OSINT32 value);
       
  3202 
       
  3203 IMPORT_C int ASN1T_LocErrorReason_ToEnum (OSCTXT* pctxt,
       
  3204    const OSUTF8CHAR* value, ASN1T_LocErrorReason* pvalue);
       
  3205 
       
  3206 /**************************************************************/
       
  3207 /*                                                            */
       
  3208 /*  GPSAssistanceData                                         */
       
  3209 /*                                                            */
       
  3210 /**************************************************************/
       
  3211 
       
  3212 #define TV_GPSAssistanceData	(TM_UNIV|TM_PRIM|4)
       
  3213 
       
  3214 struct ASN1T_GPSAssistanceData {
       
  3215    OSUINT32 numocts;
       
  3216    OSOCTET data[40];
       
  3217    // ctors
       
  3218    ASN1T_GPSAssistanceData () : numocts(0) {}
       
  3219    ASN1T_GPSAssistanceData (OSUINT32 _numocts, const OSOCTET* _data) :
       
  3220       numocts (_numocts) {
       
  3221       OSCRTLMEMCPY (data, _data, OSRTMIN (numocts, sizeof(data)));
       
  3222    }
       
  3223    ASN1T_GPSAssistanceData (const char* cstring) {
       
  3224       if (strlen(cstring) > 0) {
       
  3225          numocts = OSRTMIN ((OSCRTLSTRLEN(cstring)+1), sizeof(data));
       
  3226          OSCRTLSTRNCPY ((char*)data, cstring, sizeof(data));
       
  3227       }
       
  3228       else numocts = 0;
       
  3229    }
       
  3230    // assignment operators
       
  3231    ASN1T_GPSAssistanceData& operator= (const char* cstring) {
       
  3232       if (strlen(cstring) > 0) {
       
  3233          numocts = OSRTMIN ((OSCRTLSTRLEN(cstring)+1), sizeof(data));
       
  3234          OSCRTLSTRNCPY ((char*)data, cstring, sizeof(data));
       
  3235       }
       
  3236       else numocts = 0;
       
  3237       return *this;
       
  3238    }
       
  3239 } ;
       
  3240 
       
  3241 IMPORT_C int asn1PE_GPSAssistanceData (OSCTXT* pctxt, ASN1T_GPSAssistanceData* pvalue);
       
  3242 
       
  3243 IMPORT_C int asn1PD_GPSAssistanceData (OSCTXT* pctxt, ASN1T_GPSAssistanceData* pvalue);
       
  3244 
       
  3245 IMPORT_C void asn1Print_GPSAssistanceData
       
  3246    (const char* name, ASN1T_GPSAssistanceData* pvalue);
       
  3247 
       
  3248 /**************************************************************/
       
  3249 /*                                                            */
       
  3250 /*  AdditionalAssistanceData                                  */
       
  3251 /*                                                            */
       
  3252 /**************************************************************/
       
  3253 
       
  3254 #define TV_AdditionalAssistanceData	(TM_UNIV|TM_CONS|16)
       
  3255 
       
  3256 struct ASN1T_AdditionalAssistanceData {
       
  3257    struct {
       
  3258       unsigned gpsAssistanceDataPresent : 1;
       
  3259       unsigned extensionContainerPresent : 1;
       
  3260    } m;
       
  3261    ASN1T_GPSAssistanceData gpsAssistanceData;
       
  3262    ASN1T_ExtensionContainer extensionContainer;
       
  3263    IMPORT_C ASN1T_AdditionalAssistanceData ();
       
  3264 } ;
       
  3265 
       
  3266 IMPORT_C int asn1PE_AdditionalAssistanceData (OSCTXT* pctxt, ASN1T_AdditionalAssistanceData* pvalue);
       
  3267 
       
  3268 IMPORT_C int asn1PD_AdditionalAssistanceData (OSCTXT* pctxt, ASN1T_AdditionalAssistanceData* pvalue);
       
  3269 
       
  3270 IMPORT_C void asn1Print_AdditionalAssistanceData
       
  3271    (const char* name, ASN1T_AdditionalAssistanceData* pvalue);
       
  3272 
       
  3273 IMPORT_C void asn1Free_AdditionalAssistanceData (OSCTXT *pctxt, ASN1T_AdditionalAssistanceData* pvalue);
       
  3274 
       
  3275 /**************************************************************/
       
  3276 /*                                                            */
       
  3277 /*  LocationError                                             */
       
  3278 /*                                                            */
       
  3279 /**************************************************************/
       
  3280 
       
  3281 #define TV_LocationError	(TM_UNIV|TM_CONS|16)
       
  3282 
       
  3283 struct ASN1T_LocationError {
       
  3284    struct {
       
  3285       unsigned additionalAssistanceDataPresent : 1;
       
  3286    } m;
       
  3287    ASN1T_LocErrorReason locErrorReason;
       
  3288    ASN1T_AdditionalAssistanceData additionalAssistanceData;
       
  3289    IMPORT_C ASN1T_LocationError ();
       
  3290 } ;
       
  3291 
       
  3292 IMPORT_C int asn1PE_LocationError (OSCTXT* pctxt, ASN1T_LocationError* pvalue);
       
  3293 
       
  3294 IMPORT_C int asn1PD_LocationError (OSCTXT* pctxt, ASN1T_LocationError* pvalue);
       
  3295 
       
  3296 IMPORT_C void asn1Print_LocationError
       
  3297    (const char* name, ASN1T_LocationError* pvalue);
       
  3298 
       
  3299 IMPORT_C void asn1Free_LocationError (OSCTXT *pctxt, ASN1T_LocationError* pvalue);
       
  3300 
       
  3301 /**************************************************************/
       
  3302 /*                                                            */
       
  3303 /*  SeqOfOTD_FirstSetMsrs_R98_Ext                             */
       
  3304 /*                                                            */
       
  3305 /**************************************************************/
       
  3306 
       
  3307 #define TV_SeqOfOTD_FirstSetMsrs_R98_Ext	(TM_UNIV|TM_CONS|16)
       
  3308 
       
  3309 /* List of ASN1T_OTD_FirstSetMsrs */
       
  3310 typedef ASN1TSeqOfList ASN1T_SeqOfOTD_FirstSetMsrs_R98_Ext;
       
  3311 
       
  3312 class ASN1C_SeqOfOTD_FirstSetMsrs_R98_Ext :
       
  3313 public ASN1CSeqOfList
       
  3314 {
       
  3315 protected:
       
  3316    ASN1T_SeqOfOTD_FirstSetMsrs_R98_Ext& msgData;
       
  3317 public:
       
  3318    IMPORT_C ASN1C_SeqOfOTD_FirstSetMsrs_R98_Ext
       
  3319        (ASN1T_SeqOfOTD_FirstSetMsrs_R98_Ext& data);
       
  3320    IMPORT_C ASN1C_SeqOfOTD_FirstSetMsrs_R98_Ext (OSRTMessageBufferIF& msgBuf
       
  3321       , ASN1T_SeqOfOTD_FirstSetMsrs_R98_Ext& data);
       
  3322    ASN1C_SeqOfOTD_FirstSetMsrs_R98_Ext (ASN1CType& ccobj, ASN1T_SeqOfOTD_FirstSetMsrs_R98_Ext& data);
       
  3323    IMPORT_C ASN1C_SeqOfOTD_FirstSetMsrs_R98_Ext (OSRTContext &context
       
  3324       , ASN1T_SeqOfOTD_FirstSetMsrs_R98_Ext& data);
       
  3325    void Append (ASN1T_OTD_FirstSetMsrs* elem);
       
  3326    ASN1T_OTD_FirstSetMsrs* NewElement ();
       
  3327 } ;
       
  3328 
       
  3329 IMPORT_C int asn1PE_SeqOfOTD_FirstSetMsrs_R98_Ext (OSCTXT* pctxt, ASN1T_SeqOfOTD_FirstSetMsrs_R98_Ext* pvalue);
       
  3330 
       
  3331 IMPORT_C int asn1PD_SeqOfOTD_FirstSetMsrs_R98_Ext (OSCTXT* pctxt, ASN1T_SeqOfOTD_FirstSetMsrs_R98_Ext* pvalue);
       
  3332 
       
  3333 IMPORT_C void asn1Print_SeqOfOTD_FirstSetMsrs_R98_Ext
       
  3334    (const char* name, ASN1T_SeqOfOTD_FirstSetMsrs_R98_Ext* pvalue);
       
  3335 
       
  3336 IMPORT_C void asn1Free_SeqOfOTD_FirstSetMsrs_R98_Ext (OSCTXT *pctxt, ASN1T_SeqOfOTD_FirstSetMsrs_R98_Ext* pvalue);
       
  3337 
       
  3338 /**************************************************************/
       
  3339 /*                                                            */
       
  3340 /*  OTD_MsrElementFirst_R98_Ext                               */
       
  3341 /*                                                            */
       
  3342 /**************************************************************/
       
  3343 
       
  3344 #define TV_OTD_MsrElementFirst_R98_Ext	(TM_UNIV|TM_CONS|16)
       
  3345 
       
  3346 struct ASN1T_OTD_MsrElementFirst_R98_Ext {
       
  3347    struct {
       
  3348       unsigned otd_FirstSetMsrs_R98_ExtPresent : 1;
       
  3349    } m;
       
  3350    ASN1T_SeqOfOTD_FirstSetMsrs_R98_Ext otd_FirstSetMsrs_R98_Ext;
       
  3351    IMPORT_C ASN1T_OTD_MsrElementFirst_R98_Ext ();
       
  3352 } ;
       
  3353 
       
  3354 IMPORT_C int asn1PE_OTD_MsrElementFirst_R98_Ext (OSCTXT* pctxt, ASN1T_OTD_MsrElementFirst_R98_Ext* pvalue);
       
  3355 
       
  3356 IMPORT_C int asn1PD_OTD_MsrElementFirst_R98_Ext (OSCTXT* pctxt, ASN1T_OTD_MsrElementFirst_R98_Ext* pvalue);
       
  3357 
       
  3358 IMPORT_C void asn1Print_OTD_MsrElementFirst_R98_Ext
       
  3359    (const char* name, ASN1T_OTD_MsrElementFirst_R98_Ext* pvalue);
       
  3360 
       
  3361 IMPORT_C void asn1Free_OTD_MsrElementFirst_R98_Ext (OSCTXT *pctxt, ASN1T_OTD_MsrElementFirst_R98_Ext* pvalue);
       
  3362 
       
  3363 /**************************************************************/
       
  3364 /*                                                            */
       
  3365 /*  OTD_MeasureInfo_R98_Ext                                   */
       
  3366 /*                                                            */
       
  3367 /**************************************************************/
       
  3368 
       
  3369 #define TV_OTD_MeasureInfo_R98_Ext	(TM_UNIV|TM_CONS|16)
       
  3370 
       
  3371 struct ASN1T_OTD_MeasureInfo_R98_Ext {
       
  3372    ASN1T_OTD_MsrElementFirst_R98_Ext otdMsrFirstSets_R98_Ext;
       
  3373    IMPORT_C ASN1T_OTD_MeasureInfo_R98_Ext ();
       
  3374 } ;
       
  3375 
       
  3376 IMPORT_C int asn1PE_OTD_MeasureInfo_R98_Ext (OSCTXT* pctxt, ASN1T_OTD_MeasureInfo_R98_Ext* pvalue);
       
  3377 
       
  3378 IMPORT_C int asn1PD_OTD_MeasureInfo_R98_Ext (OSCTXT* pctxt, ASN1T_OTD_MeasureInfo_R98_Ext* pvalue);
       
  3379 
       
  3380 IMPORT_C void asn1Print_OTD_MeasureInfo_R98_Ext
       
  3381    (const char* name, ASN1T_OTD_MeasureInfo_R98_Ext* pvalue);
       
  3382 
       
  3383 IMPORT_C void asn1Free_OTD_MeasureInfo_R98_Ext (OSCTXT *pctxt, ASN1T_OTD_MeasureInfo_R98_Ext* pvalue);
       
  3384 
       
  3385 /**************************************************************/
       
  3386 /*                                                            */
       
  3387 /*  Rel_98_MsrPosition_Rsp_Extension_rel_98_Ext_MeasureInfo   */
       
  3388 /*                                                            */
       
  3389 /**************************************************************/
       
  3390 
       
  3391 #define TV_Rel_98_MsrPosition_Rsp_Extension_rel_98_Ext_MeasureInfo	(TM_UNIV|TM_CONS|16)
       
  3392 
       
  3393 struct ASN1T_Rel_98_MsrPosition_Rsp_Extension_rel_98_Ext_MeasureInfo {
       
  3394    struct {
       
  3395       unsigned otd_MeasureInfo_R98_ExtPresent : 1;
       
  3396    } m;
       
  3397    ASN1T_OTD_MeasureInfo_R98_Ext otd_MeasureInfo_R98_Ext;
       
  3398    IMPORT_C ASN1T_Rel_98_MsrPosition_Rsp_Extension_rel_98_Ext_MeasureInfo ();
       
  3399 } ;
       
  3400 
       
  3401 IMPORT_C int asn1PE_Rel_98_MsrPosition_Rsp_Extension_rel_98_Ext_MeasureInfo (OSCTXT* pctxt, ASN1T_Rel_98_MsrPosition_Rsp_Extension_rel_98_Ext_MeasureInfo* pvalue);
       
  3402 
       
  3403 IMPORT_C int asn1PD_Rel_98_MsrPosition_Rsp_Extension_rel_98_Ext_MeasureInfo (OSCTXT* pctxt, ASN1T_Rel_98_MsrPosition_Rsp_Extension_rel_98_Ext_MeasureInfo* pvalue);
       
  3404 
       
  3405 IMPORT_C void asn1Print_Rel_98_MsrPosition_Rsp_Extension_rel_98_Ext_MeasureInfo
       
  3406    (const char* name, ASN1T_Rel_98_MsrPosition_Rsp_Extension_rel_98_Ext_MeasureInfo* pvalue);
       
  3407 
       
  3408 IMPORT_C void asn1Free_Rel_98_MsrPosition_Rsp_Extension_rel_98_Ext_MeasureInfo (OSCTXT *pctxt, ASN1T_Rel_98_MsrPosition_Rsp_Extension_rel_98_Ext_MeasureInfo* pvalue);
       
  3409 
       
  3410 /**************************************************************/
       
  3411 /*                                                            */
       
  3412 /*  GPSTimeAssistanceMeasurements                             */
       
  3413 /*                                                            */
       
  3414 /**************************************************************/
       
  3415 
       
  3416 #define TV_GPSTimeAssistanceMeasurements	(TM_UNIV|TM_CONS|16)
       
  3417 
       
  3418 struct ASN1T_GPSTimeAssistanceMeasurements {
       
  3419    struct {
       
  3420       unsigned gpsTowSubmsPresent : 1;
       
  3421       unsigned deltaTowPresent : 1;
       
  3422       unsigned gpsReferenceTimeUncertaintyPresent : 1;
       
  3423    } m;
       
  3424    OSUINT8 referenceFrameMSB;
       
  3425    OSUINT16 gpsTowSubms;
       
  3426    OSUINT8 deltaTow;
       
  3427    ASN1T_GPSReferenceTimeUncertainty gpsReferenceTimeUncertainty;
       
  3428    IMPORT_C ASN1T_GPSTimeAssistanceMeasurements ();
       
  3429 } ;
       
  3430 
       
  3431 IMPORT_C int asn1PE_GPSTimeAssistanceMeasurements (OSCTXT* pctxt, ASN1T_GPSTimeAssistanceMeasurements* pvalue);
       
  3432 
       
  3433 IMPORT_C int asn1PD_GPSTimeAssistanceMeasurements (OSCTXT* pctxt, ASN1T_GPSTimeAssistanceMeasurements* pvalue);
       
  3434 
       
  3435 IMPORT_C void asn1Print_GPSTimeAssistanceMeasurements
       
  3436    (const char* name, ASN1T_GPSTimeAssistanceMeasurements* pvalue);
       
  3437 
       
  3438 /**************************************************************/
       
  3439 /*                                                            */
       
  3440 /*  Rel_98_MsrPosition_Rsp_Extension                          */
       
  3441 /*                                                            */
       
  3442 /**************************************************************/
       
  3443 
       
  3444 #define TV_Rel_98_MsrPosition_Rsp_Extension	(TM_UNIV|TM_CONS|16)
       
  3445 
       
  3446 struct ASN1T_Rel_98_MsrPosition_Rsp_Extension {
       
  3447    struct {
       
  3448       unsigned timeAssistanceMeasurementsPresent : 1;
       
  3449    } m;
       
  3450    ASN1T_Rel_98_MsrPosition_Rsp_Extension_rel_98_Ext_MeasureInfo rel_98_Ext_MeasureInfo;
       
  3451    ASN1T_GPSTimeAssistanceMeasurements timeAssistanceMeasurements;
       
  3452    IMPORT_C ASN1T_Rel_98_MsrPosition_Rsp_Extension ();
       
  3453 } ;
       
  3454 
       
  3455 IMPORT_C int asn1PE_Rel_98_MsrPosition_Rsp_Extension (OSCTXT* pctxt, ASN1T_Rel_98_MsrPosition_Rsp_Extension* pvalue);
       
  3456 
       
  3457 IMPORT_C int asn1PD_Rel_98_MsrPosition_Rsp_Extension (OSCTXT* pctxt, ASN1T_Rel_98_MsrPosition_Rsp_Extension* pvalue);
       
  3458 
       
  3459 IMPORT_C void asn1Print_Rel_98_MsrPosition_Rsp_Extension
       
  3460    (const char* name, ASN1T_Rel_98_MsrPosition_Rsp_Extension* pvalue);
       
  3461 
       
  3462 IMPORT_C void asn1Free_Rel_98_MsrPosition_Rsp_Extension (OSCTXT *pctxt, ASN1T_Rel_98_MsrPosition_Rsp_Extension* pvalue);
       
  3463 
       
  3464 /**************************************************************/
       
  3465 /*                                                            */
       
  3466 /*  OTD_MeasureInfo_5_Ext                                     */
       
  3467 /*                                                            */
       
  3468 /**************************************************************/
       
  3469 
       
  3470 #define TV_OTD_MeasureInfo_5_Ext	(TM_UNIV|TM_CONS|16)
       
  3471 
       
  3472 typedef ASN1T_SeqOfOTD_MsrElementRest ASN1T_OTD_MeasureInfo_5_Ext;
       
  3473 
       
  3474 IMPORT_C int asn1PE_OTD_MeasureInfo_5_Ext (OSCTXT* pctxt, ASN1T_OTD_MeasureInfo_5_Ext* pvalue);
       
  3475 
       
  3476 IMPORT_C int asn1PD_OTD_MeasureInfo_5_Ext (OSCTXT* pctxt, ASN1T_OTD_MeasureInfo_5_Ext* pvalue);
       
  3477 
       
  3478 IMPORT_C void asn1Print_OTD_MeasureInfo_5_Ext
       
  3479    (const char* name, ASN1T_OTD_MeasureInfo_5_Ext* pvalue);
       
  3480 
       
  3481 IMPORT_C void asn1Free_OTD_MeasureInfo_5_Ext (OSCTXT *pctxt, ASN1T_OTD_MeasureInfo_5_Ext* pvalue);
       
  3482 
       
  3483 /**************************************************************/
       
  3484 /*                                                            */
       
  3485 /*  UlPseudoSegInd                                            */
       
  3486 /*                                                            */
       
  3487 /**************************************************************/
       
  3488 
       
  3489 #define TV_UlPseudoSegInd	(TM_UNIV|TM_PRIM|10)
       
  3490 
       
  3491 struct UlPseudoSegInd {
       
  3492    enum Root {
       
  3493       firstOfMany = 0,
       
  3494       secondOfMany = 1
       
  3495    } ;
       
  3496 } ;
       
  3497 
       
  3498 typedef OSUINT32 ASN1T_UlPseudoSegInd;
       
  3499 
       
  3500 IMPORT_C int asn1PE_UlPseudoSegInd (OSCTXT* pctxt, ASN1T_UlPseudoSegInd value);
       
  3501 
       
  3502 IMPORT_C int asn1PD_UlPseudoSegInd (OSCTXT* pctxt, ASN1T_UlPseudoSegInd* pvalue);
       
  3503 
       
  3504 IMPORT_C void asn1Print_UlPseudoSegInd
       
  3505    (const char* name, ASN1T_UlPseudoSegInd* pvalue);
       
  3506 
       
  3507 IMPORT_C const OSUTF8CHAR* ASN1T_UlPseudoSegInd_ToString (OSINT32 value);
       
  3508 
       
  3509 IMPORT_C int ASN1T_UlPseudoSegInd_ToEnum (OSCTXT* pctxt,
       
  3510    const OSUTF8CHAR* value, ASN1T_UlPseudoSegInd* pvalue);
       
  3511 
       
  3512 /**************************************************************/
       
  3513 /*                                                            */
       
  3514 /*  Rel_5_MsrPosition_Rsp_Extension                           */
       
  3515 /*                                                            */
       
  3516 /**************************************************************/
       
  3517 
       
  3518 #define TV_Rel_5_MsrPosition_Rsp_Extension	(TM_UNIV|TM_CONS|16)
       
  3519 
       
  3520 struct ASN1T_Rel_5_MsrPosition_Rsp_Extension {
       
  3521    struct {
       
  3522       unsigned extended_referencePresent : 1;
       
  3523       unsigned otd_MeasureInfo_5_ExtPresent : 1;
       
  3524       unsigned ulPseudoSegIndPresent : 1;
       
  3525    } m;
       
  3526    ASN1T_Extended_reference extended_reference;
       
  3527    ASN1T_OTD_MeasureInfo_5_Ext otd_MeasureInfo_5_Ext;
       
  3528    ASN1T_UlPseudoSegInd ulPseudoSegInd;
       
  3529    IMPORT_C ASN1T_Rel_5_MsrPosition_Rsp_Extension ();
       
  3530 } ;
       
  3531 
       
  3532 IMPORT_C int asn1PE_Rel_5_MsrPosition_Rsp_Extension (OSCTXT* pctxt, ASN1T_Rel_5_MsrPosition_Rsp_Extension* pvalue);
       
  3533 
       
  3534 IMPORT_C int asn1PD_Rel_5_MsrPosition_Rsp_Extension (OSCTXT* pctxt, ASN1T_Rel_5_MsrPosition_Rsp_Extension* pvalue);
       
  3535 
       
  3536 IMPORT_C void asn1Print_Rel_5_MsrPosition_Rsp_Extension
       
  3537    (const char* name, ASN1T_Rel_5_MsrPosition_Rsp_Extension* pvalue);
       
  3538 
       
  3539 IMPORT_C void asn1Free_Rel_5_MsrPosition_Rsp_Extension (OSCTXT *pctxt, ASN1T_Rel_5_MsrPosition_Rsp_Extension* pvalue);
       
  3540 
       
  3541 /**************************************************************/
       
  3542 /*                                                            */
       
  3543 /*  MsrPosition_Rsp                                           */
       
  3544 /*                                                            */
       
  3545 /**************************************************************/
       
  3546 
       
  3547 #define TV_MsrPosition_Rsp	(TM_UNIV|TM_CONS|16)
       
  3548 
       
  3549 struct ASN1T_MsrPosition_Rsp {
       
  3550    struct {
       
  3551       unsigned multipleSetsPresent : 1;
       
  3552       unsigned referenceIdentityPresent : 1;
       
  3553       unsigned otd_MeasureInfoPresent : 1;
       
  3554       unsigned locationInfoPresent : 1;
       
  3555       unsigned gps_MeasureInfoPresent : 1;
       
  3556       unsigned locationErrorPresent : 1;
       
  3557       unsigned extensionContainerPresent : 1;
       
  3558       unsigned rel_98_MsrPosition_Rsp_ExtensionPresent : 1;
       
  3559       unsigned rel_5_MsrPosition_Rsp_ExtensionPresent : 1;
       
  3560    } m;
       
  3561    ASN1T_MultipleSets multipleSets;
       
  3562    ASN1T_ReferenceIdentity referenceIdentity;
       
  3563    ASN1T_OTD_MeasureInfo otd_MeasureInfo;
       
  3564    ASN1T_LocationInfo locationInfo;
       
  3565    ASN1T_GPS_MeasureInfo gps_MeasureInfo;
       
  3566    ASN1T_LocationError locationError;
       
  3567    ASN1T_ExtensionContainer extensionContainer;
       
  3568    ASN1T_Rel_98_MsrPosition_Rsp_Extension rel_98_MsrPosition_Rsp_Extension;
       
  3569    ASN1T_Rel_5_MsrPosition_Rsp_Extension rel_5_MsrPosition_Rsp_Extension;
       
  3570    IMPORT_C ASN1T_MsrPosition_Rsp ();
       
  3571 } ;
       
  3572 
       
  3573 IMPORT_C int asn1PE_MsrPosition_Rsp (OSCTXT* pctxt, ASN1T_MsrPosition_Rsp* pvalue);
       
  3574 
       
  3575 IMPORT_C int asn1PD_MsrPosition_Rsp (OSCTXT* pctxt, ASN1T_MsrPosition_Rsp* pvalue);
       
  3576 
       
  3577 IMPORT_C void asn1Print_MsrPosition_Rsp
       
  3578    (const char* name, ASN1T_MsrPosition_Rsp* pvalue);
       
  3579 
       
  3580 IMPORT_C void asn1Free_MsrPosition_Rsp (OSCTXT *pctxt, ASN1T_MsrPosition_Rsp* pvalue);
       
  3581 
       
  3582 /**************************************************************/
       
  3583 /*                                                            */
       
  3584 /*  MoreAssDataToBeSent                                       */
       
  3585 /*                                                            */
       
  3586 /**************************************************************/
       
  3587 
       
  3588 #define TV_MoreAssDataToBeSent	(TM_UNIV|TM_PRIM|10)
       
  3589 
       
  3590 struct MoreAssDataToBeSent {
       
  3591    enum Root {
       
  3592       noMoreMessages = 0,
       
  3593       moreMessagesOnTheWay = 1
       
  3594    } ;
       
  3595 } ;
       
  3596 
       
  3597 typedef OSUINT32 ASN1T_MoreAssDataToBeSent;
       
  3598 
       
  3599 IMPORT_C int asn1PE_MoreAssDataToBeSent (OSCTXT* pctxt, ASN1T_MoreAssDataToBeSent value);
       
  3600 
       
  3601 IMPORT_C int asn1PD_MoreAssDataToBeSent (OSCTXT* pctxt, ASN1T_MoreAssDataToBeSent* pvalue);
       
  3602 
       
  3603 IMPORT_C void asn1Print_MoreAssDataToBeSent
       
  3604    (const char* name, ASN1T_MoreAssDataToBeSent* pvalue);
       
  3605 
       
  3606 IMPORT_C const OSUTF8CHAR* ASN1T_MoreAssDataToBeSent_ToString (OSINT32 value);
       
  3607 
       
  3608 IMPORT_C int ASN1T_MoreAssDataToBeSent_ToEnum (OSCTXT* pctxt,
       
  3609    const OSUTF8CHAR* value, ASN1T_MoreAssDataToBeSent* pvalue);
       
  3610 
       
  3611 /**************************************************************/
       
  3612 /*                                                            */
       
  3613 /*  Rel98_AssistanceData_Extension                            */
       
  3614 /*                                                            */
       
  3615 /**************************************************************/
       
  3616 
       
  3617 #define TV_Rel98_AssistanceData_Extension	(TM_UNIV|TM_CONS|16)
       
  3618 
       
  3619 struct ASN1T_Rel98_AssistanceData_Extension {
       
  3620    struct {
       
  3621       unsigned rel98_Ext_ExpOTDPresent : 1;
       
  3622       unsigned gpsTimeAssistanceMeasurementRequestPresent : 1;
       
  3623       unsigned gpsReferenceTimeUncertaintyPresent : 1;
       
  3624    } m;
       
  3625    ASN1T_Rel98_Ext_ExpOTD rel98_Ext_ExpOTD;
       
  3626    ASN1T_GPSReferenceTimeUncertainty gpsReferenceTimeUncertainty;
       
  3627    IMPORT_C ASN1T_Rel98_AssistanceData_Extension ();
       
  3628 } ;
       
  3629 
       
  3630 IMPORT_C int asn1PE_Rel98_AssistanceData_Extension (OSCTXT* pctxt, ASN1T_Rel98_AssistanceData_Extension* pvalue);
       
  3631 
       
  3632 IMPORT_C int asn1PD_Rel98_AssistanceData_Extension (OSCTXT* pctxt, ASN1T_Rel98_AssistanceData_Extension* pvalue);
       
  3633 
       
  3634 IMPORT_C void asn1Print_Rel98_AssistanceData_Extension
       
  3635    (const char* name, ASN1T_Rel98_AssistanceData_Extension* pvalue);
       
  3636 
       
  3637 IMPORT_C void asn1Free_Rel98_AssistanceData_Extension (OSCTXT *pctxt, ASN1T_Rel98_AssistanceData_Extension* pvalue);
       
  3638 
       
  3639 /**************************************************************/
       
  3640 /*                                                            */
       
  3641 /*  Rel5_AssistanceData_Extension                             */
       
  3642 /*                                                            */
       
  3643 /**************************************************************/
       
  3644 
       
  3645 #define TV_Rel5_AssistanceData_Extension	(TM_UNIV|TM_CONS|16)
       
  3646 
       
  3647 struct ASN1T_Rel5_AssistanceData_Extension {
       
  3648    ASN1T_Extended_reference extended_reference;
       
  3649    IMPORT_C ASN1T_Rel5_AssistanceData_Extension ();
       
  3650 } ;
       
  3651 
       
  3652 IMPORT_C int asn1PE_Rel5_AssistanceData_Extension (OSCTXT* pctxt, ASN1T_Rel5_AssistanceData_Extension* pvalue);
       
  3653 
       
  3654 IMPORT_C int asn1PD_Rel5_AssistanceData_Extension (OSCTXT* pctxt, ASN1T_Rel5_AssistanceData_Extension* pvalue);
       
  3655 
       
  3656 IMPORT_C void asn1Print_Rel5_AssistanceData_Extension
       
  3657    (const char* name, ASN1T_Rel5_AssistanceData_Extension* pvalue);
       
  3658 
       
  3659 /**************************************************************/
       
  3660 /*                                                            */
       
  3661 /*  AssistanceData                                            */
       
  3662 /*                                                            */
       
  3663 /**************************************************************/
       
  3664 
       
  3665 #define TV_AssistanceData	(TM_UNIV|TM_CONS|16)
       
  3666 
       
  3667 struct ASN1T_AssistanceData {
       
  3668    struct {
       
  3669       unsigned referenceAssistDataPresent : 1;
       
  3670       unsigned msrAssistDataPresent : 1;
       
  3671       unsigned systemInfoAssistDataPresent : 1;
       
  3672       unsigned gps_AssistDataPresent : 1;
       
  3673       unsigned moreAssDataToBeSentPresent : 1;
       
  3674       unsigned extensionContainerPresent : 1;
       
  3675       unsigned rel98_AssistanceData_ExtensionPresent : 1;
       
  3676       unsigned rel5_AssistanceData_ExtensionPresent : 1;
       
  3677    } m;
       
  3678    ASN1T_ReferenceAssistData referenceAssistData;
       
  3679    ASN1T_MsrAssistData msrAssistData;
       
  3680    ASN1T_SystemInfoAssistData systemInfoAssistData;
       
  3681    ASN1T_GPS_AssistData gps_AssistData;
       
  3682    ASN1T_MoreAssDataToBeSent moreAssDataToBeSent;
       
  3683    ASN1T_ExtensionContainer extensionContainer;
       
  3684    ASN1T_Rel98_AssistanceData_Extension rel98_AssistanceData_Extension;
       
  3685    ASN1T_Rel5_AssistanceData_Extension rel5_AssistanceData_Extension;
       
  3686    IMPORT_C ASN1T_AssistanceData ();
       
  3687 } ;
       
  3688 
       
  3689 IMPORT_C int asn1PE_AssistanceData (OSCTXT* pctxt, ASN1T_AssistanceData* pvalue);
       
  3690 
       
  3691 IMPORT_C int asn1PD_AssistanceData (OSCTXT* pctxt, ASN1T_AssistanceData* pvalue);
       
  3692 
       
  3693 IMPORT_C void asn1Print_AssistanceData
       
  3694    (const char* name, ASN1T_AssistanceData* pvalue);
       
  3695 
       
  3696 IMPORT_C void asn1Free_AssistanceData (OSCTXT *pctxt, ASN1T_AssistanceData* pvalue);
       
  3697 
       
  3698 /**************************************************************/
       
  3699 /*                                                            */
       
  3700 /*  ErrorCodes                                                */
       
  3701 /*                                                            */
       
  3702 /**************************************************************/
       
  3703 
       
  3704 #define TV_ErrorCodes	(TM_UNIV|TM_PRIM|10)
       
  3705 
       
  3706 struct ErrorCodes {
       
  3707    enum Root {
       
  3708       unDefined = 0,
       
  3709       missingComponet = 1,
       
  3710       incorrectData = 2,
       
  3711       missingIEorComponentElement = 3,
       
  3712       messageTooShort = 4,
       
  3713       unknowReferenceNumber = 5
       
  3714    } ;
       
  3715 } ;
       
  3716 
       
  3717 typedef OSUINT32 ASN1T_ErrorCodes;
       
  3718 
       
  3719 IMPORT_C int asn1PE_ErrorCodes (OSCTXT* pctxt, ASN1T_ErrorCodes value);
       
  3720 
       
  3721 IMPORT_C int asn1PD_ErrorCodes (OSCTXT* pctxt, ASN1T_ErrorCodes* pvalue);
       
  3722 
       
  3723 IMPORT_C void asn1Print_ErrorCodes
       
  3724    (const char* name, ASN1T_ErrorCodes* pvalue);
       
  3725 
       
  3726 IMPORT_C const OSUTF8CHAR* ASN1T_ErrorCodes_ToString (OSINT32 value);
       
  3727 
       
  3728 IMPORT_C int ASN1T_ErrorCodes_ToEnum (OSCTXT* pctxt,
       
  3729    const OSUTF8CHAR* value, ASN1T_ErrorCodes* pvalue);
       
  3730 
       
  3731 /**************************************************************/
       
  3732 /*                                                            */
       
  3733 /*  Rel_5_ProtocolError_Extension                             */
       
  3734 /*                                                            */
       
  3735 /**************************************************************/
       
  3736 
       
  3737 #define TV_Rel_5_ProtocolError_Extension	(TM_UNIV|TM_CONS|16)
       
  3738 
       
  3739 struct ASN1T_Rel_5_ProtocolError_Extension {
       
  3740    struct {
       
  3741       unsigned extended_referencePresent : 1;
       
  3742    } m;
       
  3743    ASN1T_Extended_reference extended_reference;
       
  3744    IMPORT_C ASN1T_Rel_5_ProtocolError_Extension ();
       
  3745 } ;
       
  3746 
       
  3747 IMPORT_C int asn1PE_Rel_5_ProtocolError_Extension (OSCTXT* pctxt, ASN1T_Rel_5_ProtocolError_Extension* pvalue);
       
  3748 
       
  3749 IMPORT_C int asn1PD_Rel_5_ProtocolError_Extension (OSCTXT* pctxt, ASN1T_Rel_5_ProtocolError_Extension* pvalue);
       
  3750 
       
  3751 IMPORT_C void asn1Print_Rel_5_ProtocolError_Extension
       
  3752    (const char* name, ASN1T_Rel_5_ProtocolError_Extension* pvalue);
       
  3753 
       
  3754 /**************************************************************/
       
  3755 /*                                                            */
       
  3756 /*  ProtocolError                                             */
       
  3757 /*                                                            */
       
  3758 /**************************************************************/
       
  3759 
       
  3760 #define TV_ProtocolError	(TM_UNIV|TM_CONS|16)
       
  3761 
       
  3762 struct ASN1T_ProtocolError {
       
  3763    struct {
       
  3764       unsigned extensionContainerPresent : 1;
       
  3765       unsigned rel_5_ProtocolError_ExtensionPresent : 1;
       
  3766    } m;
       
  3767    ASN1T_ErrorCodes errorCause;
       
  3768    ASN1T_ExtensionContainer extensionContainer;
       
  3769    ASN1T_Rel_5_ProtocolError_Extension rel_5_ProtocolError_Extension;
       
  3770    IMPORT_C ASN1T_ProtocolError ();
       
  3771 } ;
       
  3772 
       
  3773 IMPORT_C int asn1PE_ProtocolError (OSCTXT* pctxt, ASN1T_ProtocolError* pvalue);
       
  3774 
       
  3775 IMPORT_C int asn1PD_ProtocolError (OSCTXT* pctxt, ASN1T_ProtocolError* pvalue);
       
  3776 
       
  3777 IMPORT_C void asn1Print_ProtocolError
       
  3778    (const char* name, ASN1T_ProtocolError* pvalue);
       
  3779 
       
  3780 IMPORT_C void asn1Free_ProtocolError (OSCTXT *pctxt, ASN1T_ProtocolError* pvalue);
       
  3781 
       
  3782 /**************************************************************/
       
  3783 /*                                                            */
       
  3784 /*  SLR_Arg_PCS_Extensions                                    */
       
  3785 /*                                                            */
       
  3786 /**************************************************************/
       
  3787 
       
  3788 #define TV_SLR_Arg_PCS_Extensions	(TM_UNIV|TM_CONS|16)
       
  3789 
       
  3790 struct ASN1T_SLR_Arg_PCS_Extensions {
       
  3791    struct {
       
  3792       unsigned na_ESRK_RequestPresent : 1;
       
  3793    } m;
       
  3794    OSOCTET __dummy__;
       
  3795    IMPORT_C ASN1T_SLR_Arg_PCS_Extensions ();
       
  3796 } ;
       
  3797 
       
  3798 IMPORT_C int asn1PE_SLR_Arg_PCS_Extensions (OSCTXT* pctxt, ASN1T_SLR_Arg_PCS_Extensions* pvalue);
       
  3799 
       
  3800 IMPORT_C int asn1PD_SLR_Arg_PCS_Extensions (OSCTXT* pctxt, ASN1T_SLR_Arg_PCS_Extensions* pvalue);
       
  3801 
       
  3802 IMPORT_C void asn1Print_SLR_Arg_PCS_Extensions
       
  3803    (const char* name, ASN1T_SLR_Arg_PCS_Extensions* pvalue);
       
  3804 
       
  3805 /**************************************************************/
       
  3806 /*                                                            */
       
  3807 /*  SLR_ArgExtensionContainer                                 */
       
  3808 /*                                                            */
       
  3809 /**************************************************************/
       
  3810 
       
  3811 #define TV_SLR_ArgExtensionContainer	(TM_UNIV|TM_CONS|16)
       
  3812 
       
  3813 struct ASN1T_SLR_ArgExtensionContainer : public ASN1TPDU {
       
  3814    struct {
       
  3815       unsigned privateExtensionListPresent : 1;
       
  3816       unsigned slr_Arg_PCS_ExtensionsPresent : 1;
       
  3817    } m;
       
  3818    ASN1T_PrivateExtensionList privateExtensionList;
       
  3819    ASN1T_SLR_Arg_PCS_Extensions slr_Arg_PCS_Extensions;
       
  3820    IMPORT_C ASN1T_SLR_ArgExtensionContainer ();
       
  3821    IMPORT_C ~ASN1T_SLR_ArgExtensionContainer ();
       
  3822 } ;
       
  3823 
       
  3824 class ASN1C_SLR_ArgExtensionContainer :
       
  3825 public ASN1CType
       
  3826 {
       
  3827 protected:
       
  3828    ASN1T_SLR_ArgExtensionContainer& msgData;
       
  3829 public:
       
  3830    IMPORT_C ASN1C_SLR_ArgExtensionContainer (ASN1T_SLR_ArgExtensionContainer& data);
       
  3831    IMPORT_C ASN1C_SLR_ArgExtensionContainer (OSRTMessageBufferIF& msgBuf
       
  3832       , ASN1T_SLR_ArgExtensionContainer& data);
       
  3833    IMPORT_C ASN1C_SLR_ArgExtensionContainer (OSRTContext &context
       
  3834       , ASN1T_SLR_ArgExtensionContainer& data);
       
  3835 
       
  3836    inline ASN1T_SLR_ArgExtensionContainer& getData () { return msgData; }
       
  3837    inline const ASN1T_SLR_ArgExtensionContainer& getData () const { return msgData; }
       
  3838 
       
  3839    // standard encode/decode methods (defined in ASN1CType base class):
       
  3840    // int Encode ();
       
  3841    // int Decode ();
       
  3842 
       
  3843    // stream encode/decode methods:
       
  3844    IMPORT_C int EncodeTo (OSRTMessageBufferIF& msgBuf);
       
  3845    IMPORT_C int DecodeFrom (OSRTMessageBufferIF& msgBuf);
       
  3846 
       
  3847    IMPORT_C void Print (const char* name);
       
  3848 } ;
       
  3849 
       
  3850 IMPORT_C int asn1PE_SLR_ArgExtensionContainer (OSCTXT* pctxt, ASN1T_SLR_ArgExtensionContainer* pvalue);
       
  3851 
       
  3852 IMPORT_C int asn1PD_SLR_ArgExtensionContainer (OSCTXT* pctxt, ASN1T_SLR_ArgExtensionContainer* pvalue);
       
  3853 
       
  3854 IMPORT_C void asn1Print_SLR_ArgExtensionContainer
       
  3855    (const char* name, ASN1T_SLR_ArgExtensionContainer* pvalue);
       
  3856 
       
  3857 IMPORT_C void asn1Free_SLR_ArgExtensionContainer (OSCTXT *pctxt, ASN1T_SLR_ArgExtensionContainer* pvalue);
       
  3858 
       
  3859 #endif