diff options
-rw-r--r-- | asn1/Makefile.am | 5 | ||||
-rw-r--r-- | asn1/Makefile.nmake | 3 | ||||
-rw-r--r-- | asn1/lpp/LPP.asn | 16 | ||||
-rw-r--r-- | asn1/lpp/Makefile.common | 3 | ||||
-rw-r--r-- | asn1/lpp/lpp.cnf | 37 | ||||
-rw-r--r-- | asn1/lpp/packet-lpp-template.c | 12 | ||||
-rw-r--r-- | asn1/lpp/packet-lpp-template.h | 2 | ||||
-rw-r--r-- | asn1/lppe/LPPe.asn | 3898 | ||||
-rw-r--r-- | asn1/lppe/Makefile.am | 26 | ||||
-rw-r--r-- | asn1/lppe/Makefile.common | 47 | ||||
-rw-r--r-- | asn1/lppe/Makefile.nmake | 29 | ||||
-rw-r--r-- | asn1/lppe/lppe.cnf | 23 | ||||
-rw-r--r-- | asn1/lppe/packet-lppe-template.c | 99 | ||||
-rw-r--r-- | configure.in | 1 | ||||
-rw-r--r-- | epan/CMakeLists.txt | 3 | ||||
-rw-r--r-- | epan/dissectors/Makefile.common | 3 | ||||
-rw-r--r-- | epan/dissectors/packet-lpp.c | 115 | ||||
-rw-r--r-- | epan/dissectors/packet-lpp.h | 19 | ||||
-rw-r--r-- | epan/dissectors/packet-lppe.c | 21735 |
19 files changed, 26015 insertions, 61 deletions
diff --git a/asn1/Makefile.am b/asn1/Makefile.am index 7cbbc10813..ffec4bf1fa 100644 --- a/asn1/Makefile.am +++ b/asn1/Makefile.am @@ -67,8 +67,9 @@ SUBDIRS = \ lcsap \ ldap \ logotypecertextn \ - lpp \ - lppa \ + lpp \ + lppa \ + lppe \ lte-rrc \ m3ap \ mms \ diff --git a/asn1/Makefile.nmake b/asn1/Makefile.nmake index 79f4aec483..5c4e725cb7 100644 --- a/asn1/Makefile.nmake +++ b/asn1/Makefile.nmake @@ -120,8 +120,9 @@ PER_LIST= \ h501 \ hnbap \ lcsap \ - lpp \ + lpp \ lppa \ + lppe \ lte-rrc \ nbap \ m3ap \ diff --git a/asn1/lpp/LPP.asn b/asn1/lpp/LPP.asn index 9c233e0317..dbd2c0a7ea 100644 --- a/asn1/lpp/LPP.asn +++ b/asn1/lpp/LPP.asn @@ -1,4 +1,4 @@ --- 3GPP TS 36.355 V9.7.0 (2011-10) +-- 3GPP TS 36.355 V10.5.0 (2012-06) -- $Id$ -- @@ -381,7 +381,7 @@ CommonIEsProvideCapabilities ::= SEQUENCE { } CommonIEsRequestAssistanceData ::= SEQUENCE { - servingCellID ECGI OPTIONAL, -- Cond EUTRA + primaryCellID ECGI OPTIONAL, -- Cond EUTRA ... } @@ -572,7 +572,7 @@ OTDOA-NeighbourCellInfoElement ::= SEQUENCE { OPTIONAL, -- Cond NotSameAsRef1 prsInfo PRS-Info OPTIONAL, -- Cond NotSameAsRef2 antennaPortConfig ENUMERATED {ports-1-or-2, ports-4, ...} - OPTIONAL, -- Cond NotsameAsRef3 + OPTIONAL, -- Cond NotsameAsRef3 slotNumberOffset INTEGER (0..19) OPTIONAL, -- Cond NotSameAsRef4 prs-SubframeOffset INTEGER (0..1279) OPTIONAL, -- Cond InterFreq expectedRSTD INTEGER (0..16383), @@ -827,8 +827,8 @@ GNSS-TimeModelElement ::= SEQUENCE { tA0 INTEGER (-67108864..67108863), tA1 INTEGER (-4096..4095) OPTIONAL, -- Need ON tA2 INTEGER (-64..63) OPTIONAL, -- Need ON - gnss-TO-ID INTEGER (1..15), - weekNumber INTEGER (0..8191) OPTIONAL, -- Need ON + gnss-TO-ID INTEGER (1..15), + weekNumber INTEGER (0..8191) OPTIONAL, -- Need ON deltaT INTEGER (-128..127) OPTIONAL, -- Need ON ... } @@ -871,7 +871,7 @@ GNSS-NavModelSatelliteList ::= SEQUENCE (SIZE(1..64)) OF GNSS-NavModelSatelliteE GNSS-NavModelSatelliteElement ::= SEQUENCE { svID SV-ID, - svHealth BIT STRING (SIZE(8)), + svHealth BIT STRING (SIZE(8)), iod BIT STRING (SIZE(11)), gnss-ClockModel GNSS-ClockModel, gnss-OrbitModel GNSS-OrbitModel, @@ -1624,7 +1624,7 @@ GNSS-GenericAssistanceDataSupport ::= GNSS-GenericAssistDataSupportElement ::= SEQUENCE { gnss-ID GNSS-ID, - sbas-ID SBAS-ID OPTIONAL, -- Cond GNSS-ID-SBAS + sbas-ID SBAS-ID OPTIONAL, -- Cond GNSS ID SBAS gnss-TimeModelsSupport GNSS-TimeModelListSupport OPTIONAL, -- Cond TimeModSup gnss-DifferentialCorrectionsSupport GNSS-DifferentialCorrectionsSupport @@ -1789,7 +1789,7 @@ ECID-ProvideLocationInformation ::= SEQUENCE { } ECID-SignalMeasurementInformation ::= SEQUENCE { - servingCellMeasuredResults MeasuredResultsElement OPTIONAL, + primaryCellMeasuredResults MeasuredResultsElement OPTIONAL, measuredResultsList MeasuredResultsList, ... } diff --git a/asn1/lpp/Makefile.common b/asn1/lpp/Makefile.common index 7ad9113819..9dace52e78 100644 --- a/asn1/lpp/Makefile.common +++ b/asn1/lpp/Makefile.common @@ -22,6 +22,9 @@ PROTOCOL_NAME = lpp +EXPORT_FILES = \ + $(PROTOCOL_NAME)-exp.cnf + EXT_ASN_FILE_LIST = ASN_FILE_LIST = \ diff --git a/asn1/lpp/lpp.cnf b/asn1/lpp/lpp.cnf index 9f5cb72f6d..e72c554144 100644 --- a/asn1/lpp/lpp.cnf +++ b/asn1/lpp/lpp.cnf @@ -12,6 +12,23 @@ UNALIGNED Ellipsoid-Point_PDU EllipsoidPointWithAltitude_PDU HorizontalVelocity_PDU +GNSS-ID +GNSS-SignalID +GNSS-SignalIDs +GNSS-SystemTime +SV-ID +ECID-SignalMeasurementInformation +CellGlobalIdGERAN +CellGlobalIdEUTRA-AndUTRA +OTDOA-ReferenceCellInfo +OTDOA-NeighbourCellInfoElement +ARFCN-ValueEUTRA +Ellipsoid-Point +EllipsoidPointWithAltitude +EllipsoidPointWithAltitudeAndUncertaintyEllipsoid +NetworkTime +GNSS-ID-Bitmap +ARFCN-ValueUTRA #.END #.PDU_NEW @@ -67,3 +84,23 @@ HorizontalVelocity col_append_sep_str(actx->pinfo->cinfo, COL_INFO, NULL, "Error"); +#.FN_BODY EPDU-ID VAL_PTR = &lpp_epdu_id +%(DEFAULT_BODY)s + +#.TYPE_ATTR +EPDU-ID STRINGS=VALS(lpp_ePDU_ID_vals) + +#.FN_BODY EPDU-Body VAL_PTR=&lppe_tvb + tvbuff_t *lppe_tvb = NULL; +%(DEFAULT_BODY)s + switch(lpp_epdu_id){ + case 1: + if (lppe_tvb && lppe_handle) { + call_dissector(lppe_handle, lppe_tvb, actx->pinfo, tree); + } + break; + default: + break; + } + lpp_epdu_id = -1; + diff --git a/asn1/lpp/packet-lpp-template.c b/asn1/lpp/packet-lpp-template.c index d78210f353..0880fcd74d 100644 --- a/asn1/lpp/packet-lpp-template.c +++ b/asn1/lpp/packet-lpp-template.c @@ -22,7 +22,7 @@ * along with this program; if not, write to the Free Software * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA. * - * Ref 3GPP TS 36.355 version 9.7.0 Release 9 + * Ref 3GPP TS 36.355 version 10.5.0 Release 10 * http://www.3gpp.org */ @@ -50,6 +50,10 @@ static int proto_lpp = -1; #include "packet-lpp-hf.c" +static dissector_handle_t lppe_handle = NULL; + +static guint32 lpp_epdu_id = -1; + /* Initialize the subtree pointers */ static gint ett_lpp = -1; #include "packet-lpp-ett.c" @@ -57,6 +61,10 @@ static gint ett_lpp = -1; /* Include constants */ #include "packet-lpp-val.h" +static const value_string lpp_ePDU_ID_vals[] = { + { 1, "OMA LPP extensions (LPPe)"}, + { 0, NULL} +}; #include "packet-lpp-fn.c" @@ -93,7 +101,7 @@ void proto_register_lpp(void) { void proto_reg_handoff_lpp(void) { - + lppe_handle = find_dissector("lppe"); } diff --git a/asn1/lpp/packet-lpp-template.h b/asn1/lpp/packet-lpp-template.h index c83640a54f..a8bb987e9e 100644 --- a/asn1/lpp/packet-lpp-template.h +++ b/asn1/lpp/packet-lpp-template.h @@ -22,7 +22,7 @@ * along with this program; if not, write to the Free Software * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA. * - * Ref 3GPP TS 36.355 version 9.7.0 Release 9 + * Ref 3GPP TS 36.355 version 10.5.0 Release 10 * http://www.3gpp.org */ diff --git a/asn1/lppe/LPPe.asn b/asn1/lppe/LPPe.asn new file mode 100644 index 0000000000..018bc46705 --- /dev/null +++ b/asn1/lppe/LPPe.asn @@ -0,0 +1,3898 @@ +-- Open Mobile Alliance OMA-TS-LPPe V1_0-20110929-C +-- $Id$ +-- + +OMA-LPPE DEFINITIONS AUTOMATIC TAGS ::= +BEGIN + +-- asn2wrs does not seem to import integer constants maxFreqLayers) +--IMPORTS GNSS-ID, GNSS-SignalID, GNSS-SignalIDs, GNSS-SystemTime, SV-ID, +--ECID-SignalMeasurementInformation, CellGlobalIdGERAN, CellGlobalIdEUTRA-AndUTRA, +--OTDOA-ReferenceCellInfo, OTDOA-NeighbourCellInfoElement, maxFreqLayers, ARFCN-ValueEUTRA, +--Ellipsoid-Point, EllipsoidPointWithAltitude, EllipsoidPointWithAltitudeAndUncertaintyEllipsoid, +--NetworkTime, GNSS-ID-Bitmap, ARFCN-ValueUTRA FROM LPP-PDU-Definitions; +IMPORTS GNSS-ID, GNSS-SignalID, GNSS-SignalIDs, GNSS-SystemTime, SV-ID, +ECID-SignalMeasurementInformation, CellGlobalIdGERAN, CellGlobalIdEUTRA-AndUTRA, +OTDOA-ReferenceCellInfo, OTDOA-NeighbourCellInfoElement, ARFCN-ValueEUTRA, +Ellipsoid-Point, EllipsoidPointWithAltitude, EllipsoidPointWithAltitudeAndUncertaintyEllipsoid, +NetworkTime, GNSS-ID-Bitmap, ARFCN-ValueUTRA FROM LPP-PDU-Definitions; + +OMA-LPPe-MessageExtension ::= SEQUENCE { + lppeCompatibilityLevel OMA-LPPe-LPPeCompatibilityLevel, + lppeVersion OMA-LPPe-LPPeVersion, + lppeMode OMA-LPPe-LPPeMode, + messageExtensionBody OMA-LPPe-MessageExtensionBody, + ... +} + +OMA-LPPe-LPPeCompatibilityLevel ::= INTEGER (0..15) + +OMA-LPPe-LPPeVersion ::= SEQUENCE { + majorVersion INTEGER(0..255), + minorVersion INTEGER(0..255) +} + +OMA-LPPe-LPPeMode ::= ENUMERATED { + normal, + reversed, + ... +} + + +OMA-LPPe-MessageExtensionBody ::= CHOICE { + requestCapabilities OMA-LPPe-RequestCapabilities, + --Shall only be used in the EPDU in LPP RequestCapabilities + provideCapabilities OMA-LPPe-ProvideCapabilities, + --Shall only be used in the EPDU in LPP ProvideCapabilities + requestAssistanceData OMA-LPPe-RequestAssistanceData, + --Shall only be used in the EPDU in LPP RequestAssistanceData + provideAssistanceData OMA-LPPe-ProvideAssistanceData, + --Shall only be used in the EPDU in LPP ProvideAssistanceData + requestLocationInformation OMA-LPPe-RequestLocationInformation, + --Shall only be used in the EPDU in LPP RequestLocationInformation + provideLocationInformation OMA-LPPe-ProvideLocationInformation, + --Shall only be used in the EPDU in LPP ProvideLocationInformation + error OMA-LPPe-Error, --Shall only be used in the EPDU in LPP Error + abort OMA-LPPe-Abort, --Shall only be used in the EPDU in LPP Abort + ... +} + +OMA-LPPe-RequestCapabilities ::= SEQUENCE { + commonIEsRequestCapabilities OMA-LPPe-CommonIEsRequestCapabilities OPTIONAL, + agnss-RequestCapabilities OMA-LPPe-AGNSS-RequestCapabilities OPTIONAL, + otdoa-RequestCapabilities OMA-LPPe-OTDOA-RequestCapabilities OPTIONAL, + eotd-RequestCapabilities OMA-LPPe-EOTD-RequestCapabilities OPTIONAL, + otdoa-utra-RequestCapabilities OMA-LPPe-OTDOA-UTRA-RequestCapabilities OPTIONAL, + ecid-lte-RequestCapabilities OMA-LPPe-ECID-LTE-RequestCapabilities OPTIONAL, + ecid-gsm-RequestCapabilities OMA-LPPe-ECID-GSM-RequestCapabilities OPTIONAL, + ecid-utra-RequestCapabilities OMA-LPPe-ECID-UTRA-RequestCapabilities OPTIONAL, + wlan-ap-RequestCapabilities OMA-LPPe-WLAN-AP-RequestCapabilities OPTIONAL, + ecid-wimax-RequestCapabilities OMA-LPPe-ECID-WiMax-RequestCapabilities OPTIONAL, + sensor-RequestCapabilities OMA-LPPe-Sensor-RequestCapabilities OPTIONAL, + srn-RequestCapabilities OMA-LPPe-SRN-RequestCapabilities OPTIONAL, + ... +} + +OMA-LPPe-ProvideCapabilities::= SEQUENCE { + commonIEsProvideCapabilities OMA-LPPe-CommonIEsProvideCapabilities OPTIONAL, + agnss-ProvideCapabilities OMA-LPPe-AGNSS-ProvideCapabilities OPTIONAL, + otdoa-ProvideCapabilities OMA-LPPe-OTDOA-ProvideCapabilities OPTIONAL, + eotd-ProvideCapabilities OMA-LPPe-EOTD-ProvideCapabilities OPTIONAL, + otdoa-utra-ProvideCapabilities OMA-LPPe-OTDOA-UTRA-ProvideCapabilities OPTIONAL, + ecid-lte-ProvideCapabilities OMA-LPPe-ECID-LTE-ProvideCapabilities OPTIONAL, + ecid-gsm-ProvideCapabilities OMA-LPPe-ECID-GSM-ProvideCapabilities OPTIONAL, + ecid-utra-ProvideCapabilities OMA-LPPe-ECID-UTRA-ProvideCapabilities OPTIONAL, + wlan-ap-ProvideCapabilities OMA-LPPe-WLAN-AP-ProvideCapabilities OPTIONAL, + ecid-wimax-ProvideCapabilities OMA-LPPe-ECID-WiMax-ProvideCapabilities OPTIONAL, + sensor-ProvideCapabilities OMA-LPPe-Sensor-ProvideCapabilities OPTIONAL, + srn-ProvideCapabilities OMA-LPPe-SRN-ProvideCapabilities OPTIONAL, + ... +} + +OMA-LPPe-RequestAssistanceData ::= SEQUENCE { + commonIEsRequestAssistanceData OMA-LPPe-CommonIEsRequestAssistanceData OPTIONAL, + agnss-RequestAssistanceData OMA-LPPe-AGNSS-RequestAssistanceData OPTIONAL, + otdoa-RequestAssistanceData OMA-LPPe-OTDOA-RequestAssistanceData OPTIONAL, + eotd-RequestAssistanceData OMA-LPPe-EOTD-RequestAssistanceData OPTIONAL, + otdoa-utra-RequestAssistanceData OMA-LPPe-OTDOA-UTRA-RequestAssistanceData OPTIONAL, + ecid-lte-RequestAssistanceData OMA-LPPe-ECID-LTE-RequestAssistanceData OPTIONAL, + ecid-gsm-RequestAssistanceData OMA-LPPe-ECID-GSM-RequestAssistanceData OPTIONAL, + ecid-utra-RequestAssistanceData OMA-LPPe-ECID-UTRA-RequestAssistanceData OPTIONAL, + wlan-ap-RequestAssistanceData OMA-LPPe-WLAN-AP-RequestAssistanceData OPTIONAL, + sensor-RequestAssistanceData OMA-LPPe-Sensor-RequestAssistanceData OPTIONAL, + srn-RequestAssistanceData OMA-LPPe-SRN-RequestAssistanceData OPTIONAL, + ... +} + +OMA-LPPe-ProvideAssistanceData ::= SEQUENCE { + commonIEsProvideAssistanceData OMA-LPPe-CommonIEsProvideAssistanceData OPTIONAL, + agnss-ProvideAssistanceData OMA-LPPe-AGNSS-ProvideAssistanceData OPTIONAL, + otdoa-ProvideAssistanceData OMA-LPPe-OTDOA-ProvideAssistanceData OPTIONAL, + eotd-ProvideAssistanceData OMA-LPPe-EOTD-ProvideAssistanceData OPTIONAL, + otdoa-utra-ProvideAssistanceData OMA-LPPe-OTDOA-UTRA-ProvideAssistanceData OPTIONAL, + ecid-lte-ProvideAssistanceData OMA-LPPe-ECID-LTE-ProvideAssistanceData OPTIONAL, + ecid-gsm-ProvideAssistanceData OMA-LPPe-ECID-GSM-ProvideAssistanceData OPTIONAL, + ecid-utra-ProvideAssistanceData OMA-LPPe-ECID-UTRA-ProvideAssistanceData OPTIONAL, + wlan-ap-ProvideAssistanceData OMA-LPPe-WLAN-AP-ProvideAssistanceData OPTIONAL, + sensor-ProvideAssistanceData OMA-LPPe-Sensor-ProvideAssistanceData OPTIONAL, + srn-ProvideAssistanceData OMA-LPPe-SRN-ProvideAssistanceData OPTIONAL, + ... +} + +OMA-LPPe-RequestLocationInformation ::= SEQUENCE { + commonIEsRequestLocationInformation OMA-LPPe-CommonIEsRequestLocationInformation OPTIONAL, + agnss-RequestLocationInformation OMA-LPPe-AGNSS-RequestLocationInformation OPTIONAL, + otdoa-RequestLocationInformation OMA-LPPe-OTDOA-RequestLocationInformation OPTIONAL, + eotd-RequestLocationInformation OMA-LPPe-EOTD-RequestLocationInformation OPTIONAL, + otdoa-utra-RequestLocationInformation OMA-LPPe-OTDOA-UTRA-RequestLocationInformation OPTIONAL, + ecid-lte-RequestLocationInformation OMA-LPPe-ECID-LTE-RequestLocationInformation OPTIONAL, + ecid-gsm-RequestLocationInformation OMA-LPPe-ECID-GSM-RequestLocationInformation OPTIONAL, + ecid-utra-RequestLocationInformation OMA-LPPe-ECID-UTRA-RequestLocationInformation OPTIONAL, + wlan-ap-RequestLocationInformation OMA-LPPe-WLAN-AP-RequestLocationInformation OPTIONAL, + ecid-wimax-RequestLocationInformation OMA-LPPe-ECID-WiMax-RequestLocationInformation OPTIONAL, + sensor-RequestLocationInformation OMA-LPPe-Sensor-RequestLocationInformation OPTIONAL, + srn-RequestLocationInformation OMA-LPPe-SRN-RequestLocationInformation OPTIONAL, + ... +} + +OMA-LPPe-ProvideLocationInformation ::= SEQUENCE { + commonIEsProvideLocationInformation OMA-LPPe-CommonIEsProvideLocationInformation OPTIONAL, + agnss-ProvideLocationInformation OMA-LPPe-AGNSS-ProvideLocationInformation OPTIONAL, + otdoa-ProvideLocationInformation OMA-LPPe-OTDOA-ProvideLocationInformation OPTIONAL, + eotd-ProvideLocationInformation OMA-LPPe-EOTD-ProvideLocationInformation OPTIONAL, + otdoa-utra-ProvideLocationInformation OMA-LPPe-OTDOA-UTRA-ProvideLocationInformation OPTIONAL, + ecid-lte-ProvideLocationInformation OMA-LPPe-ECID-LTE-ProvideLocationInformation OPTIONAL, + ecid-gsm-ProvideLocationInformation OMA-LPPe-ECID-GSM-ProvideLocationInformation OPTIONAL, + ecid-utra-ProvideLocationInformation OMA-LPPe-ECID-UTRA-ProvideLocationInformation OPTIONAL, + wlan-ap-ProvideLocationInformastion OMA-LPPe-WLAN-AP-ProvideLocationInformation OPTIONAL, + ecid-wimax-ProvideLocationInformastion OMA-LPPe-ECID-WiMax-ProvideLocationInformation OPTIONAL, + sensor-ProvideLocationInformation OMA-LPPe-Sensor-ProvideLocationInformation OPTIONAL, + srn-ProvideLocationInformation OMA-LPPe-SRN-ProvideLocationInformation OPTIONAL, + ... +} + +OMA-LPPe-Abort ::= SEQUENCE { + commonIEsAbort OMA-LPPe-CommonIEsAbort OPTIONAL, + agnssAbort OMA-LPPe-AGNSS-Abort OPTIONAL, + ... +} + +OMA-LPPe-Error ::= SEQUENCE { + commonIEsError OMA-LPPe-CommonIEsError OPTIONAL, + ... +} + +OMA-LPPe-AssistanceContainer-DataSerialNumber ::= SEQUENCE { + dataSerialNumber INTEGER(0..4294967295), + ... +} + +OMA-LPPe-AssistanceContainerID ::= SEQUENCE { + containerID INTEGER (0..65535), + ... +} + +OMA-LPPe-AssistanceContainerProvideList ::= SEQUENCE (SIZE(1.. maxAssistanceContainerList)) OF + OMA-LPPe-AssistanceContainerProvide + +maxAssistanceContainerList INTEGER ::= 16 +OMA-LPPe-AssistanceContainerProvide ::= SEQUENCE { + dataIdentifier OMA-LPPe-VendorOrOperatorAssistanceDataIdentifier, + checkOrUpdateOrError ENUMERATED { + targetHasLatestData, + targetDataNotLatest, + targetDataNotLatestButServerCannotProvideLatestData, + targetHasValidData, + targetDataInvalidButServerCannotProvideValidData, + serverHasRequestedDataButUnableToProvideTemporarily, + serverDoesNotHaveRequestedData, + serverDoesNotRecognizeRequestedData, + undefined, + ... } OPTIONAL, --Cond CheckorUpdate + dataResult CHOICE { + simulationResult INTEGER(0..5000), + data OMA-LPPe-AssistanceContainerData, + ... + } OPTIONAL, + errorCode OMA-LPPe-AssistanceContainerProvideError OPTIONAL, + ... +} + +OMA-LPPe-AssistanceContainerData ::= SEQUENCE { + dataSerialNumber OMA-LPPe-AssistanceContainer-DataSerialNumber OPTIONAL, + data OCTET STRING, + validityPeriod OMA-LPPe-ValidityPeriod OPTIONAL, + validityArea OMA-LPPe-ValidityArea OPTIONAL, + ... +} + +OMA-LPPe-AssistanceContainerProvideError ::= SEQUENCE { + serverError ENUMERATED { assistanceContainerUnknownDataIdentifier, + assistanceContainerUnknownDataSerialNumber, + assistanceContainerDataTemporarilyUnavailable, + assistanceContainerDataNoLongerSupported, + assistanceContainerVendorOrOperatorNotSupported, + ...} OPTIONAL, + ... +} + +OMA-LPPe-AssistanceContainerRequestList ::= SEQUENCE (SIZE(1..maxAssistanceContainerList)) OF + OMA-LPPe-AssistanceContainerRequest + +OMA-LPPe-AssistanceContainerRequest ::= SEQUENCE { + dataIdentifier OMA-LPPe-VendorOrOperatorAssistanceDataIdentifier, + simulatedReq BOOLEAN, + checkOrUpdateReq OMA-LPPe-AssistanceContainerCheckOrUpdateReq OPTIONAL, + validityTimeRequest OMA-LPPe-ValidityPeriod OPTIONAL, + proprietaryRequestParameters OCTET STRING OPTIONAL, + ... +} + +OMA-LPPe-AssistanceContainerCheckOrUpdateReq ::= SEQUENCE { + dataSerialNumber OMA-LPPe-AssistanceContainer-DataSerialNumber, + checkLatest ENUMERATED {returnLatestIfCurrentNotLatest, + returnUpdateOnlyIfCurrentInvalid, + ... }, + ... +} + +OMA-LPPe-CellLocalIdGERAN ::= SEQUENCE { + locationAreaCode BIT STRING (SIZE (16)), + cellIdentity BIT STRING (SIZE (16)), + ... +} + +OMA-LPPe-CellNonUniqueIDGERAN ::= SEQUENCE { + bsic INTEGER (0..63), + bcch INTEGER (0..1023), + ... +} + +OMA-LPPe-CharArray ::= VisibleString(FROM ("a".."z" | "A".."Z" | "0".."9" | ".-"))(SIZE (1..31)) + +OMA-LPPe-CivicLocation ::= SEQUENCE { + countryCode OCTET STRING (SIZE (2)), + civicAddressElementList OMA-LPPe-CivicAddressElementList, + ... +} + +OMA-LPPe-CivicAddressElementList ::= SEQUENCE (SIZE (1..128)) OF OMA-LPPe-CivicAddressElement + +OMA-LPPe-CivicAddressElement ::= SEQUENCE { + caType INTEGER(0..511), + caValue OCTET STRING (SIZE (1..256)), + ... +} + +OMA-LPPe-Duration ::= SEQUENCE { + duration INTEGER (1..63), + durationLSB INTEGER (1..89) OPTIONAL, + ... +} + +OMA-LPPe-FixedAccessTypes ::= BIT STRING { cable (0), + dsl (1), + lan (2), + pstn (3), + other (4) } (SIZE(1..16)) + +OMA-LPPe-HighAccuracy3Dposition ::= SEQUENCE { + latitude INTEGER(-2147483648..2147483647), + longitude INTEGER(-2147483648..2147483647), + cep INTEGER(0..255) OPTIONAL, --Cond NoEllipse + uncertainty-semimajor INTEGER(0..255) OPTIONAL, --Cond NoCEP + uncertainty-semiminor INTEGER(0..255) OPTIONAL, --Cond NoCEP + offset-angle INTEGER(0..179) OPTIONAL, --Cond NoCEP + confidenceHorizontal INTEGER(0..99) OPTIONAL, + altitude INTEGER(-64000..1280000), + uncertainty-altitude INTEGER(0..255), + confidenceVertical INTEGER(0..99) OPTIONAL, + ... +} + +OMA-LPPe-HighAccuracy3Dvelocity ::= SEQUENCE { + enu-origin OMA-LPPe-HighAccuracy3Dposition OPTIONAL, + east-component INTEGER(0..511), + negative-sign-east NULL OPTIONAL, --Cond West + north-component INTEGER(0..511), + negative-sign-north NULL OPTIONAL, --Cond South + up-component INTEGER(0..511), + negative-sign-up NULL OPTIONAL, --Cond Down + cep INTEGER(0..255) OPTIONAL, --Cond NoEllipse + uncertainty-semimajor INTEGER(0..255) OPTIONAL, --Cond NoCEP, + uncertainty-semiminor INTEGER(0..255) OPTIONAL, --Cond NoCEP, + offset-angle INTEGER(0..179) OPTIONAL, --Cond NoCEP, + confidenceHorizontal INTEGER(0..99) OPTIONAL, + uncertainty-up-component INTEGER(0..255), + confidenceUp INTEGER(0..99) OPTIONAL, + ... +} + +OMA-LPPe-LocationInformationContainerID ::= SEQUENCE { + containerID INTEGER (0..65535), + ... +} + +OMA-LPPe-LocationInformationContainer ::= SEQUENCE { + vendorOrOperatorID OMA-LPPe-VendorOrOperatorID, + locationInformationContainerDataList OMA-LPPe-LocationInformationContainerDataList, + ... +} + +OMA-LPPe-LocationInformationContainerDataList ::= SEQUENCE + (SIZE(1..maxLocationInformationContainerDataList)) OF OMA-LPPe-LocationInformationContainerData + +OMA-LPPe-LocationInformationContainerData ::= SEQUENCE { + containerID OMA-LPPe-LocationInformationContainerID, + containerData OCTET STRING, + ... +} + +OMA-LPPe-LocationInformationContainerRequest ::= SEQUENCE { + vendorOrOperatorID OMA-LPPe-VendorOrOperatorID, + locationInformationContainerRequestList OMA-LPPe-LocationInformationContainerRequestList, + ... +} + +OMA-LPPe-LocationInformationContainerRequestList ::= SEQUENCE + (SIZE (1.. maxLocationInformationContainerDataList)) OF + OMA-LPPe-LocationInformationContainerRequestItem + +maxLocationInformationContainerDataList INTEGER ::= 10 + +OMA-LPPe-LocationInformationContainerRequestItem ::= SEQUENCE { + containerID OMA-LPPe-LocationInformationContainerID, + additionalInformation OCTET STRING OPTIONAL, + ... +} + +OMA-LPPe-MapDataReference ::= SEQUENCE { + dataID OMA-LPPe-AssistanceContainerID, + mapReference OCTET STRING (SIZE (1..64)), + mapSize INTEGER (1..5000) OPTIONAL, + ... +} + +OMA-LPPe-Orientation ::= CHOICE { + eulerAngles SEQUENCE { + alpha INTEGER (0..359), + beta INTEGER (0..180), + gamma INTEGER (0..359), + ... + }, + ... +} + +OMA-LPPe-ReferencePoint ::= SEQUENCE { + referencePointUniqueID OMA-LPPe-ReferencePointUniqueID OPTIONAL, + referencePointGeographicLocation CHOICE { + location3D EllipsoidPointWithAltitude, + location3DwithUncertainty EllipsoidPointWithAltitudeAndUncertaintyEllipsoid, + locationwithhighaccuracy OMA-LPPe-HighAccuracy3Dposition, + ... + } OPTIONAL, + referencePointCivicLocation OMA-LPPe-CivicLocation OPTIONAL, + referencePointFloorLevel INTEGER (-20..235) OPTIONAL, + relatedReferencePoints SEQUENCE (SIZE (1..8)) OF + OMA-LPPe-ReferencePointRelationship OPTIONAL, + mapDataInformation OMA-LPPe-MapDataInformation OPTIONAL, + ... +} + +OMA-LPPe-MapDataInformation ::= SEQUENCE (SIZE (1..16)) OF OMA-LPPe-MapDataReferenceElement + +OMA-LPPe-MapDataReferenceElement ::= SEQUENCE { + mapDataUrl CHOICE { + mapDataUrl OMA-LPPe-Uri, + mapDataRef OMA-LPPe-MapDataReference + }, + mapProvider CHOICE { + sameAsRefPointProvider NULL, + notSameAsRefPointProvider OMA-LPPe-VendorOrOperatorID, + ... + } OPTIONAL, + mapAssociation CHOICE { + referencePointUniqueID NULL, + otherID VisibleString (SIZE (1..64)), + mapOffset OMA-LPPe-RelativeLocation, + origin NULL, + ... + }, + mapHorizontalOrientation INTEGER (0..359) OPTIONAL, + ... +} + +OMA-LPPe-ReferencePointRelationship ::= SEQUENCE { + referencePointUniqueID OMA-LPPe-ReferencePointUniqueID, + relativeLocation OMA-LPPe-RelativeLocation, + ... +} + +OMA-LPPe-ReferencePointUniqueID ::= SEQUENCE { + providerID OMA-LPPe-VendorOrOperatorID, + providerAssignedID OCTET STRING, + version INTEGER (1..64), + ... +} + +OMA-LPPe-RelativeLocation ::= SEQUENCE { + units ENUMERATED {cm,dm, m10, ...} OPTIONAL, + arc-second-units ENUMERATED {as0-0003, as0-003, as0-03, as0-3, ...} OPTIONAL, + relativeNorth INTEGER (-524288..524287), + relativeEast INTEGER (-524288..524287), + relativeAltitude OMA-LPPe-RelativeAltitude OPTIONAL, + horizontalUncertainty OMA-LPPe-HorizontalUncertaintyAndConfidence OPTIONAL, + ... +} + +OMA-LPPe-HorizontalUncertaintyAndConfidence ::= SEQUENCE { + uncShape CHOICE { + circle INTEGER (0..127), + ellipse SEQUENCE { + semimajor INTEGER (0..127), + semiminor INTEGER (0..127), + offsetAngle INTEGER (0..179) + }, + ... + }, + confidence INTEGER (0..99) OPTIONAL, + ... +} + +OMA-LPPe-RelativeAltitude ::= SEQUENCE { + geodeticRelativeAltitude OMA-LPPe-GeodeticRelativeAltitude OPTIONAL, + civicRelativeAltitude OMA-LPPe-CivicRelativeAltitude OPTIONAL, + ... +} + +OMA-LPPe-GeodeticRelativeAltitude ::= SEQUENCE { + geodetic-height-depth INTEGER (-32768..32767), + geodetic-uncertainty-and-confidence OMA-LPPe-GeodeticUncertaintyAndConfidence OPTIONAL, + ... +} + +OMA-LPPe-GeodeticUncertaintyAndConfidence ::= SEQUENCE { + uncertainty INTEGER (0..127), + confidence INTEGER (0..99) OPTIONAL, + ... +} + +OMA-LPPe-CivicRelativeAltitude ::= SEQUENCE { + civic-floors INTEGER (-255..256), + civic-uncertainty-and-confidence OMA-LPPe-CivicUncertaintyAndConfidence OPTIONAL, + ... +} + +OMA-LPPe-CivicUncertaintyAndConfidence ::= SEQUENCE { + uncertainty INTEGER (0..127), + confidence INTEGER (0..99) OPTIONAL, + ... +} + +OMA-LPPe-Session-ID ::= SEQUENCE { + provider-ID OMA-LPPe-VendorOrOperatorID, + server-ID OCTET STRING (SIZE(4)), + session-ID OCTET STRING (SIZE(4)), + ... +} + +-- asn2wrs does not handle '%' in the resticted string +--OMA-LPPe-Uri ::= VisibleString (FROM ( "a".."z" | "A".."Z" | "0".."9" | ":" | "/" | "?" | "#" | "[" | +--"]" | "@" | "!" | "$" | "&" | "'" | "(" | ")" | "*" | "+" | "," | ";" | "=" | "-" | "." | "_" | "~" | +--"%" )) +OMA-LPPe-Uri ::= VisibleString (FROM ( "a".."z" | "A".."Z" | "0".."9" | ":" | "/" | "?" | "#" | "[" | +"]" | "@" | "!" | "$" | "&" | "'" | "(" | ")" | "*" | "+" | "," | ";" | "=" | "-" | "." | "_" | "~")) + +OMA-LPPe-ValidityArea ::= SEQUENCE { + regionSizeInv INTEGER (1..255), + areaWidth INTEGER (2..9180) OPTIONAL, + codedLatOfNWCorner INTEGER (0..4589), + codedLonOfNWCorner INTEGER (0..9179), + rleList OMA-LPPe-RleList OPTIONAL, + ... +} + +OMA-LPPe-RleList ::= SEQUENCE (SIZE(1..65535)) OF INTEGER (0..255) + +OMA-LPPe-ValidityPeriod ::= SEQUENCE { + beginTime GNSS-SystemTime, + beginTimeAlt INTEGER (0..2881) OPTIONAL, + duration INTEGER (1..2881), + ... +} + +OMA-LPPe-VendorOrOperatorAssistanceDataIdentifier ::= SEQUENCE { + vendorOrOperatorID OMA-LPPe-VendorOrOperatorID, + assistanceDataID OMA-LPPe-AssistanceContainerID, + ... +} + +OMA-LPPe-VendorOrOperatorID ::= CHOICE { + standard-VendorOrOperatorID INTEGER(1..1024), + nonStandard-VendorOrOperatorID OMA-LPPe-NonStandard-VendorOrOperatorID, + ... +} + + +OMA-LPPe-NonStandard-VendorOrOperatorID ::= SEQUENCE { + encodedID INTEGER(0..65535), + visibleIdentification OMA-LPPe-CharArray OPTIONAL, + ... +} + +OMA-LPPe-WirelessAccessTypes ::= BIT STRING { gsm (0), + utra (1), + lte (2), + wimax (3), + wifi (4), + other (5) } (SIZE(1..16)) + +OMA-LPPe-WLAN-AP-ID ::= SEQUENCE { + apMacAddress BIT STRING ( SIZE (48) ), + ... +} + +OMA-LPPe-WLAN-AP-Type ::= ENUMERATED { + ieee802-11a, + ieee802-11b, + ieee802-11g, + ieee802-11n, + ... +} + +OMA-LPPe-WLAN-AP-Type-List ::= BIT STRING { + ieee802-11a (0), + ieee802-11b (1), + ieee802-11g (2), + ieee802-11n (3) } (SIZE (1..16)) + +OMA-LPPe-WLANFemtoCoverageArea ::= SEQUENCE { + truncation INTEGER(-127..128) OPTIONAL, + areaType ENUMERATED { gaussian, binaryDistribution, ...} OPTIONAL, + confidence INTEGER (0..99), + componentList SEQUENCE (SIZE (1..16)) OF OMA-LPPe-WLANFemtoCoverageAreaElement, + ... +} + +OMA-LPPe-WLANFemtoCoverageAreaElement ::= SEQUENCE { + refPointAndArea SEQUENCE { + referenceLocation ENUMERATED {antenna, + referencePoint, + ... }, + referencePoint OMA-LPPe-ReferencePointUniqueID OPTIONAL, + locationAndArea OMA-LPPe-RelativeLocation, + ... + }, + type ENUMERATED {indoor (0), + outdoor (1), + mixed (2), + ... } OPTIONAL, + weight INTEGER (0..100) OPTIONAL, + ... +} + +OMA-LPPe-CommonIEsRequestCapabilities ::= SEQUENCE { + iP-Address-RequestCapabilities OMA-LPPe-IP-Address-RequestCapabilities OPTIONAL, + assistanceContainerSupportReq OMA-LPPe-AssistanceContainerSupportReq OPTIONAL, + locationInformationContainerSupportReq OMA-LPPe-LocationInformationContainerSupportReq + OPTIONAL, + relativeLocationChange-RequestCapabilities OMA-LPPe-RelativeLocationChange-RequestCapabilities + OPTIONAL, + highAccuracyFormatCapabilitiesReq OMA-LPPe-HighAccuracyFormatCapabilitiesReq OPTIONAL, + segmentedAssistanceData-ReqCapabilities OMA-LPPe-SegmentedAssistanceData-ReqCapabilities + OPTIONAL, + referencePointCapabilitiesReq OMA-LPPe-ReferencePointCapabilitiesReq OPTIONAL, + scheduledLocation-RequestCapabilities OMA-LPPe-ScheduledLocation-RequestCapabilities + OPTIONAL, + accessCapabilitiesReq OMA-LPPe-AccessCapabilitiesReq OPTIONAL, + segmentedLocationInformation-ReqCapabilities + OMA-LPPe-SegmentedLocationInformation-ReqCapabilities + OPTIONAL, + ... +} + +OMA-LPPe-IP-Address-RequestCapabilities ::= SEQUENCE { + ... +} + +OMA-LPPe-AssistanceContainerSupportReq ::= SEQUENCE { + vendorOrOperatorIDList OMA-LPPe-VendorOrOperatorIDList OPTIONAL, + ... +} + +OMA-LPPe-LocationInformationContainerSupportReq ::= SEQUENCE { + vendorOrOperatorIDList OMA-LPPe-VendorOrOperatorIDList OPTIONAL, + ... +} + +OMA-LPPe-VendorOrOperatorIDList ::= SEQUENCE (SIZE(1..maxVendorOrOperatorIDList)) OF + OMA-LPPe-VendorOrOperatorID + +maxVendorOrOperatorIDList INTEGER ::= 32 + +OMA-LPPe-RelativeLocationChange-RequestCapabilities ::= SEQUENCE { + ... +} + +OMA-LPPe-HighAccuracyFormatCapabilitiesReq ::= SEQUENCE { + ... +} +OMA-LPPe-SegmentedAssistanceData-ReqCapabilities ::= SEQUENCE { + ... +} + +OMA-LPPe-ReferencePointCapabilitiesReq ::= SEQUENCE { + referencePointProviderSupportListReq SEQUENCE (SIZE (1..128)) OF + OMA-LPPe-VendorOrOperatorID OPTIONAL, + ... +} + +OMA-LPPe-ScheduledLocation-RequestCapabilities ::= SEQUENCE { + ... +} + +OMA-LPPe-AccessCapabilitiesReq ::= SEQUENCE { + ... +} + +OMA-LPPe-SegmentedLocationInformation-ReqCapabilities ::= SEQUENCE { + ... +} + +OMA-LPPe-CommonIEsProvideCapabilities ::= SEQUENCE { + iP-Address-Capabilities OMA-LPPe-IP-Address-Capabilities OPTIONAL, + assistanceContainerSupport OMA-LPPe-AssistanceContainerSupport OPTIONAL, + locationInformationContainerSupport OMA-LPPe-LocationInformationContainerSupport OPTIONAL, + relativeLocationChange-Capabilities OMA-LPPe-RelativeLocationChange-Capabilities OPTIONAL, + highAccuracyFormatCapabilities OMA-LPPe-HighAccuracyFormatCapabilities OPTIONAL, + segmentedAssistanceData-ProvideCapabs OMA-LPPe-SegmentedAssistanceData-ProvideCapabs OPTIONAL, + referencePointCapabilities OMA-LPPe-ReferencePointCapabilities OPTIONAL, + scheduledLocation-Capabilities OMA-LPPe-ScheduledLocation-Capabilities OPTIONAL, + accessCapabilities OMA-LPPe-AccessCapabilities OPTIONAL, + segmentedLocationInformation-ProvideCapabs + OMA-LPPe-SegmentedLocationInformation-ProvideCapabs + OPTIONAL, + ... +} + +OMA-LPPe-IP-Address-Capabilities ::= SEQUENCE { + iP-Address-support BIT STRING { iPv4 (0), + iPv6 (1), + nat (2) } (SIZE(1..8)) OPTIONAL, + ... +} + +OMA-LPPe-AssistanceContainerSupport ::= SEQUENCE (SIZE(1..maxVendorOrOperatorIDList)) OF + OMA-LPPe-VendorOrOperatorAssistanceContainerList + + +OMA-LPPe-VendorOrOperatorAssistanceContainerList ::= SEQUENCE { + vendorOrOperatorID OMA-LPPe-VendorOrOperatorID, + assistanceContainerList OMA-LPPe-AssistanceContainerList, + ... +} + +OMA-LPPe-AssistanceContainerList ::= SEQUENCE (SIZE (1.. maxAssistanceContainerList))OF + OMA-LPPe-AssistanceContainerID + +OMA-LPPe-LocationInformationContainerSupport ::= SEQUENCE (SIZE(1..maxVendorOrOperatorIDList)) OF + OMA-LPPe-VendorOrOperatorLocationInformationContainerList + +OMA-LPPe-VendorOrOperatorLocationInformationContainerList ::= SEQUENCE { + vendorOrOperatorID OMA-LPPe-VendorOrOperatorID, + locationInformationContainerList OMA-LPPe-LocationInformationContainerList, + ... +} + +OMA-LPPe-LocationInformationContainerList ::= SEQUENCE (SIZE(1..maxLocationInformationContainerList))OF + OMA-LPPe-LocationInformationContainerID + +maxLocationInformationContainerList INTEGER ::= 64 +OMA-LPPe-RelativeLocationChange-Capabilities ::= SEQUENCE { + numberOfChanges INTEGER (1..5) OPTIONAL, + ... +} + +OMA-LPPe-HighAccuracyFormatCapabilities ::= BIT STRING { hAposition(0), + hAvelocity(1) } (SIZE(1..8)) + +OMA-LPPe-SegmentedAssistanceData-ProvideCapabs ::= SEQUENCE { + maxSegments INTEGER (2..4096) OPTIONAL, + maxSize INTEGER (1..5000) OPTIONAL, + minSize INTEGER (1..5000) OPTIONAL, + resume NULL OPTIONAL, + ... +} + +OMA-LPPe-ReferencePointCapabilities ::= SEQUENCE { + relativeLocationReportingSupport BIT STRING { geo (0), + civic (1), + otherProviders (2) } (SIZE (1..8)), + referencePointProviderSupportList SEQUENCE (SIZE (1..128)) OF + OMA-LPPe-ReferencePointProviderSupportElement OPTIONAL, + ... +} + +OMA-LPPe-ReferencePointProviderSupportElement ::= SEQUENCE { + referencePointProvider OMA-LPPe-VendorOrOperatorID, + mapDataSupport SEQUENCE { + mapDataFormat OCTET STRING OPTIONAL, + ... + } OPTIONAL, + ... +} + +OMA-LPPe-ScheduledLocation-Capabilities ::= SEQUENCE { + minimumWindow INTEGER (1..1024) OPTIONAL, + gnssTimeReference GNSS-ID-Bitmap OPTIONAL, + networkTimeReference ENUMERATED {serving, + servingOrNonServing, + ... } OPTIONAL, + ... +} + +OMA-LPPe-AccessCapabilities ::= SEQUENCE { + accessTypeUnknown NULL OPTIONAL, + fixedAccessTypes OMA-LPPe-FixedAccessTypes OPTIONAL, + wirelessAccessTypes OMA-LPPe-WirelessAccessTypes OPTIONAL, + ... +} + +OMA-LPPe-SegmentedLocationInformation-ProvideCapabs ::= SEQUENCE { + maxSegments INTEGER (2..4096) OPTIONAL, + maxSize INTEGER (1..5000) OPTIONAL, + minSize INTEGER (1..5000) OPTIONAL, + resume NULL OPTIONAL, + ... +} + +OMA-LPPe-CommonIEsRequestAssistanceData ::= SEQUENCE { + approximate-location EllipsoidPointWithAltitudeAndUncertaintyEllipsoid OPTIONAL, + assistanceContainerRequestList OMA-LPPe-AssistanceContainerRequestList OPTIONAL, + requestPeriodicADwithUpdate OMA-LPPe-RequestPeriodicADwithUpdate OPTIONAL, + --Cond RequestPeriodicADWithUpdate + segmentedADpreference ENUMERATED {useBasic, useResume, ...} OPTIONAL, + segmentedADResume OMA-LPPe-SegmentedADResume OPTIONAL, + --Cond segmentedTransferResume + referencePointAssistanceReq OMA-LPPe-ReferencePointAssistanceReq OPTIONAL, + ... +} + +OMA-LPPe-RequestPeriodicADwithUpdate ::= SEQUENCE { + periodicAD-session-ID INTEGER (1..256), + typeOfADRequest TypeOfADRequest, + ... +} + +TypeOfADRequest ::= ENUMERATED { + initialRequest, + updateAndContinueIfUpdateFails, + updateAndAbortIfUpdateFails, + ... +} + +OMA-LPPe-SegmentedADResume ::= SEQUENCE { + segmentedAD-session-ID OMA-LPPe-Session-ID, + next-segment-number INTEGER (1..4096) +} + +OMA-LPPe-ReferencePointAssistanceReq ::= SEQUENCE { + referencePointReq SEQUENCE (SIZE (1..16)) OF OMA-LPPe-ReferencePointAssistanceReqElement, + ... +} + +OMA-LPPe-ReferencePointAssistanceReqElement ::= SEQUENCE { + referencePointProvider OMA-LPPe-VendorOrOperatorID, + mapDataReq OCTET STRING OPTIONAL, + ... +} + +OMA-LPPe-CommonIEsProvideAssistanceData ::= SEQUENCE { + assistanceContainerList OMA-LPPe-AssistanceContainerProvideList OPTIONAL, + providePeriodicADwithUpdate OMA-LPPe-ProvidePeriodicADwithUpdate OPTIONAL, + --Cond ProvidePeriodicADWithUpdate, + segmentedADTransfer OMA-LPPe-SegmentedADTransfer OPTIONAL, + --Cond segmentedTransferWithResume + default-reference-point OMA-LPPe-ReferencePoint OPTIONAL, + ... +} + +OMA-LPPe-ProvidePeriodicADwithUpdate ::= SEQUENCE { + periodicAD-session-ID INTEGER (1..256), + typeOfADProvide OMA-LPPe-TypeOfADProvide, + ... +} + +OMA-LPPe-TypeOfADProvide ::= ENUMERATED { + responseToInitialRequest, + providePeriodicAD, + responseToTargetUpdateRequest, + serverUpdate, + ... +} + +OMA-LPPe-SegmentedADTransfer ::= SEQUENCE { + segmentedAD-session-ID OMA-LPPe-Session-ID, + segment-number INTEGER (1..4096), + ... +} + +OMA-LPPe-CommonIEsRequestLocationInformation ::= SEQUENCE { + iP-Address-Request OMA-LPPe-IP-Address-Request OPTIONAL, + locationInformationContainerRequest OMA-LPPe-LocationInformationContainerRequest OPTIONAL, + requestPeriodicLocInfoWithUpdate OMA-LPPe-RequestPeriodicLocInfoWithUpdate OPTIONAL, + --Cond RequestPeriodicLocInfoWithUpdate + relativeLocationChange-Request OMA-LPPe-RelativeLocationChange-Request OPTIONAL, + localPositionRequest OMA-LPPe-LocalPositionRequest OPTIONAL, + scheduledLocation-Request OMA-LPPe-ScheduledLocation-Request OPTIONAL, + accessTypeRequest OMA-LPPe-AccessTypeRequest OPTIONAL, + segmentedLIpreference ENUMERATED {useBasic, useResume, ...} OPTIONAL, + segmentedLIResume OMA-LPPe-SegmentedLIResume OPTIONAL, + --Cond segmentedTransferResume + ... +} + +OMA-LPPe-IP-Address-Request ::= SEQUENCE { + ... +} + +OMA-LPPe-RequestPeriodicLocInfoWithUpdate ::= SEQUENCE { + session-ID INTEGER (1..256), + typeOfLocInfoRequest OMA-LPPe-TypeOfLocInfoRequest, + ... +} + +OMA-LPPe-TypeOfLocInfoRequest ::= ENUMERATED { + initialRequest, + updateAndContinueIfUpdateFails, + updateAndAbortIfUpdateFails, + ... +} + +OMA-LPPe-RelativeLocationChange-Request ::= SEQUENCE { + numberOfChanges INTEGER (1..5) OPTIONAL, + ... +} + +OMA-LPPe-LocalPositionRequest ::= SEQUENCE { + typeOfRequest ENUMERATED { localOptional, localMandatory, localOnly, ... }, + referencePointReq SEQUENCE (SIZE (1..8)) OF + OMA-LPPe-ReferencePointUniqueID OPTIONAL, + ... +} + +OMA-LPPe-ScheduledLocation-Request ::= SEQUENCE { + gnssTime GNSS-SystemTime OPTIONAL, --Cond AtLeastOne + networkTime NetworkTime OPTIONAL, --Cond AtLeastOne + relativeTime INTEGER (1..1024) OPTIONAL, --Cond AtLeastOne + windowSize INTEGER (1..1024) OPTIONAL, + ... +} + +OMA-LPPe-AccessTypeRequest ::= SEQUENCE { + ... +} + +OMA-LPPe-SegmentedLIResume ::= SEQUENCE { + segmentedLI-session-ID INTEGER (1..256), + next-segment-number INTEGER (1..4096)} + +OMA-LPPe-CommonIEsProvideLocationInformation ::= SEQUENCE { + highAccuracy3Dposition OMA-LPPe-HighAccuracy3Dposition OPTIONAL, + --Cond HighAccuracy + localPosition OMA-LPPe-LocalPosition OPTIONAL, + highAccuracy3Dvelocity OMA-LPPe-HighAccuracy3Dvelocity OPTIONAL, + --Cond HighAccuracy + iP-Address-List OMA-LPPe-IP-Address-List OPTIONAL, + locationInformationContainer OMA-LPPe-LocationInformationContainer OPTIONAL, + providePeriodicLocInfoWithUpdate OMA-LPPe-ProvidePeriodicLocInfowithUpdate OPTIONAL, + --Cond ProvidePeriodicLocInfoWithUpdate + relativeLocationChangeList OMA-LPPe-RelativeLocationChangeList OPTIONAL, + scheduledLocation OMA-LPPe-ScheduledLocation OPTIONAL, + --Cond ScheduledLocationRequested + accessTypes OMA-LPPe-AccessTypes OPTIONAL, + segmentedLITransfer OMA-LPPe-SegmentedLITransfer OPTIONAL, + --Cond segmentedTransferWithResume + locationInformationTimeStamp OMA-LPPe-TimeStamp OPTIONAL, + ... +} + +OMA-LPPe-LocalPosition ::= SEQUENCE { + referencePoint OMA-LPPe-ReferencePointUniqueID, + subjectLocation OMA-LPPe-RelativeLocation OPTIONAL, + ... +} + +OMA-LPPe-IP-Address-List ::= SEQUENCE (SIZE (1..maxIPAddress)) OF OMA-LPPe-IP-Address + +maxIPAddress INTEGER ::= 5 + +OMA-LPPe-IP-Address ::= SEQUENCE { + local-IP-Address CHOICE { + iPv4 BIT STRING (SIZE(32)), + iPv6 BIT STRING (SIZE(128)), + ... + }, + bearer OMA-LPPe-Bearer, + nat BOOLEAN OPTIONAL, + ... +} + +OMA-LPPe-Bearer ::= ENUMERATED { + unknown, + gsm, + utran, + lte, + wlan, + wimax, + dsl, + pktcable, + other, + ... +} + +OMA-LPPe-ProvidePeriodicLocInfowithUpdate ::= SEQUENCE { + session-ID INTEGER (1..256), + typeOfLocInfoProvide OMA-LPPe-TypeOfLocInfoProvide, + ... +} + +OMA-LPPe-TypeOfLocInfoProvide ::= ENUMERATED { + responseToInitialRequest, + providePeriodicLocInfo, + responseToServerUpdateRequest, + targetUpdate, + ... +} + +OMA-LPPe-RelativeLocationChangeList ::= SEQUENCE (SIZE (1..maxRelativeLocation)) OF + OMA-LPPe-RelativeLocationChange + +OMA-LPPe-RelativeLocationChange ::= SEQUENCE { + relativeTime INTEGER (0..65535) OPTIONAL, + transactionID INTEGER (0..255) OPTIONAL, + relativeLocation OMA-LPPe-RelativeLocation, + ... +} + +maxRelativeLocation INTEGER ::= 5 + +OMA-LPPe-ScheduledLocation ::= SEQUENCE { + disposition ENUMERATED {withinWindow, + outsideWindowOrNoWindow, + notSupportedDueToNoCapability, + notSupportedDueToNoTimeReference, + notSupportedDueToConflictWithAnotherRequest, + notSupportedForOtherReasons, + ... }, + actualWindow SEQUENCE { + start INTEGER (-512..511), + duration INTEGER (0..2047) + } OPTIONAL, + ... +} + +OMA-LPPe-AccessTypes ::= SEQUENCE { + accessTypeUnknown NULL OPTIONAL, + fixedAccessTypes OMA-LPPe-FixedAccessTypes OPTIONAL, + wirelessAccessTypes OMA-LPPe-WirelessAccessTypes OPTIONAL, + ... +} + +OMA-LPPe-SegmentedLITransfer ::= SEQUENCE { + segmentedLI-session-ID INTEGER (1..256), + segment-number INTEGER (1..4096), + ... +} + +OMA-LPPe-TimeStamp ::= CHOICE { + gnssTime GNSS-SystemTime, + networkTime NetworkTime, + relativeTime INTEGER (0..1024), + ... +} + +OMA-LPPe-CommonIEsAbort ::= SEQUENCE { + abortCause ENUMERATED {periodicADsessionStop, + periodicADprocedureNotSupported, + periodicADprocedureNotAccepted, + periodicLocInfoSessionStop, + periodicLocInfoProcedureNotSupported, + periodicLocInfoProcedureNotAccepted, + ... + } OPTIONAL, + periodicSessionIDtoAbort INTEGER (1..256) OPTIONAL, --Cond periodicWithUpdate + ... +} + +OMA-LPPe-CommonIEsError ::= SEQUENCE { + ... +} + +OMA-LPPe-AGNSS-ProvideAssistanceData ::= SEQUENCE { + commonAssistData OMA-LPPe-AGNSS-CommonAssistData OPTIONAL, + genericAssistData OMA-LPPe-AGNSS-GenericAssistData OPTIONAL, + error OMA-LPPe-AGNSS-Error OPTIONAL, + ... +} + +OMA-LPPe-AGNSS-CommonAssistData::= SEQUENCE { + ionosphericModel OMA-LPPe-AGNSS-IonosphericModel OPTIONAL, + troposphereModel OMA-LPPe-AGNSS-TroposphereModel OPTIONAL, + altitudeAssistance OMA-LPPe-AGNSS-AltitudeAssistanceList OPTIONAL, + solarRadiation OMA-LPPe-AGNSS-SolarRadiation OPTIONAL, + ccpAssistCommonProvide OMA-LPPe-AGNSS-CCPassistCommonProvide OPTIONAL, + ... +} + +OMA-LPPe-AGNSS-GenericAssistData ::= SEQUENCE (SIZE (1..16)) OF OMA-LPPe-AGNSS-GenericAssistDataElement + +OMA-LPPe-AGNSS-GenericAssistDataElement ::= SEQUENCE { + gnss-ID GNSS-ID, + wideAreaIonoSurfacePerSVlist OMA-LPPe-AGNSS-WideAreaIonoSurfacePerSVlist OPTIONAL, + mechanicsForAllSVs OMA-LPPe-AGNSS-MechanicsForAllSVs OPTIONAL, + dcbsForAllSVs OMA-LPPe-AGNSS-DCBsForAllSVs OPTIONAL, + navModelDegradationModel OMA-LPPe-AGNSS-NavModelDegradationModelList OPTIONAL, + ccpAssistProvide OMA-LPPe-AGNSS-CCPassistGenericProvide OPTIONAL, --Cond CCP + navModelList OMA-LPPe-AGNSS-NavModelList OPTIONAL, + ... +} + +OMA-LPPe-AGNSS-IonosphericModel ::= CHOICE { + staticModels SEQUENCE { + localKlobucharModelList OMA-LPPe-AGNSS-LocalKlobucharModelList OPTIONAL, + ionoStormIndication OMA-LPPe-AGNSS-IonoStormIndication OPTIONAL, + ... + }, + waIono CHOICE { + controlParameters OMA-LPPe-AGNSS-WideAreaIonoSurfaceControlParametersProvide, + commonProvide OMA-LPPe-AGNSS-WideAreaIonoSurfaceCommon, + ... + }, + ... +} + +OMA-LPPe-AGNSS-LocalKlobucharModelList ::= SEQUENCE (SIZE(1..16)) OF + OMA-LPPe-AGNSS-LocalKlobucharModelElement + +OMA-LPPe-AGNSS-LocalKlobucharModelElement ::= SEQUENCE { + validityArea OMA-LPPe-ValidityArea, + klobucharModel SEQUENCE (SIZE(1..8)) OF OMA-LPPe-AGNSS-LocalKlobucharModel, + ... +} + +OMA-LPPe-AGNSS-LocalKlobucharModel ::= SEQUENCE { + validityPeriod OMA-LPPe-ValidityPeriod, + alfa0 INTEGER (-128..127), + alfa1 INTEGER (-128..127), + alfa2 INTEGER (-128..127), + alfa3 INTEGER (-128..127), + beta0 INTEGER (-128..127), + beta1 INTEGER (-128..127), + beta2 INTEGER (-128..127), + beta3 INTEGER (-128..127), + ... +} + +OMA-LPPe-AGNSS-IonoStormIndication ::= SEQUENCE { + area OMA-LPPe-ValidityArea, + --rleList shall not be included and is replaced by the stormList below + stormList OMA-LPPe-AGNSS-StormList, + ... +} + +OMA-LPPe-AGNSS-StormList ::= SEQUENCE (SIZE(1..16)) OF OMA-LPPe-AGNSS-StormElement + +OMA-LPPe-AGNSS-StormElement ::= SEQUENCE { + validityPeriod OMA-LPPe-ValidityPeriod, + rleListIono OMA-LPPe-AGNSS-RleListIono, + ... +} + +OMA-LPPe-AGNSS-RleListIono ::= SEQUENCE (SIZE(1..65535)) OF OMA-LPPe-AGNSS-RleIonoElement + +OMA-LPPe-AGNSS-RleIonoElement ::= SEQUENCE { + regionCount INTEGER (0..255), + ionoIndex CHOICE { + noaaScales OMA-LPPe-AGNSS-NoaaScales, + ... + }, + ... +} + +OMA-LPPe-AGNSS-NoaaScales ::= ENUMERATED{ g1,g2, g3, g4, g5, unknown, none, ... } + +OMA-LPPe-AGNSS-WideAreaIonoSurfaceControlParametersProvide ::= SEQUENCE { + duration OMA-LPPe-Duration OPTIONAL, --Cond FirstOrDurModify + rate INTEGER(1..64) OPTIONAL, --Cond FirstOrRateModify + referencePosition Ellipsoid-Point OPTIONAL, --Cond FirstOrPosModify + validityArea OMA-LPPe-ValidityArea OPTIONAL, --Cond FirstOrAreaModify + ... + } + +OMA-LPPe-AGNSS-WideAreaIonoSurfaceCommon ::= SEQUENCE { + validityPeriod OMA-LPPe-ValidityPeriod, + ... + } + +OMA-LPPe-AGNSS-WideAreaIonoSurfacePerSVlist ::= + SEQUENCE (SIZE (1..64)) OF OMA-LPPe-AGNSS-WideAreaIonoSurfacePerSVelement + +OMA-LPPe-AGNSS-WideAreaIonoSurfacePerSVelement ::= SEQUENCE { + svID SV-ID, + a0 INTEGER (0..8191), + e1 INTEGER (-4096..4095), + n1 INTEGER (-4096..4095), + e2 INTEGER (-4096..4095) OPTIONAL, --Cond SecondOrder + n2 INTEGER (-4096..4095) OPTIONAL, --Cond SecondOrder + en INTEGER (-4096..4095) OPTIONAL, --Cond SecondOrder + ... +} + +OMA-LPPe-AGNSS-TroposphereModel ::= SEQUENCE { + troposphereDelayList OMA-LPPe-AGNSS-LocalTroposphereDelayList OPTIONAL, + surfaceParametersList OMA-LPPe-AGNSS-LocalSurfaceParametersList OPTIONAL, + ... +} + +OMA-LPPe-AGNSS-LocalTroposphereDelayList ::= SEQUENCE (SIZE(1..8)) OF + OMA-LPPe-AGNSS-LocalTroposphereDelayAreaElement + +OMA-LPPe-AGNSS-LocalTroposphereDelayAreaElement ::= SEQUENCE { + validityArea OMA-LPPe-ValidityArea, + refAltitude INTEGER (-1000..8192) OPTIONAL, + gradientReferencePosition Ellipsoid-Point OPTIONAL, + delayList SEQUENCE (SIZE(1..8)) OF + OMA-LPPe-AGNSS-LocalTroposphereDelayTimeElement, + ... +} + + +OMA-LPPe-AGNSS-LocalTroposphereDelayTimeElement ::= SEQUENCE { + validityPeriod OMA-LPPe-ValidityPeriod, + zh0 INTEGER (0..4095), + eh INTEGER (0..4095) OPTIONAL, + zw0 INTEGER (0..4095) OPTIONAL, + ew INTEGER (0..4095) OPTIONAL, + gN INTEGER (-8192..8191) OPTIONAL, + gE INTEGER (-8192..8191) OPTIONAL, + mappingFunctionParameters OMA-LPPe-AGNSS-MappingFunctionParameters, + ... +} + +OMA-LPPe-AGNSS-LocalSurfaceParametersList ::= SEQUENCE (SIZE(1..8)) OF + OMA-LPPe-AGNSS-LocalSurfaceParametersAreaElement + +OMA-LPPe-AGNSS-LocalSurfaceParametersAreaElement ::= SEQUENCE { + validityArea OMA-LPPe-ValidityArea, + refAltitude INTEGER (-1000..8192) OPTIONAL, + gradientReferencePosition Ellipsoid-Point OPTIONAL, + parameterList SEQUENCE (SIZE(1..8)) OF + OMA-LPPe-AGNSS-LocalSurfaceParametersTimeElement, + ... +} + +OMA-LPPe-AGNSS-LocalSurfaceParametersTimeElement ::= SEQUENCE { + validityPeriod OMA-LPPe-ValidityPeriod, + pressure INTEGER (-1024..1023), + pressureRate INTEGER (-128..127), + gN-pressure INTEGER (-128..127) OPTIONAL, + gE-pressure INTEGER (-128..127) OPTIONAL, + temperature INTEGER (-64..63) OPTIONAL, + temperatureRate INTEGER (-16..16) OPTIONAL, + gN-temperature INTEGER (-8..7) OPTIONAL, + gE-temperature INTEGER (-8..7) OPTIONAL, + mappingFunctionParameters OMA-LPPe-AGNSS-MappingFunctionParameters, + ... +} + OMA-LPPe-AGNSS-MappingFunctionParameters ::= SEQUENCE { + ah INTEGER (0..16383), + bh INTEGER (0..16383) OPTIONAL, + ch INTEGER (0..16383) OPTIONAL, + aw INTEGER (0..16383) OPTIONAL, + bw INTEGER (0..16383) OPTIONAL, + cw INTEGER (0..16383) OPTIONAL, + ... + } + +OMA-LPPe-AGNSS-AltitudeAssistanceList ::= SEQUENCE (SIZE(1..8)) OF + OMA-LPPe-AGNSS-AltitudeAssistanceAreaElement + +OMA-LPPe-AGNSS-AltitudeAssistanceAreaElement ::= SEQUENCE { + validityArea OMA-LPPe-ValidityArea, + gradientReferencePosition EllipsoidPointWithAltitudeAndUncertaintyEllipsoid OPTIONAL, + refAltitude INTEGER (-1000..8192) OPTIONAL, + pressureAssistanceList SEQUENCE (SIZE(1..16)) OF OMA-LPPe-AGNSS-PressureAssistanceElement, + ... +} + +OMA-LPPe-AGNSS-PressureAssistanceElement ::= SEQUENCE{ + validityPeriod OMA-LPPe-ValidityPeriod, + pressure INTEGER (-1024..1023), + pressureRate INTEGER (-128..127) OPTIONAL, + gN INTEGER (-128..127) OPTIONAL, + gE INTEGER (-128..127) OPTIONAL, + ... +} + +OMA-LPPe-AGNSS-SolarRadiation ::= SEQUENCE { + solarRadiation INTEGER(1000..2000), + ... +} + +OMA-LPPe-AGNSS-MechanicsForAllSVs::= SEQUENCE (SIZE (1..64)) OF OMA-LPPe-AGNSS-MechanicsElement + + +OMA-LPPe-AGNSS-MechanicsElement ::= SEQUENCE { + svid SV-ID, + mass INTEGER(1..4095) OPTIONAL, + effectiveReflectivityArea INTEGER(1..511) OPTIONAL, + pco OMA-LPPe-AGNSS-PCOelement OPTIONAL, + svInfo SEQUENCE { + svType OMA-LPPe-AGNSS-SVtype, + svNumber INTEGER(0..1000), + ... + } OPTIONAL, + ... +} + +OMA-LPPe-AGNSS-PCOelement ::= SEQUENCE{ + xOffsetSBF INTEGER(-30000..30000), + yOffsetSBF INTEGER(-30000..30000), + zOffsetSBF INTEGER(-30000..30000), + ... +} + +OMA-LPPe-AGNSS-SVtype ::= ENUMERATED { + gpsIIR, gpsIIRM, gpsIIF, gpsIII, + glonassM, glonassK1, glonassK2, glonassKM, + unknown, + ...} + +OMA-LPPe-AGNSS-DCBsForAllSVs ::= SEQUENCE (SIZE(1..64)) OF OMA-LPPe-AGNSS-DCBlistElement + + +OMA-LPPe-AGNSS-DCBlistElement ::= SEQUENCE { + svid SV-ID, + reference SEQUENCE{ + signal GNSS-SignalID, + pd ENUMERATED { pilot, data, notapplicable, ... }, + ... + }, + dcbList OMA-LPPe-AGNSS-DCBlist, + ... +} + +OMA-LPPe-AGNSS-DCBlist ::= SEQUENCE (SIZE(1..16)) OF OMA-LPPe-AGNSS-DCBelement + +OMA-LPPe-AGNSS-DCBelement ::= SEQUENCE { + signal GNSS-SignalID, + pd ENUMERATED{ pilot, data, notapplicable, ... }, + dcb INTEGER (-4096..4095), + ... +} + +OMA-LPPe-AGNSS-NavModelDegradationModelList ::= SEQUENCE (SIZE(1..64)) OF + OMA-LPPe-AGNSS-NavModelDegradationModelElement + +OMA-LPPe-AGNSS-NavModelDegradationModelElement ::= SEQUENCE { + svid SV-ID, + clockDegradationModel OMA-LPPe-AGNSS-ClockModelDegradationModel, + orbitDegradationModel OMA-LPPe-AGNSS-OrbitModelDegradationModel, + ... + } + +OMA-LPPe-AGNSS-ClockModelDegradationModel ::= SEQUENCE { + clockRMS0 INTEGER(0..31), + clockRMS1 INTEGER(0..7) OPTIONAL, + ... + } + +OMA-LPPe-AGNSS-OrbitModelDegradationModel ::= SEQUENCE { + orbitRMS0 INTEGER(0..31), + orbitRMS1 INTEGER(0..7) OPTIONAL, + ... + } + +OMA-LPPe-AGNSS-CCPassistCommonProvide ::= CHOICE { + ccpProvideCommonParameters OMA-LPPe-AGNSS-CCPprovideCommonParameters, + ccpProvideControlParameters OMA-LPPe-AGNSS-CCPprovideControlParameters, + ... +} + +OMA-LPPe-AGNSS-CCPprovideCommonParameters ::= SEQUENCE { + ccpReferenceTime GNSS-SystemTime, + ... +} + +OMA-LPPe-AGNSS-CCPprovideControlParameters ::= SEQUENCE { + ccpSupportArea OMA-LPPe-AGNSS-CCPsupportArea OPTIONAL, + ccpNeighborList OMA-LPPe-AGNSS-CCPreferenceStationList OPTIONAL, + duration OMA-LPPe-Duration OPTIONAL, --Cond FirstOrDurModify + rate INTEGER(1..64) OPTIONAL, --Cond FirstOrRateModify + ccpReferenceStationList OMA-LPPe-AGNSS-CCPreferenceStationList OPTIONAL, --Cond FirstOrRefModify + ... +} + +OMA-LPPe-AGNSS-CCPsupportArea ::= SEQUENCE { + areaDescription OMA-LPPe-ValidityArea, + signalSupport SEQUENCE (SIZE(1..8)) OF OMA-LPPe-AGNSS-CCPsignalSupport, + ... + } + +OMA-LPPe-AGNSS-CCPsignalSupport ::= SEQUENCE { + gnss GNSS-ID, + signals GNSS-SignalIDs, + ... + } + +OMA-LPPe-AGNSS-CCPreferenceStationList ::= SEQUENCE (SIZE(0..maxReferenceStations)) OF + OMA-LPPe-AGNSS-CCPreferenceStationElement + +OMA-LPPe-AGNSS-CCPreferenceStationElement ::= SEQUENCE { + referenceStationID OMA-LPPe-AGNSS-CCPreferenceStationID, + referenceStationLocation OMA-LPPe-HighAccuracy3Dposition, + antennaDescription OMA-LPPe-AGNSS-AntennaDescription OPTIONAL, --Cond IfPhysical + ... +} + +OMA-LPPe-AGNSS-CCPassistGenericProvide ::= SEQUENCE (SIZE(1..maxReferenceStations)) OF + OMA-LPPe-AGNSS-CCPassistGenericProvideElement + +OMA-LPPe-AGNSS-CCPassistGenericProvideElement::= SEQUENCE { + referenceStationID OMA-LPPe-AGNSS-CCPreferenceStationID, + ccpPerSignalList SEQUENCE (SIZE(1..8)) OF OMA-LPPe-AGNSS-CCPperSignalElement, + ... +} + +OMA-LPPe-AGNSS-CCPperSignalElement ::= SEQUENCE { + signal-ID GNSS-SignalID, + ccpPerSVlist SEQUENCE (SIZE(1..64)) OF OMA-LPPe-AGNSS-CCPperSVelement, + ... +} + +OMA-LPPe-AGNSS-CCPperSVelement::= SEQUENCE { + svID SV-ID, + integerCodePhase INTEGER(0..255) OPTIONAL, --Cond IfAvailable + codePhase INTEGER(0.. 14989622), + codePhaseError OMA-LPPe-AGNSS-CodePhaseError OPTIONAL, --Cond IfAvailable + phaseRangeDelta INTEGER(-524288.. 524287), + phaseRangeRMSerror INTEGER(0..127) OPTIONAL, --Cond IfAvailable + lockIndicator BOOLEAN, + ... +} + +OMA-LPPe-AGNSS-CodePhaseError ::= CHOICE { + codePhaseRMSError INTEGER(0..63), + cnr INTEGER(0..255), + ... + } + +OMA-LPPe-AGNSS-NavModelList ::= SEQUENCE { + coordinateBased OMA-LPPe-AGNSS-NavModel-CoordinateBased OPTIONAL, --Cond ModelId-1 + ... +} + +OMA-LPPe-AGNSS-NavModel-CoordinateBased ::= SEQUENCE { + fixedInterval SEQUENCE { + beginTime GNSS-SystemTime, + interval INTEGER(1..30), + ... + } OPTIONAL, --Cond FixedInterval + bases SEQUENCE { + baseForPosVel INTEGER(-100000000..100000000) OPTIONAL, + baseForCcRate OMA-LPPe-AGNSS-NavModel-BigNumber OPTIONAL, + ... + } OPTIONAL, --Cond DefaultsNotApplicable + referencedTo ENUMERATED { centerOfMass, antennaPhaseCenter, ... }, + pointList SEQUENCE (SIZE (1..97)) OF OMA-LPPe-AGNSS-NavModel-CoordinateBasedElement, + ... +} + +OMA-LPPe-AGNSS-NavModel-CoordinateBasedElement::= SEQUENCE { + time-of-record GNSS-SystemTime OPTIONAL, --Cond NoFixedInterval + svIdList SEQUENCE (SIZE (1..64)) OF OMA-LPPe-AGNSS-NavModel-PVTelement, + ... +} + +OMA-LPPe-AGNSS-NavModel-PVTelement ::= SEQUENCE { + svID SV-ID, + svClockOffset OMA-LPPe-AGNSS-NavModel-BigNumber, + ecefPositionX OMA-LPPe-AGNSS-NavModel-BigNumber, + ecefPositionY OMA-LPPe-AGNSS-NavModel-BigNumber, + ecefPositionZ OMA-LPPe-AGNSS-NavModel-BigNumber, + clockPosSTD OMA-LPPe-AGNSS-NavModel-STDmatrix, + rateRecord SEQUENCE { + svClockRate OMA-LPPe-AGNSS-NavModel-BigNumber, + ecefVelocityX OMA-LPPe-AGNSS-NavModel-BigNumber, + ecefVelocityY OMA-LPPe-AGNSS-NavModel-BigNumber, + ecefVelocityZ OMA-LPPe-AGNSS-NavModel-BigNumber, + clockRateVelSTD OMA-LPPe-AGNSS-NavModel-STDmatrix, + ... + } OPTIONAL, --Cond RateAvailable + ... +} + +OMA-LPPe-AGNSS-NavModel-BigNumber::= SEQUENCE { + msb INTEGER(-1000000000..1000000000), + lsb INTEGER(1..100) OPTIONAL, + ... +} + +OMA-LPPe-AGNSS-NavModel-STDmatrix ::= SEQUENCE { + e11 INTEGER(0..1000), + e22 INTEGER(0..1000), + e33 INTEGER(0..1000), + e44 INTEGER(0..1000000), + e12 INTEGER(0..10000000) OPTIONAL, --Cond CrossTermAvailable + e13 INTEGER(0..10000000) OPTIONAL, --Cond CrossTermAvailable + e14 INTEGER(0..10000000) OPTIONAL, --Cond CrossTermAvailable + e23 INTEGER(0..10000000) OPTIONAL, --Cond CrossTermAvailable + e24 INTEGER(0..10000000) OPTIONAL, --Cond CrossTermAvailable + e34 INTEGER(0..10000000) OPTIONAL, --Cond CrossTermAvailable + ... +} + +OMA-LPPe-AGNSS-RequestAssistanceData ::= SEQUENCE { + commonAssistDataReq OMA-LPPe-AGNSS-CommonAssistanceDataReq OPTIONAL, + genericAssistDataReq OMA-LPPe-AGNSS-GenericAssistanceDataReq OPTIONAL, + ... +} + +OMA-LPPe-AGNSS-CommonAssistanceDataReq ::= SEQUENCE { + ionosphericModelReq OMA-LPPe-AGNSS-IonosphericModelReq OPTIONAL, + troposphereModelReq OMA-LPPe-AGNSS-TroposphereModelReq OPTIONAL, + altitudeAssistanceReq OMA-LPPe-AGNSS-AltitudeAssistanceReq OPTIONAL, + solarRadiationRequest OMA-LPPe-AGNSS-SolarRadiationReq OPTIONAL, + ccpRequestControlParameters OMA-LPPe-AGNSS-CCPrequestControlParameters OPTIONAL, + ... +} + +OMA-LPPe-AGNSS-GenericAssistanceDataReq ::= SEQUENCE (SIZE (1..16)) OF + OMA-LPPe-AGNSS-GenericAssistDataReqElement + +OMA-LPPe-AGNSS-GenericAssistDataReqElement ::= SEQUENCE { + gnss-ID GNSS-ID, + waIonoSurfaceReq OMA-LPPe-AGNSS-WaIonoSurfaceRequest OPTIONAL, --Cond WAiono + mechanicsReq OMA-LPPe-AGNSS-MechanicsReq OPTIONAL, + dcbReq OMA-LPPe-AGNSS-DCBreq OPTIONAL, + navModelDegradationModelReq OMA-LPPe-AGNSS-NavModelDegradationModelReq OPTIONAL, + ccpAssistGenericReq OMA-LPPe-AGNSS-CCPassistGenericReq OPTIONAL, --Cond CCPreq + navigationModelReq OMA-LPPe-AGNSS-NavigationModelReq OPTIONAL, + ... +} + +OMA-LPPe-AGNSS-IonosphericModelReq ::= CHOICE { + staticModels SEQUENCE { + ionoreq BIT STRING {klobucharModel (0), + ionoStormWarning (1) } (SIZE (1..8)), + requestBeginTime GNSS-SystemTime OPTIONAL, + duration OMA-LPPe-Duration, + ... + }, + periodicModels SEQUENCE { + waIonoSurface OMA-LPPe-AGNSS-WideAreaIonoSurfaceControlParametersRequest, + ... + }, + ... +} + +OMA-LPPe-AGNSS-WideAreaIonoSurfaceControlParametersRequest ::= SEQUENCE { + duration OMA-LPPe-Duration OPTIONAL, --Cond FirstOrDurModify + rate INTEGER(1..64) OPTIONAL, --Cond FirstOrRateModify + ... + } + +OMA-LPPe-AGNSS-TroposphereModelReq ::= SEQUENCE { + troposphereModelReq BIT STRING {delay (0), + surface (1) } (SIZE (1..8)), + supportForMultipleGridPoints BOOLEAN, + requestBeginTime GNSS-SystemTime OPTIONAL, + duration OMA-LPPe-Duration, + ... + } + +OMA-LPPe-AGNSS-AltitudeAssistanceReq ::= SEQUENCE { + requestBeginTime GNSS-SystemTime OPTIONAL, + duration OMA-LPPe-Duration OPTIONAL, + ... + } + +OMA-LPPe-AGNSS-SolarRadiationReq ::= SEQUENCE { + ... +} + +OMA-LPPe-AGNSS-WaIonoSurfaceRequest ::= SEQUENCE { + ... +} + +OMA-LPPe-AGNSS-NavModelDegradationModelReq ::= SEQUENCE { + ... +} + +OMA-LPPe-AGNSS-DCBreq ::= SEQUENCE { + reference SEQUENCE{ + signal GNSS-SignalID, + pd ENUMERATED { pilot, data, notapplicable, ... }, + ... + } OPTIONAL, + ... +} + +OMA-LPPe-AGNSS-MechanicsReq::= SEQUENCE { + massRequest BOOLEAN, + effectiveReflectivityAreaRequest BOOLEAN, + pcoRequest BOOLEAN, + svInfoRequest BOOLEAN, + ... +} + +OMA-LPPe-AGNSS-CCPrequestControlParameters ::= SEQUENCE { + ccpSupportAreaRequest NULL OPTIONAL, + ccpNeighborListRequest NULL OPTIONAL, + ccpCommonRequest SEQUENCE { + duration OMA-LPPe-Duration OPTIONAL, --Cond FirstOrDurModify + rate INTEGER(1..64) OPTIONAL, --Cond FirstOrRateModify + refStation CHOICE { + posBasedReferenceStationRequest SEQUENCE { + requestedReferenceStationLocation OMA-LPPe-HighAccuracy3Dposition, + qor OMA-LPPe-AGNSS-QoR, + ... + }, + idBasedReferenceStationRequest OMA-LPPe-AGNSS-ReferenceStationIDlist, + referenceStationKillList OMA-LPPe-AGNSS-ReferenceStationIDlist, + ... + } OPTIONAL, --Cond FirstOrRefModify + ... + }, + ... +} + + +OMA-LPPe-AGNSS-ReferenceStationIDlist ::= SEQUENCE (SIZE(1..maxReferenceStations)) OF + OMA-LPPe-AGNSS-CCPreferenceStationID + +OMA-LPPe-AGNSS-QoR ::= ENUMERATED {m10, km1,km10,km100, ...} + +OMA-LPPe-AGNSS-CCPassistGenericReq ::= SEQUENCE { + ccpAssist-SignalsReq GNSS-SignalIDs, + ... + } + +OMA-LPPe-AGNSS-NavigationModelReq ::= SEQUENCE { + navModelID-PrefList SEQUENCE (SIZE(1..8)) OF INTEGER(1..8) OPTIONAL, + ... + } + +OMA-LPPe-AGNSS-ProvideLocationInformation ::= SEQUENCE { + highAccuracyReferenceTime GNSS-SystemTime OPTIONAL, --Cond HighAccuracy + highAccuracyMeasurements OMA-LPPe-AGNSS-HAgnssProvide OPTIONAL, + ionosphereMeasurements OMA-LPPe-AGNSS-IonosphereMeasurements OPTIONAL, + localSurfaceMeasurements OMA-LPPe-AGNSS-LocalSurfaceMeasurements OPTIONAL, + error OMA-LPPe-AGNSS-Error OPTIONAL, + ... + } + +OMA-LPPe-AGNSS-HAgnssProvide ::= CHOICE { + controlParameters SEQUENCE { + duration OMA-LPPe-Duration, + rate INTEGER(1..64), + antennaDescription OMA-LPPe-AGNSS-AntennaDescription OPTIONAL, --Cond HAantenna + ... + }, + measurements SEQUENCE { + position EllipsoidPointWithAltitudeAndUncertaintyEllipsoid OPTIONAL, + --Cond NotForbidden + referenceTime GNSS-SystemTime, + localPressure SEQUENCE { + pressure INTEGER(-1024..1023), + pressureUncertainty INTEGER(0..127), + ... + } OPTIONAL, --Cond HApressure + antennaOrientation OMA-LPPe-Orientation OPTIONAL, --Cond HAantOrientation + signalMeasurements SEQUENCE (SIZE(1..16)) OF OMA-LPPe-AGNSS-HAgnssMeasurementElement, + ... + }, + ... +} + +OMA-LPPe-AGNSS-HAgnssMeasurementElement::= SEQUENCE { + gnss-ID GNSS-ID, + haGNSSperSignalList SEQUENCE (SIZE(1..8)) OF OMA-LPPe-HAgnssPerSignalElement, + ... +} + +OMA-LPPe-HAgnssPerSignalElement ::= SEQUENCE { + signal-ID GNSS-SignalID, + haGNSSperSVlist SEQUENCE (SIZE(1..64)) OF OMA-LPPe-HAgnssPerSVelement, + ... +} + + +OMA-LPPe-HAgnssPerSVelement ::= SEQUENCE { + svID SV-ID, + integerCodePhase INTEGER (0..255) OPTIONAL, --Cond IfAvailable + codePhase INTEGER (0..14989622), + codePhaseRMSError INTEGER (0..63), + multipathDetection ENUMERATED {low, + moderate, + high, + notMeasured, + ...}, + cnr INTEGER(0..255), + adr INTEGER (0..536870911), + adrRMSerror INTEGER (0..127), + lockIndicator BOOLEAN, + ... +} + +OMA-LPPe-AGNSS-IonosphereMeasurements ::= SEQUENCE { + gnssTime GNSS-SystemTime, + position EllipsoidPointWithAltitudeAndUncertaintyEllipsoid, + tecPerSV OMA-LPPe-AGNSS-TECPerSV OPTIONAL, --Cond TecPerSV + tecAtZenith OMA-LPPe-AGNSS-TECAtZenith OPTIONAL, --Cond ZenithTec + ... +} + +OMA-LPPe-AGNSS-TECPerSV ::= SEQUENCE (SIZE(1..64)) OF OMA-LPPe-AGNSS-TECPerSVElement + +OMA-LPPe-AGNSS-TECPerSVElement ::= SEQUENCE { + azimuth INTEGER(0..359), + elevation INTEGER(0..90), + tecValue INTEGER(0..511), + tecUncertainty INTEGER(0..63), + ... +} + +OMA-LPPe-AGNSS-TECAtZenith ::= SEQUENCE { + tecValueAtZenith INTEGER(0..511), + tecUncertaintyAtZenith INTEGER(0..63), + ... + } + +OMA-LPPe-AGNSS-LocalSurfaceMeasurements ::= SEQUENCE { + gnssTime GNSS-SystemTime, + position EllipsoidPointWithAltitudeAndUncertaintyEllipsoid, + pressure INTEGER(-1024..1023), + pressureUncertainty INTEGER(0..127), + temperatureMeasurement SEQUENCE { + temperature INTEGER(-64..63) OPTIONAL, + temperatureUncertainty INTEGER(0..7) OPTIONAL, + ... + } OPTIONAL, --Cond TemperatureAvailable + ... +} + +OMA-LPPe-AGNSS-RequestLocationInformation ::= SEQUENCE { + positioningInstructions OMA-LPPe-AGNSS-PositioningInstructions OPTIONAL, + ionosphereMeasurementsReq BIT STRING {tecPerSV(0), + zenithTEC(1) }(SIZE(1..8)) OPTIONAL, + localSurfaceMeasurementReq OMA-LPPe-AGNSS-LocalSurfaceMeasurementReq OPTIONAL, + ... +} + +OMA-LPPe-AGNSS-PositioningInstructions ::= SEQUENCE { + highAccuracyMethodRequested BOOLEAN, + haGNSSreq OMA-LPPe-AGNSS-HAgnssRequestControlParameters OPTIONAL, --Cond HAgnssReq + ... + } + +OMA-LPPe-AGNSS-LocalSurfaceMeasurementReq ::= SEQUENCE { + ... + } + +OMA-LPPe-AGNSS-HAgnssRequestControlParameters ::= SEQUENCE { + duration OMA-LPPe-Duration OPTIONAL, --Cond FirstOrModify + rate INTEGER(1..63) OPTIONAL, --Cond FirstOrModify + antennaInformationReq ENUMERATED {antennaDescriptionOnly, + antennaDescriptionAndOrientation, + ...} OPTIONAL, + pressureInformationReq BOOLEAN, --Cond FirstOrModify + signalReqList SEQUENCE (SIZE(1..16)) OF + OMA-LPPe-AGNSS-HAgnssSignalReqElement OPTIONAL, --Cond First + ... +} + +OMA-LPPe-AGNSS-HAgnssSignalReqElement ::= SEQUENCE { + gnssID GNSS-ID, + signals GNSS-SignalIDs, + ... +} + +OMA-LPPe-AGNSS-ProvideCapabilities ::= SEQUENCE { + assistanceDataSupportList OMA-LPPe-AGNSS-AssistanceDataSupportList OPTIONAL, + environmentObservationSupportList OMA-LPPe-AGNSS-EnvironmentObservationSupportList OPTIONAL, + haGNSSsupport OMA-LPPe-AGNSS-HAgnssSupport OPTIONAL, + ... +} + +OMA-LPPe-AGNSS-AssistanceDataSupportList ::= SEQUENCE { + commonAssistanceDataSupport OMA-LPPe-AGNSS-CommonAssistanceDataSupport, + genericAssistanceDataSupport OMA-LPPe-AGNSS-GenericAssistanceDataSupport, + ... +} + +OMA-LPPe-AGNSS-EnvironmentObservationSupportList ::= SEQUENCE{ + ionosphereMeasurementSupport BIT STRING {tecPerSVsupport(0), + zenithTecSupport(1) } (SIZE (1..8)), + pressureMeasurementSupported BOOLEAN, + temperatureMeasurementSupported BOOLEAN, + ... +} + +OMA-LPPe-AGNSS-CommonAssistanceDataSupport ::= SEQUENCE { + ionosphericModelSupport OMA-LPPe-AGNSS-IonosphericModelSupport OPTIONAL, --Cond IonoSupport + troposphereModelSupport OMA-LPPe-AGNSS-TroposphereModelSupport OPTIONAL, --Cond TropoSupport + altitudeAssistanceSupport OMA-LPPe-AGNSS-AltitudeAssistanceSupport + OPTIONAL, --Cond AltAssistSupport + solarRadiationSupport OMA-LPPe-AGNSS-SolarRadiationSupport + OPTIONAL, --Cond SolarRadiationSupport + ccpSupport OMA-LPPe-AGNSS-CCPsupport OPTIONAL, --CCPsupport + ... +} + +OMA-LPPe-AGNSS-IonosphericModelSupport ::= SEQUENCE { + ionoModel BIT STRING { localKlobuchar (0), + ionoStormWarning (1), + wideAreaIonoSurface (2) } (SIZE (1..8)), + ... +} + +OMA-LPPe-AGNSS-TroposphereModelSupport ::= SEQUENCE { + tropoModel BIT STRING { localTroposphereDelay (0), + surfaceParameters (1) } (SIZE (1..8)), + supportForMultipleGridPoints BOOLEAN, + ... +} + +OMA-LPPe-AGNSS-AltitudeAssistanceSupport ::= SEQUENCE { + ... +} + +OMA-LPPe-AGNSS-SolarRadiationSupport ::= SEQUENCE { + ... +} + +OMA-LPPe-AGNSS-CCPsupport ::= SEQUENCE { + supportAreaAssistanceSupported BOOLEAN, + multiReferenceStationSupported BOOLEAN, + ... +} + +OMA-LPPe-AGNSS-GenericAssistanceDataSupport ::= + SEQUENCE (SIZE (1..16)) OF OMA-LPPe-AGNSS-GenericAssistDataSupportElement + +OMA-LPPe-AGNSS-GenericAssistDataSupportElement ::= SEQUENCE { + gnss-ID GNSS-ID, + mechnanicsSupport OMA-LPPe-AGNSS-MechanicsSupport OPTIONAL, + --Cond MechSupport + dcbSupport OMA-LPPe-AGNSS-DCBsupport OPTIONAL, + --Cond DCBsupport + navModelAccuracyModelDegradationSupport OMA-LPPe-AGNSS-NavModelAccuracyModelDegradationSupport + OPTIONAL, --Cond NavModDegrSupport + ccpAssistanceSuppport GNSS-SignalIDs OPTIONAL, --Cond CCPsupport + navModelSupport OMA-LPPe-AGNSS-NavModelSupport OPTIONAL, --Cond NavModSupport + ... +} + +OMA-LPPe-AGNSS-MechanicsSupport ::= SEQUENCE { + ... +} + +OMA-LPPe-AGNSS-DCBsupport ::= SEQUENCE { + ... +} + +OMA-LPPe-AGNSS-NavModelAccuracyModelDegradationSupport ::= SEQUENCE { + ... +} + +OMA-LPPe-AGNSS-NavModelSupport ::= SEQUENCE { + navModelSupport SEQUENCE (SIZE(1..8)) OF INTEGER(1..8) OPTIONAL, + ... +} + +OMA-LPPe-AGNSS-HAgnssSupport ::= SEQUENCE { + modeSupport BIT STRING {ueBased (0), ueAssisted (1) } (SIZE(2)), + haGNSSpressureInformationSupport BOOLEAN, + haGNSSantennaInformationSupport BIT STRING { antennaDescriptionSupported (0), + antennaOrientationSupported (1) + } (SIZE(8)), + + haGNSSperGNSSsupport SEQUENCE (SIZE(1..8)) OF OMA-LPPe-AGNSS-HAgnssPerGNSSsupport, + ... +} + +OMA-LPPe-AGNSS-HAgnssPerGNSSsupport::= SEQUENCE { + gnss-ID GNSS-ID, + haGNSSsignalSupport GNSS-SignalIDs, + ... +} + +OMA-LPPe-AGNSS-RequestCapabilities ::= SEQUENCE { + assistanceDataSupportListReq NULL OPTIONAL, + environmentObservationSupportListReq NULL OPTIONAL, + haGNSSsupportReq NULL OPTIONAL, + ... +} + +OMA-LPPe-AGNSS-Error ::= CHOICE { + agnss-locationServerErrorCauses OMA-LPPe-AGNSS-LocationServerErrorCauses, + agnss-targetDeviceErrorCauses OMA-LPPe-AGNSS-TargetDeviceErrorCauses, + ... +} + +OMA-LPPe-AGNSS-LocationServerErrorCauses ::= SEQUENCE { + waIonoErrorCauses ENUMERATED { undefined, + waIonoNotSupportedByServer, + waIonoNotSupportedInTargetArea, + waIonoNotSupportedForAnyRequestedGNSS, + ...} OPTIONAL, + ccpErrorCauses ENUMERATED { undefined, + ccpNotSupportedByServer, + ccpNotSupportedInTargetArea, + ccpNotSupportedForAnyRequestedSignal, + ccpQorCannotBeMet, + ccpUnableToModifyControlParameters, + ccpMultiReferenceStationNotSupported, + ccpNeighborListNotSupported, + ccpSupportAreaAssistanceNotSupported, + ...} OPTIONAL, + ... +} + +OMA-LPPe-AGNSS-TargetDeviceErrorCauses ::= SEQUENCE { + highAccuracyErrorCauses ENUMERATED { undefined, + highAccuracyMethodNotSupported, + ...} OPTIONAL, + ionosphereMeasurementErrorCauses ENUMERATED { undefined, + ionosphereMeasurementsNotSupported, + ionosphereMeasurementsNotAvailable, + ...} OPTIONAL, + environmentObservationErrorCauses ENUMERATED { undefined, + surfaceMeasurementsNotSupported, + surfaceMeasurementsNotAvailable, + ...} OPTIONAL, + haGNSSerrorCauses ENUMERATED { undefined, + haGNSSnotSupportedByTarget, + haGNSSunavailableForAllRequestedSignals, + haGNSSantennaInformationNotSupported, + haGNSSantennaInformationNotAvailable, + haGNSSpressureInformationNotSupported, + haGNSSpressureInformationNotAvailable, + haGNSSunableToModifyControlParameters, + ...} OPTIONAL, + ... +} + +OMA-LPPe-AGNSS-CCPreferenceStationID ::= SEQUENCE { + stationID INTEGER(0..65535), + ... +} + +maxReferenceStations INTEGER ::= 8 + +OMA-LPPe-AGNSS-AntennaDescription ::= SEQUENCE { + antennaDescription CHOICE { + igsAntennaName OMA-LPPe-CharArray, + proprietaryName OMA-LPPe-CharArray, + ... + }, + antennaSetupID INTEGER(0..255) OPTIONAL, + antennaSerialNumber OMA-LPPe-CharArray OPTIONAL, + ... +} + +OMA-LPPe-AGNSS-Abort::= SEQUENCE { + targetDeviceAbortCauses SEQUENCE { + ccpAbort ENUMERATED { undefined, + ccpNotSupported, + ccpNotSupportedForProvidedSignals, + ... } OPTIONAL, + waIonoAbort ENUMERATED { undefined, + waIonoNotSupported, + waIonoNotSupportedForProvidedGNSSs, + ... } OPTIONAL, + ... + } OPTIONAL, + ... +} + +OMA-LPPe-OTDOA-ProvideAssistanceData ::= SEQUENCE { + otdoa-ReferenceCellInfo OMA-LPPe-OTDOA-ReferenceCellInfo OPTIONAL, + otdoa-NeighbourCellInfo OMA-LPPe-OTDOA-NeighbourCellInfoList OPTIONAL, + otdoa-Error OMA-LPPe-OTDOA-Error OPTIONAL, + ... +} + +OMA-LPPe-OTDOA-ReferenceCellInfo ::= SEQUENCE { + referenceCellInfo OTDOA-ReferenceCellInfo, + positionCalculationInfoRef OMA-LPPe-OTDOA-PositionCalculationInfoRef, + ... +} + +OMA-LPPe-OTDOA-PositionCalculationInfoRef ::= SEQUENCE { + systemFrameNumber BIT STRING (SIZE(10)) OPTIONAL, --Cond driftRate + rtdReferenceStd OMA-LPPe-OTDOA-RTDquality OPTIONAL, + cellLocation SEQUENCE { + reference-point OMA-LPPe-ReferencePoint OPTIONAL, + relative-location OMA-LPPe-RelativeLocation OPTIONAL, + ... + }, + femtoCellInfo SEQUENCE { + location-reliability INTEGER(1..100) OPTIONAL, + ... + } OPTIONAL, --Cond femto + + ... +} + +OMA-LPPe-OTDOA-NeighbourCellInfoList ::= SEQUENCE (SIZE (1..maxFreqLayers)) OF + OMA-LPPe-OTDOA-NeighbourFreqCellInfoList + +-- Added from LPP.asn +maxFreqLayers INTEGER ::= 3 + +OMA-LPPe-OTDOA-NeighbourFreqCellInfoList ::= SEQUENCE { + neighbourCellInfoList-eNB SEQUENCE (SIZE (1..maxLTEeNBs)) OF + OMA-LPPe-OTDOA-NeighbourCellInfoElement-eNB OPTIONAL, + neighbourCellInfoList-HeNB SEQUENCE (SIZE (1..maxLTEHeNBs)) OF + OMA-LPPe-OTDOA-NeighbourCellInfoElement-HeNB OPTIONAL, + ... +} + +OMA-LPPe-OTDOA-NeighbourCellInfoElement-eNB ::= SEQUENCE { + relative-Location OMA-LPPe-RelativeLocation, + otdoa-eNB-CellDataList SEQUENCE (SIZE (1..maxLTEMacroCells)) OF OMA-LPPe-OTDOA-CellData, + ... +} + +OMA-LPPe-OTDOA-NeighbourCellInfoElement-HeNB ::= SEQUENCE { + relative-Location OMA-LPPe-RelativeLocation, + location-reliability INTEGER (1..100) OPTIONAL, + otdoa-HeNB-CellDataList OMA-LPPe-OTDOA-CellData, + ... +} + +OMA-LPPe-OTDOA-CellData ::= SEQUENCE { + otdoa-NeighbourCellInfoElement OTDOA-NeighbourCellInfoElement, + rtdInfo SEQUENCE { + subframeOffset INTEGER(0..10229) OPTIONAL, + fineRTD INTEGER(0..99999), + fineRTDstd OMA-LPPe-OTDOA-RTDquality, + fineRTDdriftRate INTEGER(-100..100) OPTIONAL, + ... + }, + ... +} + +OMA-LPPe-OTDOA-RTDquality ::= SEQUENCE { + resolution ENUMERATED { ns-5, ns-10, ns-50, ns-100, ... }, + quality INTEGER (0..127), + ... +} + +OMA-LPPe-OTDOA-RequestAssistanceData ::= SEQUENCE { + lteCell SEQUENCE { + physCellId INTEGER(0..503), + eARFCN ARFCN-ValueEUTRA, + ecgi CellGlobalIdEUTRA-AndUTRA OPTIONAL, + ... + }, + requestedCells BIT STRING { + eNBs (0), + heNBs (1) } (SIZE (1..8)), + ... +} + +OMA-LPPe-OTDOA-ProvideLocationInformation ::= SEQUENCE { + otdoaLocationInformation OMA-LPPe-OTDOA-LocationInformation OPTIONAL, + otdoaError OMA-LPPe-OTDOA-Error OPTIONAL, + ... +} + +OMA-LPPe-OTDOA-LocationInformation ::= SEQUENCE { + systemFrameNumber BIT STRING (SIZE (10)), + physCellId INTEGER (0..503), + cellGlobalId CellGlobalIdEUTRA-AndUTRA OPTIONAL, + ... +} + +OMA-LPPe-OTDOA-RequestLocationInformation ::= SEQUENCE { + assistanceAvailability BOOLEAN, + ... +} + +OMA-LPPe-OTDOA-ProvideCapabilities ::= SEQUENCE { + eNodeB-AD-sup SEQUENCE { ... } OPTIONAL, + home-eNodeB-AD-sup SEQUENCE { ... } OPTIONAL, + ... +} + +OMA-LPPe-OTDOA-RequestCapabilities ::= SEQUENCE { + ... +} + +OMA-LPPe-OTDOA-Error ::= CHOICE { + locationServerErrorCauses OMA-LPPe-OTDOA-LocationServerErrorCauses, + targetDeviceErrorCauses OMA-LPPe-OTDOA-TargetDeviceErrorCauses, + ... +} + +OMA-LPPe-OTDOA-LocationServerErrorCauses ::= SEQUENCE { + cause ENUMERATED { undefined, + locationCalculationAssistanceDataNotSupported, + locationCalculationAssistanceDataSupportedButCurrentlyNotAvailable, + ... + }, + ... +} + +OMA-LPPe-OTDOA-TargetDeviceErrorCauses ::= SEQUENCE { + cause ENUMERATED { undefined, + there-were-not-enough-signals-received-for-ueBased-otdoa, + location-calculation-assistance-data-missing, + ... + }, + ... +} + +OMA-LPPe-EOTD-ProvideAssistanceData ::= SEQUENCE { + referenceBTS OMA-LPPe-EOTD-ReferenceBTSForAssistance OPTIONAL, --Cond NotError + msrAssistDataList OMA-LPPe-EOTD-MsrAssistDataList OPTIONAL, + systemInfoAssistDataList OMA-LPPe-EOTD-SystemInfoAssistDataList OPTIONAL, + eotdError OMA-LPPe-EOTD-Error OPTIONAL, + ... +} + +OMA-LPPe-EOTD-ReferenceBTSForAssistance ::= SEQUENCE { + bsicAndCarrier OMA-LPPe-CellNonUniqueIDGERAN, + timeSlotScheme OMA-LPPe-EOTD-TimeSlotScheme, + btsPosition CHOICE { + ellipsoidPoint Ellipsoid-Point, + ellipsoidPointWithAltitudeAndUncertaintyEllipsoid + EllipsoidPointWithAltitudeAndUncertaintyEllipsoid, + ... + } OPTIONAL, --Cond UE-based + ... + } + +OMA-LPPe-EOTD-MsrAssistDataList ::= SEQUENCE (SIZE (1..15)) OF OMA-LPPe-EOTD-MsrAssistBTS + +OMA-LPPe-EOTD-MsrAssistBTS ::= SEQUENCE { + bsicAndCarrier OMA-LPPe-CellNonUniqueIDGERAN, + multiFrameOffset OMA-LPPe-EOTD-MultiFrameOffset, + timeSlotScheme OMA-LPPe-EOTD-TimeSlotScheme, + roughRTD OMA-LPPe-EOTD-RoughRTD, + expectedOTD OMA-LPPe-EOTD-ExpectedOTD, + calcAssistanceBTS OMA-LPPe-EOTD-CalcAssistanceBTS OPTIONAL, --Cond UE-based + ... +} + +OMA-LPPe-EOTD-SystemInfoAssistDataList ::= SEQUENCE (SIZE (1..32)) OF OMA-LPPe-EOTD-SystemInfoAssistBTS + +OMA-LPPe-EOTD-SystemInfoAssistBTS ::= CHOICE{ + notPresent NULL, + present OMA-LPPe-EOTD-AssistBTSData +} + +OMA-LPPe-EOTD-AssistBTSData ::= SEQUENCE { + bsic INTEGER(0..63), + multiFrameOffset OMA-LPPe-EOTD-MultiFrameOffset, + timeSlotScheme OMA-LPPe-EOTD-TimeSlotScheme, + roughRTD OMA-LPPe-EOTD-RoughRTD, + expectedOTD OMA-LPPe-EOTD-ExpectedOTD OPTIONAL, + calcAssistanceBTS OMA-LPPe-EOTD-CalcAssistanceBTS OPTIONAL, --Cond UE-based + ... +} + +OMA-LPPe-EOTD-CalcAssistanceBTS ::= SEQUENCE { + fineRTD OMA-LPPe-EOTD-FineRTD, + relativePos OMA-LPPe-EOTD-relativePos, + ... +} + +OMA-LPPe-EOTD-relativePos ::= SEQUENCE { + relativeNorth OMA-LPPe-EOTD-RelDistance, + relativeEast OMA-LPPe-EOTD-RelDistance, + relativeAlt OMA-LPPe-EOTD-RelativeAlt OPTIONAL, + ... +} + +OMA-LPPe-EOTD-FineRTD ::= INTEGER(0..255) + +OMA-LPPe-EOTD-RelDistance ::= INTEGER(-200000..200000) + +OMA-LPPe-EOTD-RelativeAlt ::= INTEGER(-4000..4000) + +OMA-LPPe-EOTD-RequestAssistanceData ::= SEQUENCE { + eotdAssistanceReq BIT STRING { ueAssisted (0), ueBased (1) }, + ... +} + +OMA-LPPe-EOTD-ProvideLocationInformation ::= SEQUENCE { + eotdMsrElement OMA-LPPe-EOTD-MsrElement OPTIONAL, + eotdError OMA-LPPe-EOTD-Error OPTIONAL, + ... +} + +OMA-LPPe-EOTD-MsrElement ::= SEQUENCE { + refFrameNumber INTEGER(0..42431), + referenceTimeSlot OMA-LPPe-EOTD-ModuloTimeSlot, + toaMeasurementsOfRef OMA-LPPe-EOTD-TOA-MeasurementsOfRef OPTIONAL, + stdResolution BIT STRING(SIZE(2)), + taCorrection INTEGER(0..960) OPTIONAL, + otd-FirstSetMsrs SEQUENCE (SIZE(1..15)) OF OMA-LPPe-EOTD-MeasurementWithID OPTIONAL, + ... +} + +OMA-LPPe-EOTD-TOA-MeasurementsOfRef ::= SEQUENCE { + refQuality BIT STRING(SIZE(5)), + numOfMeasurements BIT STRING(SIZE(3)), + ... +} + +OMA-LPPe-EOTD-MeasurementWithID ::= SEQUENCE { + neighborIdentity OMA-LPPe-EOTD-NeighborIdentity, + nborTimeSlot OMA-LPPe-EOTD-ModuloTimeSlot, + eotdQuality OMA-LPPe-EOTD-EOTDQuality, + otdValue OMA-LPPe-EOTD-OTDValue, + ... +} + +OMA-LPPe-EOTD-NeighborIdentity ::= CHOICE { + bsicAndCarrier OMA-LPPe-CellNonUniqueIDGERAN, + ci OMA-LPPe-EOTD-CellID, + multiFrameCarrier OMA-LPPe-EOTD-MultiFrameCarrier, + requestIndex OMA-LPPe-EOTD-RequestIndex, + systemInfoIndex OMA-LPPe-EOTD-SystemInfoIndex, + ciAndLac OMA-LPPe-CellLocalIdGERAN, + ... +} + +OMA-LPPe-EOTD-EOTDQuality ::= SEQUENCE { + nbrOfMeasurements BIT STRING(SIZE(3)), + stdOfEOTD BIT STRING(SIZE(5)), + ... +} + +OMA-LPPe-EOTD-OTDValue ::= INTEGER (0..39999) + +OMA-LPPe-EOTD-CellID ::= INTEGER (0..65535) + +OMA-LPPe-EOTD-RequestIndex ::= INTEGER (1..16) +OMA-LPPe-EOTD-SystemInfoIndex ::= INTEGER (1..32) + +OMA-LPPe-EOTD-MultiFrameCarrier ::= SEQUENCE { + bcchCarrier OMA-LPPe-EOTD-BCCHCarrier, + multiFrameOffset OMA-LPPe-EOTD-MultiFrameOffset, + ... +} + +OMA-LPPe-EOTD-BCCHCarrier ::= INTEGER (0..1023) + +OMA-LPPe-EOTD-RequestLocationInformation ::= SEQUENCE { + ... +} + +OMA-LPPe-EOTD-ProvideCapabilities ::= SEQUENCE { + eotdSupport BIT STRING{ ueBased(0), ueAssisted(1) }, + ... +} + +OMA-LPPe-EOTD-RequestCapabilities ::= SEQUENCE { + ... +} + +OMA-LPPe-EOTD-Error ::= CHOICE { + locationServerErrorCauses OMA-LPPe-EOTD-LocationServerErrorCauses, + targetDeviceErrorCauses OMA-LPPe-EOTD-TargetDeviceErrorCauses, + ... +} + +OMA-LPPe-EOTD-LocationServerErrorCauses ::= SEQUENCE { + cause ENUMERATED{ undefined, + assistanceDataForUEbasedEOTDnotAvailable, + assistanceDataForUEassistedEOTDnotAvailable, + ...}, + ... +} + +OMA-LPPe-EOTD-TargetDeviceErrorCauses ::= SEQUENCE { + cause ENUMERATED{ undefinedError, + notEnoughBTsforEOTD, + assistanceDataMissing, + referenceCellNotServingCell, + eotdMeasurementsNotSupported, + eotdMeasurementsNotAvailable, + uebasedEOTDnotSupported, + ...}, + ... +} + +OMA-LPPe-EOTD-TimeSlotScheme ::= ENUMERATED { + equalLength (0), + variousLength (1) +} + +OMA-LPPe-EOTD-MultiFrameOffset ::= INTEGER (0..51) + +OMA-LPPe-EOTD-RoughRTD ::= INTEGER (0..1250) + +OMA-LPPe-EOTD-ExpectedOTD ::= SEQUENCE { + expectedOTD INTEGER(0..1250), + expOTDUncertainty INTEGER(0..7), + ... +} + +OMA-LPPe-EOTD-ModuloTimeSlot ::= INTEGER(0..3) + +OMA-LPPe-OTDOA-UTRA-ProvideAssistanceData ::= SEQUENCE { + referenceCellInfo OMA-LPPe-OTDOA-UTRA-ReferenceCellInfo OPTIONAL, + neigborCellList OMA-LPPe-OTDOA-UTRA-NeighborCellList OPTIONAL, + otdoaUtraError OMA-LPPe-OTDOA-UTRA-Error OPTIONAL, + ... +} + +OMA-LPPe-OTDOA-UTRA-ReferenceCellInfo ::= SEQUENCE { + sfn INTEGER(0..4095) OPTIONAL, + modeSpecificInfo CHOICE { + fdd SEQUENCE { + primaryCPICH-info OMA-LPPe-OTDOA-UTRA-PrimaryCPICH-Info + }, + tdd SEQUENCE { + cellAndChannelIdentity OMA-LPPe-OTDOA-UTRA-CellAndChannelIdentity + } + }, + frequencyInfo OMA-LPPe-UTRA-FrequencyInfo OPTIONAL, + refPosAssist OMA-LPPe-OTDOA-UTRA-RefPosAssist OPTIONAL, --Cond UE-based + ipdl-parameters OMA-LPPe-OTDOA-UTRA-IPDL-Parameters OPTIONAL, + ... +} + +OMA-LPPe-OTDOA-UTRA-RefPosAssist ::= SEQUENCE { + cellPosition CHOICE { + ellipsoidPoint Ellipsoid-Point, + ellipsoidPointWithAltitude EllipsoidPointWithAltitude, + ... + }, + roundTripTime INTEGER (0..327 ) OPTIONAL, + roundTripTimeExtension INTEGER (0..70274) OPTIONAL, + ... +} + +OMA-LPPe-OTDOA-UTRA-NeighborCellList ::= SEQUENCE (SIZE (1..utra-maxCellMeas)) OF + OMA-LPPe-OTDOA-UTRA-NeighborCellInfo + +OMA-LPPe-OTDOA-UTRA-NeighborCellInfo ::= SEQUENCE { + modeSpecificInfo CHOICE { + fdd SEQUENCE { + primaryCPICH-info OMA-LPPe-OTDOA-UTRA-PrimaryCPICH-Info + }, + tdd SEQUENCE { + cellAndChannelIdentity OMA-LPPe-OTDOA-UTRA-CellAndChannelIdentity + } + }, + frequencyInfo OMA-LPPe-UTRA-FrequencyInfo OPTIONAL, + ipdl-parameters OMA-LPPe-OTDOA-UTRA-IPDL-Parameters OPTIONAL, + sfn-SFN-relTimeDifference OMA-LPPe-OTDOA-UTRA-SFN-SFN-RelTimeDifference1, + sfn-offsetValidity OMA-LPPe-OTDOA-UTRA-SFN-OffsetValidity OPTIONAL, + sfn-SFN-drift OMA-LPPe-OTDOA-UTRA-SFN-SFN-Drift OPTIONAL, + searchWindowSize OMA-LPPe-OTDOA-UTRA-SearchWindowSize, + positioningAssistance OMA-LPPe-OTDOA-UTRA-PositioningAssistance OPTIONAL, --Cond UEbased + ... +} + +OMA-LPPe-OTDOA-UTRA-SFN-SFN-RelTimeDifference1 ::= SEQUENCE { + sfn-offset INTEGER (0..4095), + sfn-sfn-relTimeDifference INTEGER (0..38399) +} + +OMA-LPPe-OTDOA-UTRA-PositioningAssistance ::= SEQUENCE { + relativeNorth INTEGER (-20000..20000), + relativeEast INTEGER (-20000..20000), + relativeAltitude INTEGER (-4000..4000) OPTIONAL, + fineSFN-SFN OMA-LPPe-OTDOA-UTRA-fineSFN-SFN, + roundTripTime INTEGER (0..327 ) OPTIONAL, + roundTripTimeExtension INTEGER (0..70274) OPTIONAL, + ... +} + +utra-maxCellMeas INTEGER ::= 32 + +OMA-LPPe-OTDOA-UTRA-SFN-OffsetValidity ::= ENUMERATED { false } + +OMA-LPPe-OTDOA-UTRA-SFN-SFN-Drift ::= ENUMERATED { + sfnsfndrift0, sfnsfndrift1, sfnsfndrift2, + sfnsfndrift3, sfnsfndrift4, sfnsfndrift5, + sfnsfndrift8, sfnsfndrift10, sfnsfndrift15, + sfnsfndrift25, sfnsfndrift35, sfnsfndrift50, + sfnsfndrift65, sfnsfndrift80, sfnsfndrift100, + sfnsfndrift-1, sfnsfndrift-2, sfnsfndrift-3, + sfnsfndrift-4, sfnsfndrift-5, sfnsfndrift-8, + sfnsfndrift-10, sfnsfndrift-15, sfnsfndrift-25, + sfnsfndrift-35, sfnsfndrift-50, sfnsfndrift-65, + sfnsfndrift-80, sfnsfndrift-100, + ... } + +OMA-LPPe-OTDOA-UTRA-SearchWindowSize ::= ENUMERATED { c20, c40, c80, c160, c320, + c640, c1280, moreThan1280, ... } + +OMA-LPPe-OTDOA-UTRA-fineSFN-SFN ::= INTEGER (0..15) + +OMA-LPPe-OTDOA-UTRA-IPDL-Parameters ::= SEQUENCE { + modeSpecificInfo CHOICE { + fdd SEQUENCE { + ip-spacing OMA-LPPe-OTDOA-UTRA-IP-Spacing, + ip-length OMA-LPPe-OTDOA-UTRA-IP-Length, + ip-Offset INTEGER (0..9), + seed INTEGER (0..63), + burstModeParameters OMA-LPPe-OTDOA-UTRA-BurstModeParameters OPTIONAL + }, + tdd SEQUENCE { + ip-spacing-tdd OMA-LPPe-OTDOA-UTRA-IP-Spacing-TDD, + ip-slot INTEGER (0..14), + ip-start INTEGER (0..4095), + ip-PCCPCH OMA-LPPe-OTDOA-UTRA-IP-PCCPCH OPTIONAL, + burstModeParameters OMA-LPPe-OTDOA-UTRA-BurstModeParameters + } + } +} + +OMA-LPPe-OTDOA-UTRA-IP-Spacing ::= ENUMERATED { e5, e7, e10, e15, e20, e30, e40, e50} + +OMA-LPPe-OTDOA-UTRA-IP-Length ::= ENUMERATED {ipl5, ipl10} + +OMA-LPPe-OTDOA-UTRA-IP-Spacing-TDD ::= ENUMERATED { e30, e40, e50, e70, e100 } + +OMA-LPPe-OTDOA-UTRA-IP-PCCPCH ::= BOOLEAN + +OMA-LPPe-OTDOA-UTRA-BurstModeParameters ::= SEQUENCE { + burstStart INTEGER (0..15), + burstLength INTEGER (10..25), + burstFreq INTEGER (1..16) +} + +OMA-LPPe-OTDOA-UTRA-RequestAssistanceData ::= SEQUENCE { + otdoaUtraAssistanceReq BIT STRING { ueAssisted (0), ueBased (1) } (SIZE(1..8)), + ... +} + +OMA-LPPe-OTDOA-UTRA-ProvideLocationInformation ::= SEQUENCE { + otdoaUtraMeasurement OMA-LPPe-OTDOA-UTRA-Measurement OPTIONAL, + otdoaUtraError OMA-LPPe-OTDOA-UTRA-Error OPTIONAL, + timeStampData OMA-LPPe-OTDOA-UTRA-TimeStampData OPTIONAL, --Cond UE-based + ... +} + +OMA-LPPe-OTDOA-UTRA-Measurement ::= SEQUENCE { + sfn INTEGER (0..4095), + modeSpecificInfoMeas CHOICE { + fdd SEQUENCE { + referenceCellIdentity OMA-LPPe-OTDOA-UTRA-PrimaryCPICH-Info, + ue-RX-TX-TimeDifferenceType2Info OMA-LPPe-OTDOA-UTRA-UE-RX-TX-TimeDifferenceType2Info, + ... + }, + tdd SEQUENCE { + cellAndChannelIdentity OMA-LPPe-OTDOA-UTRA-CellAndChannelIdentity, + ... + } + }, + neighborList OMA-LPPe-OTDOA-UTRA-NeighborList OPTIONAL, + ... +} + +OMA-LPPe-OTDOA-UTRA-UE-RX-TX-TimeDifferenceType2Info ::= SEQUENCE { + ue-RX-TX-timeDifferenceType2 OMA-LPPe-OTDOA-UTRA-TimeDifferenceType2, + neighborQuality OMA-LPPe-OTDOA-UTRA-NeighborQuality +} + +OMA-LPPe-OTDOA-UTRA-TimeDifferenceType2 ::= INTEGER (0..8191) + +OMA-LPPe-OTDOA-UTRA-NeighborList ::= SEQUENCE (SIZE (1..utra-maxCellMeas)) OF + OMA-LPPe-OTDOA-UTRA-Neighbor + +OMA-LPPe-OTDOA-UTRA-Neighbor ::= SEQUENCE { + modeSpecificInfo CHOICE { + fdd SEQUENCE { + neighborIdentity OMA-LPPe-OTDOA-UTRA-PrimaryCPICH-Info OPTIONAL, + ue-RX-TX-timeDifferenceType2Info + OMA-LPPe-OTDOA-UTRA-UE-RX-TX-TimeDifferenceType2Info OPTIONAL, + ... }, + tdd SEQUENCE { + cellAndChannelIdentity OMA-LPPe-OTDOA-UTRA-CellAndChannelIdentity OPTIONAL, + uarfcn ARFCN-ValueUTRA OPTIONAL, + ... } + }, + neighborQuality OMA-LPPe-OTDOA-UTRA-NeighborQuality, + sfn-sfn-ObsTimeDifference2 OMA-LPPe-OTDOA-UTRA-SFN-SFN-ObsTimeDifference2, + ... +} + +OMA-LPPe-OTDOA-UTRA-NeighborQuality ::= SEQUENCE { + quality OMA-LPPe-OTDOA-UTRA-Quality, + ... +} + +OMA-LPPe-OTDOA-UTRA-SFN-SFN-ObsTimeDifference2 ::= INTEGER (0..65535) + +OMA-LPPe-OTDOA-UTRA-Quality ::= SEQUENCE { + stdResolution BIT STRING (SIZE (2)), + numberOfOTDOA-Measurements BIT STRING (SIZE (3)), + stdOfOTDOA-Measurements BIT STRING (SIZE (5)), + ... +} + +OMA-LPPe-OTDOA-UTRA-TimeStampData ::= SEQUENCE { + sfn INTEGER(0..4095), + utraCellGlobalID CellGlobalIdEUTRA-AndUTRA, + frequencyInfo OMA-LPPe-UTRA-FrequencyInfo OPTIONAL, + nonUniqueCellID CHOICE { + primaryScramblingCode OMA-LPPe-OTDOA-UTRA-PrimaryScramblingCode, --FDD + cellParametersId OMA-LPPe-OTDOA-UTRA-CellParametersID, --TDD + ...}, + ... +} + +OMA-LPPe-OTDOA-UTRA-RequestLocationInformation ::= SEQUENCE { + ... +} + +OMA-LPPe-OTDOA-UTRA-ProvideCapabilities ::= SEQUENCE { + ueBasedSupported BOOLEAN, + ueAssistedSupported BOOLEAN, + ipdlSupported BOOLEAN, + ... +} + +OMA-LPPe-OTDOA-UTRA-RequestCapabilities ::= SEQUENCE { + ... +} + +OMA-LPPe-OTDOA-UTRA-Error ::= CHOICE { + locationServerErrorCauses OMA-LPPe-OTDOA-UTRA-LocationServerErrorCauses, + targetDeviceErrorCauses OMA-LPPe-OTDOA-UTRA-TargetDeviceErrorCauses, + ... +} + +OMA-LPPe-OTDOA-UTRA-LocationServerErrorCauses ::= SEQUENCE { + cause ENUMERATED{ undefinedError, + assistanceDataForUEbasedOTDOAnotAvailable, + assistanceDataForUEassistedOTDOAnotAvailable, + ...}, + ... +} + +OMA-LPPe-OTDOA-UTRA-TargetDeviceErrorCauses ::= SEQUENCE { + cause ENUMERATED{ undefinedError, + notEnoughOTDOA-cells, + assistanceDataMissing, + referenceCellNotServingCell, + otdoaMeasurementsNotSupported, + otdoaMeasurementsNotAvailable, + uebasedOTDOAnotSupported, + ...}, + ... +} + +OMA-LPPe-OTDOA-UTRA-PrimaryCPICH-Info ::= SEQUENCE { + primaryScramblingCode OMA-LPPe-OTDOA-UTRA-PrimaryScramblingCode +} + +OMA-LPPe-OTDOA-UTRA-PrimaryScramblingCode ::= INTEGER (0..511) + +OMA-LPPe-OTDOA-UTRA-CellAndChannelIdentity ::= SEQUENCE { + burstType OMA-LPPe-OTDOA-UTRA-BurstType, + midambleShift OMA-LPPe-OTDOA-UTRA-MidambleShiftLong, + timeslot OMA-LPPe-OTDOA-UTRA-TimeSlotNumber, + cellParametersID OMA-LPPe-OTDOA-UTRA-CellParametersID, + ... +} + +OMA-LPPe-OTDOA-UTRA-BurstType ::= ENUMERATED { type1, type2 } + +OMA-LPPe-OTDOA-UTRA-MidambleShiftLong ::= INTEGER (0..15) + +OMA-LPPe-OTDOA-UTRA-TimeSlotNumber ::= INTEGER (0..14) + +OMA-LPPe-OTDOA-UTRA-CellParametersID ::= INTEGER (0..127) + +OMA-LPPe-ECID-LTE-ProvideAssistanceData ::= SEQUENCE { + ecid-LTE-NetworkData SEQUENCE (SIZE (1..maxLTENetworks)) OF + OMA-LPPe-ECID-LTE-NetworkData OPTIONAL, + ecid-LTE-Error OMA-LPPe-ECID-LTE-Error OPTIONAL, + ... +} + +maxLTENetworks INTEGER ::= 8 + +OMA-LPPe-ECID-LTE-NetworkData ::= SEQUENCE { + plmn-Identity SEQUENCE { + mcc SEQUENCE (SIZE (3)) OF INTEGER (0..9), + mnc SEQUENCE (SIZE (2..3)) OF INTEGER (0..9), + ... + }, + multiple-PLMNs BOOLEAN, + reference-location OMA-LPPe-ReferencePoint OPTIONAL, --Cond eNBlocations + ecid-lte-eNodeB-list SEQUENCE (SIZE (1..maxLTEeNBs)) OF OMA-LPPe-ECID-LTE-eNodeBData, + ecid-lte-HeNB-list SEQUENCE (SIZE (1..maxLTEHeNBs)) OF OMA-LPPe-ECID-LTE-HeNBData OPTIONAL, + ... +} + +maxLTEeNBs INTEGER ::= 32 + +maxLTEHeNBs INTEGER ::= 128 + +OMA-LPPe-ECID-LTE-eNodeBData ::= SEQUENCE { + relative-location OMA-LPPe-RelativeLocation OPTIONAL, + ecid-lte-eNodeB-CellData SEQUENCE (SIZE (1..maxLTEMacroCells)) OF OMA-LPPe-ECID-LTE-CellData, + ... +} + +maxLTEMacroCells INTEGER ::= 8 + +OMA-LPPe-ECID-LTE-HeNBData ::= SEQUENCE { + relative-location OMA-LPPe-RelativeLocation OPTIONAL, + location-reliability INTEGER (1..100) OPTIONAL, + coverageArea OMA-LPPe-WLANFemtoCoverageArea OPTIONAL, + ecid-lte-HeNB-CellData OMA-LPPe-ECID-LTE-CellData, + ... +} + +OMA-LPPe-ECID-LTE-CellData ::= SEQUENCE { + physCellId INTEGER (0..503) OPTIONAL, --Cond AtLeastOne + cellIdentity BIT STRING (SIZE (28)) OPTIONAL, --Cond AtLeastOne + dl-CarrierFreq ARFCN-ValueEUTRA, + rs-transmit-power INTEGER (-127..128) OPTIONAL, + antennaPortConfig ENUMERATED {port1, ports2, ports4, ... } OPTIONAL, + antenna-gain INTEGER (-127..128) OPTIONAL, + beam-width INTEGER (1..360) OPTIONAL, + transmit-direction INTEGER (0..360) OPTIONAL, + frequency-accuracy INTEGER (0..100), + ... +} + +OMA-LPPe-ECID-LTE-RequestAssistanceData ::= SEQUENCE { + eNBrequestedAD BIT STRING { bslist (0), + bslocation (1), + transmit-power (2), + antennaPortConfig (3), + antenna-gain (4), + beam-width (5), + transmit-direction (6), + frequency-accuracy (7), + non-serving (8) } (SIZE(1..16)) OPTIONAL, + heNBrequestedAD BIT STRING { bslist (0), + bslocation (1), + locationreliability (2), + transmit-power (3), + antennaPortConfig (4), + frequency-accuracy (5), + coveragearea (6), + non-serving (7) } (SIZE(1..16)) OPTIONAL, + ... +} + +OMA-LPPe-ECID-LTE-ProvideLocationInformation ::= SEQUENCE { + ecid-LTE-CombinedLocationInformation SEQUENCE (SIZE (1..maxLTEECIDSize)) + OF OMA-LPPe-ECID-LTE-LocationInformationList OPTIONAL, + ecid-LTE-Error OMA-LPPe-ECID-LTE-Error OPTIONAL, + ... +} + +OMA-LPPe-ECID-LTE-LocationInformationList ::= SEQUENCE { + ecid-LTE-LocationInformation OMA-LPPe-ECID-LTE-LocationInformation, + relativeTimeStamp INTEGER (0..65535) OPTIONAL, + servingFlag BOOLEAN, + ... +} + +maxLTEECIDSize INTEGER ::= 64 + +OMA-LPPe-ECID-LTE-LocationInformation ::= SEQUENCE { + lpp-ECID-SignalMeasurementInformation ECID-SignalMeasurementInformation, + ... +} + +OMA-LPPe-ECID-LTE-RequestLocationInformation ::= SEQUENCE { + requestedMeasurements BIT STRING { rsrp (0), + rsrq (1), + ueRxTx (2), + non-serving (3), + historic (4) } (SIZE(1..8)), + ... +} + +OMA-LPPe-ECID-LTE-ProvideCapabilities ::= SEQUENCE { + ecid-lte-MeasSupported BIT STRING {rsrp (0), + rsrq (1), + ueRxTx (2), + non-serving (3), + historic (4) } (SIZE(1..8)), + ecid-lte-eNodeB-ADSupported BIT STRING {bslist (0), + bslocation (1), + transmit-power (2), + antennaPortConfig (3), + antenna-gain (4), + beam-width (5), + transmit-direction (6), + frequency-accuracy (7), + non-serving (8) } (SIZE(1..16)), + ecid-utra-HeNB-ADSupported BIT STRING {bslist (0), + bslocation (1), + locationreliability (2), + transmit-power (3), + antennaPortConfig (4), + frequency-accuracy (5), + coveragearea (6), + non-serving (7) } (SIZE(1..16)), + ... +} + +OMA-LPPe-ECID-LTE-RequestCapabilities ::= SEQUENCE { + ... +} + +OMA-LPPe-ECID-LTE-Error ::= CHOICE { + locationServerErrorCauses OMA-LPPe-ECID-LTE-LocationServerErrorCauses, + targetDeviceErrorCauses OMA-LPPe-ECID-LTE-TargetDeviceErrorCauses, + ... +} + +OMA-LPPe-ECID-LTE-LocationServerErrorCauses ::= SEQUENCE { + cause ENUMERATED { undefined, + requestedADNotAvailable, + notAllrequestedADAvailable, + ... + }, + eNodeBMandatoryDataUnavailable NULL OPTIONAL, + eNodeBLocationsUnavailable NULL OPTIONAL, + eNodeBcellTransmitPowerUnavailable NULL OPTIONAL, + eNodeBcellAntennaPortConfigUnavailable NULL OPTIONAL, + eNodeBcallAntennaGainUnavailable NULL OPTIONAL, + eNodeBcellBeamWidthUnavailable NULL OPTIONAL, + eNodeBcellTransmitDirectionUnavailable NULL OPTIONAL, + eNodeBcellFrequencyAccuracyUnavailable NULL OPTIONAL, + eNodeBnonservingADUnavailable NULL OPTIONAL, + heNBMandatoryDataUnavailable NULL OPTIONAL, + heNBLocationUnavailable NULL OPTIONAL, + heNBLocationReliabilityUnavailable NULL OPTIONAL, + heNBcellTransmitPowerUnavailable NULL OPTIONAL, + heNBcellAntennaPortConfigUnavailable NULL OPTIONAL, + heNBcellFrequencyAccuracyUnavailable NULL OPTIONAL, + heNBCoverageAreaUnavailable NULL OPTIONAL, + heNBnonservingADUnavailable NULL OPTIONAL, + ... +} + +OMA-LPPe-ECID-LTE-TargetDeviceErrorCauses ::= SEQUENCE { + cause ENUMERATED {undefined, + requestedMeasurementsNotAvailable, + notAllrequestedMeasurementsPossible, + ... + }, + rsrpMeasurementNotPossible NULL OPTIONAL, + rsrqMeasurementNotPossible NULL OPTIONAL, + ueRxTxMeasurementNotPossible NULL OPTIONAL, + non-servingMeasurementsNotAvailable NULL OPTIONAL, + historicMeasurementsNotAvailable NULL OPTIONAL, + ... +} + +OMA-LPPe-ECID-GSM-ProvideAssistanceData ::= SEQUENCE { + ecid-gsm-NetworkData SEQUENCE (SIZE (1..maxGSMNetworks)) + OF OMA-LPPe-ECID-GSM-NetworkData OPTIONAL, + ecid-gsm-Error OMA-LPPe-ECID-GSM-Error OPTIONAL, + ... +} + +maxGSMNetworks INTEGER ::= 8 + +OMA-LPPe-ECID-GSM-NetworkData ::= SEQUENCE { + plmn-Identity SEQUENCE { + mcc SEQUENCE (SIZE (3)) OF INTEGER (0..9), + mnc SEQUENCE (SIZE (2..3)) OF INTEGER (0..9) + }, + reference-location OMA-LPPe-ReferencePoint OPTIONAL, --Cond BSlocations + base-station-list SEQUENCE (SIZE (1..maxGSMBaseStations)) OF OMA-LPPe-ECID-GSM-BaseStationData, + ... +} + +maxGSMBaseStations INTEGER ::= 32 + +OMA-LPPe-ECID-GSM-BaseStationData ::= SEQUENCE { + relative-location OMA-LPPe-RelativeLocation OPTIONAL, + ecid-gsm-CellData SEQUENCE (SIZE (1..maxGSMCells)) OF OMA-LPPe-ECID-GSM-CellData, + ... +} + +maxGSMCells INTEGER ::= 8 + +OMA-LPPe-ECID-GSM-CellData ::= SEQUENCE { + cellNonUniqueIDGERAN OMA-LPPe-CellNonUniqueIDGERAN OPTIONAL, --Cond AtLeastOne + cellLocalIDGERAN OMA-LPPe-CellLocalIdGERAN OPTIONAL, --Cond AtLeastOne + transmit-power INTEGER (-127..128) OPTIONAL, + antenna-gain INTEGER (-127..128) OPTIONAL, + beam-width INTEGER (1..360) OPTIONAL, + transmit-direction INTEGER (0..360) OPTIONAL, + frequency-accuracy INTEGER (0..100) OPTIONAL, + ... +} + +OMA-LPPe-ECID-GSM-RequestAssistanceData ::= SEQUENCE { + requestedAD BIT STRING { bslist (0), + bslocation (1), + transmit-power (2), + antenna-gain (3), + beam-width (4), + transmit-direction (5), + frequency-accuracy (6), + non-serving (7) + } (SIZE(1..16)), + ... +} + +OMA-LPPe-ECID-GSM-ProvideLocationInformation ::= SEQUENCE { + ecid-GSM-CombinedLocationInformation SEQUENCE (SIZE (1..maxGSMECIDSize)) + OF OMA-LPPe-ECID-GSM-LocationInformationList OPTIONAL, + ecid-GSM-Error OMA-LPPe-ECID-GSM-Error OPTIONAL, + ... +} + +OMA-LPPe-ECID-GSM-LocationInformationList ::= SEQUENCE { + ecid-GSM-LocationInformation OMA-LPPe-ECID-GSM-LocationInformation, + relativeTimeStamp INTEGER (0..65535) OPTIONAL, + servingFlag BOOLEAN, + ... +} + +maxGSMECIDSize INTEGER ::= 64 + +OMA-LPPe-ECID-GSM-LocationInformation ::= SEQUENCE { + cellGlobalIdGERAN CellGlobalIdGERAN, + rxLevel INTEGER (0..63) OPTIONAL, + tA INTEGER(0..255) OPTIONAL, + nMR-GERAN OMA-LPPe-NMR-GERAN OPTIONAL, + ... +} + +OMA-LPPe-NMR-GERAN ::= SEQUENCE (SIZE (1..15)) OF SEQUENCE { + cellNonUniqueIDGERAN OMA-LPPe-CellNonUniqueIDGERAN, + cellLocalIDGERAN OMA-LPPe-CellLocalIdGERAN OPTIONAL, + rxLevel INTEGER (0..63), + ... +} + +OMA-LPPe-ECID-GSM-RequestLocationInformation ::= SEQUENCE { + requestedMeasurements BIT STRING { rxLevel (0), + tA (1), + nMR-GERAN (2), + non-serving (3), + historic (4) } (SIZE(1..8)), + ... +} + +OMA-LPPe-ECID-GSM-ProvideCapabilities ::= SEQUENCE { + ecid-gsm-MeasSupported BIT STRING { rxLevel (0), + tA (1), + nMR-GERAN (2), + non-serving (3), + historic (4) } (SIZE(1..8)), + ecid-gsm-ADSupported BIT STRING { bslist (0), + bslocation (1), + transmit-power (2), + antenna-gain (3), + beam-width (4), + transmit-direction (5), + frequency-accuracy (6), + non-serving (7) } (SIZE(1..16)), + ... +} + +OMA-LPPe-ECID-GSM-RequestCapabilities ::= SEQUENCE { + ... + } + +OMA-LPPe-ECID-GSM-Error ::= CHOICE { + locationServerErrorCauses OMA-LPPe-ECID-GSM-LocationServerErrorCauses, + targetDeviceErrorCauses OMA-LPPe-ECID-GSM-TargetDeviceErrorCauses, + ... + } + +OMA-LPPe-ECID-GSM-LocationServerErrorCauses ::= SEQUENCE { + cause ENUMERATED { undefined, + requestedADNotAvailable, + notAllrequestedADAvailable, + ... + }, + mandatoryDataUnavailable NULL OPTIONAL, + bsLocationsUnavailable NULL OPTIONAL, + cellTransmitPowerUnavailable NULL OPTIONAL, + callAntennaGainUnavailable NULL OPTIONAL, + cellBeamWidthUnavailable NULL OPTIONAL, + cellTransmitDirectionUnavailable NULL OPTIONAL, + cellFrequencyAccuracyUnavailable NULL OPTIONAL, + nonservingADUnavailable NULL OPTIONAL, + ... +} + +OMA-LPPe-ECID-GSM-TargetDeviceErrorCauses ::= SEQUENCE { + cause ENUMERATED { undefined, + requestedMeasurementsNotAvailable, + notAllrequestedMeasurementsPossible, + ... + }, + rxLevelMeasurementNotPossible NULL OPTIONAL, + taMeasurementNotPossible NULL OPTIONAL, + nMRMeasurementNotPossible NULL OPTIONAL, + non-servingMeasurementsNotAvailable NULL OPTIONAL, + historicMeasurementsNotAvailable NULL OPTIONAL, + ... +} + +OMA-LPPe-ECID-UTRA-ProvideAssistanceData ::= SEQUENCE { + ecid-UTRA-NetworkData SEQUENCE (SIZE (1..maxUTRANetworks)) + OF OMA-LPPe-ECID-UTRA-NetworkData OPTIONAL, + ecid-UTRA-Error OMA-LPPe-ECID-UTRA-Error OPTIONAL, + ... +} + +maxUTRANetworks INTEGER ::= 8 + +OMA-LPPe-ECID-UTRA-NetworkData ::= SEQUENCE { + plmn-Identity SEQUENCE { + mcc SEQUENCE (SIZE (3)) OF INTEGER (0..9), + mnc SEQUENCE (SIZE (2..3)) OF INTEGER (0..9) + }, + multiple-PLMNs BOOLEAN, + reference-location OMA-LPPe-ReferencePoint OPTIONAL, --Cond nodeBlocations + ecid-utra-nodeB-list SEQUENCE (SIZE (1..maxUTRAnodeBs)) + OF OMA-LPPe-ECID-UTRA-NodeBData OPTIONAL, + ecid-utra-HNB-list SEQUENCE (SIZE (1..maxUTRAHNBs)) OF OMA-LPPe-ECID-UTRA-HNBData OPTIONAL, + ... +} + +maxUTRAnodeBs INTEGER ::= 32 + +maxUTRAHNBs INTEGER ::= 128 + +OMA-LPPe-ECID-UTRA-NodeBData ::= SEQUENCE { + relative-location OMA-LPPe-RelativeLocation OPTIONAL, + ecid-utra-nodeB-CellData SEQUENCE (SIZE (1..maxUTRAMacroCells)) OF + OMA-LPPe-ECID-UTRA-CellData, + ... +} + +maxUTRAMacroCells INTEGER ::= 8 + +OMA-LPPe-ECID-UTRA-HNBData ::= SEQUENCE { + relative-location OMA-LPPe-RelativeLocation OPTIONAL, + location-reliability INTEGER (1..100) OPTIONAL, + coverageArea OMA-LPPe-WLANFemtoCoverageArea OPTIONAL, + ecid-utra-HNB-CellData OMA-LPPe-ECID-UTRA-CellData, + ... +} + +OMA-LPPe-ECID-UTRA-CellData ::= SEQUENCE { + cellIdentity BIT STRING (SIZE (32)) OPTIONAL, --Cond AtLeastOne + modeSpecificInfo CHOICE { + fdd + SEQUENCE { + primaryCPICH-Scrambling-Code OMA-LPPe-OTDOA-UTRA-PrimaryScramblingCode, + primaryCPICH-Tx-Power INTEGER (-127..128) OPTIONAL, + uarfcn-dl ARFCN-ValueUTRA, + ... + }, + tdd + SEQUENCE { + cellParametersID OMA-LPPe-OTDOA-UTRA-CellParametersID, + primaryCCPCH-Tx-Power INTEGER (-127..128) OPTIONAL, + uarfcn-nt ARFCN-ValueUTRA, + ... + } + } OPTIONAL, --Cond AtLeastOne + antenna-gain INTEGER (-127..128) OPTIONAL, + beam-width INTEGER (1..360) OPTIONAL, + transmit-direction INTEGER (0..360) OPTIONAL, + frequency-accuracy INTEGER (0..100) OPTIONAL, + ... +} + +OMA-LPPe-ECID-UTRA-RequestAssistanceData ::= SEQUENCE { + nBrequestedAD BIT STRING { bslist (0), + bslocation (1), + transmit-power (2), + antenna-gain (3), + beam-width (4), + transmit-direction (5), + frequency-accuracy (6), + non-serving (7) } (SIZE(1..16)) OPTIONAL, + hNBrequestedAD BIT STRING { bslist (0), + bslocation (1), + locationreliability (2), + transmit-power (3), + frequency-accuracy (4), + coveragearea (5), + non-serving (6) } (SIZE(1..16)) OPTIONAL, + ... +} + +OMA-LPPe-ECID-UTRA-ProvideLocationInformation ::= SEQUENCE { + ecid-UTRA-CombinedLocationInformation SEQUENCE (SIZE (1..maxECIDUTRASize)) + OF OMA-LPPe-ECID-UTRA-LocationInformationList OPTIONAL, + ecid-Error OMA-LPPe-ECID-UTRA-Error OPTIONAL, + ... +} + +OMA-LPPe-ECID-UTRA-LocationInformationList ::= SEQUENCE { + ecid-utra-LocationInformation OMA-LPPe-ECID-UTRA-LocationInformation, + relativeTimeStamp INTEGER (0..65535) OPTIONAL, + servingFlag BOOLEAN, + ... +} + +maxECIDUTRASize INTEGER ::= 64 + +OMA-LPPe-ECID-UTRA-LocationInformation ::= SEQUENCE { + cellGlobalIdUTRA CellGlobalIdEUTRA-AndUTRA, + frequencyInfo OMA-LPPe-UTRA-FrequencyInfo OPTIONAL, + primaryScramblingCode OMA-LPPe-OTDOA-UTRA-PrimaryScramblingCode OPTIONAL, --Cond FDD + measuredResultsList OMA-LPPe-ECID-UTRA-MeasuredResultsList OPTIONAL, + cellParametersId OMA-LPPe-OTDOA-UTRA-CellParametersID OPTIONAL, --Cond TDD + utratimingAdvance OMA-LPPe-ECID-UTRA-UTRATimingAdvance OPTIONAL, --Cond TDD + ... +} + +OMA-LPPe-ECID-UTRA-UTRATimingAdvance ::= SEQUENCE { + tA INTEGER (0..8191), + tAResolution OMA-LPPe-ECID-UTRA-TAResolution OPTIONAL, + chipRate OMA-LPPe-ECID-UTRA-ChipRate OPTIONAL, + ... +} + +OMA-LPPe-ECID-UTRA-TAResolution ::= ENUMERATED { + res1-0chip, + res0-5chip, + res0-125chip, + ... +} + +OMA-LPPe-ECID-UTRA-ChipRate ::= ENUMERATED { + tdd128, + tdd384, + tdd768, + ... +} + + +OMA-LPPe-UTRA-FrequencyInfo ::= SEQUENCE { + modeSpecificInfo OMA-LPPe-UTRA-ModeSpecificInfo, + ... +} + +OMA-LPPe-UTRA-ModeSpecificInfo ::= CHOICE { + fdd OMA-LPPe-UTRA-FrequencyInfoFDD, + tdd OMA-LPPe-UTRA-FrequencyInfoTDD, + ... +} + +OMA-LPPe-UTRA-FrequencyInfoFDD ::= SEQUENCE { + uarfcn-UL ARFCN-ValueUTRA OPTIONAL, + uarfcn-DL ARFCN-ValueUTRA, + ...} + +OMA-LPPe-UTRA-FrequencyInfoTDD ::= SEQUENCE { + uarfcn-Nt ARFCN-ValueUTRA, + ... +} + +OMA-LPPe-ECID-UTRA-MeasuredResultsList ::= SEQUENCE (SIZE (1..maxFreq)) OF + OMA-LPPe-ECID-UTRA-MeasuredResults + +OMA-LPPe-ECID-UTRA-MeasuredResults ::= SEQUENCE { + frequencyInfo OMA-LPPe-UTRA-FrequencyInfo, + utra-CarrierRSSI OMA-LPPe-ECID-UTRA-CarrierRSSI OPTIONAL, + cellMeasuredResultsList OMA-LPPe-ECID-UTRA-CellMeasuredResultsList OPTIONAL, + ... +} + +OMA-LPPe-ECID-UTRA-CellMeasuredResultsList ::= SEQUENCE (SIZE (1..utra-maxCellMeas)) OF + OMA-LPPe-ECID-UTRA-CellMeasuredResults + +OMA-LPPe-ECID-UTRA-CarrierRSSI ::= INTEGER(0..127) + +OMA-LPPe-ECID-UTRA-CellMeasuredResults ::= SEQUENCE { + cellIdentity BIT STRING (SIZE (32)) OPTIONAL, + modeSpecificInfo CHOICE + { + fdd + SEQUENCE { + primaryCPICH-Info OMA-LPPe-OTDOA-UTRA-PrimaryScramblingCode, + cpich-Ec-N0 OMA-LPPe-ECID-UTRA-CPICH-Ec-N0 OPTIONAL, + cpich-RSCP OMA-LPPe-ECID-UTRA-CPICH-RSCP OPTIONAL, + pathloss OMA-LPPe-ECID-UTRA-Pathloss OPTIONAL, + ... + }, + tdd + SEQUENCE { + cellParametersID OMA-LPPe-OTDOA-UTRA-CellParametersID, + primaryCCPCH-RSCP OMA-LPPe-ECID-UTRA-PrimaryCCPCH-RSCP OPTIONAL, + pathloss OMA-LPPe-ECID-UTRA-Pathloss OPTIONAL, + ... + } + }, + ... +} + +OMA-LPPe-ECID-UTRA-PrimaryCCPCH-RSCP ::= INTEGER(0..127) + +OMA-LPPe-ECID-UTRA-CPICH-Ec-N0 ::= INTEGER(0..63) + +OMA-LPPe-ECID-UTRA-CPICH-RSCP ::= INTEGER(0..127) + +OMA-LPPe-ECID-UTRA-Pathloss ::= INTEGER(46..173) + +maxFreq INTEGER ::= 8 + +OMA-LPPe-ECID-UTRA-RequestLocationInformation ::= SEQUENCE { + requestedMeasurements BIT STRING { measuredResultsList (0), + tdd-timingAdvance (1), + mRL-utra-CarrierRSSI (2), + mRL-FDD-cpich-Ec-N0 (3), + mRL-FDD-cpich-RSCP (4), + mRL-FDD-pathloss (5), + mRL-TDD-primaryCCPCH-RSCP (6), + mRL-TDD-pathloss (7), + non-serving (8), + historic (9) } (SIZE(1..16)), + ... +} + +OMA-LPPe-ECID-UTRA-ProvideCapabilities ::= SEQUENCE { + ecid-utra-MeasSupported BIT STRING { measuredResultsList (0), + tdd-timingAdvance (1), + mRL-utra-CarrierRSSI (2), + mRL-FDD-cpich-Ec-N0 (3), + mRL-FDD-cpich-RSCP (4), + mRL-FDD-pathloss (5), + mRL-TDD-primaryCCPCH-RSCP (6), + mRL-TDD-pathloss (7), + non-serving (8), + historic (9) } (SIZE(1..16)), + ecid-utra-nodeB-ADSupported BIT STRING { bslist (0), + bslocation (1), + transmit-power (2), + antenna-gain (3), + beam-width (4), + transmit-direction (5), + frequency-accuracy (6), + non-serving (7) } (SIZE(1..16)), + ecid-utra-HNB-ADSupported BIT STRING { bslist (0), + bslocation (1), + locationreliability (2), + transmit-power (3), + frequency-accuracy (4), + coveragearea (5), + non-serving (6) } (SIZE(1..16)), + ... +} + +OMA-LPPe-ECID-UTRA-RequestCapabilities ::= SEQUENCE { + ... +} + +OMA-LPPe-ECID-UTRA-Error ::= CHOICE { + locationServerErrorCauses OMA-LPPe-ECID-UTRA-LocationServerErrorCauses, + targetDeviceErrorCauses OMA-LPPe-ECID-UTRA-TargetDeviceErrorCauses, + ... +} + +OMA-LPPe-ECID-UTRA-LocationServerErrorCauses ::= SEQUENCE { + cause ENUMERATED { undefined, + requestedADNotAvailable, + notAllrequestedADAvailable, + ... + }, + nodeBMandatoryDataUnavailable NULL OPTIONAL, + nodeBLocationUnavailable NULL OPTIONAL, + nodeBcellTransmitPowerUnavailable NULL OPTIONAL, + nodeBcallAntennaGainUnavailable NULL OPTIONAL, + nodeBcellBeamWidthUnavailable NULL OPTIONAL, + nodeBcellTransmitDirectionUnavailable NULL OPTIONAL, + nodeBcellFrequencyAccuracyUnavailable NULL OPTIONAL, + nodeBnonservingADUnavailable NULL OPTIONAL, + hNBMandatoryDataUnavailable NULL OPTIONAL, + hNBLocationUnavailable NULL OPTIONAL, + hNBLocationReliabilityUnavailable NULL OPTIONAL, + hNBcellTransmitPowerUnavailable NULL OPTIONAL, + hNBcellFrequencyAccuracyUnavailable NULL OPTIONAL, + hNBCoverageAreaUnavailable NULL OPTIONAL, + hNBnonservingADUnavailable NULL OPTIONAL, + ... +} + +OMA-LPPe-ECID-UTRA-TargetDeviceErrorCauses ::= SEQUENCE { + cause ENUMERATED { undefined, + requestedMeasurementsNotAvailable, + notAllrequestedMeasurementsPossible, + ... + }, + mRLMeasurementsNotPossible NULL OPTIONAL, + tdd-timingAdvanceMeasurementNotPossible NULL OPTIONAL, + mRL-utra-CarrierRSSIMeasurementNotPossible NULL OPTIONAL, + mRL-FDD-cpich-Ec-N0MeasurementNotPossible NULL OPTIONAL, + mRL-FDD-cpich-RSCPMeasurementNotPossible NULL OPTIONAL, + mRL-FDD-pathlossMeasurementNotPossible NULL OPTIONAL, + mRL-TDD-primaryCCPCH-RSCPMeasurementNotPossible NULL OPTIONAL, + mRL-TDD-pathlossMeasurementNotPossible NULL OPTIONAL, + non-servingMeasurementsNotAvailable NULL OPTIONAL, + historicMeasurementsNotAvailable NULL OPTIONAL, + ... +} + +OMA-LPPe-WLAN-AP-ProvideAssistanceData ::= SEQUENCE { + wlan-DataSet SEQUENCE (SIZE (1..maxWLANDataSets)) OF OMA-LPPe-WLAN-DataSet OPTIONAL, + wlan-AP-Error OMA-LPPe-WLAN-AP-Error OPTIONAL, + ... +} + +maxWLANDataSets INTEGER ::= 8 + +OMA-LPPe-WLAN-DataSet ::= SEQUENCE { + plmn-Identity SEQUENCE { + mcc SEQUENCE (SIZE (3)) OF INTEGER (0..9), + mnc SEQUENCE (SIZE (2..3)) OF INTEGER (0 ..9) + } OPTIONAL, + reference-point OMA-LPPe-ReferencePoint OPTIONAL, --Cond APlocations + supported-channels-11a Supported-Channels-11a OPTIONAL, + supported-channels-11bg Supported-Channels-11bg OPTIONAL, + wlan-ap-list SEQUENCE (SIZE (1..maxWLANAPs)) OF OMA-LPPe-WLAN-AP-Data, + ... +} + +maxWLANAPs INTEGER ::= 128 + +Supported-Channels-11a ::= SEQUENCE { + ch34 BOOLEAN, + ch36 BOOLEAN, + ch38 BOOLEAN, + ch40 BOOLEAN, + ch42 BOOLEAN, + ch44 BOOLEAN, + ch46 BOOLEAN, + ch48 BOOLEAN, + ch52 BOOLEAN, + ch56 BOOLEAN, + ch60 BOOLEAN, + ch64 BOOLEAN, + ch149 BOOLEAN, + ch153 BOOLEAN, + ch157 BOOLEAN, + ch161 BOOLEAN +} + +Supported-Channels-11bg ::= SEQUENCE { + ch1 BOOLEAN, + ch2 BOOLEAN, + ch3 BOOLEAN, + ch4 BOOLEAN, + ch5 BOOLEAN, + ch6 BOOLEAN, + ch7 BOOLEAN, + ch8 BOOLEAN, + ch9 BOOLEAN, + ch10 BOOLEAN, + ch11 BOOLEAN, + ch12 BOOLEAN, + ch13 BOOLEAN, + ch14 BOOLEAN +} + +OMA-LPPe-WLAN-AP-Data ::= SEQUENCE { + wlan-ap-id OMA-LPPe-WLAN-AP-ID, + relative-location OMA-LPPe-RelativeLocation OPTIONAL, + location-reliability INTEGER (1..100) OPTIONAL, + wlan-ap-Type-Data SEQUENCE (SIZE (1..maxWLANTypes)) OF OMA-LPPe-WLAN-AP-Type-Data, + coverageArea OMA-LPPe-WLANFemtoCoverageArea OPTIONAL, --Cond oneonly + ... +} + +maxWLANTypes INTEGER ::= 5 + +OMA-LPPe-WLAN-AP-Type-Data ::= SEQUENCE { + wlan-AP-Type OMA-LPPe-WLAN-AP-Type, + transmit-power INTEGER (-127..128) OPTIONAL, + antenna-gain INTEGER (-127..128) OPTIONAL, + coverageArea OMA-LPPe-WLANFemtoCoverageArea OPTIONAL, --Cond oneonly + ... +} + +OMA-LPPe-WLAN-AP-RequestAssistanceData ::= SEQUENCE { + requestedAD BIT STRING { aplist (0), + aplocation (1), + locationreliability (2), + transmit-power (3), + antenna-gain (4), + coveragearea (5), + non-serving (6) } (SIZE(1..16)), + requestedAPTypes OMA-LPPe-WLAN-AP-Type-List, + ... +} + +OMA-LPPe-WLAN-AP-ProvideLocationInformation ::= SEQUENCE { + wlan-AP-CombinedLocationInformation SEQUENCE (SIZE (1..maxWLANAPSize)) OF + OMA-LPPe-WLAN-AP-LocationInformationList OPTIONAL, + wlan-AP-Error OMA-LPPe-WLAN-AP-Error OPTIONAL, + ... +} + +OMA-LPPe-WLAN-AP-LocationInformationList ::= SEQUENCE { + wlan-AP-LocationInformation OMA-LPPe-WLAN-AP-LocationInformation, + relativeTimeStamp INTEGER (0..65535) OPTIONAL, + servingFlag BOOLEAN, + ... +} + +maxWLANAPSize INTEGER ::= 64 + +OMA-LPPe-WLAN-AP-LocationInformation ::= SEQUENCE { + apMACAddress OMA-LPPe-WLAN-AP-ID, + apSSID OCTET STRING (SIZE (1..32)) OPTIONAL, + apSignaltoNoise INTEGER(-127..128) OPTIONAL, + apDeviceType OMA-LPPe-WLAN-AP-Type OPTIONAL, + apPHYtype OMA-LPPe-WLAN-AP-PHY-Type OPTIONAL, + apSignalStrength INTEGER(-127..128) OPTIONAL, + apChannelFrequency INTEGER(0..256) OPTIONAL, + apRoundTripDelay OMA-LPPe-WLAN-RTD OPTIONAL, + ueTransmitPower INTEGER(-127..128) OPTIONAL, + ueAntennaGain INTEGER (-127..128) OPTIONAL, + apReportedLocation OMA-LPPe-WLAN-ReportedLocation OPTIONAL, + ... +} + +OMA-LPPe-WLAN-AP-PHY-Type ::= ENUMERATED { unknown, any, fhss, dsss, irbaseband, ofdm, hrdsss, erp, + ht, ihv, ... } + +OMA-LPPe-WLAN-RTD ::= SEQUENCE { + rTDValue INTEGER(0..16777215), + rTDUnits OMA-LPPe-WLAN-RTDUnits, + rTDAccuracy INTEGER(0..255) OPTIONAL, + ... +} + +OMA-LPPe-WLAN-RTDUnits ::= ENUMERATED { + microseconds, + hundredsofnanoseconds, + tensofnanoseconds, + nanoseconds, + tenthsofnanoseconds, + ... +} + +OMA-LPPe-WLAN-ReportedLocation ::= SEQUENCE { + + locationDataLCI OMA-LPPe-WLAN-LocationDataLCI OPTIONAL, + ... +} + + +OMA-LPPe-WLAN-LocationDataLCI ::= SEQUENCE { + latitudeResolution BIT STRING (SIZE (6)), + latitude BIT STRING (SIZE (34)), + longitudeResolution BIT STRING (SIZE (6)), + longitude BIT STRING (SIZE (34)), + altitudeType BIT STRING (SIZE (4)), + altitudeResolution BIT STRING (SIZE (6)), + altitude BIT STRING (SIZE (30)), + datum BIT STRING (SIZE (8)), + ... +} + +OMA-LPPe-WLAN-AP-RequestLocationInformation ::= SEQUENCE { + requestedMeasurements BIT STRING { + apSSID (0), + apSN (1), + apDevType (2), + apPhyType (3), + apRSSI (4), + apChanFreq (5), + apRTD (6), + ueTP (7), + ueAG (8), + apRepLoc (9), + non-serving (10), + historic (11) } (SIZE(1..16)), + ... +} + +OMA-LPPe-WLAN-AP-ProvideCapabilities ::= SEQUENCE { + wlan-ecid-MeasSupported BIT STRING { + apSSID (0), + apSN (1), + apDevType (2), + apPhyType (3), + apRSSI (4), + apChanFreq (5), + apRTD (6), + ueTP (7), + ueAG (8), + apRepLoc (9), + non-serving (10), + historic (11) } (SIZE(1..16)), + wlan-types-Supported OMA-LPPe-WLAN-AP-Type-List OPTIONAL, + ap-Capability OMA-LPPe-WLAN-AP-Capability OPTIONAL, + wlan-ap-ADSupported BIT STRING {aplist (0), + aplocation (1), + locationreliability (2), + transmit-power (3), + antenna-gain (4), + coveragearea (5), + non-serving (6) } (SIZE(1..16)), + ... +} + +OMA-LPPe-WLAN-AP-Capability ::= SEQUENCE { + apMACAddress OMA-LPPe-WLAN-AP-ID, + apTypes OMA-LPPe-WLAN-AP-Type-List, + ... +} + +OMA-LPPe-WLAN-AP-RequestCapabilities ::= SEQUENCE { + ... +} + +OMA-LPPe-WLAN-AP-Error ::= CHOICE { + locationServerErrorCauses OMA-LPPe-WLAN-AP-LocationServerErrorCauses, + targetDeviceErrorCauses OMA-LPPe-WLAN-AP-TargetDeviceErrorCauses, + ... +} + +OMA-LPPe-WLAN-AP-LocationServerErrorCauses ::= SEQUENCE { + cause ENUMERATED {undefined, + requestedADNotAvailable, + notAllrequestedADAvailable, + ... + }, + apMandatoryDataUnavailable NULL OPTIONAL, + apLocationsUnavailable NULL OPTIONAL, + apLocationReliabilityUnavailable NULL OPTIONAL, + apTransmitPowerUnavailable NULL OPTIONAL, + apAntennaGainUnavailable NULL OPTIONAL, + apCoverageAreaUnavailable NULL OPTIONAL, + nonservingADUnavailable NULL OPTIONAL, + ... +} + +OMA-LPPe-WLAN-AP-TargetDeviceErrorCauses ::= SEQUENCE { + cause ENUMERATED {undefined, + requestedMeasurementsNotAvailable, + notAllrequestedMeasurementsPossible, + ... + }, + apSSIDnotAvailable NULL OPTIONAL, + apSNMeasurementNotPossible NULL OPTIONAL, + apDevTypeNotAvailable NULL OPTIONAL, + apPhyTypeNotAvailable NULL OPTIONAL, + apRSSIMeasurementNotPossible NULL OPTIONAL, + apChanFreqNotAvailable NULL OPTIONAL, + apRTDMeasurementNotPossible NULL OPTIONAL, + ueTPNotAvailable NULL OPTIONAL, + ueAGNotAvailable NULL OPTIONAL, + apRecLocNotAvailable NULL OPTIONAL, + non-servingMeasurementsNotAvailable NULL OPTIONAL, + historicMeasurementsNotAvailable NULL OPTIONAL, + ... +} + +OMA-LPPe-ECID-WiMax-ProvideLocationInformation ::= SEQUENCE { + ecid-wimax-CombinedLocationInformation SEQUENCE (SIZE (1..maxWiMaxECIDSize)) OF + OMA-LPPe-ECID-WiMax-LocationInformationList OPTIONAL, + ecid-wimax-Error OMA-LPPe-ECID-WiMax-Error OPTIONAL, + ... +} + +OMA-LPPe-ECID-WiMax-LocationInformationList ::= SEQUENCE { + ecid-wimax-LocationInformation OMA-LPPe-ECID-WiMax-LocationInformation, + relativeTimeStamp INTEGER (0..65535) OPTIONAL, + servingFlag BOOLEAN, + ... +} + +maxWiMaxECIDSize INTEGER ::= 1264 + +OMA-LPPe-ECID-WiMax-LocationInformation ::= SEQUENCE { + wimaxBsID OMA-LPPe-ECID-WiMax-WimaxBsID, + wimaxRTD OMA-LPPe-ECID-WiMax-WimaxRTD OPTIONAL, + wimaxNMRList OMA-LPPe-ECID-WiMax-WimaxNMRList OPTIONAL, + ... +} + +OMA-LPPe-ECID-WiMax-WimaxBsID ::= SEQUENCE { + bsID-MSB BIT STRING (SIZE(24)) OPTIONAL, + bsID-LSB BIT STRING (SIZE(24)), + ... +} + +OMA-LPPe-ECID-WiMax-WimaxRTD ::= SEQUENCE { + rTD INTEGER (0..65535), + rTDstd INTEGER (0..1023) OPTIONAL, + ... +} + +OMA-LPPe-ECID-WiMax-WimaxNMRList ::= SEQUENCE (SIZE (1..maxWimaxBSMeas)) OF + OMA-LPPe-ECID-WiMax-WimaxNMR + +OMA-LPPe-ECID-WiMax-WimaxNMR ::= SEQUENCE { + wimaxBsID OMA-LPPe-ECID-WiMax-WimaxBsID, + relDelay INTEGER (-32768..32767) OPTIONAL, + relDelaystd INTEGER (0..1023) OPTIONAL, + rSSI INTEGER (0..255) OPTIONAL, + rSSIstd INTEGER (0..63) OPTIONAL, + bSTxPower INTEGER (0..255) OPTIONAL, + cINR INTEGER (0..255) OPTIONAL, + cINRstd INTEGER (0..63) OPTIONAL, + bSLocation OMA-LPPe-WLAN-ReportedLocation OPTIONAL, + ... +} + +maxWimaxBSMeas INTEGER ::= 32 + +OMA-LPPe-ECID-WiMax-RequestLocationInformation ::= SEQUENCE { + requestedMeasurements BIT STRING { rTD (0), + rTDstd (1), + nMR (2), + nMRrelDelay (3), + nMRrelDelaystd (4), + nMRrSSI (5), + nMRrSSIstd (6), + nMRbSTxPower (7), + nMRcINR (8), + nMRcINRstd (9), + nMRbSLocation (10), + non-serving (11), + historic (12) } (SIZE(1..16)), + ... +} + +OMA-LPPe-ECID-WiMax-ProvideCapabilities ::= SEQUENCE { + ecid-wimax-MeasSupported BIT STRING { rTD (0), + rTDstd (1), + nMR (2), + nMRrelDelay (3), + nMRrelDelaystd (4), + nMRrSSI (5), + nMRrSSIstd (6), + nMRbSTxPower (7), + nMRcINR (8), + nMRcINRstd (9), + nMRbSLocation (10), + non-serving (11), + historic (12) } (SIZE(1..16)), + ... +} + +OMA-LPPe-ECID-WiMax-RequestCapabilities ::= SEQUENCE { + ... +} + +OMA-LPPe-ECID-WiMax-Error ::= CHOICE { + locationServerErrorCauses OMA-LPPe-ECID-WiMax-LocationServerErrorCauses, + targetDeviceErrorCauses OMA-LPPe-ECID-WiMax-TargetDeviceErrorCauses, + ... +} + +OMA-LPPe-ECID-WiMax-LocationServerErrorCauses ::= SEQUENCE { + cause ENUMERATED {undefined, + ... + }, + ... +} + +OMA-LPPe-ECID-WiMax-TargetDeviceErrorCauses ::= SEQUENCE { + cause ENUMERATED { undefined, + requestedMeasurementsNotAvailable, + notAllrequestedMeasurementsPossible, + ... + }, + rTDMeasurementNotPossible NULL OPTIONAL, + rTDstdMeasurementNotPossible NULL OPTIONAL, + nMRMeasurementNotPossible NULL OPTIONAL, + nMRrelDelayMeasurementNotPossible NULL OPTIONAL, + nMRrelDelaystdMeasurementNotPossible NULL OPTIONAL, + nMRrSSIMeasurementNotPossible NULL OPTIONAL, + nMRrSSIstdMeasurementNotPossible NULL OPTIONAL, + nMRbSTxPowerMeasurementNotPossible NULL OPTIONAL, + nMRcINRMeasurementNotPossible NULL OPTIONAL, + nMRcINRstdMeasurementNotPossible NULL OPTIONAL, + nMRbSLocationNotAvailable NULL OPTIONAL, + non-servingMeasurementsNotAvailable NULL OPTIONAL, + historicMeasurementsNotAvailable NULL OPTIONAL, + ... +} + +OMA-LPPe-Sensor-ProvideAssistanceData ::= SEQUENCE { + ... +} + +OMA-LPPe-Sensor-RequestAssistanceData ::= SEQUENCE { + ... +} + +OMA-LPPe-Sensor-ProvideLocationInformation ::= SEQUENCE { + motionStateList OMA-LPPe-Sensor-MotionStateList OPTIONAL, + sensorError OMA-LPPe-Sensor-Error OPTIONAL, + ... +} + +OMA-LPPe-Sensor-MotionStateList ::= SEQUENCE (SIZE(1..8)) OF OMA-LPPe-Sensor-MotionStateElement + +OMA-LPPe-Sensor-MotionStateElement ::= SEQUENCE { + primaryMotionState ENUMERATED{ + unknown, + stationary, + pedestrian, + running, + cycling, + car, + train, + aeroplane, + boat, + fidgeting, + ... + }, + confidence INTEGER(0..99), + secondaryMotionState BIT STRING { + stationary (0), + pedestrian (1), + running (2), + cycling (3), + car (4), + train (5), + aeroplane (6), + boat (7), + fidgeting (8) } (SIZE(1..16)) OPTIONAL, + ... +} + +OMA-LPPe-Sensor-RequestLocationInformation ::= SEQUENCE { + motionStateReq OMA-LPPe-Sensor-MotionStateRequest OPTIONAL, --Cond MotionSateReq + ... +} + +OMA-LPPe-Sensor-MotionStateRequest ::= SEQUENCE { + secondaryMotionStateRequest NULL OPTIONAL, + ... +} + +OMA-LPPe-Sensor-ProvideCapabilities ::= SEQUENCE { + motionStateSupport NULL OPTIONAL, --Cond MotionStateSupport + secondarySupport NULL OPTIONAL, --Cond SecondarySupport + ... +} + +OMA-LPPe-Sensor-RequestCapabilities ::= SEQUENCE { + ... +} + +OMA-LPPe-Sensor-Error ::= CHOICE { + targetError OMA-LPPe-Sensor-TargetError, + ... +} + +OMA-LPPe-Sensor-TargetError ::= SEQUENCE { + motionStateError ENUMERATED { primaryMotionStateNotAvailable, + primaryMotionStateNotSupported, + ... } OPTIONAL, + secondaryMotionStateError ENUMERATED { secondaryMotionStateNotAvailable, + secondaryMotionStateNotSupported, + ... } OPTIONAL, + ... +} + +OMA-LPPe-SRN-ProvideAssistanceData ::= SEQUENCE { + srnGroup CHOICE { + srnGroupList OMA-LPPe-SRN-SRNgroupList, + srnGroupUpdateResponse OMA-LPPe-SRN-SRNgroupUpdateResponse, + ... + } OPTIONAL, + antennaPattern OMA-LPPe-SRN-AntennaPattern OPTIONAL, --Cond AntennaPattReq + srnError OMA-LPPe-SRN-Error OPTIONAL, + ... +} + +OMA-LPPe-SRN-SRNgroupList ::= SEQUENCE { + incompleteFlag BOOLEAN, + defaultReferencePoint OMA-LPPe-ReferencePoint OPTIONAL, --Cond IfNoRefPoint + groupList SEQUENCE (SIZE (1..64)) OF OMA-LPPe-SRN-SRNgroup, + ... + } + +OMA-LPPe-SRN-SRNgroup ::= SEQUENCE { + srnGroupID OMA-LPPe-SRN-SRNgroupUniqueID OPTIONAL, + defaultSRNtype OMA-LPPe-SRN-SRNtype OPTIONAL, + referencePoint OMA-LPPe-ReferencePoint OPTIONAL, + globalOrientation NULL OPTIONAL, + srnsInGroupList SEQUENCE (SIZE (1..1024)) OF OMA-LPPe-SRN-SRNinfo, + ... +} + +OMA-LPPe-SRN-SRNinfo ::= SEQUENCE { + srnID OMA-LPPe-SRN-SRNid, + srnType OMA-LPPe-SRN-SRNtype OPTIONAL, --Cond NotDefaultType + relativePosition OMA-LPPe-RelativeLocation, + orientation OMA-LPPe-Orientation OPTIONAL, + ... +} + +OMA-LPPe-SRN-SRNgroupUpdateResponse ::= SEQUENCE (SIZE (1..8)) OF + OMA-LPPe-SRN-SRNgroupUpdateResponseElement + +OMA-LPPe-SRN-SRNgroupUpdateResponseElement ::= SEQUENCE { + srnGroupID OMA-LPPe-SRN-SRNgroupUniqueID OPTIONAL, + targetDataValidity ENUMERATED{ targetDataValid, + targetDataInValidAndUpdatedDataWillBeProvided, + targetDataInValidButServerWillNotProvideNewData, + ...}, + updatedSRNgroup OMA-LPPe-SRN-SRNgroup OPTIONAL, --Cond InvalidAndNewDataAvailable + ... +} + +OMA-LPPe-SRN-AntennaPattern ::= SEQUENCE (SIZE (1..8)) OF OMA-LPPe-SRN-AntennaPatternElement + +OMA-LPPe-SRN-AntennaPatternElement::= SEQUENCE { + identification SEQUENCE { + vendorOrOperator OMA-LPPe-VendorOrOperatorID, + antennaPatternID INTEGER(0..65535), + ... + }, + antennaData CHOICE { + antennaPattern OMA-LPPe-SRN-AntennaPatternForChannels, + antennaContainer OCTET STRING, + ... + }, + ... +} + +OMA-LPPe-SRN-AntennaPatternForChannels ::= SEQUENCE { + evenGrid SEQUENCE { + inAzimuth INTEGER(1..200), + inElevation INTEGER(1..150) + } OPTIONAL, --Cond EvenGrid + patternList SEQUENCE (SIZE (1..maxChannels)) OF OMA-LPPe-SRN-ChannelResponse, + ... +} + +OMA-LPPe-SRN-ChannelResponse ::= SEQUENCE { + channelNumber INTEGER(1..maxChannels), + responseInElevation SEQUENCE (SIZE (7..901)) OF OMA-LPPe-SRN-ResponseInElevation, + ... +} + +OMA-LPPe-SRN-ResponseInElevation ::= SEQUENCE { + elevation INTEGER(0..900) OPTIONAL, --Cond NotEven + responseInAzimuth SEQUENCE (SIZE (18..3601)) OF OMA-LPPe-SRN-ResponseInAzimuth, + ... +} + +OMA-LPPe-SRN-ResponseInAzimuth::= SEQUENCE { + azimuth INTEGER(0..3599) OPTIONAL, --Cond NotEven + response OMA-LPPe-ComplexNumber, + ... + } + +OMA-LPPe-ComplexNumber ::= SEQUENCE { + amplitude INTEGER(0..1000), + phase INTEGER(-1800..1799) +} + +maxChannels INTEGER ::= 512 + +OMA-LPPe-SRN-RequestAssistanceData ::= SEQUENCE { + srnGroup CHOICE { + srnGroupRequest OMA-LPPe-SRN-SRNgroupRequest, + srnGroupUpdateRequest OMA-LPPe-SRN-SRNgroupUpdateRequest, + ... + } OPTIONAL, + antennaPatternRequest OMA-LPPe-SRN-AntennaPatternRequest OPTIONAL, + ... +} + +OMA-LPPe-SRN-SRNgroupRequest ::= SEQUENCE { + doNotProvideList OMA-LPPe-SRN-SRNProvideList OPTIONAL, + doProvideList OMA-LPPe-SRN-SRNProvideList OPTIONAL, + ... +} + +OMA-LPPe-SRN-SRNProvideList ::= SEQUENCE { + groupList SEQUENCE (SIZE (1..256)) OF OMA-LPPe-SRN-SRNgroupUniqueID OPTIONAL, + categoryList SEQUENCE (SIZE (1..16)) OF OMA-LPPe-SRN-Category OPTIONAL, + ... +} + +OMA-LPPe-SRN-SRNgroupUpdateRequest ::= SEQUENCE (SIZE (1..64)) OF + OMA-LPPe-SRN-SRNgroupUpdateRequestElement + +OMA-LPPe-SRN-SRNgroupUpdateRequestElement ::= SEQUENCE { + srnGroupID OMA-LPPe-SRN-SRNgroupUniqueID, + provideIndicationOnly NULL OPTIONAL, + inTheGroup SEQUENCE (SIZE (1..1024)) OF OMA-LPPe-SRN-SRNid OPTIONAL, + ... +} + +OMA-LPPe-SRN-AntennaPatternRequest ::= SEQUENCE (SIZE (1..8)) OF + OMA-LPPe-SRN-AntennaPatternRequestElement + +OMA-LPPe-SRN-AntennaPatternRequestElement ::= SEQUENCE { + antennaPatternID SEQUENCE { + vendorOrOperator OMA-LPPe-VendorOrOperatorID, + antennaPatternID INTEGER(0..65535), + ... + }, + ... +} + +OMA-LPPe-SRN-ProvideLocationInformation ::= SEQUENCE { + srnMeasurementList SEQUENCE (SIZE (1..64)) OF OMA-LPPe-SRN-MeasurementElement OPTIONAL, + srnError OMA-LPPe-SRN-Error OPTIONAL, + ... +} + +OMA-LPPe-SRN-MeasurementElement ::= SEQUENCE { + srnID OMA-LPPe-SRN-SRNid, + srnCategory OMA-LPPe-SRN-Category OPTIONAL, --Cond IfKnown + srnGroupID OMA-LPPe-SRN-SRNgroupUniqueID OPTIONAL, --Cond IfKnown + measurementList SEQUENCE (SIZE (1..64)) OF OMA-LPPe-SRN-srnMeasurementElement OPTIONAL, + ... +} + +OMA-LPPe-SRN-srnMeasurementElement ::= SEQUENCE { + relativeTimeStamp INTEGER(0..1000) OPTIONAL, --Cond IfNotFirst + rssi INTEGER(-128..127) OPTIONAL, + rtd OMA-LPPe-WLAN-RTD OPTIONAL, + ... +} + +OMA-LPPe-SRN-RequestLocationInformation ::= SEQUENCE { + requestInfo SEQUENCE (SIZE (1..16)) OF OMA-LPPe-SRN-ReqLocInfo-Category, + ... +} + +OMA-LPPe-SRN-ReqLocInfo-Category ::= SEQUENCE { + category OMA-LPPe-SRN-Category, + multipleMeasurements ENUMERATED{ forbidden(0), + allowed(1), + requested(2), ... } OPTIONAL, + allowedMeasurements OMA-LPPe-SRN-MeasurementMask OPTIONAL, + historicMeasurementsRequested NULL OPTIONAL, + ... +} + +OMA-LPPe-SRN-ProvideCapabilities ::= SEQUENCE { + capabilitiesPerSRNCategory SEQUENCE (SIZE (1..16)) OF + OMA-LPPe-SRN-ProvideCapabilitiesElement OPTIONAL, + ... +} + +OMA-LPPe-SRN-ProvideCapabilitiesElement::= SEQUENCE { + srnCategory OMA-LPPe-SRN-Category, + supportedMeasurements OMA-LPPe-SRN-MeasurementMask OPTIONAL, + supportedAssistanceData BIT STRING { + srnGroup (0), + antennaPattern (1) } (SIZE(1..16)), + historicMeasurementsSupported NULL OPTIONAL, + ... +} + +OMA-LPPe-SRN-RequestCapabilities ::= SEQUENCE { + capabilitiesRequestedFor SEQUENCE (SIZE (1..16)) OF OMA-LPPe-SRN-Category OPTIONAL, + ... +} + +OMA-LPPe-SRN-Error ::= CHOICE { + srnLocationServerErrorCauses OMA-LPPe-SRN-LocationServerErrorCauses, + srnTargetDeviceErrorCauses OMA-LPPe-SRN-TargetDeviceErrorCauses, + ... +} + +OMA-LPPe-SRN-LocationServerErrorCauses ::= SEQUENCE { + groupErrors ENUMERATED{ undefined, + someGroupOrCategoryOrSRNidUnknownOrUnsupported, + allGroupAndCategoryOrSRNidUnknownOrUnsupported, + noSRNgroupsNearby, + ...} OPTIONAL, + groupUpdateErrors ENUMERATED { undefined, + allSRNgroupIDsUnknown, + allSRNgroupIDsknownButSomeSRNgroupVersionsUnknown, + allSRNgroupIDsknownAndAllSRNgroupVersionsUnknown, + someSRNgroupIDsUnknown, + someSRNgroupVersionsUnknownAndAllSRNGroupVersionsUnknown, + someSRNgroupIDsAndSomeSRNgroupVersionsUnknown, + inTheGroupInformationDoesNotMatchWithGroupID, + ...} OPTIONAL, + srnAntennaErrors ENUMERATED { undefined, + someAntennaPatternIDsUnknown, + allAntennaPatternIDsUnknown, + ... } OPTIONAL, + ... +} + +OMA-LPPe-SRN-TargetDeviceErrorCauses ::= SEQUENCE { + srnErrorsPerCategory SEQUENCE (SIZE (1..16)) OF OMA-LPPe-SRN-TargetDeviceError, + ... +} + +OMA-LPPe-SRN-TargetDeviceError ::= SEQUENCE { + category OMA-LPPe-SRN-Category, + srnErrors ENUMERATED{ undefined, + requestedMeasurementsNotAvailable, + notAllrequestedMeasurementsPossible, + categoryNotSupported, + ...}, + rssiNotAvailable NULL OPTIONAL, + rtdNotAvailable NULL OPTIONAL, + multipleSetsNotAvailable NULL OPTIONAL, + historicMeasurementsNotAvailable NULL OPTIONAL, + ... +} + +OMA-LPPe-SRN-SRNgroupUniqueID ::= SEQUENCE { + providerID OMA-LPPe-VendorOrOperatorID, + providerAssignedID OCTET STRING, + srnDataVersion INTEGER (0..4294967295) OPTIONAL, + ... +} + +OMA-LPPe-SRN-SRNtype ::= SEQUENCE { + srnCategory OMA-LPPe-SRN-Category, + srnERP INTEGER(-300..500) OPTIONAL, + srnAntennaInfo SEQUENCE { + antennaPatternID INTEGER(0..65535), + switchingPatternID INTEGER(0..65535) OPTIONAL, + ... + } OPTIONAL, + ... +} + +OMA-LPPe-SRN-Category ::= SEQUENCE { + srnTechnologyType OMA-LPPe-SRN-Technologies, + srnVendorInformation SEQUENCE { + vendor OMA-LPPe-VendorOrOperatorID, + vendorInfo OCTET STRING OPTIONAL, + ... + } OPTIONAL, --Cond other + ... +} + +OMA-LPPe-SRN-SRNid ::= SEQUENCE { + srn-id CHOICE { + mac BIT STRING(SIZE(48)), + nfc SEQUENCE { + manufacturer BIT STRING(SIZE(8)), + uniqueNumber BIT STRING(SIZE(48)), + ... + }, + mobileCode SEQUENCE { + registryID BIT STRING(SIZE(12)), + remainingPart OCTET STRING(SIZE(1..1 )), + resolutionIdentifier OCTET STRING(SIZE(1..18)), + ... + }, + other OCTET STRING, + ... + }, + ... +} + +OMA-LPPe-SRN-Technologies ::= SEQUENCE { + srnTechnologies ENUMERATED{ bt, btle, nfc, mobileCode, other, ... }, + ... +} + +OMA-LPPe-SRN-MeasurementMask ::= SEQUENCE { + srnMeasurements BIT STRING { rssi(0), + rtd (1) } (SIZE(1..16)), + ... +} + +END + diff --git a/asn1/lppe/Makefile.am b/asn1/lppe/Makefile.am new file mode 100644 index 0000000000..d357a4d4df --- /dev/null +++ b/asn1/lppe/Makefile.am @@ -0,0 +1,26 @@ +# $Id$ +# +# +# Wireshark - Network traffic analyzer +# By Gerald Combs <gerald@wireshark.org> +# Copyright 1998 Gerald Combs +# +# This program is free software; you can redistribute it and/or +# modify it under the terms of the GNU General Public License +# as published by the Free Software Foundation; either version 2 +# of the License, or (at your option) any later version. +# +# This program is distributed in the hope that it will be useful, +# but WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +# GNU General Public License for more details. +# +# You should have received a copy of the GNU General Public License +# along with this program; if not, write to the Free Software +# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA. + + +include ../Makefile.preinc +include Makefile.common +include ../Makefile.inc + diff --git a/asn1/lppe/Makefile.common b/asn1/lppe/Makefile.common new file mode 100644 index 0000000000..f1b587440a --- /dev/null +++ b/asn1/lppe/Makefile.common @@ -0,0 +1,47 @@ +# $Id$ +# +# +# Wireshark - Network traffic analyzer +# By Gerald Combs <gerald@wireshark.org> +# Copyright 1998 Gerald Combs +# +# This program is free software; you can redistribute it and/or +# modify it under the terms of the GNU General Public License +# as published by the Free Software Foundation; either version 2 +# of the License, or (at your option) any later version. +# +# This program is distributed in the hope that it will be useful, +# but WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +# GNU General Public License for more details. +# +# You should have received a copy of the GNU General Public License +# along with this program; if not, write to the Free Software +# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA. + + +PROTOCOL_NAME = lppe + +EXT_ASN_FILE_LIST = + +ASN_FILE_LIST = \ + LPPe.asn + +EXTRA_DIST = \ + Makefile.nmake \ + $(ASN_FILE_LIST) \ + packet-$(PROTOCOL_NAME)-template.c \ + $(PROTOCOL_NAME).cnf + +SRC_FILES = \ + $(EXTRA_DIST) \ + $(EXT_ASN_FILE_LIST) + +A2W_FLAGS = + +EXTRA_CNF = \ + $(builddir)/../lpp/lpp-exp.cnf + +$(builddir)/../lpp/lpp-exp.cnf: + (cd $(builddir)/../lpp && $(MAKE_CNF_EXPORT)) + diff --git a/asn1/lppe/Makefile.nmake b/asn1/lppe/Makefile.nmake new file mode 100644 index 0000000000..25f75f5105 --- /dev/null +++ b/asn1/lppe/Makefile.nmake @@ -0,0 +1,29 @@ +## Use: $(MAKE) /$(MAKEFLAGS) -f makefile.nmake +# +# $Id$ +# +# +# Wireshark - Network traffic analyzer +# By Gerald Combs <gerald@wireshark.org> +# Copyright 1998 Gerald Combs +# +# This program is free software; you can redistribute it and/or +# modify it under the terms of the GNU General Public License +# as published by the Free Software Foundation; either version 2 +# of the License, or (at your option) any later version. +# +# This program is distributed in the hope that it will be useful, +# but WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +# GNU General Public License for more details. +# +# You should have received a copy of the GNU General Public License +# along with this program; if not, write to the Free Software +# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA. + + +include ../../config.nmake +include ../Makefile.preinc.nmake +include Makefile.common +include ../Makefile.inc.nmake + diff --git a/asn1/lppe/lppe.cnf b/asn1/lppe/lppe.cnf new file mode 100644 index 0000000000..0c0670c28b --- /dev/null +++ b/asn1/lppe/lppe.cnf @@ -0,0 +1,23 @@ +# lpp.cnf +# llp conformation file +# Copyright 2011 Pascal Quantin +# $Id$ + +#.OPT +PER +UNALIGNED +#.END + +#.IMPORT ../lpp/lpp-exp.cnf + +#.PDU_NEW +OMA-LPPe-MessageExtension +#.END + +#.FN_HDR OMA-LPPe-MessageExtension + + proto_tree_add_item(tree, proto_lppe, tvb, 0, -1, ENC_NA); + + col_append_sep_str(actx->pinfo->cinfo, COL_PROTOCOL, "/", "LPPe"); +#.END + diff --git a/asn1/lppe/packet-lppe-template.c b/asn1/lppe/packet-lppe-template.c new file mode 100644 index 0000000000..a129e593b3 --- /dev/null +++ b/asn1/lppe/packet-lppe-template.c @@ -0,0 +1,99 @@ +/* packet-lppe.c + * Routines for LPP Extensions (LLPe) packet dissection + * Copyright 2012, Pascal Quantin <pascal.quantin@gmail.com> + * + * $Id$ + * + * Wireshark - Network traffic analyzer + * By Gerald Combs <gerald@wireshark.org> + * Copyright 1998 Gerald Combs + * + * This program is free software; you can redistribute it and/or + * modify it under the terms of the GNU General Public License + * as published by the Free Software Foundation; either version 2 + * of the License, or (at your option) any later version. + * + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + * + * You should have received a copy of the GNU General Public License + * along with this program; if not, write to the Free Software + * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA. + * + * Ref Open Mobile Alliance OMA-TS-LPPe V1_0-20110929-C + */ + +#ifdef HAVE_CONFIG_H +# include "config.h" +#endif + +#include <glib.h> +#include <epan/packet.h> +#include <epan/asn1.h> + +#include "packet-per.h" +#include "packet-lpp.h" + +#define PNAME "LTE Positioning Protocol Extensions (LLPe)" +#define PSNAME "LPPe" +#define PFNAME "lppe" + +#ifdef _MSC_VER +/* disable: "warning C4146: unary minus operator applied to unsigned type, result still unsigned" */ +#pragma warning(disable:4146) +#endif + +/* Initialize the protocol and registered fields */ +static int proto_lppe = -1; + +#include "packet-lppe-hf.c" + +/* Initialize the subtree pointers */ +static gint ett_lppe = -1; +#include "packet-lppe-ett.c" + +/* Include constants */ +#include "packet-lppe-val.h" + + +#include "packet-lppe-fn.c" + + +/*--- proto_register_lpp -------------------------------------------*/ +void proto_register_lppe(void) { + + /* List of fields */ + static hf_register_info hf[] = { + +#include "packet-lppe-hfarr.c" + }; + + /* List of subtrees */ + static gint *ett[] = { + &ett_lppe, +#include "packet-lppe-ettarr.c" + }; + + + /* Register protocol */ + proto_lppe = proto_register_protocol(PNAME, PSNAME, PFNAME); + new_register_dissector("lppe", dissect_OMA_LPPe_MessageExtension_PDU, proto_lppe); + + /* Register fields and subtrees */ + proto_register_field_array(proto_lppe, hf, array_length(hf)); + proto_register_subtree_array(ett, array_length(ett)); + + +} + + +/*--- proto_reg_handoff_lpp ---------------------------------------*/ +void +proto_reg_handoff_lppe(void) +{ + +} + + diff --git a/configure.in b/configure.in index 490571bed2..3c533c3679 100644 --- a/configure.in +++ b/configure.in @@ -2063,6 +2063,7 @@ AC_OUTPUT( asn1/logotypecertextn/Makefile asn1/lpp/Makefile asn1/lppa/Makefile + asn1/lppe/Makefile asn1/lte-rrc/Makefile asn1/m3ap/Makefile asn1/mms/Makefile diff --git a/epan/CMakeLists.txt b/epan/CMakeLists.txt index cd9b84b834..0d581de47c 100644 --- a/epan/CMakeLists.txt +++ b/epan/CMakeLists.txt @@ -219,7 +219,9 @@ set(ASN1_DISSECTOR_SRC dissectors/packet-inap.c dissectors/packet-lcsap.c dissectors/packet-logotypecertextn.c + dissectors/packet-lpp.c dissectors/packet-lppa.c + dissectors/packet-lppe.c dissectors/packet-lte-rrc.c dissectors/packet-mms.c dissectors/packet-mpeg-audio.c @@ -268,7 +270,6 @@ set(DIRTY_ASN1_DISSECTOR_SRC dissectors/packet-gprscdr.c dissectors/packet-gsm_map.c dissectors/packet-ldap.c - dissectors/packet-lpp.c dissectors/packet-m3ap.c dissectors/packet-nbap.c dissectors/packet-p1.c diff --git a/epan/dissectors/Makefile.common b/epan/dissectors/Makefile.common index 761a57495a..eaa0dc90ef 100644 --- a/epan/dissectors/Makefile.common +++ b/epan/dissectors/Makefile.common @@ -133,7 +133,9 @@ ASN1_DISSECTOR_SRC = \ packet-inap.c \ packet-lcsap.c \ packet-logotypecertextn.c \ + packet-lpp.c \ packet-lppa.c \ + packet-lppe.c \ packet-lte-rrc.c \ packet-mms.c \ packet-mpeg-audio.c \ @@ -184,7 +186,6 @@ DIRTY_ASN1_DISSECTOR_SRC = \ packet-gprscdr.c \ packet-gsm_map.c \ packet-ldap.c \ - packet-lpp.c \ packet-m3ap.c \ packet-nbap.c \ packet-p1.c \ diff --git a/epan/dissectors/packet-lpp.c b/epan/dissectors/packet-lpp.c index 00b40c0252..4b162afd43 100644 --- a/epan/dissectors/packet-lpp.c +++ b/epan/dissectors/packet-lpp.c @@ -30,7 +30,7 @@ * along with this program; if not, write to the Free Software * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA. * - * Ref 3GPP TS 36.355 version 9.7.0 Release 9 + * Ref 3GPP TS 36.355 version 10.5.0 Release 10 * http://www.3gpp.org */ @@ -217,7 +217,7 @@ static int hf_lpp_horizontalVelocity = -1; /* BOOLEAN */ static int hf_lpp_horizontalWithVerticalVelocity = -1; /* BOOLEAN */ static int hf_lpp_horizontalVelocityWithUncertainty = -1; /* BOOLEAN */ static int hf_lpp_horizontalWithVerticalVelocityAndUncertainty = -1; /* BOOLEAN */ -static int hf_lpp_servingCellID = -1; /* ECGI */ +static int hf_lpp_primaryCellID = -1; /* ECGI */ static int hf_lpp_locationInformationType = -1; /* LocationInformationType */ static int hf_lpp_triggeredReporting = -1; /* TriggeredReportingCriteria */ static int hf_lpp_periodicalReporting = -1; /* PeriodicalReportingCriteria */ @@ -820,7 +820,7 @@ static int hf_lpp_sbas_IDs_01 = -1; /* T_sbas_IDs */ static int hf_lpp_satellite_id = -1; /* INTEGER_0_63 */ static int hf_lpp_ecid_SignalMeasurementInformation = -1; /* ECID_SignalMeasurementInformation */ static int hf_lpp_ecid_Error = -1; /* ECID_Error */ -static int hf_lpp_servingCellMeasuredResults = -1; /* MeasuredResultsElement */ +static int hf_lpp_primaryCellMeasuredResults = -1; /* MeasuredResultsElement */ static int hf_lpp_measuredResultsList = -1; /* MeasuredResultsList */ static int hf_lpp_MeasuredResultsList_item = -1; /* MeasuredResultsElement */ static int hf_lpp_arfcnEUTRA = -1; /* ARFCN_ValueEUTRA */ @@ -885,6 +885,10 @@ static int hf_lpp_T_ecid_MeasSupported_ueRxTxSup = -1; /*--- End of included file: packet-lpp-hf.c ---*/ #line 52 "../../asn1/lpp/packet-lpp-template.c" +static dissector_handle_t lppe_handle = NULL; + +static guint32 lpp_epdu_id = -1; + /* Initialize the subtree pointers */ static gint ett_lpp = -1; @@ -1184,7 +1188,7 @@ static gint ett_lpp_ECID_LocationServerErrorCauses = -1; static gint ett_lpp_ECID_TargetDeviceErrorCauses = -1; /*--- End of included file: packet-lpp-ett.c ---*/ -#line 56 "../../asn1/lpp/packet-lpp-template.c" +#line 60 "../../asn1/lpp/packet-lpp-template.c" /* Include constants */ @@ -1195,8 +1199,12 @@ static gint ett_lpp_ECID_TargetDeviceErrorCauses = -1; #define maxBands 64 /*--- End of included file: packet-lpp-val.h ---*/ -#line 59 "../../asn1/lpp/packet-lpp-template.c" +#line 63 "../../asn1/lpp/packet-lpp-template.c" +static const value_string lpp_ePDU_ID_vals[] = { + { 1, "OMA LPP extensions (LPPe)"}, + { 0, NULL} +}; /*--- Included file: packet-lpp-fn.c ---*/ @@ -1335,8 +1343,12 @@ dissect_lpp_ECID_RequestCapabilities(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx static int dissect_lpp_EPDU_ID(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +#line 88 "../../asn1/lpp/lpp.cnf" offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index, - 1U, 256U, NULL, FALSE); + 1U, 256U, &lpp_epdu_id, FALSE); + + + return offset; } @@ -1370,8 +1382,23 @@ dissect_lpp_EPDU_Identifier(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx static int dissect_lpp_EPDU_Body(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +#line 94 "../../asn1/lpp/lpp.cnf" + tvbuff_t *lppe_tvb = NULL; offset = dissect_per_octet_string(tvb, offset, actx, tree, hf_index, - NO_BOUND, NO_BOUND, FALSE, NULL); + NO_BOUND, NO_BOUND, FALSE, &lppe_tvb); + + switch(lpp_epdu_id){ + case 1: + if (lppe_tvb && lppe_handle) { + call_dissector(lppe_handle, lppe_tvb, actx->pinfo, tree); + } + break; + default: + break; + } + lpp_epdu_id = -1; + + return offset; } @@ -1501,7 +1528,7 @@ static const per_sequence_t RequestCapabilities_sequence[] = { static int dissect_lpp_RequestCapabilities(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { -#line 39 "../../asn1/lpp/lpp.cnf" +#line 56 "../../asn1/lpp/lpp.cnf" col_append_sep_str(actx->pinfo->cinfo, COL_INFO, NULL, "Request Capabilities"); @@ -1550,7 +1577,7 @@ static const per_sequence_t GNSS_ID_sequence[] = { { NULL, 0, 0, NULL } }; -static int +int dissect_lpp_GNSS_ID(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index, ett_lpp_GNSS_ID, GNSS_ID_sequence); @@ -1622,7 +1649,7 @@ static const per_sequence_t GNSS_SignalIDs_sequence[] = { { NULL, 0, 0, NULL } }; -static int +int dissect_lpp_GNSS_SignalIDs(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index, ett_lpp_GNSS_SignalIDs, GNSS_SignalIDs_sequence); @@ -1719,7 +1746,7 @@ static const per_sequence_t GNSS_ID_Bitmap_sequence[] = { { NULL, 0, 0, NULL } }; -static int +int dissect_lpp_GNSS_ID_Bitmap(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index, ett_lpp_GNSS_ID_Bitmap, GNSS_ID_Bitmap_sequence); @@ -2285,7 +2312,7 @@ static const per_sequence_t ProvideCapabilities_sequence[] = { static int dissect_lpp_ProvideCapabilities(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { -#line 43 "../../asn1/lpp/lpp.cnf" +#line 60 "../../asn1/lpp/lpp.cnf" col_append_sep_str(actx->pinfo->cinfo, COL_INFO, NULL, "Provide Capabilities"); @@ -2362,7 +2389,7 @@ dissect_lpp_ECGI(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_ static const per_sequence_t CommonIEsRequestAssistanceData_sequence[] = { - { &hf_lpp_servingCellID , ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lpp_ECGI }, + { &hf_lpp_primaryCellID , ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lpp_ECGI }, { NULL, 0, 0, NULL } }; @@ -2572,7 +2599,7 @@ static const per_sequence_t SV_ID_sequence[] = { { NULL, 0, 0, NULL } }; -static int +int dissect_lpp_SV_ID(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index, ett_lpp_SV_ID, SV_ID_sequence); @@ -2820,7 +2847,7 @@ static const per_sequence_t GNSS_SignalID_sequence[] = { { NULL, 0, 0, NULL } }; -static int +int dissect_lpp_GNSS_SignalID(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index, ett_lpp_GNSS_SignalID, GNSS_SignalID_sequence); @@ -3046,7 +3073,7 @@ static const per_sequence_t RequestAssistanceData_sequence[] = { static int dissect_lpp_RequestAssistanceData(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { -#line 47 "../../asn1/lpp/lpp.cnf" +#line 64 "../../asn1/lpp/lpp.cnf" col_append_sep_str(actx->pinfo->cinfo, COL_INFO, NULL, "Request Assistance Data"); @@ -3163,7 +3190,7 @@ static const per_sequence_t GNSS_SystemTime_sequence[] = { { NULL, 0, 0, NULL } }; -static int +int dissect_lpp_GNSS_SystemTime(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index, ett_lpp_GNSS_SystemTime, GNSS_SystemTime_sequence); @@ -3293,7 +3320,7 @@ static const per_sequence_t CellGlobalIdEUTRA_AndUTRA_sequence[] = { { NULL, 0, 0, NULL } }; -static int +int dissect_lpp_CellGlobalIdEUTRA_AndUTRA(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index, ett_lpp_CellGlobalIdEUTRA_AndUTRA, CellGlobalIdEUTRA_AndUTRA_sequence); @@ -3303,7 +3330,7 @@ dissect_lpp_CellGlobalIdEUTRA_AndUTRA(tvbuff_t *tvb _U_, int offset _U_, asn1_ct -static int +int dissect_lpp_ARFCN_ValueEUTRA(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index, 0U, 65535U, NULL, FALSE); @@ -3389,7 +3416,7 @@ dissect_lpp_T_mode(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, prot -static int +int dissect_lpp_ARFCN_ValueUTRA(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index, 0U, 16383U, NULL, FALSE); @@ -3484,7 +3511,7 @@ static const per_sequence_t CellGlobalIdGERAN_sequence[] = { { NULL, 0, 0, NULL } }; -static int +int dissect_lpp_CellGlobalIdGERAN(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index, ett_lpp_CellGlobalIdGERAN, CellGlobalIdGERAN_sequence); @@ -3541,7 +3568,7 @@ static const per_sequence_t NetworkTime_sequence[] = { { NULL, 0, 0, NULL } }; -static int +int dissect_lpp_NetworkTime(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index, ett_lpp_NetworkTime, NetworkTime_sequence); @@ -3697,7 +3724,7 @@ static const per_sequence_t EllipsoidPointWithAltitudeAndUncertaintyEllipsoid_se { NULL, 0, 0, NULL } }; -static int +int dissect_lpp_EllipsoidPointWithAltitudeAndUncertaintyEllipsoid(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index, ett_lpp_EllipsoidPointWithAltitudeAndUncertaintyEllipsoid, EllipsoidPointWithAltitudeAndUncertaintyEllipsoid_sequence); @@ -5659,7 +5686,7 @@ static const per_sequence_t OTDOA_ReferenceCellInfo_sequence[] = { { NULL, 0, 0, NULL } }; -static int +int dissect_lpp_OTDOA_ReferenceCellInfo(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index, ett_lpp_OTDOA_ReferenceCellInfo, OTDOA_ReferenceCellInfo_sequence); @@ -5734,7 +5761,7 @@ static const per_sequence_t OTDOA_NeighbourCellInfoElement_sequence[] = { { NULL, 0, 0, NULL } }; -static int +int dissect_lpp_OTDOA_NeighbourCellInfoElement(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index, ett_lpp_OTDOA_NeighbourCellInfoElement, OTDOA_NeighbourCellInfoElement_sequence); @@ -5958,7 +5985,7 @@ static const per_sequence_t ProvideAssistanceData_sequence[] = { static int dissect_lpp_ProvideAssistanceData(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { -#line 51 "../../asn1/lpp/lpp.cnf" +#line 68 "../../asn1/lpp/lpp.cnf" col_append_sep_str(actx->pinfo->cinfo, COL_INFO, NULL, "Provide Assistance Data"); @@ -6356,7 +6383,7 @@ static const per_sequence_t RequestLocationInformation_sequence[] = { static int dissect_lpp_RequestLocationInformation(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { -#line 55 "../../asn1/lpp/lpp.cnf" +#line 72 "../../asn1/lpp/lpp.cnf" col_append_sep_str(actx->pinfo->cinfo, COL_INFO, NULL, "Request Location Information"); @@ -6391,7 +6418,7 @@ static const per_sequence_t Ellipsoid_Point_sequence[] = { { NULL, 0, 0, NULL } }; -static int +int dissect_lpp_Ellipsoid_Point(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index, ett_lpp_Ellipsoid_Point, Ellipsoid_Point_sequence); @@ -6556,7 +6583,7 @@ static const per_sequence_t EllipsoidPointWithAltitude_sequence[] = { { NULL, 0, 0, NULL } }; -static int +int dissect_lpp_EllipsoidPointWithAltitude(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index, ett_lpp_EllipsoidPointWithAltitude, EllipsoidPointWithAltitude_sequence); @@ -7340,12 +7367,12 @@ dissect_lpp_MeasuredResultsList(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *a static const per_sequence_t ECID_SignalMeasurementInformation_sequence[] = { - { &hf_lpp_servingCellMeasuredResults, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lpp_MeasuredResultsElement }, + { &hf_lpp_primaryCellMeasuredResults, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lpp_MeasuredResultsElement }, { &hf_lpp_measuredResultsList, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_lpp_MeasuredResultsList }, { NULL, 0, 0, NULL } }; -static int +int dissect_lpp_ECID_SignalMeasurementInformation(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index, ett_lpp_ECID_SignalMeasurementInformation, ECID_SignalMeasurementInformation_sequence); @@ -7540,7 +7567,7 @@ static const per_sequence_t ProvideLocationInformation_sequence[] = { static int dissect_lpp_ProvideLocationInformation(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { -#line 59 "../../asn1/lpp/lpp.cnf" +#line 76 "../../asn1/lpp/lpp.cnf" col_append_sep_str(actx->pinfo->cinfo, COL_INFO, NULL, "Provide Location Information"); @@ -7667,7 +7694,7 @@ static const per_sequence_t Abort_sequence[] = { static int dissect_lpp_Abort(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { -#line 63 "../../asn1/lpp/lpp.cnf" +#line 80 "../../asn1/lpp/lpp.cnf" col_append_sep_str(actx->pinfo->cinfo, COL_INFO, NULL, "Abort"); @@ -7754,7 +7781,7 @@ static const per_choice_t Error_choice[] = { static int dissect_lpp_Error(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { -#line 67 "../../asn1/lpp/lpp.cnf" +#line 84 "../../asn1/lpp/lpp.cnf" col_append_sep_str(actx->pinfo->cinfo, COL_INFO, NULL, "Error"); @@ -7863,7 +7890,7 @@ static const per_sequence_t LPP_Message_sequence[] = { static int dissect_lpp_LPP_Message(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { -#line 25 "../../asn1/lpp/lpp.cnf" +#line 42 "../../asn1/lpp/lpp.cnf" proto_tree_add_item(tree, proto_lpp, tvb, 0, -1, ENC_NA); @@ -7912,7 +7939,7 @@ int dissect_lpp_HorizontalVelocity_PDU(tvbuff_t *tvb _U_, packet_info *pinfo _U_ /*--- End of included file: packet-lpp-fn.c ---*/ -#line 62 "../../asn1/lpp/packet-lpp-template.c" +#line 70 "../../asn1/lpp/packet-lpp-template.c" /*--- proto_register_lpp -------------------------------------------*/ @@ -8462,7 +8489,7 @@ void proto_register_lpp(void) { NULL, HFILL }}, { &hf_lpp_ePDU_ID, { "ePDU-ID", "lpp.ePDU_ID", - FT_UINT32, BASE_DEC, NULL, 0, + FT_UINT32, BASE_DEC, VALS(lpp_ePDU_ID_vals), 0, NULL, HFILL }}, { &hf_lpp_ePDU_Name, { "ePDU-Name", "lpp.ePDU_Name", @@ -8556,8 +8583,8 @@ void proto_register_lpp(void) { { "horizontalWithVerticalVelocityAndUncertainty", "lpp.horizontalWithVerticalVelocityAndUncertainty", FT_BOOLEAN, BASE_NONE, NULL, 0, "BOOLEAN", HFILL }}, - { &hf_lpp_servingCellID, - { "servingCellID", "lpp.servingCellID", + { &hf_lpp_primaryCellID, + { "primaryCellID", "lpp.primaryCellID", FT_NONE, BASE_NONE, NULL, 0, "ECGI", HFILL }}, { &hf_lpp_locationInformationType, @@ -10968,8 +10995,8 @@ void proto_register_lpp(void) { { "ecid-Error", "lpp.ecid_Error", FT_UINT32, BASE_DEC, VALS(lpp_ECID_Error_vals), 0, NULL, HFILL }}, - { &hf_lpp_servingCellMeasuredResults, - { "servingCellMeasuredResults", "lpp.servingCellMeasuredResults", + { &hf_lpp_primaryCellMeasuredResults, + { "primaryCellMeasuredResults", "lpp.primaryCellMeasuredResults", FT_NONE, BASE_NONE, NULL, 0, "MeasuredResultsElement", HFILL }}, { &hf_lpp_measuredResultsList, @@ -11210,7 +11237,7 @@ void proto_register_lpp(void) { NULL, HFILL }}, /*--- End of included file: packet-lpp-hfarr.c ---*/ -#line 71 "../../asn1/lpp/packet-lpp-template.c" +#line 79 "../../asn1/lpp/packet-lpp-template.c" }; /* List of subtrees */ @@ -11513,7 +11540,7 @@ void proto_register_lpp(void) { &ett_lpp_ECID_TargetDeviceErrorCauses, /*--- End of included file: packet-lpp-ettarr.c ---*/ -#line 77 "../../asn1/lpp/packet-lpp-template.c" +#line 85 "../../asn1/lpp/packet-lpp-template.c" }; @@ -11533,7 +11560,7 @@ void proto_register_lpp(void) { void proto_reg_handoff_lpp(void) { - + lppe_handle = find_dissector("lppe"); } diff --git a/epan/dissectors/packet-lpp.h b/epan/dissectors/packet-lpp.h index a9db8378d9..5cb3fc468d 100644 --- a/epan/dissectors/packet-lpp.h +++ b/epan/dissectors/packet-lpp.h @@ -30,7 +30,7 @@ * along with this program; if not, write to the Free Software * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA. * - * Ref 3GPP TS 36.355 version 9.7.0 Release 9 + * Ref 3GPP TS 36.355 version 10.5.0 Release 10 * http://www.3gpp.org */ @@ -40,6 +40,23 @@ /*--- Included file: packet-lpp-exp.h ---*/ #line 1 "../../asn1/lpp/packet-lpp-exp.h" +int dissect_lpp_ARFCN_ValueEUTRA(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_); +int dissect_lpp_ARFCN_ValueUTRA(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_); +int dissect_lpp_CellGlobalIdEUTRA_AndUTRA(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_); +int dissect_lpp_CellGlobalIdGERAN(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_); +int dissect_lpp_Ellipsoid_Point(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_); +int dissect_lpp_EllipsoidPointWithAltitude(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_); +int dissect_lpp_EllipsoidPointWithAltitudeAndUncertaintyEllipsoid(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_); +int dissect_lpp_OTDOA_ReferenceCellInfo(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_); +int dissect_lpp_OTDOA_NeighbourCellInfoElement(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_); +int dissect_lpp_GNSS_SystemTime(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_); +int dissect_lpp_NetworkTime(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_); +int dissect_lpp_GNSS_ID(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_); +int dissect_lpp_GNSS_ID_Bitmap(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_); +int dissect_lpp_GNSS_SignalID(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_); +int dissect_lpp_GNSS_SignalIDs(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_); +int dissect_lpp_SV_ID(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_); +int dissect_lpp_ECID_SignalMeasurementInformation(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_); int dissect_lpp_Ellipsoid_Point_PDU(tvbuff_t *tvb _U_, packet_info *pinfo _U_, proto_tree *tree _U_); int dissect_lpp_EllipsoidPointWithAltitude_PDU(tvbuff_t *tvb _U_, packet_info *pinfo _U_, proto_tree *tree _U_); int dissect_lpp_HorizontalVelocity_PDU(tvbuff_t *tvb _U_, packet_info *pinfo _U_, proto_tree *tree _U_); diff --git a/epan/dissectors/packet-lppe.c b/epan/dissectors/packet-lppe.c new file mode 100644 index 0000000000..7ababad168 --- /dev/null +++ b/epan/dissectors/packet-lppe.c @@ -0,0 +1,21735 @@ +/* Do not modify this file. */ +/* It is created automatically by the ASN.1 to Wireshark dissector compiler */ +/* packet-lppe.c */ +/* ../../tools/asn2wrs.py -p lppe -c ./lppe.cnf -s ./packet-lppe-template -D . -O ../../epan/dissectors LPPe.asn */ + +/* Input file: packet-lppe-template.c */ + +#line 1 "../../asn1/lppe/packet-lppe-template.c" +/* packet-lppe.c + * Routines for LPP Extensions (LLPe) packet dissection + * Copyright 2012, Pascal Quantin <pascal.quantin@gmail.com> + * + * $Id$ + * + * Wireshark - Network traffic analyzer + * By Gerald Combs <gerald@wireshark.org> + * Copyright 1998 Gerald Combs + * + * This program is free software; you can redistribute it and/or + * modify it under the terms of the GNU General Public License + * as published by the Free Software Foundation; either version 2 + * of the License, or (at your option) any later version. + * + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + * + * You should have received a copy of the GNU General Public License + * along with this program; if not, write to the Free Software + * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA. + * + * Ref Open Mobile Alliance OMA-TS-LPPe V1_0-20110929-C + */ + +#ifdef HAVE_CONFIG_H +# include "config.h" +#endif + +#include <glib.h> +#include <epan/packet.h> +#include <epan/asn1.h> + +#include "packet-per.h" +#include "packet-lpp.h" + +#define PNAME "LTE Positioning Protocol Extensions (LLPe)" +#define PSNAME "LPPe" +#define PFNAME "lppe" + +#ifdef _MSC_VER +/* disable: "warning C4146: unary minus operator applied to unsigned type, result still unsigned" */ +#pragma warning(disable:4146) +#endif + +/* Initialize the protocol and registered fields */ +static int proto_lppe = -1; + + +/*--- Included file: packet-lppe-hf.c ---*/ +#line 1 "../../asn1/lppe/packet-lppe-hf.c" +static int hf_lppe_OMA_LPPe_MessageExtension_PDU = -1; /* OMA_LPPe_MessageExtension */ +static int hf_lppe_lppeCompatibilityLevel = -1; /* OMA_LPPe_LPPeCompatibilityLevel */ +static int hf_lppe_lppeVersion = -1; /* OMA_LPPe_LPPeVersion */ +static int hf_lppe_lppeMode = -1; /* OMA_LPPe_LPPeMode */ +static int hf_lppe_messageExtensionBody = -1; /* OMA_LPPe_MessageExtensionBody */ +static int hf_lppe_majorVersion = -1; /* INTEGER_0_255 */ +static int hf_lppe_minorVersion = -1; /* INTEGER_0_255 */ +static int hf_lppe_requestCapabilities = -1; /* OMA_LPPe_RequestCapabilities */ +static int hf_lppe_provideCapabilities = -1; /* OMA_LPPe_ProvideCapabilities */ +static int hf_lppe_requestAssistanceData = -1; /* OMA_LPPe_RequestAssistanceData */ +static int hf_lppe_provideAssistanceData = -1; /* OMA_LPPe_ProvideAssistanceData */ +static int hf_lppe_requestLocationInformation = -1; /* OMA_LPPe_RequestLocationInformation */ +static int hf_lppe_provideLocationInformation = -1; /* OMA_LPPe_ProvideLocationInformation */ +static int hf_lppe_error = -1; /* OMA_LPPe_Error */ +static int hf_lppe_abort = -1; /* OMA_LPPe_Abort */ +static int hf_lppe_commonIEsRequestCapabilities = -1; /* OMA_LPPe_CommonIEsRequestCapabilities */ +static int hf_lppe_agnss_RequestCapabilities = -1; /* OMA_LPPe_AGNSS_RequestCapabilities */ +static int hf_lppe_otdoa_RequestCapabilities = -1; /* OMA_LPPe_OTDOA_RequestCapabilities */ +static int hf_lppe_eotd_RequestCapabilities = -1; /* OMA_LPPe_EOTD_RequestCapabilities */ +static int hf_lppe_otdoa_utra_RequestCapabilities = -1; /* OMA_LPPe_OTDOA_UTRA_RequestCapabilities */ +static int hf_lppe_ecid_lte_RequestCapabilities = -1; /* OMA_LPPe_ECID_LTE_RequestCapabilities */ +static int hf_lppe_ecid_gsm_RequestCapabilities = -1; /* OMA_LPPe_ECID_GSM_RequestCapabilities */ +static int hf_lppe_ecid_utra_RequestCapabilities = -1; /* OMA_LPPe_ECID_UTRA_RequestCapabilities */ +static int hf_lppe_wlan_ap_RequestCapabilities = -1; /* OMA_LPPe_WLAN_AP_RequestCapabilities */ +static int hf_lppe_ecid_wimax_RequestCapabilities = -1; /* OMA_LPPe_ECID_WiMax_RequestCapabilities */ +static int hf_lppe_sensor_RequestCapabilities = -1; /* OMA_LPPe_Sensor_RequestCapabilities */ +static int hf_lppe_srn_RequestCapabilities = -1; /* OMA_LPPe_SRN_RequestCapabilities */ +static int hf_lppe_commonIEsProvideCapabilities = -1; /* OMA_LPPe_CommonIEsProvideCapabilities */ +static int hf_lppe_agnss_ProvideCapabilities = -1; /* OMA_LPPe_AGNSS_ProvideCapabilities */ +static int hf_lppe_otdoa_ProvideCapabilities = -1; /* OMA_LPPe_OTDOA_ProvideCapabilities */ +static int hf_lppe_eotd_ProvideCapabilities = -1; /* OMA_LPPe_EOTD_ProvideCapabilities */ +static int hf_lppe_otdoa_utra_ProvideCapabilities = -1; /* OMA_LPPe_OTDOA_UTRA_ProvideCapabilities */ +static int hf_lppe_ecid_lte_ProvideCapabilities = -1; /* OMA_LPPe_ECID_LTE_ProvideCapabilities */ +static int hf_lppe_ecid_gsm_ProvideCapabilities = -1; /* OMA_LPPe_ECID_GSM_ProvideCapabilities */ +static int hf_lppe_ecid_utra_ProvideCapabilities = -1; /* OMA_LPPe_ECID_UTRA_ProvideCapabilities */ +static int hf_lppe_wlan_ap_ProvideCapabilities = -1; /* OMA_LPPe_WLAN_AP_ProvideCapabilities */ +static int hf_lppe_ecid_wimax_ProvideCapabilities = -1; /* OMA_LPPe_ECID_WiMax_ProvideCapabilities */ +static int hf_lppe_sensor_ProvideCapabilities = -1; /* OMA_LPPe_Sensor_ProvideCapabilities */ +static int hf_lppe_srn_ProvideCapabilities = -1; /* OMA_LPPe_SRN_ProvideCapabilities */ +static int hf_lppe_commonIEsRequestAssistanceData = -1; /* OMA_LPPe_CommonIEsRequestAssistanceData */ +static int hf_lppe_agnss_RequestAssistanceData = -1; /* OMA_LPPe_AGNSS_RequestAssistanceData */ +static int hf_lppe_otdoa_RequestAssistanceData = -1; /* OMA_LPPe_OTDOA_RequestAssistanceData */ +static int hf_lppe_eotd_RequestAssistanceData = -1; /* OMA_LPPe_EOTD_RequestAssistanceData */ +static int hf_lppe_otdoa_utra_RequestAssistanceData = -1; /* OMA_LPPe_OTDOA_UTRA_RequestAssistanceData */ +static int hf_lppe_ecid_lte_RequestAssistanceData = -1; /* OMA_LPPe_ECID_LTE_RequestAssistanceData */ +static int hf_lppe_ecid_gsm_RequestAssistanceData = -1; /* OMA_LPPe_ECID_GSM_RequestAssistanceData */ +static int hf_lppe_ecid_utra_RequestAssistanceData = -1; /* OMA_LPPe_ECID_UTRA_RequestAssistanceData */ +static int hf_lppe_wlan_ap_RequestAssistanceData = -1; /* OMA_LPPe_WLAN_AP_RequestAssistanceData */ +static int hf_lppe_sensor_RequestAssistanceData = -1; /* OMA_LPPe_Sensor_RequestAssistanceData */ +static int hf_lppe_srn_RequestAssistanceData = -1; /* OMA_LPPe_SRN_RequestAssistanceData */ +static int hf_lppe_commonIEsProvideAssistanceData = -1; /* OMA_LPPe_CommonIEsProvideAssistanceData */ +static int hf_lppe_agnss_ProvideAssistanceData = -1; /* OMA_LPPe_AGNSS_ProvideAssistanceData */ +static int hf_lppe_otdoa_ProvideAssistanceData = -1; /* OMA_LPPe_OTDOA_ProvideAssistanceData */ +static int hf_lppe_eotd_ProvideAssistanceData = -1; /* OMA_LPPe_EOTD_ProvideAssistanceData */ +static int hf_lppe_otdoa_utra_ProvideAssistanceData = -1; /* OMA_LPPe_OTDOA_UTRA_ProvideAssistanceData */ +static int hf_lppe_ecid_lte_ProvideAssistanceData = -1; /* OMA_LPPe_ECID_LTE_ProvideAssistanceData */ +static int hf_lppe_ecid_gsm_ProvideAssistanceData = -1; /* OMA_LPPe_ECID_GSM_ProvideAssistanceData */ +static int hf_lppe_ecid_utra_ProvideAssistanceData = -1; /* OMA_LPPe_ECID_UTRA_ProvideAssistanceData */ +static int hf_lppe_wlan_ap_ProvideAssistanceData = -1; /* OMA_LPPe_WLAN_AP_ProvideAssistanceData */ +static int hf_lppe_sensor_ProvideAssistanceData = -1; /* OMA_LPPe_Sensor_ProvideAssistanceData */ +static int hf_lppe_srn_ProvideAssistanceData = -1; /* OMA_LPPe_SRN_ProvideAssistanceData */ +static int hf_lppe_commonIEsRequestLocationInformation = -1; /* OMA_LPPe_CommonIEsRequestLocationInformation */ +static int hf_lppe_agnss_RequestLocationInformation = -1; /* OMA_LPPe_AGNSS_RequestLocationInformation */ +static int hf_lppe_otdoa_RequestLocationInformation = -1; /* OMA_LPPe_OTDOA_RequestLocationInformation */ +static int hf_lppe_eotd_RequestLocationInformation = -1; /* OMA_LPPe_EOTD_RequestLocationInformation */ +static int hf_lppe_otdoa_utra_RequestLocationInformation = -1; /* OMA_LPPe_OTDOA_UTRA_RequestLocationInformation */ +static int hf_lppe_ecid_lte_RequestLocationInformation = -1; /* OMA_LPPe_ECID_LTE_RequestLocationInformation */ +static int hf_lppe_ecid_gsm_RequestLocationInformation = -1; /* OMA_LPPe_ECID_GSM_RequestLocationInformation */ +static int hf_lppe_ecid_utra_RequestLocationInformation = -1; /* OMA_LPPe_ECID_UTRA_RequestLocationInformation */ +static int hf_lppe_wlan_ap_RequestLocationInformation = -1; /* OMA_LPPe_WLAN_AP_RequestLocationInformation */ +static int hf_lppe_ecid_wimax_RequestLocationInformation = -1; /* OMA_LPPe_ECID_WiMax_RequestLocationInformation */ +static int hf_lppe_sensor_RequestLocationInformation = -1; /* OMA_LPPe_Sensor_RequestLocationInformation */ +static int hf_lppe_srn_RequestLocationInformation = -1; /* OMA_LPPe_SRN_RequestLocationInformation */ +static int hf_lppe_commonIEsProvideLocationInformation = -1; /* OMA_LPPe_CommonIEsProvideLocationInformation */ +static int hf_lppe_agnss_ProvideLocationInformation = -1; /* OMA_LPPe_AGNSS_ProvideLocationInformation */ +static int hf_lppe_otdoa_ProvideLocationInformation = -1; /* OMA_LPPe_OTDOA_ProvideLocationInformation */ +static int hf_lppe_eotd_ProvideLocationInformation = -1; /* OMA_LPPe_EOTD_ProvideLocationInformation */ +static int hf_lppe_otdoa_utra_ProvideLocationInformation = -1; /* OMA_LPPe_OTDOA_UTRA_ProvideLocationInformation */ +static int hf_lppe_ecid_lte_ProvideLocationInformation = -1; /* OMA_LPPe_ECID_LTE_ProvideLocationInformation */ +static int hf_lppe_ecid_gsm_ProvideLocationInformation = -1; /* OMA_LPPe_ECID_GSM_ProvideLocationInformation */ +static int hf_lppe_ecid_utra_ProvideLocationInformation = -1; /* OMA_LPPe_ECID_UTRA_ProvideLocationInformation */ +static int hf_lppe_wlan_ap_ProvideLocationInformastion = -1; /* OMA_LPPe_WLAN_AP_ProvideLocationInformation */ +static int hf_lppe_ecid_wimax_ProvideLocationInformastion = -1; /* OMA_LPPe_ECID_WiMax_ProvideLocationInformation */ +static int hf_lppe_sensor_ProvideLocationInformation = -1; /* OMA_LPPe_Sensor_ProvideLocationInformation */ +static int hf_lppe_srn_ProvideLocationInformation = -1; /* OMA_LPPe_SRN_ProvideLocationInformation */ +static int hf_lppe_commonIEsAbort = -1; /* OMA_LPPe_CommonIEsAbort */ +static int hf_lppe_agnssAbort = -1; /* OMA_LPPe_AGNSS_Abort */ +static int hf_lppe_commonIEsError = -1; /* OMA_LPPe_CommonIEsError */ +static int hf_lppe_dataSerialNumber = -1; /* INTEGER_0_4294967295 */ +static int hf_lppe_containerID = -1; /* INTEGER_0_65535 */ +static int hf_lppe_OMA_LPPe_AssistanceContainerProvideList_item = -1; /* OMA_LPPe_AssistanceContainerProvide */ +static int hf_lppe_dataIdentifier = -1; /* OMA_LPPe_VendorOrOperatorAssistanceDataIdentifier */ +static int hf_lppe_checkOrUpdateOrError = -1; /* T_checkOrUpdateOrError */ +static int hf_lppe_dataResult = -1; /* T_dataResult */ +static int hf_lppe_simulationResult = -1; /* INTEGER_0_5000 */ +static int hf_lppe_data = -1; /* OMA_LPPe_AssistanceContainerData */ +static int hf_lppe_errorCode = -1; /* OMA_LPPe_AssistanceContainerProvideError */ +static int hf_lppe_dataSerialNumber_01 = -1; /* OMA_LPPe_AssistanceContainer_DataSerialNumber */ +static int hf_lppe_data_01 = -1; /* OCTET_STRING */ +static int hf_lppe_validityPeriod = -1; /* OMA_LPPe_ValidityPeriod */ +static int hf_lppe_validityArea = -1; /* OMA_LPPe_ValidityArea */ +static int hf_lppe_serverError = -1; /* T_serverError */ +static int hf_lppe_OMA_LPPe_AssistanceContainerRequestList_item = -1; /* OMA_LPPe_AssistanceContainerRequest */ +static int hf_lppe_simulatedReq = -1; /* BOOLEAN */ +static int hf_lppe_checkOrUpdateReq = -1; /* OMA_LPPe_AssistanceContainerCheckOrUpdateReq */ +static int hf_lppe_validityTimeRequest = -1; /* OMA_LPPe_ValidityPeriod */ +static int hf_lppe_proprietaryRequestParameters = -1; /* OCTET_STRING */ +static int hf_lppe_checkLatest = -1; /* T_checkLatest */ +static int hf_lppe_locationAreaCode = -1; /* BIT_STRING_SIZE_16 */ +static int hf_lppe_cellIdentity = -1; /* BIT_STRING_SIZE_16 */ +static int hf_lppe_bsic = -1; /* INTEGER_0_63 */ +static int hf_lppe_bcch = -1; /* INTEGER_0_1023 */ +static int hf_lppe_countryCode = -1; /* OCTET_STRING_SIZE_2 */ +static int hf_lppe_civicAddressElementList = -1; /* OMA_LPPe_CivicAddressElementList */ +static int hf_lppe_OMA_LPPe_CivicAddressElementList_item = -1; /* OMA_LPPe_CivicAddressElement */ +static int hf_lppe_caType = -1; /* INTEGER_0_511 */ +static int hf_lppe_caValue = -1; /* OCTET_STRING_SIZE_1_256 */ +static int hf_lppe_duration = -1; /* INTEGER_1_63 */ +static int hf_lppe_durationLSB = -1; /* INTEGER_1_89 */ +static int hf_lppe_latitude = -1; /* INTEGER_M2147483648_2147483647 */ +static int hf_lppe_longitude = -1; /* INTEGER_M2147483648_2147483647 */ +static int hf_lppe_cep = -1; /* INTEGER_0_255 */ +static int hf_lppe_uncertainty_semimajor = -1; /* INTEGER_0_255 */ +static int hf_lppe_uncertainty_semiminor = -1; /* INTEGER_0_255 */ +static int hf_lppe_offset_angle = -1; /* INTEGER_0_179 */ +static int hf_lppe_confidenceHorizontal = -1; /* INTEGER_0_99 */ +static int hf_lppe_altitude = -1; /* INTEGER_M64000_1280000 */ +static int hf_lppe_uncertainty_altitude = -1; /* INTEGER_0_255 */ +static int hf_lppe_confidenceVertical = -1; /* INTEGER_0_99 */ +static int hf_lppe_enu_origin = -1; /* OMA_LPPe_HighAccuracy3Dposition */ +static int hf_lppe_east_component = -1; /* INTEGER_0_511 */ +static int hf_lppe_negative_sign_east = -1; /* NULL */ +static int hf_lppe_north_component = -1; /* INTEGER_0_511 */ +static int hf_lppe_negative_sign_north = -1; /* NULL */ +static int hf_lppe_up_component = -1; /* INTEGER_0_511 */ +static int hf_lppe_negative_sign_up = -1; /* NULL */ +static int hf_lppe_uncertainty_up_component = -1; /* INTEGER_0_255 */ +static int hf_lppe_confidenceUp = -1; /* INTEGER_0_99 */ +static int hf_lppe_vendorOrOperatorID = -1; /* OMA_LPPe_VendorOrOperatorID */ +static int hf_lppe_locationInformationContainerDataList = -1; /* OMA_LPPe_LocationInformationContainerDataList */ +static int hf_lppe_OMA_LPPe_LocationInformationContainerDataList_item = -1; /* OMA_LPPe_LocationInformationContainerData */ +static int hf_lppe_containerID_01 = -1; /* OMA_LPPe_LocationInformationContainerID */ +static int hf_lppe_containerData = -1; /* OCTET_STRING */ +static int hf_lppe_locationInformationContainerRequestList = -1; /* OMA_LPPe_LocationInformationContainerRequestList */ +static int hf_lppe_OMA_LPPe_LocationInformationContainerRequestList_item = -1; /* OMA_LPPe_LocationInformationContainerRequestItem */ +static int hf_lppe_additionalInformation = -1; /* OCTET_STRING */ +static int hf_lppe_dataID = -1; /* OMA_LPPe_AssistanceContainerID */ +static int hf_lppe_mapReference = -1; /* OCTET_STRING_SIZE_1_64 */ +static int hf_lppe_mapSize = -1; /* INTEGER_1_5000 */ +static int hf_lppe_eulerAngles = -1; /* T_eulerAngles */ +static int hf_lppe_alpha = -1; /* INTEGER_0_359 */ +static int hf_lppe_beta = -1; /* INTEGER_0_180 */ +static int hf_lppe_gamma = -1; /* INTEGER_0_359 */ +static int hf_lppe_referencePointUniqueID = -1; /* OMA_LPPe_ReferencePointUniqueID */ +static int hf_lppe_referencePointGeographicLocation = -1; /* T_referencePointGeographicLocation */ +static int hf_lppe_location3D = -1; /* EllipsoidPointWithAltitude */ +static int hf_lppe_location3DwithUncertainty = -1; /* EllipsoidPointWithAltitudeAndUncertaintyEllipsoid */ +static int hf_lppe_locationwithhighaccuracy = -1; /* OMA_LPPe_HighAccuracy3Dposition */ +static int hf_lppe_referencePointCivicLocation = -1; /* OMA_LPPe_CivicLocation */ +static int hf_lppe_referencePointFloorLevel = -1; /* INTEGER_M20_235 */ +static int hf_lppe_relatedReferencePoints = -1; /* SEQUENCE_SIZE_1_8_OF_OMA_LPPe_ReferencePointRelationship */ +static int hf_lppe_relatedReferencePoints_item = -1; /* OMA_LPPe_ReferencePointRelationship */ +static int hf_lppe_mapDataInformation = -1; /* OMA_LPPe_MapDataInformation */ +static int hf_lppe_OMA_LPPe_MapDataInformation_item = -1; /* OMA_LPPe_MapDataReferenceElement */ +static int hf_lppe_mapDataUrl = -1; /* T_mapDataUrl */ +static int hf_lppe_mapDataUrl_01 = -1; /* OMA_LPPe_Uri */ +static int hf_lppe_mapDataRef = -1; /* OMA_LPPe_MapDataReference */ +static int hf_lppe_mapProvider = -1; /* T_mapProvider */ +static int hf_lppe_sameAsRefPointProvider = -1; /* NULL */ +static int hf_lppe_notSameAsRefPointProvider = -1; /* OMA_LPPe_VendorOrOperatorID */ +static int hf_lppe_mapAssociation = -1; /* T_mapAssociation */ +static int hf_lppe_referencePointUniqueID_01 = -1; /* NULL */ +static int hf_lppe_otherID = -1; /* VisibleString_SIZE_1_64 */ +static int hf_lppe_mapOffset = -1; /* OMA_LPPe_RelativeLocation */ +static int hf_lppe_origin = -1; /* NULL */ +static int hf_lppe_mapHorizontalOrientation = -1; /* INTEGER_0_359 */ +static int hf_lppe_relativeLocation = -1; /* OMA_LPPe_RelativeLocation */ +static int hf_lppe_providerID = -1; /* OMA_LPPe_VendorOrOperatorID */ +static int hf_lppe_providerAssignedID = -1; /* OCTET_STRING */ +static int hf_lppe_version = -1; /* INTEGER_1_64 */ +static int hf_lppe_units = -1; /* T_units */ +static int hf_lppe_arc_second_units = -1; /* T_arc_second_units */ +static int hf_lppe_relativeNorth = -1; /* INTEGER_M524288_524287 */ +static int hf_lppe_relativeEast = -1; /* INTEGER_M524288_524287 */ +static int hf_lppe_relativeAltitude = -1; /* OMA_LPPe_RelativeAltitude */ +static int hf_lppe_horizontalUncertainty = -1; /* OMA_LPPe_HorizontalUncertaintyAndConfidence */ +static int hf_lppe_uncShape = -1; /* T_uncShape */ +static int hf_lppe_circle = -1; /* INTEGER_0_127 */ +static int hf_lppe_ellipse = -1; /* T_ellipse */ +static int hf_lppe_semimajor = -1; /* INTEGER_0_127 */ +static int hf_lppe_semiminor = -1; /* INTEGER_0_127 */ +static int hf_lppe_offsetAngle = -1; /* INTEGER_0_179 */ +static int hf_lppe_confidence = -1; /* INTEGER_0_99 */ +static int hf_lppe_geodeticRelativeAltitude = -1; /* OMA_LPPe_GeodeticRelativeAltitude */ +static int hf_lppe_civicRelativeAltitude = -1; /* OMA_LPPe_CivicRelativeAltitude */ +static int hf_lppe_geodetic_height_depth = -1; /* INTEGER_M32768_32767 */ +static int hf_lppe_geodetic_uncertainty_and_confidence = -1; /* OMA_LPPe_GeodeticUncertaintyAndConfidence */ +static int hf_lppe_uncertainty = -1; /* INTEGER_0_127 */ +static int hf_lppe_civic_floors = -1; /* INTEGER_M255_256 */ +static int hf_lppe_civic_uncertainty_and_confidence = -1; /* OMA_LPPe_CivicUncertaintyAndConfidence */ +static int hf_lppe_provider_ID = -1; /* OMA_LPPe_VendorOrOperatorID */ +static int hf_lppe_server_ID = -1; /* OCTET_STRING_SIZE_4 */ +static int hf_lppe_session_ID = -1; /* OCTET_STRING_SIZE_4 */ +static int hf_lppe_regionSizeInv = -1; /* INTEGER_1_255 */ +static int hf_lppe_areaWidth = -1; /* INTEGER_2_9180 */ +static int hf_lppe_codedLatOfNWCorner = -1; /* INTEGER_0_4589 */ +static int hf_lppe_codedLonOfNWCorner = -1; /* INTEGER_0_9179 */ +static int hf_lppe_rleList = -1; /* OMA_LPPe_RleList */ +static int hf_lppe_OMA_LPPe_RleList_item = -1; /* INTEGER_0_255 */ +static int hf_lppe_beginTime = -1; /* GNSS_SystemTime */ +static int hf_lppe_beginTimeAlt = -1; /* INTEGER_0_2881 */ +static int hf_lppe_duration_01 = -1; /* INTEGER_1_2881 */ +static int hf_lppe_assistanceDataID = -1; /* OMA_LPPe_AssistanceContainerID */ +static int hf_lppe_standard_VendorOrOperatorID = -1; /* INTEGER_1_1024 */ +static int hf_lppe_nonStandard_VendorOrOperatorID = -1; /* OMA_LPPe_NonStandard_VendorOrOperatorID */ +static int hf_lppe_encodedID = -1; /* INTEGER_0_65535 */ +static int hf_lppe_visibleIdentification = -1; /* OMA_LPPe_CharArray */ +static int hf_lppe_apMacAddress = -1; /* BIT_STRING_SIZE_48 */ +static int hf_lppe_truncation = -1; /* INTEGER_M127_128 */ +static int hf_lppe_areaType = -1; /* T_areaType */ +static int hf_lppe_componentList = -1; /* SEQUENCE_SIZE_1_16_OF_OMA_LPPe_WLANFemtoCoverageAreaElement */ +static int hf_lppe_componentList_item = -1; /* OMA_LPPe_WLANFemtoCoverageAreaElement */ +static int hf_lppe_refPointAndArea = -1; /* T_refPointAndArea */ +static int hf_lppe_referenceLocation = -1; /* T_referenceLocation */ +static int hf_lppe_referencePoint = -1; /* OMA_LPPe_ReferencePointUniqueID */ +static int hf_lppe_locationAndArea = -1; /* OMA_LPPe_RelativeLocation */ +static int hf_lppe_type = -1; /* T_type */ +static int hf_lppe_weight = -1; /* INTEGER_0_100 */ +static int hf_lppe_iP_Address_RequestCapabilities = -1; /* OMA_LPPe_IP_Address_RequestCapabilities */ +static int hf_lppe_assistanceContainerSupportReq = -1; /* OMA_LPPe_AssistanceContainerSupportReq */ +static int hf_lppe_locationInformationContainerSupportReq = -1; /* OMA_LPPe_LocationInformationContainerSupportReq */ +static int hf_lppe_relativeLocationChange_RequestCapabilities = -1; /* OMA_LPPe_RelativeLocationChange_RequestCapabilities */ +static int hf_lppe_highAccuracyFormatCapabilitiesReq = -1; /* OMA_LPPe_HighAccuracyFormatCapabilitiesReq */ +static int hf_lppe_segmentedAssistanceData_ReqCapabilities = -1; /* OMA_LPPe_SegmentedAssistanceData_ReqCapabilities */ +static int hf_lppe_referencePointCapabilitiesReq = -1; /* OMA_LPPe_ReferencePointCapabilitiesReq */ +static int hf_lppe_scheduledLocation_RequestCapabilities = -1; /* OMA_LPPe_ScheduledLocation_RequestCapabilities */ +static int hf_lppe_accessCapabilitiesReq = -1; /* OMA_LPPe_AccessCapabilitiesReq */ +static int hf_lppe_segmentedLocationInformation_ReqCapabilities = -1; /* OMA_LPPe_SegmentedLocationInformation_ReqCapabilities */ +static int hf_lppe_vendorOrOperatorIDList = -1; /* OMA_LPPe_VendorOrOperatorIDList */ +static int hf_lppe_OMA_LPPe_VendorOrOperatorIDList_item = -1; /* OMA_LPPe_VendorOrOperatorID */ +static int hf_lppe_referencePointProviderSupportListReq = -1; /* SEQUENCE_SIZE_1_128_OF_OMA_LPPe_VendorOrOperatorID */ +static int hf_lppe_referencePointProviderSupportListReq_item = -1; /* OMA_LPPe_VendorOrOperatorID */ +static int hf_lppe_iP_Address_Capabilities = -1; /* OMA_LPPe_IP_Address_Capabilities */ +static int hf_lppe_assistanceContainerSupport = -1; /* OMA_LPPe_AssistanceContainerSupport */ +static int hf_lppe_locationInformationContainerSupport = -1; /* OMA_LPPe_LocationInformationContainerSupport */ +static int hf_lppe_relativeLocationChange_Capabilities = -1; /* OMA_LPPe_RelativeLocationChange_Capabilities */ +static int hf_lppe_highAccuracyFormatCapabilities = -1; /* OMA_LPPe_HighAccuracyFormatCapabilities */ +static int hf_lppe_segmentedAssistanceData_ProvideCapabs = -1; /* OMA_LPPe_SegmentedAssistanceData_ProvideCapabs */ +static int hf_lppe_referencePointCapabilities = -1; /* OMA_LPPe_ReferencePointCapabilities */ +static int hf_lppe_scheduledLocation_Capabilities = -1; /* OMA_LPPe_ScheduledLocation_Capabilities */ +static int hf_lppe_accessCapabilities = -1; /* OMA_LPPe_AccessCapabilities */ +static int hf_lppe_segmentedLocationInformation_ProvideCapabs = -1; /* OMA_LPPe_SegmentedLocationInformation_ProvideCapabs */ +static int hf_lppe_iP_Address_support = -1; /* T_iP_Address_support */ +static int hf_lppe_OMA_LPPe_AssistanceContainerSupport_item = -1; /* OMA_LPPe_VendorOrOperatorAssistanceContainerList */ +static int hf_lppe_assistanceContainerList = -1; /* OMA_LPPe_AssistanceContainerList */ +static int hf_lppe_OMA_LPPe_AssistanceContainerList_item = -1; /* OMA_LPPe_AssistanceContainerID */ +static int hf_lppe_OMA_LPPe_LocationInformationContainerSupport_item = -1; /* OMA_LPPe_VendorOrOperatorLocationInformationContainerList */ +static int hf_lppe_locationInformationContainerList = -1; /* OMA_LPPe_LocationInformationContainerList */ +static int hf_lppe_OMA_LPPe_LocationInformationContainerList_item = -1; /* OMA_LPPe_LocationInformationContainerID */ +static int hf_lppe_numberOfChanges = -1; /* INTEGER_1_5 */ +static int hf_lppe_maxSegments = -1; /* INTEGER_2_4096 */ +static int hf_lppe_maxSize = -1; /* INTEGER_1_5000 */ +static int hf_lppe_minSize = -1; /* INTEGER_1_5000 */ +static int hf_lppe_resume = -1; /* NULL */ +static int hf_lppe_relativeLocationReportingSupport = -1; /* T_relativeLocationReportingSupport */ +static int hf_lppe_referencePointProviderSupportList = -1; /* SEQUENCE_SIZE_1_128_OF_OMA_LPPe_ReferencePointProviderSupportElement */ +static int hf_lppe_referencePointProviderSupportList_item = -1; /* OMA_LPPe_ReferencePointProviderSupportElement */ +static int hf_lppe_referencePointProvider = -1; /* OMA_LPPe_VendorOrOperatorID */ +static int hf_lppe_mapDataSupport = -1; /* T_mapDataSupport */ +static int hf_lppe_mapDataFormat = -1; /* OCTET_STRING */ +static int hf_lppe_minimumWindow = -1; /* INTEGER_1_1024 */ +static int hf_lppe_gnssTimeReference = -1; /* GNSS_ID_Bitmap */ +static int hf_lppe_networkTimeReference = -1; /* T_networkTimeReference */ +static int hf_lppe_accessTypeUnknown = -1; /* NULL */ +static int hf_lppe_fixedAccessTypes = -1; /* OMA_LPPe_FixedAccessTypes */ +static int hf_lppe_wirelessAccessTypes = -1; /* OMA_LPPe_WirelessAccessTypes */ +static int hf_lppe_approximate_location = -1; /* EllipsoidPointWithAltitudeAndUncertaintyEllipsoid */ +static int hf_lppe_assistanceContainerRequestList = -1; /* OMA_LPPe_AssistanceContainerRequestList */ +static int hf_lppe_requestPeriodicADwithUpdate = -1; /* OMA_LPPe_RequestPeriodicADwithUpdate */ +static int hf_lppe_segmentedADpreference = -1; /* T_segmentedADpreference */ +static int hf_lppe_segmentedADResume = -1; /* OMA_LPPe_SegmentedADResume */ +static int hf_lppe_referencePointAssistanceReq = -1; /* OMA_LPPe_ReferencePointAssistanceReq */ +static int hf_lppe_periodicAD_session_ID = -1; /* INTEGER_1_256 */ +static int hf_lppe_typeOfADRequest = -1; /* TypeOfADRequest */ +static int hf_lppe_segmentedAD_session_ID = -1; /* OMA_LPPe_Session_ID */ +static int hf_lppe_next_segment_number = -1; /* INTEGER_1_4096 */ +static int hf_lppe_referencePointReq = -1; /* SEQUENCE_SIZE_1_16_OF_OMA_LPPe_ReferencePointAssistanceReqElement */ +static int hf_lppe_referencePointReq_item = -1; /* OMA_LPPe_ReferencePointAssistanceReqElement */ +static int hf_lppe_mapDataReq = -1; /* OCTET_STRING */ +static int hf_lppe_assistanceContainerList_01 = -1; /* OMA_LPPe_AssistanceContainerProvideList */ +static int hf_lppe_providePeriodicADwithUpdate = -1; /* OMA_LPPe_ProvidePeriodicADwithUpdate */ +static int hf_lppe_segmentedADTransfer = -1; /* OMA_LPPe_SegmentedADTransfer */ +static int hf_lppe_default_reference_point = -1; /* OMA_LPPe_ReferencePoint */ +static int hf_lppe_typeOfADProvide = -1; /* OMA_LPPe_TypeOfADProvide */ +static int hf_lppe_segment_number = -1; /* INTEGER_1_4096 */ +static int hf_lppe_iP_Address_Request = -1; /* OMA_LPPe_IP_Address_Request */ +static int hf_lppe_locationInformationContainerRequest = -1; /* OMA_LPPe_LocationInformationContainerRequest */ +static int hf_lppe_requestPeriodicLocInfoWithUpdate = -1; /* OMA_LPPe_RequestPeriodicLocInfoWithUpdate */ +static int hf_lppe_relativeLocationChange_Request = -1; /* OMA_LPPe_RelativeLocationChange_Request */ +static int hf_lppe_localPositionRequest = -1; /* OMA_LPPe_LocalPositionRequest */ +static int hf_lppe_scheduledLocation_Request = -1; /* OMA_LPPe_ScheduledLocation_Request */ +static int hf_lppe_accessTypeRequest = -1; /* OMA_LPPe_AccessTypeRequest */ +static int hf_lppe_segmentedLIpreference = -1; /* T_segmentedLIpreference */ +static int hf_lppe_segmentedLIResume = -1; /* OMA_LPPe_SegmentedLIResume */ +static int hf_lppe_session_ID_01 = -1; /* INTEGER_1_256 */ +static int hf_lppe_typeOfLocInfoRequest = -1; /* OMA_LPPe_TypeOfLocInfoRequest */ +static int hf_lppe_typeOfRequest = -1; /* T_typeOfRequest */ +static int hf_lppe_referencePointReq_01 = -1; /* SEQUENCE_SIZE_1_8_OF_OMA_LPPe_ReferencePointUniqueID */ +static int hf_lppe_referencePointReq_item_01 = -1; /* OMA_LPPe_ReferencePointUniqueID */ +static int hf_lppe_gnssTime = -1; /* GNSS_SystemTime */ +static int hf_lppe_networkTime = -1; /* NetworkTime */ +static int hf_lppe_relativeTime = -1; /* INTEGER_1_1024 */ +static int hf_lppe_windowSize = -1; /* INTEGER_1_1024 */ +static int hf_lppe_segmentedLI_session_ID = -1; /* INTEGER_1_256 */ +static int hf_lppe_highAccuracy3Dposition = -1; /* OMA_LPPe_HighAccuracy3Dposition */ +static int hf_lppe_localPosition = -1; /* OMA_LPPe_LocalPosition */ +static int hf_lppe_highAccuracy3Dvelocity = -1; /* OMA_LPPe_HighAccuracy3Dvelocity */ +static int hf_lppe_iP_Address_List = -1; /* OMA_LPPe_IP_Address_List */ +static int hf_lppe_locationInformationContainer = -1; /* OMA_LPPe_LocationInformationContainer */ +static int hf_lppe_providePeriodicLocInfoWithUpdate = -1; /* OMA_LPPe_ProvidePeriodicLocInfowithUpdate */ +static int hf_lppe_relativeLocationChangeList = -1; /* OMA_LPPe_RelativeLocationChangeList */ +static int hf_lppe_scheduledLocation = -1; /* OMA_LPPe_ScheduledLocation */ +static int hf_lppe_accessTypes = -1; /* OMA_LPPe_AccessTypes */ +static int hf_lppe_segmentedLITransfer = -1; /* OMA_LPPe_SegmentedLITransfer */ +static int hf_lppe_locationInformationTimeStamp = -1; /* OMA_LPPe_TimeStamp */ +static int hf_lppe_subjectLocation = -1; /* OMA_LPPe_RelativeLocation */ +static int hf_lppe_OMA_LPPe_IP_Address_List_item = -1; /* OMA_LPPe_IP_Address */ +static int hf_lppe_local_IP_Address = -1; /* T_local_IP_Address */ +static int hf_lppe_iPv4 = -1; /* BIT_STRING_SIZE_32 */ +static int hf_lppe_iPv6 = -1; /* BIT_STRING_SIZE_128 */ +static int hf_lppe_bearer = -1; /* OMA_LPPe_Bearer */ +static int hf_lppe_nat = -1; /* BOOLEAN */ +static int hf_lppe_typeOfLocInfoProvide = -1; /* OMA_LPPe_TypeOfLocInfoProvide */ +static int hf_lppe_OMA_LPPe_RelativeLocationChangeList_item = -1; /* OMA_LPPe_RelativeLocationChange */ +static int hf_lppe_relativeTime_01 = -1; /* INTEGER_0_65535 */ +static int hf_lppe_transactionID = -1; /* INTEGER_0_255 */ +static int hf_lppe_disposition = -1; /* T_disposition */ +static int hf_lppe_actualWindow = -1; /* T_actualWindow */ +static int hf_lppe_start = -1; /* INTEGER_M512_511 */ +static int hf_lppe_duration_02 = -1; /* INTEGER_0_2047 */ +static int hf_lppe_relativeTime_02 = -1; /* INTEGER_0_1024 */ +static int hf_lppe_abortCause = -1; /* T_abortCause */ +static int hf_lppe_periodicSessionIDtoAbort = -1; /* INTEGER_1_256 */ +static int hf_lppe_commonAssistData = -1; /* OMA_LPPe_AGNSS_CommonAssistData */ +static int hf_lppe_genericAssistData = -1; /* OMA_LPPe_AGNSS_GenericAssistData */ +static int hf_lppe_error_01 = -1; /* OMA_LPPe_AGNSS_Error */ +static int hf_lppe_ionosphericModel = -1; /* OMA_LPPe_AGNSS_IonosphericModel */ +static int hf_lppe_troposphereModel = -1; /* OMA_LPPe_AGNSS_TroposphereModel */ +static int hf_lppe_altitudeAssistance = -1; /* OMA_LPPe_AGNSS_AltitudeAssistanceList */ +static int hf_lppe_solarRadiation = -1; /* OMA_LPPe_AGNSS_SolarRadiation */ +static int hf_lppe_ccpAssistCommonProvide = -1; /* OMA_LPPe_AGNSS_CCPassistCommonProvide */ +static int hf_lppe_OMA_LPPe_AGNSS_GenericAssistData_item = -1; /* OMA_LPPe_AGNSS_GenericAssistDataElement */ +static int hf_lppe_gnss_ID = -1; /* GNSS_ID */ +static int hf_lppe_wideAreaIonoSurfacePerSVlist = -1; /* OMA_LPPe_AGNSS_WideAreaIonoSurfacePerSVlist */ +static int hf_lppe_mechanicsForAllSVs = -1; /* OMA_LPPe_AGNSS_MechanicsForAllSVs */ +static int hf_lppe_dcbsForAllSVs = -1; /* OMA_LPPe_AGNSS_DCBsForAllSVs */ +static int hf_lppe_navModelDegradationModel = -1; /* OMA_LPPe_AGNSS_NavModelDegradationModelList */ +static int hf_lppe_ccpAssistProvide = -1; /* OMA_LPPe_AGNSS_CCPassistGenericProvide */ +static int hf_lppe_navModelList = -1; /* OMA_LPPe_AGNSS_NavModelList */ +static int hf_lppe_staticModels = -1; /* T_staticModels */ +static int hf_lppe_localKlobucharModelList = -1; /* OMA_LPPe_AGNSS_LocalKlobucharModelList */ +static int hf_lppe_ionoStormIndication = -1; /* OMA_LPPe_AGNSS_IonoStormIndication */ +static int hf_lppe_waIono = -1; /* T_waIono */ +static int hf_lppe_controlParameters = -1; /* OMA_LPPe_AGNSS_WideAreaIonoSurfaceControlParametersProvide */ +static int hf_lppe_commonProvide = -1; /* OMA_LPPe_AGNSS_WideAreaIonoSurfaceCommon */ +static int hf_lppe_OMA_LPPe_AGNSS_LocalKlobucharModelList_item = -1; /* OMA_LPPe_AGNSS_LocalKlobucharModelElement */ +static int hf_lppe_klobucharModel = -1; /* SEQUENCE_SIZE_1_8_OF_OMA_LPPe_AGNSS_LocalKlobucharModel */ +static int hf_lppe_klobucharModel_item = -1; /* OMA_LPPe_AGNSS_LocalKlobucharModel */ +static int hf_lppe_alfa0 = -1; /* INTEGER_M128_127 */ +static int hf_lppe_alfa1 = -1; /* INTEGER_M128_127 */ +static int hf_lppe_alfa2 = -1; /* INTEGER_M128_127 */ +static int hf_lppe_alfa3 = -1; /* INTEGER_M128_127 */ +static int hf_lppe_beta0 = -1; /* INTEGER_M128_127 */ +static int hf_lppe_beta1 = -1; /* INTEGER_M128_127 */ +static int hf_lppe_beta2 = -1; /* INTEGER_M128_127 */ +static int hf_lppe_beta3 = -1; /* INTEGER_M128_127 */ +static int hf_lppe_area = -1; /* OMA_LPPe_ValidityArea */ +static int hf_lppe_stormList = -1; /* OMA_LPPe_AGNSS_StormList */ +static int hf_lppe_OMA_LPPe_AGNSS_StormList_item = -1; /* OMA_LPPe_AGNSS_StormElement */ +static int hf_lppe_rleListIono = -1; /* OMA_LPPe_AGNSS_RleListIono */ +static int hf_lppe_OMA_LPPe_AGNSS_RleListIono_item = -1; /* OMA_LPPe_AGNSS_RleIonoElement */ +static int hf_lppe_regionCount = -1; /* INTEGER_0_255 */ +static int hf_lppe_ionoIndex = -1; /* T_ionoIndex */ +static int hf_lppe_noaaScales = -1; /* OMA_LPPe_AGNSS_NoaaScales */ +static int hf_lppe_duration_03 = -1; /* OMA_LPPe_Duration */ +static int hf_lppe_rate = -1; /* INTEGER_1_64 */ +static int hf_lppe_referencePosition = -1; /* Ellipsoid_Point */ +static int hf_lppe_OMA_LPPe_AGNSS_WideAreaIonoSurfacePerSVlist_item = -1; /* OMA_LPPe_AGNSS_WideAreaIonoSurfacePerSVelement */ +static int hf_lppe_svID = -1; /* SV_ID */ +static int hf_lppe_a0 = -1; /* INTEGER_0_8191 */ +static int hf_lppe_e1 = -1; /* INTEGER_M4096_4095 */ +static int hf_lppe_n1 = -1; /* INTEGER_M4096_4095 */ +static int hf_lppe_e2 = -1; /* INTEGER_M4096_4095 */ +static int hf_lppe_n2 = -1; /* INTEGER_M4096_4095 */ +static int hf_lppe_en = -1; /* INTEGER_M4096_4095 */ +static int hf_lppe_troposphereDelayList = -1; /* OMA_LPPe_AGNSS_LocalTroposphereDelayList */ +static int hf_lppe_surfaceParametersList = -1; /* OMA_LPPe_AGNSS_LocalSurfaceParametersList */ +static int hf_lppe_OMA_LPPe_AGNSS_LocalTroposphereDelayList_item = -1; /* OMA_LPPe_AGNSS_LocalTroposphereDelayAreaElement */ +static int hf_lppe_refAltitude = -1; /* INTEGER_M1000_8192 */ +static int hf_lppe_gradientReferencePosition = -1; /* Ellipsoid_Point */ +static int hf_lppe_delayList = -1; /* SEQUENCE_SIZE_1_8_OF_OMA_LPPe_AGNSS_LocalTroposphereDelayTimeElement */ +static int hf_lppe_delayList_item = -1; /* OMA_LPPe_AGNSS_LocalTroposphereDelayTimeElement */ +static int hf_lppe_zh0 = -1; /* INTEGER_0_4095 */ +static int hf_lppe_eh = -1; /* INTEGER_0_4095 */ +static int hf_lppe_zw0 = -1; /* INTEGER_0_4095 */ +static int hf_lppe_ew = -1; /* INTEGER_0_4095 */ +static int hf_lppe_gN = -1; /* INTEGER_M8192_8191 */ +static int hf_lppe_gE = -1; /* INTEGER_M8192_8191 */ +static int hf_lppe_mappingFunctionParameters = -1; /* OMA_LPPe_AGNSS_MappingFunctionParameters */ +static int hf_lppe_OMA_LPPe_AGNSS_LocalSurfaceParametersList_item = -1; /* OMA_LPPe_AGNSS_LocalSurfaceParametersAreaElement */ +static int hf_lppe_parameterList = -1; /* SEQUENCE_SIZE_1_8_OF_OMA_LPPe_AGNSS_LocalSurfaceParametersTimeElement */ +static int hf_lppe_parameterList_item = -1; /* OMA_LPPe_AGNSS_LocalSurfaceParametersTimeElement */ +static int hf_lppe_pressure = -1; /* INTEGER_M1024_1023 */ +static int hf_lppe_pressureRate = -1; /* INTEGER_M128_127 */ +static int hf_lppe_gN_pressure = -1; /* INTEGER_M128_127 */ +static int hf_lppe_gE_pressure = -1; /* INTEGER_M128_127 */ +static int hf_lppe_temperature = -1; /* INTEGER_M64_63 */ +static int hf_lppe_temperatureRate = -1; /* INTEGER_M16_16 */ +static int hf_lppe_gN_temperature = -1; /* INTEGER_M8_7 */ +static int hf_lppe_gE_temperature = -1; /* INTEGER_M8_7 */ +static int hf_lppe_ah = -1; /* INTEGER_0_16383 */ +static int hf_lppe_bh = -1; /* INTEGER_0_16383 */ +static int hf_lppe_ch = -1; /* INTEGER_0_16383 */ +static int hf_lppe_aw = -1; /* INTEGER_0_16383 */ +static int hf_lppe_bw = -1; /* INTEGER_0_16383 */ +static int hf_lppe_cw = -1; /* INTEGER_0_16383 */ +static int hf_lppe_OMA_LPPe_AGNSS_AltitudeAssistanceList_item = -1; /* OMA_LPPe_AGNSS_AltitudeAssistanceAreaElement */ +static int hf_lppe_gradientReferencePosition_01 = -1; /* EllipsoidPointWithAltitudeAndUncertaintyEllipsoid */ +static int hf_lppe_pressureAssistanceList = -1; /* SEQUENCE_SIZE_1_16_OF_OMA_LPPe_AGNSS_PressureAssistanceElement */ +static int hf_lppe_pressureAssistanceList_item = -1; /* OMA_LPPe_AGNSS_PressureAssistanceElement */ +static int hf_lppe_gN_01 = -1; /* INTEGER_M128_127 */ +static int hf_lppe_gE_01 = -1; /* INTEGER_M128_127 */ +static int hf_lppe_solarRadiation_01 = -1; /* INTEGER_1000_2000 */ +static int hf_lppe_OMA_LPPe_AGNSS_MechanicsForAllSVs_item = -1; /* OMA_LPPe_AGNSS_MechanicsElement */ +static int hf_lppe_svid = -1; /* SV_ID */ +static int hf_lppe_mass = -1; /* INTEGER_1_4095 */ +static int hf_lppe_effectiveReflectivityArea = -1; /* INTEGER_1_511 */ +static int hf_lppe_pco = -1; /* OMA_LPPe_AGNSS_PCOelement */ +static int hf_lppe_svInfo = -1; /* T_svInfo */ +static int hf_lppe_svType = -1; /* OMA_LPPe_AGNSS_SVtype */ +static int hf_lppe_svNumber = -1; /* INTEGER_0_1000 */ +static int hf_lppe_xOffsetSBF = -1; /* INTEGER_M30000_30000 */ +static int hf_lppe_yOffsetSBF = -1; /* INTEGER_M30000_30000 */ +static int hf_lppe_zOffsetSBF = -1; /* INTEGER_M30000_30000 */ +static int hf_lppe_OMA_LPPe_AGNSS_DCBsForAllSVs_item = -1; /* OMA_LPPe_AGNSS_DCBlistElement */ +static int hf_lppe_reference = -1; /* T_reference */ +static int hf_lppe_signal = -1; /* GNSS_SignalID */ +static int hf_lppe_pd = -1; /* T_pd */ +static int hf_lppe_dcbList = -1; /* OMA_LPPe_AGNSS_DCBlist */ +static int hf_lppe_OMA_LPPe_AGNSS_DCBlist_item = -1; /* OMA_LPPe_AGNSS_DCBelement */ +static int hf_lppe_pd_01 = -1; /* T_pd_01 */ +static int hf_lppe_dcb = -1; /* INTEGER_M4096_4095 */ +static int hf_lppe_OMA_LPPe_AGNSS_NavModelDegradationModelList_item = -1; /* OMA_LPPe_AGNSS_NavModelDegradationModelElement */ +static int hf_lppe_clockDegradationModel = -1; /* OMA_LPPe_AGNSS_ClockModelDegradationModel */ +static int hf_lppe_orbitDegradationModel = -1; /* OMA_LPPe_AGNSS_OrbitModelDegradationModel */ +static int hf_lppe_clockRMS0 = -1; /* INTEGER_0_31 */ +static int hf_lppe_clockRMS1 = -1; /* INTEGER_0_7 */ +static int hf_lppe_orbitRMS0 = -1; /* INTEGER_0_31 */ +static int hf_lppe_orbitRMS1 = -1; /* INTEGER_0_7 */ +static int hf_lppe_ccpProvideCommonParameters = -1; /* OMA_LPPe_AGNSS_CCPprovideCommonParameters */ +static int hf_lppe_ccpProvideControlParameters = -1; /* OMA_LPPe_AGNSS_CCPprovideControlParameters */ +static int hf_lppe_ccpReferenceTime = -1; /* GNSS_SystemTime */ +static int hf_lppe_ccpSupportArea = -1; /* OMA_LPPe_AGNSS_CCPsupportArea */ +static int hf_lppe_ccpNeighborList = -1; /* OMA_LPPe_AGNSS_CCPreferenceStationList */ +static int hf_lppe_ccpReferenceStationList = -1; /* OMA_LPPe_AGNSS_CCPreferenceStationList */ +static int hf_lppe_areaDescription = -1; /* OMA_LPPe_ValidityArea */ +static int hf_lppe_signalSupport = -1; /* SEQUENCE_SIZE_1_8_OF_OMA_LPPe_AGNSS_CCPsignalSupport */ +static int hf_lppe_signalSupport_item = -1; /* OMA_LPPe_AGNSS_CCPsignalSupport */ +static int hf_lppe_gnss = -1; /* GNSS_ID */ +static int hf_lppe_signals = -1; /* GNSS_SignalIDs */ +static int hf_lppe_OMA_LPPe_AGNSS_CCPreferenceStationList_item = -1; /* OMA_LPPe_AGNSS_CCPreferenceStationElement */ +static int hf_lppe_referenceStationID = -1; /* OMA_LPPe_AGNSS_CCPreferenceStationID */ +static int hf_lppe_referenceStationLocation = -1; /* OMA_LPPe_HighAccuracy3Dposition */ +static int hf_lppe_antennaDescription = -1; /* OMA_LPPe_AGNSS_AntennaDescription */ +static int hf_lppe_OMA_LPPe_AGNSS_CCPassistGenericProvide_item = -1; /* OMA_LPPe_AGNSS_CCPassistGenericProvideElement */ +static int hf_lppe_ccpPerSignalList = -1; /* SEQUENCE_SIZE_1_8_OF_OMA_LPPe_AGNSS_CCPperSignalElement */ +static int hf_lppe_ccpPerSignalList_item = -1; /* OMA_LPPe_AGNSS_CCPperSignalElement */ +static int hf_lppe_signal_ID = -1; /* GNSS_SignalID */ +static int hf_lppe_ccpPerSVlist = -1; /* SEQUENCE_SIZE_1_64_OF_OMA_LPPe_AGNSS_CCPperSVelement */ +static int hf_lppe_ccpPerSVlist_item = -1; /* OMA_LPPe_AGNSS_CCPperSVelement */ +static int hf_lppe_integerCodePhase = -1; /* INTEGER_0_255 */ +static int hf_lppe_codePhase = -1; /* INTEGER_0_14989622 */ +static int hf_lppe_codePhaseError = -1; /* OMA_LPPe_AGNSS_CodePhaseError */ +static int hf_lppe_phaseRangeDelta = -1; /* INTEGER_M524288_524287 */ +static int hf_lppe_phaseRangeRMSerror = -1; /* INTEGER_0_127 */ +static int hf_lppe_lockIndicator = -1; /* BOOLEAN */ +static int hf_lppe_codePhaseRMSError = -1; /* INTEGER_0_63 */ +static int hf_lppe_cnr = -1; /* INTEGER_0_255 */ +static int hf_lppe_coordinateBased = -1; /* OMA_LPPe_AGNSS_NavModel_CoordinateBased */ +static int hf_lppe_fixedInterval = -1; /* T_fixedInterval */ +static int hf_lppe_interval = -1; /* INTEGER_1_30 */ +static int hf_lppe_bases = -1; /* T_bases */ +static int hf_lppe_baseForPosVel = -1; /* INTEGER_M100000000_100000000 */ +static int hf_lppe_baseForCcRate = -1; /* OMA_LPPe_AGNSS_NavModel_BigNumber */ +static int hf_lppe_referencedTo = -1; /* T_referencedTo */ +static int hf_lppe_pointList = -1; /* SEQUENCE_SIZE_1_97_OF_OMA_LPPe_AGNSS_NavModel_CoordinateBasedElement */ +static int hf_lppe_pointList_item = -1; /* OMA_LPPe_AGNSS_NavModel_CoordinateBasedElement */ +static int hf_lppe_time_of_record = -1; /* GNSS_SystemTime */ +static int hf_lppe_svIdList = -1; /* SEQUENCE_SIZE_1_64_OF_OMA_LPPe_AGNSS_NavModel_PVTelement */ +static int hf_lppe_svIdList_item = -1; /* OMA_LPPe_AGNSS_NavModel_PVTelement */ +static int hf_lppe_svClockOffset = -1; /* OMA_LPPe_AGNSS_NavModel_BigNumber */ +static int hf_lppe_ecefPositionX = -1; /* OMA_LPPe_AGNSS_NavModel_BigNumber */ +static int hf_lppe_ecefPositionY = -1; /* OMA_LPPe_AGNSS_NavModel_BigNumber */ +static int hf_lppe_ecefPositionZ = -1; /* OMA_LPPe_AGNSS_NavModel_BigNumber */ +static int hf_lppe_clockPosSTD = -1; /* OMA_LPPe_AGNSS_NavModel_STDmatrix */ +static int hf_lppe_rateRecord = -1; /* T_rateRecord */ +static int hf_lppe_svClockRate = -1; /* OMA_LPPe_AGNSS_NavModel_BigNumber */ +static int hf_lppe_ecefVelocityX = -1; /* OMA_LPPe_AGNSS_NavModel_BigNumber */ +static int hf_lppe_ecefVelocityY = -1; /* OMA_LPPe_AGNSS_NavModel_BigNumber */ +static int hf_lppe_ecefVelocityZ = -1; /* OMA_LPPe_AGNSS_NavModel_BigNumber */ +static int hf_lppe_clockRateVelSTD = -1; /* OMA_LPPe_AGNSS_NavModel_STDmatrix */ +static int hf_lppe_msb = -1; /* INTEGER_M1000000000_1000000000 */ +static int hf_lppe_lsb = -1; /* INTEGER_1_100 */ +static int hf_lppe_e11 = -1; /* INTEGER_0_1000 */ +static int hf_lppe_e22 = -1; /* INTEGER_0_1000 */ +static int hf_lppe_e33 = -1; /* INTEGER_0_1000 */ +static int hf_lppe_e44 = -1; /* INTEGER_0_1000000 */ +static int hf_lppe_e12 = -1; /* INTEGER_0_10000000 */ +static int hf_lppe_e13 = -1; /* INTEGER_0_10000000 */ +static int hf_lppe_e14 = -1; /* INTEGER_0_10000000 */ +static int hf_lppe_e23 = -1; /* INTEGER_0_10000000 */ +static int hf_lppe_e24 = -1; /* INTEGER_0_10000000 */ +static int hf_lppe_e34 = -1; /* INTEGER_0_10000000 */ +static int hf_lppe_commonAssistDataReq = -1; /* OMA_LPPe_AGNSS_CommonAssistanceDataReq */ +static int hf_lppe_genericAssistDataReq = -1; /* OMA_LPPe_AGNSS_GenericAssistanceDataReq */ +static int hf_lppe_ionosphericModelReq = -1; /* OMA_LPPe_AGNSS_IonosphericModelReq */ +static int hf_lppe_troposphereModelReq = -1; /* OMA_LPPe_AGNSS_TroposphereModelReq */ +static int hf_lppe_altitudeAssistanceReq = -1; /* OMA_LPPe_AGNSS_AltitudeAssistanceReq */ +static int hf_lppe_solarRadiationRequest = -1; /* OMA_LPPe_AGNSS_SolarRadiationReq */ +static int hf_lppe_ccpRequestControlParameters = -1; /* OMA_LPPe_AGNSS_CCPrequestControlParameters */ +static int hf_lppe_OMA_LPPe_AGNSS_GenericAssistanceDataReq_item = -1; /* OMA_LPPe_AGNSS_GenericAssistDataReqElement */ +static int hf_lppe_waIonoSurfaceReq = -1; /* OMA_LPPe_AGNSS_WaIonoSurfaceRequest */ +static int hf_lppe_mechanicsReq = -1; /* OMA_LPPe_AGNSS_MechanicsReq */ +static int hf_lppe_dcbReq = -1; /* OMA_LPPe_AGNSS_DCBreq */ +static int hf_lppe_navModelDegradationModelReq = -1; /* OMA_LPPe_AGNSS_NavModelDegradationModelReq */ +static int hf_lppe_ccpAssistGenericReq = -1; /* OMA_LPPe_AGNSS_CCPassistGenericReq */ +static int hf_lppe_navigationModelReq = -1; /* OMA_LPPe_AGNSS_NavigationModelReq */ +static int hf_lppe_staticModels_01 = -1; /* T_staticModels_01 */ +static int hf_lppe_ionoreq = -1; /* T_ionoreq */ +static int hf_lppe_requestBeginTime = -1; /* GNSS_SystemTime */ +static int hf_lppe_periodicModels = -1; /* T_periodicModels */ +static int hf_lppe_waIonoSurface = -1; /* OMA_LPPe_AGNSS_WideAreaIonoSurfaceControlParametersRequest */ +static int hf_lppe_troposphereModelReq_01 = -1; /* T_troposphereModelReq */ +static int hf_lppe_supportForMultipleGridPoints = -1; /* BOOLEAN */ +static int hf_lppe_reference_01 = -1; /* T_reference_01 */ +static int hf_lppe_pd_02 = -1; /* T_pd_02 */ +static int hf_lppe_massRequest = -1; /* BOOLEAN */ +static int hf_lppe_effectiveReflectivityAreaRequest = -1; /* BOOLEAN */ +static int hf_lppe_pcoRequest = -1; /* BOOLEAN */ +static int hf_lppe_svInfoRequest = -1; /* BOOLEAN */ +static int hf_lppe_ccpSupportAreaRequest = -1; /* NULL */ +static int hf_lppe_ccpNeighborListRequest = -1; /* NULL */ +static int hf_lppe_ccpCommonRequest = -1; /* T_ccpCommonRequest */ +static int hf_lppe_refStation = -1; /* T_refStation */ +static int hf_lppe_posBasedReferenceStationRequest = -1; /* T_posBasedReferenceStationRequest */ +static int hf_lppe_requestedReferenceStationLocation = -1; /* OMA_LPPe_HighAccuracy3Dposition */ +static int hf_lppe_qor = -1; /* OMA_LPPe_AGNSS_QoR */ +static int hf_lppe_idBasedReferenceStationRequest = -1; /* OMA_LPPe_AGNSS_ReferenceStationIDlist */ +static int hf_lppe_referenceStationKillList = -1; /* OMA_LPPe_AGNSS_ReferenceStationIDlist */ +static int hf_lppe_OMA_LPPe_AGNSS_ReferenceStationIDlist_item = -1; /* OMA_LPPe_AGNSS_CCPreferenceStationID */ +static int hf_lppe_ccpAssist_SignalsReq = -1; /* GNSS_SignalIDs */ +static int hf_lppe_navModelID_PrefList = -1; /* T_navModelID_PrefList */ +static int hf_lppe_navModelID_PrefList_item = -1; /* INTEGER_1_8 */ +static int hf_lppe_highAccuracyReferenceTime = -1; /* GNSS_SystemTime */ +static int hf_lppe_highAccuracyMeasurements = -1; /* OMA_LPPe_AGNSS_HAgnssProvide */ +static int hf_lppe_ionosphereMeasurements = -1; /* OMA_LPPe_AGNSS_IonosphereMeasurements */ +static int hf_lppe_localSurfaceMeasurements = -1; /* OMA_LPPe_AGNSS_LocalSurfaceMeasurements */ +static int hf_lppe_controlParameters_01 = -1; /* T_controlParameters */ +static int hf_lppe_measurements = -1; /* T_measurements */ +static int hf_lppe_position = -1; /* EllipsoidPointWithAltitudeAndUncertaintyEllipsoid */ +static int hf_lppe_referenceTime = -1; /* GNSS_SystemTime */ +static int hf_lppe_localPressure = -1; /* T_localPressure */ +static int hf_lppe_pressureUncertainty = -1; /* INTEGER_0_127 */ +static int hf_lppe_antennaOrientation = -1; /* OMA_LPPe_Orientation */ +static int hf_lppe_signalMeasurements = -1; /* SEQUENCE_SIZE_1_16_OF_OMA_LPPe_AGNSS_HAgnssMeasurementElement */ +static int hf_lppe_signalMeasurements_item = -1; /* OMA_LPPe_AGNSS_HAgnssMeasurementElement */ +static int hf_lppe_haGNSSperSignalList = -1; /* SEQUENCE_SIZE_1_8_OF_OMA_LPPe_HAgnssPerSignalElement */ +static int hf_lppe_haGNSSperSignalList_item = -1; /* OMA_LPPe_HAgnssPerSignalElement */ +static int hf_lppe_haGNSSperSVlist = -1; /* SEQUENCE_SIZE_1_64_OF_OMA_LPPe_HAgnssPerSVelement */ +static int hf_lppe_haGNSSperSVlist_item = -1; /* OMA_LPPe_HAgnssPerSVelement */ +static int hf_lppe_multipathDetection = -1; /* T_multipathDetection */ +static int hf_lppe_adr = -1; /* INTEGER_0_536870911 */ +static int hf_lppe_adrRMSerror = -1; /* INTEGER_0_127 */ +static int hf_lppe_tecPerSV = -1; /* OMA_LPPe_AGNSS_TECPerSV */ +static int hf_lppe_tecAtZenith = -1; /* OMA_LPPe_AGNSS_TECAtZenith */ +static int hf_lppe_OMA_LPPe_AGNSS_TECPerSV_item = -1; /* OMA_LPPe_AGNSS_TECPerSVElement */ +static int hf_lppe_azimuth = -1; /* INTEGER_0_359 */ +static int hf_lppe_elevation = -1; /* INTEGER_0_90 */ +static int hf_lppe_tecValue = -1; /* INTEGER_0_511 */ +static int hf_lppe_tecUncertainty = -1; /* INTEGER_0_63 */ +static int hf_lppe_tecValueAtZenith = -1; /* INTEGER_0_511 */ +static int hf_lppe_tecUncertaintyAtZenith = -1; /* INTEGER_0_63 */ +static int hf_lppe_temperatureMeasurement = -1; /* T_temperatureMeasurement */ +static int hf_lppe_temperatureUncertainty = -1; /* INTEGER_0_7 */ +static int hf_lppe_positioningInstructions = -1; /* OMA_LPPe_AGNSS_PositioningInstructions */ +static int hf_lppe_ionosphereMeasurementsReq = -1; /* T_ionosphereMeasurementsReq */ +static int hf_lppe_localSurfaceMeasurementReq = -1; /* OMA_LPPe_AGNSS_LocalSurfaceMeasurementReq */ +static int hf_lppe_highAccuracyMethodRequested = -1; /* BOOLEAN */ +static int hf_lppe_haGNSSreq = -1; /* OMA_LPPe_AGNSS_HAgnssRequestControlParameters */ +static int hf_lppe_rate_01 = -1; /* INTEGER_1_63 */ +static int hf_lppe_antennaInformationReq = -1; /* T_antennaInformationReq */ +static int hf_lppe_pressureInformationReq = -1; /* BOOLEAN */ +static int hf_lppe_signalReqList = -1; /* SEQUENCE_SIZE_1_16_OF_OMA_LPPe_AGNSS_HAgnssSignalReqElement */ +static int hf_lppe_signalReqList_item = -1; /* OMA_LPPe_AGNSS_HAgnssSignalReqElement */ +static int hf_lppe_gnssID = -1; /* GNSS_ID */ +static int hf_lppe_assistanceDataSupportList = -1; /* OMA_LPPe_AGNSS_AssistanceDataSupportList */ +static int hf_lppe_environmentObservationSupportList = -1; /* OMA_LPPe_AGNSS_EnvironmentObservationSupportList */ +static int hf_lppe_haGNSSsupport = -1; /* OMA_LPPe_AGNSS_HAgnssSupport */ +static int hf_lppe_commonAssistanceDataSupport = -1; /* OMA_LPPe_AGNSS_CommonAssistanceDataSupport */ +static int hf_lppe_genericAssistanceDataSupport = -1; /* OMA_LPPe_AGNSS_GenericAssistanceDataSupport */ +static int hf_lppe_ionosphereMeasurementSupport = -1; /* T_ionosphereMeasurementSupport */ +static int hf_lppe_pressureMeasurementSupported = -1; /* BOOLEAN */ +static int hf_lppe_temperatureMeasurementSupported = -1; /* BOOLEAN */ +static int hf_lppe_ionosphericModelSupport = -1; /* OMA_LPPe_AGNSS_IonosphericModelSupport */ +static int hf_lppe_troposphereModelSupport = -1; /* OMA_LPPe_AGNSS_TroposphereModelSupport */ +static int hf_lppe_altitudeAssistanceSupport = -1; /* OMA_LPPe_AGNSS_AltitudeAssistanceSupport */ +static int hf_lppe_solarRadiationSupport = -1; /* OMA_LPPe_AGNSS_SolarRadiationSupport */ +static int hf_lppe_ccpSupport = -1; /* OMA_LPPe_AGNSS_CCPsupport */ +static int hf_lppe_ionoModel = -1; /* T_ionoModel */ +static int hf_lppe_tropoModel = -1; /* T_tropoModel */ +static int hf_lppe_supportAreaAssistanceSupported = -1; /* BOOLEAN */ +static int hf_lppe_multiReferenceStationSupported = -1; /* BOOLEAN */ +static int hf_lppe_OMA_LPPe_AGNSS_GenericAssistanceDataSupport_item = -1; /* OMA_LPPe_AGNSS_GenericAssistDataSupportElement */ +static int hf_lppe_mechnanicsSupport = -1; /* OMA_LPPe_AGNSS_MechanicsSupport */ +static int hf_lppe_dcbSupport = -1; /* OMA_LPPe_AGNSS_DCBsupport */ +static int hf_lppe_navModelAccuracyModelDegradationSupport = -1; /* OMA_LPPe_AGNSS_NavModelAccuracyModelDegradationSupport */ +static int hf_lppe_ccpAssistanceSuppport = -1; /* GNSS_SignalIDs */ +static int hf_lppe_navModelSupport = -1; /* OMA_LPPe_AGNSS_NavModelSupport */ +static int hf_lppe_navModelSupport_01 = -1; /* T_navModelSupport */ +static int hf_lppe_navModelSupport_item = -1; /* INTEGER_1_8 */ +static int hf_lppe_modeSupport = -1; /* T_modeSupport */ +static int hf_lppe_haGNSSpressureInformationSupport = -1; /* BOOLEAN */ +static int hf_lppe_haGNSSantennaInformationSupport = -1; /* T_haGNSSantennaInformationSupport */ +static int hf_lppe_haGNSSperGNSSsupport = -1; /* SEQUENCE_SIZE_1_8_OF_OMA_LPPe_AGNSS_HAgnssPerGNSSsupport */ +static int hf_lppe_haGNSSperGNSSsupport_item = -1; /* OMA_LPPe_AGNSS_HAgnssPerGNSSsupport */ +static int hf_lppe_haGNSSsignalSupport = -1; /* GNSS_SignalIDs */ +static int hf_lppe_assistanceDataSupportListReq = -1; /* NULL */ +static int hf_lppe_environmentObservationSupportListReq = -1; /* NULL */ +static int hf_lppe_haGNSSsupportReq = -1; /* NULL */ +static int hf_lppe_agnss_locationServerErrorCauses = -1; /* OMA_LPPe_AGNSS_LocationServerErrorCauses */ +static int hf_lppe_agnss_targetDeviceErrorCauses = -1; /* OMA_LPPe_AGNSS_TargetDeviceErrorCauses */ +static int hf_lppe_waIonoErrorCauses = -1; /* T_waIonoErrorCauses */ +static int hf_lppe_ccpErrorCauses = -1; /* T_ccpErrorCauses */ +static int hf_lppe_highAccuracyErrorCauses = -1; /* T_highAccuracyErrorCauses */ +static int hf_lppe_ionosphereMeasurementErrorCauses = -1; /* T_ionosphereMeasurementErrorCauses */ +static int hf_lppe_environmentObservationErrorCauses = -1; /* T_environmentObservationErrorCauses */ +static int hf_lppe_haGNSSerrorCauses = -1; /* T_haGNSSerrorCauses */ +static int hf_lppe_stationID = -1; /* INTEGER_0_65535 */ +static int hf_lppe_antennaDescription_01 = -1; /* T_antennaDescription */ +static int hf_lppe_igsAntennaName = -1; /* OMA_LPPe_CharArray */ +static int hf_lppe_proprietaryName = -1; /* OMA_LPPe_CharArray */ +static int hf_lppe_antennaSetupID = -1; /* INTEGER_0_255 */ +static int hf_lppe_antennaSerialNumber = -1; /* OMA_LPPe_CharArray */ +static int hf_lppe_targetDeviceAbortCauses = -1; /* T_targetDeviceAbortCauses */ +static int hf_lppe_ccpAbort = -1; /* T_ccpAbort */ +static int hf_lppe_waIonoAbort = -1; /* T_waIonoAbort */ +static int hf_lppe_otdoa_ReferenceCellInfo = -1; /* OMA_LPPe_OTDOA_ReferenceCellInfo */ +static int hf_lppe_otdoa_NeighbourCellInfo = -1; /* OMA_LPPe_OTDOA_NeighbourCellInfoList */ +static int hf_lppe_otdoa_Error = -1; /* OMA_LPPe_OTDOA_Error */ +static int hf_lppe_referenceCellInfo = -1; /* OTDOA_ReferenceCellInfo */ +static int hf_lppe_positionCalculationInfoRef = -1; /* OMA_LPPe_OTDOA_PositionCalculationInfoRef */ +static int hf_lppe_systemFrameNumber = -1; /* BIT_STRING_SIZE_10 */ +static int hf_lppe_rtdReferenceStd = -1; /* OMA_LPPe_OTDOA_RTDquality */ +static int hf_lppe_cellLocation = -1; /* T_cellLocation */ +static int hf_lppe_reference_point = -1; /* OMA_LPPe_ReferencePoint */ +static int hf_lppe_relative_location = -1; /* OMA_LPPe_RelativeLocation */ +static int hf_lppe_femtoCellInfo = -1; /* T_femtoCellInfo */ +static int hf_lppe_location_reliability = -1; /* INTEGER_1_100 */ +static int hf_lppe_OMA_LPPe_OTDOA_NeighbourCellInfoList_item = -1; /* OMA_LPPe_OTDOA_NeighbourFreqCellInfoList */ +static int hf_lppe_neighbourCellInfoList_eNB = -1; /* SEQUENCE_SIZE_1_maxLTEeNBs_OF_OMA_LPPe_OTDOA_NeighbourCellInfoElement_eNB */ +static int hf_lppe_neighbourCellInfoList_eNB_item = -1; /* OMA_LPPe_OTDOA_NeighbourCellInfoElement_eNB */ +static int hf_lppe_neighbourCellInfoList_HeNB = -1; /* SEQUENCE_SIZE_1_maxLTEHeNBs_OF_OMA_LPPe_OTDOA_NeighbourCellInfoElement_HeNB */ +static int hf_lppe_neighbourCellInfoList_HeNB_item = -1; /* OMA_LPPe_OTDOA_NeighbourCellInfoElement_HeNB */ +static int hf_lppe_relative_Location = -1; /* OMA_LPPe_RelativeLocation */ +static int hf_lppe_otdoa_eNB_CellDataList = -1; /* SEQUENCE_SIZE_1_maxLTEMacroCells_OF_OMA_LPPe_OTDOA_CellData */ +static int hf_lppe_otdoa_eNB_CellDataList_item = -1; /* OMA_LPPe_OTDOA_CellData */ +static int hf_lppe_otdoa_HeNB_CellDataList = -1; /* OMA_LPPe_OTDOA_CellData */ +static int hf_lppe_otdoa_NeighbourCellInfoElement = -1; /* OTDOA_NeighbourCellInfoElement */ +static int hf_lppe_rtdInfo = -1; /* T_rtdInfo */ +static int hf_lppe_subframeOffset = -1; /* INTEGER_0_10229 */ +static int hf_lppe_fineRTD = -1; /* INTEGER_0_99999 */ +static int hf_lppe_fineRTDstd = -1; /* OMA_LPPe_OTDOA_RTDquality */ +static int hf_lppe_fineRTDdriftRate = -1; /* INTEGER_M100_100 */ +static int hf_lppe_resolution = -1; /* T_resolution */ +static int hf_lppe_quality = -1; /* INTEGER_0_127 */ +static int hf_lppe_lteCell = -1; /* T_lteCell */ +static int hf_lppe_physCellId = -1; /* INTEGER_0_503 */ +static int hf_lppe_eARFCN = -1; /* ARFCN_ValueEUTRA */ +static int hf_lppe_ecgi = -1; /* CellGlobalIdEUTRA_AndUTRA */ +static int hf_lppe_requestedCells = -1; /* T_requestedCells */ +static int hf_lppe_otdoaLocationInformation = -1; /* OMA_LPPe_OTDOA_LocationInformation */ +static int hf_lppe_otdoaError = -1; /* OMA_LPPe_OTDOA_Error */ +static int hf_lppe_cellGlobalId = -1; /* CellGlobalIdEUTRA_AndUTRA */ +static int hf_lppe_assistanceAvailability = -1; /* BOOLEAN */ +static int hf_lppe_eNodeB_AD_sup = -1; /* T_eNodeB_AD_sup */ +static int hf_lppe_home_eNodeB_AD_sup = -1; /* T_home_eNodeB_AD_sup */ +static int hf_lppe_locationServerErrorCauses = -1; /* OMA_LPPe_OTDOA_LocationServerErrorCauses */ +static int hf_lppe_targetDeviceErrorCauses = -1; /* OMA_LPPe_OTDOA_TargetDeviceErrorCauses */ +static int hf_lppe_cause = -1; /* T_cause */ +static int hf_lppe_cause_01 = -1; /* T_cause_01 */ +static int hf_lppe_referenceBTS = -1; /* OMA_LPPe_EOTD_ReferenceBTSForAssistance */ +static int hf_lppe_msrAssistDataList = -1; /* OMA_LPPe_EOTD_MsrAssistDataList */ +static int hf_lppe_systemInfoAssistDataList = -1; /* OMA_LPPe_EOTD_SystemInfoAssistDataList */ +static int hf_lppe_eotdError = -1; /* OMA_LPPe_EOTD_Error */ +static int hf_lppe_bsicAndCarrier = -1; /* OMA_LPPe_CellNonUniqueIDGERAN */ +static int hf_lppe_timeSlotScheme = -1; /* OMA_LPPe_EOTD_TimeSlotScheme */ +static int hf_lppe_btsPosition = -1; /* T_btsPosition */ +static int hf_lppe_ellipsoidPoint = -1; /* Ellipsoid_Point */ +static int hf_lppe_ellipsoidPointWithAltitudeAndUncertaintyEllipsoid = -1; /* EllipsoidPointWithAltitudeAndUncertaintyEllipsoid */ +static int hf_lppe_OMA_LPPe_EOTD_MsrAssistDataList_item = -1; /* OMA_LPPe_EOTD_MsrAssistBTS */ +static int hf_lppe_multiFrameOffset = -1; /* OMA_LPPe_EOTD_MultiFrameOffset */ +static int hf_lppe_roughRTD = -1; /* OMA_LPPe_EOTD_RoughRTD */ +static int hf_lppe_expectedOTD = -1; /* OMA_LPPe_EOTD_ExpectedOTD */ +static int hf_lppe_calcAssistanceBTS = -1; /* OMA_LPPe_EOTD_CalcAssistanceBTS */ +static int hf_lppe_OMA_LPPe_EOTD_SystemInfoAssistDataList_item = -1; /* OMA_LPPe_EOTD_SystemInfoAssistBTS */ +static int hf_lppe_notPresent = -1; /* NULL */ +static int hf_lppe_present = -1; /* OMA_LPPe_EOTD_AssistBTSData */ +static int hf_lppe_fineRTD_01 = -1; /* OMA_LPPe_EOTD_FineRTD */ +static int hf_lppe_relativePos = -1; /* OMA_LPPe_EOTD_relativePos */ +static int hf_lppe_relativeNorth_01 = -1; /* OMA_LPPe_EOTD_RelDistance */ +static int hf_lppe_relativeEast_01 = -1; /* OMA_LPPe_EOTD_RelDistance */ +static int hf_lppe_relativeAlt = -1; /* OMA_LPPe_EOTD_RelativeAlt */ +static int hf_lppe_eotdAssistanceReq = -1; /* T_eotdAssistanceReq */ +static int hf_lppe_eotdMsrElement = -1; /* OMA_LPPe_EOTD_MsrElement */ +static int hf_lppe_refFrameNumber = -1; /* INTEGER_0_42431 */ +static int hf_lppe_referenceTimeSlot = -1; /* OMA_LPPe_EOTD_ModuloTimeSlot */ +static int hf_lppe_toaMeasurementsOfRef = -1; /* OMA_LPPe_EOTD_TOA_MeasurementsOfRef */ +static int hf_lppe_stdResolution = -1; /* BIT_STRING_SIZE_2 */ +static int hf_lppe_taCorrection = -1; /* INTEGER_0_960 */ +static int hf_lppe_otd_FirstSetMsrs = -1; /* SEQUENCE_SIZE_1_15_OF_OMA_LPPe_EOTD_MeasurementWithID */ +static int hf_lppe_otd_FirstSetMsrs_item = -1; /* OMA_LPPe_EOTD_MeasurementWithID */ +static int hf_lppe_refQuality = -1; /* BIT_STRING_SIZE_5 */ +static int hf_lppe_numOfMeasurements = -1; /* BIT_STRING_SIZE_3 */ +static int hf_lppe_neighborIdentity = -1; /* OMA_LPPe_EOTD_NeighborIdentity */ +static int hf_lppe_nborTimeSlot = -1; /* OMA_LPPe_EOTD_ModuloTimeSlot */ +static int hf_lppe_eotdQuality = -1; /* OMA_LPPe_EOTD_EOTDQuality */ +static int hf_lppe_otdValue = -1; /* OMA_LPPe_EOTD_OTDValue */ +static int hf_lppe_ci = -1; /* OMA_LPPe_EOTD_CellID */ +static int hf_lppe_multiFrameCarrier = -1; /* OMA_LPPe_EOTD_MultiFrameCarrier */ +static int hf_lppe_requestIndex = -1; /* OMA_LPPe_EOTD_RequestIndex */ +static int hf_lppe_systemInfoIndex = -1; /* OMA_LPPe_EOTD_SystemInfoIndex */ +static int hf_lppe_ciAndLac = -1; /* OMA_LPPe_CellLocalIdGERAN */ +static int hf_lppe_nbrOfMeasurements = -1; /* BIT_STRING_SIZE_3 */ +static int hf_lppe_stdOfEOTD = -1; /* BIT_STRING_SIZE_5 */ +static int hf_lppe_bcchCarrier = -1; /* OMA_LPPe_EOTD_BCCHCarrier */ +static int hf_lppe_eotdSupport = -1; /* T_eotdSupport */ +static int hf_lppe_locationServerErrorCauses_01 = -1; /* OMA_LPPe_EOTD_LocationServerErrorCauses */ +static int hf_lppe_targetDeviceErrorCauses_01 = -1; /* OMA_LPPe_EOTD_TargetDeviceErrorCauses */ +static int hf_lppe_cause_02 = -1; /* T_cause_02 */ +static int hf_lppe_cause_03 = -1; /* T_cause_03 */ +static int hf_lppe_expectedOTD_01 = -1; /* INTEGER_0_1250 */ +static int hf_lppe_expOTDUncertainty = -1; /* INTEGER_0_7 */ +static int hf_lppe_referenceCellInfo_01 = -1; /* OMA_LPPe_OTDOA_UTRA_ReferenceCellInfo */ +static int hf_lppe_neigborCellList = -1; /* OMA_LPPe_OTDOA_UTRA_NeighborCellList */ +static int hf_lppe_otdoaUtraError = -1; /* OMA_LPPe_OTDOA_UTRA_Error */ +static int hf_lppe_sfn = -1; /* INTEGER_0_4095 */ +static int hf_lppe_modeSpecificInfo = -1; /* T_modeSpecificInfo */ +static int hf_lppe_fdd = -1; /* T_fdd */ +static int hf_lppe_primaryCPICH_info = -1; /* OMA_LPPe_OTDOA_UTRA_PrimaryCPICH_Info */ +static int hf_lppe_tdd = -1; /* T_tdd */ +static int hf_lppe_cellAndChannelIdentity = -1; /* OMA_LPPe_OTDOA_UTRA_CellAndChannelIdentity */ +static int hf_lppe_frequencyInfo = -1; /* OMA_LPPe_UTRA_FrequencyInfo */ +static int hf_lppe_refPosAssist = -1; /* OMA_LPPe_OTDOA_UTRA_RefPosAssist */ +static int hf_lppe_ipdl_parameters = -1; /* OMA_LPPe_OTDOA_UTRA_IPDL_Parameters */ +static int hf_lppe_cellPosition = -1; /* T_cellPosition */ +static int hf_lppe_ellipsoidPointWithAltitude = -1; /* EllipsoidPointWithAltitude */ +static int hf_lppe_roundTripTime = -1; /* INTEGER_0_327 */ +static int hf_lppe_roundTripTimeExtension = -1; /* INTEGER_0_70274 */ +static int hf_lppe_OMA_LPPe_OTDOA_UTRA_NeighborCellList_item = -1; /* OMA_LPPe_OTDOA_UTRA_NeighborCellInfo */ +static int hf_lppe_modeSpecificInfo_01 = -1; /* T_modeSpecificInfo_01 */ +static int hf_lppe_fdd_01 = -1; /* T_fdd_01 */ +static int hf_lppe_tdd_01 = -1; /* T_tdd_01 */ +static int hf_lppe_sfn_SFN_relTimeDifference = -1; /* OMA_LPPe_OTDOA_UTRA_SFN_SFN_RelTimeDifference1 */ +static int hf_lppe_sfn_offsetValidity = -1; /* OMA_LPPe_OTDOA_UTRA_SFN_OffsetValidity */ +static int hf_lppe_sfn_SFN_drift = -1; /* OMA_LPPe_OTDOA_UTRA_SFN_SFN_Drift */ +static int hf_lppe_searchWindowSize = -1; /* OMA_LPPe_OTDOA_UTRA_SearchWindowSize */ +static int hf_lppe_positioningAssistance = -1; /* OMA_LPPe_OTDOA_UTRA_PositioningAssistance */ +static int hf_lppe_sfn_offset = -1; /* INTEGER_0_4095 */ +static int hf_lppe_sfn_sfn_relTimeDifference = -1; /* INTEGER_0_38399 */ +static int hf_lppe_relativeNorth_02 = -1; /* INTEGER_M20000_20000 */ +static int hf_lppe_relativeEast_02 = -1; /* INTEGER_M20000_20000 */ +static int hf_lppe_relativeAltitude_01 = -1; /* INTEGER_M4000_4000 */ +static int hf_lppe_fineSFN_SFN = -1; /* OMA_LPPe_OTDOA_UTRA_fineSFN_SFN */ +static int hf_lppe_modeSpecificInfo_02 = -1; /* T_modeSpecificInfo_02 */ +static int hf_lppe_fdd_02 = -1; /* T_fdd_02 */ +static int hf_lppe_ip_spacing = -1; /* OMA_LPPe_OTDOA_UTRA_IP_Spacing */ +static int hf_lppe_ip_length = -1; /* OMA_LPPe_OTDOA_UTRA_IP_Length */ +static int hf_lppe_ip_Offset = -1; /* INTEGER_0_9 */ +static int hf_lppe_seed = -1; /* INTEGER_0_63 */ +static int hf_lppe_burstModeParameters = -1; /* OMA_LPPe_OTDOA_UTRA_BurstModeParameters */ +static int hf_lppe_tdd_02 = -1; /* T_tdd_02 */ +static int hf_lppe_ip_spacing_tdd = -1; /* OMA_LPPe_OTDOA_UTRA_IP_Spacing_TDD */ +static int hf_lppe_ip_slot = -1; /* INTEGER_0_14 */ +static int hf_lppe_ip_start = -1; /* INTEGER_0_4095 */ +static int hf_lppe_ip_PCCPCH = -1; /* OMA_LPPe_OTDOA_UTRA_IP_PCCPCH */ +static int hf_lppe_burstStart = -1; /* INTEGER_0_15 */ +static int hf_lppe_burstLength = -1; /* INTEGER_10_25 */ +static int hf_lppe_burstFreq = -1; /* INTEGER_1_16 */ +static int hf_lppe_otdoaUtraAssistanceReq = -1; /* T_otdoaUtraAssistanceReq */ +static int hf_lppe_otdoaUtraMeasurement = -1; /* OMA_LPPe_OTDOA_UTRA_Measurement */ +static int hf_lppe_timeStampData = -1; /* OMA_LPPe_OTDOA_UTRA_TimeStampData */ +static int hf_lppe_modeSpecificInfoMeas = -1; /* T_modeSpecificInfoMeas */ +static int hf_lppe_fdd_03 = -1; /* T_fdd_03 */ +static int hf_lppe_referenceCellIdentity = -1; /* OMA_LPPe_OTDOA_UTRA_PrimaryCPICH_Info */ +static int hf_lppe_ue_RX_TX_TimeDifferenceType2Info = -1; /* OMA_LPPe_OTDOA_UTRA_UE_RX_TX_TimeDifferenceType2Info */ +static int hf_lppe_tdd_03 = -1; /* T_tdd_03 */ +static int hf_lppe_neighborList = -1; /* OMA_LPPe_OTDOA_UTRA_NeighborList */ +static int hf_lppe_ue_RX_TX_timeDifferenceType2 = -1; /* OMA_LPPe_OTDOA_UTRA_TimeDifferenceType2 */ +static int hf_lppe_neighborQuality = -1; /* OMA_LPPe_OTDOA_UTRA_NeighborQuality */ +static int hf_lppe_OMA_LPPe_OTDOA_UTRA_NeighborList_item = -1; /* OMA_LPPe_OTDOA_UTRA_Neighbor */ +static int hf_lppe_modeSpecificInfo_03 = -1; /* T_modeSpecificInfo_03 */ +static int hf_lppe_fdd_04 = -1; /* T_fdd_04 */ +static int hf_lppe_neighborIdentity_01 = -1; /* OMA_LPPe_OTDOA_UTRA_PrimaryCPICH_Info */ +static int hf_lppe_ue_RX_TX_timeDifferenceType2Info = -1; /* OMA_LPPe_OTDOA_UTRA_UE_RX_TX_TimeDifferenceType2Info */ +static int hf_lppe_tdd_04 = -1; /* T_tdd_04 */ +static int hf_lppe_uarfcn = -1; /* ARFCN_ValueUTRA */ +static int hf_lppe_sfn_sfn_ObsTimeDifference2 = -1; /* OMA_LPPe_OTDOA_UTRA_SFN_SFN_ObsTimeDifference2 */ +static int hf_lppe_quality_01 = -1; /* OMA_LPPe_OTDOA_UTRA_Quality */ +static int hf_lppe_numberOfOTDOA_Measurements = -1; /* BIT_STRING_SIZE_3 */ +static int hf_lppe_stdOfOTDOA_Measurements = -1; /* BIT_STRING_SIZE_5 */ +static int hf_lppe_utraCellGlobalID = -1; /* CellGlobalIdEUTRA_AndUTRA */ +static int hf_lppe_nonUniqueCellID = -1; /* T_nonUniqueCellID */ +static int hf_lppe_primaryScramblingCode = -1; /* OMA_LPPe_OTDOA_UTRA_PrimaryScramblingCode */ +static int hf_lppe_cellParametersId = -1; /* OMA_LPPe_OTDOA_UTRA_CellParametersID */ +static int hf_lppe_ueBasedSupported = -1; /* BOOLEAN */ +static int hf_lppe_ueAssistedSupported = -1; /* BOOLEAN */ +static int hf_lppe_ipdlSupported = -1; /* BOOLEAN */ +static int hf_lppe_locationServerErrorCauses_02 = -1; /* OMA_LPPe_OTDOA_UTRA_LocationServerErrorCauses */ +static int hf_lppe_targetDeviceErrorCauses_02 = -1; /* OMA_LPPe_OTDOA_UTRA_TargetDeviceErrorCauses */ +static int hf_lppe_cause_04 = -1; /* T_cause_04 */ +static int hf_lppe_cause_05 = -1; /* T_cause_05 */ +static int hf_lppe_burstType = -1; /* OMA_LPPe_OTDOA_UTRA_BurstType */ +static int hf_lppe_midambleShift = -1; /* OMA_LPPe_OTDOA_UTRA_MidambleShiftLong */ +static int hf_lppe_timeslot = -1; /* OMA_LPPe_OTDOA_UTRA_TimeSlotNumber */ +static int hf_lppe_cellParametersID = -1; /* OMA_LPPe_OTDOA_UTRA_CellParametersID */ +static int hf_lppe_ecid_LTE_NetworkData = -1; /* SEQUENCE_SIZE_1_maxLTENetworks_OF_OMA_LPPe_ECID_LTE_NetworkData */ +static int hf_lppe_ecid_LTE_NetworkData_item = -1; /* OMA_LPPe_ECID_LTE_NetworkData */ +static int hf_lppe_ecid_LTE_Error = -1; /* OMA_LPPe_ECID_LTE_Error */ +static int hf_lppe_plmn_Identity = -1; /* T_plmn_Identity */ +static int hf_lppe_mcc = -1; /* T_mcc */ +static int hf_lppe_mcc_item = -1; /* INTEGER_0_9 */ +static int hf_lppe_mnc = -1; /* T_mnc */ +static int hf_lppe_mnc_item = -1; /* INTEGER_0_9 */ +static int hf_lppe_multiple_PLMNs = -1; /* BOOLEAN */ +static int hf_lppe_reference_location = -1; /* OMA_LPPe_ReferencePoint */ +static int hf_lppe_ecid_lte_eNodeB_list = -1; /* SEQUENCE_SIZE_1_maxLTEeNBs_OF_OMA_LPPe_ECID_LTE_eNodeBData */ +static int hf_lppe_ecid_lte_eNodeB_list_item = -1; /* OMA_LPPe_ECID_LTE_eNodeBData */ +static int hf_lppe_ecid_lte_HeNB_list = -1; /* SEQUENCE_SIZE_1_maxLTEHeNBs_OF_OMA_LPPe_ECID_LTE_HeNBData */ +static int hf_lppe_ecid_lte_HeNB_list_item = -1; /* OMA_LPPe_ECID_LTE_HeNBData */ +static int hf_lppe_ecid_lte_eNodeB_CellData = -1; /* SEQUENCE_SIZE_1_maxLTEMacroCells_OF_OMA_LPPe_ECID_LTE_CellData */ +static int hf_lppe_ecid_lte_eNodeB_CellData_item = -1; /* OMA_LPPe_ECID_LTE_CellData */ +static int hf_lppe_coverageArea = -1; /* OMA_LPPe_WLANFemtoCoverageArea */ +static int hf_lppe_ecid_lte_HeNB_CellData = -1; /* OMA_LPPe_ECID_LTE_CellData */ +static int hf_lppe_cellIdentity_01 = -1; /* BIT_STRING_SIZE_28 */ +static int hf_lppe_dl_CarrierFreq = -1; /* ARFCN_ValueEUTRA */ +static int hf_lppe_rs_transmit_power = -1; /* INTEGER_M127_128 */ +static int hf_lppe_antennaPortConfig = -1; /* T_antennaPortConfig */ +static int hf_lppe_antenna_gain = -1; /* INTEGER_M127_128 */ +static int hf_lppe_beam_width = -1; /* INTEGER_1_360 */ +static int hf_lppe_transmit_direction = -1; /* INTEGER_0_360 */ +static int hf_lppe_frequency_accuracy = -1; /* INTEGER_0_100 */ +static int hf_lppe_eNBrequestedAD = -1; /* T_eNBrequestedAD */ +static int hf_lppe_heNBrequestedAD = -1; /* T_heNBrequestedAD */ +static int hf_lppe_ecid_LTE_CombinedLocationInformation = -1; /* SEQUENCE_SIZE_1_maxLTEECIDSize_OF_OMA_LPPe_ECID_LTE_LocationInformationList */ +static int hf_lppe_ecid_LTE_CombinedLocationInformation_item = -1; /* OMA_LPPe_ECID_LTE_LocationInformationList */ +static int hf_lppe_ecid_LTE_LocationInformation = -1; /* OMA_LPPe_ECID_LTE_LocationInformation */ +static int hf_lppe_relativeTimeStamp = -1; /* INTEGER_0_65535 */ +static int hf_lppe_servingFlag = -1; /* BOOLEAN */ +static int hf_lppe_lpp_ECID_SignalMeasurementInformation = -1; /* ECID_SignalMeasurementInformation */ +static int hf_lppe_requestedMeasurements = -1; /* T_requestedMeasurements */ +static int hf_lppe_ecid_lte_MeasSupported = -1; /* T_ecid_lte_MeasSupported */ +static int hf_lppe_ecid_lte_eNodeB_ADSupported = -1; /* T_ecid_lte_eNodeB_ADSupported */ +static int hf_lppe_ecid_utra_HeNB_ADSupported = -1; /* T_ecid_utra_HeNB_ADSupported */ +static int hf_lppe_locationServerErrorCauses_03 = -1; /* OMA_LPPe_ECID_LTE_LocationServerErrorCauses */ +static int hf_lppe_targetDeviceErrorCauses_03 = -1; /* OMA_LPPe_ECID_LTE_TargetDeviceErrorCauses */ +static int hf_lppe_cause_06 = -1; /* T_cause_06 */ +static int hf_lppe_eNodeBMandatoryDataUnavailable = -1; /* NULL */ +static int hf_lppe_eNodeBLocationsUnavailable = -1; /* NULL */ +static int hf_lppe_eNodeBcellTransmitPowerUnavailable = -1; /* NULL */ +static int hf_lppe_eNodeBcellAntennaPortConfigUnavailable = -1; /* NULL */ +static int hf_lppe_eNodeBcallAntennaGainUnavailable = -1; /* NULL */ +static int hf_lppe_eNodeBcellBeamWidthUnavailable = -1; /* NULL */ +static int hf_lppe_eNodeBcellTransmitDirectionUnavailable = -1; /* NULL */ +static int hf_lppe_eNodeBcellFrequencyAccuracyUnavailable = -1; /* NULL */ +static int hf_lppe_eNodeBnonservingADUnavailable = -1; /* NULL */ +static int hf_lppe_heNBMandatoryDataUnavailable = -1; /* NULL */ +static int hf_lppe_heNBLocationUnavailable = -1; /* NULL */ +static int hf_lppe_heNBLocationReliabilityUnavailable = -1; /* NULL */ +static int hf_lppe_heNBcellTransmitPowerUnavailable = -1; /* NULL */ +static int hf_lppe_heNBcellAntennaPortConfigUnavailable = -1; /* NULL */ +static int hf_lppe_heNBcellFrequencyAccuracyUnavailable = -1; /* NULL */ +static int hf_lppe_heNBCoverageAreaUnavailable = -1; /* NULL */ +static int hf_lppe_heNBnonservingADUnavailable = -1; /* NULL */ +static int hf_lppe_cause_07 = -1; /* T_cause_07 */ +static int hf_lppe_rsrpMeasurementNotPossible = -1; /* NULL */ +static int hf_lppe_rsrqMeasurementNotPossible = -1; /* NULL */ +static int hf_lppe_ueRxTxMeasurementNotPossible = -1; /* NULL */ +static int hf_lppe_non_servingMeasurementsNotAvailable = -1; /* NULL */ +static int hf_lppe_historicMeasurementsNotAvailable = -1; /* NULL */ +static int hf_lppe_ecid_gsm_NetworkData = -1; /* SEQUENCE_SIZE_1_maxGSMNetworks_OF_OMA_LPPe_ECID_GSM_NetworkData */ +static int hf_lppe_ecid_gsm_NetworkData_item = -1; /* OMA_LPPe_ECID_GSM_NetworkData */ +static int hf_lppe_ecid_gsm_Error = -1; /* OMA_LPPe_ECID_GSM_Error */ +static int hf_lppe_plmn_Identity_01 = -1; /* T_plmn_Identity_01 */ +static int hf_lppe_mcc_01 = -1; /* T_mcc_01 */ +static int hf_lppe_mnc_01 = -1; /* T_mnc_01 */ +static int hf_lppe_base_station_list = -1; /* SEQUENCE_SIZE_1_maxGSMBaseStations_OF_OMA_LPPe_ECID_GSM_BaseStationData */ +static int hf_lppe_base_station_list_item = -1; /* OMA_LPPe_ECID_GSM_BaseStationData */ +static int hf_lppe_ecid_gsm_CellData = -1; /* SEQUENCE_SIZE_1_maxGSMCells_OF_OMA_LPPe_ECID_GSM_CellData */ +static int hf_lppe_ecid_gsm_CellData_item = -1; /* OMA_LPPe_ECID_GSM_CellData */ +static int hf_lppe_cellNonUniqueIDGERAN = -1; /* OMA_LPPe_CellNonUniqueIDGERAN */ +static int hf_lppe_cellLocalIDGERAN = -1; /* OMA_LPPe_CellLocalIdGERAN */ +static int hf_lppe_transmit_power = -1; /* INTEGER_M127_128 */ +static int hf_lppe_requestedAD = -1; /* T_requestedAD */ +static int hf_lppe_ecid_GSM_CombinedLocationInformation = -1; /* SEQUENCE_SIZE_1_maxGSMECIDSize_OF_OMA_LPPe_ECID_GSM_LocationInformationList */ +static int hf_lppe_ecid_GSM_CombinedLocationInformation_item = -1; /* OMA_LPPe_ECID_GSM_LocationInformationList */ +static int hf_lppe_ecid_GSM_Error = -1; /* OMA_LPPe_ECID_GSM_Error */ +static int hf_lppe_ecid_GSM_LocationInformation = -1; /* OMA_LPPe_ECID_GSM_LocationInformation */ +static int hf_lppe_cellGlobalIdGERAN = -1; /* CellGlobalIdGERAN */ +static int hf_lppe_rxLevel = -1; /* INTEGER_0_63 */ +static int hf_lppe_tA = -1; /* INTEGER_0_255 */ +static int hf_lppe_nMR_GERAN = -1; /* OMA_LPPe_NMR_GERAN */ +static int hf_lppe_OMA_LPPe_NMR_GERAN_item = -1; /* OMA_LPPe_NMR_GERAN_item */ +static int hf_lppe_requestedMeasurements_01 = -1; /* T_requestedMeasurements_01 */ +static int hf_lppe_ecid_gsm_MeasSupported = -1; /* T_ecid_gsm_MeasSupported */ +static int hf_lppe_ecid_gsm_ADSupported = -1; /* T_ecid_gsm_ADSupported */ +static int hf_lppe_locationServerErrorCauses_04 = -1; /* OMA_LPPe_ECID_GSM_LocationServerErrorCauses */ +static int hf_lppe_targetDeviceErrorCauses_04 = -1; /* OMA_LPPe_ECID_GSM_TargetDeviceErrorCauses */ +static int hf_lppe_cause_08 = -1; /* T_cause_08 */ +static int hf_lppe_mandatoryDataUnavailable = -1; /* NULL */ +static int hf_lppe_bsLocationsUnavailable = -1; /* NULL */ +static int hf_lppe_cellTransmitPowerUnavailable = -1; /* NULL */ +static int hf_lppe_callAntennaGainUnavailable = -1; /* NULL */ +static int hf_lppe_cellBeamWidthUnavailable = -1; /* NULL */ +static int hf_lppe_cellTransmitDirectionUnavailable = -1; /* NULL */ +static int hf_lppe_cellFrequencyAccuracyUnavailable = -1; /* NULL */ +static int hf_lppe_nonservingADUnavailable = -1; /* NULL */ +static int hf_lppe_cause_09 = -1; /* T_cause_09 */ +static int hf_lppe_rxLevelMeasurementNotPossible = -1; /* NULL */ +static int hf_lppe_taMeasurementNotPossible = -1; /* NULL */ +static int hf_lppe_nMRMeasurementNotPossible = -1; /* NULL */ +static int hf_lppe_ecid_UTRA_NetworkData = -1; /* SEQUENCE_SIZE_1_maxUTRANetworks_OF_OMA_LPPe_ECID_UTRA_NetworkData */ +static int hf_lppe_ecid_UTRA_NetworkData_item = -1; /* OMA_LPPe_ECID_UTRA_NetworkData */ +static int hf_lppe_ecid_UTRA_Error = -1; /* OMA_LPPe_ECID_UTRA_Error */ +static int hf_lppe_plmn_Identity_02 = -1; /* T_plmn_Identity_02 */ +static int hf_lppe_mcc_02 = -1; /* T_mcc_02 */ +static int hf_lppe_mnc_02 = -1; /* T_mnc_02 */ +static int hf_lppe_ecid_utra_nodeB_list = -1; /* SEQUENCE_SIZE_1_maxUTRAnodeBs_OF_OMA_LPPe_ECID_UTRA_NodeBData */ +static int hf_lppe_ecid_utra_nodeB_list_item = -1; /* OMA_LPPe_ECID_UTRA_NodeBData */ +static int hf_lppe_ecid_utra_HNB_list = -1; /* SEQUENCE_SIZE_1_maxUTRAHNBs_OF_OMA_LPPe_ECID_UTRA_HNBData */ +static int hf_lppe_ecid_utra_HNB_list_item = -1; /* OMA_LPPe_ECID_UTRA_HNBData */ +static int hf_lppe_ecid_utra_nodeB_CellData = -1; /* SEQUENCE_SIZE_1_maxUTRAMacroCells_OF_OMA_LPPe_ECID_UTRA_CellData */ +static int hf_lppe_ecid_utra_nodeB_CellData_item = -1; /* OMA_LPPe_ECID_UTRA_CellData */ +static int hf_lppe_ecid_utra_HNB_CellData = -1; /* OMA_LPPe_ECID_UTRA_CellData */ +static int hf_lppe_cellIdentity_02 = -1; /* BIT_STRING_SIZE_32 */ +static int hf_lppe_modeSpecificInfo_04 = -1; /* T_modeSpecificInfo_04 */ +static int hf_lppe_fdd_05 = -1; /* T_fdd_05 */ +static int hf_lppe_primaryCPICH_Scrambling_Code = -1; /* OMA_LPPe_OTDOA_UTRA_PrimaryScramblingCode */ +static int hf_lppe_primaryCPICH_Tx_Power = -1; /* INTEGER_M127_128 */ +static int hf_lppe_uarfcn_dl = -1; /* ARFCN_ValueUTRA */ +static int hf_lppe_tdd_05 = -1; /* T_tdd_05 */ +static int hf_lppe_primaryCCPCH_Tx_Power = -1; /* INTEGER_M127_128 */ +static int hf_lppe_uarfcn_nt = -1; /* ARFCN_ValueUTRA */ +static int hf_lppe_nBrequestedAD = -1; /* T_nBrequestedAD */ +static int hf_lppe_hNBrequestedAD = -1; /* T_hNBrequestedAD */ +static int hf_lppe_ecid_UTRA_CombinedLocationInformation = -1; /* SEQUENCE_SIZE_1_maxECIDUTRASize_OF_OMA_LPPe_ECID_UTRA_LocationInformationList */ +static int hf_lppe_ecid_UTRA_CombinedLocationInformation_item = -1; /* OMA_LPPe_ECID_UTRA_LocationInformationList */ +static int hf_lppe_ecid_Error = -1; /* OMA_LPPe_ECID_UTRA_Error */ +static int hf_lppe_ecid_utra_LocationInformation = -1; /* OMA_LPPe_ECID_UTRA_LocationInformation */ +static int hf_lppe_cellGlobalIdUTRA = -1; /* CellGlobalIdEUTRA_AndUTRA */ +static int hf_lppe_measuredResultsList = -1; /* OMA_LPPe_ECID_UTRA_MeasuredResultsList */ +static int hf_lppe_utratimingAdvance = -1; /* OMA_LPPe_ECID_UTRA_UTRATimingAdvance */ +static int hf_lppe_tA_01 = -1; /* INTEGER_0_8191 */ +static int hf_lppe_tAResolution = -1; /* OMA_LPPe_ECID_UTRA_TAResolution */ +static int hf_lppe_chipRate = -1; /* OMA_LPPe_ECID_UTRA_ChipRate */ +static int hf_lppe_modeSpecificInfo_05 = -1; /* OMA_LPPe_UTRA_ModeSpecificInfo */ +static int hf_lppe_fdd_06 = -1; /* OMA_LPPe_UTRA_FrequencyInfoFDD */ +static int hf_lppe_tdd_06 = -1; /* OMA_LPPe_UTRA_FrequencyInfoTDD */ +static int hf_lppe_uarfcn_UL = -1; /* ARFCN_ValueUTRA */ +static int hf_lppe_uarfcn_DL = -1; /* ARFCN_ValueUTRA */ +static int hf_lppe_uarfcn_Nt = -1; /* ARFCN_ValueUTRA */ +static int hf_lppe_OMA_LPPe_ECID_UTRA_MeasuredResultsList_item = -1; /* OMA_LPPe_ECID_UTRA_MeasuredResults */ +static int hf_lppe_utra_CarrierRSSI = -1; /* OMA_LPPe_ECID_UTRA_CarrierRSSI */ +static int hf_lppe_cellMeasuredResultsList = -1; /* OMA_LPPe_ECID_UTRA_CellMeasuredResultsList */ +static int hf_lppe_OMA_LPPe_ECID_UTRA_CellMeasuredResultsList_item = -1; /* OMA_LPPe_ECID_UTRA_CellMeasuredResults */ +static int hf_lppe_modeSpecificInfo_06 = -1; /* T_modeSpecificInfo_05 */ +static int hf_lppe_fdd_07 = -1; /* T_fdd_06 */ +static int hf_lppe_primaryCPICH_Info = -1; /* OMA_LPPe_OTDOA_UTRA_PrimaryScramblingCode */ +static int hf_lppe_cpich_Ec_N0 = -1; /* OMA_LPPe_ECID_UTRA_CPICH_Ec_N0 */ +static int hf_lppe_cpich_RSCP = -1; /* OMA_LPPe_ECID_UTRA_CPICH_RSCP */ +static int hf_lppe_pathloss = -1; /* OMA_LPPe_ECID_UTRA_Pathloss */ +static int hf_lppe_tdd_07 = -1; /* T_tdd_06 */ +static int hf_lppe_primaryCCPCH_RSCP = -1; /* OMA_LPPe_ECID_UTRA_PrimaryCCPCH_RSCP */ +static int hf_lppe_requestedMeasurements_02 = -1; /* T_requestedMeasurements_02 */ +static int hf_lppe_ecid_utra_MeasSupported = -1; /* T_ecid_utra_MeasSupported */ +static int hf_lppe_ecid_utra_nodeB_ADSupported = -1; /* T_ecid_utra_nodeB_ADSupported */ +static int hf_lppe_ecid_utra_HNB_ADSupported = -1; /* T_ecid_utra_HNB_ADSupported */ +static int hf_lppe_locationServerErrorCauses_05 = -1; /* OMA_LPPe_ECID_UTRA_LocationServerErrorCauses */ +static int hf_lppe_targetDeviceErrorCauses_05 = -1; /* OMA_LPPe_ECID_UTRA_TargetDeviceErrorCauses */ +static int hf_lppe_cause_10 = -1; /* T_cause_10 */ +static int hf_lppe_nodeBMandatoryDataUnavailable = -1; /* NULL */ +static int hf_lppe_nodeBLocationUnavailable = -1; /* NULL */ +static int hf_lppe_nodeBcellTransmitPowerUnavailable = -1; /* NULL */ +static int hf_lppe_nodeBcallAntennaGainUnavailable = -1; /* NULL */ +static int hf_lppe_nodeBcellBeamWidthUnavailable = -1; /* NULL */ +static int hf_lppe_nodeBcellTransmitDirectionUnavailable = -1; /* NULL */ +static int hf_lppe_nodeBcellFrequencyAccuracyUnavailable = -1; /* NULL */ +static int hf_lppe_nodeBnonservingADUnavailable = -1; /* NULL */ +static int hf_lppe_hNBMandatoryDataUnavailable = -1; /* NULL */ +static int hf_lppe_hNBLocationUnavailable = -1; /* NULL */ +static int hf_lppe_hNBLocationReliabilityUnavailable = -1; /* NULL */ +static int hf_lppe_hNBcellTransmitPowerUnavailable = -1; /* NULL */ +static int hf_lppe_hNBcellFrequencyAccuracyUnavailable = -1; /* NULL */ +static int hf_lppe_hNBCoverageAreaUnavailable = -1; /* NULL */ +static int hf_lppe_hNBnonservingADUnavailable = -1; /* NULL */ +static int hf_lppe_cause_11 = -1; /* T_cause_11 */ +static int hf_lppe_mRLMeasurementsNotPossible = -1; /* NULL */ +static int hf_lppe_tdd_timingAdvanceMeasurementNotPossible = -1; /* NULL */ +static int hf_lppe_mRL_utra_CarrierRSSIMeasurementNotPossible = -1; /* NULL */ +static int hf_lppe_mRL_FDD_cpich_Ec_N0MeasurementNotPossible = -1; /* NULL */ +static int hf_lppe_mRL_FDD_cpich_RSCPMeasurementNotPossible = -1; /* NULL */ +static int hf_lppe_mRL_FDD_pathlossMeasurementNotPossible = -1; /* NULL */ +static int hf_lppe_mRL_TDD_primaryCCPCH_RSCPMeasurementNotPossible = -1; /* NULL */ +static int hf_lppe_mRL_TDD_pathlossMeasurementNotPossible = -1; /* NULL */ +static int hf_lppe_wlan_DataSet = -1; /* SEQUENCE_SIZE_1_maxWLANDataSets_OF_OMA_LPPe_WLAN_DataSet */ +static int hf_lppe_wlan_DataSet_item = -1; /* OMA_LPPe_WLAN_DataSet */ +static int hf_lppe_wlan_AP_Error = -1; /* OMA_LPPe_WLAN_AP_Error */ +static int hf_lppe_plmn_Identity_03 = -1; /* T_plmn_Identity_03 */ +static int hf_lppe_mcc_03 = -1; /* T_mcc_03 */ +static int hf_lppe_mnc_03 = -1; /* T_mnc_03 */ +static int hf_lppe_supported_channels_11a = -1; /* Supported_Channels_11a */ +static int hf_lppe_supported_channels_11bg = -1; /* Supported_Channels_11bg */ +static int hf_lppe_wlan_ap_list = -1; /* SEQUENCE_SIZE_1_maxWLANAPs_OF_OMA_LPPe_WLAN_AP_Data */ +static int hf_lppe_wlan_ap_list_item = -1; /* OMA_LPPe_WLAN_AP_Data */ +static int hf_lppe_ch34 = -1; /* BOOLEAN */ +static int hf_lppe_ch36 = -1; /* BOOLEAN */ +static int hf_lppe_ch38 = -1; /* BOOLEAN */ +static int hf_lppe_ch40 = -1; /* BOOLEAN */ +static int hf_lppe_ch42 = -1; /* BOOLEAN */ +static int hf_lppe_ch44 = -1; /* BOOLEAN */ +static int hf_lppe_ch46 = -1; /* BOOLEAN */ +static int hf_lppe_ch48 = -1; /* BOOLEAN */ +static int hf_lppe_ch52 = -1; /* BOOLEAN */ +static int hf_lppe_ch56 = -1; /* BOOLEAN */ +static int hf_lppe_ch60 = -1; /* BOOLEAN */ +static int hf_lppe_ch64 = -1; /* BOOLEAN */ +static int hf_lppe_ch149 = -1; /* BOOLEAN */ +static int hf_lppe_ch153 = -1; /* BOOLEAN */ +static int hf_lppe_ch157 = -1; /* BOOLEAN */ +static int hf_lppe_ch161 = -1; /* BOOLEAN */ +static int hf_lppe_ch1 = -1; /* BOOLEAN */ +static int hf_lppe_ch2 = -1; /* BOOLEAN */ +static int hf_lppe_ch3 = -1; /* BOOLEAN */ +static int hf_lppe_ch4 = -1; /* BOOLEAN */ +static int hf_lppe_ch5 = -1; /* BOOLEAN */ +static int hf_lppe_ch6 = -1; /* BOOLEAN */ +static int hf_lppe_ch7 = -1; /* BOOLEAN */ +static int hf_lppe_ch8 = -1; /* BOOLEAN */ +static int hf_lppe_ch9 = -1; /* BOOLEAN */ +static int hf_lppe_ch10 = -1; /* BOOLEAN */ +static int hf_lppe_ch11 = -1; /* BOOLEAN */ +static int hf_lppe_ch12 = -1; /* BOOLEAN */ +static int hf_lppe_ch13 = -1; /* BOOLEAN */ +static int hf_lppe_ch14 = -1; /* BOOLEAN */ +static int hf_lppe_wlan_ap_id = -1; /* OMA_LPPe_WLAN_AP_ID */ +static int hf_lppe_wlan_ap_Type_Data = -1; /* SEQUENCE_SIZE_1_maxWLANTypes_OF_OMA_LPPe_WLAN_AP_Type_Data */ +static int hf_lppe_wlan_ap_Type_Data_item = -1; /* OMA_LPPe_WLAN_AP_Type_Data */ +static int hf_lppe_wlan_AP_Type = -1; /* OMA_LPPe_WLAN_AP_Type */ +static int hf_lppe_requestedAD_01 = -1; /* T_requestedAD_01 */ +static int hf_lppe_requestedAPTypes = -1; /* OMA_LPPe_WLAN_AP_Type_List */ +static int hf_lppe_wlan_AP_CombinedLocationInformation = -1; /* SEQUENCE_SIZE_1_maxWLANAPSize_OF_OMA_LPPe_WLAN_AP_LocationInformationList */ +static int hf_lppe_wlan_AP_CombinedLocationInformation_item = -1; /* OMA_LPPe_WLAN_AP_LocationInformationList */ +static int hf_lppe_wlan_AP_LocationInformation = -1; /* OMA_LPPe_WLAN_AP_LocationInformation */ +static int hf_lppe_apMACAddress = -1; /* OMA_LPPe_WLAN_AP_ID */ +static int hf_lppe_apSSID = -1; /* OCTET_STRING_SIZE_1_32 */ +static int hf_lppe_apSignaltoNoise = -1; /* INTEGER_M127_128 */ +static int hf_lppe_apDeviceType = -1; /* OMA_LPPe_WLAN_AP_Type */ +static int hf_lppe_apPHYtype = -1; /* OMA_LPPe_WLAN_AP_PHY_Type */ +static int hf_lppe_apSignalStrength = -1; /* INTEGER_M127_128 */ +static int hf_lppe_apChannelFrequency = -1; /* INTEGER_0_256 */ +static int hf_lppe_apRoundTripDelay = -1; /* OMA_LPPe_WLAN_RTD */ +static int hf_lppe_ueTransmitPower = -1; /* INTEGER_M127_128 */ +static int hf_lppe_ueAntennaGain = -1; /* INTEGER_M127_128 */ +static int hf_lppe_apReportedLocation = -1; /* OMA_LPPe_WLAN_ReportedLocation */ +static int hf_lppe_rTDValue = -1; /* INTEGER_0_16777215 */ +static int hf_lppe_rTDUnits = -1; /* OMA_LPPe_WLAN_RTDUnits */ +static int hf_lppe_rTDAccuracy = -1; /* INTEGER_0_255 */ +static int hf_lppe_locationDataLCI = -1; /* OMA_LPPe_WLAN_LocationDataLCI */ +static int hf_lppe_latitudeResolution = -1; /* BIT_STRING_SIZE_6 */ +static int hf_lppe_latitude_01 = -1; /* BIT_STRING_SIZE_34 */ +static int hf_lppe_longitudeResolution = -1; /* BIT_STRING_SIZE_6 */ +static int hf_lppe_longitude_01 = -1; /* BIT_STRING_SIZE_34 */ +static int hf_lppe_altitudeType = -1; /* BIT_STRING_SIZE_4 */ +static int hf_lppe_altitudeResolution = -1; /* BIT_STRING_SIZE_6 */ +static int hf_lppe_altitude_01 = -1; /* BIT_STRING_SIZE_30 */ +static int hf_lppe_datum = -1; /* BIT_STRING_SIZE_8 */ +static int hf_lppe_requestedMeasurements_03 = -1; /* T_requestedMeasurements_03 */ +static int hf_lppe_wlan_ecid_MeasSupported = -1; /* T_wlan_ecid_MeasSupported */ +static int hf_lppe_wlan_types_Supported = -1; /* OMA_LPPe_WLAN_AP_Type_List */ +static int hf_lppe_ap_Capability = -1; /* OMA_LPPe_WLAN_AP_Capability */ +static int hf_lppe_wlan_ap_ADSupported = -1; /* T_wlan_ap_ADSupported */ +static int hf_lppe_apTypes = -1; /* OMA_LPPe_WLAN_AP_Type_List */ +static int hf_lppe_locationServerErrorCauses_06 = -1; /* OMA_LPPe_WLAN_AP_LocationServerErrorCauses */ +static int hf_lppe_targetDeviceErrorCauses_06 = -1; /* OMA_LPPe_WLAN_AP_TargetDeviceErrorCauses */ +static int hf_lppe_cause_12 = -1; /* T_cause_12 */ +static int hf_lppe_apMandatoryDataUnavailable = -1; /* NULL */ +static int hf_lppe_apLocationsUnavailable = -1; /* NULL */ +static int hf_lppe_apLocationReliabilityUnavailable = -1; /* NULL */ +static int hf_lppe_apTransmitPowerUnavailable = -1; /* NULL */ +static int hf_lppe_apAntennaGainUnavailable = -1; /* NULL */ +static int hf_lppe_apCoverageAreaUnavailable = -1; /* NULL */ +static int hf_lppe_cause_13 = -1; /* T_cause_13 */ +static int hf_lppe_apSSIDnotAvailable = -1; /* NULL */ +static int hf_lppe_apSNMeasurementNotPossible = -1; /* NULL */ +static int hf_lppe_apDevTypeNotAvailable = -1; /* NULL */ +static int hf_lppe_apPhyTypeNotAvailable = -1; /* NULL */ +static int hf_lppe_apRSSIMeasurementNotPossible = -1; /* NULL */ +static int hf_lppe_apChanFreqNotAvailable = -1; /* NULL */ +static int hf_lppe_apRTDMeasurementNotPossible = -1; /* NULL */ +static int hf_lppe_ueTPNotAvailable = -1; /* NULL */ +static int hf_lppe_ueAGNotAvailable = -1; /* NULL */ +static int hf_lppe_apRecLocNotAvailable = -1; /* NULL */ +static int hf_lppe_ecid_wimax_CombinedLocationInformation = -1; /* SEQUENCE_SIZE_1_maxWiMaxECIDSize_OF_OMA_LPPe_ECID_WiMax_LocationInformationList */ +static int hf_lppe_ecid_wimax_CombinedLocationInformation_item = -1; /* OMA_LPPe_ECID_WiMax_LocationInformationList */ +static int hf_lppe_ecid_wimax_Error = -1; /* OMA_LPPe_ECID_WiMax_Error */ +static int hf_lppe_ecid_wimax_LocationInformation = -1; /* OMA_LPPe_ECID_WiMax_LocationInformation */ +static int hf_lppe_wimaxBsID = -1; /* OMA_LPPe_ECID_WiMax_WimaxBsID */ +static int hf_lppe_wimaxRTD = -1; /* OMA_LPPe_ECID_WiMax_WimaxRTD */ +static int hf_lppe_wimaxNMRList = -1; /* OMA_LPPe_ECID_WiMax_WimaxNMRList */ +static int hf_lppe_bsID_MSB = -1; /* BIT_STRING_SIZE_24 */ +static int hf_lppe_bsID_LSB = -1; /* BIT_STRING_SIZE_24 */ +static int hf_lppe_rTD = -1; /* INTEGER_0_65535 */ +static int hf_lppe_rTDstd = -1; /* INTEGER_0_1023 */ +static int hf_lppe_OMA_LPPe_ECID_WiMax_WimaxNMRList_item = -1; /* OMA_LPPe_ECID_WiMax_WimaxNMR */ +static int hf_lppe_relDelay = -1; /* INTEGER_M32768_32767 */ +static int hf_lppe_relDelaystd = -1; /* INTEGER_0_1023 */ +static int hf_lppe_rSSI = -1; /* INTEGER_0_255 */ +static int hf_lppe_rSSIstd = -1; /* INTEGER_0_63 */ +static int hf_lppe_bSTxPower = -1; /* INTEGER_0_255 */ +static int hf_lppe_cINR = -1; /* INTEGER_0_255 */ +static int hf_lppe_cINRstd = -1; /* INTEGER_0_63 */ +static int hf_lppe_bSLocation = -1; /* OMA_LPPe_WLAN_ReportedLocation */ +static int hf_lppe_requestedMeasurements_04 = -1; /* T_requestedMeasurements_04 */ +static int hf_lppe_ecid_wimax_MeasSupported = -1; /* T_ecid_wimax_MeasSupported */ +static int hf_lppe_locationServerErrorCauses_07 = -1; /* OMA_LPPe_ECID_WiMax_LocationServerErrorCauses */ +static int hf_lppe_targetDeviceErrorCauses_07 = -1; /* OMA_LPPe_ECID_WiMax_TargetDeviceErrorCauses */ +static int hf_lppe_cause_14 = -1; /* T_cause_14 */ +static int hf_lppe_cause_15 = -1; /* T_cause_15 */ +static int hf_lppe_rTDMeasurementNotPossible = -1; /* NULL */ +static int hf_lppe_rTDstdMeasurementNotPossible = -1; /* NULL */ +static int hf_lppe_nMRrelDelayMeasurementNotPossible = -1; /* NULL */ +static int hf_lppe_nMRrelDelaystdMeasurementNotPossible = -1; /* NULL */ +static int hf_lppe_nMRrSSIMeasurementNotPossible = -1; /* NULL */ +static int hf_lppe_nMRrSSIstdMeasurementNotPossible = -1; /* NULL */ +static int hf_lppe_nMRbSTxPowerMeasurementNotPossible = -1; /* NULL */ +static int hf_lppe_nMRcINRMeasurementNotPossible = -1; /* NULL */ +static int hf_lppe_nMRcINRstdMeasurementNotPossible = -1; /* NULL */ +static int hf_lppe_nMRbSLocationNotAvailable = -1; /* NULL */ +static int hf_lppe_motionStateList = -1; /* OMA_LPPe_Sensor_MotionStateList */ +static int hf_lppe_sensorError = -1; /* OMA_LPPe_Sensor_Error */ +static int hf_lppe_OMA_LPPe_Sensor_MotionStateList_item = -1; /* OMA_LPPe_Sensor_MotionStateElement */ +static int hf_lppe_primaryMotionState = -1; /* T_primaryMotionState */ +static int hf_lppe_secondaryMotionState = -1; /* T_secondaryMotionState */ +static int hf_lppe_motionStateReq = -1; /* OMA_LPPe_Sensor_MotionStateRequest */ +static int hf_lppe_secondaryMotionStateRequest = -1; /* NULL */ +static int hf_lppe_motionStateSupport = -1; /* NULL */ +static int hf_lppe_secondarySupport = -1; /* NULL */ +static int hf_lppe_targetError = -1; /* OMA_LPPe_Sensor_TargetError */ +static int hf_lppe_motionStateError = -1; /* T_motionStateError */ +static int hf_lppe_secondaryMotionStateError = -1; /* T_secondaryMotionStateError */ +static int hf_lppe_srnGroup = -1; /* T_srnGroup */ +static int hf_lppe_srnGroupList = -1; /* OMA_LPPe_SRN_SRNgroupList */ +static int hf_lppe_srnGroupUpdateResponse = -1; /* OMA_LPPe_SRN_SRNgroupUpdateResponse */ +static int hf_lppe_antennaPattern = -1; /* OMA_LPPe_SRN_AntennaPattern */ +static int hf_lppe_srnError = -1; /* OMA_LPPe_SRN_Error */ +static int hf_lppe_incompleteFlag = -1; /* BOOLEAN */ +static int hf_lppe_defaultReferencePoint = -1; /* OMA_LPPe_ReferencePoint */ +static int hf_lppe_groupList = -1; /* SEQUENCE_SIZE_1_64_OF_OMA_LPPe_SRN_SRNgroup */ +static int hf_lppe_groupList_item = -1; /* OMA_LPPe_SRN_SRNgroup */ +static int hf_lppe_srnGroupID = -1; /* OMA_LPPe_SRN_SRNgroupUniqueID */ +static int hf_lppe_defaultSRNtype = -1; /* OMA_LPPe_SRN_SRNtype */ +static int hf_lppe_referencePoint_01 = -1; /* OMA_LPPe_ReferencePoint */ +static int hf_lppe_globalOrientation = -1; /* NULL */ +static int hf_lppe_srnsInGroupList = -1; /* SEQUENCE_SIZE_1_1024_OF_OMA_LPPe_SRN_SRNinfo */ +static int hf_lppe_srnsInGroupList_item = -1; /* OMA_LPPe_SRN_SRNinfo */ +static int hf_lppe_srnID = -1; /* OMA_LPPe_SRN_SRNid */ +static int hf_lppe_srnType = -1; /* OMA_LPPe_SRN_SRNtype */ +static int hf_lppe_relativePosition = -1; /* OMA_LPPe_RelativeLocation */ +static int hf_lppe_orientation = -1; /* OMA_LPPe_Orientation */ +static int hf_lppe_OMA_LPPe_SRN_SRNgroupUpdateResponse_item = -1; /* OMA_LPPe_SRN_SRNgroupUpdateResponseElement */ +static int hf_lppe_targetDataValidity = -1; /* T_targetDataValidity */ +static int hf_lppe_updatedSRNgroup = -1; /* OMA_LPPe_SRN_SRNgroup */ +static int hf_lppe_OMA_LPPe_SRN_AntennaPattern_item = -1; /* OMA_LPPe_SRN_AntennaPatternElement */ +static int hf_lppe_identification = -1; /* T_identification */ +static int hf_lppe_vendorOrOperator = -1; /* OMA_LPPe_VendorOrOperatorID */ +static int hf_lppe_antennaPatternID = -1; /* INTEGER_0_65535 */ +static int hf_lppe_antennaData = -1; /* T_antennaData */ +static int hf_lppe_antennaPattern_01 = -1; /* OMA_LPPe_SRN_AntennaPatternForChannels */ +static int hf_lppe_antennaContainer = -1; /* OCTET_STRING */ +static int hf_lppe_evenGrid = -1; /* T_evenGrid */ +static int hf_lppe_inAzimuth = -1; /* INTEGER_1_200 */ +static int hf_lppe_inElevation = -1; /* INTEGER_1_150 */ +static int hf_lppe_patternList = -1; /* SEQUENCE_SIZE_1_maxChannels_OF_OMA_LPPe_SRN_ChannelResponse */ +static int hf_lppe_patternList_item = -1; /* OMA_LPPe_SRN_ChannelResponse */ +static int hf_lppe_channelNumber = -1; /* INTEGER_1_maxChannels */ +static int hf_lppe_responseInElevation = -1; /* SEQUENCE_SIZE_7_901_OF_OMA_LPPe_SRN_ResponseInElevation */ +static int hf_lppe_responseInElevation_item = -1; /* OMA_LPPe_SRN_ResponseInElevation */ +static int hf_lppe_elevation_01 = -1; /* INTEGER_0_900 */ +static int hf_lppe_responseInAzimuth = -1; /* SEQUENCE_SIZE_18_3601_OF_OMA_LPPe_SRN_ResponseInAzimuth */ +static int hf_lppe_responseInAzimuth_item = -1; /* OMA_LPPe_SRN_ResponseInAzimuth */ +static int hf_lppe_azimuth_01 = -1; /* INTEGER_0_3599 */ +static int hf_lppe_response = -1; /* OMA_LPPe_ComplexNumber */ +static int hf_lppe_amplitude = -1; /* INTEGER_0_1000 */ +static int hf_lppe_phase = -1; /* INTEGER_M1800_1799 */ +static int hf_lppe_srnGroup_01 = -1; /* T_srnGroup_01 */ +static int hf_lppe_srnGroupRequest = -1; /* OMA_LPPe_SRN_SRNgroupRequest */ +static int hf_lppe_srnGroupUpdateRequest = -1; /* OMA_LPPe_SRN_SRNgroupUpdateRequest */ +static int hf_lppe_antennaPatternRequest = -1; /* OMA_LPPe_SRN_AntennaPatternRequest */ +static int hf_lppe_doNotProvideList = -1; /* OMA_LPPe_SRN_SRNProvideList */ +static int hf_lppe_doProvideList = -1; /* OMA_LPPe_SRN_SRNProvideList */ +static int hf_lppe_groupList_01 = -1; /* SEQUENCE_SIZE_1_256_OF_OMA_LPPe_SRN_SRNgroupUniqueID */ +static int hf_lppe_groupList_item_01 = -1; /* OMA_LPPe_SRN_SRNgroupUniqueID */ +static int hf_lppe_categoryList = -1; /* SEQUENCE_SIZE_1_16_OF_OMA_LPPe_SRN_Category */ +static int hf_lppe_categoryList_item = -1; /* OMA_LPPe_SRN_Category */ +static int hf_lppe_OMA_LPPe_SRN_SRNgroupUpdateRequest_item = -1; /* OMA_LPPe_SRN_SRNgroupUpdateRequestElement */ +static int hf_lppe_provideIndicationOnly = -1; /* NULL */ +static int hf_lppe_inTheGroup = -1; /* SEQUENCE_SIZE_1_1024_OF_OMA_LPPe_SRN_SRNid */ +static int hf_lppe_inTheGroup_item = -1; /* OMA_LPPe_SRN_SRNid */ +static int hf_lppe_OMA_LPPe_SRN_AntennaPatternRequest_item = -1; /* OMA_LPPe_SRN_AntennaPatternRequestElement */ +static int hf_lppe_antennaPatternID_01 = -1; /* T_antennaPatternID */ +static int hf_lppe_srnMeasurementList = -1; /* SEQUENCE_SIZE_1_64_OF_OMA_LPPe_SRN_MeasurementElement */ +static int hf_lppe_srnMeasurementList_item = -1; /* OMA_LPPe_SRN_MeasurementElement */ +static int hf_lppe_srnCategory = -1; /* OMA_LPPe_SRN_Category */ +static int hf_lppe_measurementList = -1; /* SEQUENCE_SIZE_1_64_OF_OMA_LPPe_SRN_srnMeasurementElement */ +static int hf_lppe_measurementList_item = -1; /* OMA_LPPe_SRN_srnMeasurementElement */ +static int hf_lppe_relativeTimeStamp_01 = -1; /* INTEGER_0_1000 */ +static int hf_lppe_rssi = -1; /* INTEGER_M128_127 */ +static int hf_lppe_rtd = -1; /* OMA_LPPe_WLAN_RTD */ +static int hf_lppe_requestInfo = -1; /* SEQUENCE_SIZE_1_16_OF_OMA_LPPe_SRN_ReqLocInfo_Category */ +static int hf_lppe_requestInfo_item = -1; /* OMA_LPPe_SRN_ReqLocInfo_Category */ +static int hf_lppe_category = -1; /* OMA_LPPe_SRN_Category */ +static int hf_lppe_multipleMeasurements = -1; /* T_multipleMeasurements */ +static int hf_lppe_allowedMeasurements = -1; /* OMA_LPPe_SRN_MeasurementMask */ +static int hf_lppe_historicMeasurementsRequested = -1; /* NULL */ +static int hf_lppe_capabilitiesPerSRNCategory = -1; /* SEQUENCE_SIZE_1_16_OF_OMA_LPPe_SRN_ProvideCapabilitiesElement */ +static int hf_lppe_capabilitiesPerSRNCategory_item = -1; /* OMA_LPPe_SRN_ProvideCapabilitiesElement */ +static int hf_lppe_supportedMeasurements = -1; /* OMA_LPPe_SRN_MeasurementMask */ +static int hf_lppe_supportedAssistanceData = -1; /* T_supportedAssistanceData */ +static int hf_lppe_historicMeasurementsSupported = -1; /* NULL */ +static int hf_lppe_capabilitiesRequestedFor = -1; /* SEQUENCE_SIZE_1_16_OF_OMA_LPPe_SRN_Category */ +static int hf_lppe_capabilitiesRequestedFor_item = -1; /* OMA_LPPe_SRN_Category */ +static int hf_lppe_srnLocationServerErrorCauses = -1; /* OMA_LPPe_SRN_LocationServerErrorCauses */ +static int hf_lppe_srnTargetDeviceErrorCauses = -1; /* OMA_LPPe_SRN_TargetDeviceErrorCauses */ +static int hf_lppe_groupErrors = -1; /* T_groupErrors */ +static int hf_lppe_groupUpdateErrors = -1; /* T_groupUpdateErrors */ +static int hf_lppe_srnAntennaErrors = -1; /* T_srnAntennaErrors */ +static int hf_lppe_srnErrorsPerCategory = -1; /* SEQUENCE_SIZE_1_16_OF_OMA_LPPe_SRN_TargetDeviceError */ +static int hf_lppe_srnErrorsPerCategory_item = -1; /* OMA_LPPe_SRN_TargetDeviceError */ +static int hf_lppe_srnErrors = -1; /* T_srnErrors */ +static int hf_lppe_rssiNotAvailable = -1; /* NULL */ +static int hf_lppe_rtdNotAvailable = -1; /* NULL */ +static int hf_lppe_multipleSetsNotAvailable = -1; /* NULL */ +static int hf_lppe_srnDataVersion = -1; /* INTEGER_0_4294967295 */ +static int hf_lppe_srnERP = -1; /* INTEGER_M300_500 */ +static int hf_lppe_srnAntennaInfo = -1; /* T_srnAntennaInfo */ +static int hf_lppe_switchingPatternID = -1; /* INTEGER_0_65535 */ +static int hf_lppe_srnTechnologyType = -1; /* OMA_LPPe_SRN_Technologies */ +static int hf_lppe_srnVendorInformation = -1; /* T_srnVendorInformation */ +static int hf_lppe_vendor = -1; /* OMA_LPPe_VendorOrOperatorID */ +static int hf_lppe_vendorInfo = -1; /* OCTET_STRING */ +static int hf_lppe_srn_id = -1; /* T_srn_id */ +static int hf_lppe_mac = -1; /* BIT_STRING_SIZE_48 */ +static int hf_lppe_nfc = -1; /* T_nfc */ +static int hf_lppe_manufacturer = -1; /* BIT_STRING_SIZE_8 */ +static int hf_lppe_uniqueNumber = -1; /* BIT_STRING_SIZE_48 */ +static int hf_lppe_mobileCode = -1; /* T_mobileCode */ +static int hf_lppe_registryID = -1; /* BIT_STRING_SIZE_12 */ +static int hf_lppe_remainingPart = -1; /* OCTET_STRING_SIZE_1_1 */ +static int hf_lppe_resolutionIdentifier = -1; /* OCTET_STRING_SIZE_1_18 */ +static int hf_lppe_other = -1; /* OCTET_STRING */ +static int hf_lppe_srnTechnologies = -1; /* T_srnTechnologies */ +static int hf_lppe_srnMeasurements = -1; /* T_srnMeasurements */ +/* named bits */ +static int hf_lppe_OMA_LPPe_FixedAccessTypes_cable = -1; +static int hf_lppe_OMA_LPPe_FixedAccessTypes_dsl = -1; +static int hf_lppe_OMA_LPPe_FixedAccessTypes_lan = -1; +static int hf_lppe_OMA_LPPe_FixedAccessTypes_pstn = -1; +static int hf_lppe_OMA_LPPe_FixedAccessTypes_other = -1; +static int hf_lppe_OMA_LPPe_WirelessAccessTypes_gsm = -1; +static int hf_lppe_OMA_LPPe_WirelessAccessTypes_utra = -1; +static int hf_lppe_OMA_LPPe_WirelessAccessTypes_lte = -1; +static int hf_lppe_OMA_LPPe_WirelessAccessTypes_wimax = -1; +static int hf_lppe_OMA_LPPe_WirelessAccessTypes_wifi = -1; +static int hf_lppe_OMA_LPPe_WirelessAccessTypes_other = -1; +static int hf_lppe_OMA_LPPe_WLAN_AP_Type_List_ieee802_11a = -1; +static int hf_lppe_OMA_LPPe_WLAN_AP_Type_List_ieee802_11b = -1; +static int hf_lppe_OMA_LPPe_WLAN_AP_Type_List_ieee802_11g = -1; +static int hf_lppe_OMA_LPPe_WLAN_AP_Type_List_ieee802_11n = -1; +static int hf_lppe_T_iP_Address_support_iPv4 = -1; +static int hf_lppe_T_iP_Address_support_iPv6 = -1; +static int hf_lppe_T_iP_Address_support_nat = -1; +static int hf_lppe_OMA_LPPe_HighAccuracyFormatCapabilities_hAposition = -1; +static int hf_lppe_OMA_LPPe_HighAccuracyFormatCapabilities_hAvelocity = -1; +static int hf_lppe_T_relativeLocationReportingSupport_geo = -1; +static int hf_lppe_T_relativeLocationReportingSupport_civic = -1; +static int hf_lppe_T_relativeLocationReportingSupport_otherProviders = -1; +static int hf_lppe_T_ionoreq_klobucharModel = -1; +static int hf_lppe_T_ionoreq_ionoStormWarning = -1; +static int hf_lppe_T_troposphereModelReq_delay = -1; +static int hf_lppe_T_troposphereModelReq_surface = -1; +static int hf_lppe_T_ionosphereMeasurementsReq_tecPerSV = -1; +static int hf_lppe_T_ionosphereMeasurementsReq_zenithTEC = -1; +static int hf_lppe_T_ionosphereMeasurementSupport_tecPerSVsupport = -1; +static int hf_lppe_T_ionosphereMeasurementSupport_zenithTecSupport = -1; +static int hf_lppe_T_ionoModel_localKlobuchar = -1; +static int hf_lppe_T_ionoModel_ionoStormWarning = -1; +static int hf_lppe_T_ionoModel_wideAreaIonoSurface = -1; +static int hf_lppe_T_tropoModel_localTroposphereDelay = -1; +static int hf_lppe_T_tropoModel_surfaceParameters = -1; +static int hf_lppe_T_modeSupport_ueBased = -1; +static int hf_lppe_T_modeSupport_ueAssisted = -1; +static int hf_lppe_T_haGNSSantennaInformationSupport_antennaDescriptionSupported = -1; +static int hf_lppe_T_haGNSSantennaInformationSupport_antennaOrientationSupported = -1; +static int hf_lppe_T_requestedCells_eNBs = -1; +static int hf_lppe_T_requestedCells_heNBs = -1; +static int hf_lppe_T_eotdAssistanceReq_ueAssisted = -1; +static int hf_lppe_T_eotdAssistanceReq_ueBased = -1; +static int hf_lppe_T_eotdSupport_ueBased = -1; +static int hf_lppe_T_eotdSupport_ueAssisted = -1; +static int hf_lppe_T_otdoaUtraAssistanceReq_ueAssisted = -1; +static int hf_lppe_T_otdoaUtraAssistanceReq_ueBased = -1; +static int hf_lppe_T_eNBrequestedAD_bslist = -1; +static int hf_lppe_T_eNBrequestedAD_bslocation = -1; +static int hf_lppe_T_eNBrequestedAD_transmit_power = -1; +static int hf_lppe_T_eNBrequestedAD_antennaPortConfig = -1; +static int hf_lppe_T_eNBrequestedAD_antenna_gain = -1; +static int hf_lppe_T_eNBrequestedAD_beam_width = -1; +static int hf_lppe_T_eNBrequestedAD_transmit_direction = -1; +static int hf_lppe_T_eNBrequestedAD_frequency_accuracy = -1; +static int hf_lppe_T_eNBrequestedAD_non_serving = -1; +static int hf_lppe_T_heNBrequestedAD_bslist = -1; +static int hf_lppe_T_heNBrequestedAD_bslocation = -1; +static int hf_lppe_T_heNBrequestedAD_locationreliability = -1; +static int hf_lppe_T_heNBrequestedAD_transmit_power = -1; +static int hf_lppe_T_heNBrequestedAD_antennaPortConfig = -1; +static int hf_lppe_T_heNBrequestedAD_frequency_accuracy = -1; +static int hf_lppe_T_heNBrequestedAD_coveragearea = -1; +static int hf_lppe_T_heNBrequestedAD_non_serving = -1; +static int hf_lppe_T_requestedMeasurements_rsrp = -1; +static int hf_lppe_T_requestedMeasurements_rsrq = -1; +static int hf_lppe_T_requestedMeasurements_ueRxTx = -1; +static int hf_lppe_T_requestedMeasurements_non_serving = -1; +static int hf_lppe_T_requestedMeasurements_historic = -1; +static int hf_lppe_T_ecid_lte_MeasSupported_rsrp = -1; +static int hf_lppe_T_ecid_lte_MeasSupported_rsrq = -1; +static int hf_lppe_T_ecid_lte_MeasSupported_ueRxTx = -1; +static int hf_lppe_T_ecid_lte_MeasSupported_non_serving = -1; +static int hf_lppe_T_ecid_lte_MeasSupported_historic = -1; +static int hf_lppe_T_ecid_lte_eNodeB_ADSupported_bslist = -1; +static int hf_lppe_T_ecid_lte_eNodeB_ADSupported_bslocation = -1; +static int hf_lppe_T_ecid_lte_eNodeB_ADSupported_transmit_power = -1; +static int hf_lppe_T_ecid_lte_eNodeB_ADSupported_antennaPortConfig = -1; +static int hf_lppe_T_ecid_lte_eNodeB_ADSupported_antenna_gain = -1; +static int hf_lppe_T_ecid_lte_eNodeB_ADSupported_beam_width = -1; +static int hf_lppe_T_ecid_lte_eNodeB_ADSupported_transmit_direction = -1; +static int hf_lppe_T_ecid_lte_eNodeB_ADSupported_frequency_accuracy = -1; +static int hf_lppe_T_ecid_lte_eNodeB_ADSupported_non_serving = -1; +static int hf_lppe_T_ecid_utra_HeNB_ADSupported_bslist = -1; +static int hf_lppe_T_ecid_utra_HeNB_ADSupported_bslocation = -1; +static int hf_lppe_T_ecid_utra_HeNB_ADSupported_locationreliability = -1; +static int hf_lppe_T_ecid_utra_HeNB_ADSupported_transmit_power = -1; +static int hf_lppe_T_ecid_utra_HeNB_ADSupported_antennaPortConfig = -1; +static int hf_lppe_T_ecid_utra_HeNB_ADSupported_frequency_accuracy = -1; +static int hf_lppe_T_ecid_utra_HeNB_ADSupported_coveragearea = -1; +static int hf_lppe_T_ecid_utra_HeNB_ADSupported_non_serving = -1; +static int hf_lppe_T_requestedAD_bslist = -1; +static int hf_lppe_T_requestedAD_bslocation = -1; +static int hf_lppe_T_requestedAD_transmit_power = -1; +static int hf_lppe_T_requestedAD_antenna_gain = -1; +static int hf_lppe_T_requestedAD_beam_width = -1; +static int hf_lppe_T_requestedAD_transmit_direction = -1; +static int hf_lppe_T_requestedAD_frequency_accuracy = -1; +static int hf_lppe_T_requestedAD_non_serving = -1; +static int hf_lppe_T_requestedMeasurements_01_rxLevel = -1; +static int hf_lppe_T_requestedMeasurements_01_tA = -1; +static int hf_lppe_T_requestedMeasurements_01_nMR_GERAN = -1; +static int hf_lppe_T_requestedMeasurements_01_non_serving = -1; +static int hf_lppe_T_requestedMeasurements_01_historic = -1; +static int hf_lppe_T_ecid_gsm_MeasSupported_rxLevel = -1; +static int hf_lppe_T_ecid_gsm_MeasSupported_tA = -1; +static int hf_lppe_T_ecid_gsm_MeasSupported_nMR_GERAN = -1; +static int hf_lppe_T_ecid_gsm_MeasSupported_non_serving = -1; +static int hf_lppe_T_ecid_gsm_MeasSupported_historic = -1; +static int hf_lppe_T_ecid_gsm_ADSupported_bslist = -1; +static int hf_lppe_T_ecid_gsm_ADSupported_bslocation = -1; +static int hf_lppe_T_ecid_gsm_ADSupported_transmit_power = -1; +static int hf_lppe_T_ecid_gsm_ADSupported_antenna_gain = -1; +static int hf_lppe_T_ecid_gsm_ADSupported_beam_width = -1; +static int hf_lppe_T_ecid_gsm_ADSupported_transmit_direction = -1; +static int hf_lppe_T_ecid_gsm_ADSupported_frequency_accuracy = -1; +static int hf_lppe_T_ecid_gsm_ADSupported_non_serving = -1; +static int hf_lppe_T_nBrequestedAD_bslist = -1; +static int hf_lppe_T_nBrequestedAD_bslocation = -1; +static int hf_lppe_T_nBrequestedAD_transmit_power = -1; +static int hf_lppe_T_nBrequestedAD_antenna_gain = -1; +static int hf_lppe_T_nBrequestedAD_beam_width = -1; +static int hf_lppe_T_nBrequestedAD_transmit_direction = -1; +static int hf_lppe_T_nBrequestedAD_frequency_accuracy = -1; +static int hf_lppe_T_nBrequestedAD_non_serving = -1; +static int hf_lppe_T_hNBrequestedAD_bslist = -1; +static int hf_lppe_T_hNBrequestedAD_bslocation = -1; +static int hf_lppe_T_hNBrequestedAD_locationreliability = -1; +static int hf_lppe_T_hNBrequestedAD_transmit_power = -1; +static int hf_lppe_T_hNBrequestedAD_frequency_accuracy = -1; +static int hf_lppe_T_hNBrequestedAD_coveragearea = -1; +static int hf_lppe_T_hNBrequestedAD_non_serving = -1; +static int hf_lppe_T_requestedMeasurements_02_measuredResultsList = -1; +static int hf_lppe_T_requestedMeasurements_02_tdd_timingAdvance = -1; +static int hf_lppe_T_requestedMeasurements_02_mRL_utra_CarrierRSSI = -1; +static int hf_lppe_T_requestedMeasurements_02_mRL_FDD_cpich_Ec_N0 = -1; +static int hf_lppe_T_requestedMeasurements_02_mRL_FDD_cpich_RSCP = -1; +static int hf_lppe_T_requestedMeasurements_02_mRL_FDD_pathloss = -1; +static int hf_lppe_T_requestedMeasurements_02_mRL_TDD_primaryCCPCH_RSCP = -1; +static int hf_lppe_T_requestedMeasurements_02_mRL_TDD_pathloss = -1; +static int hf_lppe_T_requestedMeasurements_02_non_serving = -1; +static int hf_lppe_T_requestedMeasurements_02_historic = -1; +static int hf_lppe_T_ecid_utra_MeasSupported_measuredResultsList = -1; +static int hf_lppe_T_ecid_utra_MeasSupported_tdd_timingAdvance = -1; +static int hf_lppe_T_ecid_utra_MeasSupported_mRL_utra_CarrierRSSI = -1; +static int hf_lppe_T_ecid_utra_MeasSupported_mRL_FDD_cpich_Ec_N0 = -1; +static int hf_lppe_T_ecid_utra_MeasSupported_mRL_FDD_cpich_RSCP = -1; +static int hf_lppe_T_ecid_utra_MeasSupported_mRL_FDD_pathloss = -1; +static int hf_lppe_T_ecid_utra_MeasSupported_mRL_TDD_primaryCCPCH_RSCP = -1; +static int hf_lppe_T_ecid_utra_MeasSupported_mRL_TDD_pathloss = -1; +static int hf_lppe_T_ecid_utra_MeasSupported_non_serving = -1; +static int hf_lppe_T_ecid_utra_MeasSupported_historic = -1; +static int hf_lppe_T_ecid_utra_nodeB_ADSupported_bslist = -1; +static int hf_lppe_T_ecid_utra_nodeB_ADSupported_bslocation = -1; +static int hf_lppe_T_ecid_utra_nodeB_ADSupported_transmit_power = -1; +static int hf_lppe_T_ecid_utra_nodeB_ADSupported_antenna_gain = -1; +static int hf_lppe_T_ecid_utra_nodeB_ADSupported_beam_width = -1; +static int hf_lppe_T_ecid_utra_nodeB_ADSupported_transmit_direction = -1; +static int hf_lppe_T_ecid_utra_nodeB_ADSupported_frequency_accuracy = -1; +static int hf_lppe_T_ecid_utra_nodeB_ADSupported_non_serving = -1; +static int hf_lppe_T_ecid_utra_HNB_ADSupported_bslist = -1; +static int hf_lppe_T_ecid_utra_HNB_ADSupported_bslocation = -1; +static int hf_lppe_T_ecid_utra_HNB_ADSupported_locationreliability = -1; +static int hf_lppe_T_ecid_utra_HNB_ADSupported_transmit_power = -1; +static int hf_lppe_T_ecid_utra_HNB_ADSupported_frequency_accuracy = -1; +static int hf_lppe_T_ecid_utra_HNB_ADSupported_coveragearea = -1; +static int hf_lppe_T_ecid_utra_HNB_ADSupported_non_serving = -1; +static int hf_lppe_T_requestedAD_01_aplist = -1; +static int hf_lppe_T_requestedAD_01_aplocation = -1; +static int hf_lppe_T_requestedAD_01_locationreliability = -1; +static int hf_lppe_T_requestedAD_01_transmit_power = -1; +static int hf_lppe_T_requestedAD_01_antenna_gain = -1; +static int hf_lppe_T_requestedAD_01_coveragearea = -1; +static int hf_lppe_T_requestedAD_01_non_serving = -1; +static int hf_lppe_T_requestedMeasurements_03_apSSID = -1; +static int hf_lppe_T_requestedMeasurements_03_apSN = -1; +static int hf_lppe_T_requestedMeasurements_03_apDevType = -1; +static int hf_lppe_T_requestedMeasurements_03_apPhyType = -1; +static int hf_lppe_T_requestedMeasurements_03_apRSSI = -1; +static int hf_lppe_T_requestedMeasurements_03_apChanFreq = -1; +static int hf_lppe_T_requestedMeasurements_03_apRTD = -1; +static int hf_lppe_T_requestedMeasurements_03_ueTP = -1; +static int hf_lppe_T_requestedMeasurements_03_ueAG = -1; +static int hf_lppe_T_requestedMeasurements_03_apRepLoc = -1; +static int hf_lppe_T_requestedMeasurements_03_non_serving = -1; +static int hf_lppe_T_requestedMeasurements_03_historic = -1; +static int hf_lppe_T_wlan_ecid_MeasSupported_apSSID = -1; +static int hf_lppe_T_wlan_ecid_MeasSupported_apSN = -1; +static int hf_lppe_T_wlan_ecid_MeasSupported_apDevType = -1; +static int hf_lppe_T_wlan_ecid_MeasSupported_apPhyType = -1; +static int hf_lppe_T_wlan_ecid_MeasSupported_apRSSI = -1; +static int hf_lppe_T_wlan_ecid_MeasSupported_apChanFreq = -1; +static int hf_lppe_T_wlan_ecid_MeasSupported_apRTD = -1; +static int hf_lppe_T_wlan_ecid_MeasSupported_ueTP = -1; +static int hf_lppe_T_wlan_ecid_MeasSupported_ueAG = -1; +static int hf_lppe_T_wlan_ecid_MeasSupported_apRepLoc = -1; +static int hf_lppe_T_wlan_ecid_MeasSupported_non_serving = -1; +static int hf_lppe_T_wlan_ecid_MeasSupported_historic = -1; +static int hf_lppe_T_wlan_ap_ADSupported_aplist = -1; +static int hf_lppe_T_wlan_ap_ADSupported_aplocation = -1; +static int hf_lppe_T_wlan_ap_ADSupported_locationreliability = -1; +static int hf_lppe_T_wlan_ap_ADSupported_transmit_power = -1; +static int hf_lppe_T_wlan_ap_ADSupported_antenna_gain = -1; +static int hf_lppe_T_wlan_ap_ADSupported_coveragearea = -1; +static int hf_lppe_T_wlan_ap_ADSupported_non_serving = -1; +static int hf_lppe_T_requestedMeasurements_04_rTD = -1; +static int hf_lppe_T_requestedMeasurements_04_rTDstd = -1; +static int hf_lppe_T_requestedMeasurements_04_nMR = -1; +static int hf_lppe_T_requestedMeasurements_04_nMRrelDelay = -1; +static int hf_lppe_T_requestedMeasurements_04_nMRrelDelaystd = -1; +static int hf_lppe_T_requestedMeasurements_04_nMRrSSI = -1; +static int hf_lppe_T_requestedMeasurements_04_nMRrSSIstd = -1; +static int hf_lppe_T_requestedMeasurements_04_nMRbSTxPower = -1; +static int hf_lppe_T_requestedMeasurements_04_nMRcINR = -1; +static int hf_lppe_T_requestedMeasurements_04_nMRcINRstd = -1; +static int hf_lppe_T_requestedMeasurements_04_nMRbSLocation = -1; +static int hf_lppe_T_requestedMeasurements_04_non_serving = -1; +static int hf_lppe_T_requestedMeasurements_04_historic = -1; +static int hf_lppe_T_ecid_wimax_MeasSupported_rTD = -1; +static int hf_lppe_T_ecid_wimax_MeasSupported_rTDstd = -1; +static int hf_lppe_T_ecid_wimax_MeasSupported_nMR = -1; +static int hf_lppe_T_ecid_wimax_MeasSupported_nMRrelDelay = -1; +static int hf_lppe_T_ecid_wimax_MeasSupported_nMRrelDelaystd = -1; +static int hf_lppe_T_ecid_wimax_MeasSupported_nMRrSSI = -1; +static int hf_lppe_T_ecid_wimax_MeasSupported_nMRrSSIstd = -1; +static int hf_lppe_T_ecid_wimax_MeasSupported_nMRbSTxPower = -1; +static int hf_lppe_T_ecid_wimax_MeasSupported_nMRcINR = -1; +static int hf_lppe_T_ecid_wimax_MeasSupported_nMRcINRstd = -1; +static int hf_lppe_T_ecid_wimax_MeasSupported_nMRbSLocation = -1; +static int hf_lppe_T_ecid_wimax_MeasSupported_non_serving = -1; +static int hf_lppe_T_ecid_wimax_MeasSupported_historic = -1; +static int hf_lppe_T_secondaryMotionState_stationary = -1; +static int hf_lppe_T_secondaryMotionState_pedestrian = -1; +static int hf_lppe_T_secondaryMotionState_running = -1; +static int hf_lppe_T_secondaryMotionState_cycling = -1; +static int hf_lppe_T_secondaryMotionState_car = -1; +static int hf_lppe_T_secondaryMotionState_train = -1; +static int hf_lppe_T_secondaryMotionState_aeroplane = -1; +static int hf_lppe_T_secondaryMotionState_boat = -1; +static int hf_lppe_T_secondaryMotionState_fidgeting = -1; +static int hf_lppe_T_supportedAssistanceData_srnGroup = -1; +static int hf_lppe_T_supportedAssistanceData_antennaPattern = -1; +static int hf_lppe_T_srnMeasurements_rssi = -1; +static int hf_lppe_T_srnMeasurements_rtd = -1; + +/*--- End of included file: packet-lppe-hf.c ---*/ +#line 52 "../../asn1/lppe/packet-lppe-template.c" + +/* Initialize the subtree pointers */ +static gint ett_lppe = -1; + +/*--- Included file: packet-lppe-ett.c ---*/ +#line 1 "../../asn1/lppe/packet-lppe-ett.c" +static gint ett_lppe_OMA_LPPe_MessageExtension = -1; +static gint ett_lppe_OMA_LPPe_LPPeVersion = -1; +static gint ett_lppe_OMA_LPPe_MessageExtensionBody = -1; +static gint ett_lppe_OMA_LPPe_RequestCapabilities = -1; +static gint ett_lppe_OMA_LPPe_ProvideCapabilities = -1; +static gint ett_lppe_OMA_LPPe_RequestAssistanceData = -1; +static gint ett_lppe_OMA_LPPe_ProvideAssistanceData = -1; +static gint ett_lppe_OMA_LPPe_RequestLocationInformation = -1; +static gint ett_lppe_OMA_LPPe_ProvideLocationInformation = -1; +static gint ett_lppe_OMA_LPPe_Abort = -1; +static gint ett_lppe_OMA_LPPe_Error = -1; +static gint ett_lppe_OMA_LPPe_AssistanceContainer_DataSerialNumber = -1; +static gint ett_lppe_OMA_LPPe_AssistanceContainerID = -1; +static gint ett_lppe_OMA_LPPe_AssistanceContainerProvideList = -1; +static gint ett_lppe_OMA_LPPe_AssistanceContainerProvide = -1; +static gint ett_lppe_T_dataResult = -1; +static gint ett_lppe_OMA_LPPe_AssistanceContainerData = -1; +static gint ett_lppe_OMA_LPPe_AssistanceContainerProvideError = -1; +static gint ett_lppe_OMA_LPPe_AssistanceContainerRequestList = -1; +static gint ett_lppe_OMA_LPPe_AssistanceContainerRequest = -1; +static gint ett_lppe_OMA_LPPe_AssistanceContainerCheckOrUpdateReq = -1; +static gint ett_lppe_OMA_LPPe_CellLocalIdGERAN = -1; +static gint ett_lppe_OMA_LPPe_CellNonUniqueIDGERAN = -1; +static gint ett_lppe_OMA_LPPe_CivicLocation = -1; +static gint ett_lppe_OMA_LPPe_CivicAddressElementList = -1; +static gint ett_lppe_OMA_LPPe_CivicAddressElement = -1; +static gint ett_lppe_OMA_LPPe_Duration = -1; +static gint ett_lppe_OMA_LPPe_FixedAccessTypes = -1; +static gint ett_lppe_OMA_LPPe_HighAccuracy3Dposition = -1; +static gint ett_lppe_OMA_LPPe_HighAccuracy3Dvelocity = -1; +static gint ett_lppe_OMA_LPPe_LocationInformationContainerID = -1; +static gint ett_lppe_OMA_LPPe_LocationInformationContainer = -1; +static gint ett_lppe_OMA_LPPe_LocationInformationContainerDataList = -1; +static gint ett_lppe_OMA_LPPe_LocationInformationContainerData = -1; +static gint ett_lppe_OMA_LPPe_LocationInformationContainerRequest = -1; +static gint ett_lppe_OMA_LPPe_LocationInformationContainerRequestList = -1; +static gint ett_lppe_OMA_LPPe_LocationInformationContainerRequestItem = -1; +static gint ett_lppe_OMA_LPPe_MapDataReference = -1; +static gint ett_lppe_OMA_LPPe_Orientation = -1; +static gint ett_lppe_T_eulerAngles = -1; +static gint ett_lppe_OMA_LPPe_ReferencePoint = -1; +static gint ett_lppe_T_referencePointGeographicLocation = -1; +static gint ett_lppe_SEQUENCE_SIZE_1_8_OF_OMA_LPPe_ReferencePointRelationship = -1; +static gint ett_lppe_OMA_LPPe_MapDataInformation = -1; +static gint ett_lppe_OMA_LPPe_MapDataReferenceElement = -1; +static gint ett_lppe_T_mapDataUrl = -1; +static gint ett_lppe_T_mapProvider = -1; +static gint ett_lppe_T_mapAssociation = -1; +static gint ett_lppe_OMA_LPPe_ReferencePointRelationship = -1; +static gint ett_lppe_OMA_LPPe_ReferencePointUniqueID = -1; +static gint ett_lppe_OMA_LPPe_RelativeLocation = -1; +static gint ett_lppe_OMA_LPPe_HorizontalUncertaintyAndConfidence = -1; +static gint ett_lppe_T_uncShape = -1; +static gint ett_lppe_T_ellipse = -1; +static gint ett_lppe_OMA_LPPe_RelativeAltitude = -1; +static gint ett_lppe_OMA_LPPe_GeodeticRelativeAltitude = -1; +static gint ett_lppe_OMA_LPPe_GeodeticUncertaintyAndConfidence = -1; +static gint ett_lppe_OMA_LPPe_CivicRelativeAltitude = -1; +static gint ett_lppe_OMA_LPPe_CivicUncertaintyAndConfidence = -1; +static gint ett_lppe_OMA_LPPe_Session_ID = -1; +static gint ett_lppe_OMA_LPPe_ValidityArea = -1; +static gint ett_lppe_OMA_LPPe_RleList = -1; +static gint ett_lppe_OMA_LPPe_ValidityPeriod = -1; +static gint ett_lppe_OMA_LPPe_VendorOrOperatorAssistanceDataIdentifier = -1; +static gint ett_lppe_OMA_LPPe_VendorOrOperatorID = -1; +static gint ett_lppe_OMA_LPPe_NonStandard_VendorOrOperatorID = -1; +static gint ett_lppe_OMA_LPPe_WirelessAccessTypes = -1; +static gint ett_lppe_OMA_LPPe_WLAN_AP_ID = -1; +static gint ett_lppe_OMA_LPPe_WLAN_AP_Type_List = -1; +static gint ett_lppe_OMA_LPPe_WLANFemtoCoverageArea = -1; +static gint ett_lppe_SEQUENCE_SIZE_1_16_OF_OMA_LPPe_WLANFemtoCoverageAreaElement = -1; +static gint ett_lppe_OMA_LPPe_WLANFemtoCoverageAreaElement = -1; +static gint ett_lppe_T_refPointAndArea = -1; +static gint ett_lppe_OMA_LPPe_CommonIEsRequestCapabilities = -1; +static gint ett_lppe_OMA_LPPe_IP_Address_RequestCapabilities = -1; +static gint ett_lppe_OMA_LPPe_AssistanceContainerSupportReq = -1; +static gint ett_lppe_OMA_LPPe_LocationInformationContainerSupportReq = -1; +static gint ett_lppe_OMA_LPPe_VendorOrOperatorIDList = -1; +static gint ett_lppe_OMA_LPPe_RelativeLocationChange_RequestCapabilities = -1; +static gint ett_lppe_OMA_LPPe_HighAccuracyFormatCapabilitiesReq = -1; +static gint ett_lppe_OMA_LPPe_SegmentedAssistanceData_ReqCapabilities = -1; +static gint ett_lppe_OMA_LPPe_ReferencePointCapabilitiesReq = -1; +static gint ett_lppe_SEQUENCE_SIZE_1_128_OF_OMA_LPPe_VendorOrOperatorID = -1; +static gint ett_lppe_OMA_LPPe_ScheduledLocation_RequestCapabilities = -1; +static gint ett_lppe_OMA_LPPe_AccessCapabilitiesReq = -1; +static gint ett_lppe_OMA_LPPe_SegmentedLocationInformation_ReqCapabilities = -1; +static gint ett_lppe_OMA_LPPe_CommonIEsProvideCapabilities = -1; +static gint ett_lppe_OMA_LPPe_IP_Address_Capabilities = -1; +static gint ett_lppe_T_iP_Address_support = -1; +static gint ett_lppe_OMA_LPPe_AssistanceContainerSupport = -1; +static gint ett_lppe_OMA_LPPe_VendorOrOperatorAssistanceContainerList = -1; +static gint ett_lppe_OMA_LPPe_AssistanceContainerList = -1; +static gint ett_lppe_OMA_LPPe_LocationInformationContainerSupport = -1; +static gint ett_lppe_OMA_LPPe_VendorOrOperatorLocationInformationContainerList = -1; +static gint ett_lppe_OMA_LPPe_LocationInformationContainerList = -1; +static gint ett_lppe_OMA_LPPe_RelativeLocationChange_Capabilities = -1; +static gint ett_lppe_OMA_LPPe_HighAccuracyFormatCapabilities = -1; +static gint ett_lppe_OMA_LPPe_SegmentedAssistanceData_ProvideCapabs = -1; +static gint ett_lppe_OMA_LPPe_ReferencePointCapabilities = -1; +static gint ett_lppe_T_relativeLocationReportingSupport = -1; +static gint ett_lppe_SEQUENCE_SIZE_1_128_OF_OMA_LPPe_ReferencePointProviderSupportElement = -1; +static gint ett_lppe_OMA_LPPe_ReferencePointProviderSupportElement = -1; +static gint ett_lppe_T_mapDataSupport = -1; +static gint ett_lppe_OMA_LPPe_ScheduledLocation_Capabilities = -1; +static gint ett_lppe_OMA_LPPe_AccessCapabilities = -1; +static gint ett_lppe_OMA_LPPe_SegmentedLocationInformation_ProvideCapabs = -1; +static gint ett_lppe_OMA_LPPe_CommonIEsRequestAssistanceData = -1; +static gint ett_lppe_OMA_LPPe_RequestPeriodicADwithUpdate = -1; +static gint ett_lppe_OMA_LPPe_SegmentedADResume = -1; +static gint ett_lppe_OMA_LPPe_ReferencePointAssistanceReq = -1; +static gint ett_lppe_SEQUENCE_SIZE_1_16_OF_OMA_LPPe_ReferencePointAssistanceReqElement = -1; +static gint ett_lppe_OMA_LPPe_ReferencePointAssistanceReqElement = -1; +static gint ett_lppe_OMA_LPPe_CommonIEsProvideAssistanceData = -1; +static gint ett_lppe_OMA_LPPe_ProvidePeriodicADwithUpdate = -1; +static gint ett_lppe_OMA_LPPe_SegmentedADTransfer = -1; +static gint ett_lppe_OMA_LPPe_CommonIEsRequestLocationInformation = -1; +static gint ett_lppe_OMA_LPPe_IP_Address_Request = -1; +static gint ett_lppe_OMA_LPPe_RequestPeriodicLocInfoWithUpdate = -1; +static gint ett_lppe_OMA_LPPe_RelativeLocationChange_Request = -1; +static gint ett_lppe_OMA_LPPe_LocalPositionRequest = -1; +static gint ett_lppe_SEQUENCE_SIZE_1_8_OF_OMA_LPPe_ReferencePointUniqueID = -1; +static gint ett_lppe_OMA_LPPe_ScheduledLocation_Request = -1; +static gint ett_lppe_OMA_LPPe_AccessTypeRequest = -1; +static gint ett_lppe_OMA_LPPe_SegmentedLIResume = -1; +static gint ett_lppe_OMA_LPPe_CommonIEsProvideLocationInformation = -1; +static gint ett_lppe_OMA_LPPe_LocalPosition = -1; +static gint ett_lppe_OMA_LPPe_IP_Address_List = -1; +static gint ett_lppe_OMA_LPPe_IP_Address = -1; +static gint ett_lppe_T_local_IP_Address = -1; +static gint ett_lppe_OMA_LPPe_ProvidePeriodicLocInfowithUpdate = -1; +static gint ett_lppe_OMA_LPPe_RelativeLocationChangeList = -1; +static gint ett_lppe_OMA_LPPe_RelativeLocationChange = -1; +static gint ett_lppe_OMA_LPPe_ScheduledLocation = -1; +static gint ett_lppe_T_actualWindow = -1; +static gint ett_lppe_OMA_LPPe_AccessTypes = -1; +static gint ett_lppe_OMA_LPPe_SegmentedLITransfer = -1; +static gint ett_lppe_OMA_LPPe_TimeStamp = -1; +static gint ett_lppe_OMA_LPPe_CommonIEsAbort = -1; +static gint ett_lppe_OMA_LPPe_CommonIEsError = -1; +static gint ett_lppe_OMA_LPPe_AGNSS_ProvideAssistanceData = -1; +static gint ett_lppe_OMA_LPPe_AGNSS_CommonAssistData = -1; +static gint ett_lppe_OMA_LPPe_AGNSS_GenericAssistData = -1; +static gint ett_lppe_OMA_LPPe_AGNSS_GenericAssistDataElement = -1; +static gint ett_lppe_OMA_LPPe_AGNSS_IonosphericModel = -1; +static gint ett_lppe_T_staticModels = -1; +static gint ett_lppe_T_waIono = -1; +static gint ett_lppe_OMA_LPPe_AGNSS_LocalKlobucharModelList = -1; +static gint ett_lppe_OMA_LPPe_AGNSS_LocalKlobucharModelElement = -1; +static gint ett_lppe_SEQUENCE_SIZE_1_8_OF_OMA_LPPe_AGNSS_LocalKlobucharModel = -1; +static gint ett_lppe_OMA_LPPe_AGNSS_LocalKlobucharModel = -1; +static gint ett_lppe_OMA_LPPe_AGNSS_IonoStormIndication = -1; +static gint ett_lppe_OMA_LPPe_AGNSS_StormList = -1; +static gint ett_lppe_OMA_LPPe_AGNSS_StormElement = -1; +static gint ett_lppe_OMA_LPPe_AGNSS_RleListIono = -1; +static gint ett_lppe_OMA_LPPe_AGNSS_RleIonoElement = -1; +static gint ett_lppe_T_ionoIndex = -1; +static gint ett_lppe_OMA_LPPe_AGNSS_WideAreaIonoSurfaceControlParametersProvide = -1; +static gint ett_lppe_OMA_LPPe_AGNSS_WideAreaIonoSurfaceCommon = -1; +static gint ett_lppe_OMA_LPPe_AGNSS_WideAreaIonoSurfacePerSVlist = -1; +static gint ett_lppe_OMA_LPPe_AGNSS_WideAreaIonoSurfacePerSVelement = -1; +static gint ett_lppe_OMA_LPPe_AGNSS_TroposphereModel = -1; +static gint ett_lppe_OMA_LPPe_AGNSS_LocalTroposphereDelayList = -1; +static gint ett_lppe_OMA_LPPe_AGNSS_LocalTroposphereDelayAreaElement = -1; +static gint ett_lppe_SEQUENCE_SIZE_1_8_OF_OMA_LPPe_AGNSS_LocalTroposphereDelayTimeElement = -1; +static gint ett_lppe_OMA_LPPe_AGNSS_LocalTroposphereDelayTimeElement = -1; +static gint ett_lppe_OMA_LPPe_AGNSS_LocalSurfaceParametersList = -1; +static gint ett_lppe_OMA_LPPe_AGNSS_LocalSurfaceParametersAreaElement = -1; +static gint ett_lppe_SEQUENCE_SIZE_1_8_OF_OMA_LPPe_AGNSS_LocalSurfaceParametersTimeElement = -1; +static gint ett_lppe_OMA_LPPe_AGNSS_LocalSurfaceParametersTimeElement = -1; +static gint ett_lppe_OMA_LPPe_AGNSS_MappingFunctionParameters = -1; +static gint ett_lppe_OMA_LPPe_AGNSS_AltitudeAssistanceList = -1; +static gint ett_lppe_OMA_LPPe_AGNSS_AltitudeAssistanceAreaElement = -1; +static gint ett_lppe_SEQUENCE_SIZE_1_16_OF_OMA_LPPe_AGNSS_PressureAssistanceElement = -1; +static gint ett_lppe_OMA_LPPe_AGNSS_PressureAssistanceElement = -1; +static gint ett_lppe_OMA_LPPe_AGNSS_SolarRadiation = -1; +static gint ett_lppe_OMA_LPPe_AGNSS_MechanicsForAllSVs = -1; +static gint ett_lppe_OMA_LPPe_AGNSS_MechanicsElement = -1; +static gint ett_lppe_T_svInfo = -1; +static gint ett_lppe_OMA_LPPe_AGNSS_PCOelement = -1; +static gint ett_lppe_OMA_LPPe_AGNSS_DCBsForAllSVs = -1; +static gint ett_lppe_OMA_LPPe_AGNSS_DCBlistElement = -1; +static gint ett_lppe_T_reference = -1; +static gint ett_lppe_OMA_LPPe_AGNSS_DCBlist = -1; +static gint ett_lppe_OMA_LPPe_AGNSS_DCBelement = -1; +static gint ett_lppe_OMA_LPPe_AGNSS_NavModelDegradationModelList = -1; +static gint ett_lppe_OMA_LPPe_AGNSS_NavModelDegradationModelElement = -1; +static gint ett_lppe_OMA_LPPe_AGNSS_ClockModelDegradationModel = -1; +static gint ett_lppe_OMA_LPPe_AGNSS_OrbitModelDegradationModel = -1; +static gint ett_lppe_OMA_LPPe_AGNSS_CCPassistCommonProvide = -1; +static gint ett_lppe_OMA_LPPe_AGNSS_CCPprovideCommonParameters = -1; +static gint ett_lppe_OMA_LPPe_AGNSS_CCPprovideControlParameters = -1; +static gint ett_lppe_OMA_LPPe_AGNSS_CCPsupportArea = -1; +static gint ett_lppe_SEQUENCE_SIZE_1_8_OF_OMA_LPPe_AGNSS_CCPsignalSupport = -1; +static gint ett_lppe_OMA_LPPe_AGNSS_CCPsignalSupport = -1; +static gint ett_lppe_OMA_LPPe_AGNSS_CCPreferenceStationList = -1; +static gint ett_lppe_OMA_LPPe_AGNSS_CCPreferenceStationElement = -1; +static gint ett_lppe_OMA_LPPe_AGNSS_CCPassistGenericProvide = -1; +static gint ett_lppe_OMA_LPPe_AGNSS_CCPassistGenericProvideElement = -1; +static gint ett_lppe_SEQUENCE_SIZE_1_8_OF_OMA_LPPe_AGNSS_CCPperSignalElement = -1; +static gint ett_lppe_OMA_LPPe_AGNSS_CCPperSignalElement = -1; +static gint ett_lppe_SEQUENCE_SIZE_1_64_OF_OMA_LPPe_AGNSS_CCPperSVelement = -1; +static gint ett_lppe_OMA_LPPe_AGNSS_CCPperSVelement = -1; +static gint ett_lppe_OMA_LPPe_AGNSS_CodePhaseError = -1; +static gint ett_lppe_OMA_LPPe_AGNSS_NavModelList = -1; +static gint ett_lppe_OMA_LPPe_AGNSS_NavModel_CoordinateBased = -1; +static gint ett_lppe_T_fixedInterval = -1; +static gint ett_lppe_T_bases = -1; +static gint ett_lppe_SEQUENCE_SIZE_1_97_OF_OMA_LPPe_AGNSS_NavModel_CoordinateBasedElement = -1; +static gint ett_lppe_OMA_LPPe_AGNSS_NavModel_CoordinateBasedElement = -1; +static gint ett_lppe_SEQUENCE_SIZE_1_64_OF_OMA_LPPe_AGNSS_NavModel_PVTelement = -1; +static gint ett_lppe_OMA_LPPe_AGNSS_NavModel_PVTelement = -1; +static gint ett_lppe_T_rateRecord = -1; +static gint ett_lppe_OMA_LPPe_AGNSS_NavModel_BigNumber = -1; +static gint ett_lppe_OMA_LPPe_AGNSS_NavModel_STDmatrix = -1; +static gint ett_lppe_OMA_LPPe_AGNSS_RequestAssistanceData = -1; +static gint ett_lppe_OMA_LPPe_AGNSS_CommonAssistanceDataReq = -1; +static gint ett_lppe_OMA_LPPe_AGNSS_GenericAssistanceDataReq = -1; +static gint ett_lppe_OMA_LPPe_AGNSS_GenericAssistDataReqElement = -1; +static gint ett_lppe_OMA_LPPe_AGNSS_IonosphericModelReq = -1; +static gint ett_lppe_T_staticModels_01 = -1; +static gint ett_lppe_T_ionoreq = -1; +static gint ett_lppe_T_periodicModels = -1; +static gint ett_lppe_OMA_LPPe_AGNSS_WideAreaIonoSurfaceControlParametersRequest = -1; +static gint ett_lppe_OMA_LPPe_AGNSS_TroposphereModelReq = -1; +static gint ett_lppe_T_troposphereModelReq = -1; +static gint ett_lppe_OMA_LPPe_AGNSS_AltitudeAssistanceReq = -1; +static gint ett_lppe_OMA_LPPe_AGNSS_SolarRadiationReq = -1; +static gint ett_lppe_OMA_LPPe_AGNSS_WaIonoSurfaceRequest = -1; +static gint ett_lppe_OMA_LPPe_AGNSS_NavModelDegradationModelReq = -1; +static gint ett_lppe_OMA_LPPe_AGNSS_DCBreq = -1; +static gint ett_lppe_T_reference_01 = -1; +static gint ett_lppe_OMA_LPPe_AGNSS_MechanicsReq = -1; +static gint ett_lppe_OMA_LPPe_AGNSS_CCPrequestControlParameters = -1; +static gint ett_lppe_T_ccpCommonRequest = -1; +static gint ett_lppe_T_refStation = -1; +static gint ett_lppe_T_posBasedReferenceStationRequest = -1; +static gint ett_lppe_OMA_LPPe_AGNSS_ReferenceStationIDlist = -1; +static gint ett_lppe_OMA_LPPe_AGNSS_CCPassistGenericReq = -1; +static gint ett_lppe_OMA_LPPe_AGNSS_NavigationModelReq = -1; +static gint ett_lppe_T_navModelID_PrefList = -1; +static gint ett_lppe_OMA_LPPe_AGNSS_ProvideLocationInformation = -1; +static gint ett_lppe_OMA_LPPe_AGNSS_HAgnssProvide = -1; +static gint ett_lppe_T_controlParameters = -1; +static gint ett_lppe_T_measurements = -1; +static gint ett_lppe_T_localPressure = -1; +static gint ett_lppe_SEQUENCE_SIZE_1_16_OF_OMA_LPPe_AGNSS_HAgnssMeasurementElement = -1; +static gint ett_lppe_OMA_LPPe_AGNSS_HAgnssMeasurementElement = -1; +static gint ett_lppe_SEQUENCE_SIZE_1_8_OF_OMA_LPPe_HAgnssPerSignalElement = -1; +static gint ett_lppe_OMA_LPPe_HAgnssPerSignalElement = -1; +static gint ett_lppe_SEQUENCE_SIZE_1_64_OF_OMA_LPPe_HAgnssPerSVelement = -1; +static gint ett_lppe_OMA_LPPe_HAgnssPerSVelement = -1; +static gint ett_lppe_OMA_LPPe_AGNSS_IonosphereMeasurements = -1; +static gint ett_lppe_OMA_LPPe_AGNSS_TECPerSV = -1; +static gint ett_lppe_OMA_LPPe_AGNSS_TECPerSVElement = -1; +static gint ett_lppe_OMA_LPPe_AGNSS_TECAtZenith = -1; +static gint ett_lppe_OMA_LPPe_AGNSS_LocalSurfaceMeasurements = -1; +static gint ett_lppe_T_temperatureMeasurement = -1; +static gint ett_lppe_OMA_LPPe_AGNSS_RequestLocationInformation = -1; +static gint ett_lppe_T_ionosphereMeasurementsReq = -1; +static gint ett_lppe_OMA_LPPe_AGNSS_PositioningInstructions = -1; +static gint ett_lppe_OMA_LPPe_AGNSS_LocalSurfaceMeasurementReq = -1; +static gint ett_lppe_OMA_LPPe_AGNSS_HAgnssRequestControlParameters = -1; +static gint ett_lppe_SEQUENCE_SIZE_1_16_OF_OMA_LPPe_AGNSS_HAgnssSignalReqElement = -1; +static gint ett_lppe_OMA_LPPe_AGNSS_HAgnssSignalReqElement = -1; +static gint ett_lppe_OMA_LPPe_AGNSS_ProvideCapabilities = -1; +static gint ett_lppe_OMA_LPPe_AGNSS_AssistanceDataSupportList = -1; +static gint ett_lppe_OMA_LPPe_AGNSS_EnvironmentObservationSupportList = -1; +static gint ett_lppe_T_ionosphereMeasurementSupport = -1; +static gint ett_lppe_OMA_LPPe_AGNSS_CommonAssistanceDataSupport = -1; +static gint ett_lppe_OMA_LPPe_AGNSS_IonosphericModelSupport = -1; +static gint ett_lppe_T_ionoModel = -1; +static gint ett_lppe_OMA_LPPe_AGNSS_TroposphereModelSupport = -1; +static gint ett_lppe_T_tropoModel = -1; +static gint ett_lppe_OMA_LPPe_AGNSS_AltitudeAssistanceSupport = -1; +static gint ett_lppe_OMA_LPPe_AGNSS_SolarRadiationSupport = -1; +static gint ett_lppe_OMA_LPPe_AGNSS_CCPsupport = -1; +static gint ett_lppe_OMA_LPPe_AGNSS_GenericAssistanceDataSupport = -1; +static gint ett_lppe_OMA_LPPe_AGNSS_GenericAssistDataSupportElement = -1; +static gint ett_lppe_OMA_LPPe_AGNSS_MechanicsSupport = -1; +static gint ett_lppe_OMA_LPPe_AGNSS_DCBsupport = -1; +static gint ett_lppe_OMA_LPPe_AGNSS_NavModelAccuracyModelDegradationSupport = -1; +static gint ett_lppe_OMA_LPPe_AGNSS_NavModelSupport = -1; +static gint ett_lppe_T_navModelSupport = -1; +static gint ett_lppe_OMA_LPPe_AGNSS_HAgnssSupport = -1; +static gint ett_lppe_T_modeSupport = -1; +static gint ett_lppe_T_haGNSSantennaInformationSupport = -1; +static gint ett_lppe_SEQUENCE_SIZE_1_8_OF_OMA_LPPe_AGNSS_HAgnssPerGNSSsupport = -1; +static gint ett_lppe_OMA_LPPe_AGNSS_HAgnssPerGNSSsupport = -1; +static gint ett_lppe_OMA_LPPe_AGNSS_RequestCapabilities = -1; +static gint ett_lppe_OMA_LPPe_AGNSS_Error = -1; +static gint ett_lppe_OMA_LPPe_AGNSS_LocationServerErrorCauses = -1; +static gint ett_lppe_OMA_LPPe_AGNSS_TargetDeviceErrorCauses = -1; +static gint ett_lppe_OMA_LPPe_AGNSS_CCPreferenceStationID = -1; +static gint ett_lppe_OMA_LPPe_AGNSS_AntennaDescription = -1; +static gint ett_lppe_T_antennaDescription = -1; +static gint ett_lppe_OMA_LPPe_AGNSS_Abort = -1; +static gint ett_lppe_T_targetDeviceAbortCauses = -1; +static gint ett_lppe_OMA_LPPe_OTDOA_ProvideAssistanceData = -1; +static gint ett_lppe_OMA_LPPe_OTDOA_ReferenceCellInfo = -1; +static gint ett_lppe_OMA_LPPe_OTDOA_PositionCalculationInfoRef = -1; +static gint ett_lppe_T_cellLocation = -1; +static gint ett_lppe_T_femtoCellInfo = -1; +static gint ett_lppe_OMA_LPPe_OTDOA_NeighbourCellInfoList = -1; +static gint ett_lppe_OMA_LPPe_OTDOA_NeighbourFreqCellInfoList = -1; +static gint ett_lppe_SEQUENCE_SIZE_1_maxLTEeNBs_OF_OMA_LPPe_OTDOA_NeighbourCellInfoElement_eNB = -1; +static gint ett_lppe_SEQUENCE_SIZE_1_maxLTEHeNBs_OF_OMA_LPPe_OTDOA_NeighbourCellInfoElement_HeNB = -1; +static gint ett_lppe_OMA_LPPe_OTDOA_NeighbourCellInfoElement_eNB = -1; +static gint ett_lppe_SEQUENCE_SIZE_1_maxLTEMacroCells_OF_OMA_LPPe_OTDOA_CellData = -1; +static gint ett_lppe_OMA_LPPe_OTDOA_NeighbourCellInfoElement_HeNB = -1; +static gint ett_lppe_OMA_LPPe_OTDOA_CellData = -1; +static gint ett_lppe_T_rtdInfo = -1; +static gint ett_lppe_OMA_LPPe_OTDOA_RTDquality = -1; +static gint ett_lppe_OMA_LPPe_OTDOA_RequestAssistanceData = -1; +static gint ett_lppe_T_lteCell = -1; +static gint ett_lppe_T_requestedCells = -1; +static gint ett_lppe_OMA_LPPe_OTDOA_ProvideLocationInformation = -1; +static gint ett_lppe_OMA_LPPe_OTDOA_LocationInformation = -1; +static gint ett_lppe_OMA_LPPe_OTDOA_RequestLocationInformation = -1; +static gint ett_lppe_OMA_LPPe_OTDOA_ProvideCapabilities = -1; +static gint ett_lppe_T_eNodeB_AD_sup = -1; +static gint ett_lppe_T_home_eNodeB_AD_sup = -1; +static gint ett_lppe_OMA_LPPe_OTDOA_RequestCapabilities = -1; +static gint ett_lppe_OMA_LPPe_OTDOA_Error = -1; +static gint ett_lppe_OMA_LPPe_OTDOA_LocationServerErrorCauses = -1; +static gint ett_lppe_OMA_LPPe_OTDOA_TargetDeviceErrorCauses = -1; +static gint ett_lppe_OMA_LPPe_EOTD_ProvideAssistanceData = -1; +static gint ett_lppe_OMA_LPPe_EOTD_ReferenceBTSForAssistance = -1; +static gint ett_lppe_T_btsPosition = -1; +static gint ett_lppe_OMA_LPPe_EOTD_MsrAssistDataList = -1; +static gint ett_lppe_OMA_LPPe_EOTD_MsrAssistBTS = -1; +static gint ett_lppe_OMA_LPPe_EOTD_SystemInfoAssistDataList = -1; +static gint ett_lppe_OMA_LPPe_EOTD_SystemInfoAssistBTS = -1; +static gint ett_lppe_OMA_LPPe_EOTD_AssistBTSData = -1; +static gint ett_lppe_OMA_LPPe_EOTD_CalcAssistanceBTS = -1; +static gint ett_lppe_OMA_LPPe_EOTD_relativePos = -1; +static gint ett_lppe_OMA_LPPe_EOTD_RequestAssistanceData = -1; +static gint ett_lppe_T_eotdAssistanceReq = -1; +static gint ett_lppe_OMA_LPPe_EOTD_ProvideLocationInformation = -1; +static gint ett_lppe_OMA_LPPe_EOTD_MsrElement = -1; +static gint ett_lppe_SEQUENCE_SIZE_1_15_OF_OMA_LPPe_EOTD_MeasurementWithID = -1; +static gint ett_lppe_OMA_LPPe_EOTD_TOA_MeasurementsOfRef = -1; +static gint ett_lppe_OMA_LPPe_EOTD_MeasurementWithID = -1; +static gint ett_lppe_OMA_LPPe_EOTD_NeighborIdentity = -1; +static gint ett_lppe_OMA_LPPe_EOTD_EOTDQuality = -1; +static gint ett_lppe_OMA_LPPe_EOTD_MultiFrameCarrier = -1; +static gint ett_lppe_OMA_LPPe_EOTD_RequestLocationInformation = -1; +static gint ett_lppe_OMA_LPPe_EOTD_ProvideCapabilities = -1; +static gint ett_lppe_T_eotdSupport = -1; +static gint ett_lppe_OMA_LPPe_EOTD_RequestCapabilities = -1; +static gint ett_lppe_OMA_LPPe_EOTD_Error = -1; +static gint ett_lppe_OMA_LPPe_EOTD_LocationServerErrorCauses = -1; +static gint ett_lppe_OMA_LPPe_EOTD_TargetDeviceErrorCauses = -1; +static gint ett_lppe_OMA_LPPe_EOTD_ExpectedOTD = -1; +static gint ett_lppe_OMA_LPPe_OTDOA_UTRA_ProvideAssistanceData = -1; +static gint ett_lppe_OMA_LPPe_OTDOA_UTRA_ReferenceCellInfo = -1; +static gint ett_lppe_T_modeSpecificInfo = -1; +static gint ett_lppe_T_fdd = -1; +static gint ett_lppe_T_tdd = -1; +static gint ett_lppe_OMA_LPPe_OTDOA_UTRA_RefPosAssist = -1; +static gint ett_lppe_T_cellPosition = -1; +static gint ett_lppe_OMA_LPPe_OTDOA_UTRA_NeighborCellList = -1; +static gint ett_lppe_OMA_LPPe_OTDOA_UTRA_NeighborCellInfo = -1; +static gint ett_lppe_T_modeSpecificInfo_01 = -1; +static gint ett_lppe_T_fdd_01 = -1; +static gint ett_lppe_T_tdd_01 = -1; +static gint ett_lppe_OMA_LPPe_OTDOA_UTRA_SFN_SFN_RelTimeDifference1 = -1; +static gint ett_lppe_OMA_LPPe_OTDOA_UTRA_PositioningAssistance = -1; +static gint ett_lppe_OMA_LPPe_OTDOA_UTRA_IPDL_Parameters = -1; +static gint ett_lppe_T_modeSpecificInfo_02 = -1; +static gint ett_lppe_T_fdd_02 = -1; +static gint ett_lppe_T_tdd_02 = -1; +static gint ett_lppe_OMA_LPPe_OTDOA_UTRA_BurstModeParameters = -1; +static gint ett_lppe_OMA_LPPe_OTDOA_UTRA_RequestAssistanceData = -1; +static gint ett_lppe_T_otdoaUtraAssistanceReq = -1; +static gint ett_lppe_OMA_LPPe_OTDOA_UTRA_ProvideLocationInformation = -1; +static gint ett_lppe_OMA_LPPe_OTDOA_UTRA_Measurement = -1; +static gint ett_lppe_T_modeSpecificInfoMeas = -1; +static gint ett_lppe_T_fdd_03 = -1; +static gint ett_lppe_T_tdd_03 = -1; +static gint ett_lppe_OMA_LPPe_OTDOA_UTRA_UE_RX_TX_TimeDifferenceType2Info = -1; +static gint ett_lppe_OMA_LPPe_OTDOA_UTRA_NeighborList = -1; +static gint ett_lppe_OMA_LPPe_OTDOA_UTRA_Neighbor = -1; +static gint ett_lppe_T_modeSpecificInfo_03 = -1; +static gint ett_lppe_T_fdd_04 = -1; +static gint ett_lppe_T_tdd_04 = -1; +static gint ett_lppe_OMA_LPPe_OTDOA_UTRA_NeighborQuality = -1; +static gint ett_lppe_OMA_LPPe_OTDOA_UTRA_Quality = -1; +static gint ett_lppe_OMA_LPPe_OTDOA_UTRA_TimeStampData = -1; +static gint ett_lppe_T_nonUniqueCellID = -1; +static gint ett_lppe_OMA_LPPe_OTDOA_UTRA_RequestLocationInformation = -1; +static gint ett_lppe_OMA_LPPe_OTDOA_UTRA_ProvideCapabilities = -1; +static gint ett_lppe_OMA_LPPe_OTDOA_UTRA_RequestCapabilities = -1; +static gint ett_lppe_OMA_LPPe_OTDOA_UTRA_Error = -1; +static gint ett_lppe_OMA_LPPe_OTDOA_UTRA_LocationServerErrorCauses = -1; +static gint ett_lppe_OMA_LPPe_OTDOA_UTRA_TargetDeviceErrorCauses = -1; +static gint ett_lppe_OMA_LPPe_OTDOA_UTRA_PrimaryCPICH_Info = -1; +static gint ett_lppe_OMA_LPPe_OTDOA_UTRA_CellAndChannelIdentity = -1; +static gint ett_lppe_OMA_LPPe_ECID_LTE_ProvideAssistanceData = -1; +static gint ett_lppe_SEQUENCE_SIZE_1_maxLTENetworks_OF_OMA_LPPe_ECID_LTE_NetworkData = -1; +static gint ett_lppe_OMA_LPPe_ECID_LTE_NetworkData = -1; +static gint ett_lppe_T_plmn_Identity = -1; +static gint ett_lppe_T_mcc = -1; +static gint ett_lppe_T_mnc = -1; +static gint ett_lppe_SEQUENCE_SIZE_1_maxLTEeNBs_OF_OMA_LPPe_ECID_LTE_eNodeBData = -1; +static gint ett_lppe_SEQUENCE_SIZE_1_maxLTEHeNBs_OF_OMA_LPPe_ECID_LTE_HeNBData = -1; +static gint ett_lppe_OMA_LPPe_ECID_LTE_eNodeBData = -1; +static gint ett_lppe_SEQUENCE_SIZE_1_maxLTEMacroCells_OF_OMA_LPPe_ECID_LTE_CellData = -1; +static gint ett_lppe_OMA_LPPe_ECID_LTE_HeNBData = -1; +static gint ett_lppe_OMA_LPPe_ECID_LTE_CellData = -1; +static gint ett_lppe_OMA_LPPe_ECID_LTE_RequestAssistanceData = -1; +static gint ett_lppe_T_eNBrequestedAD = -1; +static gint ett_lppe_T_heNBrequestedAD = -1; +static gint ett_lppe_OMA_LPPe_ECID_LTE_ProvideLocationInformation = -1; +static gint ett_lppe_SEQUENCE_SIZE_1_maxLTEECIDSize_OF_OMA_LPPe_ECID_LTE_LocationInformationList = -1; +static gint ett_lppe_OMA_LPPe_ECID_LTE_LocationInformationList = -1; +static gint ett_lppe_OMA_LPPe_ECID_LTE_LocationInformation = -1; +static gint ett_lppe_OMA_LPPe_ECID_LTE_RequestLocationInformation = -1; +static gint ett_lppe_T_requestedMeasurements = -1; +static gint ett_lppe_OMA_LPPe_ECID_LTE_ProvideCapabilities = -1; +static gint ett_lppe_T_ecid_lte_MeasSupported = -1; +static gint ett_lppe_T_ecid_lte_eNodeB_ADSupported = -1; +static gint ett_lppe_T_ecid_utra_HeNB_ADSupported = -1; +static gint ett_lppe_OMA_LPPe_ECID_LTE_RequestCapabilities = -1; +static gint ett_lppe_OMA_LPPe_ECID_LTE_Error = -1; +static gint ett_lppe_OMA_LPPe_ECID_LTE_LocationServerErrorCauses = -1; +static gint ett_lppe_OMA_LPPe_ECID_LTE_TargetDeviceErrorCauses = -1; +static gint ett_lppe_OMA_LPPe_ECID_GSM_ProvideAssistanceData = -1; +static gint ett_lppe_SEQUENCE_SIZE_1_maxGSMNetworks_OF_OMA_LPPe_ECID_GSM_NetworkData = -1; +static gint ett_lppe_OMA_LPPe_ECID_GSM_NetworkData = -1; +static gint ett_lppe_T_plmn_Identity_01 = -1; +static gint ett_lppe_T_mcc_01 = -1; +static gint ett_lppe_T_mnc_01 = -1; +static gint ett_lppe_SEQUENCE_SIZE_1_maxGSMBaseStations_OF_OMA_LPPe_ECID_GSM_BaseStationData = -1; +static gint ett_lppe_OMA_LPPe_ECID_GSM_BaseStationData = -1; +static gint ett_lppe_SEQUENCE_SIZE_1_maxGSMCells_OF_OMA_LPPe_ECID_GSM_CellData = -1; +static gint ett_lppe_OMA_LPPe_ECID_GSM_CellData = -1; +static gint ett_lppe_OMA_LPPe_ECID_GSM_RequestAssistanceData = -1; +static gint ett_lppe_T_requestedAD = -1; +static gint ett_lppe_OMA_LPPe_ECID_GSM_ProvideLocationInformation = -1; +static gint ett_lppe_SEQUENCE_SIZE_1_maxGSMECIDSize_OF_OMA_LPPe_ECID_GSM_LocationInformationList = -1; +static gint ett_lppe_OMA_LPPe_ECID_GSM_LocationInformationList = -1; +static gint ett_lppe_OMA_LPPe_ECID_GSM_LocationInformation = -1; +static gint ett_lppe_OMA_LPPe_NMR_GERAN = -1; +static gint ett_lppe_OMA_LPPe_NMR_GERAN_item = -1; +static gint ett_lppe_OMA_LPPe_ECID_GSM_RequestLocationInformation = -1; +static gint ett_lppe_T_requestedMeasurements_01 = -1; +static gint ett_lppe_OMA_LPPe_ECID_GSM_ProvideCapabilities = -1; +static gint ett_lppe_T_ecid_gsm_MeasSupported = -1; +static gint ett_lppe_T_ecid_gsm_ADSupported = -1; +static gint ett_lppe_OMA_LPPe_ECID_GSM_RequestCapabilities = -1; +static gint ett_lppe_OMA_LPPe_ECID_GSM_Error = -1; +static gint ett_lppe_OMA_LPPe_ECID_GSM_LocationServerErrorCauses = -1; +static gint ett_lppe_OMA_LPPe_ECID_GSM_TargetDeviceErrorCauses = -1; +static gint ett_lppe_OMA_LPPe_ECID_UTRA_ProvideAssistanceData = -1; +static gint ett_lppe_SEQUENCE_SIZE_1_maxUTRANetworks_OF_OMA_LPPe_ECID_UTRA_NetworkData = -1; +static gint ett_lppe_OMA_LPPe_ECID_UTRA_NetworkData = -1; +static gint ett_lppe_T_plmn_Identity_02 = -1; +static gint ett_lppe_T_mcc_02 = -1; +static gint ett_lppe_T_mnc_02 = -1; +static gint ett_lppe_SEQUENCE_SIZE_1_maxUTRAnodeBs_OF_OMA_LPPe_ECID_UTRA_NodeBData = -1; +static gint ett_lppe_SEQUENCE_SIZE_1_maxUTRAHNBs_OF_OMA_LPPe_ECID_UTRA_HNBData = -1; +static gint ett_lppe_OMA_LPPe_ECID_UTRA_NodeBData = -1; +static gint ett_lppe_SEQUENCE_SIZE_1_maxUTRAMacroCells_OF_OMA_LPPe_ECID_UTRA_CellData = -1; +static gint ett_lppe_OMA_LPPe_ECID_UTRA_HNBData = -1; +static gint ett_lppe_OMA_LPPe_ECID_UTRA_CellData = -1; +static gint ett_lppe_T_modeSpecificInfo_04 = -1; +static gint ett_lppe_T_fdd_05 = -1; +static gint ett_lppe_T_tdd_05 = -1; +static gint ett_lppe_OMA_LPPe_ECID_UTRA_RequestAssistanceData = -1; +static gint ett_lppe_T_nBrequestedAD = -1; +static gint ett_lppe_T_hNBrequestedAD = -1; +static gint ett_lppe_OMA_LPPe_ECID_UTRA_ProvideLocationInformation = -1; +static gint ett_lppe_SEQUENCE_SIZE_1_maxECIDUTRASize_OF_OMA_LPPe_ECID_UTRA_LocationInformationList = -1; +static gint ett_lppe_OMA_LPPe_ECID_UTRA_LocationInformationList = -1; +static gint ett_lppe_OMA_LPPe_ECID_UTRA_LocationInformation = -1; +static gint ett_lppe_OMA_LPPe_ECID_UTRA_UTRATimingAdvance = -1; +static gint ett_lppe_OMA_LPPe_UTRA_FrequencyInfo = -1; +static gint ett_lppe_OMA_LPPe_UTRA_ModeSpecificInfo = -1; +static gint ett_lppe_OMA_LPPe_UTRA_FrequencyInfoFDD = -1; +static gint ett_lppe_OMA_LPPe_UTRA_FrequencyInfoTDD = -1; +static gint ett_lppe_OMA_LPPe_ECID_UTRA_MeasuredResultsList = -1; +static gint ett_lppe_OMA_LPPe_ECID_UTRA_MeasuredResults = -1; +static gint ett_lppe_OMA_LPPe_ECID_UTRA_CellMeasuredResultsList = -1; +static gint ett_lppe_OMA_LPPe_ECID_UTRA_CellMeasuredResults = -1; +static gint ett_lppe_T_modeSpecificInfo_05 = -1; +static gint ett_lppe_T_fdd_06 = -1; +static gint ett_lppe_T_tdd_06 = -1; +static gint ett_lppe_OMA_LPPe_ECID_UTRA_RequestLocationInformation = -1; +static gint ett_lppe_T_requestedMeasurements_02 = -1; +static gint ett_lppe_OMA_LPPe_ECID_UTRA_ProvideCapabilities = -1; +static gint ett_lppe_T_ecid_utra_MeasSupported = -1; +static gint ett_lppe_T_ecid_utra_nodeB_ADSupported = -1; +static gint ett_lppe_T_ecid_utra_HNB_ADSupported = -1; +static gint ett_lppe_OMA_LPPe_ECID_UTRA_RequestCapabilities = -1; +static gint ett_lppe_OMA_LPPe_ECID_UTRA_Error = -1; +static gint ett_lppe_OMA_LPPe_ECID_UTRA_LocationServerErrorCauses = -1; +static gint ett_lppe_OMA_LPPe_ECID_UTRA_TargetDeviceErrorCauses = -1; +static gint ett_lppe_OMA_LPPe_WLAN_AP_ProvideAssistanceData = -1; +static gint ett_lppe_SEQUENCE_SIZE_1_maxWLANDataSets_OF_OMA_LPPe_WLAN_DataSet = -1; +static gint ett_lppe_OMA_LPPe_WLAN_DataSet = -1; +static gint ett_lppe_T_plmn_Identity_03 = -1; +static gint ett_lppe_T_mcc_03 = -1; +static gint ett_lppe_T_mnc_03 = -1; +static gint ett_lppe_SEQUENCE_SIZE_1_maxWLANAPs_OF_OMA_LPPe_WLAN_AP_Data = -1; +static gint ett_lppe_Supported_Channels_11a = -1; +static gint ett_lppe_Supported_Channels_11bg = -1; +static gint ett_lppe_OMA_LPPe_WLAN_AP_Data = -1; +static gint ett_lppe_SEQUENCE_SIZE_1_maxWLANTypes_OF_OMA_LPPe_WLAN_AP_Type_Data = -1; +static gint ett_lppe_OMA_LPPe_WLAN_AP_Type_Data = -1; +static gint ett_lppe_OMA_LPPe_WLAN_AP_RequestAssistanceData = -1; +static gint ett_lppe_T_requestedAD_01 = -1; +static gint ett_lppe_OMA_LPPe_WLAN_AP_ProvideLocationInformation = -1; +static gint ett_lppe_SEQUENCE_SIZE_1_maxWLANAPSize_OF_OMA_LPPe_WLAN_AP_LocationInformationList = -1; +static gint ett_lppe_OMA_LPPe_WLAN_AP_LocationInformationList = -1; +static gint ett_lppe_OMA_LPPe_WLAN_AP_LocationInformation = -1; +static gint ett_lppe_OMA_LPPe_WLAN_RTD = -1; +static gint ett_lppe_OMA_LPPe_WLAN_ReportedLocation = -1; +static gint ett_lppe_OMA_LPPe_WLAN_LocationDataLCI = -1; +static gint ett_lppe_OMA_LPPe_WLAN_AP_RequestLocationInformation = -1; +static gint ett_lppe_T_requestedMeasurements_03 = -1; +static gint ett_lppe_OMA_LPPe_WLAN_AP_ProvideCapabilities = -1; +static gint ett_lppe_T_wlan_ecid_MeasSupported = -1; +static gint ett_lppe_T_wlan_ap_ADSupported = -1; +static gint ett_lppe_OMA_LPPe_WLAN_AP_Capability = -1; +static gint ett_lppe_OMA_LPPe_WLAN_AP_RequestCapabilities = -1; +static gint ett_lppe_OMA_LPPe_WLAN_AP_Error = -1; +static gint ett_lppe_OMA_LPPe_WLAN_AP_LocationServerErrorCauses = -1; +static gint ett_lppe_OMA_LPPe_WLAN_AP_TargetDeviceErrorCauses = -1; +static gint ett_lppe_OMA_LPPe_ECID_WiMax_ProvideLocationInformation = -1; +static gint ett_lppe_SEQUENCE_SIZE_1_maxWiMaxECIDSize_OF_OMA_LPPe_ECID_WiMax_LocationInformationList = -1; +static gint ett_lppe_OMA_LPPe_ECID_WiMax_LocationInformationList = -1; +static gint ett_lppe_OMA_LPPe_ECID_WiMax_LocationInformation = -1; +static gint ett_lppe_OMA_LPPe_ECID_WiMax_WimaxBsID = -1; +static gint ett_lppe_OMA_LPPe_ECID_WiMax_WimaxRTD = -1; +static gint ett_lppe_OMA_LPPe_ECID_WiMax_WimaxNMRList = -1; +static gint ett_lppe_OMA_LPPe_ECID_WiMax_WimaxNMR = -1; +static gint ett_lppe_OMA_LPPe_ECID_WiMax_RequestLocationInformation = -1; +static gint ett_lppe_T_requestedMeasurements_04 = -1; +static gint ett_lppe_OMA_LPPe_ECID_WiMax_ProvideCapabilities = -1; +static gint ett_lppe_T_ecid_wimax_MeasSupported = -1; +static gint ett_lppe_OMA_LPPe_ECID_WiMax_RequestCapabilities = -1; +static gint ett_lppe_OMA_LPPe_ECID_WiMax_Error = -1; +static gint ett_lppe_OMA_LPPe_ECID_WiMax_LocationServerErrorCauses = -1; +static gint ett_lppe_OMA_LPPe_ECID_WiMax_TargetDeviceErrorCauses = -1; +static gint ett_lppe_OMA_LPPe_Sensor_ProvideAssistanceData = -1; +static gint ett_lppe_OMA_LPPe_Sensor_RequestAssistanceData = -1; +static gint ett_lppe_OMA_LPPe_Sensor_ProvideLocationInformation = -1; +static gint ett_lppe_OMA_LPPe_Sensor_MotionStateList = -1; +static gint ett_lppe_OMA_LPPe_Sensor_MotionStateElement = -1; +static gint ett_lppe_T_secondaryMotionState = -1; +static gint ett_lppe_OMA_LPPe_Sensor_RequestLocationInformation = -1; +static gint ett_lppe_OMA_LPPe_Sensor_MotionStateRequest = -1; +static gint ett_lppe_OMA_LPPe_Sensor_ProvideCapabilities = -1; +static gint ett_lppe_OMA_LPPe_Sensor_RequestCapabilities = -1; +static gint ett_lppe_OMA_LPPe_Sensor_Error = -1; +static gint ett_lppe_OMA_LPPe_Sensor_TargetError = -1; +static gint ett_lppe_OMA_LPPe_SRN_ProvideAssistanceData = -1; +static gint ett_lppe_T_srnGroup = -1; +static gint ett_lppe_OMA_LPPe_SRN_SRNgroupList = -1; +static gint ett_lppe_SEQUENCE_SIZE_1_64_OF_OMA_LPPe_SRN_SRNgroup = -1; +static gint ett_lppe_OMA_LPPe_SRN_SRNgroup = -1; +static gint ett_lppe_SEQUENCE_SIZE_1_1024_OF_OMA_LPPe_SRN_SRNinfo = -1; +static gint ett_lppe_OMA_LPPe_SRN_SRNinfo = -1; +static gint ett_lppe_OMA_LPPe_SRN_SRNgroupUpdateResponse = -1; +static gint ett_lppe_OMA_LPPe_SRN_SRNgroupUpdateResponseElement = -1; +static gint ett_lppe_OMA_LPPe_SRN_AntennaPattern = -1; +static gint ett_lppe_OMA_LPPe_SRN_AntennaPatternElement = -1; +static gint ett_lppe_T_identification = -1; +static gint ett_lppe_T_antennaData = -1; +static gint ett_lppe_OMA_LPPe_SRN_AntennaPatternForChannels = -1; +static gint ett_lppe_T_evenGrid = -1; +static gint ett_lppe_SEQUENCE_SIZE_1_maxChannels_OF_OMA_LPPe_SRN_ChannelResponse = -1; +static gint ett_lppe_OMA_LPPe_SRN_ChannelResponse = -1; +static gint ett_lppe_SEQUENCE_SIZE_7_901_OF_OMA_LPPe_SRN_ResponseInElevation = -1; +static gint ett_lppe_OMA_LPPe_SRN_ResponseInElevation = -1; +static gint ett_lppe_SEQUENCE_SIZE_18_3601_OF_OMA_LPPe_SRN_ResponseInAzimuth = -1; +static gint ett_lppe_OMA_LPPe_SRN_ResponseInAzimuth = -1; +static gint ett_lppe_OMA_LPPe_ComplexNumber = -1; +static gint ett_lppe_OMA_LPPe_SRN_RequestAssistanceData = -1; +static gint ett_lppe_T_srnGroup_01 = -1; +static gint ett_lppe_OMA_LPPe_SRN_SRNgroupRequest = -1; +static gint ett_lppe_OMA_LPPe_SRN_SRNProvideList = -1; +static gint ett_lppe_SEQUENCE_SIZE_1_256_OF_OMA_LPPe_SRN_SRNgroupUniqueID = -1; +static gint ett_lppe_SEQUENCE_SIZE_1_16_OF_OMA_LPPe_SRN_Category = -1; +static gint ett_lppe_OMA_LPPe_SRN_SRNgroupUpdateRequest = -1; +static gint ett_lppe_OMA_LPPe_SRN_SRNgroupUpdateRequestElement = -1; +static gint ett_lppe_SEQUENCE_SIZE_1_1024_OF_OMA_LPPe_SRN_SRNid = -1; +static gint ett_lppe_OMA_LPPe_SRN_AntennaPatternRequest = -1; +static gint ett_lppe_OMA_LPPe_SRN_AntennaPatternRequestElement = -1; +static gint ett_lppe_T_antennaPatternID = -1; +static gint ett_lppe_OMA_LPPe_SRN_ProvideLocationInformation = -1; +static gint ett_lppe_SEQUENCE_SIZE_1_64_OF_OMA_LPPe_SRN_MeasurementElement = -1; +static gint ett_lppe_OMA_LPPe_SRN_MeasurementElement = -1; +static gint ett_lppe_SEQUENCE_SIZE_1_64_OF_OMA_LPPe_SRN_srnMeasurementElement = -1; +static gint ett_lppe_OMA_LPPe_SRN_srnMeasurementElement = -1; +static gint ett_lppe_OMA_LPPe_SRN_RequestLocationInformation = -1; +static gint ett_lppe_SEQUENCE_SIZE_1_16_OF_OMA_LPPe_SRN_ReqLocInfo_Category = -1; +static gint ett_lppe_OMA_LPPe_SRN_ReqLocInfo_Category = -1; +static gint ett_lppe_OMA_LPPe_SRN_ProvideCapabilities = -1; +static gint ett_lppe_SEQUENCE_SIZE_1_16_OF_OMA_LPPe_SRN_ProvideCapabilitiesElement = -1; +static gint ett_lppe_OMA_LPPe_SRN_ProvideCapabilitiesElement = -1; +static gint ett_lppe_T_supportedAssistanceData = -1; +static gint ett_lppe_OMA_LPPe_SRN_RequestCapabilities = -1; +static gint ett_lppe_OMA_LPPe_SRN_Error = -1; +static gint ett_lppe_OMA_LPPe_SRN_LocationServerErrorCauses = -1; +static gint ett_lppe_OMA_LPPe_SRN_TargetDeviceErrorCauses = -1; +static gint ett_lppe_SEQUENCE_SIZE_1_16_OF_OMA_LPPe_SRN_TargetDeviceError = -1; +static gint ett_lppe_OMA_LPPe_SRN_TargetDeviceError = -1; +static gint ett_lppe_OMA_LPPe_SRN_SRNgroupUniqueID = -1; +static gint ett_lppe_OMA_LPPe_SRN_SRNtype = -1; +static gint ett_lppe_T_srnAntennaInfo = -1; +static gint ett_lppe_OMA_LPPe_SRN_Category = -1; +static gint ett_lppe_T_srnVendorInformation = -1; +static gint ett_lppe_OMA_LPPe_SRN_SRNid = -1; +static gint ett_lppe_T_srn_id = -1; +static gint ett_lppe_T_nfc = -1; +static gint ett_lppe_T_mobileCode = -1; +static gint ett_lppe_OMA_LPPe_SRN_Technologies = -1; +static gint ett_lppe_OMA_LPPe_SRN_MeasurementMask = -1; +static gint ett_lppe_T_srnMeasurements = -1; + +/*--- End of included file: packet-lppe-ett.c ---*/ +#line 56 "../../asn1/lppe/packet-lppe-template.c" + +/* Include constants */ + +/*--- Included file: packet-lppe-val.h ---*/ +#line 1 "../../asn1/lppe/packet-lppe-val.h" +#define maxAssistanceContainerList 16 +#define maxLocationInformationContainerDataList 10 +#define maxVendorOrOperatorIDList 32 +#define maxLocationInformationContainerList 64 +#define maxIPAddress 5 +#define maxRelativeLocation 5 +#define maxReferenceStations 8 +#define maxFreqLayers 3 +#define utra_maxCellMeas 32 +#define maxLTENetworks 8 +#define maxLTEeNBs 32 +#define maxLTEHeNBs 128 +#define maxLTEMacroCells 8 +#define maxLTEECIDSize 64 +#define maxGSMNetworks 8 +#define maxGSMBaseStations 32 +#define maxGSMCells 8 +#define maxGSMECIDSize 64 +#define maxUTRANetworks 8 +#define maxUTRAnodeBs 32 +#define maxUTRAHNBs 128 +#define maxUTRAMacroCells 8 +#define maxECIDUTRASize 64 +#define maxFreq 8 +#define maxWLANDataSets 8 +#define maxWLANAPs 128 +#define maxWLANTypes 5 +#define maxWLANAPSize 64 +#define maxWiMaxECIDSize 1264 +#define maxWimaxBSMeas 32 +#define maxChannels 512 + +/*--- End of included file: packet-lppe-val.h ---*/ +#line 59 "../../asn1/lppe/packet-lppe-template.c" + + + +/*--- Included file: packet-lppe-fn.c ---*/ +#line 1 "../../asn1/lppe/packet-lppe-fn.c" + + +static int +dissect_lppe_OMA_LPPe_LPPeCompatibilityLevel(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index, + 0U, 15U, NULL, FALSE); + + return offset; +} + + + +static int +dissect_lppe_INTEGER_0_255(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index, + 0U, 255U, NULL, FALSE); + + return offset; +} + + +static const per_sequence_t OMA_LPPe_LPPeVersion_sequence[] = { + { &hf_lppe_majorVersion , ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lppe_INTEGER_0_255 }, + { &hf_lppe_minorVersion , ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lppe_INTEGER_0_255 }, + { NULL, 0, 0, NULL } +}; + +static int +dissect_lppe_OMA_LPPe_LPPeVersion(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index, + ett_lppe_OMA_LPPe_LPPeVersion, OMA_LPPe_LPPeVersion_sequence); + + return offset; +} + + +static const value_string lppe_OMA_LPPe_LPPeMode_vals[] = { + { 0, "normal" }, + { 1, "reversed" }, + { 0, NULL } +}; + + +static int +dissect_lppe_OMA_LPPe_LPPeMode(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_enumerated(tvb, offset, actx, tree, hf_index, + 2, NULL, TRUE, 0, NULL); + + return offset; +} + + +static const per_sequence_t OMA_LPPe_IP_Address_RequestCapabilities_sequence[] = { + { NULL, ASN1_EXTENSION_ROOT, 0, NULL } +}; + +static int +dissect_lppe_OMA_LPPe_IP_Address_RequestCapabilities(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index, + ett_lppe_OMA_LPPe_IP_Address_RequestCapabilities, OMA_LPPe_IP_Address_RequestCapabilities_sequence); + + return offset; +} + + + +static int +dissect_lppe_INTEGER_1_1024(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index, + 1U, 1024U, NULL, FALSE); + + return offset; +} + + + +static int +dissect_lppe_INTEGER_0_65535(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index, + 0U, 65535U, NULL, FALSE); + + return offset; +} + + + +static int +dissect_lppe_OMA_LPPe_CharArray(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_restricted_character_string(tvb, offset, actx, tree, hf_index, + 1, 31, FALSE, "abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789.-", 64, + NULL); + + return offset; +} + + +static const per_sequence_t OMA_LPPe_NonStandard_VendorOrOperatorID_sequence[] = { + { &hf_lppe_encodedID , ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_lppe_INTEGER_0_65535 }, + { &hf_lppe_visibleIdentification, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lppe_OMA_LPPe_CharArray }, + { NULL, 0, 0, NULL } +}; + +static int +dissect_lppe_OMA_LPPe_NonStandard_VendorOrOperatorID(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index, + ett_lppe_OMA_LPPe_NonStandard_VendorOrOperatorID, OMA_LPPe_NonStandard_VendorOrOperatorID_sequence); + + return offset; +} + + +static const value_string lppe_OMA_LPPe_VendorOrOperatorID_vals[] = { + { 0, "standard-VendorOrOperatorID" }, + { 1, "nonStandard-VendorOrOperatorID" }, + { 0, NULL } +}; + +static const per_choice_t OMA_LPPe_VendorOrOperatorID_choice[] = { + { 0, &hf_lppe_standard_VendorOrOperatorID, ASN1_EXTENSION_ROOT , dissect_lppe_INTEGER_1_1024 }, + { 1, &hf_lppe_nonStandard_VendorOrOperatorID, ASN1_EXTENSION_ROOT , dissect_lppe_OMA_LPPe_NonStandard_VendorOrOperatorID }, + { 0, NULL, 0, NULL } +}; + +static int +dissect_lppe_OMA_LPPe_VendorOrOperatorID(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_choice(tvb, offset, actx, tree, hf_index, + ett_lppe_OMA_LPPe_VendorOrOperatorID, OMA_LPPe_VendorOrOperatorID_choice, + NULL); + + return offset; +} + + +static const per_sequence_t OMA_LPPe_VendorOrOperatorIDList_sequence_of[1] = { + { &hf_lppe_OMA_LPPe_VendorOrOperatorIDList_item, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lppe_OMA_LPPe_VendorOrOperatorID }, +}; + +static int +dissect_lppe_OMA_LPPe_VendorOrOperatorIDList(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_constrained_sequence_of(tvb, offset, actx, tree, hf_index, + ett_lppe_OMA_LPPe_VendorOrOperatorIDList, OMA_LPPe_VendorOrOperatorIDList_sequence_of, + 1, maxVendorOrOperatorIDList, FALSE); + + return offset; +} + + +static const per_sequence_t OMA_LPPe_AssistanceContainerSupportReq_sequence[] = { + { &hf_lppe_vendorOrOperatorIDList, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lppe_OMA_LPPe_VendorOrOperatorIDList }, + { NULL, 0, 0, NULL } +}; + +static int +dissect_lppe_OMA_LPPe_AssistanceContainerSupportReq(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index, + ett_lppe_OMA_LPPe_AssistanceContainerSupportReq, OMA_LPPe_AssistanceContainerSupportReq_sequence); + + return offset; +} + + +static const per_sequence_t OMA_LPPe_LocationInformationContainerSupportReq_sequence[] = { + { &hf_lppe_vendorOrOperatorIDList, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lppe_OMA_LPPe_VendorOrOperatorIDList }, + { NULL, 0, 0, NULL } +}; + +static int +dissect_lppe_OMA_LPPe_LocationInformationContainerSupportReq(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index, + ett_lppe_OMA_LPPe_LocationInformationContainerSupportReq, OMA_LPPe_LocationInformationContainerSupportReq_sequence); + + return offset; +} + + +static const per_sequence_t OMA_LPPe_RelativeLocationChange_RequestCapabilities_sequence[] = { + { NULL, ASN1_EXTENSION_ROOT, 0, NULL } +}; + +static int +dissect_lppe_OMA_LPPe_RelativeLocationChange_RequestCapabilities(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index, + ett_lppe_OMA_LPPe_RelativeLocationChange_RequestCapabilities, OMA_LPPe_RelativeLocationChange_RequestCapabilities_sequence); + + return offset; +} + + +static const per_sequence_t OMA_LPPe_HighAccuracyFormatCapabilitiesReq_sequence[] = { + { NULL, ASN1_EXTENSION_ROOT, 0, NULL } +}; + +static int +dissect_lppe_OMA_LPPe_HighAccuracyFormatCapabilitiesReq(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index, + ett_lppe_OMA_LPPe_HighAccuracyFormatCapabilitiesReq, OMA_LPPe_HighAccuracyFormatCapabilitiesReq_sequence); + + return offset; +} + + +static const per_sequence_t OMA_LPPe_SegmentedAssistanceData_ReqCapabilities_sequence[] = { + { NULL, ASN1_EXTENSION_ROOT, 0, NULL } +}; + +static int +dissect_lppe_OMA_LPPe_SegmentedAssistanceData_ReqCapabilities(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index, + ett_lppe_OMA_LPPe_SegmentedAssistanceData_ReqCapabilities, OMA_LPPe_SegmentedAssistanceData_ReqCapabilities_sequence); + + return offset; +} + + +static const per_sequence_t SEQUENCE_SIZE_1_128_OF_OMA_LPPe_VendorOrOperatorID_sequence_of[1] = { + { &hf_lppe_referencePointProviderSupportListReq_item, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lppe_OMA_LPPe_VendorOrOperatorID }, +}; + +static int +dissect_lppe_SEQUENCE_SIZE_1_128_OF_OMA_LPPe_VendorOrOperatorID(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_constrained_sequence_of(tvb, offset, actx, tree, hf_index, + ett_lppe_SEQUENCE_SIZE_1_128_OF_OMA_LPPe_VendorOrOperatorID, SEQUENCE_SIZE_1_128_OF_OMA_LPPe_VendorOrOperatorID_sequence_of, + 1, 128, FALSE); + + return offset; +} + + +static const per_sequence_t OMA_LPPe_ReferencePointCapabilitiesReq_sequence[] = { + { &hf_lppe_referencePointProviderSupportListReq, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lppe_SEQUENCE_SIZE_1_128_OF_OMA_LPPe_VendorOrOperatorID }, + { NULL, 0, 0, NULL } +}; + +static int +dissect_lppe_OMA_LPPe_ReferencePointCapabilitiesReq(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index, + ett_lppe_OMA_LPPe_ReferencePointCapabilitiesReq, OMA_LPPe_ReferencePointCapabilitiesReq_sequence); + + return offset; +} + + +static const per_sequence_t OMA_LPPe_ScheduledLocation_RequestCapabilities_sequence[] = { + { NULL, ASN1_EXTENSION_ROOT, 0, NULL } +}; + +static int +dissect_lppe_OMA_LPPe_ScheduledLocation_RequestCapabilities(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index, + ett_lppe_OMA_LPPe_ScheduledLocation_RequestCapabilities, OMA_LPPe_ScheduledLocation_RequestCapabilities_sequence); + + return offset; +} + + +static const per_sequence_t OMA_LPPe_AccessCapabilitiesReq_sequence[] = { + { NULL, ASN1_EXTENSION_ROOT, 0, NULL } +}; + +static int +dissect_lppe_OMA_LPPe_AccessCapabilitiesReq(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index, + ett_lppe_OMA_LPPe_AccessCapabilitiesReq, OMA_LPPe_AccessCapabilitiesReq_sequence); + + return offset; +} + + +static const per_sequence_t OMA_LPPe_SegmentedLocationInformation_ReqCapabilities_sequence[] = { + { NULL, ASN1_EXTENSION_ROOT, 0, NULL } +}; + +static int +dissect_lppe_OMA_LPPe_SegmentedLocationInformation_ReqCapabilities(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index, + ett_lppe_OMA_LPPe_SegmentedLocationInformation_ReqCapabilities, OMA_LPPe_SegmentedLocationInformation_ReqCapabilities_sequence); + + return offset; +} + + +static const per_sequence_t OMA_LPPe_CommonIEsRequestCapabilities_sequence[] = { + { &hf_lppe_iP_Address_RequestCapabilities, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lppe_OMA_LPPe_IP_Address_RequestCapabilities }, + { &hf_lppe_assistanceContainerSupportReq, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lppe_OMA_LPPe_AssistanceContainerSupportReq }, + { &hf_lppe_locationInformationContainerSupportReq, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lppe_OMA_LPPe_LocationInformationContainerSupportReq }, + { &hf_lppe_relativeLocationChange_RequestCapabilities, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lppe_OMA_LPPe_RelativeLocationChange_RequestCapabilities }, + { &hf_lppe_highAccuracyFormatCapabilitiesReq, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lppe_OMA_LPPe_HighAccuracyFormatCapabilitiesReq }, + { &hf_lppe_segmentedAssistanceData_ReqCapabilities, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lppe_OMA_LPPe_SegmentedAssistanceData_ReqCapabilities }, + { &hf_lppe_referencePointCapabilitiesReq, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lppe_OMA_LPPe_ReferencePointCapabilitiesReq }, + { &hf_lppe_scheduledLocation_RequestCapabilities, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lppe_OMA_LPPe_ScheduledLocation_RequestCapabilities }, + { &hf_lppe_accessCapabilitiesReq, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lppe_OMA_LPPe_AccessCapabilitiesReq }, + { &hf_lppe_segmentedLocationInformation_ReqCapabilities, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lppe_OMA_LPPe_SegmentedLocationInformation_ReqCapabilities }, + { NULL, 0, 0, NULL } +}; + +static int +dissect_lppe_OMA_LPPe_CommonIEsRequestCapabilities(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index, + ett_lppe_OMA_LPPe_CommonIEsRequestCapabilities, OMA_LPPe_CommonIEsRequestCapabilities_sequence); + + return offset; +} + + + +static int +dissect_lppe_NULL(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_null(tvb, offset, actx, tree, hf_index); + + return offset; +} + + +static const per_sequence_t OMA_LPPe_AGNSS_RequestCapabilities_sequence[] = { + { &hf_lppe_assistanceDataSupportListReq, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lppe_NULL }, + { &hf_lppe_environmentObservationSupportListReq, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lppe_NULL }, + { &hf_lppe_haGNSSsupportReq, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lppe_NULL }, + { NULL, 0, 0, NULL } +}; + +static int +dissect_lppe_OMA_LPPe_AGNSS_RequestCapabilities(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index, + ett_lppe_OMA_LPPe_AGNSS_RequestCapabilities, OMA_LPPe_AGNSS_RequestCapabilities_sequence); + + return offset; +} + + +static const per_sequence_t OMA_LPPe_OTDOA_RequestCapabilities_sequence[] = { + { NULL, ASN1_EXTENSION_ROOT, 0, NULL } +}; + +static int +dissect_lppe_OMA_LPPe_OTDOA_RequestCapabilities(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index, + ett_lppe_OMA_LPPe_OTDOA_RequestCapabilities, OMA_LPPe_OTDOA_RequestCapabilities_sequence); + + return offset; +} + + +static const per_sequence_t OMA_LPPe_EOTD_RequestCapabilities_sequence[] = { + { NULL, ASN1_EXTENSION_ROOT, 0, NULL } +}; + +static int +dissect_lppe_OMA_LPPe_EOTD_RequestCapabilities(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index, + ett_lppe_OMA_LPPe_EOTD_RequestCapabilities, OMA_LPPe_EOTD_RequestCapabilities_sequence); + + return offset; +} + + +static const per_sequence_t OMA_LPPe_OTDOA_UTRA_RequestCapabilities_sequence[] = { + { NULL, ASN1_EXTENSION_ROOT, 0, NULL } +}; + +static int +dissect_lppe_OMA_LPPe_OTDOA_UTRA_RequestCapabilities(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index, + ett_lppe_OMA_LPPe_OTDOA_UTRA_RequestCapabilities, OMA_LPPe_OTDOA_UTRA_RequestCapabilities_sequence); + + return offset; +} + + +static const per_sequence_t OMA_LPPe_ECID_LTE_RequestCapabilities_sequence[] = { + { NULL, ASN1_EXTENSION_ROOT, 0, NULL } +}; + +static int +dissect_lppe_OMA_LPPe_ECID_LTE_RequestCapabilities(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index, + ett_lppe_OMA_LPPe_ECID_LTE_RequestCapabilities, OMA_LPPe_ECID_LTE_RequestCapabilities_sequence); + + return offset; +} + + +static const per_sequence_t OMA_LPPe_ECID_GSM_RequestCapabilities_sequence[] = { + { NULL, ASN1_EXTENSION_ROOT, 0, NULL } +}; + +static int +dissect_lppe_OMA_LPPe_ECID_GSM_RequestCapabilities(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index, + ett_lppe_OMA_LPPe_ECID_GSM_RequestCapabilities, OMA_LPPe_ECID_GSM_RequestCapabilities_sequence); + + return offset; +} + + +static const per_sequence_t OMA_LPPe_ECID_UTRA_RequestCapabilities_sequence[] = { + { NULL, ASN1_EXTENSION_ROOT, 0, NULL } +}; + +static int +dissect_lppe_OMA_LPPe_ECID_UTRA_RequestCapabilities(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index, + ett_lppe_OMA_LPPe_ECID_UTRA_RequestCapabilities, OMA_LPPe_ECID_UTRA_RequestCapabilities_sequence); + + return offset; +} + + +static const per_sequence_t OMA_LPPe_WLAN_AP_RequestCapabilities_sequence[] = { + { NULL, ASN1_EXTENSION_ROOT, 0, NULL } +}; + +static int +dissect_lppe_OMA_LPPe_WLAN_AP_RequestCapabilities(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index, + ett_lppe_OMA_LPPe_WLAN_AP_RequestCapabilities, OMA_LPPe_WLAN_AP_RequestCapabilities_sequence); + + return offset; +} + + +static const per_sequence_t OMA_LPPe_ECID_WiMax_RequestCapabilities_sequence[] = { + { NULL, ASN1_EXTENSION_ROOT, 0, NULL } +}; + +static int +dissect_lppe_OMA_LPPe_ECID_WiMax_RequestCapabilities(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index, + ett_lppe_OMA_LPPe_ECID_WiMax_RequestCapabilities, OMA_LPPe_ECID_WiMax_RequestCapabilities_sequence); + + return offset; +} + + +static const per_sequence_t OMA_LPPe_Sensor_RequestCapabilities_sequence[] = { + { NULL, ASN1_EXTENSION_ROOT, 0, NULL } +}; + +static int +dissect_lppe_OMA_LPPe_Sensor_RequestCapabilities(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index, + ett_lppe_OMA_LPPe_Sensor_RequestCapabilities, OMA_LPPe_Sensor_RequestCapabilities_sequence); + + return offset; +} + + +static const value_string lppe_T_srnTechnologies_vals[] = { + { 0, "bt" }, + { 1, "btle" }, + { 2, "nfc" }, + { 3, "mobileCode" }, + { 4, "other" }, + { 0, NULL } +}; + + +static int +dissect_lppe_T_srnTechnologies(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_enumerated(tvb, offset, actx, tree, hf_index, + 5, NULL, TRUE, 0, NULL); + + return offset; +} + + +static const per_sequence_t OMA_LPPe_SRN_Technologies_sequence[] = { + { &hf_lppe_srnTechnologies, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_lppe_T_srnTechnologies }, + { NULL, 0, 0, NULL } +}; + +static int +dissect_lppe_OMA_LPPe_SRN_Technologies(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index, + ett_lppe_OMA_LPPe_SRN_Technologies, OMA_LPPe_SRN_Technologies_sequence); + + return offset; +} + + + +static int +dissect_lppe_OCTET_STRING(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_octet_string(tvb, offset, actx, tree, hf_index, + NO_BOUND, NO_BOUND, FALSE, NULL); + + return offset; +} + + +static const per_sequence_t T_srnVendorInformation_sequence[] = { + { &hf_lppe_vendor , ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_lppe_OMA_LPPe_VendorOrOperatorID }, + { &hf_lppe_vendorInfo , ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lppe_OCTET_STRING }, + { NULL, 0, 0, NULL } +}; + +static int +dissect_lppe_T_srnVendorInformation(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index, + ett_lppe_T_srnVendorInformation, T_srnVendorInformation_sequence); + + return offset; +} + + +static const per_sequence_t OMA_LPPe_SRN_Category_sequence[] = { + { &hf_lppe_srnTechnologyType, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_lppe_OMA_LPPe_SRN_Technologies }, + { &hf_lppe_srnVendorInformation, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lppe_T_srnVendorInformation }, + { NULL, 0, 0, NULL } +}; + +static int +dissect_lppe_OMA_LPPe_SRN_Category(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index, + ett_lppe_OMA_LPPe_SRN_Category, OMA_LPPe_SRN_Category_sequence); + + return offset; +} + + +static const per_sequence_t SEQUENCE_SIZE_1_16_OF_OMA_LPPe_SRN_Category_sequence_of[1] = { + { &hf_lppe_categoryList_item, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lppe_OMA_LPPe_SRN_Category }, +}; + +static int +dissect_lppe_SEQUENCE_SIZE_1_16_OF_OMA_LPPe_SRN_Category(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_constrained_sequence_of(tvb, offset, actx, tree, hf_index, + ett_lppe_SEQUENCE_SIZE_1_16_OF_OMA_LPPe_SRN_Category, SEQUENCE_SIZE_1_16_OF_OMA_LPPe_SRN_Category_sequence_of, + 1, 16, FALSE); + + return offset; +} + + +static const per_sequence_t OMA_LPPe_SRN_RequestCapabilities_sequence[] = { + { &hf_lppe_capabilitiesRequestedFor, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lppe_SEQUENCE_SIZE_1_16_OF_OMA_LPPe_SRN_Category }, + { NULL, 0, 0, NULL } +}; + +static int +dissect_lppe_OMA_LPPe_SRN_RequestCapabilities(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index, + ett_lppe_OMA_LPPe_SRN_RequestCapabilities, OMA_LPPe_SRN_RequestCapabilities_sequence); + + return offset; +} + + +static const per_sequence_t OMA_LPPe_RequestCapabilities_sequence[] = { + { &hf_lppe_commonIEsRequestCapabilities, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lppe_OMA_LPPe_CommonIEsRequestCapabilities }, + { &hf_lppe_agnss_RequestCapabilities, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lppe_OMA_LPPe_AGNSS_RequestCapabilities }, + { &hf_lppe_otdoa_RequestCapabilities, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lppe_OMA_LPPe_OTDOA_RequestCapabilities }, + { &hf_lppe_eotd_RequestCapabilities, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lppe_OMA_LPPe_EOTD_RequestCapabilities }, + { &hf_lppe_otdoa_utra_RequestCapabilities, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lppe_OMA_LPPe_OTDOA_UTRA_RequestCapabilities }, + { &hf_lppe_ecid_lte_RequestCapabilities, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lppe_OMA_LPPe_ECID_LTE_RequestCapabilities }, + { &hf_lppe_ecid_gsm_RequestCapabilities, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lppe_OMA_LPPe_ECID_GSM_RequestCapabilities }, + { &hf_lppe_ecid_utra_RequestCapabilities, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lppe_OMA_LPPe_ECID_UTRA_RequestCapabilities }, + { &hf_lppe_wlan_ap_RequestCapabilities, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lppe_OMA_LPPe_WLAN_AP_RequestCapabilities }, + { &hf_lppe_ecid_wimax_RequestCapabilities, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lppe_OMA_LPPe_ECID_WiMax_RequestCapabilities }, + { &hf_lppe_sensor_RequestCapabilities, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lppe_OMA_LPPe_Sensor_RequestCapabilities }, + { &hf_lppe_srn_RequestCapabilities, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lppe_OMA_LPPe_SRN_RequestCapabilities }, + { NULL, 0, 0, NULL } +}; + +static int +dissect_lppe_OMA_LPPe_RequestCapabilities(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index, + ett_lppe_OMA_LPPe_RequestCapabilities, OMA_LPPe_RequestCapabilities_sequence); + + return offset; +} + + + +static int +dissect_lppe_T_iP_Address_support(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_bit_string(tvb, offset, actx, tree, hf_index, + 1, 8, FALSE, NULL); + + return offset; +} + + +static const per_sequence_t OMA_LPPe_IP_Address_Capabilities_sequence[] = { + { &hf_lppe_iP_Address_support, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lppe_T_iP_Address_support }, + { NULL, 0, 0, NULL } +}; + +static int +dissect_lppe_OMA_LPPe_IP_Address_Capabilities(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index, + ett_lppe_OMA_LPPe_IP_Address_Capabilities, OMA_LPPe_IP_Address_Capabilities_sequence); + + return offset; +} + + +static const per_sequence_t OMA_LPPe_AssistanceContainerID_sequence[] = { + { &hf_lppe_containerID , ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_lppe_INTEGER_0_65535 }, + { NULL, 0, 0, NULL } +}; + +static int +dissect_lppe_OMA_LPPe_AssistanceContainerID(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index, + ett_lppe_OMA_LPPe_AssistanceContainerID, OMA_LPPe_AssistanceContainerID_sequence); + + return offset; +} + + +static const per_sequence_t OMA_LPPe_AssistanceContainerList_sequence_of[1] = { + { &hf_lppe_OMA_LPPe_AssistanceContainerList_item, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lppe_OMA_LPPe_AssistanceContainerID }, +}; + +static int +dissect_lppe_OMA_LPPe_AssistanceContainerList(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_constrained_sequence_of(tvb, offset, actx, tree, hf_index, + ett_lppe_OMA_LPPe_AssistanceContainerList, OMA_LPPe_AssistanceContainerList_sequence_of, + 1, maxAssistanceContainerList, FALSE); + + return offset; +} + + +static const per_sequence_t OMA_LPPe_VendorOrOperatorAssistanceContainerList_sequence[] = { + { &hf_lppe_vendorOrOperatorID, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_lppe_OMA_LPPe_VendorOrOperatorID }, + { &hf_lppe_assistanceContainerList, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_lppe_OMA_LPPe_AssistanceContainerList }, + { NULL, 0, 0, NULL } +}; + +static int +dissect_lppe_OMA_LPPe_VendorOrOperatorAssistanceContainerList(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index, + ett_lppe_OMA_LPPe_VendorOrOperatorAssistanceContainerList, OMA_LPPe_VendorOrOperatorAssistanceContainerList_sequence); + + return offset; +} + + +static const per_sequence_t OMA_LPPe_AssistanceContainerSupport_sequence_of[1] = { + { &hf_lppe_OMA_LPPe_AssistanceContainerSupport_item, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lppe_OMA_LPPe_VendorOrOperatorAssistanceContainerList }, +}; + +static int +dissect_lppe_OMA_LPPe_AssistanceContainerSupport(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_constrained_sequence_of(tvb, offset, actx, tree, hf_index, + ett_lppe_OMA_LPPe_AssistanceContainerSupport, OMA_LPPe_AssistanceContainerSupport_sequence_of, + 1, maxVendorOrOperatorIDList, FALSE); + + return offset; +} + + +static const per_sequence_t OMA_LPPe_LocationInformationContainerID_sequence[] = { + { &hf_lppe_containerID , ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_lppe_INTEGER_0_65535 }, + { NULL, 0, 0, NULL } +}; + +static int +dissect_lppe_OMA_LPPe_LocationInformationContainerID(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index, + ett_lppe_OMA_LPPe_LocationInformationContainerID, OMA_LPPe_LocationInformationContainerID_sequence); + + return offset; +} + + +static const per_sequence_t OMA_LPPe_LocationInformationContainerList_sequence_of[1] = { + { &hf_lppe_OMA_LPPe_LocationInformationContainerList_item, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lppe_OMA_LPPe_LocationInformationContainerID }, +}; + +static int +dissect_lppe_OMA_LPPe_LocationInformationContainerList(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_constrained_sequence_of(tvb, offset, actx, tree, hf_index, + ett_lppe_OMA_LPPe_LocationInformationContainerList, OMA_LPPe_LocationInformationContainerList_sequence_of, + 1, maxLocationInformationContainerList, FALSE); + + return offset; +} + + +static const per_sequence_t OMA_LPPe_VendorOrOperatorLocationInformationContainerList_sequence[] = { + { &hf_lppe_vendorOrOperatorID, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_lppe_OMA_LPPe_VendorOrOperatorID }, + { &hf_lppe_locationInformationContainerList, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_lppe_OMA_LPPe_LocationInformationContainerList }, + { NULL, 0, 0, NULL } +}; + +static int +dissect_lppe_OMA_LPPe_VendorOrOperatorLocationInformationContainerList(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index, + ett_lppe_OMA_LPPe_VendorOrOperatorLocationInformationContainerList, OMA_LPPe_VendorOrOperatorLocationInformationContainerList_sequence); + + return offset; +} + + +static const per_sequence_t OMA_LPPe_LocationInformationContainerSupport_sequence_of[1] = { + { &hf_lppe_OMA_LPPe_LocationInformationContainerSupport_item, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lppe_OMA_LPPe_VendorOrOperatorLocationInformationContainerList }, +}; + +static int +dissect_lppe_OMA_LPPe_LocationInformationContainerSupport(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_constrained_sequence_of(tvb, offset, actx, tree, hf_index, + ett_lppe_OMA_LPPe_LocationInformationContainerSupport, OMA_LPPe_LocationInformationContainerSupport_sequence_of, + 1, maxVendorOrOperatorIDList, FALSE); + + return offset; +} + + + +static int +dissect_lppe_INTEGER_1_5(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index, + 1U, 5U, NULL, FALSE); + + return offset; +} + + +static const per_sequence_t OMA_LPPe_RelativeLocationChange_Capabilities_sequence[] = { + { &hf_lppe_numberOfChanges, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lppe_INTEGER_1_5 }, + { NULL, 0, 0, NULL } +}; + +static int +dissect_lppe_OMA_LPPe_RelativeLocationChange_Capabilities(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index, + ett_lppe_OMA_LPPe_RelativeLocationChange_Capabilities, OMA_LPPe_RelativeLocationChange_Capabilities_sequence); + + return offset; +} + + + +static int +dissect_lppe_OMA_LPPe_HighAccuracyFormatCapabilities(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_bit_string(tvb, offset, actx, tree, hf_index, + 1, 8, FALSE, NULL); + + return offset; +} + + + +static int +dissect_lppe_INTEGER_2_4096(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index, + 2U, 4096U, NULL, FALSE); + + return offset; +} + + + +static int +dissect_lppe_INTEGER_1_5000(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index, + 1U, 5000U, NULL, FALSE); + + return offset; +} + + +static const per_sequence_t OMA_LPPe_SegmentedAssistanceData_ProvideCapabs_sequence[] = { + { &hf_lppe_maxSegments , ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lppe_INTEGER_2_4096 }, + { &hf_lppe_maxSize , ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lppe_INTEGER_1_5000 }, + { &hf_lppe_minSize , ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lppe_INTEGER_1_5000 }, + { &hf_lppe_resume , ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lppe_NULL }, + { NULL, 0, 0, NULL } +}; + +static int +dissect_lppe_OMA_LPPe_SegmentedAssistanceData_ProvideCapabs(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index, + ett_lppe_OMA_LPPe_SegmentedAssistanceData_ProvideCapabs, OMA_LPPe_SegmentedAssistanceData_ProvideCapabs_sequence); + + return offset; +} + + + +static int +dissect_lppe_T_relativeLocationReportingSupport(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_bit_string(tvb, offset, actx, tree, hf_index, + 1, 8, FALSE, NULL); + + return offset; +} + + +static const per_sequence_t T_mapDataSupport_sequence[] = { + { &hf_lppe_mapDataFormat , ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lppe_OCTET_STRING }, + { NULL, 0, 0, NULL } +}; + +static int +dissect_lppe_T_mapDataSupport(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index, + ett_lppe_T_mapDataSupport, T_mapDataSupport_sequence); + + return offset; +} + + +static const per_sequence_t OMA_LPPe_ReferencePointProviderSupportElement_sequence[] = { + { &hf_lppe_referencePointProvider, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_lppe_OMA_LPPe_VendorOrOperatorID }, + { &hf_lppe_mapDataSupport , ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lppe_T_mapDataSupport }, + { NULL, 0, 0, NULL } +}; + +static int +dissect_lppe_OMA_LPPe_ReferencePointProviderSupportElement(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index, + ett_lppe_OMA_LPPe_ReferencePointProviderSupportElement, OMA_LPPe_ReferencePointProviderSupportElement_sequence); + + return offset; +} + + +static const per_sequence_t SEQUENCE_SIZE_1_128_OF_OMA_LPPe_ReferencePointProviderSupportElement_sequence_of[1] = { + { &hf_lppe_referencePointProviderSupportList_item, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lppe_OMA_LPPe_ReferencePointProviderSupportElement }, +}; + +static int +dissect_lppe_SEQUENCE_SIZE_1_128_OF_OMA_LPPe_ReferencePointProviderSupportElement(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_constrained_sequence_of(tvb, offset, actx, tree, hf_index, + ett_lppe_SEQUENCE_SIZE_1_128_OF_OMA_LPPe_ReferencePointProviderSupportElement, SEQUENCE_SIZE_1_128_OF_OMA_LPPe_ReferencePointProviderSupportElement_sequence_of, + 1, 128, FALSE); + + return offset; +} + + +static const per_sequence_t OMA_LPPe_ReferencePointCapabilities_sequence[] = { + { &hf_lppe_relativeLocationReportingSupport, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_lppe_T_relativeLocationReportingSupport }, + { &hf_lppe_referencePointProviderSupportList, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lppe_SEQUENCE_SIZE_1_128_OF_OMA_LPPe_ReferencePointProviderSupportElement }, + { NULL, 0, 0, NULL } +}; + +static int +dissect_lppe_OMA_LPPe_ReferencePointCapabilities(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index, + ett_lppe_OMA_LPPe_ReferencePointCapabilities, OMA_LPPe_ReferencePointCapabilities_sequence); + + return offset; +} + + +static const value_string lppe_T_networkTimeReference_vals[] = { + { 0, "serving" }, + { 1, "servingOrNonServing" }, + { 0, NULL } +}; + + +static int +dissect_lppe_T_networkTimeReference(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_enumerated(tvb, offset, actx, tree, hf_index, + 2, NULL, TRUE, 0, NULL); + + return offset; +} + + +static const per_sequence_t OMA_LPPe_ScheduledLocation_Capabilities_sequence[] = { + { &hf_lppe_minimumWindow , ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lppe_INTEGER_1_1024 }, + { &hf_lppe_gnssTimeReference, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lpp_GNSS_ID_Bitmap }, + { &hf_lppe_networkTimeReference, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lppe_T_networkTimeReference }, + { NULL, 0, 0, NULL } +}; + +static int +dissect_lppe_OMA_LPPe_ScheduledLocation_Capabilities(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index, + ett_lppe_OMA_LPPe_ScheduledLocation_Capabilities, OMA_LPPe_ScheduledLocation_Capabilities_sequence); + + return offset; +} + + + +static int +dissect_lppe_OMA_LPPe_FixedAccessTypes(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_bit_string(tvb, offset, actx, tree, hf_index, + 1, 16, FALSE, NULL); + + return offset; +} + + + +static int +dissect_lppe_OMA_LPPe_WirelessAccessTypes(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_bit_string(tvb, offset, actx, tree, hf_index, + 1, 16, FALSE, NULL); + + return offset; +} + + +static const per_sequence_t OMA_LPPe_AccessCapabilities_sequence[] = { + { &hf_lppe_accessTypeUnknown, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lppe_NULL }, + { &hf_lppe_fixedAccessTypes, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lppe_OMA_LPPe_FixedAccessTypes }, + { &hf_lppe_wirelessAccessTypes, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lppe_OMA_LPPe_WirelessAccessTypes }, + { NULL, 0, 0, NULL } +}; + +static int +dissect_lppe_OMA_LPPe_AccessCapabilities(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index, + ett_lppe_OMA_LPPe_AccessCapabilities, OMA_LPPe_AccessCapabilities_sequence); + + return offset; +} + + +static const per_sequence_t OMA_LPPe_SegmentedLocationInformation_ProvideCapabs_sequence[] = { + { &hf_lppe_maxSegments , ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lppe_INTEGER_2_4096 }, + { &hf_lppe_maxSize , ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lppe_INTEGER_1_5000 }, + { &hf_lppe_minSize , ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lppe_INTEGER_1_5000 }, + { &hf_lppe_resume , ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lppe_NULL }, + { NULL, 0, 0, NULL } +}; + +static int +dissect_lppe_OMA_LPPe_SegmentedLocationInformation_ProvideCapabs(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index, + ett_lppe_OMA_LPPe_SegmentedLocationInformation_ProvideCapabs, OMA_LPPe_SegmentedLocationInformation_ProvideCapabs_sequence); + + return offset; +} + + +static const per_sequence_t OMA_LPPe_CommonIEsProvideCapabilities_sequence[] = { + { &hf_lppe_iP_Address_Capabilities, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lppe_OMA_LPPe_IP_Address_Capabilities }, + { &hf_lppe_assistanceContainerSupport, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lppe_OMA_LPPe_AssistanceContainerSupport }, + { &hf_lppe_locationInformationContainerSupport, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lppe_OMA_LPPe_LocationInformationContainerSupport }, + { &hf_lppe_relativeLocationChange_Capabilities, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lppe_OMA_LPPe_RelativeLocationChange_Capabilities }, + { &hf_lppe_highAccuracyFormatCapabilities, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lppe_OMA_LPPe_HighAccuracyFormatCapabilities }, + { &hf_lppe_segmentedAssistanceData_ProvideCapabs, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lppe_OMA_LPPe_SegmentedAssistanceData_ProvideCapabs }, + { &hf_lppe_referencePointCapabilities, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lppe_OMA_LPPe_ReferencePointCapabilities }, + { &hf_lppe_scheduledLocation_Capabilities, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lppe_OMA_LPPe_ScheduledLocation_Capabilities }, + { &hf_lppe_accessCapabilities, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lppe_OMA_LPPe_AccessCapabilities }, + { &hf_lppe_segmentedLocationInformation_ProvideCapabs, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lppe_OMA_LPPe_SegmentedLocationInformation_ProvideCapabs }, + { NULL, 0, 0, NULL } +}; + +static int +dissect_lppe_OMA_LPPe_CommonIEsProvideCapabilities(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index, + ett_lppe_OMA_LPPe_CommonIEsProvideCapabilities, OMA_LPPe_CommonIEsProvideCapabilities_sequence); + + return offset; +} + + + +static int +dissect_lppe_T_ionoModel(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_bit_string(tvb, offset, actx, tree, hf_index, + 1, 8, FALSE, NULL); + + return offset; +} + + +static const per_sequence_t OMA_LPPe_AGNSS_IonosphericModelSupport_sequence[] = { + { &hf_lppe_ionoModel , ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_lppe_T_ionoModel }, + { NULL, 0, 0, NULL } +}; + +static int +dissect_lppe_OMA_LPPe_AGNSS_IonosphericModelSupport(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index, + ett_lppe_OMA_LPPe_AGNSS_IonosphericModelSupport, OMA_LPPe_AGNSS_IonosphericModelSupport_sequence); + + return offset; +} + + + +static int +dissect_lppe_T_tropoModel(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_bit_string(tvb, offset, actx, tree, hf_index, + 1, 8, FALSE, NULL); + + return offset; +} + + + +static int +dissect_lppe_BOOLEAN(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_boolean(tvb, offset, actx, tree, hf_index, NULL); + + return offset; +} + + +static const per_sequence_t OMA_LPPe_AGNSS_TroposphereModelSupport_sequence[] = { + { &hf_lppe_tropoModel , ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_lppe_T_tropoModel }, + { &hf_lppe_supportForMultipleGridPoints, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_lppe_BOOLEAN }, + { NULL, 0, 0, NULL } +}; + +static int +dissect_lppe_OMA_LPPe_AGNSS_TroposphereModelSupport(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index, + ett_lppe_OMA_LPPe_AGNSS_TroposphereModelSupport, OMA_LPPe_AGNSS_TroposphereModelSupport_sequence); + + return offset; +} + + +static const per_sequence_t OMA_LPPe_AGNSS_AltitudeAssistanceSupport_sequence[] = { + { NULL, ASN1_EXTENSION_ROOT, 0, NULL } +}; + +static int +dissect_lppe_OMA_LPPe_AGNSS_AltitudeAssistanceSupport(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index, + ett_lppe_OMA_LPPe_AGNSS_AltitudeAssistanceSupport, OMA_LPPe_AGNSS_AltitudeAssistanceSupport_sequence); + + return offset; +} + + +static const per_sequence_t OMA_LPPe_AGNSS_SolarRadiationSupport_sequence[] = { + { NULL, ASN1_EXTENSION_ROOT, 0, NULL } +}; + +static int +dissect_lppe_OMA_LPPe_AGNSS_SolarRadiationSupport(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index, + ett_lppe_OMA_LPPe_AGNSS_SolarRadiationSupport, OMA_LPPe_AGNSS_SolarRadiationSupport_sequence); + + return offset; +} + + +static const per_sequence_t OMA_LPPe_AGNSS_CCPsupport_sequence[] = { + { &hf_lppe_supportAreaAssistanceSupported, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_lppe_BOOLEAN }, + { &hf_lppe_multiReferenceStationSupported, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_lppe_BOOLEAN }, + { NULL, 0, 0, NULL } +}; + +static int +dissect_lppe_OMA_LPPe_AGNSS_CCPsupport(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index, + ett_lppe_OMA_LPPe_AGNSS_CCPsupport, OMA_LPPe_AGNSS_CCPsupport_sequence); + + return offset; +} + + +static const per_sequence_t OMA_LPPe_AGNSS_CommonAssistanceDataSupport_sequence[] = { + { &hf_lppe_ionosphericModelSupport, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lppe_OMA_LPPe_AGNSS_IonosphericModelSupport }, + { &hf_lppe_troposphereModelSupport, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lppe_OMA_LPPe_AGNSS_TroposphereModelSupport }, + { &hf_lppe_altitudeAssistanceSupport, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lppe_OMA_LPPe_AGNSS_AltitudeAssistanceSupport }, + { &hf_lppe_solarRadiationSupport, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lppe_OMA_LPPe_AGNSS_SolarRadiationSupport }, + { &hf_lppe_ccpSupport , ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lppe_OMA_LPPe_AGNSS_CCPsupport }, + { NULL, 0, 0, NULL } +}; + +static int +dissect_lppe_OMA_LPPe_AGNSS_CommonAssistanceDataSupport(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index, + ett_lppe_OMA_LPPe_AGNSS_CommonAssistanceDataSupport, OMA_LPPe_AGNSS_CommonAssistanceDataSupport_sequence); + + return offset; +} + + +static const per_sequence_t OMA_LPPe_AGNSS_MechanicsSupport_sequence[] = { + { NULL, ASN1_EXTENSION_ROOT, 0, NULL } +}; + +static int +dissect_lppe_OMA_LPPe_AGNSS_MechanicsSupport(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index, + ett_lppe_OMA_LPPe_AGNSS_MechanicsSupport, OMA_LPPe_AGNSS_MechanicsSupport_sequence); + + return offset; +} + + +static const per_sequence_t OMA_LPPe_AGNSS_DCBsupport_sequence[] = { + { NULL, ASN1_EXTENSION_ROOT, 0, NULL } +}; + +static int +dissect_lppe_OMA_LPPe_AGNSS_DCBsupport(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index, + ett_lppe_OMA_LPPe_AGNSS_DCBsupport, OMA_LPPe_AGNSS_DCBsupport_sequence); + + return offset; +} + + +static const per_sequence_t OMA_LPPe_AGNSS_NavModelAccuracyModelDegradationSupport_sequence[] = { + { NULL, ASN1_EXTENSION_ROOT, 0, NULL } +}; + +static int +dissect_lppe_OMA_LPPe_AGNSS_NavModelAccuracyModelDegradationSupport(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index, + ett_lppe_OMA_LPPe_AGNSS_NavModelAccuracyModelDegradationSupport, OMA_LPPe_AGNSS_NavModelAccuracyModelDegradationSupport_sequence); + + return offset; +} + + + +static int +dissect_lppe_INTEGER_1_8(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index, + 1U, 8U, NULL, FALSE); + + return offset; +} + + +static const per_sequence_t T_navModelSupport_sequence_of[1] = { + { &hf_lppe_navModelSupport_item, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lppe_INTEGER_1_8 }, +}; + +static int +dissect_lppe_T_navModelSupport(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_constrained_sequence_of(tvb, offset, actx, tree, hf_index, + ett_lppe_T_navModelSupport, T_navModelSupport_sequence_of, + 1, 8, FALSE); + + return offset; +} + + +static const per_sequence_t OMA_LPPe_AGNSS_NavModelSupport_sequence[] = { + { &hf_lppe_navModelSupport_01, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lppe_T_navModelSupport }, + { NULL, 0, 0, NULL } +}; + +static int +dissect_lppe_OMA_LPPe_AGNSS_NavModelSupport(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index, + ett_lppe_OMA_LPPe_AGNSS_NavModelSupport, OMA_LPPe_AGNSS_NavModelSupport_sequence); + + return offset; +} + + +static const per_sequence_t OMA_LPPe_AGNSS_GenericAssistDataSupportElement_sequence[] = { + { &hf_lppe_gnss_ID , ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_lpp_GNSS_ID }, + { &hf_lppe_mechnanicsSupport, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lppe_OMA_LPPe_AGNSS_MechanicsSupport }, + { &hf_lppe_dcbSupport , ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lppe_OMA_LPPe_AGNSS_DCBsupport }, + { &hf_lppe_navModelAccuracyModelDegradationSupport, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lppe_OMA_LPPe_AGNSS_NavModelAccuracyModelDegradationSupport }, + { &hf_lppe_ccpAssistanceSuppport, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lpp_GNSS_SignalIDs }, + { &hf_lppe_navModelSupport, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lppe_OMA_LPPe_AGNSS_NavModelSupport }, + { NULL, 0, 0, NULL } +}; + +static int +dissect_lppe_OMA_LPPe_AGNSS_GenericAssistDataSupportElement(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index, + ett_lppe_OMA_LPPe_AGNSS_GenericAssistDataSupportElement, OMA_LPPe_AGNSS_GenericAssistDataSupportElement_sequence); + + return offset; +} + + +static const per_sequence_t OMA_LPPe_AGNSS_GenericAssistanceDataSupport_sequence_of[1] = { + { &hf_lppe_OMA_LPPe_AGNSS_GenericAssistanceDataSupport_item, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lppe_OMA_LPPe_AGNSS_GenericAssistDataSupportElement }, +}; + +static int +dissect_lppe_OMA_LPPe_AGNSS_GenericAssistanceDataSupport(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_constrained_sequence_of(tvb, offset, actx, tree, hf_index, + ett_lppe_OMA_LPPe_AGNSS_GenericAssistanceDataSupport, OMA_LPPe_AGNSS_GenericAssistanceDataSupport_sequence_of, + 1, 16, FALSE); + + return offset; +} + + +static const per_sequence_t OMA_LPPe_AGNSS_AssistanceDataSupportList_sequence[] = { + { &hf_lppe_commonAssistanceDataSupport, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_lppe_OMA_LPPe_AGNSS_CommonAssistanceDataSupport }, + { &hf_lppe_genericAssistanceDataSupport, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_lppe_OMA_LPPe_AGNSS_GenericAssistanceDataSupport }, + { NULL, 0, 0, NULL } +}; + +static int +dissect_lppe_OMA_LPPe_AGNSS_AssistanceDataSupportList(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index, + ett_lppe_OMA_LPPe_AGNSS_AssistanceDataSupportList, OMA_LPPe_AGNSS_AssistanceDataSupportList_sequence); + + return offset; +} + + + +static int +dissect_lppe_T_ionosphereMeasurementSupport(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_bit_string(tvb, offset, actx, tree, hf_index, + 1, 8, FALSE, NULL); + + return offset; +} + + +static const per_sequence_t OMA_LPPe_AGNSS_EnvironmentObservationSupportList_sequence[] = { + { &hf_lppe_ionosphereMeasurementSupport, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_lppe_T_ionosphereMeasurementSupport }, + { &hf_lppe_pressureMeasurementSupported, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_lppe_BOOLEAN }, + { &hf_lppe_temperatureMeasurementSupported, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_lppe_BOOLEAN }, + { NULL, 0, 0, NULL } +}; + +static int +dissect_lppe_OMA_LPPe_AGNSS_EnvironmentObservationSupportList(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index, + ett_lppe_OMA_LPPe_AGNSS_EnvironmentObservationSupportList, OMA_LPPe_AGNSS_EnvironmentObservationSupportList_sequence); + + return offset; +} + + + +static int +dissect_lppe_T_modeSupport(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_bit_string(tvb, offset, actx, tree, hf_index, + 2, 2, FALSE, NULL); + + return offset; +} + + + +static int +dissect_lppe_T_haGNSSantennaInformationSupport(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_bit_string(tvb, offset, actx, tree, hf_index, + 8, 8, FALSE, NULL); + + return offset; +} + + +static const per_sequence_t OMA_LPPe_AGNSS_HAgnssPerGNSSsupport_sequence[] = { + { &hf_lppe_gnss_ID , ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_lpp_GNSS_ID }, + { &hf_lppe_haGNSSsignalSupport, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_lpp_GNSS_SignalIDs }, + { NULL, 0, 0, NULL } +}; + +static int +dissect_lppe_OMA_LPPe_AGNSS_HAgnssPerGNSSsupport(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index, + ett_lppe_OMA_LPPe_AGNSS_HAgnssPerGNSSsupport, OMA_LPPe_AGNSS_HAgnssPerGNSSsupport_sequence); + + return offset; +} + + +static const per_sequence_t SEQUENCE_SIZE_1_8_OF_OMA_LPPe_AGNSS_HAgnssPerGNSSsupport_sequence_of[1] = { + { &hf_lppe_haGNSSperGNSSsupport_item, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lppe_OMA_LPPe_AGNSS_HAgnssPerGNSSsupport }, +}; + +static int +dissect_lppe_SEQUENCE_SIZE_1_8_OF_OMA_LPPe_AGNSS_HAgnssPerGNSSsupport(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_constrained_sequence_of(tvb, offset, actx, tree, hf_index, + ett_lppe_SEQUENCE_SIZE_1_8_OF_OMA_LPPe_AGNSS_HAgnssPerGNSSsupport, SEQUENCE_SIZE_1_8_OF_OMA_LPPe_AGNSS_HAgnssPerGNSSsupport_sequence_of, + 1, 8, FALSE); + + return offset; +} + + +static const per_sequence_t OMA_LPPe_AGNSS_HAgnssSupport_sequence[] = { + { &hf_lppe_modeSupport , ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_lppe_T_modeSupport }, + { &hf_lppe_haGNSSpressureInformationSupport, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_lppe_BOOLEAN }, + { &hf_lppe_haGNSSantennaInformationSupport, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_lppe_T_haGNSSantennaInformationSupport }, + { &hf_lppe_haGNSSperGNSSsupport, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_lppe_SEQUENCE_SIZE_1_8_OF_OMA_LPPe_AGNSS_HAgnssPerGNSSsupport }, + { NULL, 0, 0, NULL } +}; + +static int +dissect_lppe_OMA_LPPe_AGNSS_HAgnssSupport(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index, + ett_lppe_OMA_LPPe_AGNSS_HAgnssSupport, OMA_LPPe_AGNSS_HAgnssSupport_sequence); + + return offset; +} + + +static const per_sequence_t OMA_LPPe_AGNSS_ProvideCapabilities_sequence[] = { + { &hf_lppe_assistanceDataSupportList, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lppe_OMA_LPPe_AGNSS_AssistanceDataSupportList }, + { &hf_lppe_environmentObservationSupportList, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lppe_OMA_LPPe_AGNSS_EnvironmentObservationSupportList }, + { &hf_lppe_haGNSSsupport , ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lppe_OMA_LPPe_AGNSS_HAgnssSupport }, + { NULL, 0, 0, NULL } +}; + +static int +dissect_lppe_OMA_LPPe_AGNSS_ProvideCapabilities(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index, + ett_lppe_OMA_LPPe_AGNSS_ProvideCapabilities, OMA_LPPe_AGNSS_ProvideCapabilities_sequence); + + return offset; +} + + +static const per_sequence_t T_eNodeB_AD_sup_sequence[] = { + { NULL, ASN1_EXTENSION_ROOT, 0, NULL } +}; + +static int +dissect_lppe_T_eNodeB_AD_sup(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index, + ett_lppe_T_eNodeB_AD_sup, T_eNodeB_AD_sup_sequence); + + return offset; +} + + +static const per_sequence_t T_home_eNodeB_AD_sup_sequence[] = { + { NULL, ASN1_EXTENSION_ROOT, 0, NULL } +}; + +static int +dissect_lppe_T_home_eNodeB_AD_sup(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index, + ett_lppe_T_home_eNodeB_AD_sup, T_home_eNodeB_AD_sup_sequence); + + return offset; +} + + +static const per_sequence_t OMA_LPPe_OTDOA_ProvideCapabilities_sequence[] = { + { &hf_lppe_eNodeB_AD_sup , ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lppe_T_eNodeB_AD_sup }, + { &hf_lppe_home_eNodeB_AD_sup, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lppe_T_home_eNodeB_AD_sup }, + { NULL, 0, 0, NULL } +}; + +static int +dissect_lppe_OMA_LPPe_OTDOA_ProvideCapabilities(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index, + ett_lppe_OMA_LPPe_OTDOA_ProvideCapabilities, OMA_LPPe_OTDOA_ProvideCapabilities_sequence); + + return offset; +} + + + +static int +dissect_lppe_T_eotdSupport(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_bit_string(tvb, offset, actx, tree, hf_index, + NO_BOUND, NO_BOUND, FALSE, NULL); + + return offset; +} + + +static const per_sequence_t OMA_LPPe_EOTD_ProvideCapabilities_sequence[] = { + { &hf_lppe_eotdSupport , ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_lppe_T_eotdSupport }, + { NULL, 0, 0, NULL } +}; + +static int +dissect_lppe_OMA_LPPe_EOTD_ProvideCapabilities(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index, + ett_lppe_OMA_LPPe_EOTD_ProvideCapabilities, OMA_LPPe_EOTD_ProvideCapabilities_sequence); + + return offset; +} + + +static const per_sequence_t OMA_LPPe_OTDOA_UTRA_ProvideCapabilities_sequence[] = { + { &hf_lppe_ueBasedSupported, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_lppe_BOOLEAN }, + { &hf_lppe_ueAssistedSupported, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_lppe_BOOLEAN }, + { &hf_lppe_ipdlSupported , ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_lppe_BOOLEAN }, + { NULL, 0, 0, NULL } +}; + +static int +dissect_lppe_OMA_LPPe_OTDOA_UTRA_ProvideCapabilities(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index, + ett_lppe_OMA_LPPe_OTDOA_UTRA_ProvideCapabilities, OMA_LPPe_OTDOA_UTRA_ProvideCapabilities_sequence); + + return offset; +} + + + +static int +dissect_lppe_T_ecid_lte_MeasSupported(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_bit_string(tvb, offset, actx, tree, hf_index, + 1, 8, FALSE, NULL); + + return offset; +} + + + +static int +dissect_lppe_T_ecid_lte_eNodeB_ADSupported(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_bit_string(tvb, offset, actx, tree, hf_index, + 1, 16, FALSE, NULL); + + return offset; +} + + + +static int +dissect_lppe_T_ecid_utra_HeNB_ADSupported(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_bit_string(tvb, offset, actx, tree, hf_index, + 1, 16, FALSE, NULL); + + return offset; +} + + +static const per_sequence_t OMA_LPPe_ECID_LTE_ProvideCapabilities_sequence[] = { + { &hf_lppe_ecid_lte_MeasSupported, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_lppe_T_ecid_lte_MeasSupported }, + { &hf_lppe_ecid_lte_eNodeB_ADSupported, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_lppe_T_ecid_lte_eNodeB_ADSupported }, + { &hf_lppe_ecid_utra_HeNB_ADSupported, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_lppe_T_ecid_utra_HeNB_ADSupported }, + { NULL, 0, 0, NULL } +}; + +static int +dissect_lppe_OMA_LPPe_ECID_LTE_ProvideCapabilities(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index, + ett_lppe_OMA_LPPe_ECID_LTE_ProvideCapabilities, OMA_LPPe_ECID_LTE_ProvideCapabilities_sequence); + + return offset; +} + + + +static int +dissect_lppe_T_ecid_gsm_MeasSupported(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_bit_string(tvb, offset, actx, tree, hf_index, + 1, 8, FALSE, NULL); + + return offset; +} + + + +static int +dissect_lppe_T_ecid_gsm_ADSupported(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_bit_string(tvb, offset, actx, tree, hf_index, + 1, 16, FALSE, NULL); + + return offset; +} + + +static const per_sequence_t OMA_LPPe_ECID_GSM_ProvideCapabilities_sequence[] = { + { &hf_lppe_ecid_gsm_MeasSupported, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_lppe_T_ecid_gsm_MeasSupported }, + { &hf_lppe_ecid_gsm_ADSupported, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_lppe_T_ecid_gsm_ADSupported }, + { NULL, 0, 0, NULL } +}; + +static int +dissect_lppe_OMA_LPPe_ECID_GSM_ProvideCapabilities(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index, + ett_lppe_OMA_LPPe_ECID_GSM_ProvideCapabilities, OMA_LPPe_ECID_GSM_ProvideCapabilities_sequence); + + return offset; +} + + + +static int +dissect_lppe_T_ecid_utra_MeasSupported(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_bit_string(tvb, offset, actx, tree, hf_index, + 1, 16, FALSE, NULL); + + return offset; +} + + + +static int +dissect_lppe_T_ecid_utra_nodeB_ADSupported(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_bit_string(tvb, offset, actx, tree, hf_index, + 1, 16, FALSE, NULL); + + return offset; +} + + + +static int +dissect_lppe_T_ecid_utra_HNB_ADSupported(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_bit_string(tvb, offset, actx, tree, hf_index, + 1, 16, FALSE, NULL); + + return offset; +} + + +static const per_sequence_t OMA_LPPe_ECID_UTRA_ProvideCapabilities_sequence[] = { + { &hf_lppe_ecid_utra_MeasSupported, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_lppe_T_ecid_utra_MeasSupported }, + { &hf_lppe_ecid_utra_nodeB_ADSupported, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_lppe_T_ecid_utra_nodeB_ADSupported }, + { &hf_lppe_ecid_utra_HNB_ADSupported, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_lppe_T_ecid_utra_HNB_ADSupported }, + { NULL, 0, 0, NULL } +}; + +static int +dissect_lppe_OMA_LPPe_ECID_UTRA_ProvideCapabilities(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index, + ett_lppe_OMA_LPPe_ECID_UTRA_ProvideCapabilities, OMA_LPPe_ECID_UTRA_ProvideCapabilities_sequence); + + return offset; +} + + + +static int +dissect_lppe_T_wlan_ecid_MeasSupported(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_bit_string(tvb, offset, actx, tree, hf_index, + 1, 16, FALSE, NULL); + + return offset; +} + + + +static int +dissect_lppe_OMA_LPPe_WLAN_AP_Type_List(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_bit_string(tvb, offset, actx, tree, hf_index, + 1, 16, FALSE, NULL); + + return offset; +} + + + +static int +dissect_lppe_BIT_STRING_SIZE_48(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_bit_string(tvb, offset, actx, tree, hf_index, + 48, 48, FALSE, NULL); + + return offset; +} + + +static const per_sequence_t OMA_LPPe_WLAN_AP_ID_sequence[] = { + { &hf_lppe_apMacAddress , ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_lppe_BIT_STRING_SIZE_48 }, + { NULL, 0, 0, NULL } +}; + +static int +dissect_lppe_OMA_LPPe_WLAN_AP_ID(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index, + ett_lppe_OMA_LPPe_WLAN_AP_ID, OMA_LPPe_WLAN_AP_ID_sequence); + + return offset; +} + + +static const per_sequence_t OMA_LPPe_WLAN_AP_Capability_sequence[] = { + { &hf_lppe_apMACAddress , ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_lppe_OMA_LPPe_WLAN_AP_ID }, + { &hf_lppe_apTypes , ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_lppe_OMA_LPPe_WLAN_AP_Type_List }, + { NULL, 0, 0, NULL } +}; + +static int +dissect_lppe_OMA_LPPe_WLAN_AP_Capability(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index, + ett_lppe_OMA_LPPe_WLAN_AP_Capability, OMA_LPPe_WLAN_AP_Capability_sequence); + + return offset; +} + + + +static int +dissect_lppe_T_wlan_ap_ADSupported(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_bit_string(tvb, offset, actx, tree, hf_index, + 1, 16, FALSE, NULL); + + return offset; +} + + +static const per_sequence_t OMA_LPPe_WLAN_AP_ProvideCapabilities_sequence[] = { + { &hf_lppe_wlan_ecid_MeasSupported, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_lppe_T_wlan_ecid_MeasSupported }, + { &hf_lppe_wlan_types_Supported, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lppe_OMA_LPPe_WLAN_AP_Type_List }, + { &hf_lppe_ap_Capability , ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lppe_OMA_LPPe_WLAN_AP_Capability }, + { &hf_lppe_wlan_ap_ADSupported, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_lppe_T_wlan_ap_ADSupported }, + { NULL, 0, 0, NULL } +}; + +static int +dissect_lppe_OMA_LPPe_WLAN_AP_ProvideCapabilities(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index, + ett_lppe_OMA_LPPe_WLAN_AP_ProvideCapabilities, OMA_LPPe_WLAN_AP_ProvideCapabilities_sequence); + + return offset; +} + + + +static int +dissect_lppe_T_ecid_wimax_MeasSupported(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_bit_string(tvb, offset, actx, tree, hf_index, + 1, 16, FALSE, NULL); + + return offset; +} + + +static const per_sequence_t OMA_LPPe_ECID_WiMax_ProvideCapabilities_sequence[] = { + { &hf_lppe_ecid_wimax_MeasSupported, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_lppe_T_ecid_wimax_MeasSupported }, + { NULL, 0, 0, NULL } +}; + +static int +dissect_lppe_OMA_LPPe_ECID_WiMax_ProvideCapabilities(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index, + ett_lppe_OMA_LPPe_ECID_WiMax_ProvideCapabilities, OMA_LPPe_ECID_WiMax_ProvideCapabilities_sequence); + + return offset; +} + + +static const per_sequence_t OMA_LPPe_Sensor_ProvideCapabilities_sequence[] = { + { &hf_lppe_motionStateSupport, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lppe_NULL }, + { &hf_lppe_secondarySupport, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lppe_NULL }, + { NULL, 0, 0, NULL } +}; + +static int +dissect_lppe_OMA_LPPe_Sensor_ProvideCapabilities(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index, + ett_lppe_OMA_LPPe_Sensor_ProvideCapabilities, OMA_LPPe_Sensor_ProvideCapabilities_sequence); + + return offset; +} + + + +static int +dissect_lppe_T_srnMeasurements(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_bit_string(tvb, offset, actx, tree, hf_index, + 1, 16, FALSE, NULL); + + return offset; +} + + +static const per_sequence_t OMA_LPPe_SRN_MeasurementMask_sequence[] = { + { &hf_lppe_srnMeasurements, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_lppe_T_srnMeasurements }, + { NULL, 0, 0, NULL } +}; + +static int +dissect_lppe_OMA_LPPe_SRN_MeasurementMask(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index, + ett_lppe_OMA_LPPe_SRN_MeasurementMask, OMA_LPPe_SRN_MeasurementMask_sequence); + + return offset; +} + + + +static int +dissect_lppe_T_supportedAssistanceData(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_bit_string(tvb, offset, actx, tree, hf_index, + 1, 16, FALSE, NULL); + + return offset; +} + + +static const per_sequence_t OMA_LPPe_SRN_ProvideCapabilitiesElement_sequence[] = { + { &hf_lppe_srnCategory , ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_lppe_OMA_LPPe_SRN_Category }, + { &hf_lppe_supportedMeasurements, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lppe_OMA_LPPe_SRN_MeasurementMask }, + { &hf_lppe_supportedAssistanceData, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_lppe_T_supportedAssistanceData }, + { &hf_lppe_historicMeasurementsSupported, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lppe_NULL }, + { NULL, 0, 0, NULL } +}; + +static int +dissect_lppe_OMA_LPPe_SRN_ProvideCapabilitiesElement(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index, + ett_lppe_OMA_LPPe_SRN_ProvideCapabilitiesElement, OMA_LPPe_SRN_ProvideCapabilitiesElement_sequence); + + return offset; +} + + +static const per_sequence_t SEQUENCE_SIZE_1_16_OF_OMA_LPPe_SRN_ProvideCapabilitiesElement_sequence_of[1] = { + { &hf_lppe_capabilitiesPerSRNCategory_item, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lppe_OMA_LPPe_SRN_ProvideCapabilitiesElement }, +}; + +static int +dissect_lppe_SEQUENCE_SIZE_1_16_OF_OMA_LPPe_SRN_ProvideCapabilitiesElement(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_constrained_sequence_of(tvb, offset, actx, tree, hf_index, + ett_lppe_SEQUENCE_SIZE_1_16_OF_OMA_LPPe_SRN_ProvideCapabilitiesElement, SEQUENCE_SIZE_1_16_OF_OMA_LPPe_SRN_ProvideCapabilitiesElement_sequence_of, + 1, 16, FALSE); + + return offset; +} + + +static const per_sequence_t OMA_LPPe_SRN_ProvideCapabilities_sequence[] = { + { &hf_lppe_capabilitiesPerSRNCategory, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lppe_SEQUENCE_SIZE_1_16_OF_OMA_LPPe_SRN_ProvideCapabilitiesElement }, + { NULL, 0, 0, NULL } +}; + +static int +dissect_lppe_OMA_LPPe_SRN_ProvideCapabilities(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index, + ett_lppe_OMA_LPPe_SRN_ProvideCapabilities, OMA_LPPe_SRN_ProvideCapabilities_sequence); + + return offset; +} + + +static const per_sequence_t OMA_LPPe_ProvideCapabilities_sequence[] = { + { &hf_lppe_commonIEsProvideCapabilities, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lppe_OMA_LPPe_CommonIEsProvideCapabilities }, + { &hf_lppe_agnss_ProvideCapabilities, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lppe_OMA_LPPe_AGNSS_ProvideCapabilities }, + { &hf_lppe_otdoa_ProvideCapabilities, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lppe_OMA_LPPe_OTDOA_ProvideCapabilities }, + { &hf_lppe_eotd_ProvideCapabilities, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lppe_OMA_LPPe_EOTD_ProvideCapabilities }, + { &hf_lppe_otdoa_utra_ProvideCapabilities, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lppe_OMA_LPPe_OTDOA_UTRA_ProvideCapabilities }, + { &hf_lppe_ecid_lte_ProvideCapabilities, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lppe_OMA_LPPe_ECID_LTE_ProvideCapabilities }, + { &hf_lppe_ecid_gsm_ProvideCapabilities, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lppe_OMA_LPPe_ECID_GSM_ProvideCapabilities }, + { &hf_lppe_ecid_utra_ProvideCapabilities, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lppe_OMA_LPPe_ECID_UTRA_ProvideCapabilities }, + { &hf_lppe_wlan_ap_ProvideCapabilities, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lppe_OMA_LPPe_WLAN_AP_ProvideCapabilities }, + { &hf_lppe_ecid_wimax_ProvideCapabilities, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lppe_OMA_LPPe_ECID_WiMax_ProvideCapabilities }, + { &hf_lppe_sensor_ProvideCapabilities, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lppe_OMA_LPPe_Sensor_ProvideCapabilities }, + { &hf_lppe_srn_ProvideCapabilities, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lppe_OMA_LPPe_SRN_ProvideCapabilities }, + { NULL, 0, 0, NULL } +}; + +static int +dissect_lppe_OMA_LPPe_ProvideCapabilities(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index, + ett_lppe_OMA_LPPe_ProvideCapabilities, OMA_LPPe_ProvideCapabilities_sequence); + + return offset; +} + + +static const per_sequence_t OMA_LPPe_VendorOrOperatorAssistanceDataIdentifier_sequence[] = { + { &hf_lppe_vendorOrOperatorID, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_lppe_OMA_LPPe_VendorOrOperatorID }, + { &hf_lppe_assistanceDataID, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_lppe_OMA_LPPe_AssistanceContainerID }, + { NULL, 0, 0, NULL } +}; + +static int +dissect_lppe_OMA_LPPe_VendorOrOperatorAssistanceDataIdentifier(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index, + ett_lppe_OMA_LPPe_VendorOrOperatorAssistanceDataIdentifier, OMA_LPPe_VendorOrOperatorAssistanceDataIdentifier_sequence); + + return offset; +} + + + +static int +dissect_lppe_INTEGER_0_4294967295(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index, + 0U, 4294967295U, NULL, FALSE); + + return offset; +} + + +static const per_sequence_t OMA_LPPe_AssistanceContainer_DataSerialNumber_sequence[] = { + { &hf_lppe_dataSerialNumber, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_lppe_INTEGER_0_4294967295 }, + { NULL, 0, 0, NULL } +}; + +static int +dissect_lppe_OMA_LPPe_AssistanceContainer_DataSerialNumber(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index, + ett_lppe_OMA_LPPe_AssistanceContainer_DataSerialNumber, OMA_LPPe_AssistanceContainer_DataSerialNumber_sequence); + + return offset; +} + + +static const value_string lppe_T_checkLatest_vals[] = { + { 0, "returnLatestIfCurrentNotLatest" }, + { 1, "returnUpdateOnlyIfCurrentInvalid" }, + { 0, NULL } +}; + + +static int +dissect_lppe_T_checkLatest(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_enumerated(tvb, offset, actx, tree, hf_index, + 2, NULL, TRUE, 0, NULL); + + return offset; +} + + +static const per_sequence_t OMA_LPPe_AssistanceContainerCheckOrUpdateReq_sequence[] = { + { &hf_lppe_dataSerialNumber_01, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_lppe_OMA_LPPe_AssistanceContainer_DataSerialNumber }, + { &hf_lppe_checkLatest , ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_lppe_T_checkLatest }, + { NULL, 0, 0, NULL } +}; + +static int +dissect_lppe_OMA_LPPe_AssistanceContainerCheckOrUpdateReq(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index, + ett_lppe_OMA_LPPe_AssistanceContainerCheckOrUpdateReq, OMA_LPPe_AssistanceContainerCheckOrUpdateReq_sequence); + + return offset; +} + + + +static int +dissect_lppe_INTEGER_0_2881(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index, + 0U, 2881U, NULL, FALSE); + + return offset; +} + + + +static int +dissect_lppe_INTEGER_1_2881(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index, + 1U, 2881U, NULL, FALSE); + + return offset; +} + + +static const per_sequence_t OMA_LPPe_ValidityPeriod_sequence[] = { + { &hf_lppe_beginTime , ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_lpp_GNSS_SystemTime }, + { &hf_lppe_beginTimeAlt , ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lppe_INTEGER_0_2881 }, + { &hf_lppe_duration_01 , ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_lppe_INTEGER_1_2881 }, + { NULL, 0, 0, NULL } +}; + +static int +dissect_lppe_OMA_LPPe_ValidityPeriod(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index, + ett_lppe_OMA_LPPe_ValidityPeriod, OMA_LPPe_ValidityPeriod_sequence); + + return offset; +} + + +static const per_sequence_t OMA_LPPe_AssistanceContainerRequest_sequence[] = { + { &hf_lppe_dataIdentifier , ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_lppe_OMA_LPPe_VendorOrOperatorAssistanceDataIdentifier }, + { &hf_lppe_simulatedReq , ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_lppe_BOOLEAN }, + { &hf_lppe_checkOrUpdateReq, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lppe_OMA_LPPe_AssistanceContainerCheckOrUpdateReq }, + { &hf_lppe_validityTimeRequest, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lppe_OMA_LPPe_ValidityPeriod }, + { &hf_lppe_proprietaryRequestParameters, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lppe_OCTET_STRING }, + { NULL, 0, 0, NULL } +}; + +static int +dissect_lppe_OMA_LPPe_AssistanceContainerRequest(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index, + ett_lppe_OMA_LPPe_AssistanceContainerRequest, OMA_LPPe_AssistanceContainerRequest_sequence); + + return offset; +} + + +static const per_sequence_t OMA_LPPe_AssistanceContainerRequestList_sequence_of[1] = { + { &hf_lppe_OMA_LPPe_AssistanceContainerRequestList_item, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lppe_OMA_LPPe_AssistanceContainerRequest }, +}; + +static int +dissect_lppe_OMA_LPPe_AssistanceContainerRequestList(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_constrained_sequence_of(tvb, offset, actx, tree, hf_index, + ett_lppe_OMA_LPPe_AssistanceContainerRequestList, OMA_LPPe_AssistanceContainerRequestList_sequence_of, + 1, maxAssistanceContainerList, FALSE); + + return offset; +} + + + +static int +dissect_lppe_INTEGER_1_256(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index, + 1U, 256U, NULL, FALSE); + + return offset; +} + + +static const value_string lppe_TypeOfADRequest_vals[] = { + { 0, "initialRequest" }, + { 1, "updateAndContinueIfUpdateFails" }, + { 2, "updateAndAbortIfUpdateFails" }, + { 0, NULL } +}; + + +static int +dissect_lppe_TypeOfADRequest(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_enumerated(tvb, offset, actx, tree, hf_index, + 3, NULL, TRUE, 0, NULL); + + return offset; +} + + +static const per_sequence_t OMA_LPPe_RequestPeriodicADwithUpdate_sequence[] = { + { &hf_lppe_periodicAD_session_ID, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_lppe_INTEGER_1_256 }, + { &hf_lppe_typeOfADRequest, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_lppe_TypeOfADRequest }, + { NULL, 0, 0, NULL } +}; + +static int +dissect_lppe_OMA_LPPe_RequestPeriodicADwithUpdate(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index, + ett_lppe_OMA_LPPe_RequestPeriodicADwithUpdate, OMA_LPPe_RequestPeriodicADwithUpdate_sequence); + + return offset; +} + + +static const value_string lppe_T_segmentedADpreference_vals[] = { + { 0, "useBasic" }, + { 1, "useResume" }, + { 0, NULL } +}; + + +static int +dissect_lppe_T_segmentedADpreference(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_enumerated(tvb, offset, actx, tree, hf_index, + 2, NULL, TRUE, 0, NULL); + + return offset; +} + + + +static int +dissect_lppe_OCTET_STRING_SIZE_4(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_octet_string(tvb, offset, actx, tree, hf_index, + 4, 4, FALSE, NULL); + + return offset; +} + + +static const per_sequence_t OMA_LPPe_Session_ID_sequence[] = { + { &hf_lppe_provider_ID , ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_lppe_OMA_LPPe_VendorOrOperatorID }, + { &hf_lppe_server_ID , ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_lppe_OCTET_STRING_SIZE_4 }, + { &hf_lppe_session_ID , ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_lppe_OCTET_STRING_SIZE_4 }, + { NULL, 0, 0, NULL } +}; + +static int +dissect_lppe_OMA_LPPe_Session_ID(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index, + ett_lppe_OMA_LPPe_Session_ID, OMA_LPPe_Session_ID_sequence); + + return offset; +} + + + +static int +dissect_lppe_INTEGER_1_4096(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index, + 1U, 4096U, NULL, FALSE); + + return offset; +} + + +static const per_sequence_t OMA_LPPe_SegmentedADResume_sequence[] = { + { &hf_lppe_segmentedAD_session_ID, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lppe_OMA_LPPe_Session_ID }, + { &hf_lppe_next_segment_number, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lppe_INTEGER_1_4096 }, + { NULL, 0, 0, NULL } +}; + +static int +dissect_lppe_OMA_LPPe_SegmentedADResume(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index, + ett_lppe_OMA_LPPe_SegmentedADResume, OMA_LPPe_SegmentedADResume_sequence); + + return offset; +} + + +static const per_sequence_t OMA_LPPe_ReferencePointAssistanceReqElement_sequence[] = { + { &hf_lppe_referencePointProvider, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_lppe_OMA_LPPe_VendorOrOperatorID }, + { &hf_lppe_mapDataReq , ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lppe_OCTET_STRING }, + { NULL, 0, 0, NULL } +}; + +static int +dissect_lppe_OMA_LPPe_ReferencePointAssistanceReqElement(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index, + ett_lppe_OMA_LPPe_ReferencePointAssistanceReqElement, OMA_LPPe_ReferencePointAssistanceReqElement_sequence); + + return offset; +} + + +static const per_sequence_t SEQUENCE_SIZE_1_16_OF_OMA_LPPe_ReferencePointAssistanceReqElement_sequence_of[1] = { + { &hf_lppe_referencePointReq_item, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lppe_OMA_LPPe_ReferencePointAssistanceReqElement }, +}; + +static int +dissect_lppe_SEQUENCE_SIZE_1_16_OF_OMA_LPPe_ReferencePointAssistanceReqElement(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_constrained_sequence_of(tvb, offset, actx, tree, hf_index, + ett_lppe_SEQUENCE_SIZE_1_16_OF_OMA_LPPe_ReferencePointAssistanceReqElement, SEQUENCE_SIZE_1_16_OF_OMA_LPPe_ReferencePointAssistanceReqElement_sequence_of, + 1, 16, FALSE); + + return offset; +} + + +static const per_sequence_t OMA_LPPe_ReferencePointAssistanceReq_sequence[] = { + { &hf_lppe_referencePointReq, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_lppe_SEQUENCE_SIZE_1_16_OF_OMA_LPPe_ReferencePointAssistanceReqElement }, + { NULL, 0, 0, NULL } +}; + +static int +dissect_lppe_OMA_LPPe_ReferencePointAssistanceReq(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index, + ett_lppe_OMA_LPPe_ReferencePointAssistanceReq, OMA_LPPe_ReferencePointAssistanceReq_sequence); + + return offset; +} + + +static const per_sequence_t OMA_LPPe_CommonIEsRequestAssistanceData_sequence[] = { + { &hf_lppe_approximate_location, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lpp_EllipsoidPointWithAltitudeAndUncertaintyEllipsoid }, + { &hf_lppe_assistanceContainerRequestList, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lppe_OMA_LPPe_AssistanceContainerRequestList }, + { &hf_lppe_requestPeriodicADwithUpdate, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lppe_OMA_LPPe_RequestPeriodicADwithUpdate }, + { &hf_lppe_segmentedADpreference, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lppe_T_segmentedADpreference }, + { &hf_lppe_segmentedADResume, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lppe_OMA_LPPe_SegmentedADResume }, + { &hf_lppe_referencePointAssistanceReq, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lppe_OMA_LPPe_ReferencePointAssistanceReq }, + { NULL, 0, 0, NULL } +}; + +static int +dissect_lppe_OMA_LPPe_CommonIEsRequestAssistanceData(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index, + ett_lppe_OMA_LPPe_CommonIEsRequestAssistanceData, OMA_LPPe_CommonIEsRequestAssistanceData_sequence); + + return offset; +} + + + +static int +dissect_lppe_T_ionoreq(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_bit_string(tvb, offset, actx, tree, hf_index, + 1, 8, FALSE, NULL); + + return offset; +} + + + +static int +dissect_lppe_INTEGER_1_63(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index, + 1U, 63U, NULL, FALSE); + + return offset; +} + + + +static int +dissect_lppe_INTEGER_1_89(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index, + 1U, 89U, NULL, FALSE); + + return offset; +} + + +static const per_sequence_t OMA_LPPe_Duration_sequence[] = { + { &hf_lppe_duration , ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_lppe_INTEGER_1_63 }, + { &hf_lppe_durationLSB , ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lppe_INTEGER_1_89 }, + { NULL, 0, 0, NULL } +}; + +static int +dissect_lppe_OMA_LPPe_Duration(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index, + ett_lppe_OMA_LPPe_Duration, OMA_LPPe_Duration_sequence); + + return offset; +} + + +static const per_sequence_t T_staticModels_01_sequence[] = { + { &hf_lppe_ionoreq , ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_lppe_T_ionoreq }, + { &hf_lppe_requestBeginTime, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lpp_GNSS_SystemTime }, + { &hf_lppe_duration_03 , ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_lppe_OMA_LPPe_Duration }, + { NULL, 0, 0, NULL } +}; + +static int +dissect_lppe_T_staticModels_01(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index, + ett_lppe_T_staticModels_01, T_staticModels_01_sequence); + + return offset; +} + + + +static int +dissect_lppe_INTEGER_1_64(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index, + 1U, 64U, NULL, FALSE); + + return offset; +} + + +static const per_sequence_t OMA_LPPe_AGNSS_WideAreaIonoSurfaceControlParametersRequest_sequence[] = { + { &hf_lppe_duration_03 , ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lppe_OMA_LPPe_Duration }, + { &hf_lppe_rate , ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lppe_INTEGER_1_64 }, + { NULL, 0, 0, NULL } +}; + +static int +dissect_lppe_OMA_LPPe_AGNSS_WideAreaIonoSurfaceControlParametersRequest(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index, + ett_lppe_OMA_LPPe_AGNSS_WideAreaIonoSurfaceControlParametersRequest, OMA_LPPe_AGNSS_WideAreaIonoSurfaceControlParametersRequest_sequence); + + return offset; +} + + +static const per_sequence_t T_periodicModels_sequence[] = { + { &hf_lppe_waIonoSurface , ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_lppe_OMA_LPPe_AGNSS_WideAreaIonoSurfaceControlParametersRequest }, + { NULL, 0, 0, NULL } +}; + +static int +dissect_lppe_T_periodicModels(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index, + ett_lppe_T_periodicModels, T_periodicModels_sequence); + + return offset; +} + + +static const value_string lppe_OMA_LPPe_AGNSS_IonosphericModelReq_vals[] = { + { 0, "staticModels" }, + { 1, "periodicModels" }, + { 0, NULL } +}; + +static const per_choice_t OMA_LPPe_AGNSS_IonosphericModelReq_choice[] = { + { 0, &hf_lppe_staticModels_01, ASN1_EXTENSION_ROOT , dissect_lppe_T_staticModels_01 }, + { 1, &hf_lppe_periodicModels , ASN1_EXTENSION_ROOT , dissect_lppe_T_periodicModels }, + { 0, NULL, 0, NULL } +}; + +static int +dissect_lppe_OMA_LPPe_AGNSS_IonosphericModelReq(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_choice(tvb, offset, actx, tree, hf_index, + ett_lppe_OMA_LPPe_AGNSS_IonosphericModelReq, OMA_LPPe_AGNSS_IonosphericModelReq_choice, + NULL); + + return offset; +} + + + +static int +dissect_lppe_T_troposphereModelReq(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_bit_string(tvb, offset, actx, tree, hf_index, + 1, 8, FALSE, NULL); + + return offset; +} + + +static const per_sequence_t OMA_LPPe_AGNSS_TroposphereModelReq_sequence[] = { + { &hf_lppe_troposphereModelReq_01, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_lppe_T_troposphereModelReq }, + { &hf_lppe_supportForMultipleGridPoints, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_lppe_BOOLEAN }, + { &hf_lppe_requestBeginTime, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lpp_GNSS_SystemTime }, + { &hf_lppe_duration_03 , ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_lppe_OMA_LPPe_Duration }, + { NULL, 0, 0, NULL } +}; + +static int +dissect_lppe_OMA_LPPe_AGNSS_TroposphereModelReq(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index, + ett_lppe_OMA_LPPe_AGNSS_TroposphereModelReq, OMA_LPPe_AGNSS_TroposphereModelReq_sequence); + + return offset; +} + + +static const per_sequence_t OMA_LPPe_AGNSS_AltitudeAssistanceReq_sequence[] = { + { &hf_lppe_requestBeginTime, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lpp_GNSS_SystemTime }, + { &hf_lppe_duration_03 , ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lppe_OMA_LPPe_Duration }, + { NULL, 0, 0, NULL } +}; + +static int +dissect_lppe_OMA_LPPe_AGNSS_AltitudeAssistanceReq(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index, + ett_lppe_OMA_LPPe_AGNSS_AltitudeAssistanceReq, OMA_LPPe_AGNSS_AltitudeAssistanceReq_sequence); + + return offset; +} + + +static const per_sequence_t OMA_LPPe_AGNSS_SolarRadiationReq_sequence[] = { + { NULL, ASN1_EXTENSION_ROOT, 0, NULL } +}; + +static int +dissect_lppe_OMA_LPPe_AGNSS_SolarRadiationReq(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index, + ett_lppe_OMA_LPPe_AGNSS_SolarRadiationReq, OMA_LPPe_AGNSS_SolarRadiationReq_sequence); + + return offset; +} + + + +static int +dissect_lppe_INTEGER_M2147483648_2147483647(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index, + -2147483648, 2147483647U, NULL, FALSE); + + return offset; +} + + + +static int +dissect_lppe_INTEGER_0_179(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index, + 0U, 179U, NULL, FALSE); + + return offset; +} + + + +static int +dissect_lppe_INTEGER_0_99(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index, + 0U, 99U, NULL, FALSE); + + return offset; +} + + + +static int +dissect_lppe_INTEGER_M64000_1280000(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index, + -64000, 1280000U, NULL, FALSE); + + return offset; +} + + +static const per_sequence_t OMA_LPPe_HighAccuracy3Dposition_sequence[] = { + { &hf_lppe_latitude , ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_lppe_INTEGER_M2147483648_2147483647 }, + { &hf_lppe_longitude , ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_lppe_INTEGER_M2147483648_2147483647 }, + { &hf_lppe_cep , ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lppe_INTEGER_0_255 }, + { &hf_lppe_uncertainty_semimajor, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lppe_INTEGER_0_255 }, + { &hf_lppe_uncertainty_semiminor, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lppe_INTEGER_0_255 }, + { &hf_lppe_offset_angle , ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lppe_INTEGER_0_179 }, + { &hf_lppe_confidenceHorizontal, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lppe_INTEGER_0_99 }, + { &hf_lppe_altitude , ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_lppe_INTEGER_M64000_1280000 }, + { &hf_lppe_uncertainty_altitude, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_lppe_INTEGER_0_255 }, + { &hf_lppe_confidenceVertical, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lppe_INTEGER_0_99 }, + { NULL, 0, 0, NULL } +}; + +static int +dissect_lppe_OMA_LPPe_HighAccuracy3Dposition(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index, + ett_lppe_OMA_LPPe_HighAccuracy3Dposition, OMA_LPPe_HighAccuracy3Dposition_sequence); + + return offset; +} + + +static const value_string lppe_OMA_LPPe_AGNSS_QoR_vals[] = { + { 0, "m10" }, + { 1, "km1" }, + { 2, "km10" }, + { 3, "km100" }, + { 0, NULL } +}; + + +static int +dissect_lppe_OMA_LPPe_AGNSS_QoR(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_enumerated(tvb, offset, actx, tree, hf_index, + 4, NULL, TRUE, 0, NULL); + + return offset; +} + + +static const per_sequence_t T_posBasedReferenceStationRequest_sequence[] = { + { &hf_lppe_requestedReferenceStationLocation, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_lppe_OMA_LPPe_HighAccuracy3Dposition }, + { &hf_lppe_qor , ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_lppe_OMA_LPPe_AGNSS_QoR }, + { NULL, 0, 0, NULL } +}; + +static int +dissect_lppe_T_posBasedReferenceStationRequest(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index, + ett_lppe_T_posBasedReferenceStationRequest, T_posBasedReferenceStationRequest_sequence); + + return offset; +} + + +static const per_sequence_t OMA_LPPe_AGNSS_CCPreferenceStationID_sequence[] = { + { &hf_lppe_stationID , ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_lppe_INTEGER_0_65535 }, + { NULL, 0, 0, NULL } +}; + +static int +dissect_lppe_OMA_LPPe_AGNSS_CCPreferenceStationID(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index, + ett_lppe_OMA_LPPe_AGNSS_CCPreferenceStationID, OMA_LPPe_AGNSS_CCPreferenceStationID_sequence); + + return offset; +} + + +static const per_sequence_t OMA_LPPe_AGNSS_ReferenceStationIDlist_sequence_of[1] = { + { &hf_lppe_OMA_LPPe_AGNSS_ReferenceStationIDlist_item, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lppe_OMA_LPPe_AGNSS_CCPreferenceStationID }, +}; + +static int +dissect_lppe_OMA_LPPe_AGNSS_ReferenceStationIDlist(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_constrained_sequence_of(tvb, offset, actx, tree, hf_index, + ett_lppe_OMA_LPPe_AGNSS_ReferenceStationIDlist, OMA_LPPe_AGNSS_ReferenceStationIDlist_sequence_of, + 1, maxReferenceStations, FALSE); + + return offset; +} + + +static const value_string lppe_T_refStation_vals[] = { + { 0, "posBasedReferenceStationRequest" }, + { 1, "idBasedReferenceStationRequest" }, + { 2, "referenceStationKillList" }, + { 0, NULL } +}; + +static const per_choice_t T_refStation_choice[] = { + { 0, &hf_lppe_posBasedReferenceStationRequest, ASN1_EXTENSION_ROOT , dissect_lppe_T_posBasedReferenceStationRequest }, + { 1, &hf_lppe_idBasedReferenceStationRequest, ASN1_EXTENSION_ROOT , dissect_lppe_OMA_LPPe_AGNSS_ReferenceStationIDlist }, + { 2, &hf_lppe_referenceStationKillList, ASN1_EXTENSION_ROOT , dissect_lppe_OMA_LPPe_AGNSS_ReferenceStationIDlist }, + { 0, NULL, 0, NULL } +}; + +static int +dissect_lppe_T_refStation(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_choice(tvb, offset, actx, tree, hf_index, + ett_lppe_T_refStation, T_refStation_choice, + NULL); + + return offset; +} + + +static const per_sequence_t T_ccpCommonRequest_sequence[] = { + { &hf_lppe_duration_03 , ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lppe_OMA_LPPe_Duration }, + { &hf_lppe_rate , ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lppe_INTEGER_1_64 }, + { &hf_lppe_refStation , ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lppe_T_refStation }, + { NULL, 0, 0, NULL } +}; + +static int +dissect_lppe_T_ccpCommonRequest(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index, + ett_lppe_T_ccpCommonRequest, T_ccpCommonRequest_sequence); + + return offset; +} + + +static const per_sequence_t OMA_LPPe_AGNSS_CCPrequestControlParameters_sequence[] = { + { &hf_lppe_ccpSupportAreaRequest, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lppe_NULL }, + { &hf_lppe_ccpNeighborListRequest, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lppe_NULL }, + { &hf_lppe_ccpCommonRequest, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_lppe_T_ccpCommonRequest }, + { NULL, 0, 0, NULL } +}; + +static int +dissect_lppe_OMA_LPPe_AGNSS_CCPrequestControlParameters(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index, + ett_lppe_OMA_LPPe_AGNSS_CCPrequestControlParameters, OMA_LPPe_AGNSS_CCPrequestControlParameters_sequence); + + return offset; +} + + +static const per_sequence_t OMA_LPPe_AGNSS_CommonAssistanceDataReq_sequence[] = { + { &hf_lppe_ionosphericModelReq, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lppe_OMA_LPPe_AGNSS_IonosphericModelReq }, + { &hf_lppe_troposphereModelReq, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lppe_OMA_LPPe_AGNSS_TroposphereModelReq }, + { &hf_lppe_altitudeAssistanceReq, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lppe_OMA_LPPe_AGNSS_AltitudeAssistanceReq }, + { &hf_lppe_solarRadiationRequest, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lppe_OMA_LPPe_AGNSS_SolarRadiationReq }, + { &hf_lppe_ccpRequestControlParameters, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lppe_OMA_LPPe_AGNSS_CCPrequestControlParameters }, + { NULL, 0, 0, NULL } +}; + +static int +dissect_lppe_OMA_LPPe_AGNSS_CommonAssistanceDataReq(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index, + ett_lppe_OMA_LPPe_AGNSS_CommonAssistanceDataReq, OMA_LPPe_AGNSS_CommonAssistanceDataReq_sequence); + + return offset; +} + + +static const per_sequence_t OMA_LPPe_AGNSS_WaIonoSurfaceRequest_sequence[] = { + { NULL, ASN1_EXTENSION_ROOT, 0, NULL } +}; + +static int +dissect_lppe_OMA_LPPe_AGNSS_WaIonoSurfaceRequest(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index, + ett_lppe_OMA_LPPe_AGNSS_WaIonoSurfaceRequest, OMA_LPPe_AGNSS_WaIonoSurfaceRequest_sequence); + + return offset; +} + + +static const per_sequence_t OMA_LPPe_AGNSS_MechanicsReq_sequence[] = { + { &hf_lppe_massRequest , ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_lppe_BOOLEAN }, + { &hf_lppe_effectiveReflectivityAreaRequest, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_lppe_BOOLEAN }, + { &hf_lppe_pcoRequest , ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_lppe_BOOLEAN }, + { &hf_lppe_svInfoRequest , ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_lppe_BOOLEAN }, + { NULL, 0, 0, NULL } +}; + +static int +dissect_lppe_OMA_LPPe_AGNSS_MechanicsReq(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index, + ett_lppe_OMA_LPPe_AGNSS_MechanicsReq, OMA_LPPe_AGNSS_MechanicsReq_sequence); + + return offset; +} + + +static const value_string lppe_T_pd_02_vals[] = { + { 0, "pilot" }, + { 1, "data" }, + { 2, "notapplicable" }, + { 0, NULL } +}; + + +static int +dissect_lppe_T_pd_02(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_enumerated(tvb, offset, actx, tree, hf_index, + 3, NULL, TRUE, 0, NULL); + + return offset; +} + + +static const per_sequence_t T_reference_01_sequence[] = { + { &hf_lppe_signal , ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_lpp_GNSS_SignalID }, + { &hf_lppe_pd_02 , ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_lppe_T_pd_02 }, + { NULL, 0, 0, NULL } +}; + +static int +dissect_lppe_T_reference_01(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index, + ett_lppe_T_reference_01, T_reference_01_sequence); + + return offset; +} + + +static const per_sequence_t OMA_LPPe_AGNSS_DCBreq_sequence[] = { + { &hf_lppe_reference_01 , ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lppe_T_reference_01 }, + { NULL, 0, 0, NULL } +}; + +static int +dissect_lppe_OMA_LPPe_AGNSS_DCBreq(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index, + ett_lppe_OMA_LPPe_AGNSS_DCBreq, OMA_LPPe_AGNSS_DCBreq_sequence); + + return offset; +} + + +static const per_sequence_t OMA_LPPe_AGNSS_NavModelDegradationModelReq_sequence[] = { + { NULL, ASN1_EXTENSION_ROOT, 0, NULL } +}; + +static int +dissect_lppe_OMA_LPPe_AGNSS_NavModelDegradationModelReq(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index, + ett_lppe_OMA_LPPe_AGNSS_NavModelDegradationModelReq, OMA_LPPe_AGNSS_NavModelDegradationModelReq_sequence); + + return offset; +} + + +static const per_sequence_t OMA_LPPe_AGNSS_CCPassistGenericReq_sequence[] = { + { &hf_lppe_ccpAssist_SignalsReq, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_lpp_GNSS_SignalIDs }, + { NULL, 0, 0, NULL } +}; + +static int +dissect_lppe_OMA_LPPe_AGNSS_CCPassistGenericReq(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index, + ett_lppe_OMA_LPPe_AGNSS_CCPassistGenericReq, OMA_LPPe_AGNSS_CCPassistGenericReq_sequence); + + return offset; +} + + +static const per_sequence_t T_navModelID_PrefList_sequence_of[1] = { + { &hf_lppe_navModelID_PrefList_item, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lppe_INTEGER_1_8 }, +}; + +static int +dissect_lppe_T_navModelID_PrefList(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_constrained_sequence_of(tvb, offset, actx, tree, hf_index, + ett_lppe_T_navModelID_PrefList, T_navModelID_PrefList_sequence_of, + 1, 8, FALSE); + + return offset; +} + + +static const per_sequence_t OMA_LPPe_AGNSS_NavigationModelReq_sequence[] = { + { &hf_lppe_navModelID_PrefList, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lppe_T_navModelID_PrefList }, + { NULL, 0, 0, NULL } +}; + +static int +dissect_lppe_OMA_LPPe_AGNSS_NavigationModelReq(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index, + ett_lppe_OMA_LPPe_AGNSS_NavigationModelReq, OMA_LPPe_AGNSS_NavigationModelReq_sequence); + + return offset; +} + + +static const per_sequence_t OMA_LPPe_AGNSS_GenericAssistDataReqElement_sequence[] = { + { &hf_lppe_gnss_ID , ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_lpp_GNSS_ID }, + { &hf_lppe_waIonoSurfaceReq, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lppe_OMA_LPPe_AGNSS_WaIonoSurfaceRequest }, + { &hf_lppe_mechanicsReq , ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lppe_OMA_LPPe_AGNSS_MechanicsReq }, + { &hf_lppe_dcbReq , ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lppe_OMA_LPPe_AGNSS_DCBreq }, + { &hf_lppe_navModelDegradationModelReq, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lppe_OMA_LPPe_AGNSS_NavModelDegradationModelReq }, + { &hf_lppe_ccpAssistGenericReq, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lppe_OMA_LPPe_AGNSS_CCPassistGenericReq }, + { &hf_lppe_navigationModelReq, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lppe_OMA_LPPe_AGNSS_NavigationModelReq }, + { NULL, 0, 0, NULL } +}; + +static int +dissect_lppe_OMA_LPPe_AGNSS_GenericAssistDataReqElement(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index, + ett_lppe_OMA_LPPe_AGNSS_GenericAssistDataReqElement, OMA_LPPe_AGNSS_GenericAssistDataReqElement_sequence); + + return offset; +} + + +static const per_sequence_t OMA_LPPe_AGNSS_GenericAssistanceDataReq_sequence_of[1] = { + { &hf_lppe_OMA_LPPe_AGNSS_GenericAssistanceDataReq_item, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lppe_OMA_LPPe_AGNSS_GenericAssistDataReqElement }, +}; + +static int +dissect_lppe_OMA_LPPe_AGNSS_GenericAssistanceDataReq(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_constrained_sequence_of(tvb, offset, actx, tree, hf_index, + ett_lppe_OMA_LPPe_AGNSS_GenericAssistanceDataReq, OMA_LPPe_AGNSS_GenericAssistanceDataReq_sequence_of, + 1, 16, FALSE); + + return offset; +} + + +static const per_sequence_t OMA_LPPe_AGNSS_RequestAssistanceData_sequence[] = { + { &hf_lppe_commonAssistDataReq, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lppe_OMA_LPPe_AGNSS_CommonAssistanceDataReq }, + { &hf_lppe_genericAssistDataReq, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lppe_OMA_LPPe_AGNSS_GenericAssistanceDataReq }, + { NULL, 0, 0, NULL } +}; + +static int +dissect_lppe_OMA_LPPe_AGNSS_RequestAssistanceData(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index, + ett_lppe_OMA_LPPe_AGNSS_RequestAssistanceData, OMA_LPPe_AGNSS_RequestAssistanceData_sequence); + + return offset; +} + + + +static int +dissect_lppe_INTEGER_0_503(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index, + 0U, 503U, NULL, FALSE); + + return offset; +} + + +static const per_sequence_t T_lteCell_sequence[] = { + { &hf_lppe_physCellId , ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_lppe_INTEGER_0_503 }, + { &hf_lppe_eARFCN , ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_lpp_ARFCN_ValueEUTRA }, + { &hf_lppe_ecgi , ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lpp_CellGlobalIdEUTRA_AndUTRA }, + { NULL, 0, 0, NULL } +}; + +static int +dissect_lppe_T_lteCell(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index, + ett_lppe_T_lteCell, T_lteCell_sequence); + + return offset; +} + + + +static int +dissect_lppe_T_requestedCells(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_bit_string(tvb, offset, actx, tree, hf_index, + 1, 8, FALSE, NULL); + + return offset; +} + + +static const per_sequence_t OMA_LPPe_OTDOA_RequestAssistanceData_sequence[] = { + { &hf_lppe_lteCell , ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_lppe_T_lteCell }, + { &hf_lppe_requestedCells , ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_lppe_T_requestedCells }, + { NULL, 0, 0, NULL } +}; + +static int +dissect_lppe_OMA_LPPe_OTDOA_RequestAssistanceData(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index, + ett_lppe_OMA_LPPe_OTDOA_RequestAssistanceData, OMA_LPPe_OTDOA_RequestAssistanceData_sequence); + + return offset; +} + + + +static int +dissect_lppe_T_eotdAssistanceReq(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_bit_string(tvb, offset, actx, tree, hf_index, + NO_BOUND, NO_BOUND, FALSE, NULL); + + return offset; +} + + +static const per_sequence_t OMA_LPPe_EOTD_RequestAssistanceData_sequence[] = { + { &hf_lppe_eotdAssistanceReq, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_lppe_T_eotdAssistanceReq }, + { NULL, 0, 0, NULL } +}; + +static int +dissect_lppe_OMA_LPPe_EOTD_RequestAssistanceData(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index, + ett_lppe_OMA_LPPe_EOTD_RequestAssistanceData, OMA_LPPe_EOTD_RequestAssistanceData_sequence); + + return offset; +} + + + +static int +dissect_lppe_T_otdoaUtraAssistanceReq(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_bit_string(tvb, offset, actx, tree, hf_index, + 1, 8, FALSE, NULL); + + return offset; +} + + +static const per_sequence_t OMA_LPPe_OTDOA_UTRA_RequestAssistanceData_sequence[] = { + { &hf_lppe_otdoaUtraAssistanceReq, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_lppe_T_otdoaUtraAssistanceReq }, + { NULL, 0, 0, NULL } +}; + +static int +dissect_lppe_OMA_LPPe_OTDOA_UTRA_RequestAssistanceData(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index, + ett_lppe_OMA_LPPe_OTDOA_UTRA_RequestAssistanceData, OMA_LPPe_OTDOA_UTRA_RequestAssistanceData_sequence); + + return offset; +} + + + +static int +dissect_lppe_T_eNBrequestedAD(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_bit_string(tvb, offset, actx, tree, hf_index, + 1, 16, FALSE, NULL); + + return offset; +} + + + +static int +dissect_lppe_T_heNBrequestedAD(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_bit_string(tvb, offset, actx, tree, hf_index, + 1, 16, FALSE, NULL); + + return offset; +} + + +static const per_sequence_t OMA_LPPe_ECID_LTE_RequestAssistanceData_sequence[] = { + { &hf_lppe_eNBrequestedAD , ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lppe_T_eNBrequestedAD }, + { &hf_lppe_heNBrequestedAD, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lppe_T_heNBrequestedAD }, + { NULL, 0, 0, NULL } +}; + +static int +dissect_lppe_OMA_LPPe_ECID_LTE_RequestAssistanceData(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index, + ett_lppe_OMA_LPPe_ECID_LTE_RequestAssistanceData, OMA_LPPe_ECID_LTE_RequestAssistanceData_sequence); + + return offset; +} + + + +static int +dissect_lppe_T_requestedAD(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_bit_string(tvb, offset, actx, tree, hf_index, + 1, 16, FALSE, NULL); + + return offset; +} + + +static const per_sequence_t OMA_LPPe_ECID_GSM_RequestAssistanceData_sequence[] = { + { &hf_lppe_requestedAD , ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_lppe_T_requestedAD }, + { NULL, 0, 0, NULL } +}; + +static int +dissect_lppe_OMA_LPPe_ECID_GSM_RequestAssistanceData(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index, + ett_lppe_OMA_LPPe_ECID_GSM_RequestAssistanceData, OMA_LPPe_ECID_GSM_RequestAssistanceData_sequence); + + return offset; +} + + + +static int +dissect_lppe_T_nBrequestedAD(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_bit_string(tvb, offset, actx, tree, hf_index, + 1, 16, FALSE, NULL); + + return offset; +} + + + +static int +dissect_lppe_T_hNBrequestedAD(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_bit_string(tvb, offset, actx, tree, hf_index, + 1, 16, FALSE, NULL); + + return offset; +} + + +static const per_sequence_t OMA_LPPe_ECID_UTRA_RequestAssistanceData_sequence[] = { + { &hf_lppe_nBrequestedAD , ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lppe_T_nBrequestedAD }, + { &hf_lppe_hNBrequestedAD , ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lppe_T_hNBrequestedAD }, + { NULL, 0, 0, NULL } +}; + +static int +dissect_lppe_OMA_LPPe_ECID_UTRA_RequestAssistanceData(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index, + ett_lppe_OMA_LPPe_ECID_UTRA_RequestAssistanceData, OMA_LPPe_ECID_UTRA_RequestAssistanceData_sequence); + + return offset; +} + + + +static int +dissect_lppe_T_requestedAD_01(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_bit_string(tvb, offset, actx, tree, hf_index, + 1, 16, FALSE, NULL); + + return offset; +} + + +static const per_sequence_t OMA_LPPe_WLAN_AP_RequestAssistanceData_sequence[] = { + { &hf_lppe_requestedAD_01 , ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_lppe_T_requestedAD_01 }, + { &hf_lppe_requestedAPTypes, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_lppe_OMA_LPPe_WLAN_AP_Type_List }, + { NULL, 0, 0, NULL } +}; + +static int +dissect_lppe_OMA_LPPe_WLAN_AP_RequestAssistanceData(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index, + ett_lppe_OMA_LPPe_WLAN_AP_RequestAssistanceData, OMA_LPPe_WLAN_AP_RequestAssistanceData_sequence); + + return offset; +} + + +static const per_sequence_t OMA_LPPe_Sensor_RequestAssistanceData_sequence[] = { + { NULL, ASN1_EXTENSION_ROOT, 0, NULL } +}; + +static int +dissect_lppe_OMA_LPPe_Sensor_RequestAssistanceData(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index, + ett_lppe_OMA_LPPe_Sensor_RequestAssistanceData, OMA_LPPe_Sensor_RequestAssistanceData_sequence); + + return offset; +} + + +static const per_sequence_t OMA_LPPe_SRN_SRNgroupUniqueID_sequence[] = { + { &hf_lppe_providerID , ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_lppe_OMA_LPPe_VendorOrOperatorID }, + { &hf_lppe_providerAssignedID, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_lppe_OCTET_STRING }, + { &hf_lppe_srnDataVersion , ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lppe_INTEGER_0_4294967295 }, + { NULL, 0, 0, NULL } +}; + +static int +dissect_lppe_OMA_LPPe_SRN_SRNgroupUniqueID(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index, + ett_lppe_OMA_LPPe_SRN_SRNgroupUniqueID, OMA_LPPe_SRN_SRNgroupUniqueID_sequence); + + return offset; +} + + +static const per_sequence_t SEQUENCE_SIZE_1_256_OF_OMA_LPPe_SRN_SRNgroupUniqueID_sequence_of[1] = { + { &hf_lppe_groupList_item_01, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lppe_OMA_LPPe_SRN_SRNgroupUniqueID }, +}; + +static int +dissect_lppe_SEQUENCE_SIZE_1_256_OF_OMA_LPPe_SRN_SRNgroupUniqueID(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_constrained_sequence_of(tvb, offset, actx, tree, hf_index, + ett_lppe_SEQUENCE_SIZE_1_256_OF_OMA_LPPe_SRN_SRNgroupUniqueID, SEQUENCE_SIZE_1_256_OF_OMA_LPPe_SRN_SRNgroupUniqueID_sequence_of, + 1, 256, FALSE); + + return offset; +} + + +static const per_sequence_t OMA_LPPe_SRN_SRNProvideList_sequence[] = { + { &hf_lppe_groupList_01 , ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lppe_SEQUENCE_SIZE_1_256_OF_OMA_LPPe_SRN_SRNgroupUniqueID }, + { &hf_lppe_categoryList , ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lppe_SEQUENCE_SIZE_1_16_OF_OMA_LPPe_SRN_Category }, + { NULL, 0, 0, NULL } +}; + +static int +dissect_lppe_OMA_LPPe_SRN_SRNProvideList(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index, + ett_lppe_OMA_LPPe_SRN_SRNProvideList, OMA_LPPe_SRN_SRNProvideList_sequence); + + return offset; +} + + +static const per_sequence_t OMA_LPPe_SRN_SRNgroupRequest_sequence[] = { + { &hf_lppe_doNotProvideList, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lppe_OMA_LPPe_SRN_SRNProvideList }, + { &hf_lppe_doProvideList , ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lppe_OMA_LPPe_SRN_SRNProvideList }, + { NULL, 0, 0, NULL } +}; + +static int +dissect_lppe_OMA_LPPe_SRN_SRNgroupRequest(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index, + ett_lppe_OMA_LPPe_SRN_SRNgroupRequest, OMA_LPPe_SRN_SRNgroupRequest_sequence); + + return offset; +} + + + +static int +dissect_lppe_BIT_STRING_SIZE_8(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_bit_string(tvb, offset, actx, tree, hf_index, + 8, 8, FALSE, NULL); + + return offset; +} + + +static const per_sequence_t T_nfc_sequence[] = { + { &hf_lppe_manufacturer , ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_lppe_BIT_STRING_SIZE_8 }, + { &hf_lppe_uniqueNumber , ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_lppe_BIT_STRING_SIZE_48 }, + { NULL, 0, 0, NULL } +}; + +static int +dissect_lppe_T_nfc(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index, + ett_lppe_T_nfc, T_nfc_sequence); + + return offset; +} + + + +static int +dissect_lppe_BIT_STRING_SIZE_12(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_bit_string(tvb, offset, actx, tree, hf_index, + 12, 12, FALSE, NULL); + + return offset; +} + + + +static int +dissect_lppe_OCTET_STRING_SIZE_1_1(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_octet_string(tvb, offset, actx, tree, hf_index, + 1, 1, FALSE, NULL); + + return offset; +} + + + +static int +dissect_lppe_OCTET_STRING_SIZE_1_18(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_octet_string(tvb, offset, actx, tree, hf_index, + 1, 18, FALSE, NULL); + + return offset; +} + + +static const per_sequence_t T_mobileCode_sequence[] = { + { &hf_lppe_registryID , ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_lppe_BIT_STRING_SIZE_12 }, + { &hf_lppe_remainingPart , ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_lppe_OCTET_STRING_SIZE_1_1 }, + { &hf_lppe_resolutionIdentifier, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_lppe_OCTET_STRING_SIZE_1_18 }, + { NULL, 0, 0, NULL } +}; + +static int +dissect_lppe_T_mobileCode(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index, + ett_lppe_T_mobileCode, T_mobileCode_sequence); + + return offset; +} + + +static const value_string lppe_T_srn_id_vals[] = { + { 0, "mac" }, + { 1, "nfc" }, + { 2, "mobileCode" }, + { 3, "other" }, + { 0, NULL } +}; + +static const per_choice_t T_srn_id_choice[] = { + { 0, &hf_lppe_mac , ASN1_EXTENSION_ROOT , dissect_lppe_BIT_STRING_SIZE_48 }, + { 1, &hf_lppe_nfc , ASN1_EXTENSION_ROOT , dissect_lppe_T_nfc }, + { 2, &hf_lppe_mobileCode , ASN1_EXTENSION_ROOT , dissect_lppe_T_mobileCode }, + { 3, &hf_lppe_other , ASN1_EXTENSION_ROOT , dissect_lppe_OCTET_STRING }, + { 0, NULL, 0, NULL } +}; + +static int +dissect_lppe_T_srn_id(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_choice(tvb, offset, actx, tree, hf_index, + ett_lppe_T_srn_id, T_srn_id_choice, + NULL); + + return offset; +} + + +static const per_sequence_t OMA_LPPe_SRN_SRNid_sequence[] = { + { &hf_lppe_srn_id , ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_lppe_T_srn_id }, + { NULL, 0, 0, NULL } +}; + +static int +dissect_lppe_OMA_LPPe_SRN_SRNid(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index, + ett_lppe_OMA_LPPe_SRN_SRNid, OMA_LPPe_SRN_SRNid_sequence); + + return offset; +} + + +static const per_sequence_t SEQUENCE_SIZE_1_1024_OF_OMA_LPPe_SRN_SRNid_sequence_of[1] = { + { &hf_lppe_inTheGroup_item, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lppe_OMA_LPPe_SRN_SRNid }, +}; + +static int +dissect_lppe_SEQUENCE_SIZE_1_1024_OF_OMA_LPPe_SRN_SRNid(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_constrained_sequence_of(tvb, offset, actx, tree, hf_index, + ett_lppe_SEQUENCE_SIZE_1_1024_OF_OMA_LPPe_SRN_SRNid, SEQUENCE_SIZE_1_1024_OF_OMA_LPPe_SRN_SRNid_sequence_of, + 1, 1024, FALSE); + + return offset; +} + + +static const per_sequence_t OMA_LPPe_SRN_SRNgroupUpdateRequestElement_sequence[] = { + { &hf_lppe_srnGroupID , ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_lppe_OMA_LPPe_SRN_SRNgroupUniqueID }, + { &hf_lppe_provideIndicationOnly, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lppe_NULL }, + { &hf_lppe_inTheGroup , ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lppe_SEQUENCE_SIZE_1_1024_OF_OMA_LPPe_SRN_SRNid }, + { NULL, 0, 0, NULL } +}; + +static int +dissect_lppe_OMA_LPPe_SRN_SRNgroupUpdateRequestElement(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index, + ett_lppe_OMA_LPPe_SRN_SRNgroupUpdateRequestElement, OMA_LPPe_SRN_SRNgroupUpdateRequestElement_sequence); + + return offset; +} + + +static const per_sequence_t OMA_LPPe_SRN_SRNgroupUpdateRequest_sequence_of[1] = { + { &hf_lppe_OMA_LPPe_SRN_SRNgroupUpdateRequest_item, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lppe_OMA_LPPe_SRN_SRNgroupUpdateRequestElement }, +}; + +static int +dissect_lppe_OMA_LPPe_SRN_SRNgroupUpdateRequest(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_constrained_sequence_of(tvb, offset, actx, tree, hf_index, + ett_lppe_OMA_LPPe_SRN_SRNgroupUpdateRequest, OMA_LPPe_SRN_SRNgroupUpdateRequest_sequence_of, + 1, 64, FALSE); + + return offset; +} + + +static const value_string lppe_T_srnGroup_01_vals[] = { + { 0, "srnGroupRequest" }, + { 1, "srnGroupUpdateRequest" }, + { 0, NULL } +}; + +static const per_choice_t T_srnGroup_01_choice[] = { + { 0, &hf_lppe_srnGroupRequest, ASN1_EXTENSION_ROOT , dissect_lppe_OMA_LPPe_SRN_SRNgroupRequest }, + { 1, &hf_lppe_srnGroupUpdateRequest, ASN1_EXTENSION_ROOT , dissect_lppe_OMA_LPPe_SRN_SRNgroupUpdateRequest }, + { 0, NULL, 0, NULL } +}; + +static int +dissect_lppe_T_srnGroup_01(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_choice(tvb, offset, actx, tree, hf_index, + ett_lppe_T_srnGroup_01, T_srnGroup_01_choice, + NULL); + + return offset; +} + + +static const per_sequence_t T_antennaPatternID_sequence[] = { + { &hf_lppe_vendorOrOperator, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_lppe_OMA_LPPe_VendorOrOperatorID }, + { &hf_lppe_antennaPatternID, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_lppe_INTEGER_0_65535 }, + { NULL, 0, 0, NULL } +}; + +static int +dissect_lppe_T_antennaPatternID(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index, + ett_lppe_T_antennaPatternID, T_antennaPatternID_sequence); + + return offset; +} + + +static const per_sequence_t OMA_LPPe_SRN_AntennaPatternRequestElement_sequence[] = { + { &hf_lppe_antennaPatternID_01, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_lppe_T_antennaPatternID }, + { NULL, 0, 0, NULL } +}; + +static int +dissect_lppe_OMA_LPPe_SRN_AntennaPatternRequestElement(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index, + ett_lppe_OMA_LPPe_SRN_AntennaPatternRequestElement, OMA_LPPe_SRN_AntennaPatternRequestElement_sequence); + + return offset; +} + + +static const per_sequence_t OMA_LPPe_SRN_AntennaPatternRequest_sequence_of[1] = { + { &hf_lppe_OMA_LPPe_SRN_AntennaPatternRequest_item, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lppe_OMA_LPPe_SRN_AntennaPatternRequestElement }, +}; + +static int +dissect_lppe_OMA_LPPe_SRN_AntennaPatternRequest(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_constrained_sequence_of(tvb, offset, actx, tree, hf_index, + ett_lppe_OMA_LPPe_SRN_AntennaPatternRequest, OMA_LPPe_SRN_AntennaPatternRequest_sequence_of, + 1, 8, FALSE); + + return offset; +} + + +static const per_sequence_t OMA_LPPe_SRN_RequestAssistanceData_sequence[] = { + { &hf_lppe_srnGroup_01 , ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lppe_T_srnGroup_01 }, + { &hf_lppe_antennaPatternRequest, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lppe_OMA_LPPe_SRN_AntennaPatternRequest }, + { NULL, 0, 0, NULL } +}; + +static int +dissect_lppe_OMA_LPPe_SRN_RequestAssistanceData(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index, + ett_lppe_OMA_LPPe_SRN_RequestAssistanceData, OMA_LPPe_SRN_RequestAssistanceData_sequence); + + return offset; +} + + +static const per_sequence_t OMA_LPPe_RequestAssistanceData_sequence[] = { + { &hf_lppe_commonIEsRequestAssistanceData, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lppe_OMA_LPPe_CommonIEsRequestAssistanceData }, + { &hf_lppe_agnss_RequestAssistanceData, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lppe_OMA_LPPe_AGNSS_RequestAssistanceData }, + { &hf_lppe_otdoa_RequestAssistanceData, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lppe_OMA_LPPe_OTDOA_RequestAssistanceData }, + { &hf_lppe_eotd_RequestAssistanceData, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lppe_OMA_LPPe_EOTD_RequestAssistanceData }, + { &hf_lppe_otdoa_utra_RequestAssistanceData, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lppe_OMA_LPPe_OTDOA_UTRA_RequestAssistanceData }, + { &hf_lppe_ecid_lte_RequestAssistanceData, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lppe_OMA_LPPe_ECID_LTE_RequestAssistanceData }, + { &hf_lppe_ecid_gsm_RequestAssistanceData, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lppe_OMA_LPPe_ECID_GSM_RequestAssistanceData }, + { &hf_lppe_ecid_utra_RequestAssistanceData, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lppe_OMA_LPPe_ECID_UTRA_RequestAssistanceData }, + { &hf_lppe_wlan_ap_RequestAssistanceData, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lppe_OMA_LPPe_WLAN_AP_RequestAssistanceData }, + { &hf_lppe_sensor_RequestAssistanceData, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lppe_OMA_LPPe_Sensor_RequestAssistanceData }, + { &hf_lppe_srn_RequestAssistanceData, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lppe_OMA_LPPe_SRN_RequestAssistanceData }, + { NULL, 0, 0, NULL } +}; + +static int +dissect_lppe_OMA_LPPe_RequestAssistanceData(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index, + ett_lppe_OMA_LPPe_RequestAssistanceData, OMA_LPPe_RequestAssistanceData_sequence); + + return offset; +} + + +static const value_string lppe_T_checkOrUpdateOrError_vals[] = { + { 0, "targetHasLatestData" }, + { 1, "targetDataNotLatest" }, + { 2, "targetDataNotLatestButServerCannotProvideLatestData" }, + { 3, "targetHasValidData" }, + { 4, "targetDataInvalidButServerCannotProvideValidData" }, + { 5, "serverHasRequestedDataButUnableToProvideTemporarily" }, + { 6, "serverDoesNotHaveRequestedData" }, + { 7, "serverDoesNotRecognizeRequestedData" }, + { 8, "undefined" }, + { 0, NULL } +}; + + +static int +dissect_lppe_T_checkOrUpdateOrError(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_enumerated(tvb, offset, actx, tree, hf_index, + 9, NULL, TRUE, 0, NULL); + + return offset; +} + + + +static int +dissect_lppe_INTEGER_0_5000(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index, + 0U, 5000U, NULL, FALSE); + + return offset; +} + + + +static int +dissect_lppe_INTEGER_1_255(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index, + 1U, 255U, NULL, FALSE); + + return offset; +} + + + +static int +dissect_lppe_INTEGER_2_9180(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index, + 2U, 9180U, NULL, FALSE); + + return offset; +} + + + +static int +dissect_lppe_INTEGER_0_4589(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index, + 0U, 4589U, NULL, FALSE); + + return offset; +} + + + +static int +dissect_lppe_INTEGER_0_9179(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index, + 0U, 9179U, NULL, FALSE); + + return offset; +} + + +static const per_sequence_t OMA_LPPe_RleList_sequence_of[1] = { + { &hf_lppe_OMA_LPPe_RleList_item, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lppe_INTEGER_0_255 }, +}; + +static int +dissect_lppe_OMA_LPPe_RleList(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_constrained_sequence_of(tvb, offset, actx, tree, hf_index, + ett_lppe_OMA_LPPe_RleList, OMA_LPPe_RleList_sequence_of, + 1, 65535, FALSE); + + return offset; +} + + +static const per_sequence_t OMA_LPPe_ValidityArea_sequence[] = { + { &hf_lppe_regionSizeInv , ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_lppe_INTEGER_1_255 }, + { &hf_lppe_areaWidth , ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lppe_INTEGER_2_9180 }, + { &hf_lppe_codedLatOfNWCorner, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_lppe_INTEGER_0_4589 }, + { &hf_lppe_codedLonOfNWCorner, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_lppe_INTEGER_0_9179 }, + { &hf_lppe_rleList , ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lppe_OMA_LPPe_RleList }, + { NULL, 0, 0, NULL } +}; + +static int +dissect_lppe_OMA_LPPe_ValidityArea(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index, + ett_lppe_OMA_LPPe_ValidityArea, OMA_LPPe_ValidityArea_sequence); + + return offset; +} + + +static const per_sequence_t OMA_LPPe_AssistanceContainerData_sequence[] = { + { &hf_lppe_dataSerialNumber_01, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lppe_OMA_LPPe_AssistanceContainer_DataSerialNumber }, + { &hf_lppe_data_01 , ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_lppe_OCTET_STRING }, + { &hf_lppe_validityPeriod , ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lppe_OMA_LPPe_ValidityPeriod }, + { &hf_lppe_validityArea , ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lppe_OMA_LPPe_ValidityArea }, + { NULL, 0, 0, NULL } +}; + +static int +dissect_lppe_OMA_LPPe_AssistanceContainerData(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index, + ett_lppe_OMA_LPPe_AssistanceContainerData, OMA_LPPe_AssistanceContainerData_sequence); + + return offset; +} + + +static const value_string lppe_T_dataResult_vals[] = { + { 0, "simulationResult" }, + { 1, "data" }, + { 0, NULL } +}; + +static const per_choice_t T_dataResult_choice[] = { + { 0, &hf_lppe_simulationResult, ASN1_EXTENSION_ROOT , dissect_lppe_INTEGER_0_5000 }, + { 1, &hf_lppe_data , ASN1_EXTENSION_ROOT , dissect_lppe_OMA_LPPe_AssistanceContainerData }, + { 0, NULL, 0, NULL } +}; + +static int +dissect_lppe_T_dataResult(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_choice(tvb, offset, actx, tree, hf_index, + ett_lppe_T_dataResult, T_dataResult_choice, + NULL); + + return offset; +} + + +static const value_string lppe_T_serverError_vals[] = { + { 0, "assistanceContainerUnknownDataIdentifier" }, + { 1, "assistanceContainerUnknownDataSerialNumber" }, + { 2, "assistanceContainerDataTemporarilyUnavailable" }, + { 3, "assistanceContainerDataNoLongerSupported" }, + { 4, "assistanceContainerVendorOrOperatorNotSupported" }, + { 0, NULL } +}; + + +static int +dissect_lppe_T_serverError(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_enumerated(tvb, offset, actx, tree, hf_index, + 5, NULL, TRUE, 0, NULL); + + return offset; +} + + +static const per_sequence_t OMA_LPPe_AssistanceContainerProvideError_sequence[] = { + { &hf_lppe_serverError , ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lppe_T_serverError }, + { NULL, 0, 0, NULL } +}; + +static int +dissect_lppe_OMA_LPPe_AssistanceContainerProvideError(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index, + ett_lppe_OMA_LPPe_AssistanceContainerProvideError, OMA_LPPe_AssistanceContainerProvideError_sequence); + + return offset; +} + + +static const per_sequence_t OMA_LPPe_AssistanceContainerProvide_sequence[] = { + { &hf_lppe_dataIdentifier , ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_lppe_OMA_LPPe_VendorOrOperatorAssistanceDataIdentifier }, + { &hf_lppe_checkOrUpdateOrError, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lppe_T_checkOrUpdateOrError }, + { &hf_lppe_dataResult , ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lppe_T_dataResult }, + { &hf_lppe_errorCode , ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lppe_OMA_LPPe_AssistanceContainerProvideError }, + { NULL, 0, 0, NULL } +}; + +static int +dissect_lppe_OMA_LPPe_AssistanceContainerProvide(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index, + ett_lppe_OMA_LPPe_AssistanceContainerProvide, OMA_LPPe_AssistanceContainerProvide_sequence); + + return offset; +} + + +static const per_sequence_t OMA_LPPe_AssistanceContainerProvideList_sequence_of[1] = { + { &hf_lppe_OMA_LPPe_AssistanceContainerProvideList_item, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lppe_OMA_LPPe_AssistanceContainerProvide }, +}; + +static int +dissect_lppe_OMA_LPPe_AssistanceContainerProvideList(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_constrained_sequence_of(tvb, offset, actx, tree, hf_index, + ett_lppe_OMA_LPPe_AssistanceContainerProvideList, OMA_LPPe_AssistanceContainerProvideList_sequence_of, + 1, maxAssistanceContainerList, FALSE); + + return offset; +} + + +static const value_string lppe_OMA_LPPe_TypeOfADProvide_vals[] = { + { 0, "responseToInitialRequest" }, + { 1, "providePeriodicAD" }, + { 2, "responseToTargetUpdateRequest" }, + { 3, "serverUpdate" }, + { 0, NULL } +}; + + +static int +dissect_lppe_OMA_LPPe_TypeOfADProvide(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_enumerated(tvb, offset, actx, tree, hf_index, + 4, NULL, TRUE, 0, NULL); + + return offset; +} + + +static const per_sequence_t OMA_LPPe_ProvidePeriodicADwithUpdate_sequence[] = { + { &hf_lppe_periodicAD_session_ID, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_lppe_INTEGER_1_256 }, + { &hf_lppe_typeOfADProvide, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_lppe_OMA_LPPe_TypeOfADProvide }, + { NULL, 0, 0, NULL } +}; + +static int +dissect_lppe_OMA_LPPe_ProvidePeriodicADwithUpdate(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index, + ett_lppe_OMA_LPPe_ProvidePeriodicADwithUpdate, OMA_LPPe_ProvidePeriodicADwithUpdate_sequence); + + return offset; +} + + +static const per_sequence_t OMA_LPPe_SegmentedADTransfer_sequence[] = { + { &hf_lppe_segmentedAD_session_ID, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_lppe_OMA_LPPe_Session_ID }, + { &hf_lppe_segment_number , ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_lppe_INTEGER_1_4096 }, + { NULL, 0, 0, NULL } +}; + +static int +dissect_lppe_OMA_LPPe_SegmentedADTransfer(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index, + ett_lppe_OMA_LPPe_SegmentedADTransfer, OMA_LPPe_SegmentedADTransfer_sequence); + + return offset; +} + + +static const per_sequence_t OMA_LPPe_ReferencePointUniqueID_sequence[] = { + { &hf_lppe_providerID , ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_lppe_OMA_LPPe_VendorOrOperatorID }, + { &hf_lppe_providerAssignedID, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_lppe_OCTET_STRING }, + { &hf_lppe_version , ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_lppe_INTEGER_1_64 }, + { NULL, 0, 0, NULL } +}; + +static int +dissect_lppe_OMA_LPPe_ReferencePointUniqueID(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index, + ett_lppe_OMA_LPPe_ReferencePointUniqueID, OMA_LPPe_ReferencePointUniqueID_sequence); + + return offset; +} + + +static const value_string lppe_T_referencePointGeographicLocation_vals[] = { + { 0, "location3D" }, + { 1, "location3DwithUncertainty" }, + { 2, "locationwithhighaccuracy" }, + { 0, NULL } +}; + +static const per_choice_t T_referencePointGeographicLocation_choice[] = { + { 0, &hf_lppe_location3D , ASN1_EXTENSION_ROOT , dissect_lpp_EllipsoidPointWithAltitude }, + { 1, &hf_lppe_location3DwithUncertainty, ASN1_EXTENSION_ROOT , dissect_lpp_EllipsoidPointWithAltitudeAndUncertaintyEllipsoid }, + { 2, &hf_lppe_locationwithhighaccuracy, ASN1_EXTENSION_ROOT , dissect_lppe_OMA_LPPe_HighAccuracy3Dposition }, + { 0, NULL, 0, NULL } +}; + +static int +dissect_lppe_T_referencePointGeographicLocation(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_choice(tvb, offset, actx, tree, hf_index, + ett_lppe_T_referencePointGeographicLocation, T_referencePointGeographicLocation_choice, + NULL); + + return offset; +} + + + +static int +dissect_lppe_OCTET_STRING_SIZE_2(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_octet_string(tvb, offset, actx, tree, hf_index, + 2, 2, FALSE, NULL); + + return offset; +} + + + +static int +dissect_lppe_INTEGER_0_511(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index, + 0U, 511U, NULL, FALSE); + + return offset; +} + + + +static int +dissect_lppe_OCTET_STRING_SIZE_1_256(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_octet_string(tvb, offset, actx, tree, hf_index, + 1, 256, FALSE, NULL); + + return offset; +} + + +static const per_sequence_t OMA_LPPe_CivicAddressElement_sequence[] = { + { &hf_lppe_caType , ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_lppe_INTEGER_0_511 }, + { &hf_lppe_caValue , ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_lppe_OCTET_STRING_SIZE_1_256 }, + { NULL, 0, 0, NULL } +}; + +static int +dissect_lppe_OMA_LPPe_CivicAddressElement(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index, + ett_lppe_OMA_LPPe_CivicAddressElement, OMA_LPPe_CivicAddressElement_sequence); + + return offset; +} + + +static const per_sequence_t OMA_LPPe_CivicAddressElementList_sequence_of[1] = { + { &hf_lppe_OMA_LPPe_CivicAddressElementList_item, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lppe_OMA_LPPe_CivicAddressElement }, +}; + +static int +dissect_lppe_OMA_LPPe_CivicAddressElementList(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_constrained_sequence_of(tvb, offset, actx, tree, hf_index, + ett_lppe_OMA_LPPe_CivicAddressElementList, OMA_LPPe_CivicAddressElementList_sequence_of, + 1, 128, FALSE); + + return offset; +} + + +static const per_sequence_t OMA_LPPe_CivicLocation_sequence[] = { + { &hf_lppe_countryCode , ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_lppe_OCTET_STRING_SIZE_2 }, + { &hf_lppe_civicAddressElementList, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_lppe_OMA_LPPe_CivicAddressElementList }, + { NULL, 0, 0, NULL } +}; + +static int +dissect_lppe_OMA_LPPe_CivicLocation(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index, + ett_lppe_OMA_LPPe_CivicLocation, OMA_LPPe_CivicLocation_sequence); + + return offset; +} + + + +static int +dissect_lppe_INTEGER_M20_235(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index, + -20, 235U, NULL, FALSE); + + return offset; +} + + +static const value_string lppe_T_units_vals[] = { + { 0, "cm" }, + { 1, "dm" }, + { 2, "m10" }, + { 0, NULL } +}; + + +static int +dissect_lppe_T_units(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_enumerated(tvb, offset, actx, tree, hf_index, + 3, NULL, TRUE, 0, NULL); + + return offset; +} + + +static const value_string lppe_T_arc_second_units_vals[] = { + { 0, "as0-0003" }, + { 1, "as0-003" }, + { 2, "as0-03" }, + { 3, "as0-3" }, + { 0, NULL } +}; + + +static int +dissect_lppe_T_arc_second_units(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_enumerated(tvb, offset, actx, tree, hf_index, + 4, NULL, TRUE, 0, NULL); + + return offset; +} + + + +static int +dissect_lppe_INTEGER_M524288_524287(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index, + -524288, 524287U, NULL, FALSE); + + return offset; +} + + + +static int +dissect_lppe_INTEGER_M32768_32767(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index, + -32768, 32767U, NULL, FALSE); + + return offset; +} + + + +static int +dissect_lppe_INTEGER_0_127(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index, + 0U, 127U, NULL, FALSE); + + return offset; +} + + +static const per_sequence_t OMA_LPPe_GeodeticUncertaintyAndConfidence_sequence[] = { + { &hf_lppe_uncertainty , ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_lppe_INTEGER_0_127 }, + { &hf_lppe_confidence , ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lppe_INTEGER_0_99 }, + { NULL, 0, 0, NULL } +}; + +static int +dissect_lppe_OMA_LPPe_GeodeticUncertaintyAndConfidence(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index, + ett_lppe_OMA_LPPe_GeodeticUncertaintyAndConfidence, OMA_LPPe_GeodeticUncertaintyAndConfidence_sequence); + + return offset; +} + + +static const per_sequence_t OMA_LPPe_GeodeticRelativeAltitude_sequence[] = { + { &hf_lppe_geodetic_height_depth, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_lppe_INTEGER_M32768_32767 }, + { &hf_lppe_geodetic_uncertainty_and_confidence, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lppe_OMA_LPPe_GeodeticUncertaintyAndConfidence }, + { NULL, 0, 0, NULL } +}; + +static int +dissect_lppe_OMA_LPPe_GeodeticRelativeAltitude(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index, + ett_lppe_OMA_LPPe_GeodeticRelativeAltitude, OMA_LPPe_GeodeticRelativeAltitude_sequence); + + return offset; +} + + + +static int +dissect_lppe_INTEGER_M255_256(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index, + -255, 256U, NULL, FALSE); + + return offset; +} + + +static const per_sequence_t OMA_LPPe_CivicUncertaintyAndConfidence_sequence[] = { + { &hf_lppe_uncertainty , ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_lppe_INTEGER_0_127 }, + { &hf_lppe_confidence , ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lppe_INTEGER_0_99 }, + { NULL, 0, 0, NULL } +}; + +static int +dissect_lppe_OMA_LPPe_CivicUncertaintyAndConfidence(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index, + ett_lppe_OMA_LPPe_CivicUncertaintyAndConfidence, OMA_LPPe_CivicUncertaintyAndConfidence_sequence); + + return offset; +} + + +static const per_sequence_t OMA_LPPe_CivicRelativeAltitude_sequence[] = { + { &hf_lppe_civic_floors , ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_lppe_INTEGER_M255_256 }, + { &hf_lppe_civic_uncertainty_and_confidence, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lppe_OMA_LPPe_CivicUncertaintyAndConfidence }, + { NULL, 0, 0, NULL } +}; + +static int +dissect_lppe_OMA_LPPe_CivicRelativeAltitude(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index, + ett_lppe_OMA_LPPe_CivicRelativeAltitude, OMA_LPPe_CivicRelativeAltitude_sequence); + + return offset; +} + + +static const per_sequence_t OMA_LPPe_RelativeAltitude_sequence[] = { + { &hf_lppe_geodeticRelativeAltitude, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lppe_OMA_LPPe_GeodeticRelativeAltitude }, + { &hf_lppe_civicRelativeAltitude, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lppe_OMA_LPPe_CivicRelativeAltitude }, + { NULL, 0, 0, NULL } +}; + +static int +dissect_lppe_OMA_LPPe_RelativeAltitude(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index, + ett_lppe_OMA_LPPe_RelativeAltitude, OMA_LPPe_RelativeAltitude_sequence); + + return offset; +} + + +static const per_sequence_t T_ellipse_sequence[] = { + { &hf_lppe_semimajor , ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lppe_INTEGER_0_127 }, + { &hf_lppe_semiminor , ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lppe_INTEGER_0_127 }, + { &hf_lppe_offsetAngle , ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lppe_INTEGER_0_179 }, + { NULL, 0, 0, NULL } +}; + +static int +dissect_lppe_T_ellipse(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index, + ett_lppe_T_ellipse, T_ellipse_sequence); + + return offset; +} + + +static const value_string lppe_T_uncShape_vals[] = { + { 0, "circle" }, + { 1, "ellipse" }, + { 0, NULL } +}; + +static const per_choice_t T_uncShape_choice[] = { + { 0, &hf_lppe_circle , ASN1_EXTENSION_ROOT , dissect_lppe_INTEGER_0_127 }, + { 1, &hf_lppe_ellipse , ASN1_EXTENSION_ROOT , dissect_lppe_T_ellipse }, + { 0, NULL, 0, NULL } +}; + +static int +dissect_lppe_T_uncShape(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_choice(tvb, offset, actx, tree, hf_index, + ett_lppe_T_uncShape, T_uncShape_choice, + NULL); + + return offset; +} + + +static const per_sequence_t OMA_LPPe_HorizontalUncertaintyAndConfidence_sequence[] = { + { &hf_lppe_uncShape , ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_lppe_T_uncShape }, + { &hf_lppe_confidence , ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lppe_INTEGER_0_99 }, + { NULL, 0, 0, NULL } +}; + +static int +dissect_lppe_OMA_LPPe_HorizontalUncertaintyAndConfidence(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index, + ett_lppe_OMA_LPPe_HorizontalUncertaintyAndConfidence, OMA_LPPe_HorizontalUncertaintyAndConfidence_sequence); + + return offset; +} + + +static const per_sequence_t OMA_LPPe_RelativeLocation_sequence[] = { + { &hf_lppe_units , ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lppe_T_units }, + { &hf_lppe_arc_second_units, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lppe_T_arc_second_units }, + { &hf_lppe_relativeNorth , ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_lppe_INTEGER_M524288_524287 }, + { &hf_lppe_relativeEast , ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_lppe_INTEGER_M524288_524287 }, + { &hf_lppe_relativeAltitude, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lppe_OMA_LPPe_RelativeAltitude }, + { &hf_lppe_horizontalUncertainty, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lppe_OMA_LPPe_HorizontalUncertaintyAndConfidence }, + { NULL, 0, 0, NULL } +}; + +static int +dissect_lppe_OMA_LPPe_RelativeLocation(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index, + ett_lppe_OMA_LPPe_RelativeLocation, OMA_LPPe_RelativeLocation_sequence); + + return offset; +} + + +static const per_sequence_t OMA_LPPe_ReferencePointRelationship_sequence[] = { + { &hf_lppe_referencePointUniqueID, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_lppe_OMA_LPPe_ReferencePointUniqueID }, + { &hf_lppe_relativeLocation, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_lppe_OMA_LPPe_RelativeLocation }, + { NULL, 0, 0, NULL } +}; + +static int +dissect_lppe_OMA_LPPe_ReferencePointRelationship(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index, + ett_lppe_OMA_LPPe_ReferencePointRelationship, OMA_LPPe_ReferencePointRelationship_sequence); + + return offset; +} + + +static const per_sequence_t SEQUENCE_SIZE_1_8_OF_OMA_LPPe_ReferencePointRelationship_sequence_of[1] = { + { &hf_lppe_relatedReferencePoints_item, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lppe_OMA_LPPe_ReferencePointRelationship }, +}; + +static int +dissect_lppe_SEQUENCE_SIZE_1_8_OF_OMA_LPPe_ReferencePointRelationship(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_constrained_sequence_of(tvb, offset, actx, tree, hf_index, + ett_lppe_SEQUENCE_SIZE_1_8_OF_OMA_LPPe_ReferencePointRelationship, SEQUENCE_SIZE_1_8_OF_OMA_LPPe_ReferencePointRelationship_sequence_of, + 1, 8, FALSE); + + return offset; +} + + + +static int +dissect_lppe_OMA_LPPe_Uri(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_restricted_character_string(tvb, offset, actx, tree, hf_index, + NO_BOUND, NO_BOUND, FALSE, "abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789:/?#[]@!$&'()*+,;=-._~", 84, + NULL); + + return offset; +} + + + +static int +dissect_lppe_OCTET_STRING_SIZE_1_64(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_octet_string(tvb, offset, actx, tree, hf_index, + 1, 64, FALSE, NULL); + + return offset; +} + + +static const per_sequence_t OMA_LPPe_MapDataReference_sequence[] = { + { &hf_lppe_dataID , ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_lppe_OMA_LPPe_AssistanceContainerID }, + { &hf_lppe_mapReference , ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_lppe_OCTET_STRING_SIZE_1_64 }, + { &hf_lppe_mapSize , ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lppe_INTEGER_1_5000 }, + { NULL, 0, 0, NULL } +}; + +static int +dissect_lppe_OMA_LPPe_MapDataReference(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index, + ett_lppe_OMA_LPPe_MapDataReference, OMA_LPPe_MapDataReference_sequence); + + return offset; +} + + +static const value_string lppe_T_mapDataUrl_vals[] = { + { 0, "mapDataUrl" }, + { 1, "mapDataRef" }, + { 0, NULL } +}; + +static const per_choice_t T_mapDataUrl_choice[] = { + { 0, &hf_lppe_mapDataUrl_01 , ASN1_NO_EXTENSIONS , dissect_lppe_OMA_LPPe_Uri }, + { 1, &hf_lppe_mapDataRef , ASN1_NO_EXTENSIONS , dissect_lppe_OMA_LPPe_MapDataReference }, + { 0, NULL, 0, NULL } +}; + +static int +dissect_lppe_T_mapDataUrl(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_choice(tvb, offset, actx, tree, hf_index, + ett_lppe_T_mapDataUrl, T_mapDataUrl_choice, + NULL); + + return offset; +} + + +static const value_string lppe_T_mapProvider_vals[] = { + { 0, "sameAsRefPointProvider" }, + { 1, "notSameAsRefPointProvider" }, + { 0, NULL } +}; + +static const per_choice_t T_mapProvider_choice[] = { + { 0, &hf_lppe_sameAsRefPointProvider, ASN1_EXTENSION_ROOT , dissect_lppe_NULL }, + { 1, &hf_lppe_notSameAsRefPointProvider, ASN1_EXTENSION_ROOT , dissect_lppe_OMA_LPPe_VendorOrOperatorID }, + { 0, NULL, 0, NULL } +}; + +static int +dissect_lppe_T_mapProvider(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_choice(tvb, offset, actx, tree, hf_index, + ett_lppe_T_mapProvider, T_mapProvider_choice, + NULL); + + return offset; +} + + + +static int +dissect_lppe_VisibleString_SIZE_1_64(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_VisibleString(tvb, offset, actx, tree, hf_index, + 1, 64, FALSE); + + return offset; +} + + +static const value_string lppe_T_mapAssociation_vals[] = { + { 0, "referencePointUniqueID" }, + { 1, "otherID" }, + { 2, "mapOffset" }, + { 3, "origin" }, + { 0, NULL } +}; + +static const per_choice_t T_mapAssociation_choice[] = { + { 0, &hf_lppe_referencePointUniqueID_01, ASN1_EXTENSION_ROOT , dissect_lppe_NULL }, + { 1, &hf_lppe_otherID , ASN1_EXTENSION_ROOT , dissect_lppe_VisibleString_SIZE_1_64 }, + { 2, &hf_lppe_mapOffset , ASN1_EXTENSION_ROOT , dissect_lppe_OMA_LPPe_RelativeLocation }, + { 3, &hf_lppe_origin , ASN1_EXTENSION_ROOT , dissect_lppe_NULL }, + { 0, NULL, 0, NULL } +}; + +static int +dissect_lppe_T_mapAssociation(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_choice(tvb, offset, actx, tree, hf_index, + ett_lppe_T_mapAssociation, T_mapAssociation_choice, + NULL); + + return offset; +} + + + +static int +dissect_lppe_INTEGER_0_359(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index, + 0U, 359U, NULL, FALSE); + + return offset; +} + + +static const per_sequence_t OMA_LPPe_MapDataReferenceElement_sequence[] = { + { &hf_lppe_mapDataUrl , ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_lppe_T_mapDataUrl }, + { &hf_lppe_mapProvider , ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lppe_T_mapProvider }, + { &hf_lppe_mapAssociation , ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_lppe_T_mapAssociation }, + { &hf_lppe_mapHorizontalOrientation, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lppe_INTEGER_0_359 }, + { NULL, 0, 0, NULL } +}; + +static int +dissect_lppe_OMA_LPPe_MapDataReferenceElement(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index, + ett_lppe_OMA_LPPe_MapDataReferenceElement, OMA_LPPe_MapDataReferenceElement_sequence); + + return offset; +} + + +static const per_sequence_t OMA_LPPe_MapDataInformation_sequence_of[1] = { + { &hf_lppe_OMA_LPPe_MapDataInformation_item, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lppe_OMA_LPPe_MapDataReferenceElement }, +}; + +static int +dissect_lppe_OMA_LPPe_MapDataInformation(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_constrained_sequence_of(tvb, offset, actx, tree, hf_index, + ett_lppe_OMA_LPPe_MapDataInformation, OMA_LPPe_MapDataInformation_sequence_of, + 1, 16, FALSE); + + return offset; +} + + +static const per_sequence_t OMA_LPPe_ReferencePoint_sequence[] = { + { &hf_lppe_referencePointUniqueID, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lppe_OMA_LPPe_ReferencePointUniqueID }, + { &hf_lppe_referencePointGeographicLocation, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lppe_T_referencePointGeographicLocation }, + { &hf_lppe_referencePointCivicLocation, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lppe_OMA_LPPe_CivicLocation }, + { &hf_lppe_referencePointFloorLevel, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lppe_INTEGER_M20_235 }, + { &hf_lppe_relatedReferencePoints, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lppe_SEQUENCE_SIZE_1_8_OF_OMA_LPPe_ReferencePointRelationship }, + { &hf_lppe_mapDataInformation, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lppe_OMA_LPPe_MapDataInformation }, + { NULL, 0, 0, NULL } +}; + +static int +dissect_lppe_OMA_LPPe_ReferencePoint(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index, + ett_lppe_OMA_LPPe_ReferencePoint, OMA_LPPe_ReferencePoint_sequence); + + return offset; +} + + +static const per_sequence_t OMA_LPPe_CommonIEsProvideAssistanceData_sequence[] = { + { &hf_lppe_assistanceContainerList_01, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lppe_OMA_LPPe_AssistanceContainerProvideList }, + { &hf_lppe_providePeriodicADwithUpdate, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lppe_OMA_LPPe_ProvidePeriodicADwithUpdate }, + { &hf_lppe_segmentedADTransfer, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lppe_OMA_LPPe_SegmentedADTransfer }, + { &hf_lppe_default_reference_point, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lppe_OMA_LPPe_ReferencePoint }, + { NULL, 0, 0, NULL } +}; + +static int +dissect_lppe_OMA_LPPe_CommonIEsProvideAssistanceData(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index, + ett_lppe_OMA_LPPe_CommonIEsProvideAssistanceData, OMA_LPPe_CommonIEsProvideAssistanceData_sequence); + + return offset; +} + + + +static int +dissect_lppe_INTEGER_M128_127(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index, + -128, 127U, NULL, FALSE); + + return offset; +} + + +static const per_sequence_t OMA_LPPe_AGNSS_LocalKlobucharModel_sequence[] = { + { &hf_lppe_validityPeriod , ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_lppe_OMA_LPPe_ValidityPeriod }, + { &hf_lppe_alfa0 , ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_lppe_INTEGER_M128_127 }, + { &hf_lppe_alfa1 , ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_lppe_INTEGER_M128_127 }, + { &hf_lppe_alfa2 , ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_lppe_INTEGER_M128_127 }, + { &hf_lppe_alfa3 , ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_lppe_INTEGER_M128_127 }, + { &hf_lppe_beta0 , ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_lppe_INTEGER_M128_127 }, + { &hf_lppe_beta1 , ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_lppe_INTEGER_M128_127 }, + { &hf_lppe_beta2 , ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_lppe_INTEGER_M128_127 }, + { &hf_lppe_beta3 , ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_lppe_INTEGER_M128_127 }, + { NULL, 0, 0, NULL } +}; + +static int +dissect_lppe_OMA_LPPe_AGNSS_LocalKlobucharModel(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index, + ett_lppe_OMA_LPPe_AGNSS_LocalKlobucharModel, OMA_LPPe_AGNSS_LocalKlobucharModel_sequence); + + return offset; +} + + +static const per_sequence_t SEQUENCE_SIZE_1_8_OF_OMA_LPPe_AGNSS_LocalKlobucharModel_sequence_of[1] = { + { &hf_lppe_klobucharModel_item, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lppe_OMA_LPPe_AGNSS_LocalKlobucharModel }, +}; + +static int +dissect_lppe_SEQUENCE_SIZE_1_8_OF_OMA_LPPe_AGNSS_LocalKlobucharModel(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_constrained_sequence_of(tvb, offset, actx, tree, hf_index, + ett_lppe_SEQUENCE_SIZE_1_8_OF_OMA_LPPe_AGNSS_LocalKlobucharModel, SEQUENCE_SIZE_1_8_OF_OMA_LPPe_AGNSS_LocalKlobucharModel_sequence_of, + 1, 8, FALSE); + + return offset; +} + + +static const per_sequence_t OMA_LPPe_AGNSS_LocalKlobucharModelElement_sequence[] = { + { &hf_lppe_validityArea , ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_lppe_OMA_LPPe_ValidityArea }, + { &hf_lppe_klobucharModel , ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_lppe_SEQUENCE_SIZE_1_8_OF_OMA_LPPe_AGNSS_LocalKlobucharModel }, + { NULL, 0, 0, NULL } +}; + +static int +dissect_lppe_OMA_LPPe_AGNSS_LocalKlobucharModelElement(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index, + ett_lppe_OMA_LPPe_AGNSS_LocalKlobucharModelElement, OMA_LPPe_AGNSS_LocalKlobucharModelElement_sequence); + + return offset; +} + + +static const per_sequence_t OMA_LPPe_AGNSS_LocalKlobucharModelList_sequence_of[1] = { + { &hf_lppe_OMA_LPPe_AGNSS_LocalKlobucharModelList_item, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lppe_OMA_LPPe_AGNSS_LocalKlobucharModelElement }, +}; + +static int +dissect_lppe_OMA_LPPe_AGNSS_LocalKlobucharModelList(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_constrained_sequence_of(tvb, offset, actx, tree, hf_index, + ett_lppe_OMA_LPPe_AGNSS_LocalKlobucharModelList, OMA_LPPe_AGNSS_LocalKlobucharModelList_sequence_of, + 1, 16, FALSE); + + return offset; +} + + +static const value_string lppe_OMA_LPPe_AGNSS_NoaaScales_vals[] = { + { 0, "g1" }, + { 1, "g2" }, + { 2, "g3" }, + { 3, "g4" }, + { 4, "g5" }, + { 5, "unknown" }, + { 6, "none" }, + { 0, NULL } +}; + + +static int +dissect_lppe_OMA_LPPe_AGNSS_NoaaScales(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_enumerated(tvb, offset, actx, tree, hf_index, + 7, NULL, TRUE, 0, NULL); + + return offset; +} + + +static const value_string lppe_T_ionoIndex_vals[] = { + { 0, "noaaScales" }, + { 0, NULL } +}; + +static const per_choice_t T_ionoIndex_choice[] = { + { 0, &hf_lppe_noaaScales , ASN1_EXTENSION_ROOT , dissect_lppe_OMA_LPPe_AGNSS_NoaaScales }, + { 0, NULL, 0, NULL } +}; + +static int +dissect_lppe_T_ionoIndex(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_choice(tvb, offset, actx, tree, hf_index, + ett_lppe_T_ionoIndex, T_ionoIndex_choice, + NULL); + + return offset; +} + + +static const per_sequence_t OMA_LPPe_AGNSS_RleIonoElement_sequence[] = { + { &hf_lppe_regionCount , ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_lppe_INTEGER_0_255 }, + { &hf_lppe_ionoIndex , ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_lppe_T_ionoIndex }, + { NULL, 0, 0, NULL } +}; + +static int +dissect_lppe_OMA_LPPe_AGNSS_RleIonoElement(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index, + ett_lppe_OMA_LPPe_AGNSS_RleIonoElement, OMA_LPPe_AGNSS_RleIonoElement_sequence); + + return offset; +} + + +static const per_sequence_t OMA_LPPe_AGNSS_RleListIono_sequence_of[1] = { + { &hf_lppe_OMA_LPPe_AGNSS_RleListIono_item, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lppe_OMA_LPPe_AGNSS_RleIonoElement }, +}; + +static int +dissect_lppe_OMA_LPPe_AGNSS_RleListIono(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_constrained_sequence_of(tvb, offset, actx, tree, hf_index, + ett_lppe_OMA_LPPe_AGNSS_RleListIono, OMA_LPPe_AGNSS_RleListIono_sequence_of, + 1, 65535, FALSE); + + return offset; +} + + +static const per_sequence_t OMA_LPPe_AGNSS_StormElement_sequence[] = { + { &hf_lppe_validityPeriod , ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_lppe_OMA_LPPe_ValidityPeriod }, + { &hf_lppe_rleListIono , ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_lppe_OMA_LPPe_AGNSS_RleListIono }, + { NULL, 0, 0, NULL } +}; + +static int +dissect_lppe_OMA_LPPe_AGNSS_StormElement(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index, + ett_lppe_OMA_LPPe_AGNSS_StormElement, OMA_LPPe_AGNSS_StormElement_sequence); + + return offset; +} + + +static const per_sequence_t OMA_LPPe_AGNSS_StormList_sequence_of[1] = { + { &hf_lppe_OMA_LPPe_AGNSS_StormList_item, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lppe_OMA_LPPe_AGNSS_StormElement }, +}; + +static int +dissect_lppe_OMA_LPPe_AGNSS_StormList(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_constrained_sequence_of(tvb, offset, actx, tree, hf_index, + ett_lppe_OMA_LPPe_AGNSS_StormList, OMA_LPPe_AGNSS_StormList_sequence_of, + 1, 16, FALSE); + + return offset; +} + + +static const per_sequence_t OMA_LPPe_AGNSS_IonoStormIndication_sequence[] = { + { &hf_lppe_area , ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_lppe_OMA_LPPe_ValidityArea }, + { &hf_lppe_stormList , ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_lppe_OMA_LPPe_AGNSS_StormList }, + { NULL, 0, 0, NULL } +}; + +static int +dissect_lppe_OMA_LPPe_AGNSS_IonoStormIndication(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index, + ett_lppe_OMA_LPPe_AGNSS_IonoStormIndication, OMA_LPPe_AGNSS_IonoStormIndication_sequence); + + return offset; +} + + +static const per_sequence_t T_staticModels_sequence[] = { + { &hf_lppe_localKlobucharModelList, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lppe_OMA_LPPe_AGNSS_LocalKlobucharModelList }, + { &hf_lppe_ionoStormIndication, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lppe_OMA_LPPe_AGNSS_IonoStormIndication }, + { NULL, 0, 0, NULL } +}; + +static int +dissect_lppe_T_staticModels(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index, + ett_lppe_T_staticModels, T_staticModels_sequence); + + return offset; +} + + +static const per_sequence_t OMA_LPPe_AGNSS_WideAreaIonoSurfaceControlParametersProvide_sequence[] = { + { &hf_lppe_duration_03 , ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lppe_OMA_LPPe_Duration }, + { &hf_lppe_rate , ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lppe_INTEGER_1_64 }, + { &hf_lppe_referencePosition, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lpp_Ellipsoid_Point }, + { &hf_lppe_validityArea , ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lppe_OMA_LPPe_ValidityArea }, + { NULL, 0, 0, NULL } +}; + +static int +dissect_lppe_OMA_LPPe_AGNSS_WideAreaIonoSurfaceControlParametersProvide(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index, + ett_lppe_OMA_LPPe_AGNSS_WideAreaIonoSurfaceControlParametersProvide, OMA_LPPe_AGNSS_WideAreaIonoSurfaceControlParametersProvide_sequence); + + return offset; +} + + +static const per_sequence_t OMA_LPPe_AGNSS_WideAreaIonoSurfaceCommon_sequence[] = { + { &hf_lppe_validityPeriod , ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_lppe_OMA_LPPe_ValidityPeriod }, + { NULL, 0, 0, NULL } +}; + +static int +dissect_lppe_OMA_LPPe_AGNSS_WideAreaIonoSurfaceCommon(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index, + ett_lppe_OMA_LPPe_AGNSS_WideAreaIonoSurfaceCommon, OMA_LPPe_AGNSS_WideAreaIonoSurfaceCommon_sequence); + + return offset; +} + + +static const value_string lppe_T_waIono_vals[] = { + { 0, "controlParameters" }, + { 1, "commonProvide" }, + { 0, NULL } +}; + +static const per_choice_t T_waIono_choice[] = { + { 0, &hf_lppe_controlParameters, ASN1_EXTENSION_ROOT , dissect_lppe_OMA_LPPe_AGNSS_WideAreaIonoSurfaceControlParametersProvide }, + { 1, &hf_lppe_commonProvide , ASN1_EXTENSION_ROOT , dissect_lppe_OMA_LPPe_AGNSS_WideAreaIonoSurfaceCommon }, + { 0, NULL, 0, NULL } +}; + +static int +dissect_lppe_T_waIono(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_choice(tvb, offset, actx, tree, hf_index, + ett_lppe_T_waIono, T_waIono_choice, + NULL); + + return offset; +} + + +static const value_string lppe_OMA_LPPe_AGNSS_IonosphericModel_vals[] = { + { 0, "staticModels" }, + { 1, "waIono" }, + { 0, NULL } +}; + +static const per_choice_t OMA_LPPe_AGNSS_IonosphericModel_choice[] = { + { 0, &hf_lppe_staticModels , ASN1_EXTENSION_ROOT , dissect_lppe_T_staticModels }, + { 1, &hf_lppe_waIono , ASN1_EXTENSION_ROOT , dissect_lppe_T_waIono }, + { 0, NULL, 0, NULL } +}; + +static int +dissect_lppe_OMA_LPPe_AGNSS_IonosphericModel(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_choice(tvb, offset, actx, tree, hf_index, + ett_lppe_OMA_LPPe_AGNSS_IonosphericModel, OMA_LPPe_AGNSS_IonosphericModel_choice, + NULL); + + return offset; +} + + + +static int +dissect_lppe_INTEGER_M1000_8192(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index, + -1000, 8192U, NULL, FALSE); + + return offset; +} + + + +static int +dissect_lppe_INTEGER_0_4095(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index, + 0U, 4095U, NULL, FALSE); + + return offset; +} + + + +static int +dissect_lppe_INTEGER_M8192_8191(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index, + -8192, 8191U, NULL, FALSE); + + return offset; +} + + + +static int +dissect_lppe_INTEGER_0_16383(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index, + 0U, 16383U, NULL, FALSE); + + return offset; +} + + +static const per_sequence_t OMA_LPPe_AGNSS_MappingFunctionParameters_sequence[] = { + { &hf_lppe_ah , ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_lppe_INTEGER_0_16383 }, + { &hf_lppe_bh , ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lppe_INTEGER_0_16383 }, + { &hf_lppe_ch , ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lppe_INTEGER_0_16383 }, + { &hf_lppe_aw , ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lppe_INTEGER_0_16383 }, + { &hf_lppe_bw , ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lppe_INTEGER_0_16383 }, + { &hf_lppe_cw , ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lppe_INTEGER_0_16383 }, + { NULL, 0, 0, NULL } +}; + +static int +dissect_lppe_OMA_LPPe_AGNSS_MappingFunctionParameters(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index, + ett_lppe_OMA_LPPe_AGNSS_MappingFunctionParameters, OMA_LPPe_AGNSS_MappingFunctionParameters_sequence); + + return offset; +} + + +static const per_sequence_t OMA_LPPe_AGNSS_LocalTroposphereDelayTimeElement_sequence[] = { + { &hf_lppe_validityPeriod , ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_lppe_OMA_LPPe_ValidityPeriod }, + { &hf_lppe_zh0 , ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_lppe_INTEGER_0_4095 }, + { &hf_lppe_eh , ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lppe_INTEGER_0_4095 }, + { &hf_lppe_zw0 , ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lppe_INTEGER_0_4095 }, + { &hf_lppe_ew , ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lppe_INTEGER_0_4095 }, + { &hf_lppe_gN , ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lppe_INTEGER_M8192_8191 }, + { &hf_lppe_gE , ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lppe_INTEGER_M8192_8191 }, + { &hf_lppe_mappingFunctionParameters, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_lppe_OMA_LPPe_AGNSS_MappingFunctionParameters }, + { NULL, 0, 0, NULL } +}; + +static int +dissect_lppe_OMA_LPPe_AGNSS_LocalTroposphereDelayTimeElement(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index, + ett_lppe_OMA_LPPe_AGNSS_LocalTroposphereDelayTimeElement, OMA_LPPe_AGNSS_LocalTroposphereDelayTimeElement_sequence); + + return offset; +} + + +static const per_sequence_t SEQUENCE_SIZE_1_8_OF_OMA_LPPe_AGNSS_LocalTroposphereDelayTimeElement_sequence_of[1] = { + { &hf_lppe_delayList_item , ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lppe_OMA_LPPe_AGNSS_LocalTroposphereDelayTimeElement }, +}; + +static int +dissect_lppe_SEQUENCE_SIZE_1_8_OF_OMA_LPPe_AGNSS_LocalTroposphereDelayTimeElement(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_constrained_sequence_of(tvb, offset, actx, tree, hf_index, + ett_lppe_SEQUENCE_SIZE_1_8_OF_OMA_LPPe_AGNSS_LocalTroposphereDelayTimeElement, SEQUENCE_SIZE_1_8_OF_OMA_LPPe_AGNSS_LocalTroposphereDelayTimeElement_sequence_of, + 1, 8, FALSE); + + return offset; +} + + +static const per_sequence_t OMA_LPPe_AGNSS_LocalTroposphereDelayAreaElement_sequence[] = { + { &hf_lppe_validityArea , ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_lppe_OMA_LPPe_ValidityArea }, + { &hf_lppe_refAltitude , ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lppe_INTEGER_M1000_8192 }, + { &hf_lppe_gradientReferencePosition, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lpp_Ellipsoid_Point }, + { &hf_lppe_delayList , ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_lppe_SEQUENCE_SIZE_1_8_OF_OMA_LPPe_AGNSS_LocalTroposphereDelayTimeElement }, + { NULL, 0, 0, NULL } +}; + +static int +dissect_lppe_OMA_LPPe_AGNSS_LocalTroposphereDelayAreaElement(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index, + ett_lppe_OMA_LPPe_AGNSS_LocalTroposphereDelayAreaElement, OMA_LPPe_AGNSS_LocalTroposphereDelayAreaElement_sequence); + + return offset; +} + + +static const per_sequence_t OMA_LPPe_AGNSS_LocalTroposphereDelayList_sequence_of[1] = { + { &hf_lppe_OMA_LPPe_AGNSS_LocalTroposphereDelayList_item, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lppe_OMA_LPPe_AGNSS_LocalTroposphereDelayAreaElement }, +}; + +static int +dissect_lppe_OMA_LPPe_AGNSS_LocalTroposphereDelayList(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_constrained_sequence_of(tvb, offset, actx, tree, hf_index, + ett_lppe_OMA_LPPe_AGNSS_LocalTroposphereDelayList, OMA_LPPe_AGNSS_LocalTroposphereDelayList_sequence_of, + 1, 8, FALSE); + + return offset; +} + + + +static int +dissect_lppe_INTEGER_M1024_1023(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index, + -1024, 1023U, NULL, FALSE); + + return offset; +} + + + +static int +dissect_lppe_INTEGER_M64_63(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index, + -64, 63U, NULL, FALSE); + + return offset; +} + + + +static int +dissect_lppe_INTEGER_M16_16(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index, + -16, 16U, NULL, FALSE); + + return offset; +} + + + +static int +dissect_lppe_INTEGER_M8_7(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index, + -8, 7U, NULL, FALSE); + + return offset; +} + + +static const per_sequence_t OMA_LPPe_AGNSS_LocalSurfaceParametersTimeElement_sequence[] = { + { &hf_lppe_validityPeriod , ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_lppe_OMA_LPPe_ValidityPeriod }, + { &hf_lppe_pressure , ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_lppe_INTEGER_M1024_1023 }, + { &hf_lppe_pressureRate , ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_lppe_INTEGER_M128_127 }, + { &hf_lppe_gN_pressure , ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lppe_INTEGER_M128_127 }, + { &hf_lppe_gE_pressure , ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lppe_INTEGER_M128_127 }, + { &hf_lppe_temperature , ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lppe_INTEGER_M64_63 }, + { &hf_lppe_temperatureRate, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lppe_INTEGER_M16_16 }, + { &hf_lppe_gN_temperature , ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lppe_INTEGER_M8_7 }, + { &hf_lppe_gE_temperature , ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lppe_INTEGER_M8_7 }, + { &hf_lppe_mappingFunctionParameters, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_lppe_OMA_LPPe_AGNSS_MappingFunctionParameters }, + { NULL, 0, 0, NULL } +}; + +static int +dissect_lppe_OMA_LPPe_AGNSS_LocalSurfaceParametersTimeElement(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index, + ett_lppe_OMA_LPPe_AGNSS_LocalSurfaceParametersTimeElement, OMA_LPPe_AGNSS_LocalSurfaceParametersTimeElement_sequence); + + return offset; +} + + +static const per_sequence_t SEQUENCE_SIZE_1_8_OF_OMA_LPPe_AGNSS_LocalSurfaceParametersTimeElement_sequence_of[1] = { + { &hf_lppe_parameterList_item, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lppe_OMA_LPPe_AGNSS_LocalSurfaceParametersTimeElement }, +}; + +static int +dissect_lppe_SEQUENCE_SIZE_1_8_OF_OMA_LPPe_AGNSS_LocalSurfaceParametersTimeElement(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_constrained_sequence_of(tvb, offset, actx, tree, hf_index, + ett_lppe_SEQUENCE_SIZE_1_8_OF_OMA_LPPe_AGNSS_LocalSurfaceParametersTimeElement, SEQUENCE_SIZE_1_8_OF_OMA_LPPe_AGNSS_LocalSurfaceParametersTimeElement_sequence_of, + 1, 8, FALSE); + + return offset; +} + + +static const per_sequence_t OMA_LPPe_AGNSS_LocalSurfaceParametersAreaElement_sequence[] = { + { &hf_lppe_validityArea , ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_lppe_OMA_LPPe_ValidityArea }, + { &hf_lppe_refAltitude , ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lppe_INTEGER_M1000_8192 }, + { &hf_lppe_gradientReferencePosition, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lpp_Ellipsoid_Point }, + { &hf_lppe_parameterList , ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_lppe_SEQUENCE_SIZE_1_8_OF_OMA_LPPe_AGNSS_LocalSurfaceParametersTimeElement }, + { NULL, 0, 0, NULL } +}; + +static int +dissect_lppe_OMA_LPPe_AGNSS_LocalSurfaceParametersAreaElement(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index, + ett_lppe_OMA_LPPe_AGNSS_LocalSurfaceParametersAreaElement, OMA_LPPe_AGNSS_LocalSurfaceParametersAreaElement_sequence); + + return offset; +} + + +static const per_sequence_t OMA_LPPe_AGNSS_LocalSurfaceParametersList_sequence_of[1] = { + { &hf_lppe_OMA_LPPe_AGNSS_LocalSurfaceParametersList_item, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lppe_OMA_LPPe_AGNSS_LocalSurfaceParametersAreaElement }, +}; + +static int +dissect_lppe_OMA_LPPe_AGNSS_LocalSurfaceParametersList(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_constrained_sequence_of(tvb, offset, actx, tree, hf_index, + ett_lppe_OMA_LPPe_AGNSS_LocalSurfaceParametersList, OMA_LPPe_AGNSS_LocalSurfaceParametersList_sequence_of, + 1, 8, FALSE); + + return offset; +} + + +static const per_sequence_t OMA_LPPe_AGNSS_TroposphereModel_sequence[] = { + { &hf_lppe_troposphereDelayList, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lppe_OMA_LPPe_AGNSS_LocalTroposphereDelayList }, + { &hf_lppe_surfaceParametersList, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lppe_OMA_LPPe_AGNSS_LocalSurfaceParametersList }, + { NULL, 0, 0, NULL } +}; + +static int +dissect_lppe_OMA_LPPe_AGNSS_TroposphereModel(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index, + ett_lppe_OMA_LPPe_AGNSS_TroposphereModel, OMA_LPPe_AGNSS_TroposphereModel_sequence); + + return offset; +} + + +static const per_sequence_t OMA_LPPe_AGNSS_PressureAssistanceElement_sequence[] = { + { &hf_lppe_validityPeriod , ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_lppe_OMA_LPPe_ValidityPeriod }, + { &hf_lppe_pressure , ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_lppe_INTEGER_M1024_1023 }, + { &hf_lppe_pressureRate , ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lppe_INTEGER_M128_127 }, + { &hf_lppe_gN_01 , ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lppe_INTEGER_M128_127 }, + { &hf_lppe_gE_01 , ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lppe_INTEGER_M128_127 }, + { NULL, 0, 0, NULL } +}; + +static int +dissect_lppe_OMA_LPPe_AGNSS_PressureAssistanceElement(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index, + ett_lppe_OMA_LPPe_AGNSS_PressureAssistanceElement, OMA_LPPe_AGNSS_PressureAssistanceElement_sequence); + + return offset; +} + + +static const per_sequence_t SEQUENCE_SIZE_1_16_OF_OMA_LPPe_AGNSS_PressureAssistanceElement_sequence_of[1] = { + { &hf_lppe_pressureAssistanceList_item, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lppe_OMA_LPPe_AGNSS_PressureAssistanceElement }, +}; + +static int +dissect_lppe_SEQUENCE_SIZE_1_16_OF_OMA_LPPe_AGNSS_PressureAssistanceElement(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_constrained_sequence_of(tvb, offset, actx, tree, hf_index, + ett_lppe_SEQUENCE_SIZE_1_16_OF_OMA_LPPe_AGNSS_PressureAssistanceElement, SEQUENCE_SIZE_1_16_OF_OMA_LPPe_AGNSS_PressureAssistanceElement_sequence_of, + 1, 16, FALSE); + + return offset; +} + + +static const per_sequence_t OMA_LPPe_AGNSS_AltitudeAssistanceAreaElement_sequence[] = { + { &hf_lppe_validityArea , ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_lppe_OMA_LPPe_ValidityArea }, + { &hf_lppe_gradientReferencePosition_01, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lpp_EllipsoidPointWithAltitudeAndUncertaintyEllipsoid }, + { &hf_lppe_refAltitude , ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lppe_INTEGER_M1000_8192 }, + { &hf_lppe_pressureAssistanceList, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_lppe_SEQUENCE_SIZE_1_16_OF_OMA_LPPe_AGNSS_PressureAssistanceElement }, + { NULL, 0, 0, NULL } +}; + +static int +dissect_lppe_OMA_LPPe_AGNSS_AltitudeAssistanceAreaElement(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index, + ett_lppe_OMA_LPPe_AGNSS_AltitudeAssistanceAreaElement, OMA_LPPe_AGNSS_AltitudeAssistanceAreaElement_sequence); + + return offset; +} + + +static const per_sequence_t OMA_LPPe_AGNSS_AltitudeAssistanceList_sequence_of[1] = { + { &hf_lppe_OMA_LPPe_AGNSS_AltitudeAssistanceList_item, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lppe_OMA_LPPe_AGNSS_AltitudeAssistanceAreaElement }, +}; + +static int +dissect_lppe_OMA_LPPe_AGNSS_AltitudeAssistanceList(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_constrained_sequence_of(tvb, offset, actx, tree, hf_index, + ett_lppe_OMA_LPPe_AGNSS_AltitudeAssistanceList, OMA_LPPe_AGNSS_AltitudeAssistanceList_sequence_of, + 1, 8, FALSE); + + return offset; +} + + + +static int +dissect_lppe_INTEGER_1000_2000(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index, + 1000U, 2000U, NULL, FALSE); + + return offset; +} + + +static const per_sequence_t OMA_LPPe_AGNSS_SolarRadiation_sequence[] = { + { &hf_lppe_solarRadiation_01, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_lppe_INTEGER_1000_2000 }, + { NULL, 0, 0, NULL } +}; + +static int +dissect_lppe_OMA_LPPe_AGNSS_SolarRadiation(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index, + ett_lppe_OMA_LPPe_AGNSS_SolarRadiation, OMA_LPPe_AGNSS_SolarRadiation_sequence); + + return offset; +} + + +static const per_sequence_t OMA_LPPe_AGNSS_CCPprovideCommonParameters_sequence[] = { + { &hf_lppe_ccpReferenceTime, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_lpp_GNSS_SystemTime }, + { NULL, 0, 0, NULL } +}; + +static int +dissect_lppe_OMA_LPPe_AGNSS_CCPprovideCommonParameters(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index, + ett_lppe_OMA_LPPe_AGNSS_CCPprovideCommonParameters, OMA_LPPe_AGNSS_CCPprovideCommonParameters_sequence); + + return offset; +} + + +static const per_sequence_t OMA_LPPe_AGNSS_CCPsignalSupport_sequence[] = { + { &hf_lppe_gnss , ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_lpp_GNSS_ID }, + { &hf_lppe_signals , ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_lpp_GNSS_SignalIDs }, + { NULL, 0, 0, NULL } +}; + +static int +dissect_lppe_OMA_LPPe_AGNSS_CCPsignalSupport(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index, + ett_lppe_OMA_LPPe_AGNSS_CCPsignalSupport, OMA_LPPe_AGNSS_CCPsignalSupport_sequence); + + return offset; +} + + +static const per_sequence_t SEQUENCE_SIZE_1_8_OF_OMA_LPPe_AGNSS_CCPsignalSupport_sequence_of[1] = { + { &hf_lppe_signalSupport_item, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lppe_OMA_LPPe_AGNSS_CCPsignalSupport }, +}; + +static int +dissect_lppe_SEQUENCE_SIZE_1_8_OF_OMA_LPPe_AGNSS_CCPsignalSupport(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_constrained_sequence_of(tvb, offset, actx, tree, hf_index, + ett_lppe_SEQUENCE_SIZE_1_8_OF_OMA_LPPe_AGNSS_CCPsignalSupport, SEQUENCE_SIZE_1_8_OF_OMA_LPPe_AGNSS_CCPsignalSupport_sequence_of, + 1, 8, FALSE); + + return offset; +} + + +static const per_sequence_t OMA_LPPe_AGNSS_CCPsupportArea_sequence[] = { + { &hf_lppe_areaDescription, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_lppe_OMA_LPPe_ValidityArea }, + { &hf_lppe_signalSupport , ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_lppe_SEQUENCE_SIZE_1_8_OF_OMA_LPPe_AGNSS_CCPsignalSupport }, + { NULL, 0, 0, NULL } +}; + +static int +dissect_lppe_OMA_LPPe_AGNSS_CCPsupportArea(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index, + ett_lppe_OMA_LPPe_AGNSS_CCPsupportArea, OMA_LPPe_AGNSS_CCPsupportArea_sequence); + + return offset; +} + + +static const value_string lppe_T_antennaDescription_vals[] = { + { 0, "igsAntennaName" }, + { 1, "proprietaryName" }, + { 0, NULL } +}; + +static const per_choice_t T_antennaDescription_choice[] = { + { 0, &hf_lppe_igsAntennaName , ASN1_EXTENSION_ROOT , dissect_lppe_OMA_LPPe_CharArray }, + { 1, &hf_lppe_proprietaryName, ASN1_EXTENSION_ROOT , dissect_lppe_OMA_LPPe_CharArray }, + { 0, NULL, 0, NULL } +}; + +static int +dissect_lppe_T_antennaDescription(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_choice(tvb, offset, actx, tree, hf_index, + ett_lppe_T_antennaDescription, T_antennaDescription_choice, + NULL); + + return offset; +} + + +static const per_sequence_t OMA_LPPe_AGNSS_AntennaDescription_sequence[] = { + { &hf_lppe_antennaDescription_01, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_lppe_T_antennaDescription }, + { &hf_lppe_antennaSetupID , ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lppe_INTEGER_0_255 }, + { &hf_lppe_antennaSerialNumber, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lppe_OMA_LPPe_CharArray }, + { NULL, 0, 0, NULL } +}; + +static int +dissect_lppe_OMA_LPPe_AGNSS_AntennaDescription(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index, + ett_lppe_OMA_LPPe_AGNSS_AntennaDescription, OMA_LPPe_AGNSS_AntennaDescription_sequence); + + return offset; +} + + +static const per_sequence_t OMA_LPPe_AGNSS_CCPreferenceStationElement_sequence[] = { + { &hf_lppe_referenceStationID, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_lppe_OMA_LPPe_AGNSS_CCPreferenceStationID }, + { &hf_lppe_referenceStationLocation, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_lppe_OMA_LPPe_HighAccuracy3Dposition }, + { &hf_lppe_antennaDescription, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lppe_OMA_LPPe_AGNSS_AntennaDescription }, + { NULL, 0, 0, NULL } +}; + +static int +dissect_lppe_OMA_LPPe_AGNSS_CCPreferenceStationElement(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index, + ett_lppe_OMA_LPPe_AGNSS_CCPreferenceStationElement, OMA_LPPe_AGNSS_CCPreferenceStationElement_sequence); + + return offset; +} + + +static const per_sequence_t OMA_LPPe_AGNSS_CCPreferenceStationList_sequence_of[1] = { + { &hf_lppe_OMA_LPPe_AGNSS_CCPreferenceStationList_item, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lppe_OMA_LPPe_AGNSS_CCPreferenceStationElement }, +}; + +static int +dissect_lppe_OMA_LPPe_AGNSS_CCPreferenceStationList(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_constrained_sequence_of(tvb, offset, actx, tree, hf_index, + ett_lppe_OMA_LPPe_AGNSS_CCPreferenceStationList, OMA_LPPe_AGNSS_CCPreferenceStationList_sequence_of, + 0, maxReferenceStations, FALSE); + + return offset; +} + + +static const per_sequence_t OMA_LPPe_AGNSS_CCPprovideControlParameters_sequence[] = { + { &hf_lppe_ccpSupportArea , ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lppe_OMA_LPPe_AGNSS_CCPsupportArea }, + { &hf_lppe_ccpNeighborList, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lppe_OMA_LPPe_AGNSS_CCPreferenceStationList }, + { &hf_lppe_duration_03 , ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lppe_OMA_LPPe_Duration }, + { &hf_lppe_rate , ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lppe_INTEGER_1_64 }, + { &hf_lppe_ccpReferenceStationList, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lppe_OMA_LPPe_AGNSS_CCPreferenceStationList }, + { NULL, 0, 0, NULL } +}; + +static int +dissect_lppe_OMA_LPPe_AGNSS_CCPprovideControlParameters(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index, + ett_lppe_OMA_LPPe_AGNSS_CCPprovideControlParameters, OMA_LPPe_AGNSS_CCPprovideControlParameters_sequence); + + return offset; +} + + +static const value_string lppe_OMA_LPPe_AGNSS_CCPassistCommonProvide_vals[] = { + { 0, "ccpProvideCommonParameters" }, + { 1, "ccpProvideControlParameters" }, + { 0, NULL } +}; + +static const per_choice_t OMA_LPPe_AGNSS_CCPassistCommonProvide_choice[] = { + { 0, &hf_lppe_ccpProvideCommonParameters, ASN1_EXTENSION_ROOT , dissect_lppe_OMA_LPPe_AGNSS_CCPprovideCommonParameters }, + { 1, &hf_lppe_ccpProvideControlParameters, ASN1_EXTENSION_ROOT , dissect_lppe_OMA_LPPe_AGNSS_CCPprovideControlParameters }, + { 0, NULL, 0, NULL } +}; + +static int +dissect_lppe_OMA_LPPe_AGNSS_CCPassistCommonProvide(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_choice(tvb, offset, actx, tree, hf_index, + ett_lppe_OMA_LPPe_AGNSS_CCPassistCommonProvide, OMA_LPPe_AGNSS_CCPassistCommonProvide_choice, + NULL); + + return offset; +} + + +static const per_sequence_t OMA_LPPe_AGNSS_CommonAssistData_sequence[] = { + { &hf_lppe_ionosphericModel, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lppe_OMA_LPPe_AGNSS_IonosphericModel }, + { &hf_lppe_troposphereModel, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lppe_OMA_LPPe_AGNSS_TroposphereModel }, + { &hf_lppe_altitudeAssistance, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lppe_OMA_LPPe_AGNSS_AltitudeAssistanceList }, + { &hf_lppe_solarRadiation , ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lppe_OMA_LPPe_AGNSS_SolarRadiation }, + { &hf_lppe_ccpAssistCommonProvide, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lppe_OMA_LPPe_AGNSS_CCPassistCommonProvide }, + { NULL, 0, 0, NULL } +}; + +static int +dissect_lppe_OMA_LPPe_AGNSS_CommonAssistData(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index, + ett_lppe_OMA_LPPe_AGNSS_CommonAssistData, OMA_LPPe_AGNSS_CommonAssistData_sequence); + + return offset; +} + + + +static int +dissect_lppe_INTEGER_0_8191(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index, + 0U, 8191U, NULL, FALSE); + + return offset; +} + + + +static int +dissect_lppe_INTEGER_M4096_4095(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index, + -4096, 4095U, NULL, FALSE); + + return offset; +} + + +static const per_sequence_t OMA_LPPe_AGNSS_WideAreaIonoSurfacePerSVelement_sequence[] = { + { &hf_lppe_svID , ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_lpp_SV_ID }, + { &hf_lppe_a0 , ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_lppe_INTEGER_0_8191 }, + { &hf_lppe_e1 , ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_lppe_INTEGER_M4096_4095 }, + { &hf_lppe_n1 , ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_lppe_INTEGER_M4096_4095 }, + { &hf_lppe_e2 , ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lppe_INTEGER_M4096_4095 }, + { &hf_lppe_n2 , ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lppe_INTEGER_M4096_4095 }, + { &hf_lppe_en , ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lppe_INTEGER_M4096_4095 }, + { NULL, 0, 0, NULL } +}; + +static int +dissect_lppe_OMA_LPPe_AGNSS_WideAreaIonoSurfacePerSVelement(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index, + ett_lppe_OMA_LPPe_AGNSS_WideAreaIonoSurfacePerSVelement, OMA_LPPe_AGNSS_WideAreaIonoSurfacePerSVelement_sequence); + + return offset; +} + + +static const per_sequence_t OMA_LPPe_AGNSS_WideAreaIonoSurfacePerSVlist_sequence_of[1] = { + { &hf_lppe_OMA_LPPe_AGNSS_WideAreaIonoSurfacePerSVlist_item, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lppe_OMA_LPPe_AGNSS_WideAreaIonoSurfacePerSVelement }, +}; + +static int +dissect_lppe_OMA_LPPe_AGNSS_WideAreaIonoSurfacePerSVlist(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_constrained_sequence_of(tvb, offset, actx, tree, hf_index, + ett_lppe_OMA_LPPe_AGNSS_WideAreaIonoSurfacePerSVlist, OMA_LPPe_AGNSS_WideAreaIonoSurfacePerSVlist_sequence_of, + 1, 64, FALSE); + + return offset; +} + + + +static int +dissect_lppe_INTEGER_1_4095(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index, + 1U, 4095U, NULL, FALSE); + + return offset; +} + + + +static int +dissect_lppe_INTEGER_1_511(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index, + 1U, 511U, NULL, FALSE); + + return offset; +} + + + +static int +dissect_lppe_INTEGER_M30000_30000(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index, + -30000, 30000U, NULL, FALSE); + + return offset; +} + + +static const per_sequence_t OMA_LPPe_AGNSS_PCOelement_sequence[] = { + { &hf_lppe_xOffsetSBF , ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_lppe_INTEGER_M30000_30000 }, + { &hf_lppe_yOffsetSBF , ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_lppe_INTEGER_M30000_30000 }, + { &hf_lppe_zOffsetSBF , ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_lppe_INTEGER_M30000_30000 }, + { NULL, 0, 0, NULL } +}; + +static int +dissect_lppe_OMA_LPPe_AGNSS_PCOelement(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index, + ett_lppe_OMA_LPPe_AGNSS_PCOelement, OMA_LPPe_AGNSS_PCOelement_sequence); + + return offset; +} + + +static const value_string lppe_OMA_LPPe_AGNSS_SVtype_vals[] = { + { 0, "gpsIIR" }, + { 1, "gpsIIRM" }, + { 2, "gpsIIF" }, + { 3, "gpsIII" }, + { 4, "glonassM" }, + { 5, "glonassK1" }, + { 6, "glonassK2" }, + { 7, "glonassKM" }, + { 8, "unknown" }, + { 0, NULL } +}; + + +static int +dissect_lppe_OMA_LPPe_AGNSS_SVtype(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_enumerated(tvb, offset, actx, tree, hf_index, + 9, NULL, TRUE, 0, NULL); + + return offset; +} + + + +static int +dissect_lppe_INTEGER_0_1000(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index, + 0U, 1000U, NULL, FALSE); + + return offset; +} + + +static const per_sequence_t T_svInfo_sequence[] = { + { &hf_lppe_svType , ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_lppe_OMA_LPPe_AGNSS_SVtype }, + { &hf_lppe_svNumber , ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_lppe_INTEGER_0_1000 }, + { NULL, 0, 0, NULL } +}; + +static int +dissect_lppe_T_svInfo(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index, + ett_lppe_T_svInfo, T_svInfo_sequence); + + return offset; +} + + +static const per_sequence_t OMA_LPPe_AGNSS_MechanicsElement_sequence[] = { + { &hf_lppe_svid , ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_lpp_SV_ID }, + { &hf_lppe_mass , ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lppe_INTEGER_1_4095 }, + { &hf_lppe_effectiveReflectivityArea, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lppe_INTEGER_1_511 }, + { &hf_lppe_pco , ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lppe_OMA_LPPe_AGNSS_PCOelement }, + { &hf_lppe_svInfo , ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lppe_T_svInfo }, + { NULL, 0, 0, NULL } +}; + +static int +dissect_lppe_OMA_LPPe_AGNSS_MechanicsElement(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index, + ett_lppe_OMA_LPPe_AGNSS_MechanicsElement, OMA_LPPe_AGNSS_MechanicsElement_sequence); + + return offset; +} + + +static const per_sequence_t OMA_LPPe_AGNSS_MechanicsForAllSVs_sequence_of[1] = { + { &hf_lppe_OMA_LPPe_AGNSS_MechanicsForAllSVs_item, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lppe_OMA_LPPe_AGNSS_MechanicsElement }, +}; + +static int +dissect_lppe_OMA_LPPe_AGNSS_MechanicsForAllSVs(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_constrained_sequence_of(tvb, offset, actx, tree, hf_index, + ett_lppe_OMA_LPPe_AGNSS_MechanicsForAllSVs, OMA_LPPe_AGNSS_MechanicsForAllSVs_sequence_of, + 1, 64, FALSE); + + return offset; +} + + +static const value_string lppe_T_pd_vals[] = { + { 0, "pilot" }, + { 1, "data" }, + { 2, "notapplicable" }, + { 0, NULL } +}; + + +static int +dissect_lppe_T_pd(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_enumerated(tvb, offset, actx, tree, hf_index, + 3, NULL, TRUE, 0, NULL); + + return offset; +} + + +static const per_sequence_t T_reference_sequence[] = { + { &hf_lppe_signal , ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_lpp_GNSS_SignalID }, + { &hf_lppe_pd , ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_lppe_T_pd }, + { NULL, 0, 0, NULL } +}; + +static int +dissect_lppe_T_reference(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index, + ett_lppe_T_reference, T_reference_sequence); + + return offset; +} + + +static const value_string lppe_T_pd_01_vals[] = { + { 0, "pilot" }, + { 1, "data" }, + { 2, "notapplicable" }, + { 0, NULL } +}; + + +static int +dissect_lppe_T_pd_01(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_enumerated(tvb, offset, actx, tree, hf_index, + 3, NULL, TRUE, 0, NULL); + + return offset; +} + + +static const per_sequence_t OMA_LPPe_AGNSS_DCBelement_sequence[] = { + { &hf_lppe_signal , ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_lpp_GNSS_SignalID }, + { &hf_lppe_pd_01 , ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_lppe_T_pd_01 }, + { &hf_lppe_dcb , ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_lppe_INTEGER_M4096_4095 }, + { NULL, 0, 0, NULL } +}; + +static int +dissect_lppe_OMA_LPPe_AGNSS_DCBelement(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index, + ett_lppe_OMA_LPPe_AGNSS_DCBelement, OMA_LPPe_AGNSS_DCBelement_sequence); + + return offset; +} + + +static const per_sequence_t OMA_LPPe_AGNSS_DCBlist_sequence_of[1] = { + { &hf_lppe_OMA_LPPe_AGNSS_DCBlist_item, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lppe_OMA_LPPe_AGNSS_DCBelement }, +}; + +static int +dissect_lppe_OMA_LPPe_AGNSS_DCBlist(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_constrained_sequence_of(tvb, offset, actx, tree, hf_index, + ett_lppe_OMA_LPPe_AGNSS_DCBlist, OMA_LPPe_AGNSS_DCBlist_sequence_of, + 1, 16, FALSE); + + return offset; +} + + +static const per_sequence_t OMA_LPPe_AGNSS_DCBlistElement_sequence[] = { + { &hf_lppe_svid , ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_lpp_SV_ID }, + { &hf_lppe_reference , ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_lppe_T_reference }, + { &hf_lppe_dcbList , ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_lppe_OMA_LPPe_AGNSS_DCBlist }, + { NULL, 0, 0, NULL } +}; + +static int +dissect_lppe_OMA_LPPe_AGNSS_DCBlistElement(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index, + ett_lppe_OMA_LPPe_AGNSS_DCBlistElement, OMA_LPPe_AGNSS_DCBlistElement_sequence); + + return offset; +} + + +static const per_sequence_t OMA_LPPe_AGNSS_DCBsForAllSVs_sequence_of[1] = { + { &hf_lppe_OMA_LPPe_AGNSS_DCBsForAllSVs_item, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lppe_OMA_LPPe_AGNSS_DCBlistElement }, +}; + +static int +dissect_lppe_OMA_LPPe_AGNSS_DCBsForAllSVs(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_constrained_sequence_of(tvb, offset, actx, tree, hf_index, + ett_lppe_OMA_LPPe_AGNSS_DCBsForAllSVs, OMA_LPPe_AGNSS_DCBsForAllSVs_sequence_of, + 1, 64, FALSE); + + return offset; +} + + + +static int +dissect_lppe_INTEGER_0_31(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index, + 0U, 31U, NULL, FALSE); + + return offset; +} + + + +static int +dissect_lppe_INTEGER_0_7(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index, + 0U, 7U, NULL, FALSE); + + return offset; +} + + +static const per_sequence_t OMA_LPPe_AGNSS_ClockModelDegradationModel_sequence[] = { + { &hf_lppe_clockRMS0 , ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_lppe_INTEGER_0_31 }, + { &hf_lppe_clockRMS1 , ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lppe_INTEGER_0_7 }, + { NULL, 0, 0, NULL } +}; + +static int +dissect_lppe_OMA_LPPe_AGNSS_ClockModelDegradationModel(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index, + ett_lppe_OMA_LPPe_AGNSS_ClockModelDegradationModel, OMA_LPPe_AGNSS_ClockModelDegradationModel_sequence); + + return offset; +} + + +static const per_sequence_t OMA_LPPe_AGNSS_OrbitModelDegradationModel_sequence[] = { + { &hf_lppe_orbitRMS0 , ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_lppe_INTEGER_0_31 }, + { &hf_lppe_orbitRMS1 , ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lppe_INTEGER_0_7 }, + { NULL, 0, 0, NULL } +}; + +static int +dissect_lppe_OMA_LPPe_AGNSS_OrbitModelDegradationModel(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index, + ett_lppe_OMA_LPPe_AGNSS_OrbitModelDegradationModel, OMA_LPPe_AGNSS_OrbitModelDegradationModel_sequence); + + return offset; +} + + +static const per_sequence_t OMA_LPPe_AGNSS_NavModelDegradationModelElement_sequence[] = { + { &hf_lppe_svid , ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_lpp_SV_ID }, + { &hf_lppe_clockDegradationModel, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_lppe_OMA_LPPe_AGNSS_ClockModelDegradationModel }, + { &hf_lppe_orbitDegradationModel, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_lppe_OMA_LPPe_AGNSS_OrbitModelDegradationModel }, + { NULL, 0, 0, NULL } +}; + +static int +dissect_lppe_OMA_LPPe_AGNSS_NavModelDegradationModelElement(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index, + ett_lppe_OMA_LPPe_AGNSS_NavModelDegradationModelElement, OMA_LPPe_AGNSS_NavModelDegradationModelElement_sequence); + + return offset; +} + + +static const per_sequence_t OMA_LPPe_AGNSS_NavModelDegradationModelList_sequence_of[1] = { + { &hf_lppe_OMA_LPPe_AGNSS_NavModelDegradationModelList_item, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lppe_OMA_LPPe_AGNSS_NavModelDegradationModelElement }, +}; + +static int +dissect_lppe_OMA_LPPe_AGNSS_NavModelDegradationModelList(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_constrained_sequence_of(tvb, offset, actx, tree, hf_index, + ett_lppe_OMA_LPPe_AGNSS_NavModelDegradationModelList, OMA_LPPe_AGNSS_NavModelDegradationModelList_sequence_of, + 1, 64, FALSE); + + return offset; +} + + + +static int +dissect_lppe_INTEGER_0_14989622(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index, + 0U, 14989622U, NULL, FALSE); + + return offset; +} + + + +static int +dissect_lppe_INTEGER_0_63(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index, + 0U, 63U, NULL, FALSE); + + return offset; +} + + +static const value_string lppe_OMA_LPPe_AGNSS_CodePhaseError_vals[] = { + { 0, "codePhaseRMSError" }, + { 1, "cnr" }, + { 0, NULL } +}; + +static const per_choice_t OMA_LPPe_AGNSS_CodePhaseError_choice[] = { + { 0, &hf_lppe_codePhaseRMSError, ASN1_EXTENSION_ROOT , dissect_lppe_INTEGER_0_63 }, + { 1, &hf_lppe_cnr , ASN1_EXTENSION_ROOT , dissect_lppe_INTEGER_0_255 }, + { 0, NULL, 0, NULL } +}; + +static int +dissect_lppe_OMA_LPPe_AGNSS_CodePhaseError(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_choice(tvb, offset, actx, tree, hf_index, + ett_lppe_OMA_LPPe_AGNSS_CodePhaseError, OMA_LPPe_AGNSS_CodePhaseError_choice, + NULL); + + return offset; +} + + +static const per_sequence_t OMA_LPPe_AGNSS_CCPperSVelement_sequence[] = { + { &hf_lppe_svID , ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_lpp_SV_ID }, + { &hf_lppe_integerCodePhase, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lppe_INTEGER_0_255 }, + { &hf_lppe_codePhase , ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_lppe_INTEGER_0_14989622 }, + { &hf_lppe_codePhaseError , ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lppe_OMA_LPPe_AGNSS_CodePhaseError }, + { &hf_lppe_phaseRangeDelta, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_lppe_INTEGER_M524288_524287 }, + { &hf_lppe_phaseRangeRMSerror, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lppe_INTEGER_0_127 }, + { &hf_lppe_lockIndicator , ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_lppe_BOOLEAN }, + { NULL, 0, 0, NULL } +}; + +static int +dissect_lppe_OMA_LPPe_AGNSS_CCPperSVelement(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index, + ett_lppe_OMA_LPPe_AGNSS_CCPperSVelement, OMA_LPPe_AGNSS_CCPperSVelement_sequence); + + return offset; +} + + +static const per_sequence_t SEQUENCE_SIZE_1_64_OF_OMA_LPPe_AGNSS_CCPperSVelement_sequence_of[1] = { + { &hf_lppe_ccpPerSVlist_item, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lppe_OMA_LPPe_AGNSS_CCPperSVelement }, +}; + +static int +dissect_lppe_SEQUENCE_SIZE_1_64_OF_OMA_LPPe_AGNSS_CCPperSVelement(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_constrained_sequence_of(tvb, offset, actx, tree, hf_index, + ett_lppe_SEQUENCE_SIZE_1_64_OF_OMA_LPPe_AGNSS_CCPperSVelement, SEQUENCE_SIZE_1_64_OF_OMA_LPPe_AGNSS_CCPperSVelement_sequence_of, + 1, 64, FALSE); + + return offset; +} + + +static const per_sequence_t OMA_LPPe_AGNSS_CCPperSignalElement_sequence[] = { + { &hf_lppe_signal_ID , ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_lpp_GNSS_SignalID }, + { &hf_lppe_ccpPerSVlist , ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_lppe_SEQUENCE_SIZE_1_64_OF_OMA_LPPe_AGNSS_CCPperSVelement }, + { NULL, 0, 0, NULL } +}; + +static int +dissect_lppe_OMA_LPPe_AGNSS_CCPperSignalElement(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index, + ett_lppe_OMA_LPPe_AGNSS_CCPperSignalElement, OMA_LPPe_AGNSS_CCPperSignalElement_sequence); + + return offset; +} + + +static const per_sequence_t SEQUENCE_SIZE_1_8_OF_OMA_LPPe_AGNSS_CCPperSignalElement_sequence_of[1] = { + { &hf_lppe_ccpPerSignalList_item, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lppe_OMA_LPPe_AGNSS_CCPperSignalElement }, +}; + +static int +dissect_lppe_SEQUENCE_SIZE_1_8_OF_OMA_LPPe_AGNSS_CCPperSignalElement(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_constrained_sequence_of(tvb, offset, actx, tree, hf_index, + ett_lppe_SEQUENCE_SIZE_1_8_OF_OMA_LPPe_AGNSS_CCPperSignalElement, SEQUENCE_SIZE_1_8_OF_OMA_LPPe_AGNSS_CCPperSignalElement_sequence_of, + 1, 8, FALSE); + + return offset; +} + + +static const per_sequence_t OMA_LPPe_AGNSS_CCPassistGenericProvideElement_sequence[] = { + { &hf_lppe_referenceStationID, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_lppe_OMA_LPPe_AGNSS_CCPreferenceStationID }, + { &hf_lppe_ccpPerSignalList, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_lppe_SEQUENCE_SIZE_1_8_OF_OMA_LPPe_AGNSS_CCPperSignalElement }, + { NULL, 0, 0, NULL } +}; + +static int +dissect_lppe_OMA_LPPe_AGNSS_CCPassistGenericProvideElement(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index, + ett_lppe_OMA_LPPe_AGNSS_CCPassistGenericProvideElement, OMA_LPPe_AGNSS_CCPassistGenericProvideElement_sequence); + + return offset; +} + + +static const per_sequence_t OMA_LPPe_AGNSS_CCPassistGenericProvide_sequence_of[1] = { + { &hf_lppe_OMA_LPPe_AGNSS_CCPassistGenericProvide_item, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lppe_OMA_LPPe_AGNSS_CCPassistGenericProvideElement }, +}; + +static int +dissect_lppe_OMA_LPPe_AGNSS_CCPassistGenericProvide(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_constrained_sequence_of(tvb, offset, actx, tree, hf_index, + ett_lppe_OMA_LPPe_AGNSS_CCPassistGenericProvide, OMA_LPPe_AGNSS_CCPassistGenericProvide_sequence_of, + 1, maxReferenceStations, FALSE); + + return offset; +} + + + +static int +dissect_lppe_INTEGER_1_30(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index, + 1U, 30U, NULL, FALSE); + + return offset; +} + + +static const per_sequence_t T_fixedInterval_sequence[] = { + { &hf_lppe_beginTime , ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_lpp_GNSS_SystemTime }, + { &hf_lppe_interval , ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_lppe_INTEGER_1_30 }, + { NULL, 0, 0, NULL } +}; + +static int +dissect_lppe_T_fixedInterval(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index, + ett_lppe_T_fixedInterval, T_fixedInterval_sequence); + + return offset; +} + + + +static int +dissect_lppe_INTEGER_M100000000_100000000(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index, + -100000000, 100000000U, NULL, FALSE); + + return offset; +} + + + +static int +dissect_lppe_INTEGER_M1000000000_1000000000(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index, + -1000000000, 1000000000U, NULL, FALSE); + + return offset; +} + + + +static int +dissect_lppe_INTEGER_1_100(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index, + 1U, 100U, NULL, FALSE); + + return offset; +} + + +static const per_sequence_t OMA_LPPe_AGNSS_NavModel_BigNumber_sequence[] = { + { &hf_lppe_msb , ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_lppe_INTEGER_M1000000000_1000000000 }, + { &hf_lppe_lsb , ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lppe_INTEGER_1_100 }, + { NULL, 0, 0, NULL } +}; + +static int +dissect_lppe_OMA_LPPe_AGNSS_NavModel_BigNumber(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index, + ett_lppe_OMA_LPPe_AGNSS_NavModel_BigNumber, OMA_LPPe_AGNSS_NavModel_BigNumber_sequence); + + return offset; +} + + +static const per_sequence_t T_bases_sequence[] = { + { &hf_lppe_baseForPosVel , ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lppe_INTEGER_M100000000_100000000 }, + { &hf_lppe_baseForCcRate , ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lppe_OMA_LPPe_AGNSS_NavModel_BigNumber }, + { NULL, 0, 0, NULL } +}; + +static int +dissect_lppe_T_bases(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index, + ett_lppe_T_bases, T_bases_sequence); + + return offset; +} + + +static const value_string lppe_T_referencedTo_vals[] = { + { 0, "centerOfMass" }, + { 1, "antennaPhaseCenter" }, + { 0, NULL } +}; + + +static int +dissect_lppe_T_referencedTo(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_enumerated(tvb, offset, actx, tree, hf_index, + 2, NULL, TRUE, 0, NULL); + + return offset; +} + + + +static int +dissect_lppe_INTEGER_0_1000000(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index, + 0U, 1000000U, NULL, FALSE); + + return offset; +} + + + +static int +dissect_lppe_INTEGER_0_10000000(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index, + 0U, 10000000U, NULL, FALSE); + + return offset; +} + + +static const per_sequence_t OMA_LPPe_AGNSS_NavModel_STDmatrix_sequence[] = { + { &hf_lppe_e11 , ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_lppe_INTEGER_0_1000 }, + { &hf_lppe_e22 , ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_lppe_INTEGER_0_1000 }, + { &hf_lppe_e33 , ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_lppe_INTEGER_0_1000 }, + { &hf_lppe_e44 , ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_lppe_INTEGER_0_1000000 }, + { &hf_lppe_e12 , ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lppe_INTEGER_0_10000000 }, + { &hf_lppe_e13 , ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lppe_INTEGER_0_10000000 }, + { &hf_lppe_e14 , ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lppe_INTEGER_0_10000000 }, + { &hf_lppe_e23 , ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lppe_INTEGER_0_10000000 }, + { &hf_lppe_e24 , ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lppe_INTEGER_0_10000000 }, + { &hf_lppe_e34 , ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lppe_INTEGER_0_10000000 }, + { NULL, 0, 0, NULL } +}; + +static int +dissect_lppe_OMA_LPPe_AGNSS_NavModel_STDmatrix(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index, + ett_lppe_OMA_LPPe_AGNSS_NavModel_STDmatrix, OMA_LPPe_AGNSS_NavModel_STDmatrix_sequence); + + return offset; +} + + +static const per_sequence_t T_rateRecord_sequence[] = { + { &hf_lppe_svClockRate , ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_lppe_OMA_LPPe_AGNSS_NavModel_BigNumber }, + { &hf_lppe_ecefVelocityX , ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_lppe_OMA_LPPe_AGNSS_NavModel_BigNumber }, + { &hf_lppe_ecefVelocityY , ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_lppe_OMA_LPPe_AGNSS_NavModel_BigNumber }, + { &hf_lppe_ecefVelocityZ , ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_lppe_OMA_LPPe_AGNSS_NavModel_BigNumber }, + { &hf_lppe_clockRateVelSTD, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_lppe_OMA_LPPe_AGNSS_NavModel_STDmatrix }, + { NULL, 0, 0, NULL } +}; + +static int +dissect_lppe_T_rateRecord(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index, + ett_lppe_T_rateRecord, T_rateRecord_sequence); + + return offset; +} + + +static const per_sequence_t OMA_LPPe_AGNSS_NavModel_PVTelement_sequence[] = { + { &hf_lppe_svID , ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_lpp_SV_ID }, + { &hf_lppe_svClockOffset , ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_lppe_OMA_LPPe_AGNSS_NavModel_BigNumber }, + { &hf_lppe_ecefPositionX , ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_lppe_OMA_LPPe_AGNSS_NavModel_BigNumber }, + { &hf_lppe_ecefPositionY , ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_lppe_OMA_LPPe_AGNSS_NavModel_BigNumber }, + { &hf_lppe_ecefPositionZ , ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_lppe_OMA_LPPe_AGNSS_NavModel_BigNumber }, + { &hf_lppe_clockPosSTD , ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_lppe_OMA_LPPe_AGNSS_NavModel_STDmatrix }, + { &hf_lppe_rateRecord , ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lppe_T_rateRecord }, + { NULL, 0, 0, NULL } +}; + +static int +dissect_lppe_OMA_LPPe_AGNSS_NavModel_PVTelement(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index, + ett_lppe_OMA_LPPe_AGNSS_NavModel_PVTelement, OMA_LPPe_AGNSS_NavModel_PVTelement_sequence); + + return offset; +} + + +static const per_sequence_t SEQUENCE_SIZE_1_64_OF_OMA_LPPe_AGNSS_NavModel_PVTelement_sequence_of[1] = { + { &hf_lppe_svIdList_item , ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lppe_OMA_LPPe_AGNSS_NavModel_PVTelement }, +}; + +static int +dissect_lppe_SEQUENCE_SIZE_1_64_OF_OMA_LPPe_AGNSS_NavModel_PVTelement(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_constrained_sequence_of(tvb, offset, actx, tree, hf_index, + ett_lppe_SEQUENCE_SIZE_1_64_OF_OMA_LPPe_AGNSS_NavModel_PVTelement, SEQUENCE_SIZE_1_64_OF_OMA_LPPe_AGNSS_NavModel_PVTelement_sequence_of, + 1, 64, FALSE); + + return offset; +} + + +static const per_sequence_t OMA_LPPe_AGNSS_NavModel_CoordinateBasedElement_sequence[] = { + { &hf_lppe_time_of_record , ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lpp_GNSS_SystemTime }, + { &hf_lppe_svIdList , ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_lppe_SEQUENCE_SIZE_1_64_OF_OMA_LPPe_AGNSS_NavModel_PVTelement }, + { NULL, 0, 0, NULL } +}; + +static int +dissect_lppe_OMA_LPPe_AGNSS_NavModel_CoordinateBasedElement(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index, + ett_lppe_OMA_LPPe_AGNSS_NavModel_CoordinateBasedElement, OMA_LPPe_AGNSS_NavModel_CoordinateBasedElement_sequence); + + return offset; +} + + +static const per_sequence_t SEQUENCE_SIZE_1_97_OF_OMA_LPPe_AGNSS_NavModel_CoordinateBasedElement_sequence_of[1] = { + { &hf_lppe_pointList_item , ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lppe_OMA_LPPe_AGNSS_NavModel_CoordinateBasedElement }, +}; + +static int +dissect_lppe_SEQUENCE_SIZE_1_97_OF_OMA_LPPe_AGNSS_NavModel_CoordinateBasedElement(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_constrained_sequence_of(tvb, offset, actx, tree, hf_index, + ett_lppe_SEQUENCE_SIZE_1_97_OF_OMA_LPPe_AGNSS_NavModel_CoordinateBasedElement, SEQUENCE_SIZE_1_97_OF_OMA_LPPe_AGNSS_NavModel_CoordinateBasedElement_sequence_of, + 1, 97, FALSE); + + return offset; +} + + +static const per_sequence_t OMA_LPPe_AGNSS_NavModel_CoordinateBased_sequence[] = { + { &hf_lppe_fixedInterval , ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lppe_T_fixedInterval }, + { &hf_lppe_bases , ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lppe_T_bases }, + { &hf_lppe_referencedTo , ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_lppe_T_referencedTo }, + { &hf_lppe_pointList , ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_lppe_SEQUENCE_SIZE_1_97_OF_OMA_LPPe_AGNSS_NavModel_CoordinateBasedElement }, + { NULL, 0, 0, NULL } +}; + +static int +dissect_lppe_OMA_LPPe_AGNSS_NavModel_CoordinateBased(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index, + ett_lppe_OMA_LPPe_AGNSS_NavModel_CoordinateBased, OMA_LPPe_AGNSS_NavModel_CoordinateBased_sequence); + + return offset; +} + + +static const per_sequence_t OMA_LPPe_AGNSS_NavModelList_sequence[] = { + { &hf_lppe_coordinateBased, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lppe_OMA_LPPe_AGNSS_NavModel_CoordinateBased }, + { NULL, 0, 0, NULL } +}; + +static int +dissect_lppe_OMA_LPPe_AGNSS_NavModelList(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index, + ett_lppe_OMA_LPPe_AGNSS_NavModelList, OMA_LPPe_AGNSS_NavModelList_sequence); + + return offset; +} + + +static const per_sequence_t OMA_LPPe_AGNSS_GenericAssistDataElement_sequence[] = { + { &hf_lppe_gnss_ID , ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_lpp_GNSS_ID }, + { &hf_lppe_wideAreaIonoSurfacePerSVlist, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lppe_OMA_LPPe_AGNSS_WideAreaIonoSurfacePerSVlist }, + { &hf_lppe_mechanicsForAllSVs, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lppe_OMA_LPPe_AGNSS_MechanicsForAllSVs }, + { &hf_lppe_dcbsForAllSVs , ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lppe_OMA_LPPe_AGNSS_DCBsForAllSVs }, + { &hf_lppe_navModelDegradationModel, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lppe_OMA_LPPe_AGNSS_NavModelDegradationModelList }, + { &hf_lppe_ccpAssistProvide, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lppe_OMA_LPPe_AGNSS_CCPassistGenericProvide }, + { &hf_lppe_navModelList , ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lppe_OMA_LPPe_AGNSS_NavModelList }, + { NULL, 0, 0, NULL } +}; + +static int +dissect_lppe_OMA_LPPe_AGNSS_GenericAssistDataElement(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index, + ett_lppe_OMA_LPPe_AGNSS_GenericAssistDataElement, OMA_LPPe_AGNSS_GenericAssistDataElement_sequence); + + return offset; +} + + +static const per_sequence_t OMA_LPPe_AGNSS_GenericAssistData_sequence_of[1] = { + { &hf_lppe_OMA_LPPe_AGNSS_GenericAssistData_item, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lppe_OMA_LPPe_AGNSS_GenericAssistDataElement }, +}; + +static int +dissect_lppe_OMA_LPPe_AGNSS_GenericAssistData(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_constrained_sequence_of(tvb, offset, actx, tree, hf_index, + ett_lppe_OMA_LPPe_AGNSS_GenericAssistData, OMA_LPPe_AGNSS_GenericAssistData_sequence_of, + 1, 16, FALSE); + + return offset; +} + + +static const value_string lppe_T_waIonoErrorCauses_vals[] = { + { 0, "undefined" }, + { 1, "waIonoNotSupportedByServer" }, + { 2, "waIonoNotSupportedInTargetArea" }, + { 3, "waIonoNotSupportedForAnyRequestedGNSS" }, + { 0, NULL } +}; + + +static int +dissect_lppe_T_waIonoErrorCauses(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_enumerated(tvb, offset, actx, tree, hf_index, + 4, NULL, TRUE, 0, NULL); + + return offset; +} + + +static const value_string lppe_T_ccpErrorCauses_vals[] = { + { 0, "undefined" }, + { 1, "ccpNotSupportedByServer" }, + { 2, "ccpNotSupportedInTargetArea" }, + { 3, "ccpNotSupportedForAnyRequestedSignal" }, + { 4, "ccpQorCannotBeMet" }, + { 5, "ccpUnableToModifyControlParameters" }, + { 6, "ccpMultiReferenceStationNotSupported" }, + { 7, "ccpNeighborListNotSupported" }, + { 8, "ccpSupportAreaAssistanceNotSupported" }, + { 0, NULL } +}; + + +static int +dissect_lppe_T_ccpErrorCauses(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_enumerated(tvb, offset, actx, tree, hf_index, + 9, NULL, TRUE, 0, NULL); + + return offset; +} + + +static const per_sequence_t OMA_LPPe_AGNSS_LocationServerErrorCauses_sequence[] = { + { &hf_lppe_waIonoErrorCauses, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lppe_T_waIonoErrorCauses }, + { &hf_lppe_ccpErrorCauses , ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lppe_T_ccpErrorCauses }, + { NULL, 0, 0, NULL } +}; + +static int +dissect_lppe_OMA_LPPe_AGNSS_LocationServerErrorCauses(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index, + ett_lppe_OMA_LPPe_AGNSS_LocationServerErrorCauses, OMA_LPPe_AGNSS_LocationServerErrorCauses_sequence); + + return offset; +} + + +static const value_string lppe_T_highAccuracyErrorCauses_vals[] = { + { 0, "undefined" }, + { 1, "highAccuracyMethodNotSupported" }, + { 0, NULL } +}; + + +static int +dissect_lppe_T_highAccuracyErrorCauses(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_enumerated(tvb, offset, actx, tree, hf_index, + 2, NULL, TRUE, 0, NULL); + + return offset; +} + + +static const value_string lppe_T_ionosphereMeasurementErrorCauses_vals[] = { + { 0, "undefined" }, + { 1, "ionosphereMeasurementsNotSupported" }, + { 2, "ionosphereMeasurementsNotAvailable" }, + { 0, NULL } +}; + + +static int +dissect_lppe_T_ionosphereMeasurementErrorCauses(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_enumerated(tvb, offset, actx, tree, hf_index, + 3, NULL, TRUE, 0, NULL); + + return offset; +} + + +static const value_string lppe_T_environmentObservationErrorCauses_vals[] = { + { 0, "undefined" }, + { 1, "surfaceMeasurementsNotSupported" }, + { 2, "surfaceMeasurementsNotAvailable" }, + { 0, NULL } +}; + + +static int +dissect_lppe_T_environmentObservationErrorCauses(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_enumerated(tvb, offset, actx, tree, hf_index, + 3, NULL, TRUE, 0, NULL); + + return offset; +} + + +static const value_string lppe_T_haGNSSerrorCauses_vals[] = { + { 0, "undefined" }, + { 1, "haGNSSnotSupportedByTarget" }, + { 2, "haGNSSunavailableForAllRequestedSignals" }, + { 3, "haGNSSantennaInformationNotSupported" }, + { 4, "haGNSSantennaInformationNotAvailable" }, + { 5, "haGNSSpressureInformationNotSupported" }, + { 6, "haGNSSpressureInformationNotAvailable" }, + { 7, "haGNSSunableToModifyControlParameters" }, + { 0, NULL } +}; + + +static int +dissect_lppe_T_haGNSSerrorCauses(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_enumerated(tvb, offset, actx, tree, hf_index, + 8, NULL, TRUE, 0, NULL); + + return offset; +} + + +static const per_sequence_t OMA_LPPe_AGNSS_TargetDeviceErrorCauses_sequence[] = { + { &hf_lppe_highAccuracyErrorCauses, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lppe_T_highAccuracyErrorCauses }, + { &hf_lppe_ionosphereMeasurementErrorCauses, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lppe_T_ionosphereMeasurementErrorCauses }, + { &hf_lppe_environmentObservationErrorCauses, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lppe_T_environmentObservationErrorCauses }, + { &hf_lppe_haGNSSerrorCauses, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lppe_T_haGNSSerrorCauses }, + { NULL, 0, 0, NULL } +}; + +static int +dissect_lppe_OMA_LPPe_AGNSS_TargetDeviceErrorCauses(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index, + ett_lppe_OMA_LPPe_AGNSS_TargetDeviceErrorCauses, OMA_LPPe_AGNSS_TargetDeviceErrorCauses_sequence); + + return offset; +} + + +static const value_string lppe_OMA_LPPe_AGNSS_Error_vals[] = { + { 0, "agnss-locationServerErrorCauses" }, + { 1, "agnss-targetDeviceErrorCauses" }, + { 0, NULL } +}; + +static const per_choice_t OMA_LPPe_AGNSS_Error_choice[] = { + { 0, &hf_lppe_agnss_locationServerErrorCauses, ASN1_EXTENSION_ROOT , dissect_lppe_OMA_LPPe_AGNSS_LocationServerErrorCauses }, + { 1, &hf_lppe_agnss_targetDeviceErrorCauses, ASN1_EXTENSION_ROOT , dissect_lppe_OMA_LPPe_AGNSS_TargetDeviceErrorCauses }, + { 0, NULL, 0, NULL } +}; + +static int +dissect_lppe_OMA_LPPe_AGNSS_Error(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_choice(tvb, offset, actx, tree, hf_index, + ett_lppe_OMA_LPPe_AGNSS_Error, OMA_LPPe_AGNSS_Error_choice, + NULL); + + return offset; +} + + +static const per_sequence_t OMA_LPPe_AGNSS_ProvideAssistanceData_sequence[] = { + { &hf_lppe_commonAssistData, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lppe_OMA_LPPe_AGNSS_CommonAssistData }, + { &hf_lppe_genericAssistData, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lppe_OMA_LPPe_AGNSS_GenericAssistData }, + { &hf_lppe_error_01 , ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lppe_OMA_LPPe_AGNSS_Error }, + { NULL, 0, 0, NULL } +}; + +static int +dissect_lppe_OMA_LPPe_AGNSS_ProvideAssistanceData(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index, + ett_lppe_OMA_LPPe_AGNSS_ProvideAssistanceData, OMA_LPPe_AGNSS_ProvideAssistanceData_sequence); + + return offset; +} + + + +static int +dissect_lppe_BIT_STRING_SIZE_10(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_bit_string(tvb, offset, actx, tree, hf_index, + 10, 10, FALSE, NULL); + + return offset; +} + + +static const value_string lppe_T_resolution_vals[] = { + { 0, "ns-5" }, + { 1, "ns-10" }, + { 2, "ns-50" }, + { 3, "ns-100" }, + { 0, NULL } +}; + + +static int +dissect_lppe_T_resolution(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_enumerated(tvb, offset, actx, tree, hf_index, + 4, NULL, TRUE, 0, NULL); + + return offset; +} + + +static const per_sequence_t OMA_LPPe_OTDOA_RTDquality_sequence[] = { + { &hf_lppe_resolution , ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_lppe_T_resolution }, + { &hf_lppe_quality , ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_lppe_INTEGER_0_127 }, + { NULL, 0, 0, NULL } +}; + +static int +dissect_lppe_OMA_LPPe_OTDOA_RTDquality(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index, + ett_lppe_OMA_LPPe_OTDOA_RTDquality, OMA_LPPe_OTDOA_RTDquality_sequence); + + return offset; +} + + +static const per_sequence_t T_cellLocation_sequence[] = { + { &hf_lppe_reference_point, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lppe_OMA_LPPe_ReferencePoint }, + { &hf_lppe_relative_location, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lppe_OMA_LPPe_RelativeLocation }, + { NULL, 0, 0, NULL } +}; + +static int +dissect_lppe_T_cellLocation(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index, + ett_lppe_T_cellLocation, T_cellLocation_sequence); + + return offset; +} + + +static const per_sequence_t T_femtoCellInfo_sequence[] = { + { &hf_lppe_location_reliability, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lppe_INTEGER_1_100 }, + { NULL, 0, 0, NULL } +}; + +static int +dissect_lppe_T_femtoCellInfo(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index, + ett_lppe_T_femtoCellInfo, T_femtoCellInfo_sequence); + + return offset; +} + + +static const per_sequence_t OMA_LPPe_OTDOA_PositionCalculationInfoRef_sequence[] = { + { &hf_lppe_systemFrameNumber, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lppe_BIT_STRING_SIZE_10 }, + { &hf_lppe_rtdReferenceStd, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lppe_OMA_LPPe_OTDOA_RTDquality }, + { &hf_lppe_cellLocation , ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_lppe_T_cellLocation }, + { &hf_lppe_femtoCellInfo , ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lppe_T_femtoCellInfo }, + { NULL, 0, 0, NULL } +}; + +static int +dissect_lppe_OMA_LPPe_OTDOA_PositionCalculationInfoRef(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index, + ett_lppe_OMA_LPPe_OTDOA_PositionCalculationInfoRef, OMA_LPPe_OTDOA_PositionCalculationInfoRef_sequence); + + return offset; +} + + +static const per_sequence_t OMA_LPPe_OTDOA_ReferenceCellInfo_sequence[] = { + { &hf_lppe_referenceCellInfo, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_lpp_OTDOA_ReferenceCellInfo }, + { &hf_lppe_positionCalculationInfoRef, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_lppe_OMA_LPPe_OTDOA_PositionCalculationInfoRef }, + { NULL, 0, 0, NULL } +}; + +static int +dissect_lppe_OMA_LPPe_OTDOA_ReferenceCellInfo(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index, + ett_lppe_OMA_LPPe_OTDOA_ReferenceCellInfo, OMA_LPPe_OTDOA_ReferenceCellInfo_sequence); + + return offset; +} + + + +static int +dissect_lppe_INTEGER_0_10229(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index, + 0U, 10229U, NULL, FALSE); + + return offset; +} + + + +static int +dissect_lppe_INTEGER_0_99999(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index, + 0U, 99999U, NULL, FALSE); + + return offset; +} + + + +static int +dissect_lppe_INTEGER_M100_100(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index, + -100, 100U, NULL, FALSE); + + return offset; +} + + +static const per_sequence_t T_rtdInfo_sequence[] = { + { &hf_lppe_subframeOffset , ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lppe_INTEGER_0_10229 }, + { &hf_lppe_fineRTD , ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_lppe_INTEGER_0_99999 }, + { &hf_lppe_fineRTDstd , ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_lppe_OMA_LPPe_OTDOA_RTDquality }, + { &hf_lppe_fineRTDdriftRate, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lppe_INTEGER_M100_100 }, + { NULL, 0, 0, NULL } +}; + +static int +dissect_lppe_T_rtdInfo(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index, + ett_lppe_T_rtdInfo, T_rtdInfo_sequence); + + return offset; +} + + +static const per_sequence_t OMA_LPPe_OTDOA_CellData_sequence[] = { + { &hf_lppe_otdoa_NeighbourCellInfoElement, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_lpp_OTDOA_NeighbourCellInfoElement }, + { &hf_lppe_rtdInfo , ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_lppe_T_rtdInfo }, + { NULL, 0, 0, NULL } +}; + +static int +dissect_lppe_OMA_LPPe_OTDOA_CellData(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index, + ett_lppe_OMA_LPPe_OTDOA_CellData, OMA_LPPe_OTDOA_CellData_sequence); + + return offset; +} + + +static const per_sequence_t SEQUENCE_SIZE_1_maxLTEMacroCells_OF_OMA_LPPe_OTDOA_CellData_sequence_of[1] = { + { &hf_lppe_otdoa_eNB_CellDataList_item, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lppe_OMA_LPPe_OTDOA_CellData }, +}; + +static int +dissect_lppe_SEQUENCE_SIZE_1_maxLTEMacroCells_OF_OMA_LPPe_OTDOA_CellData(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_constrained_sequence_of(tvb, offset, actx, tree, hf_index, + ett_lppe_SEQUENCE_SIZE_1_maxLTEMacroCells_OF_OMA_LPPe_OTDOA_CellData, SEQUENCE_SIZE_1_maxLTEMacroCells_OF_OMA_LPPe_OTDOA_CellData_sequence_of, + 1, maxLTEMacroCells, FALSE); + + return offset; +} + + +static const per_sequence_t OMA_LPPe_OTDOA_NeighbourCellInfoElement_eNB_sequence[] = { + { &hf_lppe_relative_Location, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_lppe_OMA_LPPe_RelativeLocation }, + { &hf_lppe_otdoa_eNB_CellDataList, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_lppe_SEQUENCE_SIZE_1_maxLTEMacroCells_OF_OMA_LPPe_OTDOA_CellData }, + { NULL, 0, 0, NULL } +}; + +static int +dissect_lppe_OMA_LPPe_OTDOA_NeighbourCellInfoElement_eNB(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index, + ett_lppe_OMA_LPPe_OTDOA_NeighbourCellInfoElement_eNB, OMA_LPPe_OTDOA_NeighbourCellInfoElement_eNB_sequence); + + return offset; +} + + +static const per_sequence_t SEQUENCE_SIZE_1_maxLTEeNBs_OF_OMA_LPPe_OTDOA_NeighbourCellInfoElement_eNB_sequence_of[1] = { + { &hf_lppe_neighbourCellInfoList_eNB_item, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lppe_OMA_LPPe_OTDOA_NeighbourCellInfoElement_eNB }, +}; + +static int +dissect_lppe_SEQUENCE_SIZE_1_maxLTEeNBs_OF_OMA_LPPe_OTDOA_NeighbourCellInfoElement_eNB(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_constrained_sequence_of(tvb, offset, actx, tree, hf_index, + ett_lppe_SEQUENCE_SIZE_1_maxLTEeNBs_OF_OMA_LPPe_OTDOA_NeighbourCellInfoElement_eNB, SEQUENCE_SIZE_1_maxLTEeNBs_OF_OMA_LPPe_OTDOA_NeighbourCellInfoElement_eNB_sequence_of, + 1, maxLTEeNBs, FALSE); + + return offset; +} + + +static const per_sequence_t OMA_LPPe_OTDOA_NeighbourCellInfoElement_HeNB_sequence[] = { + { &hf_lppe_relative_Location, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_lppe_OMA_LPPe_RelativeLocation }, + { &hf_lppe_location_reliability, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lppe_INTEGER_1_100 }, + { &hf_lppe_otdoa_HeNB_CellDataList, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_lppe_OMA_LPPe_OTDOA_CellData }, + { NULL, 0, 0, NULL } +}; + +static int +dissect_lppe_OMA_LPPe_OTDOA_NeighbourCellInfoElement_HeNB(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index, + ett_lppe_OMA_LPPe_OTDOA_NeighbourCellInfoElement_HeNB, OMA_LPPe_OTDOA_NeighbourCellInfoElement_HeNB_sequence); + + return offset; +} + + +static const per_sequence_t SEQUENCE_SIZE_1_maxLTEHeNBs_OF_OMA_LPPe_OTDOA_NeighbourCellInfoElement_HeNB_sequence_of[1] = { + { &hf_lppe_neighbourCellInfoList_HeNB_item, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lppe_OMA_LPPe_OTDOA_NeighbourCellInfoElement_HeNB }, +}; + +static int +dissect_lppe_SEQUENCE_SIZE_1_maxLTEHeNBs_OF_OMA_LPPe_OTDOA_NeighbourCellInfoElement_HeNB(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_constrained_sequence_of(tvb, offset, actx, tree, hf_index, + ett_lppe_SEQUENCE_SIZE_1_maxLTEHeNBs_OF_OMA_LPPe_OTDOA_NeighbourCellInfoElement_HeNB, SEQUENCE_SIZE_1_maxLTEHeNBs_OF_OMA_LPPe_OTDOA_NeighbourCellInfoElement_HeNB_sequence_of, + 1, maxLTEHeNBs, FALSE); + + return offset; +} + + +static const per_sequence_t OMA_LPPe_OTDOA_NeighbourFreqCellInfoList_sequence[] = { + { &hf_lppe_neighbourCellInfoList_eNB, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lppe_SEQUENCE_SIZE_1_maxLTEeNBs_OF_OMA_LPPe_OTDOA_NeighbourCellInfoElement_eNB }, + { &hf_lppe_neighbourCellInfoList_HeNB, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lppe_SEQUENCE_SIZE_1_maxLTEHeNBs_OF_OMA_LPPe_OTDOA_NeighbourCellInfoElement_HeNB }, + { NULL, 0, 0, NULL } +}; + +static int +dissect_lppe_OMA_LPPe_OTDOA_NeighbourFreqCellInfoList(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index, + ett_lppe_OMA_LPPe_OTDOA_NeighbourFreqCellInfoList, OMA_LPPe_OTDOA_NeighbourFreqCellInfoList_sequence); + + return offset; +} + + +static const per_sequence_t OMA_LPPe_OTDOA_NeighbourCellInfoList_sequence_of[1] = { + { &hf_lppe_OMA_LPPe_OTDOA_NeighbourCellInfoList_item, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lppe_OMA_LPPe_OTDOA_NeighbourFreqCellInfoList }, +}; + +static int +dissect_lppe_OMA_LPPe_OTDOA_NeighbourCellInfoList(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_constrained_sequence_of(tvb, offset, actx, tree, hf_index, + ett_lppe_OMA_LPPe_OTDOA_NeighbourCellInfoList, OMA_LPPe_OTDOA_NeighbourCellInfoList_sequence_of, + 1, maxFreqLayers, FALSE); + + return offset; +} + + +static const value_string lppe_T_cause_vals[] = { + { 0, "undefined" }, + { 1, "locationCalculationAssistanceDataNotSupported" }, + { 2, "locationCalculationAssistanceDataSupportedButCurrentlyNotAvailable" }, + { 0, NULL } +}; + + +static int +dissect_lppe_T_cause(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_enumerated(tvb, offset, actx, tree, hf_index, + 3, NULL, TRUE, 0, NULL); + + return offset; +} + + +static const per_sequence_t OMA_LPPe_OTDOA_LocationServerErrorCauses_sequence[] = { + { &hf_lppe_cause , ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_lppe_T_cause }, + { NULL, 0, 0, NULL } +}; + +static int +dissect_lppe_OMA_LPPe_OTDOA_LocationServerErrorCauses(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index, + ett_lppe_OMA_LPPe_OTDOA_LocationServerErrorCauses, OMA_LPPe_OTDOA_LocationServerErrorCauses_sequence); + + return offset; +} + + +static const value_string lppe_T_cause_01_vals[] = { + { 0, "undefined" }, + { 1, "there-were-not-enough-signals-received-for-ueBased-otdoa" }, + { 2, "location-calculation-assistance-data-missing" }, + { 0, NULL } +}; + + +static int +dissect_lppe_T_cause_01(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_enumerated(tvb, offset, actx, tree, hf_index, + 3, NULL, TRUE, 0, NULL); + + return offset; +} + + +static const per_sequence_t OMA_LPPe_OTDOA_TargetDeviceErrorCauses_sequence[] = { + { &hf_lppe_cause_01 , ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_lppe_T_cause_01 }, + { NULL, 0, 0, NULL } +}; + +static int +dissect_lppe_OMA_LPPe_OTDOA_TargetDeviceErrorCauses(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index, + ett_lppe_OMA_LPPe_OTDOA_TargetDeviceErrorCauses, OMA_LPPe_OTDOA_TargetDeviceErrorCauses_sequence); + + return offset; +} + + +static const value_string lppe_OMA_LPPe_OTDOA_Error_vals[] = { + { 0, "locationServerErrorCauses" }, + { 1, "targetDeviceErrorCauses" }, + { 0, NULL } +}; + +static const per_choice_t OMA_LPPe_OTDOA_Error_choice[] = { + { 0, &hf_lppe_locationServerErrorCauses, ASN1_EXTENSION_ROOT , dissect_lppe_OMA_LPPe_OTDOA_LocationServerErrorCauses }, + { 1, &hf_lppe_targetDeviceErrorCauses, ASN1_EXTENSION_ROOT , dissect_lppe_OMA_LPPe_OTDOA_TargetDeviceErrorCauses }, + { 0, NULL, 0, NULL } +}; + +static int +dissect_lppe_OMA_LPPe_OTDOA_Error(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_choice(tvb, offset, actx, tree, hf_index, + ett_lppe_OMA_LPPe_OTDOA_Error, OMA_LPPe_OTDOA_Error_choice, + NULL); + + return offset; +} + + +static const per_sequence_t OMA_LPPe_OTDOA_ProvideAssistanceData_sequence[] = { + { &hf_lppe_otdoa_ReferenceCellInfo, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lppe_OMA_LPPe_OTDOA_ReferenceCellInfo }, + { &hf_lppe_otdoa_NeighbourCellInfo, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lppe_OMA_LPPe_OTDOA_NeighbourCellInfoList }, + { &hf_lppe_otdoa_Error , ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lppe_OMA_LPPe_OTDOA_Error }, + { NULL, 0, 0, NULL } +}; + +static int +dissect_lppe_OMA_LPPe_OTDOA_ProvideAssistanceData(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index, + ett_lppe_OMA_LPPe_OTDOA_ProvideAssistanceData, OMA_LPPe_OTDOA_ProvideAssistanceData_sequence); + + return offset; +} + + + +static int +dissect_lppe_INTEGER_0_1023(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index, + 0U, 1023U, NULL, FALSE); + + return offset; +} + + +static const per_sequence_t OMA_LPPe_CellNonUniqueIDGERAN_sequence[] = { + { &hf_lppe_bsic , ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_lppe_INTEGER_0_63 }, + { &hf_lppe_bcch , ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_lppe_INTEGER_0_1023 }, + { NULL, 0, 0, NULL } +}; + +static int +dissect_lppe_OMA_LPPe_CellNonUniqueIDGERAN(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index, + ett_lppe_OMA_LPPe_CellNonUniqueIDGERAN, OMA_LPPe_CellNonUniqueIDGERAN_sequence); + + return offset; +} + + +static const value_string lppe_OMA_LPPe_EOTD_TimeSlotScheme_vals[] = { + { 0, "equalLength" }, + { 1, "variousLength" }, + { 0, NULL } +}; + + +static int +dissect_lppe_OMA_LPPe_EOTD_TimeSlotScheme(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_enumerated(tvb, offset, actx, tree, hf_index, + 2, NULL, FALSE, 0, NULL); + + return offset; +} + + +static const value_string lppe_T_btsPosition_vals[] = { + { 0, "ellipsoidPoint" }, + { 1, "ellipsoidPointWithAltitudeAndUncertaintyEllipsoid" }, + { 0, NULL } +}; + +static const per_choice_t T_btsPosition_choice[] = { + { 0, &hf_lppe_ellipsoidPoint , ASN1_EXTENSION_ROOT , dissect_lpp_Ellipsoid_Point }, + { 1, &hf_lppe_ellipsoidPointWithAltitudeAndUncertaintyEllipsoid, ASN1_EXTENSION_ROOT , dissect_lpp_EllipsoidPointWithAltitudeAndUncertaintyEllipsoid }, + { 0, NULL, 0, NULL } +}; + +static int +dissect_lppe_T_btsPosition(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_choice(tvb, offset, actx, tree, hf_index, + ett_lppe_T_btsPosition, T_btsPosition_choice, + NULL); + + return offset; +} + + +static const per_sequence_t OMA_LPPe_EOTD_ReferenceBTSForAssistance_sequence[] = { + { &hf_lppe_bsicAndCarrier , ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_lppe_OMA_LPPe_CellNonUniqueIDGERAN }, + { &hf_lppe_timeSlotScheme , ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_lppe_OMA_LPPe_EOTD_TimeSlotScheme }, + { &hf_lppe_btsPosition , ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lppe_T_btsPosition }, + { NULL, 0, 0, NULL } +}; + +static int +dissect_lppe_OMA_LPPe_EOTD_ReferenceBTSForAssistance(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index, + ett_lppe_OMA_LPPe_EOTD_ReferenceBTSForAssistance, OMA_LPPe_EOTD_ReferenceBTSForAssistance_sequence); + + return offset; +} + + + +static int +dissect_lppe_OMA_LPPe_EOTD_MultiFrameOffset(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index, + 0U, 51U, NULL, FALSE); + + return offset; +} + + + +static int +dissect_lppe_OMA_LPPe_EOTD_RoughRTD(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index, + 0U, 1250U, NULL, FALSE); + + return offset; +} + + + +static int +dissect_lppe_INTEGER_0_1250(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index, + 0U, 1250U, NULL, FALSE); + + return offset; +} + + +static const per_sequence_t OMA_LPPe_EOTD_ExpectedOTD_sequence[] = { + { &hf_lppe_expectedOTD_01 , ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_lppe_INTEGER_0_1250 }, + { &hf_lppe_expOTDUncertainty, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_lppe_INTEGER_0_7 }, + { NULL, 0, 0, NULL } +}; + +static int +dissect_lppe_OMA_LPPe_EOTD_ExpectedOTD(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index, + ett_lppe_OMA_LPPe_EOTD_ExpectedOTD, OMA_LPPe_EOTD_ExpectedOTD_sequence); + + return offset; +} + + + +static int +dissect_lppe_OMA_LPPe_EOTD_FineRTD(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index, + 0U, 255U, NULL, FALSE); + + return offset; +} + + + +static int +dissect_lppe_OMA_LPPe_EOTD_RelDistance(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index, + -200000, 200000U, NULL, FALSE); + + return offset; +} + + + +static int +dissect_lppe_OMA_LPPe_EOTD_RelativeAlt(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index, + -4000, 4000U, NULL, FALSE); + + return offset; +} + + +static const per_sequence_t OMA_LPPe_EOTD_relativePos_sequence[] = { + { &hf_lppe_relativeNorth_01, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_lppe_OMA_LPPe_EOTD_RelDistance }, + { &hf_lppe_relativeEast_01, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_lppe_OMA_LPPe_EOTD_RelDistance }, + { &hf_lppe_relativeAlt , ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lppe_OMA_LPPe_EOTD_RelativeAlt }, + { NULL, 0, 0, NULL } +}; + +static int +dissect_lppe_OMA_LPPe_EOTD_relativePos(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index, + ett_lppe_OMA_LPPe_EOTD_relativePos, OMA_LPPe_EOTD_relativePos_sequence); + + return offset; +} + + +static const per_sequence_t OMA_LPPe_EOTD_CalcAssistanceBTS_sequence[] = { + { &hf_lppe_fineRTD_01 , ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_lppe_OMA_LPPe_EOTD_FineRTD }, + { &hf_lppe_relativePos , ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_lppe_OMA_LPPe_EOTD_relativePos }, + { NULL, 0, 0, NULL } +}; + +static int +dissect_lppe_OMA_LPPe_EOTD_CalcAssistanceBTS(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index, + ett_lppe_OMA_LPPe_EOTD_CalcAssistanceBTS, OMA_LPPe_EOTD_CalcAssistanceBTS_sequence); + + return offset; +} + + +static const per_sequence_t OMA_LPPe_EOTD_MsrAssistBTS_sequence[] = { + { &hf_lppe_bsicAndCarrier , ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_lppe_OMA_LPPe_CellNonUniqueIDGERAN }, + { &hf_lppe_multiFrameOffset, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_lppe_OMA_LPPe_EOTD_MultiFrameOffset }, + { &hf_lppe_timeSlotScheme , ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_lppe_OMA_LPPe_EOTD_TimeSlotScheme }, + { &hf_lppe_roughRTD , ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_lppe_OMA_LPPe_EOTD_RoughRTD }, + { &hf_lppe_expectedOTD , ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_lppe_OMA_LPPe_EOTD_ExpectedOTD }, + { &hf_lppe_calcAssistanceBTS, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lppe_OMA_LPPe_EOTD_CalcAssistanceBTS }, + { NULL, 0, 0, NULL } +}; + +static int +dissect_lppe_OMA_LPPe_EOTD_MsrAssistBTS(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index, + ett_lppe_OMA_LPPe_EOTD_MsrAssistBTS, OMA_LPPe_EOTD_MsrAssistBTS_sequence); + + return offset; +} + + +static const per_sequence_t OMA_LPPe_EOTD_MsrAssistDataList_sequence_of[1] = { + { &hf_lppe_OMA_LPPe_EOTD_MsrAssistDataList_item, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lppe_OMA_LPPe_EOTD_MsrAssistBTS }, +}; + +static int +dissect_lppe_OMA_LPPe_EOTD_MsrAssistDataList(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_constrained_sequence_of(tvb, offset, actx, tree, hf_index, + ett_lppe_OMA_LPPe_EOTD_MsrAssistDataList, OMA_LPPe_EOTD_MsrAssistDataList_sequence_of, + 1, 15, FALSE); + + return offset; +} + + +static const per_sequence_t OMA_LPPe_EOTD_AssistBTSData_sequence[] = { + { &hf_lppe_bsic , ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_lppe_INTEGER_0_63 }, + { &hf_lppe_multiFrameOffset, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_lppe_OMA_LPPe_EOTD_MultiFrameOffset }, + { &hf_lppe_timeSlotScheme , ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_lppe_OMA_LPPe_EOTD_TimeSlotScheme }, + { &hf_lppe_roughRTD , ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_lppe_OMA_LPPe_EOTD_RoughRTD }, + { &hf_lppe_expectedOTD , ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lppe_OMA_LPPe_EOTD_ExpectedOTD }, + { &hf_lppe_calcAssistanceBTS, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lppe_OMA_LPPe_EOTD_CalcAssistanceBTS }, + { NULL, 0, 0, NULL } +}; + +static int +dissect_lppe_OMA_LPPe_EOTD_AssistBTSData(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index, + ett_lppe_OMA_LPPe_EOTD_AssistBTSData, OMA_LPPe_EOTD_AssistBTSData_sequence); + + return offset; +} + + +static const value_string lppe_OMA_LPPe_EOTD_SystemInfoAssistBTS_vals[] = { + { 0, "notPresent" }, + { 1, "present" }, + { 0, NULL } +}; + +static const per_choice_t OMA_LPPe_EOTD_SystemInfoAssistBTS_choice[] = { + { 0, &hf_lppe_notPresent , ASN1_NO_EXTENSIONS , dissect_lppe_NULL }, + { 1, &hf_lppe_present , ASN1_NO_EXTENSIONS , dissect_lppe_OMA_LPPe_EOTD_AssistBTSData }, + { 0, NULL, 0, NULL } +}; + +static int +dissect_lppe_OMA_LPPe_EOTD_SystemInfoAssistBTS(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_choice(tvb, offset, actx, tree, hf_index, + ett_lppe_OMA_LPPe_EOTD_SystemInfoAssistBTS, OMA_LPPe_EOTD_SystemInfoAssistBTS_choice, + NULL); + + return offset; +} + + +static const per_sequence_t OMA_LPPe_EOTD_SystemInfoAssistDataList_sequence_of[1] = { + { &hf_lppe_OMA_LPPe_EOTD_SystemInfoAssistDataList_item, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lppe_OMA_LPPe_EOTD_SystemInfoAssistBTS }, +}; + +static int +dissect_lppe_OMA_LPPe_EOTD_SystemInfoAssistDataList(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_constrained_sequence_of(tvb, offset, actx, tree, hf_index, + ett_lppe_OMA_LPPe_EOTD_SystemInfoAssistDataList, OMA_LPPe_EOTD_SystemInfoAssistDataList_sequence_of, + 1, 32, FALSE); + + return offset; +} + + +static const value_string lppe_T_cause_02_vals[] = { + { 0, "undefined" }, + { 1, "assistanceDataForUEbasedEOTDnotAvailable" }, + { 2, "assistanceDataForUEassistedEOTDnotAvailable" }, + { 0, NULL } +}; + + +static int +dissect_lppe_T_cause_02(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_enumerated(tvb, offset, actx, tree, hf_index, + 3, NULL, TRUE, 0, NULL); + + return offset; +} + + +static const per_sequence_t OMA_LPPe_EOTD_LocationServerErrorCauses_sequence[] = { + { &hf_lppe_cause_02 , ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_lppe_T_cause_02 }, + { NULL, 0, 0, NULL } +}; + +static int +dissect_lppe_OMA_LPPe_EOTD_LocationServerErrorCauses(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index, + ett_lppe_OMA_LPPe_EOTD_LocationServerErrorCauses, OMA_LPPe_EOTD_LocationServerErrorCauses_sequence); + + return offset; +} + + +static const value_string lppe_T_cause_03_vals[] = { + { 0, "undefinedError" }, + { 1, "notEnoughBTsforEOTD" }, + { 2, "assistanceDataMissing" }, + { 3, "referenceCellNotServingCell" }, + { 4, "eotdMeasurementsNotSupported" }, + { 5, "eotdMeasurementsNotAvailable" }, + { 6, "uebasedEOTDnotSupported" }, + { 0, NULL } +}; + + +static int +dissect_lppe_T_cause_03(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_enumerated(tvb, offset, actx, tree, hf_index, + 7, NULL, TRUE, 0, NULL); + + return offset; +} + + +static const per_sequence_t OMA_LPPe_EOTD_TargetDeviceErrorCauses_sequence[] = { + { &hf_lppe_cause_03 , ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_lppe_T_cause_03 }, + { NULL, 0, 0, NULL } +}; + +static int +dissect_lppe_OMA_LPPe_EOTD_TargetDeviceErrorCauses(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index, + ett_lppe_OMA_LPPe_EOTD_TargetDeviceErrorCauses, OMA_LPPe_EOTD_TargetDeviceErrorCauses_sequence); + + return offset; +} + + +static const value_string lppe_OMA_LPPe_EOTD_Error_vals[] = { + { 0, "locationServerErrorCauses" }, + { 1, "targetDeviceErrorCauses" }, + { 0, NULL } +}; + +static const per_choice_t OMA_LPPe_EOTD_Error_choice[] = { + { 0, &hf_lppe_locationServerErrorCauses_01, ASN1_EXTENSION_ROOT , dissect_lppe_OMA_LPPe_EOTD_LocationServerErrorCauses }, + { 1, &hf_lppe_targetDeviceErrorCauses_01, ASN1_EXTENSION_ROOT , dissect_lppe_OMA_LPPe_EOTD_TargetDeviceErrorCauses }, + { 0, NULL, 0, NULL } +}; + +static int +dissect_lppe_OMA_LPPe_EOTD_Error(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_choice(tvb, offset, actx, tree, hf_index, + ett_lppe_OMA_LPPe_EOTD_Error, OMA_LPPe_EOTD_Error_choice, + NULL); + + return offset; +} + + +static const per_sequence_t OMA_LPPe_EOTD_ProvideAssistanceData_sequence[] = { + { &hf_lppe_referenceBTS , ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lppe_OMA_LPPe_EOTD_ReferenceBTSForAssistance }, + { &hf_lppe_msrAssistDataList, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lppe_OMA_LPPe_EOTD_MsrAssistDataList }, + { &hf_lppe_systemInfoAssistDataList, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lppe_OMA_LPPe_EOTD_SystemInfoAssistDataList }, + { &hf_lppe_eotdError , ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lppe_OMA_LPPe_EOTD_Error }, + { NULL, 0, 0, NULL } +}; + +static int +dissect_lppe_OMA_LPPe_EOTD_ProvideAssistanceData(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index, + ett_lppe_OMA_LPPe_EOTD_ProvideAssistanceData, OMA_LPPe_EOTD_ProvideAssistanceData_sequence); + + return offset; +} + + + +static int +dissect_lppe_OMA_LPPe_OTDOA_UTRA_PrimaryScramblingCode(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index, + 0U, 511U, NULL, FALSE); + + return offset; +} + + +static const per_sequence_t OMA_LPPe_OTDOA_UTRA_PrimaryCPICH_Info_sequence[] = { + { &hf_lppe_primaryScramblingCode, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lppe_OMA_LPPe_OTDOA_UTRA_PrimaryScramblingCode }, + { NULL, 0, 0, NULL } +}; + +static int +dissect_lppe_OMA_LPPe_OTDOA_UTRA_PrimaryCPICH_Info(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index, + ett_lppe_OMA_LPPe_OTDOA_UTRA_PrimaryCPICH_Info, OMA_LPPe_OTDOA_UTRA_PrimaryCPICH_Info_sequence); + + return offset; +} + + +static const per_sequence_t T_fdd_sequence[] = { + { &hf_lppe_primaryCPICH_info, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lppe_OMA_LPPe_OTDOA_UTRA_PrimaryCPICH_Info }, + { NULL, 0, 0, NULL } +}; + +static int +dissect_lppe_T_fdd(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index, + ett_lppe_T_fdd, T_fdd_sequence); + + return offset; +} + + +static const value_string lppe_OMA_LPPe_OTDOA_UTRA_BurstType_vals[] = { + { 0, "type1" }, + { 1, "type2" }, + { 0, NULL } +}; + + +static int +dissect_lppe_OMA_LPPe_OTDOA_UTRA_BurstType(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_enumerated(tvb, offset, actx, tree, hf_index, + 2, NULL, FALSE, 0, NULL); + + return offset; +} + + + +static int +dissect_lppe_OMA_LPPe_OTDOA_UTRA_MidambleShiftLong(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index, + 0U, 15U, NULL, FALSE); + + return offset; +} + + + +static int +dissect_lppe_OMA_LPPe_OTDOA_UTRA_TimeSlotNumber(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index, + 0U, 14U, NULL, FALSE); + + return offset; +} + + + +static int +dissect_lppe_OMA_LPPe_OTDOA_UTRA_CellParametersID(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index, + 0U, 127U, NULL, FALSE); + + return offset; +} + + +static const per_sequence_t OMA_LPPe_OTDOA_UTRA_CellAndChannelIdentity_sequence[] = { + { &hf_lppe_burstType , ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_lppe_OMA_LPPe_OTDOA_UTRA_BurstType }, + { &hf_lppe_midambleShift , ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_lppe_OMA_LPPe_OTDOA_UTRA_MidambleShiftLong }, + { &hf_lppe_timeslot , ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_lppe_OMA_LPPe_OTDOA_UTRA_TimeSlotNumber }, + { &hf_lppe_cellParametersID, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_lppe_OMA_LPPe_OTDOA_UTRA_CellParametersID }, + { NULL, 0, 0, NULL } +}; + +static int +dissect_lppe_OMA_LPPe_OTDOA_UTRA_CellAndChannelIdentity(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index, + ett_lppe_OMA_LPPe_OTDOA_UTRA_CellAndChannelIdentity, OMA_LPPe_OTDOA_UTRA_CellAndChannelIdentity_sequence); + + return offset; +} + + +static const per_sequence_t T_tdd_sequence[] = { + { &hf_lppe_cellAndChannelIdentity, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lppe_OMA_LPPe_OTDOA_UTRA_CellAndChannelIdentity }, + { NULL, 0, 0, NULL } +}; + +static int +dissect_lppe_T_tdd(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index, + ett_lppe_T_tdd, T_tdd_sequence); + + return offset; +} + + +static const value_string lppe_T_modeSpecificInfo_vals[] = { + { 0, "fdd" }, + { 1, "tdd" }, + { 0, NULL } +}; + +static const per_choice_t T_modeSpecificInfo_choice[] = { + { 0, &hf_lppe_fdd , ASN1_NO_EXTENSIONS , dissect_lppe_T_fdd }, + { 1, &hf_lppe_tdd , ASN1_NO_EXTENSIONS , dissect_lppe_T_tdd }, + { 0, NULL, 0, NULL } +}; + +static int +dissect_lppe_T_modeSpecificInfo(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_choice(tvb, offset, actx, tree, hf_index, + ett_lppe_T_modeSpecificInfo, T_modeSpecificInfo_choice, + NULL); + + return offset; +} + + +static const per_sequence_t OMA_LPPe_UTRA_FrequencyInfoFDD_sequence[] = { + { &hf_lppe_uarfcn_UL , ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lpp_ARFCN_ValueUTRA }, + { &hf_lppe_uarfcn_DL , ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_lpp_ARFCN_ValueUTRA }, + { NULL, 0, 0, NULL } +}; + +static int +dissect_lppe_OMA_LPPe_UTRA_FrequencyInfoFDD(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index, + ett_lppe_OMA_LPPe_UTRA_FrequencyInfoFDD, OMA_LPPe_UTRA_FrequencyInfoFDD_sequence); + + return offset; +} + + +static const per_sequence_t OMA_LPPe_UTRA_FrequencyInfoTDD_sequence[] = { + { &hf_lppe_uarfcn_Nt , ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_lpp_ARFCN_ValueUTRA }, + { NULL, 0, 0, NULL } +}; + +static int +dissect_lppe_OMA_LPPe_UTRA_FrequencyInfoTDD(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index, + ett_lppe_OMA_LPPe_UTRA_FrequencyInfoTDD, OMA_LPPe_UTRA_FrequencyInfoTDD_sequence); + + return offset; +} + + +static const value_string lppe_OMA_LPPe_UTRA_ModeSpecificInfo_vals[] = { + { 0, "fdd" }, + { 1, "tdd" }, + { 0, NULL } +}; + +static const per_choice_t OMA_LPPe_UTRA_ModeSpecificInfo_choice[] = { + { 0, &hf_lppe_fdd_06 , ASN1_EXTENSION_ROOT , dissect_lppe_OMA_LPPe_UTRA_FrequencyInfoFDD }, + { 1, &hf_lppe_tdd_06 , ASN1_EXTENSION_ROOT , dissect_lppe_OMA_LPPe_UTRA_FrequencyInfoTDD }, + { 0, NULL, 0, NULL } +}; + +static int +dissect_lppe_OMA_LPPe_UTRA_ModeSpecificInfo(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_choice(tvb, offset, actx, tree, hf_index, + ett_lppe_OMA_LPPe_UTRA_ModeSpecificInfo, OMA_LPPe_UTRA_ModeSpecificInfo_choice, + NULL); + + return offset; +} + + +static const per_sequence_t OMA_LPPe_UTRA_FrequencyInfo_sequence[] = { + { &hf_lppe_modeSpecificInfo_05, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_lppe_OMA_LPPe_UTRA_ModeSpecificInfo }, + { NULL, 0, 0, NULL } +}; + +static int +dissect_lppe_OMA_LPPe_UTRA_FrequencyInfo(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index, + ett_lppe_OMA_LPPe_UTRA_FrequencyInfo, OMA_LPPe_UTRA_FrequencyInfo_sequence); + + return offset; +} + + +static const value_string lppe_T_cellPosition_vals[] = { + { 0, "ellipsoidPoint" }, + { 1, "ellipsoidPointWithAltitude" }, + { 0, NULL } +}; + +static const per_choice_t T_cellPosition_choice[] = { + { 0, &hf_lppe_ellipsoidPoint , ASN1_EXTENSION_ROOT , dissect_lpp_Ellipsoid_Point }, + { 1, &hf_lppe_ellipsoidPointWithAltitude, ASN1_EXTENSION_ROOT , dissect_lpp_EllipsoidPointWithAltitude }, + { 0, NULL, 0, NULL } +}; + +static int +dissect_lppe_T_cellPosition(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_choice(tvb, offset, actx, tree, hf_index, + ett_lppe_T_cellPosition, T_cellPosition_choice, + NULL); + + return offset; +} + + + +static int +dissect_lppe_INTEGER_0_327(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index, + 0U, 327U, NULL, FALSE); + + return offset; +} + + + +static int +dissect_lppe_INTEGER_0_70274(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index, + 0U, 70274U, NULL, FALSE); + + return offset; +} + + +static const per_sequence_t OMA_LPPe_OTDOA_UTRA_RefPosAssist_sequence[] = { + { &hf_lppe_cellPosition , ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_lppe_T_cellPosition }, + { &hf_lppe_roundTripTime , ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lppe_INTEGER_0_327 }, + { &hf_lppe_roundTripTimeExtension, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lppe_INTEGER_0_70274 }, + { NULL, 0, 0, NULL } +}; + +static int +dissect_lppe_OMA_LPPe_OTDOA_UTRA_RefPosAssist(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index, + ett_lppe_OMA_LPPe_OTDOA_UTRA_RefPosAssist, OMA_LPPe_OTDOA_UTRA_RefPosAssist_sequence); + + return offset; +} + + +static const value_string lppe_OMA_LPPe_OTDOA_UTRA_IP_Spacing_vals[] = { + { 0, "e5" }, + { 1, "e7" }, + { 2, "e10" }, + { 3, "e15" }, + { 4, "e20" }, + { 5, "e30" }, + { 6, "e40" }, + { 7, "e50" }, + { 0, NULL } +}; + + +static int +dissect_lppe_OMA_LPPe_OTDOA_UTRA_IP_Spacing(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_enumerated(tvb, offset, actx, tree, hf_index, + 8, NULL, FALSE, 0, NULL); + + return offset; +} + + +static const value_string lppe_OMA_LPPe_OTDOA_UTRA_IP_Length_vals[] = { + { 0, "ipl5" }, + { 1, "ipl10" }, + { 0, NULL } +}; + + +static int +dissect_lppe_OMA_LPPe_OTDOA_UTRA_IP_Length(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_enumerated(tvb, offset, actx, tree, hf_index, + 2, NULL, FALSE, 0, NULL); + + return offset; +} + + + +static int +dissect_lppe_INTEGER_0_9(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index, + 0U, 9U, NULL, FALSE); + + return offset; +} + + + +static int +dissect_lppe_INTEGER_0_15(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index, + 0U, 15U, NULL, FALSE); + + return offset; +} + + + +static int +dissect_lppe_INTEGER_10_25(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index, + 10U, 25U, NULL, FALSE); + + return offset; +} + + + +static int +dissect_lppe_INTEGER_1_16(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index, + 1U, 16U, NULL, FALSE); + + return offset; +} + + +static const per_sequence_t OMA_LPPe_OTDOA_UTRA_BurstModeParameters_sequence[] = { + { &hf_lppe_burstStart , ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lppe_INTEGER_0_15 }, + { &hf_lppe_burstLength , ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lppe_INTEGER_10_25 }, + { &hf_lppe_burstFreq , ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lppe_INTEGER_1_16 }, + { NULL, 0, 0, NULL } +}; + +static int +dissect_lppe_OMA_LPPe_OTDOA_UTRA_BurstModeParameters(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index, + ett_lppe_OMA_LPPe_OTDOA_UTRA_BurstModeParameters, OMA_LPPe_OTDOA_UTRA_BurstModeParameters_sequence); + + return offset; +} + + +static const per_sequence_t T_fdd_02_sequence[] = { + { &hf_lppe_ip_spacing , ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lppe_OMA_LPPe_OTDOA_UTRA_IP_Spacing }, + { &hf_lppe_ip_length , ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lppe_OMA_LPPe_OTDOA_UTRA_IP_Length }, + { &hf_lppe_ip_Offset , ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lppe_INTEGER_0_9 }, + { &hf_lppe_seed , ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lppe_INTEGER_0_63 }, + { &hf_lppe_burstModeParameters, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lppe_OMA_LPPe_OTDOA_UTRA_BurstModeParameters }, + { NULL, 0, 0, NULL } +}; + +static int +dissect_lppe_T_fdd_02(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index, + ett_lppe_T_fdd_02, T_fdd_02_sequence); + + return offset; +} + + +static const value_string lppe_OMA_LPPe_OTDOA_UTRA_IP_Spacing_TDD_vals[] = { + { 0, "e30" }, + { 1, "e40" }, + { 2, "e50" }, + { 3, "e70" }, + { 4, "e100" }, + { 0, NULL } +}; + + +static int +dissect_lppe_OMA_LPPe_OTDOA_UTRA_IP_Spacing_TDD(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_enumerated(tvb, offset, actx, tree, hf_index, + 5, NULL, FALSE, 0, NULL); + + return offset; +} + + + +static int +dissect_lppe_INTEGER_0_14(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index, + 0U, 14U, NULL, FALSE); + + return offset; +} + + + +static int +dissect_lppe_OMA_LPPe_OTDOA_UTRA_IP_PCCPCH(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_boolean(tvb, offset, actx, tree, hf_index, NULL); + + return offset; +} + + +static const per_sequence_t T_tdd_02_sequence[] = { + { &hf_lppe_ip_spacing_tdd , ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lppe_OMA_LPPe_OTDOA_UTRA_IP_Spacing_TDD }, + { &hf_lppe_ip_slot , ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lppe_INTEGER_0_14 }, + { &hf_lppe_ip_start , ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lppe_INTEGER_0_4095 }, + { &hf_lppe_ip_PCCPCH , ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lppe_OMA_LPPe_OTDOA_UTRA_IP_PCCPCH }, + { &hf_lppe_burstModeParameters, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lppe_OMA_LPPe_OTDOA_UTRA_BurstModeParameters }, + { NULL, 0, 0, NULL } +}; + +static int +dissect_lppe_T_tdd_02(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index, + ett_lppe_T_tdd_02, T_tdd_02_sequence); + + return offset; +} + + +static const value_string lppe_T_modeSpecificInfo_02_vals[] = { + { 0, "fdd" }, + { 1, "tdd" }, + { 0, NULL } +}; + +static const per_choice_t T_modeSpecificInfo_02_choice[] = { + { 0, &hf_lppe_fdd_02 , ASN1_NO_EXTENSIONS , dissect_lppe_T_fdd_02 }, + { 1, &hf_lppe_tdd_02 , ASN1_NO_EXTENSIONS , dissect_lppe_T_tdd_02 }, + { 0, NULL, 0, NULL } +}; + +static int +dissect_lppe_T_modeSpecificInfo_02(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_choice(tvb, offset, actx, tree, hf_index, + ett_lppe_T_modeSpecificInfo_02, T_modeSpecificInfo_02_choice, + NULL); + + return offset; +} + + +static const per_sequence_t OMA_LPPe_OTDOA_UTRA_IPDL_Parameters_sequence[] = { + { &hf_lppe_modeSpecificInfo_02, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lppe_T_modeSpecificInfo_02 }, + { NULL, 0, 0, NULL } +}; + +static int +dissect_lppe_OMA_LPPe_OTDOA_UTRA_IPDL_Parameters(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index, + ett_lppe_OMA_LPPe_OTDOA_UTRA_IPDL_Parameters, OMA_LPPe_OTDOA_UTRA_IPDL_Parameters_sequence); + + return offset; +} + + +static const per_sequence_t OMA_LPPe_OTDOA_UTRA_ReferenceCellInfo_sequence[] = { + { &hf_lppe_sfn , ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lppe_INTEGER_0_4095 }, + { &hf_lppe_modeSpecificInfo, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_lppe_T_modeSpecificInfo }, + { &hf_lppe_frequencyInfo , ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lppe_OMA_LPPe_UTRA_FrequencyInfo }, + { &hf_lppe_refPosAssist , ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lppe_OMA_LPPe_OTDOA_UTRA_RefPosAssist }, + { &hf_lppe_ipdl_parameters, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lppe_OMA_LPPe_OTDOA_UTRA_IPDL_Parameters }, + { NULL, 0, 0, NULL } +}; + +static int +dissect_lppe_OMA_LPPe_OTDOA_UTRA_ReferenceCellInfo(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index, + ett_lppe_OMA_LPPe_OTDOA_UTRA_ReferenceCellInfo, OMA_LPPe_OTDOA_UTRA_ReferenceCellInfo_sequence); + + return offset; +} + + +static const per_sequence_t T_fdd_01_sequence[] = { + { &hf_lppe_primaryCPICH_info, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lppe_OMA_LPPe_OTDOA_UTRA_PrimaryCPICH_Info }, + { NULL, 0, 0, NULL } +}; + +static int +dissect_lppe_T_fdd_01(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index, + ett_lppe_T_fdd_01, T_fdd_01_sequence); + + return offset; +} + + +static const per_sequence_t T_tdd_01_sequence[] = { + { &hf_lppe_cellAndChannelIdentity, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lppe_OMA_LPPe_OTDOA_UTRA_CellAndChannelIdentity }, + { NULL, 0, 0, NULL } +}; + +static int +dissect_lppe_T_tdd_01(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index, + ett_lppe_T_tdd_01, T_tdd_01_sequence); + + return offset; +} + + +static const value_string lppe_T_modeSpecificInfo_01_vals[] = { + { 0, "fdd" }, + { 1, "tdd" }, + { 0, NULL } +}; + +static const per_choice_t T_modeSpecificInfo_01_choice[] = { + { 0, &hf_lppe_fdd_01 , ASN1_NO_EXTENSIONS , dissect_lppe_T_fdd_01 }, + { 1, &hf_lppe_tdd_01 , ASN1_NO_EXTENSIONS , dissect_lppe_T_tdd_01 }, + { 0, NULL, 0, NULL } +}; + +static int +dissect_lppe_T_modeSpecificInfo_01(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_choice(tvb, offset, actx, tree, hf_index, + ett_lppe_T_modeSpecificInfo_01, T_modeSpecificInfo_01_choice, + NULL); + + return offset; +} + + + +static int +dissect_lppe_INTEGER_0_38399(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index, + 0U, 38399U, NULL, FALSE); + + return offset; +} + + +static const per_sequence_t OMA_LPPe_OTDOA_UTRA_SFN_SFN_RelTimeDifference1_sequence[] = { + { &hf_lppe_sfn_offset , ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lppe_INTEGER_0_4095 }, + { &hf_lppe_sfn_sfn_relTimeDifference, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lppe_INTEGER_0_38399 }, + { NULL, 0, 0, NULL } +}; + +static int +dissect_lppe_OMA_LPPe_OTDOA_UTRA_SFN_SFN_RelTimeDifference1(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index, + ett_lppe_OMA_LPPe_OTDOA_UTRA_SFN_SFN_RelTimeDifference1, OMA_LPPe_OTDOA_UTRA_SFN_SFN_RelTimeDifference1_sequence); + + return offset; +} + + +static const value_string lppe_OMA_LPPe_OTDOA_UTRA_SFN_OffsetValidity_vals[] = { + { 0, "false" }, + { 0, NULL } +}; + + +static int +dissect_lppe_OMA_LPPe_OTDOA_UTRA_SFN_OffsetValidity(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_enumerated(tvb, offset, actx, tree, hf_index, + 1, NULL, FALSE, 0, NULL); + + return offset; +} + + +static const value_string lppe_OMA_LPPe_OTDOA_UTRA_SFN_SFN_Drift_vals[] = { + { 0, "sfnsfndrift0" }, + { 1, "sfnsfndrift1" }, + { 2, "sfnsfndrift2" }, + { 3, "sfnsfndrift3" }, + { 4, "sfnsfndrift4" }, + { 5, "sfnsfndrift5" }, + { 6, "sfnsfndrift8" }, + { 7, "sfnsfndrift10" }, + { 8, "sfnsfndrift15" }, + { 9, "sfnsfndrift25" }, + { 10, "sfnsfndrift35" }, + { 11, "sfnsfndrift50" }, + { 12, "sfnsfndrift65" }, + { 13, "sfnsfndrift80" }, + { 14, "sfnsfndrift100" }, + { 15, "sfnsfndrift-1" }, + { 16, "sfnsfndrift-2" }, + { 17, "sfnsfndrift-3" }, + { 18, "sfnsfndrift-4" }, + { 19, "sfnsfndrift-5" }, + { 20, "sfnsfndrift-8" }, + { 21, "sfnsfndrift-10" }, + { 22, "sfnsfndrift-15" }, + { 23, "sfnsfndrift-25" }, + { 24, "sfnsfndrift-35" }, + { 25, "sfnsfndrift-50" }, + { 26, "sfnsfndrift-65" }, + { 27, "sfnsfndrift-80" }, + { 28, "sfnsfndrift-100" }, + { 0, NULL } +}; + + +static int +dissect_lppe_OMA_LPPe_OTDOA_UTRA_SFN_SFN_Drift(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_enumerated(tvb, offset, actx, tree, hf_index, + 29, NULL, TRUE, 0, NULL); + + return offset; +} + + +static const value_string lppe_OMA_LPPe_OTDOA_UTRA_SearchWindowSize_vals[] = { + { 0, "c20" }, + { 1, "c40" }, + { 2, "c80" }, + { 3, "c160" }, + { 4, "c320" }, + { 5, "c640" }, + { 6, "c1280" }, + { 7, "moreThan1280" }, + { 0, NULL } +}; + + +static int +dissect_lppe_OMA_LPPe_OTDOA_UTRA_SearchWindowSize(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_enumerated(tvb, offset, actx, tree, hf_index, + 8, NULL, TRUE, 0, NULL); + + return offset; +} + + + +static int +dissect_lppe_INTEGER_M20000_20000(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index, + -20000, 20000U, NULL, FALSE); + + return offset; +} + + + +static int +dissect_lppe_INTEGER_M4000_4000(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index, + -4000, 4000U, NULL, FALSE); + + return offset; +} + + + +static int +dissect_lppe_OMA_LPPe_OTDOA_UTRA_fineSFN_SFN(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index, + 0U, 15U, NULL, FALSE); + + return offset; +} + + +static const per_sequence_t OMA_LPPe_OTDOA_UTRA_PositioningAssistance_sequence[] = { + { &hf_lppe_relativeNorth_02, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_lppe_INTEGER_M20000_20000 }, + { &hf_lppe_relativeEast_02, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_lppe_INTEGER_M20000_20000 }, + { &hf_lppe_relativeAltitude_01, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lppe_INTEGER_M4000_4000 }, + { &hf_lppe_fineSFN_SFN , ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_lppe_OMA_LPPe_OTDOA_UTRA_fineSFN_SFN }, + { &hf_lppe_roundTripTime , ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lppe_INTEGER_0_327 }, + { &hf_lppe_roundTripTimeExtension, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lppe_INTEGER_0_70274 }, + { NULL, 0, 0, NULL } +}; + +static int +dissect_lppe_OMA_LPPe_OTDOA_UTRA_PositioningAssistance(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index, + ett_lppe_OMA_LPPe_OTDOA_UTRA_PositioningAssistance, OMA_LPPe_OTDOA_UTRA_PositioningAssistance_sequence); + + return offset; +} + + +static const per_sequence_t OMA_LPPe_OTDOA_UTRA_NeighborCellInfo_sequence[] = { + { &hf_lppe_modeSpecificInfo_01, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_lppe_T_modeSpecificInfo_01 }, + { &hf_lppe_frequencyInfo , ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lppe_OMA_LPPe_UTRA_FrequencyInfo }, + { &hf_lppe_ipdl_parameters, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lppe_OMA_LPPe_OTDOA_UTRA_IPDL_Parameters }, + { &hf_lppe_sfn_SFN_relTimeDifference, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_lppe_OMA_LPPe_OTDOA_UTRA_SFN_SFN_RelTimeDifference1 }, + { &hf_lppe_sfn_offsetValidity, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lppe_OMA_LPPe_OTDOA_UTRA_SFN_OffsetValidity }, + { &hf_lppe_sfn_SFN_drift , ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lppe_OMA_LPPe_OTDOA_UTRA_SFN_SFN_Drift }, + { &hf_lppe_searchWindowSize, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_lppe_OMA_LPPe_OTDOA_UTRA_SearchWindowSize }, + { &hf_lppe_positioningAssistance, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lppe_OMA_LPPe_OTDOA_UTRA_PositioningAssistance }, + { NULL, 0, 0, NULL } +}; + +static int +dissect_lppe_OMA_LPPe_OTDOA_UTRA_NeighborCellInfo(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index, + ett_lppe_OMA_LPPe_OTDOA_UTRA_NeighborCellInfo, OMA_LPPe_OTDOA_UTRA_NeighborCellInfo_sequence); + + return offset; +} + + +static const per_sequence_t OMA_LPPe_OTDOA_UTRA_NeighborCellList_sequence_of[1] = { + { &hf_lppe_OMA_LPPe_OTDOA_UTRA_NeighborCellList_item, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lppe_OMA_LPPe_OTDOA_UTRA_NeighborCellInfo }, +}; + +static int +dissect_lppe_OMA_LPPe_OTDOA_UTRA_NeighborCellList(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_constrained_sequence_of(tvb, offset, actx, tree, hf_index, + ett_lppe_OMA_LPPe_OTDOA_UTRA_NeighborCellList, OMA_LPPe_OTDOA_UTRA_NeighborCellList_sequence_of, + 1, utra_maxCellMeas, FALSE); + + return offset; +} + + +static const value_string lppe_T_cause_04_vals[] = { + { 0, "undefinedError" }, + { 1, "assistanceDataForUEbasedOTDOAnotAvailable" }, + { 2, "assistanceDataForUEassistedOTDOAnotAvailable" }, + { 0, NULL } +}; + + +static int +dissect_lppe_T_cause_04(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_enumerated(tvb, offset, actx, tree, hf_index, + 3, NULL, TRUE, 0, NULL); + + return offset; +} + + +static const per_sequence_t OMA_LPPe_OTDOA_UTRA_LocationServerErrorCauses_sequence[] = { + { &hf_lppe_cause_04 , ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_lppe_T_cause_04 }, + { NULL, 0, 0, NULL } +}; + +static int +dissect_lppe_OMA_LPPe_OTDOA_UTRA_LocationServerErrorCauses(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index, + ett_lppe_OMA_LPPe_OTDOA_UTRA_LocationServerErrorCauses, OMA_LPPe_OTDOA_UTRA_LocationServerErrorCauses_sequence); + + return offset; +} + + +static const value_string lppe_T_cause_05_vals[] = { + { 0, "undefinedError" }, + { 1, "notEnoughOTDOA-cells" }, + { 2, "assistanceDataMissing" }, + { 3, "referenceCellNotServingCell" }, + { 4, "otdoaMeasurementsNotSupported" }, + { 5, "otdoaMeasurementsNotAvailable" }, + { 6, "uebasedOTDOAnotSupported" }, + { 0, NULL } +}; + + +static int +dissect_lppe_T_cause_05(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_enumerated(tvb, offset, actx, tree, hf_index, + 7, NULL, TRUE, 0, NULL); + + return offset; +} + + +static const per_sequence_t OMA_LPPe_OTDOA_UTRA_TargetDeviceErrorCauses_sequence[] = { + { &hf_lppe_cause_05 , ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_lppe_T_cause_05 }, + { NULL, 0, 0, NULL } +}; + +static int +dissect_lppe_OMA_LPPe_OTDOA_UTRA_TargetDeviceErrorCauses(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index, + ett_lppe_OMA_LPPe_OTDOA_UTRA_TargetDeviceErrorCauses, OMA_LPPe_OTDOA_UTRA_TargetDeviceErrorCauses_sequence); + + return offset; +} + + +static const value_string lppe_OMA_LPPe_OTDOA_UTRA_Error_vals[] = { + { 0, "locationServerErrorCauses" }, + { 1, "targetDeviceErrorCauses" }, + { 0, NULL } +}; + +static const per_choice_t OMA_LPPe_OTDOA_UTRA_Error_choice[] = { + { 0, &hf_lppe_locationServerErrorCauses_02, ASN1_EXTENSION_ROOT , dissect_lppe_OMA_LPPe_OTDOA_UTRA_LocationServerErrorCauses }, + { 1, &hf_lppe_targetDeviceErrorCauses_02, ASN1_EXTENSION_ROOT , dissect_lppe_OMA_LPPe_OTDOA_UTRA_TargetDeviceErrorCauses }, + { 0, NULL, 0, NULL } +}; + +static int +dissect_lppe_OMA_LPPe_OTDOA_UTRA_Error(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_choice(tvb, offset, actx, tree, hf_index, + ett_lppe_OMA_LPPe_OTDOA_UTRA_Error, OMA_LPPe_OTDOA_UTRA_Error_choice, + NULL); + + return offset; +} + + +static const per_sequence_t OMA_LPPe_OTDOA_UTRA_ProvideAssistanceData_sequence[] = { + { &hf_lppe_referenceCellInfo_01, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lppe_OMA_LPPe_OTDOA_UTRA_ReferenceCellInfo }, + { &hf_lppe_neigborCellList, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lppe_OMA_LPPe_OTDOA_UTRA_NeighborCellList }, + { &hf_lppe_otdoaUtraError , ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lppe_OMA_LPPe_OTDOA_UTRA_Error }, + { NULL, 0, 0, NULL } +}; + +static int +dissect_lppe_OMA_LPPe_OTDOA_UTRA_ProvideAssistanceData(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index, + ett_lppe_OMA_LPPe_OTDOA_UTRA_ProvideAssistanceData, OMA_LPPe_OTDOA_UTRA_ProvideAssistanceData_sequence); + + return offset; +} + + +static const per_sequence_t T_mcc_sequence_of[1] = { + { &hf_lppe_mcc_item , ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lppe_INTEGER_0_9 }, +}; + +static int +dissect_lppe_T_mcc(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_constrained_sequence_of(tvb, offset, actx, tree, hf_index, + ett_lppe_T_mcc, T_mcc_sequence_of, + 3, 3, FALSE); + + return offset; +} + + +static const per_sequence_t T_mnc_sequence_of[1] = { + { &hf_lppe_mnc_item , ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lppe_INTEGER_0_9 }, +}; + +static int +dissect_lppe_T_mnc(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_constrained_sequence_of(tvb, offset, actx, tree, hf_index, + ett_lppe_T_mnc, T_mnc_sequence_of, + 2, 3, FALSE); + + return offset; +} + + +static const per_sequence_t T_plmn_Identity_sequence[] = { + { &hf_lppe_mcc , ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_lppe_T_mcc }, + { &hf_lppe_mnc , ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_lppe_T_mnc }, + { NULL, 0, 0, NULL } +}; + +static int +dissect_lppe_T_plmn_Identity(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index, + ett_lppe_T_plmn_Identity, T_plmn_Identity_sequence); + + return offset; +} + + + +static int +dissect_lppe_BIT_STRING_SIZE_28(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_bit_string(tvb, offset, actx, tree, hf_index, + 28, 28, FALSE, NULL); + + return offset; +} + + + +static int +dissect_lppe_INTEGER_M127_128(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index, + -127, 128U, NULL, FALSE); + + return offset; +} + + +static const value_string lppe_T_antennaPortConfig_vals[] = { + { 0, "port1" }, + { 1, "ports2" }, + { 2, "ports4" }, + { 0, NULL } +}; + + +static int +dissect_lppe_T_antennaPortConfig(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_enumerated(tvb, offset, actx, tree, hf_index, + 3, NULL, TRUE, 0, NULL); + + return offset; +} + + + +static int +dissect_lppe_INTEGER_1_360(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index, + 1U, 360U, NULL, FALSE); + + return offset; +} + + + +static int +dissect_lppe_INTEGER_0_360(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index, + 0U, 360U, NULL, FALSE); + + return offset; +} + + + +static int +dissect_lppe_INTEGER_0_100(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index, + 0U, 100U, NULL, FALSE); + + return offset; +} + + +static const per_sequence_t OMA_LPPe_ECID_LTE_CellData_sequence[] = { + { &hf_lppe_physCellId , ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lppe_INTEGER_0_503 }, + { &hf_lppe_cellIdentity_01, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lppe_BIT_STRING_SIZE_28 }, + { &hf_lppe_dl_CarrierFreq , ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_lpp_ARFCN_ValueEUTRA }, + { &hf_lppe_rs_transmit_power, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lppe_INTEGER_M127_128 }, + { &hf_lppe_antennaPortConfig, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lppe_T_antennaPortConfig }, + { &hf_lppe_antenna_gain , ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lppe_INTEGER_M127_128 }, + { &hf_lppe_beam_width , ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lppe_INTEGER_1_360 }, + { &hf_lppe_transmit_direction, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lppe_INTEGER_0_360 }, + { &hf_lppe_frequency_accuracy, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_lppe_INTEGER_0_100 }, + { NULL, 0, 0, NULL } +}; + +static int +dissect_lppe_OMA_LPPe_ECID_LTE_CellData(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index, + ett_lppe_OMA_LPPe_ECID_LTE_CellData, OMA_LPPe_ECID_LTE_CellData_sequence); + + return offset; +} + + +static const per_sequence_t SEQUENCE_SIZE_1_maxLTEMacroCells_OF_OMA_LPPe_ECID_LTE_CellData_sequence_of[1] = { + { &hf_lppe_ecid_lte_eNodeB_CellData_item, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lppe_OMA_LPPe_ECID_LTE_CellData }, +}; + +static int +dissect_lppe_SEQUENCE_SIZE_1_maxLTEMacroCells_OF_OMA_LPPe_ECID_LTE_CellData(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_constrained_sequence_of(tvb, offset, actx, tree, hf_index, + ett_lppe_SEQUENCE_SIZE_1_maxLTEMacroCells_OF_OMA_LPPe_ECID_LTE_CellData, SEQUENCE_SIZE_1_maxLTEMacroCells_OF_OMA_LPPe_ECID_LTE_CellData_sequence_of, + 1, maxLTEMacroCells, FALSE); + + return offset; +} + + +static const per_sequence_t OMA_LPPe_ECID_LTE_eNodeBData_sequence[] = { + { &hf_lppe_relative_location, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lppe_OMA_LPPe_RelativeLocation }, + { &hf_lppe_ecid_lte_eNodeB_CellData, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_lppe_SEQUENCE_SIZE_1_maxLTEMacroCells_OF_OMA_LPPe_ECID_LTE_CellData }, + { NULL, 0, 0, NULL } +}; + +static int +dissect_lppe_OMA_LPPe_ECID_LTE_eNodeBData(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index, + ett_lppe_OMA_LPPe_ECID_LTE_eNodeBData, OMA_LPPe_ECID_LTE_eNodeBData_sequence); + + return offset; +} + + +static const per_sequence_t SEQUENCE_SIZE_1_maxLTEeNBs_OF_OMA_LPPe_ECID_LTE_eNodeBData_sequence_of[1] = { + { &hf_lppe_ecid_lte_eNodeB_list_item, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lppe_OMA_LPPe_ECID_LTE_eNodeBData }, +}; + +static int +dissect_lppe_SEQUENCE_SIZE_1_maxLTEeNBs_OF_OMA_LPPe_ECID_LTE_eNodeBData(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_constrained_sequence_of(tvb, offset, actx, tree, hf_index, + ett_lppe_SEQUENCE_SIZE_1_maxLTEeNBs_OF_OMA_LPPe_ECID_LTE_eNodeBData, SEQUENCE_SIZE_1_maxLTEeNBs_OF_OMA_LPPe_ECID_LTE_eNodeBData_sequence_of, + 1, maxLTEeNBs, FALSE); + + return offset; +} + + +static const value_string lppe_T_areaType_vals[] = { + { 0, "gaussian" }, + { 1, "binaryDistribution" }, + { 0, NULL } +}; + + +static int +dissect_lppe_T_areaType(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_enumerated(tvb, offset, actx, tree, hf_index, + 2, NULL, TRUE, 0, NULL); + + return offset; +} + + +static const value_string lppe_T_referenceLocation_vals[] = { + { 0, "antenna" }, + { 1, "referencePoint" }, + { 0, NULL } +}; + + +static int +dissect_lppe_T_referenceLocation(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_enumerated(tvb, offset, actx, tree, hf_index, + 2, NULL, TRUE, 0, NULL); + + return offset; +} + + +static const per_sequence_t T_refPointAndArea_sequence[] = { + { &hf_lppe_referenceLocation, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_lppe_T_referenceLocation }, + { &hf_lppe_referencePoint , ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lppe_OMA_LPPe_ReferencePointUniqueID }, + { &hf_lppe_locationAndArea, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_lppe_OMA_LPPe_RelativeLocation }, + { NULL, 0, 0, NULL } +}; + +static int +dissect_lppe_T_refPointAndArea(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index, + ett_lppe_T_refPointAndArea, T_refPointAndArea_sequence); + + return offset; +} + + +static const value_string lppe_T_type_vals[] = { + { 0, "indoor" }, + { 1, "outdoor" }, + { 2, "mixed" }, + { 0, NULL } +}; + + +static int +dissect_lppe_T_type(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_enumerated(tvb, offset, actx, tree, hf_index, + 3, NULL, TRUE, 0, NULL); + + return offset; +} + + +static const per_sequence_t OMA_LPPe_WLANFemtoCoverageAreaElement_sequence[] = { + { &hf_lppe_refPointAndArea, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_lppe_T_refPointAndArea }, + { &hf_lppe_type , ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lppe_T_type }, + { &hf_lppe_weight , ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lppe_INTEGER_0_100 }, + { NULL, 0, 0, NULL } +}; + +static int +dissect_lppe_OMA_LPPe_WLANFemtoCoverageAreaElement(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index, + ett_lppe_OMA_LPPe_WLANFemtoCoverageAreaElement, OMA_LPPe_WLANFemtoCoverageAreaElement_sequence); + + return offset; +} + + +static const per_sequence_t SEQUENCE_SIZE_1_16_OF_OMA_LPPe_WLANFemtoCoverageAreaElement_sequence_of[1] = { + { &hf_lppe_componentList_item, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lppe_OMA_LPPe_WLANFemtoCoverageAreaElement }, +}; + +static int +dissect_lppe_SEQUENCE_SIZE_1_16_OF_OMA_LPPe_WLANFemtoCoverageAreaElement(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_constrained_sequence_of(tvb, offset, actx, tree, hf_index, + ett_lppe_SEQUENCE_SIZE_1_16_OF_OMA_LPPe_WLANFemtoCoverageAreaElement, SEQUENCE_SIZE_1_16_OF_OMA_LPPe_WLANFemtoCoverageAreaElement_sequence_of, + 1, 16, FALSE); + + return offset; +} + + +static const per_sequence_t OMA_LPPe_WLANFemtoCoverageArea_sequence[] = { + { &hf_lppe_truncation , ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lppe_INTEGER_M127_128 }, + { &hf_lppe_areaType , ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lppe_T_areaType }, + { &hf_lppe_confidence , ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_lppe_INTEGER_0_99 }, + { &hf_lppe_componentList , ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_lppe_SEQUENCE_SIZE_1_16_OF_OMA_LPPe_WLANFemtoCoverageAreaElement }, + { NULL, 0, 0, NULL } +}; + +static int +dissect_lppe_OMA_LPPe_WLANFemtoCoverageArea(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index, + ett_lppe_OMA_LPPe_WLANFemtoCoverageArea, OMA_LPPe_WLANFemtoCoverageArea_sequence); + + return offset; +} + + +static const per_sequence_t OMA_LPPe_ECID_LTE_HeNBData_sequence[] = { + { &hf_lppe_relative_location, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lppe_OMA_LPPe_RelativeLocation }, + { &hf_lppe_location_reliability, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lppe_INTEGER_1_100 }, + { &hf_lppe_coverageArea , ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lppe_OMA_LPPe_WLANFemtoCoverageArea }, + { &hf_lppe_ecid_lte_HeNB_CellData, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_lppe_OMA_LPPe_ECID_LTE_CellData }, + { NULL, 0, 0, NULL } +}; + +static int +dissect_lppe_OMA_LPPe_ECID_LTE_HeNBData(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index, + ett_lppe_OMA_LPPe_ECID_LTE_HeNBData, OMA_LPPe_ECID_LTE_HeNBData_sequence); + + return offset; +} + + +static const per_sequence_t SEQUENCE_SIZE_1_maxLTEHeNBs_OF_OMA_LPPe_ECID_LTE_HeNBData_sequence_of[1] = { + { &hf_lppe_ecid_lte_HeNB_list_item, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lppe_OMA_LPPe_ECID_LTE_HeNBData }, +}; + +static int +dissect_lppe_SEQUENCE_SIZE_1_maxLTEHeNBs_OF_OMA_LPPe_ECID_LTE_HeNBData(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_constrained_sequence_of(tvb, offset, actx, tree, hf_index, + ett_lppe_SEQUENCE_SIZE_1_maxLTEHeNBs_OF_OMA_LPPe_ECID_LTE_HeNBData, SEQUENCE_SIZE_1_maxLTEHeNBs_OF_OMA_LPPe_ECID_LTE_HeNBData_sequence_of, + 1, maxLTEHeNBs, FALSE); + + return offset; +} + + +static const per_sequence_t OMA_LPPe_ECID_LTE_NetworkData_sequence[] = { + { &hf_lppe_plmn_Identity , ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_lppe_T_plmn_Identity }, + { &hf_lppe_multiple_PLMNs , ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_lppe_BOOLEAN }, + { &hf_lppe_reference_location, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lppe_OMA_LPPe_ReferencePoint }, + { &hf_lppe_ecid_lte_eNodeB_list, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_lppe_SEQUENCE_SIZE_1_maxLTEeNBs_OF_OMA_LPPe_ECID_LTE_eNodeBData }, + { &hf_lppe_ecid_lte_HeNB_list, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lppe_SEQUENCE_SIZE_1_maxLTEHeNBs_OF_OMA_LPPe_ECID_LTE_HeNBData }, + { NULL, 0, 0, NULL } +}; + +static int +dissect_lppe_OMA_LPPe_ECID_LTE_NetworkData(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index, + ett_lppe_OMA_LPPe_ECID_LTE_NetworkData, OMA_LPPe_ECID_LTE_NetworkData_sequence); + + return offset; +} + + +static const per_sequence_t SEQUENCE_SIZE_1_maxLTENetworks_OF_OMA_LPPe_ECID_LTE_NetworkData_sequence_of[1] = { + { &hf_lppe_ecid_LTE_NetworkData_item, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lppe_OMA_LPPe_ECID_LTE_NetworkData }, +}; + +static int +dissect_lppe_SEQUENCE_SIZE_1_maxLTENetworks_OF_OMA_LPPe_ECID_LTE_NetworkData(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_constrained_sequence_of(tvb, offset, actx, tree, hf_index, + ett_lppe_SEQUENCE_SIZE_1_maxLTENetworks_OF_OMA_LPPe_ECID_LTE_NetworkData, SEQUENCE_SIZE_1_maxLTENetworks_OF_OMA_LPPe_ECID_LTE_NetworkData_sequence_of, + 1, maxLTENetworks, FALSE); + + return offset; +} + + +static const value_string lppe_T_cause_06_vals[] = { + { 0, "undefined" }, + { 1, "requestedADNotAvailable" }, + { 2, "notAllrequestedADAvailable" }, + { 0, NULL } +}; + + +static int +dissect_lppe_T_cause_06(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_enumerated(tvb, offset, actx, tree, hf_index, + 3, NULL, TRUE, 0, NULL); + + return offset; +} + + +static const per_sequence_t OMA_LPPe_ECID_LTE_LocationServerErrorCauses_sequence[] = { + { &hf_lppe_cause_06 , ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_lppe_T_cause_06 }, + { &hf_lppe_eNodeBMandatoryDataUnavailable, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lppe_NULL }, + { &hf_lppe_eNodeBLocationsUnavailable, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lppe_NULL }, + { &hf_lppe_eNodeBcellTransmitPowerUnavailable, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lppe_NULL }, + { &hf_lppe_eNodeBcellAntennaPortConfigUnavailable, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lppe_NULL }, + { &hf_lppe_eNodeBcallAntennaGainUnavailable, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lppe_NULL }, + { &hf_lppe_eNodeBcellBeamWidthUnavailable, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lppe_NULL }, + { &hf_lppe_eNodeBcellTransmitDirectionUnavailable, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lppe_NULL }, + { &hf_lppe_eNodeBcellFrequencyAccuracyUnavailable, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lppe_NULL }, + { &hf_lppe_eNodeBnonservingADUnavailable, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lppe_NULL }, + { &hf_lppe_heNBMandatoryDataUnavailable, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lppe_NULL }, + { &hf_lppe_heNBLocationUnavailable, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lppe_NULL }, + { &hf_lppe_heNBLocationReliabilityUnavailable, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lppe_NULL }, + { &hf_lppe_heNBcellTransmitPowerUnavailable, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lppe_NULL }, + { &hf_lppe_heNBcellAntennaPortConfigUnavailable, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lppe_NULL }, + { &hf_lppe_heNBcellFrequencyAccuracyUnavailable, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lppe_NULL }, + { &hf_lppe_heNBCoverageAreaUnavailable, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lppe_NULL }, + { &hf_lppe_heNBnonservingADUnavailable, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lppe_NULL }, + { NULL, 0, 0, NULL } +}; + +static int +dissect_lppe_OMA_LPPe_ECID_LTE_LocationServerErrorCauses(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index, + ett_lppe_OMA_LPPe_ECID_LTE_LocationServerErrorCauses, OMA_LPPe_ECID_LTE_LocationServerErrorCauses_sequence); + + return offset; +} + + +static const value_string lppe_T_cause_07_vals[] = { + { 0, "undefined" }, + { 1, "requestedMeasurementsNotAvailable" }, + { 2, "notAllrequestedMeasurementsPossible" }, + { 0, NULL } +}; + + +static int +dissect_lppe_T_cause_07(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_enumerated(tvb, offset, actx, tree, hf_index, + 3, NULL, TRUE, 0, NULL); + + return offset; +} + + +static const per_sequence_t OMA_LPPe_ECID_LTE_TargetDeviceErrorCauses_sequence[] = { + { &hf_lppe_cause_07 , ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_lppe_T_cause_07 }, + { &hf_lppe_rsrpMeasurementNotPossible, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lppe_NULL }, + { &hf_lppe_rsrqMeasurementNotPossible, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lppe_NULL }, + { &hf_lppe_ueRxTxMeasurementNotPossible, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lppe_NULL }, + { &hf_lppe_non_servingMeasurementsNotAvailable, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lppe_NULL }, + { &hf_lppe_historicMeasurementsNotAvailable, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lppe_NULL }, + { NULL, 0, 0, NULL } +}; + +static int +dissect_lppe_OMA_LPPe_ECID_LTE_TargetDeviceErrorCauses(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index, + ett_lppe_OMA_LPPe_ECID_LTE_TargetDeviceErrorCauses, OMA_LPPe_ECID_LTE_TargetDeviceErrorCauses_sequence); + + return offset; +} + + +static const value_string lppe_OMA_LPPe_ECID_LTE_Error_vals[] = { + { 0, "locationServerErrorCauses" }, + { 1, "targetDeviceErrorCauses" }, + { 0, NULL } +}; + +static const per_choice_t OMA_LPPe_ECID_LTE_Error_choice[] = { + { 0, &hf_lppe_locationServerErrorCauses_03, ASN1_EXTENSION_ROOT , dissect_lppe_OMA_LPPe_ECID_LTE_LocationServerErrorCauses }, + { 1, &hf_lppe_targetDeviceErrorCauses_03, ASN1_EXTENSION_ROOT , dissect_lppe_OMA_LPPe_ECID_LTE_TargetDeviceErrorCauses }, + { 0, NULL, 0, NULL } +}; + +static int +dissect_lppe_OMA_LPPe_ECID_LTE_Error(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_choice(tvb, offset, actx, tree, hf_index, + ett_lppe_OMA_LPPe_ECID_LTE_Error, OMA_LPPe_ECID_LTE_Error_choice, + NULL); + + return offset; +} + + +static const per_sequence_t OMA_LPPe_ECID_LTE_ProvideAssistanceData_sequence[] = { + { &hf_lppe_ecid_LTE_NetworkData, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lppe_SEQUENCE_SIZE_1_maxLTENetworks_OF_OMA_LPPe_ECID_LTE_NetworkData }, + { &hf_lppe_ecid_LTE_Error , ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lppe_OMA_LPPe_ECID_LTE_Error }, + { NULL, 0, 0, NULL } +}; + +static int +dissect_lppe_OMA_LPPe_ECID_LTE_ProvideAssistanceData(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index, + ett_lppe_OMA_LPPe_ECID_LTE_ProvideAssistanceData, OMA_LPPe_ECID_LTE_ProvideAssistanceData_sequence); + + return offset; +} + + +static const per_sequence_t T_mcc_01_sequence_of[1] = { + { &hf_lppe_mcc_item , ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lppe_INTEGER_0_9 }, +}; + +static int +dissect_lppe_T_mcc_01(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_constrained_sequence_of(tvb, offset, actx, tree, hf_index, + ett_lppe_T_mcc_01, T_mcc_01_sequence_of, + 3, 3, FALSE); + + return offset; +} + + +static const per_sequence_t T_mnc_01_sequence_of[1] = { + { &hf_lppe_mnc_item , ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lppe_INTEGER_0_9 }, +}; + +static int +dissect_lppe_T_mnc_01(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_constrained_sequence_of(tvb, offset, actx, tree, hf_index, + ett_lppe_T_mnc_01, T_mnc_01_sequence_of, + 2, 3, FALSE); + + return offset; +} + + +static const per_sequence_t T_plmn_Identity_01_sequence[] = { + { &hf_lppe_mcc_01 , ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lppe_T_mcc_01 }, + { &hf_lppe_mnc_01 , ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lppe_T_mnc_01 }, + { NULL, 0, 0, NULL } +}; + +static int +dissect_lppe_T_plmn_Identity_01(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index, + ett_lppe_T_plmn_Identity_01, T_plmn_Identity_01_sequence); + + return offset; +} + + + +static int +dissect_lppe_BIT_STRING_SIZE_16(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_bit_string(tvb, offset, actx, tree, hf_index, + 16, 16, FALSE, NULL); + + return offset; +} + + +static const per_sequence_t OMA_LPPe_CellLocalIdGERAN_sequence[] = { + { &hf_lppe_locationAreaCode, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_lppe_BIT_STRING_SIZE_16 }, + { &hf_lppe_cellIdentity , ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_lppe_BIT_STRING_SIZE_16 }, + { NULL, 0, 0, NULL } +}; + +static int +dissect_lppe_OMA_LPPe_CellLocalIdGERAN(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index, + ett_lppe_OMA_LPPe_CellLocalIdGERAN, OMA_LPPe_CellLocalIdGERAN_sequence); + + return offset; +} + + +static const per_sequence_t OMA_LPPe_ECID_GSM_CellData_sequence[] = { + { &hf_lppe_cellNonUniqueIDGERAN, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lppe_OMA_LPPe_CellNonUniqueIDGERAN }, + { &hf_lppe_cellLocalIDGERAN, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lppe_OMA_LPPe_CellLocalIdGERAN }, + { &hf_lppe_transmit_power , ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lppe_INTEGER_M127_128 }, + { &hf_lppe_antenna_gain , ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lppe_INTEGER_M127_128 }, + { &hf_lppe_beam_width , ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lppe_INTEGER_1_360 }, + { &hf_lppe_transmit_direction, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lppe_INTEGER_0_360 }, + { &hf_lppe_frequency_accuracy, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lppe_INTEGER_0_100 }, + { NULL, 0, 0, NULL } +}; + +static int +dissect_lppe_OMA_LPPe_ECID_GSM_CellData(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index, + ett_lppe_OMA_LPPe_ECID_GSM_CellData, OMA_LPPe_ECID_GSM_CellData_sequence); + + return offset; +} + + +static const per_sequence_t SEQUENCE_SIZE_1_maxGSMCells_OF_OMA_LPPe_ECID_GSM_CellData_sequence_of[1] = { + { &hf_lppe_ecid_gsm_CellData_item, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lppe_OMA_LPPe_ECID_GSM_CellData }, +}; + +static int +dissect_lppe_SEQUENCE_SIZE_1_maxGSMCells_OF_OMA_LPPe_ECID_GSM_CellData(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_constrained_sequence_of(tvb, offset, actx, tree, hf_index, + ett_lppe_SEQUENCE_SIZE_1_maxGSMCells_OF_OMA_LPPe_ECID_GSM_CellData, SEQUENCE_SIZE_1_maxGSMCells_OF_OMA_LPPe_ECID_GSM_CellData_sequence_of, + 1, maxGSMCells, FALSE); + + return offset; +} + + +static const per_sequence_t OMA_LPPe_ECID_GSM_BaseStationData_sequence[] = { + { &hf_lppe_relative_location, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lppe_OMA_LPPe_RelativeLocation }, + { &hf_lppe_ecid_gsm_CellData, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_lppe_SEQUENCE_SIZE_1_maxGSMCells_OF_OMA_LPPe_ECID_GSM_CellData }, + { NULL, 0, 0, NULL } +}; + +static int +dissect_lppe_OMA_LPPe_ECID_GSM_BaseStationData(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index, + ett_lppe_OMA_LPPe_ECID_GSM_BaseStationData, OMA_LPPe_ECID_GSM_BaseStationData_sequence); + + return offset; +} + + +static const per_sequence_t SEQUENCE_SIZE_1_maxGSMBaseStations_OF_OMA_LPPe_ECID_GSM_BaseStationData_sequence_of[1] = { + { &hf_lppe_base_station_list_item, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lppe_OMA_LPPe_ECID_GSM_BaseStationData }, +}; + +static int +dissect_lppe_SEQUENCE_SIZE_1_maxGSMBaseStations_OF_OMA_LPPe_ECID_GSM_BaseStationData(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_constrained_sequence_of(tvb, offset, actx, tree, hf_index, + ett_lppe_SEQUENCE_SIZE_1_maxGSMBaseStations_OF_OMA_LPPe_ECID_GSM_BaseStationData, SEQUENCE_SIZE_1_maxGSMBaseStations_OF_OMA_LPPe_ECID_GSM_BaseStationData_sequence_of, + 1, maxGSMBaseStations, FALSE); + + return offset; +} + + +static const per_sequence_t OMA_LPPe_ECID_GSM_NetworkData_sequence[] = { + { &hf_lppe_plmn_Identity_01, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_lppe_T_plmn_Identity_01 }, + { &hf_lppe_reference_location, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lppe_OMA_LPPe_ReferencePoint }, + { &hf_lppe_base_station_list, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_lppe_SEQUENCE_SIZE_1_maxGSMBaseStations_OF_OMA_LPPe_ECID_GSM_BaseStationData }, + { NULL, 0, 0, NULL } +}; + +static int +dissect_lppe_OMA_LPPe_ECID_GSM_NetworkData(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index, + ett_lppe_OMA_LPPe_ECID_GSM_NetworkData, OMA_LPPe_ECID_GSM_NetworkData_sequence); + + return offset; +} + + +static const per_sequence_t SEQUENCE_SIZE_1_maxGSMNetworks_OF_OMA_LPPe_ECID_GSM_NetworkData_sequence_of[1] = { + { &hf_lppe_ecid_gsm_NetworkData_item, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lppe_OMA_LPPe_ECID_GSM_NetworkData }, +}; + +static int +dissect_lppe_SEQUENCE_SIZE_1_maxGSMNetworks_OF_OMA_LPPe_ECID_GSM_NetworkData(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_constrained_sequence_of(tvb, offset, actx, tree, hf_index, + ett_lppe_SEQUENCE_SIZE_1_maxGSMNetworks_OF_OMA_LPPe_ECID_GSM_NetworkData, SEQUENCE_SIZE_1_maxGSMNetworks_OF_OMA_LPPe_ECID_GSM_NetworkData_sequence_of, + 1, maxGSMNetworks, FALSE); + + return offset; +} + + +static const value_string lppe_T_cause_08_vals[] = { + { 0, "undefined" }, + { 1, "requestedADNotAvailable" }, + { 2, "notAllrequestedADAvailable" }, + { 0, NULL } +}; + + +static int +dissect_lppe_T_cause_08(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_enumerated(tvb, offset, actx, tree, hf_index, + 3, NULL, TRUE, 0, NULL); + + return offset; +} + + +static const per_sequence_t OMA_LPPe_ECID_GSM_LocationServerErrorCauses_sequence[] = { + { &hf_lppe_cause_08 , ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_lppe_T_cause_08 }, + { &hf_lppe_mandatoryDataUnavailable, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lppe_NULL }, + { &hf_lppe_bsLocationsUnavailable, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lppe_NULL }, + { &hf_lppe_cellTransmitPowerUnavailable, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lppe_NULL }, + { &hf_lppe_callAntennaGainUnavailable, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lppe_NULL }, + { &hf_lppe_cellBeamWidthUnavailable, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lppe_NULL }, + { &hf_lppe_cellTransmitDirectionUnavailable, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lppe_NULL }, + { &hf_lppe_cellFrequencyAccuracyUnavailable, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lppe_NULL }, + { &hf_lppe_nonservingADUnavailable, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lppe_NULL }, + { NULL, 0, 0, NULL } +}; + +static int +dissect_lppe_OMA_LPPe_ECID_GSM_LocationServerErrorCauses(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index, + ett_lppe_OMA_LPPe_ECID_GSM_LocationServerErrorCauses, OMA_LPPe_ECID_GSM_LocationServerErrorCauses_sequence); + + return offset; +} + + +static const value_string lppe_T_cause_09_vals[] = { + { 0, "undefined" }, + { 1, "requestedMeasurementsNotAvailable" }, + { 2, "notAllrequestedMeasurementsPossible" }, + { 0, NULL } +}; + + +static int +dissect_lppe_T_cause_09(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_enumerated(tvb, offset, actx, tree, hf_index, + 3, NULL, TRUE, 0, NULL); + + return offset; +} + + +static const per_sequence_t OMA_LPPe_ECID_GSM_TargetDeviceErrorCauses_sequence[] = { + { &hf_lppe_cause_09 , ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_lppe_T_cause_09 }, + { &hf_lppe_rxLevelMeasurementNotPossible, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lppe_NULL }, + { &hf_lppe_taMeasurementNotPossible, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lppe_NULL }, + { &hf_lppe_nMRMeasurementNotPossible, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lppe_NULL }, + { &hf_lppe_non_servingMeasurementsNotAvailable, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lppe_NULL }, + { &hf_lppe_historicMeasurementsNotAvailable, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lppe_NULL }, + { NULL, 0, 0, NULL } +}; + +static int +dissect_lppe_OMA_LPPe_ECID_GSM_TargetDeviceErrorCauses(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index, + ett_lppe_OMA_LPPe_ECID_GSM_TargetDeviceErrorCauses, OMA_LPPe_ECID_GSM_TargetDeviceErrorCauses_sequence); + + return offset; +} + + +static const value_string lppe_OMA_LPPe_ECID_GSM_Error_vals[] = { + { 0, "locationServerErrorCauses" }, + { 1, "targetDeviceErrorCauses" }, + { 0, NULL } +}; + +static const per_choice_t OMA_LPPe_ECID_GSM_Error_choice[] = { + { 0, &hf_lppe_locationServerErrorCauses_04, ASN1_EXTENSION_ROOT , dissect_lppe_OMA_LPPe_ECID_GSM_LocationServerErrorCauses }, + { 1, &hf_lppe_targetDeviceErrorCauses_04, ASN1_EXTENSION_ROOT , dissect_lppe_OMA_LPPe_ECID_GSM_TargetDeviceErrorCauses }, + { 0, NULL, 0, NULL } +}; + +static int +dissect_lppe_OMA_LPPe_ECID_GSM_Error(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_choice(tvb, offset, actx, tree, hf_index, + ett_lppe_OMA_LPPe_ECID_GSM_Error, OMA_LPPe_ECID_GSM_Error_choice, + NULL); + + return offset; +} + + +static const per_sequence_t OMA_LPPe_ECID_GSM_ProvideAssistanceData_sequence[] = { + { &hf_lppe_ecid_gsm_NetworkData, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lppe_SEQUENCE_SIZE_1_maxGSMNetworks_OF_OMA_LPPe_ECID_GSM_NetworkData }, + { &hf_lppe_ecid_gsm_Error , ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lppe_OMA_LPPe_ECID_GSM_Error }, + { NULL, 0, 0, NULL } +}; + +static int +dissect_lppe_OMA_LPPe_ECID_GSM_ProvideAssistanceData(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index, + ett_lppe_OMA_LPPe_ECID_GSM_ProvideAssistanceData, OMA_LPPe_ECID_GSM_ProvideAssistanceData_sequence); + + return offset; +} + + +static const per_sequence_t T_mcc_02_sequence_of[1] = { + { &hf_lppe_mcc_item , ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lppe_INTEGER_0_9 }, +}; + +static int +dissect_lppe_T_mcc_02(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_constrained_sequence_of(tvb, offset, actx, tree, hf_index, + ett_lppe_T_mcc_02, T_mcc_02_sequence_of, + 3, 3, FALSE); + + return offset; +} + + +static const per_sequence_t T_mnc_02_sequence_of[1] = { + { &hf_lppe_mnc_item , ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lppe_INTEGER_0_9 }, +}; + +static int +dissect_lppe_T_mnc_02(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_constrained_sequence_of(tvb, offset, actx, tree, hf_index, + ett_lppe_T_mnc_02, T_mnc_02_sequence_of, + 2, 3, FALSE); + + return offset; +} + + +static const per_sequence_t T_plmn_Identity_02_sequence[] = { + { &hf_lppe_mcc_02 , ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lppe_T_mcc_02 }, + { &hf_lppe_mnc_02 , ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lppe_T_mnc_02 }, + { NULL, 0, 0, NULL } +}; + +static int +dissect_lppe_T_plmn_Identity_02(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index, + ett_lppe_T_plmn_Identity_02, T_plmn_Identity_02_sequence); + + return offset; +} + + + +static int +dissect_lppe_BIT_STRING_SIZE_32(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_bit_string(tvb, offset, actx, tree, hf_index, + 32, 32, FALSE, NULL); + + return offset; +} + + +static const per_sequence_t T_fdd_05_sequence[] = { + { &hf_lppe_primaryCPICH_Scrambling_Code, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_lppe_OMA_LPPe_OTDOA_UTRA_PrimaryScramblingCode }, + { &hf_lppe_primaryCPICH_Tx_Power, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lppe_INTEGER_M127_128 }, + { &hf_lppe_uarfcn_dl , ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_lpp_ARFCN_ValueUTRA }, + { NULL, 0, 0, NULL } +}; + +static int +dissect_lppe_T_fdd_05(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index, + ett_lppe_T_fdd_05, T_fdd_05_sequence); + + return offset; +} + + +static const per_sequence_t T_tdd_05_sequence[] = { + { &hf_lppe_cellParametersID, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_lppe_OMA_LPPe_OTDOA_UTRA_CellParametersID }, + { &hf_lppe_primaryCCPCH_Tx_Power, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lppe_INTEGER_M127_128 }, + { &hf_lppe_uarfcn_nt , ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_lpp_ARFCN_ValueUTRA }, + { NULL, 0, 0, NULL } +}; + +static int +dissect_lppe_T_tdd_05(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index, + ett_lppe_T_tdd_05, T_tdd_05_sequence); + + return offset; +} + + +static const value_string lppe_T_modeSpecificInfo_04_vals[] = { + { 0, "fdd" }, + { 1, "tdd" }, + { 0, NULL } +}; + +static const per_choice_t T_modeSpecificInfo_04_choice[] = { + { 0, &hf_lppe_fdd_05 , ASN1_NO_EXTENSIONS , dissect_lppe_T_fdd_05 }, + { 1, &hf_lppe_tdd_05 , ASN1_NO_EXTENSIONS , dissect_lppe_T_tdd_05 }, + { 0, NULL, 0, NULL } +}; + +static int +dissect_lppe_T_modeSpecificInfo_04(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_choice(tvb, offset, actx, tree, hf_index, + ett_lppe_T_modeSpecificInfo_04, T_modeSpecificInfo_04_choice, + NULL); + + return offset; +} + + +static const per_sequence_t OMA_LPPe_ECID_UTRA_CellData_sequence[] = { + { &hf_lppe_cellIdentity_02, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lppe_BIT_STRING_SIZE_32 }, + { &hf_lppe_modeSpecificInfo_04, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lppe_T_modeSpecificInfo_04 }, + { &hf_lppe_antenna_gain , ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lppe_INTEGER_M127_128 }, + { &hf_lppe_beam_width , ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lppe_INTEGER_1_360 }, + { &hf_lppe_transmit_direction, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lppe_INTEGER_0_360 }, + { &hf_lppe_frequency_accuracy, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lppe_INTEGER_0_100 }, + { NULL, 0, 0, NULL } +}; + +static int +dissect_lppe_OMA_LPPe_ECID_UTRA_CellData(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index, + ett_lppe_OMA_LPPe_ECID_UTRA_CellData, OMA_LPPe_ECID_UTRA_CellData_sequence); + + return offset; +} + + +static const per_sequence_t SEQUENCE_SIZE_1_maxUTRAMacroCells_OF_OMA_LPPe_ECID_UTRA_CellData_sequence_of[1] = { + { &hf_lppe_ecid_utra_nodeB_CellData_item, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lppe_OMA_LPPe_ECID_UTRA_CellData }, +}; + +static int +dissect_lppe_SEQUENCE_SIZE_1_maxUTRAMacroCells_OF_OMA_LPPe_ECID_UTRA_CellData(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_constrained_sequence_of(tvb, offset, actx, tree, hf_index, + ett_lppe_SEQUENCE_SIZE_1_maxUTRAMacroCells_OF_OMA_LPPe_ECID_UTRA_CellData, SEQUENCE_SIZE_1_maxUTRAMacroCells_OF_OMA_LPPe_ECID_UTRA_CellData_sequence_of, + 1, maxUTRAMacroCells, FALSE); + + return offset; +} + + +static const per_sequence_t OMA_LPPe_ECID_UTRA_NodeBData_sequence[] = { + { &hf_lppe_relative_location, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lppe_OMA_LPPe_RelativeLocation }, + { &hf_lppe_ecid_utra_nodeB_CellData, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_lppe_SEQUENCE_SIZE_1_maxUTRAMacroCells_OF_OMA_LPPe_ECID_UTRA_CellData }, + { NULL, 0, 0, NULL } +}; + +static int +dissect_lppe_OMA_LPPe_ECID_UTRA_NodeBData(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index, + ett_lppe_OMA_LPPe_ECID_UTRA_NodeBData, OMA_LPPe_ECID_UTRA_NodeBData_sequence); + + return offset; +} + + +static const per_sequence_t SEQUENCE_SIZE_1_maxUTRAnodeBs_OF_OMA_LPPe_ECID_UTRA_NodeBData_sequence_of[1] = { + { &hf_lppe_ecid_utra_nodeB_list_item, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lppe_OMA_LPPe_ECID_UTRA_NodeBData }, +}; + +static int +dissect_lppe_SEQUENCE_SIZE_1_maxUTRAnodeBs_OF_OMA_LPPe_ECID_UTRA_NodeBData(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_constrained_sequence_of(tvb, offset, actx, tree, hf_index, + ett_lppe_SEQUENCE_SIZE_1_maxUTRAnodeBs_OF_OMA_LPPe_ECID_UTRA_NodeBData, SEQUENCE_SIZE_1_maxUTRAnodeBs_OF_OMA_LPPe_ECID_UTRA_NodeBData_sequence_of, + 1, maxUTRAnodeBs, FALSE); + + return offset; +} + + +static const per_sequence_t OMA_LPPe_ECID_UTRA_HNBData_sequence[] = { + { &hf_lppe_relative_location, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lppe_OMA_LPPe_RelativeLocation }, + { &hf_lppe_location_reliability, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lppe_INTEGER_1_100 }, + { &hf_lppe_coverageArea , ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lppe_OMA_LPPe_WLANFemtoCoverageArea }, + { &hf_lppe_ecid_utra_HNB_CellData, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_lppe_OMA_LPPe_ECID_UTRA_CellData }, + { NULL, 0, 0, NULL } +}; + +static int +dissect_lppe_OMA_LPPe_ECID_UTRA_HNBData(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index, + ett_lppe_OMA_LPPe_ECID_UTRA_HNBData, OMA_LPPe_ECID_UTRA_HNBData_sequence); + + return offset; +} + + +static const per_sequence_t SEQUENCE_SIZE_1_maxUTRAHNBs_OF_OMA_LPPe_ECID_UTRA_HNBData_sequence_of[1] = { + { &hf_lppe_ecid_utra_HNB_list_item, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lppe_OMA_LPPe_ECID_UTRA_HNBData }, +}; + +static int +dissect_lppe_SEQUENCE_SIZE_1_maxUTRAHNBs_OF_OMA_LPPe_ECID_UTRA_HNBData(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_constrained_sequence_of(tvb, offset, actx, tree, hf_index, + ett_lppe_SEQUENCE_SIZE_1_maxUTRAHNBs_OF_OMA_LPPe_ECID_UTRA_HNBData, SEQUENCE_SIZE_1_maxUTRAHNBs_OF_OMA_LPPe_ECID_UTRA_HNBData_sequence_of, + 1, maxUTRAHNBs, FALSE); + + return offset; +} + + +static const per_sequence_t OMA_LPPe_ECID_UTRA_NetworkData_sequence[] = { + { &hf_lppe_plmn_Identity_02, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_lppe_T_plmn_Identity_02 }, + { &hf_lppe_multiple_PLMNs , ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_lppe_BOOLEAN }, + { &hf_lppe_reference_location, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lppe_OMA_LPPe_ReferencePoint }, + { &hf_lppe_ecid_utra_nodeB_list, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lppe_SEQUENCE_SIZE_1_maxUTRAnodeBs_OF_OMA_LPPe_ECID_UTRA_NodeBData }, + { &hf_lppe_ecid_utra_HNB_list, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lppe_SEQUENCE_SIZE_1_maxUTRAHNBs_OF_OMA_LPPe_ECID_UTRA_HNBData }, + { NULL, 0, 0, NULL } +}; + +static int +dissect_lppe_OMA_LPPe_ECID_UTRA_NetworkData(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index, + ett_lppe_OMA_LPPe_ECID_UTRA_NetworkData, OMA_LPPe_ECID_UTRA_NetworkData_sequence); + + return offset; +} + + +static const per_sequence_t SEQUENCE_SIZE_1_maxUTRANetworks_OF_OMA_LPPe_ECID_UTRA_NetworkData_sequence_of[1] = { + { &hf_lppe_ecid_UTRA_NetworkData_item, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lppe_OMA_LPPe_ECID_UTRA_NetworkData }, +}; + +static int +dissect_lppe_SEQUENCE_SIZE_1_maxUTRANetworks_OF_OMA_LPPe_ECID_UTRA_NetworkData(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_constrained_sequence_of(tvb, offset, actx, tree, hf_index, + ett_lppe_SEQUENCE_SIZE_1_maxUTRANetworks_OF_OMA_LPPe_ECID_UTRA_NetworkData, SEQUENCE_SIZE_1_maxUTRANetworks_OF_OMA_LPPe_ECID_UTRA_NetworkData_sequence_of, + 1, maxUTRANetworks, FALSE); + + return offset; +} + + +static const value_string lppe_T_cause_10_vals[] = { + { 0, "undefined" }, + { 1, "requestedADNotAvailable" }, + { 2, "notAllrequestedADAvailable" }, + { 0, NULL } +}; + + +static int +dissect_lppe_T_cause_10(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_enumerated(tvb, offset, actx, tree, hf_index, + 3, NULL, TRUE, 0, NULL); + + return offset; +} + + +static const per_sequence_t OMA_LPPe_ECID_UTRA_LocationServerErrorCauses_sequence[] = { + { &hf_lppe_cause_10 , ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_lppe_T_cause_10 }, + { &hf_lppe_nodeBMandatoryDataUnavailable, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lppe_NULL }, + { &hf_lppe_nodeBLocationUnavailable, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lppe_NULL }, + { &hf_lppe_nodeBcellTransmitPowerUnavailable, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lppe_NULL }, + { &hf_lppe_nodeBcallAntennaGainUnavailable, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lppe_NULL }, + { &hf_lppe_nodeBcellBeamWidthUnavailable, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lppe_NULL }, + { &hf_lppe_nodeBcellTransmitDirectionUnavailable, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lppe_NULL }, + { &hf_lppe_nodeBcellFrequencyAccuracyUnavailable, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lppe_NULL }, + { &hf_lppe_nodeBnonservingADUnavailable, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lppe_NULL }, + { &hf_lppe_hNBMandatoryDataUnavailable, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lppe_NULL }, + { &hf_lppe_hNBLocationUnavailable, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lppe_NULL }, + { &hf_lppe_hNBLocationReliabilityUnavailable, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lppe_NULL }, + { &hf_lppe_hNBcellTransmitPowerUnavailable, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lppe_NULL }, + { &hf_lppe_hNBcellFrequencyAccuracyUnavailable, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lppe_NULL }, + { &hf_lppe_hNBCoverageAreaUnavailable, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lppe_NULL }, + { &hf_lppe_hNBnonservingADUnavailable, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lppe_NULL }, + { NULL, 0, 0, NULL } +}; + +static int +dissect_lppe_OMA_LPPe_ECID_UTRA_LocationServerErrorCauses(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index, + ett_lppe_OMA_LPPe_ECID_UTRA_LocationServerErrorCauses, OMA_LPPe_ECID_UTRA_LocationServerErrorCauses_sequence); + + return offset; +} + + +static const value_string lppe_T_cause_11_vals[] = { + { 0, "undefined" }, + { 1, "requestedMeasurementsNotAvailable" }, + { 2, "notAllrequestedMeasurementsPossible" }, + { 0, NULL } +}; + + +static int +dissect_lppe_T_cause_11(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_enumerated(tvb, offset, actx, tree, hf_index, + 3, NULL, TRUE, 0, NULL); + + return offset; +} + + +static const per_sequence_t OMA_LPPe_ECID_UTRA_TargetDeviceErrorCauses_sequence[] = { + { &hf_lppe_cause_11 , ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_lppe_T_cause_11 }, + { &hf_lppe_mRLMeasurementsNotPossible, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lppe_NULL }, + { &hf_lppe_tdd_timingAdvanceMeasurementNotPossible, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lppe_NULL }, + { &hf_lppe_mRL_utra_CarrierRSSIMeasurementNotPossible, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lppe_NULL }, + { &hf_lppe_mRL_FDD_cpich_Ec_N0MeasurementNotPossible, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lppe_NULL }, + { &hf_lppe_mRL_FDD_cpich_RSCPMeasurementNotPossible, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lppe_NULL }, + { &hf_lppe_mRL_FDD_pathlossMeasurementNotPossible, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lppe_NULL }, + { &hf_lppe_mRL_TDD_primaryCCPCH_RSCPMeasurementNotPossible, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lppe_NULL }, + { &hf_lppe_mRL_TDD_pathlossMeasurementNotPossible, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lppe_NULL }, + { &hf_lppe_non_servingMeasurementsNotAvailable, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lppe_NULL }, + { &hf_lppe_historicMeasurementsNotAvailable, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lppe_NULL }, + { NULL, 0, 0, NULL } +}; + +static int +dissect_lppe_OMA_LPPe_ECID_UTRA_TargetDeviceErrorCauses(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index, + ett_lppe_OMA_LPPe_ECID_UTRA_TargetDeviceErrorCauses, OMA_LPPe_ECID_UTRA_TargetDeviceErrorCauses_sequence); + + return offset; +} + + +static const value_string lppe_OMA_LPPe_ECID_UTRA_Error_vals[] = { + { 0, "locationServerErrorCauses" }, + { 1, "targetDeviceErrorCauses" }, + { 0, NULL } +}; + +static const per_choice_t OMA_LPPe_ECID_UTRA_Error_choice[] = { + { 0, &hf_lppe_locationServerErrorCauses_05, ASN1_EXTENSION_ROOT , dissect_lppe_OMA_LPPe_ECID_UTRA_LocationServerErrorCauses }, + { 1, &hf_lppe_targetDeviceErrorCauses_05, ASN1_EXTENSION_ROOT , dissect_lppe_OMA_LPPe_ECID_UTRA_TargetDeviceErrorCauses }, + { 0, NULL, 0, NULL } +}; + +static int +dissect_lppe_OMA_LPPe_ECID_UTRA_Error(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_choice(tvb, offset, actx, tree, hf_index, + ett_lppe_OMA_LPPe_ECID_UTRA_Error, OMA_LPPe_ECID_UTRA_Error_choice, + NULL); + + return offset; +} + + +static const per_sequence_t OMA_LPPe_ECID_UTRA_ProvideAssistanceData_sequence[] = { + { &hf_lppe_ecid_UTRA_NetworkData, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lppe_SEQUENCE_SIZE_1_maxUTRANetworks_OF_OMA_LPPe_ECID_UTRA_NetworkData }, + { &hf_lppe_ecid_UTRA_Error, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lppe_OMA_LPPe_ECID_UTRA_Error }, + { NULL, 0, 0, NULL } +}; + +static int +dissect_lppe_OMA_LPPe_ECID_UTRA_ProvideAssistanceData(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index, + ett_lppe_OMA_LPPe_ECID_UTRA_ProvideAssistanceData, OMA_LPPe_ECID_UTRA_ProvideAssistanceData_sequence); + + return offset; +} + + +static const per_sequence_t T_mcc_03_sequence_of[1] = { + { &hf_lppe_mcc_item , ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lppe_INTEGER_0_9 }, +}; + +static int +dissect_lppe_T_mcc_03(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_constrained_sequence_of(tvb, offset, actx, tree, hf_index, + ett_lppe_T_mcc_03, T_mcc_03_sequence_of, + 3, 3, FALSE); + + return offset; +} + + +static const per_sequence_t T_mnc_03_sequence_of[1] = { + { &hf_lppe_mnc_item , ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lppe_INTEGER_0_9 }, +}; + +static int +dissect_lppe_T_mnc_03(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_constrained_sequence_of(tvb, offset, actx, tree, hf_index, + ett_lppe_T_mnc_03, T_mnc_03_sequence_of, + 2, 3, FALSE); + + return offset; +} + + +static const per_sequence_t T_plmn_Identity_03_sequence[] = { + { &hf_lppe_mcc_03 , ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lppe_T_mcc_03 }, + { &hf_lppe_mnc_03 , ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lppe_T_mnc_03 }, + { NULL, 0, 0, NULL } +}; + +static int +dissect_lppe_T_plmn_Identity_03(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index, + ett_lppe_T_plmn_Identity_03, T_plmn_Identity_03_sequence); + + return offset; +} + + +static const per_sequence_t Supported_Channels_11a_sequence[] = { + { &hf_lppe_ch34 , ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lppe_BOOLEAN }, + { &hf_lppe_ch36 , ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lppe_BOOLEAN }, + { &hf_lppe_ch38 , ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lppe_BOOLEAN }, + { &hf_lppe_ch40 , ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lppe_BOOLEAN }, + { &hf_lppe_ch42 , ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lppe_BOOLEAN }, + { &hf_lppe_ch44 , ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lppe_BOOLEAN }, + { &hf_lppe_ch46 , ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lppe_BOOLEAN }, + { &hf_lppe_ch48 , ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lppe_BOOLEAN }, + { &hf_lppe_ch52 , ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lppe_BOOLEAN }, + { &hf_lppe_ch56 , ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lppe_BOOLEAN }, + { &hf_lppe_ch60 , ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lppe_BOOLEAN }, + { &hf_lppe_ch64 , ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lppe_BOOLEAN }, + { &hf_lppe_ch149 , ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lppe_BOOLEAN }, + { &hf_lppe_ch153 , ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lppe_BOOLEAN }, + { &hf_lppe_ch157 , ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lppe_BOOLEAN }, + { &hf_lppe_ch161 , ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lppe_BOOLEAN }, + { NULL, 0, 0, NULL } +}; + +static int +dissect_lppe_Supported_Channels_11a(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index, + ett_lppe_Supported_Channels_11a, Supported_Channels_11a_sequence); + + return offset; +} + + +static const per_sequence_t Supported_Channels_11bg_sequence[] = { + { &hf_lppe_ch1 , ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lppe_BOOLEAN }, + { &hf_lppe_ch2 , ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lppe_BOOLEAN }, + { &hf_lppe_ch3 , ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lppe_BOOLEAN }, + { &hf_lppe_ch4 , ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lppe_BOOLEAN }, + { &hf_lppe_ch5 , ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lppe_BOOLEAN }, + { &hf_lppe_ch6 , ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lppe_BOOLEAN }, + { &hf_lppe_ch7 , ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lppe_BOOLEAN }, + { &hf_lppe_ch8 , ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lppe_BOOLEAN }, + { &hf_lppe_ch9 , ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lppe_BOOLEAN }, + { &hf_lppe_ch10 , ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lppe_BOOLEAN }, + { &hf_lppe_ch11 , ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lppe_BOOLEAN }, + { &hf_lppe_ch12 , ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lppe_BOOLEAN }, + { &hf_lppe_ch13 , ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lppe_BOOLEAN }, + { &hf_lppe_ch14 , ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lppe_BOOLEAN }, + { NULL, 0, 0, NULL } +}; + +static int +dissect_lppe_Supported_Channels_11bg(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index, + ett_lppe_Supported_Channels_11bg, Supported_Channels_11bg_sequence); + + return offset; +} + + +static const value_string lppe_OMA_LPPe_WLAN_AP_Type_vals[] = { + { 0, "ieee802-11a" }, + { 1, "ieee802-11b" }, + { 2, "ieee802-11g" }, + { 3, "ieee802-11n" }, + { 0, NULL } +}; + + +static int +dissect_lppe_OMA_LPPe_WLAN_AP_Type(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_enumerated(tvb, offset, actx, tree, hf_index, + 4, NULL, TRUE, 0, NULL); + + return offset; +} + + +static const per_sequence_t OMA_LPPe_WLAN_AP_Type_Data_sequence[] = { + { &hf_lppe_wlan_AP_Type , ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_lppe_OMA_LPPe_WLAN_AP_Type }, + { &hf_lppe_transmit_power , ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lppe_INTEGER_M127_128 }, + { &hf_lppe_antenna_gain , ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lppe_INTEGER_M127_128 }, + { &hf_lppe_coverageArea , ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lppe_OMA_LPPe_WLANFemtoCoverageArea }, + { NULL, 0, 0, NULL } +}; + +static int +dissect_lppe_OMA_LPPe_WLAN_AP_Type_Data(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index, + ett_lppe_OMA_LPPe_WLAN_AP_Type_Data, OMA_LPPe_WLAN_AP_Type_Data_sequence); + + return offset; +} + + +static const per_sequence_t SEQUENCE_SIZE_1_maxWLANTypes_OF_OMA_LPPe_WLAN_AP_Type_Data_sequence_of[1] = { + { &hf_lppe_wlan_ap_Type_Data_item, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lppe_OMA_LPPe_WLAN_AP_Type_Data }, +}; + +static int +dissect_lppe_SEQUENCE_SIZE_1_maxWLANTypes_OF_OMA_LPPe_WLAN_AP_Type_Data(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_constrained_sequence_of(tvb, offset, actx, tree, hf_index, + ett_lppe_SEQUENCE_SIZE_1_maxWLANTypes_OF_OMA_LPPe_WLAN_AP_Type_Data, SEQUENCE_SIZE_1_maxWLANTypes_OF_OMA_LPPe_WLAN_AP_Type_Data_sequence_of, + 1, maxWLANTypes, FALSE); + + return offset; +} + + +static const per_sequence_t OMA_LPPe_WLAN_AP_Data_sequence[] = { + { &hf_lppe_wlan_ap_id , ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_lppe_OMA_LPPe_WLAN_AP_ID }, + { &hf_lppe_relative_location, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lppe_OMA_LPPe_RelativeLocation }, + { &hf_lppe_location_reliability, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lppe_INTEGER_1_100 }, + { &hf_lppe_wlan_ap_Type_Data, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_lppe_SEQUENCE_SIZE_1_maxWLANTypes_OF_OMA_LPPe_WLAN_AP_Type_Data }, + { &hf_lppe_coverageArea , ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lppe_OMA_LPPe_WLANFemtoCoverageArea }, + { NULL, 0, 0, NULL } +}; + +static int +dissect_lppe_OMA_LPPe_WLAN_AP_Data(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index, + ett_lppe_OMA_LPPe_WLAN_AP_Data, OMA_LPPe_WLAN_AP_Data_sequence); + + return offset; +} + + +static const per_sequence_t SEQUENCE_SIZE_1_maxWLANAPs_OF_OMA_LPPe_WLAN_AP_Data_sequence_of[1] = { + { &hf_lppe_wlan_ap_list_item, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lppe_OMA_LPPe_WLAN_AP_Data }, +}; + +static int +dissect_lppe_SEQUENCE_SIZE_1_maxWLANAPs_OF_OMA_LPPe_WLAN_AP_Data(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_constrained_sequence_of(tvb, offset, actx, tree, hf_index, + ett_lppe_SEQUENCE_SIZE_1_maxWLANAPs_OF_OMA_LPPe_WLAN_AP_Data, SEQUENCE_SIZE_1_maxWLANAPs_OF_OMA_LPPe_WLAN_AP_Data_sequence_of, + 1, maxWLANAPs, FALSE); + + return offset; +} + + +static const per_sequence_t OMA_LPPe_WLAN_DataSet_sequence[] = { + { &hf_lppe_plmn_Identity_03, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lppe_T_plmn_Identity_03 }, + { &hf_lppe_reference_point, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lppe_OMA_LPPe_ReferencePoint }, + { &hf_lppe_supported_channels_11a, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lppe_Supported_Channels_11a }, + { &hf_lppe_supported_channels_11bg, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lppe_Supported_Channels_11bg }, + { &hf_lppe_wlan_ap_list , ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_lppe_SEQUENCE_SIZE_1_maxWLANAPs_OF_OMA_LPPe_WLAN_AP_Data }, + { NULL, 0, 0, NULL } +}; + +static int +dissect_lppe_OMA_LPPe_WLAN_DataSet(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index, + ett_lppe_OMA_LPPe_WLAN_DataSet, OMA_LPPe_WLAN_DataSet_sequence); + + return offset; +} + + +static const per_sequence_t SEQUENCE_SIZE_1_maxWLANDataSets_OF_OMA_LPPe_WLAN_DataSet_sequence_of[1] = { + { &hf_lppe_wlan_DataSet_item, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lppe_OMA_LPPe_WLAN_DataSet }, +}; + +static int +dissect_lppe_SEQUENCE_SIZE_1_maxWLANDataSets_OF_OMA_LPPe_WLAN_DataSet(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_constrained_sequence_of(tvb, offset, actx, tree, hf_index, + ett_lppe_SEQUENCE_SIZE_1_maxWLANDataSets_OF_OMA_LPPe_WLAN_DataSet, SEQUENCE_SIZE_1_maxWLANDataSets_OF_OMA_LPPe_WLAN_DataSet_sequence_of, + 1, maxWLANDataSets, FALSE); + + return offset; +} + + +static const value_string lppe_T_cause_12_vals[] = { + { 0, "undefined" }, + { 1, "requestedADNotAvailable" }, + { 2, "notAllrequestedADAvailable" }, + { 0, NULL } +}; + + +static int +dissect_lppe_T_cause_12(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_enumerated(tvb, offset, actx, tree, hf_index, + 3, NULL, TRUE, 0, NULL); + + return offset; +} + + +static const per_sequence_t OMA_LPPe_WLAN_AP_LocationServerErrorCauses_sequence[] = { + { &hf_lppe_cause_12 , ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_lppe_T_cause_12 }, + { &hf_lppe_apMandatoryDataUnavailable, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lppe_NULL }, + { &hf_lppe_apLocationsUnavailable, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lppe_NULL }, + { &hf_lppe_apLocationReliabilityUnavailable, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lppe_NULL }, + { &hf_lppe_apTransmitPowerUnavailable, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lppe_NULL }, + { &hf_lppe_apAntennaGainUnavailable, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lppe_NULL }, + { &hf_lppe_apCoverageAreaUnavailable, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lppe_NULL }, + { &hf_lppe_nonservingADUnavailable, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lppe_NULL }, + { NULL, 0, 0, NULL } +}; + +static int +dissect_lppe_OMA_LPPe_WLAN_AP_LocationServerErrorCauses(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index, + ett_lppe_OMA_LPPe_WLAN_AP_LocationServerErrorCauses, OMA_LPPe_WLAN_AP_LocationServerErrorCauses_sequence); + + return offset; +} + + +static const value_string lppe_T_cause_13_vals[] = { + { 0, "undefined" }, + { 1, "requestedMeasurementsNotAvailable" }, + { 2, "notAllrequestedMeasurementsPossible" }, + { 0, NULL } +}; + + +static int +dissect_lppe_T_cause_13(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_enumerated(tvb, offset, actx, tree, hf_index, + 3, NULL, TRUE, 0, NULL); + + return offset; +} + + +static const per_sequence_t OMA_LPPe_WLAN_AP_TargetDeviceErrorCauses_sequence[] = { + { &hf_lppe_cause_13 , ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_lppe_T_cause_13 }, + { &hf_lppe_apSSIDnotAvailable, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lppe_NULL }, + { &hf_lppe_apSNMeasurementNotPossible, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lppe_NULL }, + { &hf_lppe_apDevTypeNotAvailable, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lppe_NULL }, + { &hf_lppe_apPhyTypeNotAvailable, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lppe_NULL }, + { &hf_lppe_apRSSIMeasurementNotPossible, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lppe_NULL }, + { &hf_lppe_apChanFreqNotAvailable, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lppe_NULL }, + { &hf_lppe_apRTDMeasurementNotPossible, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lppe_NULL }, + { &hf_lppe_ueTPNotAvailable, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lppe_NULL }, + { &hf_lppe_ueAGNotAvailable, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lppe_NULL }, + { &hf_lppe_apRecLocNotAvailable, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lppe_NULL }, + { &hf_lppe_non_servingMeasurementsNotAvailable, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lppe_NULL }, + { &hf_lppe_historicMeasurementsNotAvailable, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lppe_NULL }, + { NULL, 0, 0, NULL } +}; + +static int +dissect_lppe_OMA_LPPe_WLAN_AP_TargetDeviceErrorCauses(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index, + ett_lppe_OMA_LPPe_WLAN_AP_TargetDeviceErrorCauses, OMA_LPPe_WLAN_AP_TargetDeviceErrorCauses_sequence); + + return offset; +} + + +static const value_string lppe_OMA_LPPe_WLAN_AP_Error_vals[] = { + { 0, "locationServerErrorCauses" }, + { 1, "targetDeviceErrorCauses" }, + { 0, NULL } +}; + +static const per_choice_t OMA_LPPe_WLAN_AP_Error_choice[] = { + { 0, &hf_lppe_locationServerErrorCauses_06, ASN1_EXTENSION_ROOT , dissect_lppe_OMA_LPPe_WLAN_AP_LocationServerErrorCauses }, + { 1, &hf_lppe_targetDeviceErrorCauses_06, ASN1_EXTENSION_ROOT , dissect_lppe_OMA_LPPe_WLAN_AP_TargetDeviceErrorCauses }, + { 0, NULL, 0, NULL } +}; + +static int +dissect_lppe_OMA_LPPe_WLAN_AP_Error(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_choice(tvb, offset, actx, tree, hf_index, + ett_lppe_OMA_LPPe_WLAN_AP_Error, OMA_LPPe_WLAN_AP_Error_choice, + NULL); + + return offset; +} + + +static const per_sequence_t OMA_LPPe_WLAN_AP_ProvideAssistanceData_sequence[] = { + { &hf_lppe_wlan_DataSet , ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lppe_SEQUENCE_SIZE_1_maxWLANDataSets_OF_OMA_LPPe_WLAN_DataSet }, + { &hf_lppe_wlan_AP_Error , ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lppe_OMA_LPPe_WLAN_AP_Error }, + { NULL, 0, 0, NULL } +}; + +static int +dissect_lppe_OMA_LPPe_WLAN_AP_ProvideAssistanceData(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index, + ett_lppe_OMA_LPPe_WLAN_AP_ProvideAssistanceData, OMA_LPPe_WLAN_AP_ProvideAssistanceData_sequence); + + return offset; +} + + +static const per_sequence_t OMA_LPPe_Sensor_ProvideAssistanceData_sequence[] = { + { NULL, ASN1_EXTENSION_ROOT, 0, NULL } +}; + +static int +dissect_lppe_OMA_LPPe_Sensor_ProvideAssistanceData(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index, + ett_lppe_OMA_LPPe_Sensor_ProvideAssistanceData, OMA_LPPe_Sensor_ProvideAssistanceData_sequence); + + return offset; +} + + + +static int +dissect_lppe_INTEGER_M300_500(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index, + -300, 500U, NULL, FALSE); + + return offset; +} + + +static const per_sequence_t T_srnAntennaInfo_sequence[] = { + { &hf_lppe_antennaPatternID, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_lppe_INTEGER_0_65535 }, + { &hf_lppe_switchingPatternID, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lppe_INTEGER_0_65535 }, + { NULL, 0, 0, NULL } +}; + +static int +dissect_lppe_T_srnAntennaInfo(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index, + ett_lppe_T_srnAntennaInfo, T_srnAntennaInfo_sequence); + + return offset; +} + + +static const per_sequence_t OMA_LPPe_SRN_SRNtype_sequence[] = { + { &hf_lppe_srnCategory , ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_lppe_OMA_LPPe_SRN_Category }, + { &hf_lppe_srnERP , ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lppe_INTEGER_M300_500 }, + { &hf_lppe_srnAntennaInfo , ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lppe_T_srnAntennaInfo }, + { NULL, 0, 0, NULL } +}; + +static int +dissect_lppe_OMA_LPPe_SRN_SRNtype(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index, + ett_lppe_OMA_LPPe_SRN_SRNtype, OMA_LPPe_SRN_SRNtype_sequence); + + return offset; +} + + + +static int +dissect_lppe_INTEGER_0_180(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index, + 0U, 180U, NULL, FALSE); + + return offset; +} + + +static const per_sequence_t T_eulerAngles_sequence[] = { + { &hf_lppe_alpha , ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_lppe_INTEGER_0_359 }, + { &hf_lppe_beta , ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_lppe_INTEGER_0_180 }, + { &hf_lppe_gamma , ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_lppe_INTEGER_0_359 }, + { NULL, 0, 0, NULL } +}; + +static int +dissect_lppe_T_eulerAngles(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index, + ett_lppe_T_eulerAngles, T_eulerAngles_sequence); + + return offset; +} + + +static const value_string lppe_OMA_LPPe_Orientation_vals[] = { + { 0, "eulerAngles" }, + { 0, NULL } +}; + +static const per_choice_t OMA_LPPe_Orientation_choice[] = { + { 0, &hf_lppe_eulerAngles , ASN1_EXTENSION_ROOT , dissect_lppe_T_eulerAngles }, + { 0, NULL, 0, NULL } +}; + +static int +dissect_lppe_OMA_LPPe_Orientation(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_choice(tvb, offset, actx, tree, hf_index, + ett_lppe_OMA_LPPe_Orientation, OMA_LPPe_Orientation_choice, + NULL); + + return offset; +} + + +static const per_sequence_t OMA_LPPe_SRN_SRNinfo_sequence[] = { + { &hf_lppe_srnID , ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_lppe_OMA_LPPe_SRN_SRNid }, + { &hf_lppe_srnType , ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lppe_OMA_LPPe_SRN_SRNtype }, + { &hf_lppe_relativePosition, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_lppe_OMA_LPPe_RelativeLocation }, + { &hf_lppe_orientation , ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lppe_OMA_LPPe_Orientation }, + { NULL, 0, 0, NULL } +}; + +static int +dissect_lppe_OMA_LPPe_SRN_SRNinfo(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index, + ett_lppe_OMA_LPPe_SRN_SRNinfo, OMA_LPPe_SRN_SRNinfo_sequence); + + return offset; +} + + +static const per_sequence_t SEQUENCE_SIZE_1_1024_OF_OMA_LPPe_SRN_SRNinfo_sequence_of[1] = { + { &hf_lppe_srnsInGroupList_item, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lppe_OMA_LPPe_SRN_SRNinfo }, +}; + +static int +dissect_lppe_SEQUENCE_SIZE_1_1024_OF_OMA_LPPe_SRN_SRNinfo(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_constrained_sequence_of(tvb, offset, actx, tree, hf_index, + ett_lppe_SEQUENCE_SIZE_1_1024_OF_OMA_LPPe_SRN_SRNinfo, SEQUENCE_SIZE_1_1024_OF_OMA_LPPe_SRN_SRNinfo_sequence_of, + 1, 1024, FALSE); + + return offset; +} + + +static const per_sequence_t OMA_LPPe_SRN_SRNgroup_sequence[] = { + { &hf_lppe_srnGroupID , ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lppe_OMA_LPPe_SRN_SRNgroupUniqueID }, + { &hf_lppe_defaultSRNtype , ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lppe_OMA_LPPe_SRN_SRNtype }, + { &hf_lppe_referencePoint_01, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lppe_OMA_LPPe_ReferencePoint }, + { &hf_lppe_globalOrientation, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lppe_NULL }, + { &hf_lppe_srnsInGroupList, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_lppe_SEQUENCE_SIZE_1_1024_OF_OMA_LPPe_SRN_SRNinfo }, + { NULL, 0, 0, NULL } +}; + +static int +dissect_lppe_OMA_LPPe_SRN_SRNgroup(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index, + ett_lppe_OMA_LPPe_SRN_SRNgroup, OMA_LPPe_SRN_SRNgroup_sequence); + + return offset; +} + + +static const per_sequence_t SEQUENCE_SIZE_1_64_OF_OMA_LPPe_SRN_SRNgroup_sequence_of[1] = { + { &hf_lppe_groupList_item , ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lppe_OMA_LPPe_SRN_SRNgroup }, +}; + +static int +dissect_lppe_SEQUENCE_SIZE_1_64_OF_OMA_LPPe_SRN_SRNgroup(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_constrained_sequence_of(tvb, offset, actx, tree, hf_index, + ett_lppe_SEQUENCE_SIZE_1_64_OF_OMA_LPPe_SRN_SRNgroup, SEQUENCE_SIZE_1_64_OF_OMA_LPPe_SRN_SRNgroup_sequence_of, + 1, 64, FALSE); + + return offset; +} + + +static const per_sequence_t OMA_LPPe_SRN_SRNgroupList_sequence[] = { + { &hf_lppe_incompleteFlag , ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_lppe_BOOLEAN }, + { &hf_lppe_defaultReferencePoint, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lppe_OMA_LPPe_ReferencePoint }, + { &hf_lppe_groupList , ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_lppe_SEQUENCE_SIZE_1_64_OF_OMA_LPPe_SRN_SRNgroup }, + { NULL, 0, 0, NULL } +}; + +static int +dissect_lppe_OMA_LPPe_SRN_SRNgroupList(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index, + ett_lppe_OMA_LPPe_SRN_SRNgroupList, OMA_LPPe_SRN_SRNgroupList_sequence); + + return offset; +} + + +static const value_string lppe_T_targetDataValidity_vals[] = { + { 0, "targetDataValid" }, + { 1, "targetDataInValidAndUpdatedDataWillBeProvided" }, + { 2, "targetDataInValidButServerWillNotProvideNewData" }, + { 0, NULL } +}; + + +static int +dissect_lppe_T_targetDataValidity(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_enumerated(tvb, offset, actx, tree, hf_index, + 3, NULL, TRUE, 0, NULL); + + return offset; +} + + +static const per_sequence_t OMA_LPPe_SRN_SRNgroupUpdateResponseElement_sequence[] = { + { &hf_lppe_srnGroupID , ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lppe_OMA_LPPe_SRN_SRNgroupUniqueID }, + { &hf_lppe_targetDataValidity, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_lppe_T_targetDataValidity }, + { &hf_lppe_updatedSRNgroup, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lppe_OMA_LPPe_SRN_SRNgroup }, + { NULL, 0, 0, NULL } +}; + +static int +dissect_lppe_OMA_LPPe_SRN_SRNgroupUpdateResponseElement(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index, + ett_lppe_OMA_LPPe_SRN_SRNgroupUpdateResponseElement, OMA_LPPe_SRN_SRNgroupUpdateResponseElement_sequence); + + return offset; +} + + +static const per_sequence_t OMA_LPPe_SRN_SRNgroupUpdateResponse_sequence_of[1] = { + { &hf_lppe_OMA_LPPe_SRN_SRNgroupUpdateResponse_item, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lppe_OMA_LPPe_SRN_SRNgroupUpdateResponseElement }, +}; + +static int +dissect_lppe_OMA_LPPe_SRN_SRNgroupUpdateResponse(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_constrained_sequence_of(tvb, offset, actx, tree, hf_index, + ett_lppe_OMA_LPPe_SRN_SRNgroupUpdateResponse, OMA_LPPe_SRN_SRNgroupUpdateResponse_sequence_of, + 1, 8, FALSE); + + return offset; +} + + +static const value_string lppe_T_srnGroup_vals[] = { + { 0, "srnGroupList" }, + { 1, "srnGroupUpdateResponse" }, + { 0, NULL } +}; + +static const per_choice_t T_srnGroup_choice[] = { + { 0, &hf_lppe_srnGroupList , ASN1_EXTENSION_ROOT , dissect_lppe_OMA_LPPe_SRN_SRNgroupList }, + { 1, &hf_lppe_srnGroupUpdateResponse, ASN1_EXTENSION_ROOT , dissect_lppe_OMA_LPPe_SRN_SRNgroupUpdateResponse }, + { 0, NULL, 0, NULL } +}; + +static int +dissect_lppe_T_srnGroup(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_choice(tvb, offset, actx, tree, hf_index, + ett_lppe_T_srnGroup, T_srnGroup_choice, + NULL); + + return offset; +} + + +static const per_sequence_t T_identification_sequence[] = { + { &hf_lppe_vendorOrOperator, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_lppe_OMA_LPPe_VendorOrOperatorID }, + { &hf_lppe_antennaPatternID, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_lppe_INTEGER_0_65535 }, + { NULL, 0, 0, NULL } +}; + +static int +dissect_lppe_T_identification(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index, + ett_lppe_T_identification, T_identification_sequence); + + return offset; +} + + + +static int +dissect_lppe_INTEGER_1_200(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index, + 1U, 200U, NULL, FALSE); + + return offset; +} + + + +static int +dissect_lppe_INTEGER_1_150(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index, + 1U, 150U, NULL, FALSE); + + return offset; +} + + +static const per_sequence_t T_evenGrid_sequence[] = { + { &hf_lppe_inAzimuth , ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lppe_INTEGER_1_200 }, + { &hf_lppe_inElevation , ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lppe_INTEGER_1_150 }, + { NULL, 0, 0, NULL } +}; + +static int +dissect_lppe_T_evenGrid(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index, + ett_lppe_T_evenGrid, T_evenGrid_sequence); + + return offset; +} + + + +static int +dissect_lppe_INTEGER_1_maxChannels(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index, + 1U, maxChannels, NULL, FALSE); + + return offset; +} + + + +static int +dissect_lppe_INTEGER_0_900(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index, + 0U, 900U, NULL, FALSE); + + return offset; +} + + + +static int +dissect_lppe_INTEGER_0_3599(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index, + 0U, 3599U, NULL, FALSE); + + return offset; +} + + + +static int +dissect_lppe_INTEGER_M1800_1799(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index, + -1800, 1799U, NULL, FALSE); + + return offset; +} + + +static const per_sequence_t OMA_LPPe_ComplexNumber_sequence[] = { + { &hf_lppe_amplitude , ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lppe_INTEGER_0_1000 }, + { &hf_lppe_phase , ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lppe_INTEGER_M1800_1799 }, + { NULL, 0, 0, NULL } +}; + +static int +dissect_lppe_OMA_LPPe_ComplexNumber(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index, + ett_lppe_OMA_LPPe_ComplexNumber, OMA_LPPe_ComplexNumber_sequence); + + return offset; +} + + +static const per_sequence_t OMA_LPPe_SRN_ResponseInAzimuth_sequence[] = { + { &hf_lppe_azimuth_01 , ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lppe_INTEGER_0_3599 }, + { &hf_lppe_response , ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_lppe_OMA_LPPe_ComplexNumber }, + { NULL, 0, 0, NULL } +}; + +static int +dissect_lppe_OMA_LPPe_SRN_ResponseInAzimuth(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index, + ett_lppe_OMA_LPPe_SRN_ResponseInAzimuth, OMA_LPPe_SRN_ResponseInAzimuth_sequence); + + return offset; +} + + +static const per_sequence_t SEQUENCE_SIZE_18_3601_OF_OMA_LPPe_SRN_ResponseInAzimuth_sequence_of[1] = { + { &hf_lppe_responseInAzimuth_item, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lppe_OMA_LPPe_SRN_ResponseInAzimuth }, +}; + +static int +dissect_lppe_SEQUENCE_SIZE_18_3601_OF_OMA_LPPe_SRN_ResponseInAzimuth(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_constrained_sequence_of(tvb, offset, actx, tree, hf_index, + ett_lppe_SEQUENCE_SIZE_18_3601_OF_OMA_LPPe_SRN_ResponseInAzimuth, SEQUENCE_SIZE_18_3601_OF_OMA_LPPe_SRN_ResponseInAzimuth_sequence_of, + 18, 3601, FALSE); + + return offset; +} + + +static const per_sequence_t OMA_LPPe_SRN_ResponseInElevation_sequence[] = { + { &hf_lppe_elevation_01 , ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lppe_INTEGER_0_900 }, + { &hf_lppe_responseInAzimuth, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_lppe_SEQUENCE_SIZE_18_3601_OF_OMA_LPPe_SRN_ResponseInAzimuth }, + { NULL, 0, 0, NULL } +}; + +static int +dissect_lppe_OMA_LPPe_SRN_ResponseInElevation(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index, + ett_lppe_OMA_LPPe_SRN_ResponseInElevation, OMA_LPPe_SRN_ResponseInElevation_sequence); + + return offset; +} + + +static const per_sequence_t SEQUENCE_SIZE_7_901_OF_OMA_LPPe_SRN_ResponseInElevation_sequence_of[1] = { + { &hf_lppe_responseInElevation_item, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lppe_OMA_LPPe_SRN_ResponseInElevation }, +}; + +static int +dissect_lppe_SEQUENCE_SIZE_7_901_OF_OMA_LPPe_SRN_ResponseInElevation(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_constrained_sequence_of(tvb, offset, actx, tree, hf_index, + ett_lppe_SEQUENCE_SIZE_7_901_OF_OMA_LPPe_SRN_ResponseInElevation, SEQUENCE_SIZE_7_901_OF_OMA_LPPe_SRN_ResponseInElevation_sequence_of, + 7, 901, FALSE); + + return offset; +} + + +static const per_sequence_t OMA_LPPe_SRN_ChannelResponse_sequence[] = { + { &hf_lppe_channelNumber , ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_lppe_INTEGER_1_maxChannels }, + { &hf_lppe_responseInElevation, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_lppe_SEQUENCE_SIZE_7_901_OF_OMA_LPPe_SRN_ResponseInElevation }, + { NULL, 0, 0, NULL } +}; + +static int +dissect_lppe_OMA_LPPe_SRN_ChannelResponse(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index, + ett_lppe_OMA_LPPe_SRN_ChannelResponse, OMA_LPPe_SRN_ChannelResponse_sequence); + + return offset; +} + + +static const per_sequence_t SEQUENCE_SIZE_1_maxChannels_OF_OMA_LPPe_SRN_ChannelResponse_sequence_of[1] = { + { &hf_lppe_patternList_item, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lppe_OMA_LPPe_SRN_ChannelResponse }, +}; + +static int +dissect_lppe_SEQUENCE_SIZE_1_maxChannels_OF_OMA_LPPe_SRN_ChannelResponse(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_constrained_sequence_of(tvb, offset, actx, tree, hf_index, + ett_lppe_SEQUENCE_SIZE_1_maxChannels_OF_OMA_LPPe_SRN_ChannelResponse, SEQUENCE_SIZE_1_maxChannels_OF_OMA_LPPe_SRN_ChannelResponse_sequence_of, + 1, maxChannels, FALSE); + + return offset; +} + + +static const per_sequence_t OMA_LPPe_SRN_AntennaPatternForChannels_sequence[] = { + { &hf_lppe_evenGrid , ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lppe_T_evenGrid }, + { &hf_lppe_patternList , ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_lppe_SEQUENCE_SIZE_1_maxChannels_OF_OMA_LPPe_SRN_ChannelResponse }, + { NULL, 0, 0, NULL } +}; + +static int +dissect_lppe_OMA_LPPe_SRN_AntennaPatternForChannels(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index, + ett_lppe_OMA_LPPe_SRN_AntennaPatternForChannels, OMA_LPPe_SRN_AntennaPatternForChannels_sequence); + + return offset; +} + + +static const value_string lppe_T_antennaData_vals[] = { + { 0, "antennaPattern" }, + { 1, "antennaContainer" }, + { 0, NULL } +}; + +static const per_choice_t T_antennaData_choice[] = { + { 0, &hf_lppe_antennaPattern_01, ASN1_EXTENSION_ROOT , dissect_lppe_OMA_LPPe_SRN_AntennaPatternForChannels }, + { 1, &hf_lppe_antennaContainer, ASN1_EXTENSION_ROOT , dissect_lppe_OCTET_STRING }, + { 0, NULL, 0, NULL } +}; + +static int +dissect_lppe_T_antennaData(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_choice(tvb, offset, actx, tree, hf_index, + ett_lppe_T_antennaData, T_antennaData_choice, + NULL); + + return offset; +} + + +static const per_sequence_t OMA_LPPe_SRN_AntennaPatternElement_sequence[] = { + { &hf_lppe_identification , ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_lppe_T_identification }, + { &hf_lppe_antennaData , ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_lppe_T_antennaData }, + { NULL, 0, 0, NULL } +}; + +static int +dissect_lppe_OMA_LPPe_SRN_AntennaPatternElement(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index, + ett_lppe_OMA_LPPe_SRN_AntennaPatternElement, OMA_LPPe_SRN_AntennaPatternElement_sequence); + + return offset; +} + + +static const per_sequence_t OMA_LPPe_SRN_AntennaPattern_sequence_of[1] = { + { &hf_lppe_OMA_LPPe_SRN_AntennaPattern_item, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lppe_OMA_LPPe_SRN_AntennaPatternElement }, +}; + +static int +dissect_lppe_OMA_LPPe_SRN_AntennaPattern(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_constrained_sequence_of(tvb, offset, actx, tree, hf_index, + ett_lppe_OMA_LPPe_SRN_AntennaPattern, OMA_LPPe_SRN_AntennaPattern_sequence_of, + 1, 8, FALSE); + + return offset; +} + + +static const value_string lppe_T_groupErrors_vals[] = { + { 0, "undefined" }, + { 1, "someGroupOrCategoryOrSRNidUnknownOrUnsupported" }, + { 2, "allGroupAndCategoryOrSRNidUnknownOrUnsupported" }, + { 3, "noSRNgroupsNearby" }, + { 0, NULL } +}; + + +static int +dissect_lppe_T_groupErrors(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_enumerated(tvb, offset, actx, tree, hf_index, + 4, NULL, TRUE, 0, NULL); + + return offset; +} + + +static const value_string lppe_T_groupUpdateErrors_vals[] = { + { 0, "undefined" }, + { 1, "allSRNgroupIDsUnknown" }, + { 2, "allSRNgroupIDsknownButSomeSRNgroupVersionsUnknown" }, + { 3, "allSRNgroupIDsknownAndAllSRNgroupVersionsUnknown" }, + { 4, "someSRNgroupIDsUnknown" }, + { 5, "someSRNgroupVersionsUnknownAndAllSRNGroupVersionsUnknown" }, + { 6, "someSRNgroupIDsAndSomeSRNgroupVersionsUnknown" }, + { 7, "inTheGroupInformationDoesNotMatchWithGroupID" }, + { 0, NULL } +}; + + +static int +dissect_lppe_T_groupUpdateErrors(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_enumerated(tvb, offset, actx, tree, hf_index, + 8, NULL, TRUE, 0, NULL); + + return offset; +} + + +static const value_string lppe_T_srnAntennaErrors_vals[] = { + { 0, "undefined" }, + { 1, "someAntennaPatternIDsUnknown" }, + { 2, "allAntennaPatternIDsUnknown" }, + { 0, NULL } +}; + + +static int +dissect_lppe_T_srnAntennaErrors(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_enumerated(tvb, offset, actx, tree, hf_index, + 3, NULL, TRUE, 0, NULL); + + return offset; +} + + +static const per_sequence_t OMA_LPPe_SRN_LocationServerErrorCauses_sequence[] = { + { &hf_lppe_groupErrors , ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lppe_T_groupErrors }, + { &hf_lppe_groupUpdateErrors, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lppe_T_groupUpdateErrors }, + { &hf_lppe_srnAntennaErrors, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lppe_T_srnAntennaErrors }, + { NULL, 0, 0, NULL } +}; + +static int +dissect_lppe_OMA_LPPe_SRN_LocationServerErrorCauses(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index, + ett_lppe_OMA_LPPe_SRN_LocationServerErrorCauses, OMA_LPPe_SRN_LocationServerErrorCauses_sequence); + + return offset; +} + + +static const value_string lppe_T_srnErrors_vals[] = { + { 0, "undefined" }, + { 1, "requestedMeasurementsNotAvailable" }, + { 2, "notAllrequestedMeasurementsPossible" }, + { 3, "categoryNotSupported" }, + { 0, NULL } +}; + + +static int +dissect_lppe_T_srnErrors(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_enumerated(tvb, offset, actx, tree, hf_index, + 4, NULL, TRUE, 0, NULL); + + return offset; +} + + +static const per_sequence_t OMA_LPPe_SRN_TargetDeviceError_sequence[] = { + { &hf_lppe_category , ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_lppe_OMA_LPPe_SRN_Category }, + { &hf_lppe_srnErrors , ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_lppe_T_srnErrors }, + { &hf_lppe_rssiNotAvailable, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lppe_NULL }, + { &hf_lppe_rtdNotAvailable, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lppe_NULL }, + { &hf_lppe_multipleSetsNotAvailable, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lppe_NULL }, + { &hf_lppe_historicMeasurementsNotAvailable, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lppe_NULL }, + { NULL, 0, 0, NULL } +}; + +static int +dissect_lppe_OMA_LPPe_SRN_TargetDeviceError(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index, + ett_lppe_OMA_LPPe_SRN_TargetDeviceError, OMA_LPPe_SRN_TargetDeviceError_sequence); + + return offset; +} + + +static const per_sequence_t SEQUENCE_SIZE_1_16_OF_OMA_LPPe_SRN_TargetDeviceError_sequence_of[1] = { + { &hf_lppe_srnErrorsPerCategory_item, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lppe_OMA_LPPe_SRN_TargetDeviceError }, +}; + +static int +dissect_lppe_SEQUENCE_SIZE_1_16_OF_OMA_LPPe_SRN_TargetDeviceError(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_constrained_sequence_of(tvb, offset, actx, tree, hf_index, + ett_lppe_SEQUENCE_SIZE_1_16_OF_OMA_LPPe_SRN_TargetDeviceError, SEQUENCE_SIZE_1_16_OF_OMA_LPPe_SRN_TargetDeviceError_sequence_of, + 1, 16, FALSE); + + return offset; +} + + +static const per_sequence_t OMA_LPPe_SRN_TargetDeviceErrorCauses_sequence[] = { + { &hf_lppe_srnErrorsPerCategory, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_lppe_SEQUENCE_SIZE_1_16_OF_OMA_LPPe_SRN_TargetDeviceError }, + { NULL, 0, 0, NULL } +}; + +static int +dissect_lppe_OMA_LPPe_SRN_TargetDeviceErrorCauses(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index, + ett_lppe_OMA_LPPe_SRN_TargetDeviceErrorCauses, OMA_LPPe_SRN_TargetDeviceErrorCauses_sequence); + + return offset; +} + + +static const value_string lppe_OMA_LPPe_SRN_Error_vals[] = { + { 0, "srnLocationServerErrorCauses" }, + { 1, "srnTargetDeviceErrorCauses" }, + { 0, NULL } +}; + +static const per_choice_t OMA_LPPe_SRN_Error_choice[] = { + { 0, &hf_lppe_srnLocationServerErrorCauses, ASN1_EXTENSION_ROOT , dissect_lppe_OMA_LPPe_SRN_LocationServerErrorCauses }, + { 1, &hf_lppe_srnTargetDeviceErrorCauses, ASN1_EXTENSION_ROOT , dissect_lppe_OMA_LPPe_SRN_TargetDeviceErrorCauses }, + { 0, NULL, 0, NULL } +}; + +static int +dissect_lppe_OMA_LPPe_SRN_Error(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_choice(tvb, offset, actx, tree, hf_index, + ett_lppe_OMA_LPPe_SRN_Error, OMA_LPPe_SRN_Error_choice, + NULL); + + return offset; +} + + +static const per_sequence_t OMA_LPPe_SRN_ProvideAssistanceData_sequence[] = { + { &hf_lppe_srnGroup , ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lppe_T_srnGroup }, + { &hf_lppe_antennaPattern , ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lppe_OMA_LPPe_SRN_AntennaPattern }, + { &hf_lppe_srnError , ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lppe_OMA_LPPe_SRN_Error }, + { NULL, 0, 0, NULL } +}; + +static int +dissect_lppe_OMA_LPPe_SRN_ProvideAssistanceData(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index, + ett_lppe_OMA_LPPe_SRN_ProvideAssistanceData, OMA_LPPe_SRN_ProvideAssistanceData_sequence); + + return offset; +} + + +static const per_sequence_t OMA_LPPe_ProvideAssistanceData_sequence[] = { + { &hf_lppe_commonIEsProvideAssistanceData, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lppe_OMA_LPPe_CommonIEsProvideAssistanceData }, + { &hf_lppe_agnss_ProvideAssistanceData, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lppe_OMA_LPPe_AGNSS_ProvideAssistanceData }, + { &hf_lppe_otdoa_ProvideAssistanceData, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lppe_OMA_LPPe_OTDOA_ProvideAssistanceData }, + { &hf_lppe_eotd_ProvideAssistanceData, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lppe_OMA_LPPe_EOTD_ProvideAssistanceData }, + { &hf_lppe_otdoa_utra_ProvideAssistanceData, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lppe_OMA_LPPe_OTDOA_UTRA_ProvideAssistanceData }, + { &hf_lppe_ecid_lte_ProvideAssistanceData, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lppe_OMA_LPPe_ECID_LTE_ProvideAssistanceData }, + { &hf_lppe_ecid_gsm_ProvideAssistanceData, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lppe_OMA_LPPe_ECID_GSM_ProvideAssistanceData }, + { &hf_lppe_ecid_utra_ProvideAssistanceData, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lppe_OMA_LPPe_ECID_UTRA_ProvideAssistanceData }, + { &hf_lppe_wlan_ap_ProvideAssistanceData, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lppe_OMA_LPPe_WLAN_AP_ProvideAssistanceData }, + { &hf_lppe_sensor_ProvideAssistanceData, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lppe_OMA_LPPe_Sensor_ProvideAssistanceData }, + { &hf_lppe_srn_ProvideAssistanceData, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lppe_OMA_LPPe_SRN_ProvideAssistanceData }, + { NULL, 0, 0, NULL } +}; + +static int +dissect_lppe_OMA_LPPe_ProvideAssistanceData(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index, + ett_lppe_OMA_LPPe_ProvideAssistanceData, OMA_LPPe_ProvideAssistanceData_sequence); + + return offset; +} + + +static const per_sequence_t OMA_LPPe_IP_Address_Request_sequence[] = { + { NULL, ASN1_EXTENSION_ROOT, 0, NULL } +}; + +static int +dissect_lppe_OMA_LPPe_IP_Address_Request(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index, + ett_lppe_OMA_LPPe_IP_Address_Request, OMA_LPPe_IP_Address_Request_sequence); + + return offset; +} + + +static const per_sequence_t OMA_LPPe_LocationInformationContainerRequestItem_sequence[] = { + { &hf_lppe_containerID_01 , ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_lppe_OMA_LPPe_LocationInformationContainerID }, + { &hf_lppe_additionalInformation, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lppe_OCTET_STRING }, + { NULL, 0, 0, NULL } +}; + +static int +dissect_lppe_OMA_LPPe_LocationInformationContainerRequestItem(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index, + ett_lppe_OMA_LPPe_LocationInformationContainerRequestItem, OMA_LPPe_LocationInformationContainerRequestItem_sequence); + + return offset; +} + + +static const per_sequence_t OMA_LPPe_LocationInformationContainerRequestList_sequence_of[1] = { + { &hf_lppe_OMA_LPPe_LocationInformationContainerRequestList_item, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lppe_OMA_LPPe_LocationInformationContainerRequestItem }, +}; + +static int +dissect_lppe_OMA_LPPe_LocationInformationContainerRequestList(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_constrained_sequence_of(tvb, offset, actx, tree, hf_index, + ett_lppe_OMA_LPPe_LocationInformationContainerRequestList, OMA_LPPe_LocationInformationContainerRequestList_sequence_of, + 1, maxLocationInformationContainerDataList, FALSE); + + return offset; +} + + +static const per_sequence_t OMA_LPPe_LocationInformationContainerRequest_sequence[] = { + { &hf_lppe_vendorOrOperatorID, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_lppe_OMA_LPPe_VendorOrOperatorID }, + { &hf_lppe_locationInformationContainerRequestList, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_lppe_OMA_LPPe_LocationInformationContainerRequestList }, + { NULL, 0, 0, NULL } +}; + +static int +dissect_lppe_OMA_LPPe_LocationInformationContainerRequest(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index, + ett_lppe_OMA_LPPe_LocationInformationContainerRequest, OMA_LPPe_LocationInformationContainerRequest_sequence); + + return offset; +} + + +static const value_string lppe_OMA_LPPe_TypeOfLocInfoRequest_vals[] = { + { 0, "initialRequest" }, + { 1, "updateAndContinueIfUpdateFails" }, + { 2, "updateAndAbortIfUpdateFails" }, + { 0, NULL } +}; + + +static int +dissect_lppe_OMA_LPPe_TypeOfLocInfoRequest(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_enumerated(tvb, offset, actx, tree, hf_index, + 3, NULL, TRUE, 0, NULL); + + return offset; +} + + +static const per_sequence_t OMA_LPPe_RequestPeriodicLocInfoWithUpdate_sequence[] = { + { &hf_lppe_session_ID_01 , ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_lppe_INTEGER_1_256 }, + { &hf_lppe_typeOfLocInfoRequest, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_lppe_OMA_LPPe_TypeOfLocInfoRequest }, + { NULL, 0, 0, NULL } +}; + +static int +dissect_lppe_OMA_LPPe_RequestPeriodicLocInfoWithUpdate(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index, + ett_lppe_OMA_LPPe_RequestPeriodicLocInfoWithUpdate, OMA_LPPe_RequestPeriodicLocInfoWithUpdate_sequence); + + return offset; +} + + +static const per_sequence_t OMA_LPPe_RelativeLocationChange_Request_sequence[] = { + { &hf_lppe_numberOfChanges, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lppe_INTEGER_1_5 }, + { NULL, 0, 0, NULL } +}; + +static int +dissect_lppe_OMA_LPPe_RelativeLocationChange_Request(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index, + ett_lppe_OMA_LPPe_RelativeLocationChange_Request, OMA_LPPe_RelativeLocationChange_Request_sequence); + + return offset; +} + + +static const value_string lppe_T_typeOfRequest_vals[] = { + { 0, "localOptional" }, + { 1, "localMandatory" }, + { 2, "localOnly" }, + { 0, NULL } +}; + + +static int +dissect_lppe_T_typeOfRequest(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_enumerated(tvb, offset, actx, tree, hf_index, + 3, NULL, TRUE, 0, NULL); + + return offset; +} + + +static const per_sequence_t SEQUENCE_SIZE_1_8_OF_OMA_LPPe_ReferencePointUniqueID_sequence_of[1] = { + { &hf_lppe_referencePointReq_item_01, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lppe_OMA_LPPe_ReferencePointUniqueID }, +}; + +static int +dissect_lppe_SEQUENCE_SIZE_1_8_OF_OMA_LPPe_ReferencePointUniqueID(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_constrained_sequence_of(tvb, offset, actx, tree, hf_index, + ett_lppe_SEQUENCE_SIZE_1_8_OF_OMA_LPPe_ReferencePointUniqueID, SEQUENCE_SIZE_1_8_OF_OMA_LPPe_ReferencePointUniqueID_sequence_of, + 1, 8, FALSE); + + return offset; +} + + +static const per_sequence_t OMA_LPPe_LocalPositionRequest_sequence[] = { + { &hf_lppe_typeOfRequest , ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_lppe_T_typeOfRequest }, + { &hf_lppe_referencePointReq_01, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lppe_SEQUENCE_SIZE_1_8_OF_OMA_LPPe_ReferencePointUniqueID }, + { NULL, 0, 0, NULL } +}; + +static int +dissect_lppe_OMA_LPPe_LocalPositionRequest(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index, + ett_lppe_OMA_LPPe_LocalPositionRequest, OMA_LPPe_LocalPositionRequest_sequence); + + return offset; +} + + +static const per_sequence_t OMA_LPPe_ScheduledLocation_Request_sequence[] = { + { &hf_lppe_gnssTime , ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lpp_GNSS_SystemTime }, + { &hf_lppe_networkTime , ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lpp_NetworkTime }, + { &hf_lppe_relativeTime , ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lppe_INTEGER_1_1024 }, + { &hf_lppe_windowSize , ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lppe_INTEGER_1_1024 }, + { NULL, 0, 0, NULL } +}; + +static int +dissect_lppe_OMA_LPPe_ScheduledLocation_Request(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index, + ett_lppe_OMA_LPPe_ScheduledLocation_Request, OMA_LPPe_ScheduledLocation_Request_sequence); + + return offset; +} + + +static const per_sequence_t OMA_LPPe_AccessTypeRequest_sequence[] = { + { NULL, ASN1_EXTENSION_ROOT, 0, NULL } +}; + +static int +dissect_lppe_OMA_LPPe_AccessTypeRequest(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index, + ett_lppe_OMA_LPPe_AccessTypeRequest, OMA_LPPe_AccessTypeRequest_sequence); + + return offset; +} + + +static const value_string lppe_T_segmentedLIpreference_vals[] = { + { 0, "useBasic" }, + { 1, "useResume" }, + { 0, NULL } +}; + + +static int +dissect_lppe_T_segmentedLIpreference(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_enumerated(tvb, offset, actx, tree, hf_index, + 2, NULL, TRUE, 0, NULL); + + return offset; +} + + +static const per_sequence_t OMA_LPPe_SegmentedLIResume_sequence[] = { + { &hf_lppe_segmentedLI_session_ID, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lppe_INTEGER_1_256 }, + { &hf_lppe_next_segment_number, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lppe_INTEGER_1_4096 }, + { NULL, 0, 0, NULL } +}; + +static int +dissect_lppe_OMA_LPPe_SegmentedLIResume(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index, + ett_lppe_OMA_LPPe_SegmentedLIResume, OMA_LPPe_SegmentedLIResume_sequence); + + return offset; +} + + +static const per_sequence_t OMA_LPPe_CommonIEsRequestLocationInformation_sequence[] = { + { &hf_lppe_iP_Address_Request, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lppe_OMA_LPPe_IP_Address_Request }, + { &hf_lppe_locationInformationContainerRequest, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lppe_OMA_LPPe_LocationInformationContainerRequest }, + { &hf_lppe_requestPeriodicLocInfoWithUpdate, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lppe_OMA_LPPe_RequestPeriodicLocInfoWithUpdate }, + { &hf_lppe_relativeLocationChange_Request, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lppe_OMA_LPPe_RelativeLocationChange_Request }, + { &hf_lppe_localPositionRequest, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lppe_OMA_LPPe_LocalPositionRequest }, + { &hf_lppe_scheduledLocation_Request, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lppe_OMA_LPPe_ScheduledLocation_Request }, + { &hf_lppe_accessTypeRequest, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lppe_OMA_LPPe_AccessTypeRequest }, + { &hf_lppe_segmentedLIpreference, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lppe_T_segmentedLIpreference }, + { &hf_lppe_segmentedLIResume, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lppe_OMA_LPPe_SegmentedLIResume }, + { NULL, 0, 0, NULL } +}; + +static int +dissect_lppe_OMA_LPPe_CommonIEsRequestLocationInformation(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index, + ett_lppe_OMA_LPPe_CommonIEsRequestLocationInformation, OMA_LPPe_CommonIEsRequestLocationInformation_sequence); + + return offset; +} + + +static const value_string lppe_T_antennaInformationReq_vals[] = { + { 0, "antennaDescriptionOnly" }, + { 1, "antennaDescriptionAndOrientation" }, + { 0, NULL } +}; + + +static int +dissect_lppe_T_antennaInformationReq(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_enumerated(tvb, offset, actx, tree, hf_index, + 2, NULL, TRUE, 0, NULL); + + return offset; +} + + +static const per_sequence_t OMA_LPPe_AGNSS_HAgnssSignalReqElement_sequence[] = { + { &hf_lppe_gnssID , ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_lpp_GNSS_ID }, + { &hf_lppe_signals , ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_lpp_GNSS_SignalIDs }, + { NULL, 0, 0, NULL } +}; + +static int +dissect_lppe_OMA_LPPe_AGNSS_HAgnssSignalReqElement(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index, + ett_lppe_OMA_LPPe_AGNSS_HAgnssSignalReqElement, OMA_LPPe_AGNSS_HAgnssSignalReqElement_sequence); + + return offset; +} + + +static const per_sequence_t SEQUENCE_SIZE_1_16_OF_OMA_LPPe_AGNSS_HAgnssSignalReqElement_sequence_of[1] = { + { &hf_lppe_signalReqList_item, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lppe_OMA_LPPe_AGNSS_HAgnssSignalReqElement }, +}; + +static int +dissect_lppe_SEQUENCE_SIZE_1_16_OF_OMA_LPPe_AGNSS_HAgnssSignalReqElement(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_constrained_sequence_of(tvb, offset, actx, tree, hf_index, + ett_lppe_SEQUENCE_SIZE_1_16_OF_OMA_LPPe_AGNSS_HAgnssSignalReqElement, SEQUENCE_SIZE_1_16_OF_OMA_LPPe_AGNSS_HAgnssSignalReqElement_sequence_of, + 1, 16, FALSE); + + return offset; +} + + +static const per_sequence_t OMA_LPPe_AGNSS_HAgnssRequestControlParameters_sequence[] = { + { &hf_lppe_duration_03 , ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lppe_OMA_LPPe_Duration }, + { &hf_lppe_rate_01 , ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lppe_INTEGER_1_63 }, + { &hf_lppe_antennaInformationReq, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lppe_T_antennaInformationReq }, + { &hf_lppe_pressureInformationReq, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_lppe_BOOLEAN }, + { &hf_lppe_signalReqList , ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lppe_SEQUENCE_SIZE_1_16_OF_OMA_LPPe_AGNSS_HAgnssSignalReqElement }, + { NULL, 0, 0, NULL } +}; + +static int +dissect_lppe_OMA_LPPe_AGNSS_HAgnssRequestControlParameters(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index, + ett_lppe_OMA_LPPe_AGNSS_HAgnssRequestControlParameters, OMA_LPPe_AGNSS_HAgnssRequestControlParameters_sequence); + + return offset; +} + + +static const per_sequence_t OMA_LPPe_AGNSS_PositioningInstructions_sequence[] = { + { &hf_lppe_highAccuracyMethodRequested, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_lppe_BOOLEAN }, + { &hf_lppe_haGNSSreq , ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lppe_OMA_LPPe_AGNSS_HAgnssRequestControlParameters }, + { NULL, 0, 0, NULL } +}; + +static int +dissect_lppe_OMA_LPPe_AGNSS_PositioningInstructions(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index, + ett_lppe_OMA_LPPe_AGNSS_PositioningInstructions, OMA_LPPe_AGNSS_PositioningInstructions_sequence); + + return offset; +} + + + +static int +dissect_lppe_T_ionosphereMeasurementsReq(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_bit_string(tvb, offset, actx, tree, hf_index, + 1, 8, FALSE, NULL); + + return offset; +} + + +static const per_sequence_t OMA_LPPe_AGNSS_LocalSurfaceMeasurementReq_sequence[] = { + { NULL, ASN1_EXTENSION_ROOT, 0, NULL } +}; + +static int +dissect_lppe_OMA_LPPe_AGNSS_LocalSurfaceMeasurementReq(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index, + ett_lppe_OMA_LPPe_AGNSS_LocalSurfaceMeasurementReq, OMA_LPPe_AGNSS_LocalSurfaceMeasurementReq_sequence); + + return offset; +} + + +static const per_sequence_t OMA_LPPe_AGNSS_RequestLocationInformation_sequence[] = { + { &hf_lppe_positioningInstructions, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lppe_OMA_LPPe_AGNSS_PositioningInstructions }, + { &hf_lppe_ionosphereMeasurementsReq, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lppe_T_ionosphereMeasurementsReq }, + { &hf_lppe_localSurfaceMeasurementReq, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lppe_OMA_LPPe_AGNSS_LocalSurfaceMeasurementReq }, + { NULL, 0, 0, NULL } +}; + +static int +dissect_lppe_OMA_LPPe_AGNSS_RequestLocationInformation(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index, + ett_lppe_OMA_LPPe_AGNSS_RequestLocationInformation, OMA_LPPe_AGNSS_RequestLocationInformation_sequence); + + return offset; +} + + +static const per_sequence_t OMA_LPPe_OTDOA_RequestLocationInformation_sequence[] = { + { &hf_lppe_assistanceAvailability, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_lppe_BOOLEAN }, + { NULL, 0, 0, NULL } +}; + +static int +dissect_lppe_OMA_LPPe_OTDOA_RequestLocationInformation(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index, + ett_lppe_OMA_LPPe_OTDOA_RequestLocationInformation, OMA_LPPe_OTDOA_RequestLocationInformation_sequence); + + return offset; +} + + +static const per_sequence_t OMA_LPPe_EOTD_RequestLocationInformation_sequence[] = { + { NULL, ASN1_EXTENSION_ROOT, 0, NULL } +}; + +static int +dissect_lppe_OMA_LPPe_EOTD_RequestLocationInformation(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index, + ett_lppe_OMA_LPPe_EOTD_RequestLocationInformation, OMA_LPPe_EOTD_RequestLocationInformation_sequence); + + return offset; +} + + +static const per_sequence_t OMA_LPPe_OTDOA_UTRA_RequestLocationInformation_sequence[] = { + { NULL, ASN1_EXTENSION_ROOT, 0, NULL } +}; + +static int +dissect_lppe_OMA_LPPe_OTDOA_UTRA_RequestLocationInformation(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index, + ett_lppe_OMA_LPPe_OTDOA_UTRA_RequestLocationInformation, OMA_LPPe_OTDOA_UTRA_RequestLocationInformation_sequence); + + return offset; +} + + + +static int +dissect_lppe_T_requestedMeasurements(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_bit_string(tvb, offset, actx, tree, hf_index, + 1, 8, FALSE, NULL); + + return offset; +} + + +static const per_sequence_t OMA_LPPe_ECID_LTE_RequestLocationInformation_sequence[] = { + { &hf_lppe_requestedMeasurements, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_lppe_T_requestedMeasurements }, + { NULL, 0, 0, NULL } +}; + +static int +dissect_lppe_OMA_LPPe_ECID_LTE_RequestLocationInformation(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index, + ett_lppe_OMA_LPPe_ECID_LTE_RequestLocationInformation, OMA_LPPe_ECID_LTE_RequestLocationInformation_sequence); + + return offset; +} + + + +static int +dissect_lppe_T_requestedMeasurements_01(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_bit_string(tvb, offset, actx, tree, hf_index, + 1, 8, FALSE, NULL); + + return offset; +} + + +static const per_sequence_t OMA_LPPe_ECID_GSM_RequestLocationInformation_sequence[] = { + { &hf_lppe_requestedMeasurements_01, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_lppe_T_requestedMeasurements_01 }, + { NULL, 0, 0, NULL } +}; + +static int +dissect_lppe_OMA_LPPe_ECID_GSM_RequestLocationInformation(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index, + ett_lppe_OMA_LPPe_ECID_GSM_RequestLocationInformation, OMA_LPPe_ECID_GSM_RequestLocationInformation_sequence); + + return offset; +} + + + +static int +dissect_lppe_T_requestedMeasurements_02(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_bit_string(tvb, offset, actx, tree, hf_index, + 1, 16, FALSE, NULL); + + return offset; +} + + +static const per_sequence_t OMA_LPPe_ECID_UTRA_RequestLocationInformation_sequence[] = { + { &hf_lppe_requestedMeasurements_02, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_lppe_T_requestedMeasurements_02 }, + { NULL, 0, 0, NULL } +}; + +static int +dissect_lppe_OMA_LPPe_ECID_UTRA_RequestLocationInformation(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index, + ett_lppe_OMA_LPPe_ECID_UTRA_RequestLocationInformation, OMA_LPPe_ECID_UTRA_RequestLocationInformation_sequence); + + return offset; +} + + + +static int +dissect_lppe_T_requestedMeasurements_03(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_bit_string(tvb, offset, actx, tree, hf_index, + 1, 16, FALSE, NULL); + + return offset; +} + + +static const per_sequence_t OMA_LPPe_WLAN_AP_RequestLocationInformation_sequence[] = { + { &hf_lppe_requestedMeasurements_03, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_lppe_T_requestedMeasurements_03 }, + { NULL, 0, 0, NULL } +}; + +static int +dissect_lppe_OMA_LPPe_WLAN_AP_RequestLocationInformation(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index, + ett_lppe_OMA_LPPe_WLAN_AP_RequestLocationInformation, OMA_LPPe_WLAN_AP_RequestLocationInformation_sequence); + + return offset; +} + + + +static int +dissect_lppe_T_requestedMeasurements_04(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_bit_string(tvb, offset, actx, tree, hf_index, + 1, 16, FALSE, NULL); + + return offset; +} + + +static const per_sequence_t OMA_LPPe_ECID_WiMax_RequestLocationInformation_sequence[] = { + { &hf_lppe_requestedMeasurements_04, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_lppe_T_requestedMeasurements_04 }, + { NULL, 0, 0, NULL } +}; + +static int +dissect_lppe_OMA_LPPe_ECID_WiMax_RequestLocationInformation(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index, + ett_lppe_OMA_LPPe_ECID_WiMax_RequestLocationInformation, OMA_LPPe_ECID_WiMax_RequestLocationInformation_sequence); + + return offset; +} + + +static const per_sequence_t OMA_LPPe_Sensor_MotionStateRequest_sequence[] = { + { &hf_lppe_secondaryMotionStateRequest, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lppe_NULL }, + { NULL, 0, 0, NULL } +}; + +static int +dissect_lppe_OMA_LPPe_Sensor_MotionStateRequest(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index, + ett_lppe_OMA_LPPe_Sensor_MotionStateRequest, OMA_LPPe_Sensor_MotionStateRequest_sequence); + + return offset; +} + + +static const per_sequence_t OMA_LPPe_Sensor_RequestLocationInformation_sequence[] = { + { &hf_lppe_motionStateReq , ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lppe_OMA_LPPe_Sensor_MotionStateRequest }, + { NULL, 0, 0, NULL } +}; + +static int +dissect_lppe_OMA_LPPe_Sensor_RequestLocationInformation(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index, + ett_lppe_OMA_LPPe_Sensor_RequestLocationInformation, OMA_LPPe_Sensor_RequestLocationInformation_sequence); + + return offset; +} + + +static const value_string lppe_T_multipleMeasurements_vals[] = { + { 0, "forbidden" }, + { 1, "allowed" }, + { 2, "requested" }, + { 0, NULL } +}; + + +static int +dissect_lppe_T_multipleMeasurements(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_enumerated(tvb, offset, actx, tree, hf_index, + 3, NULL, TRUE, 0, NULL); + + return offset; +} + + +static const per_sequence_t OMA_LPPe_SRN_ReqLocInfo_Category_sequence[] = { + { &hf_lppe_category , ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_lppe_OMA_LPPe_SRN_Category }, + { &hf_lppe_multipleMeasurements, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lppe_T_multipleMeasurements }, + { &hf_lppe_allowedMeasurements, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lppe_OMA_LPPe_SRN_MeasurementMask }, + { &hf_lppe_historicMeasurementsRequested, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lppe_NULL }, + { NULL, 0, 0, NULL } +}; + +static int +dissect_lppe_OMA_LPPe_SRN_ReqLocInfo_Category(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index, + ett_lppe_OMA_LPPe_SRN_ReqLocInfo_Category, OMA_LPPe_SRN_ReqLocInfo_Category_sequence); + + return offset; +} + + +static const per_sequence_t SEQUENCE_SIZE_1_16_OF_OMA_LPPe_SRN_ReqLocInfo_Category_sequence_of[1] = { + { &hf_lppe_requestInfo_item, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lppe_OMA_LPPe_SRN_ReqLocInfo_Category }, +}; + +static int +dissect_lppe_SEQUENCE_SIZE_1_16_OF_OMA_LPPe_SRN_ReqLocInfo_Category(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_constrained_sequence_of(tvb, offset, actx, tree, hf_index, + ett_lppe_SEQUENCE_SIZE_1_16_OF_OMA_LPPe_SRN_ReqLocInfo_Category, SEQUENCE_SIZE_1_16_OF_OMA_LPPe_SRN_ReqLocInfo_Category_sequence_of, + 1, 16, FALSE); + + return offset; +} + + +static const per_sequence_t OMA_LPPe_SRN_RequestLocationInformation_sequence[] = { + { &hf_lppe_requestInfo , ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_lppe_SEQUENCE_SIZE_1_16_OF_OMA_LPPe_SRN_ReqLocInfo_Category }, + { NULL, 0, 0, NULL } +}; + +static int +dissect_lppe_OMA_LPPe_SRN_RequestLocationInformation(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index, + ett_lppe_OMA_LPPe_SRN_RequestLocationInformation, OMA_LPPe_SRN_RequestLocationInformation_sequence); + + return offset; +} + + +static const per_sequence_t OMA_LPPe_RequestLocationInformation_sequence[] = { + { &hf_lppe_commonIEsRequestLocationInformation, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lppe_OMA_LPPe_CommonIEsRequestLocationInformation }, + { &hf_lppe_agnss_RequestLocationInformation, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lppe_OMA_LPPe_AGNSS_RequestLocationInformation }, + { &hf_lppe_otdoa_RequestLocationInformation, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lppe_OMA_LPPe_OTDOA_RequestLocationInformation }, + { &hf_lppe_eotd_RequestLocationInformation, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lppe_OMA_LPPe_EOTD_RequestLocationInformation }, + { &hf_lppe_otdoa_utra_RequestLocationInformation, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lppe_OMA_LPPe_OTDOA_UTRA_RequestLocationInformation }, + { &hf_lppe_ecid_lte_RequestLocationInformation, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lppe_OMA_LPPe_ECID_LTE_RequestLocationInformation }, + { &hf_lppe_ecid_gsm_RequestLocationInformation, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lppe_OMA_LPPe_ECID_GSM_RequestLocationInformation }, + { &hf_lppe_ecid_utra_RequestLocationInformation, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lppe_OMA_LPPe_ECID_UTRA_RequestLocationInformation }, + { &hf_lppe_wlan_ap_RequestLocationInformation, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lppe_OMA_LPPe_WLAN_AP_RequestLocationInformation }, + { &hf_lppe_ecid_wimax_RequestLocationInformation, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lppe_OMA_LPPe_ECID_WiMax_RequestLocationInformation }, + { &hf_lppe_sensor_RequestLocationInformation, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lppe_OMA_LPPe_Sensor_RequestLocationInformation }, + { &hf_lppe_srn_RequestLocationInformation, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lppe_OMA_LPPe_SRN_RequestLocationInformation }, + { NULL, 0, 0, NULL } +}; + +static int +dissect_lppe_OMA_LPPe_RequestLocationInformation(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index, + ett_lppe_OMA_LPPe_RequestLocationInformation, OMA_LPPe_RequestLocationInformation_sequence); + + return offset; +} + + +static const per_sequence_t OMA_LPPe_LocalPosition_sequence[] = { + { &hf_lppe_referencePoint , ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_lppe_OMA_LPPe_ReferencePointUniqueID }, + { &hf_lppe_subjectLocation, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lppe_OMA_LPPe_RelativeLocation }, + { NULL, 0, 0, NULL } +}; + +static int +dissect_lppe_OMA_LPPe_LocalPosition(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index, + ett_lppe_OMA_LPPe_LocalPosition, OMA_LPPe_LocalPosition_sequence); + + return offset; +} + + +static const per_sequence_t OMA_LPPe_HighAccuracy3Dvelocity_sequence[] = { + { &hf_lppe_enu_origin , ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lppe_OMA_LPPe_HighAccuracy3Dposition }, + { &hf_lppe_east_component , ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_lppe_INTEGER_0_511 }, + { &hf_lppe_negative_sign_east, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lppe_NULL }, + { &hf_lppe_north_component, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_lppe_INTEGER_0_511 }, + { &hf_lppe_negative_sign_north, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lppe_NULL }, + { &hf_lppe_up_component , ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_lppe_INTEGER_0_511 }, + { &hf_lppe_negative_sign_up, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lppe_NULL }, + { &hf_lppe_cep , ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lppe_INTEGER_0_255 }, + { &hf_lppe_uncertainty_semimajor, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lppe_INTEGER_0_255 }, + { &hf_lppe_uncertainty_semiminor, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lppe_INTEGER_0_255 }, + { &hf_lppe_offset_angle , ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lppe_INTEGER_0_179 }, + { &hf_lppe_confidenceHorizontal, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lppe_INTEGER_0_99 }, + { &hf_lppe_uncertainty_up_component, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_lppe_INTEGER_0_255 }, + { &hf_lppe_confidenceUp , ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lppe_INTEGER_0_99 }, + { NULL, 0, 0, NULL } +}; + +static int +dissect_lppe_OMA_LPPe_HighAccuracy3Dvelocity(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index, + ett_lppe_OMA_LPPe_HighAccuracy3Dvelocity, OMA_LPPe_HighAccuracy3Dvelocity_sequence); + + return offset; +} + + + +static int +dissect_lppe_BIT_STRING_SIZE_128(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_bit_string(tvb, offset, actx, tree, hf_index, + 128, 128, FALSE, NULL); + + return offset; +} + + +static const value_string lppe_T_local_IP_Address_vals[] = { + { 0, "iPv4" }, + { 1, "iPv6" }, + { 0, NULL } +}; + +static const per_choice_t T_local_IP_Address_choice[] = { + { 0, &hf_lppe_iPv4 , ASN1_EXTENSION_ROOT , dissect_lppe_BIT_STRING_SIZE_32 }, + { 1, &hf_lppe_iPv6 , ASN1_EXTENSION_ROOT , dissect_lppe_BIT_STRING_SIZE_128 }, + { 0, NULL, 0, NULL } +}; + +static int +dissect_lppe_T_local_IP_Address(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_choice(tvb, offset, actx, tree, hf_index, + ett_lppe_T_local_IP_Address, T_local_IP_Address_choice, + NULL); + + return offset; +} + + +static const value_string lppe_OMA_LPPe_Bearer_vals[] = { + { 0, "unknown" }, + { 1, "gsm" }, + { 2, "utran" }, + { 3, "lte" }, + { 4, "wlan" }, + { 5, "wimax" }, + { 6, "dsl" }, + { 7, "pktcable" }, + { 8, "other" }, + { 0, NULL } +}; + + +static int +dissect_lppe_OMA_LPPe_Bearer(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_enumerated(tvb, offset, actx, tree, hf_index, + 9, NULL, TRUE, 0, NULL); + + return offset; +} + + +static const per_sequence_t OMA_LPPe_IP_Address_sequence[] = { + { &hf_lppe_local_IP_Address, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_lppe_T_local_IP_Address }, + { &hf_lppe_bearer , ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_lppe_OMA_LPPe_Bearer }, + { &hf_lppe_nat , ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lppe_BOOLEAN }, + { NULL, 0, 0, NULL } +}; + +static int +dissect_lppe_OMA_LPPe_IP_Address(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index, + ett_lppe_OMA_LPPe_IP_Address, OMA_LPPe_IP_Address_sequence); + + return offset; +} + + +static const per_sequence_t OMA_LPPe_IP_Address_List_sequence_of[1] = { + { &hf_lppe_OMA_LPPe_IP_Address_List_item, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lppe_OMA_LPPe_IP_Address }, +}; + +static int +dissect_lppe_OMA_LPPe_IP_Address_List(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_constrained_sequence_of(tvb, offset, actx, tree, hf_index, + ett_lppe_OMA_LPPe_IP_Address_List, OMA_LPPe_IP_Address_List_sequence_of, + 1, maxIPAddress, FALSE); + + return offset; +} + + +static const per_sequence_t OMA_LPPe_LocationInformationContainerData_sequence[] = { + { &hf_lppe_containerID_01 , ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_lppe_OMA_LPPe_LocationInformationContainerID }, + { &hf_lppe_containerData , ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_lppe_OCTET_STRING }, + { NULL, 0, 0, NULL } +}; + +static int +dissect_lppe_OMA_LPPe_LocationInformationContainerData(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index, + ett_lppe_OMA_LPPe_LocationInformationContainerData, OMA_LPPe_LocationInformationContainerData_sequence); + + return offset; +} + + +static const per_sequence_t OMA_LPPe_LocationInformationContainerDataList_sequence_of[1] = { + { &hf_lppe_OMA_LPPe_LocationInformationContainerDataList_item, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lppe_OMA_LPPe_LocationInformationContainerData }, +}; + +static int +dissect_lppe_OMA_LPPe_LocationInformationContainerDataList(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_constrained_sequence_of(tvb, offset, actx, tree, hf_index, + ett_lppe_OMA_LPPe_LocationInformationContainerDataList, OMA_LPPe_LocationInformationContainerDataList_sequence_of, + 1, maxLocationInformationContainerDataList, FALSE); + + return offset; +} + + +static const per_sequence_t OMA_LPPe_LocationInformationContainer_sequence[] = { + { &hf_lppe_vendorOrOperatorID, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_lppe_OMA_LPPe_VendorOrOperatorID }, + { &hf_lppe_locationInformationContainerDataList, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_lppe_OMA_LPPe_LocationInformationContainerDataList }, + { NULL, 0, 0, NULL } +}; + +static int +dissect_lppe_OMA_LPPe_LocationInformationContainer(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index, + ett_lppe_OMA_LPPe_LocationInformationContainer, OMA_LPPe_LocationInformationContainer_sequence); + + return offset; +} + + +static const value_string lppe_OMA_LPPe_TypeOfLocInfoProvide_vals[] = { + { 0, "responseToInitialRequest" }, + { 1, "providePeriodicLocInfo" }, + { 2, "responseToServerUpdateRequest" }, + { 3, "targetUpdate" }, + { 0, NULL } +}; + + +static int +dissect_lppe_OMA_LPPe_TypeOfLocInfoProvide(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_enumerated(tvb, offset, actx, tree, hf_index, + 4, NULL, TRUE, 0, NULL); + + return offset; +} + + +static const per_sequence_t OMA_LPPe_ProvidePeriodicLocInfowithUpdate_sequence[] = { + { &hf_lppe_session_ID_01 , ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_lppe_INTEGER_1_256 }, + { &hf_lppe_typeOfLocInfoProvide, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_lppe_OMA_LPPe_TypeOfLocInfoProvide }, + { NULL, 0, 0, NULL } +}; + +static int +dissect_lppe_OMA_LPPe_ProvidePeriodicLocInfowithUpdate(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index, + ett_lppe_OMA_LPPe_ProvidePeriodicLocInfowithUpdate, OMA_LPPe_ProvidePeriodicLocInfowithUpdate_sequence); + + return offset; +} + + +static const per_sequence_t OMA_LPPe_RelativeLocationChange_sequence[] = { + { &hf_lppe_relativeTime_01, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lppe_INTEGER_0_65535 }, + { &hf_lppe_transactionID , ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lppe_INTEGER_0_255 }, + { &hf_lppe_relativeLocation, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_lppe_OMA_LPPe_RelativeLocation }, + { NULL, 0, 0, NULL } +}; + +static int +dissect_lppe_OMA_LPPe_RelativeLocationChange(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index, + ett_lppe_OMA_LPPe_RelativeLocationChange, OMA_LPPe_RelativeLocationChange_sequence); + + return offset; +} + + +static const per_sequence_t OMA_LPPe_RelativeLocationChangeList_sequence_of[1] = { + { &hf_lppe_OMA_LPPe_RelativeLocationChangeList_item, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lppe_OMA_LPPe_RelativeLocationChange }, +}; + +static int +dissect_lppe_OMA_LPPe_RelativeLocationChangeList(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_constrained_sequence_of(tvb, offset, actx, tree, hf_index, + ett_lppe_OMA_LPPe_RelativeLocationChangeList, OMA_LPPe_RelativeLocationChangeList_sequence_of, + 1, maxRelativeLocation, FALSE); + + return offset; +} + + +static const value_string lppe_T_disposition_vals[] = { + { 0, "withinWindow" }, + { 1, "outsideWindowOrNoWindow" }, + { 2, "notSupportedDueToNoCapability" }, + { 3, "notSupportedDueToNoTimeReference" }, + { 4, "notSupportedDueToConflictWithAnotherRequest" }, + { 5, "notSupportedForOtherReasons" }, + { 0, NULL } +}; + + +static int +dissect_lppe_T_disposition(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_enumerated(tvb, offset, actx, tree, hf_index, + 6, NULL, TRUE, 0, NULL); + + return offset; +} + + + +static int +dissect_lppe_INTEGER_M512_511(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index, + -512, 511U, NULL, FALSE); + + return offset; +} + + + +static int +dissect_lppe_INTEGER_0_2047(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index, + 0U, 2047U, NULL, FALSE); + + return offset; +} + + +static const per_sequence_t T_actualWindow_sequence[] = { + { &hf_lppe_start , ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lppe_INTEGER_M512_511 }, + { &hf_lppe_duration_02 , ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lppe_INTEGER_0_2047 }, + { NULL, 0, 0, NULL } +}; + +static int +dissect_lppe_T_actualWindow(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index, + ett_lppe_T_actualWindow, T_actualWindow_sequence); + + return offset; +} + + +static const per_sequence_t OMA_LPPe_ScheduledLocation_sequence[] = { + { &hf_lppe_disposition , ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_lppe_T_disposition }, + { &hf_lppe_actualWindow , ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lppe_T_actualWindow }, + { NULL, 0, 0, NULL } +}; + +static int +dissect_lppe_OMA_LPPe_ScheduledLocation(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index, + ett_lppe_OMA_LPPe_ScheduledLocation, OMA_LPPe_ScheduledLocation_sequence); + + return offset; +} + + +static const per_sequence_t OMA_LPPe_AccessTypes_sequence[] = { + { &hf_lppe_accessTypeUnknown, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lppe_NULL }, + { &hf_lppe_fixedAccessTypes, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lppe_OMA_LPPe_FixedAccessTypes }, + { &hf_lppe_wirelessAccessTypes, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lppe_OMA_LPPe_WirelessAccessTypes }, + { NULL, 0, 0, NULL } +}; + +static int +dissect_lppe_OMA_LPPe_AccessTypes(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index, + ett_lppe_OMA_LPPe_AccessTypes, OMA_LPPe_AccessTypes_sequence); + + return offset; +} + + +static const per_sequence_t OMA_LPPe_SegmentedLITransfer_sequence[] = { + { &hf_lppe_segmentedLI_session_ID, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_lppe_INTEGER_1_256 }, + { &hf_lppe_segment_number , ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_lppe_INTEGER_1_4096 }, + { NULL, 0, 0, NULL } +}; + +static int +dissect_lppe_OMA_LPPe_SegmentedLITransfer(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index, + ett_lppe_OMA_LPPe_SegmentedLITransfer, OMA_LPPe_SegmentedLITransfer_sequence); + + return offset; +} + + + +static int +dissect_lppe_INTEGER_0_1024(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index, + 0U, 1024U, NULL, FALSE); + + return offset; +} + + +static const value_string lppe_OMA_LPPe_TimeStamp_vals[] = { + { 0, "gnssTime" }, + { 1, "networkTime" }, + { 2, "relativeTime" }, + { 0, NULL } +}; + +static const per_choice_t OMA_LPPe_TimeStamp_choice[] = { + { 0, &hf_lppe_gnssTime , ASN1_EXTENSION_ROOT , dissect_lpp_GNSS_SystemTime }, + { 1, &hf_lppe_networkTime , ASN1_EXTENSION_ROOT , dissect_lpp_NetworkTime }, + { 2, &hf_lppe_relativeTime_02, ASN1_EXTENSION_ROOT , dissect_lppe_INTEGER_0_1024 }, + { 0, NULL, 0, NULL } +}; + +static int +dissect_lppe_OMA_LPPe_TimeStamp(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_choice(tvb, offset, actx, tree, hf_index, + ett_lppe_OMA_LPPe_TimeStamp, OMA_LPPe_TimeStamp_choice, + NULL); + + return offset; +} + + +static const per_sequence_t OMA_LPPe_CommonIEsProvideLocationInformation_sequence[] = { + { &hf_lppe_highAccuracy3Dposition, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lppe_OMA_LPPe_HighAccuracy3Dposition }, + { &hf_lppe_localPosition , ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lppe_OMA_LPPe_LocalPosition }, + { &hf_lppe_highAccuracy3Dvelocity, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lppe_OMA_LPPe_HighAccuracy3Dvelocity }, + { &hf_lppe_iP_Address_List, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lppe_OMA_LPPe_IP_Address_List }, + { &hf_lppe_locationInformationContainer, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lppe_OMA_LPPe_LocationInformationContainer }, + { &hf_lppe_providePeriodicLocInfoWithUpdate, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lppe_OMA_LPPe_ProvidePeriodicLocInfowithUpdate }, + { &hf_lppe_relativeLocationChangeList, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lppe_OMA_LPPe_RelativeLocationChangeList }, + { &hf_lppe_scheduledLocation, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lppe_OMA_LPPe_ScheduledLocation }, + { &hf_lppe_accessTypes , ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lppe_OMA_LPPe_AccessTypes }, + { &hf_lppe_segmentedLITransfer, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lppe_OMA_LPPe_SegmentedLITransfer }, + { &hf_lppe_locationInformationTimeStamp, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lppe_OMA_LPPe_TimeStamp }, + { NULL, 0, 0, NULL } +}; + +static int +dissect_lppe_OMA_LPPe_CommonIEsProvideLocationInformation(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index, + ett_lppe_OMA_LPPe_CommonIEsProvideLocationInformation, OMA_LPPe_CommonIEsProvideLocationInformation_sequence); + + return offset; +} + + +static const per_sequence_t T_controlParameters_sequence[] = { + { &hf_lppe_duration_03 , ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_lppe_OMA_LPPe_Duration }, + { &hf_lppe_rate , ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_lppe_INTEGER_1_64 }, + { &hf_lppe_antennaDescription, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lppe_OMA_LPPe_AGNSS_AntennaDescription }, + { NULL, 0, 0, NULL } +}; + +static int +dissect_lppe_T_controlParameters(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index, + ett_lppe_T_controlParameters, T_controlParameters_sequence); + + return offset; +} + + +static const per_sequence_t T_localPressure_sequence[] = { + { &hf_lppe_pressure , ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_lppe_INTEGER_M1024_1023 }, + { &hf_lppe_pressureUncertainty, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_lppe_INTEGER_0_127 }, + { NULL, 0, 0, NULL } +}; + +static int +dissect_lppe_T_localPressure(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index, + ett_lppe_T_localPressure, T_localPressure_sequence); + + return offset; +} + + +static const value_string lppe_T_multipathDetection_vals[] = { + { 0, "low" }, + { 1, "moderate" }, + { 2, "high" }, + { 3, "notMeasured" }, + { 0, NULL } +}; + + +static int +dissect_lppe_T_multipathDetection(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_enumerated(tvb, offset, actx, tree, hf_index, + 4, NULL, TRUE, 0, NULL); + + return offset; +} + + + +static int +dissect_lppe_INTEGER_0_536870911(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index, + 0U, 536870911U, NULL, FALSE); + + return offset; +} + + +static const per_sequence_t OMA_LPPe_HAgnssPerSVelement_sequence[] = { + { &hf_lppe_svID , ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_lpp_SV_ID }, + { &hf_lppe_integerCodePhase, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lppe_INTEGER_0_255 }, + { &hf_lppe_codePhase , ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_lppe_INTEGER_0_14989622 }, + { &hf_lppe_codePhaseRMSError, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_lppe_INTEGER_0_63 }, + { &hf_lppe_multipathDetection, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_lppe_T_multipathDetection }, + { &hf_lppe_cnr , ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_lppe_INTEGER_0_255 }, + { &hf_lppe_adr , ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_lppe_INTEGER_0_536870911 }, + { &hf_lppe_adrRMSerror , ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_lppe_INTEGER_0_127 }, + { &hf_lppe_lockIndicator , ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_lppe_BOOLEAN }, + { NULL, 0, 0, NULL } +}; + +static int +dissect_lppe_OMA_LPPe_HAgnssPerSVelement(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index, + ett_lppe_OMA_LPPe_HAgnssPerSVelement, OMA_LPPe_HAgnssPerSVelement_sequence); + + return offset; +} + + +static const per_sequence_t SEQUENCE_SIZE_1_64_OF_OMA_LPPe_HAgnssPerSVelement_sequence_of[1] = { + { &hf_lppe_haGNSSperSVlist_item, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lppe_OMA_LPPe_HAgnssPerSVelement }, +}; + +static int +dissect_lppe_SEQUENCE_SIZE_1_64_OF_OMA_LPPe_HAgnssPerSVelement(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_constrained_sequence_of(tvb, offset, actx, tree, hf_index, + ett_lppe_SEQUENCE_SIZE_1_64_OF_OMA_LPPe_HAgnssPerSVelement, SEQUENCE_SIZE_1_64_OF_OMA_LPPe_HAgnssPerSVelement_sequence_of, + 1, 64, FALSE); + + return offset; +} + + +static const per_sequence_t OMA_LPPe_HAgnssPerSignalElement_sequence[] = { + { &hf_lppe_signal_ID , ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_lpp_GNSS_SignalID }, + { &hf_lppe_haGNSSperSVlist, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_lppe_SEQUENCE_SIZE_1_64_OF_OMA_LPPe_HAgnssPerSVelement }, + { NULL, 0, 0, NULL } +}; + +static int +dissect_lppe_OMA_LPPe_HAgnssPerSignalElement(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index, + ett_lppe_OMA_LPPe_HAgnssPerSignalElement, OMA_LPPe_HAgnssPerSignalElement_sequence); + + return offset; +} + + +static const per_sequence_t SEQUENCE_SIZE_1_8_OF_OMA_LPPe_HAgnssPerSignalElement_sequence_of[1] = { + { &hf_lppe_haGNSSperSignalList_item, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lppe_OMA_LPPe_HAgnssPerSignalElement }, +}; + +static int +dissect_lppe_SEQUENCE_SIZE_1_8_OF_OMA_LPPe_HAgnssPerSignalElement(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_constrained_sequence_of(tvb, offset, actx, tree, hf_index, + ett_lppe_SEQUENCE_SIZE_1_8_OF_OMA_LPPe_HAgnssPerSignalElement, SEQUENCE_SIZE_1_8_OF_OMA_LPPe_HAgnssPerSignalElement_sequence_of, + 1, 8, FALSE); + + return offset; +} + + +static const per_sequence_t OMA_LPPe_AGNSS_HAgnssMeasurementElement_sequence[] = { + { &hf_lppe_gnss_ID , ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_lpp_GNSS_ID }, + { &hf_lppe_haGNSSperSignalList, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_lppe_SEQUENCE_SIZE_1_8_OF_OMA_LPPe_HAgnssPerSignalElement }, + { NULL, 0, 0, NULL } +}; + +static int +dissect_lppe_OMA_LPPe_AGNSS_HAgnssMeasurementElement(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index, + ett_lppe_OMA_LPPe_AGNSS_HAgnssMeasurementElement, OMA_LPPe_AGNSS_HAgnssMeasurementElement_sequence); + + return offset; +} + + +static const per_sequence_t SEQUENCE_SIZE_1_16_OF_OMA_LPPe_AGNSS_HAgnssMeasurementElement_sequence_of[1] = { + { &hf_lppe_signalMeasurements_item, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lppe_OMA_LPPe_AGNSS_HAgnssMeasurementElement }, +}; + +static int +dissect_lppe_SEQUENCE_SIZE_1_16_OF_OMA_LPPe_AGNSS_HAgnssMeasurementElement(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_constrained_sequence_of(tvb, offset, actx, tree, hf_index, + ett_lppe_SEQUENCE_SIZE_1_16_OF_OMA_LPPe_AGNSS_HAgnssMeasurementElement, SEQUENCE_SIZE_1_16_OF_OMA_LPPe_AGNSS_HAgnssMeasurementElement_sequence_of, + 1, 16, FALSE); + + return offset; +} + + +static const per_sequence_t T_measurements_sequence[] = { + { &hf_lppe_position , ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lpp_EllipsoidPointWithAltitudeAndUncertaintyEllipsoid }, + { &hf_lppe_referenceTime , ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_lpp_GNSS_SystemTime }, + { &hf_lppe_localPressure , ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lppe_T_localPressure }, + { &hf_lppe_antennaOrientation, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lppe_OMA_LPPe_Orientation }, + { &hf_lppe_signalMeasurements, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_lppe_SEQUENCE_SIZE_1_16_OF_OMA_LPPe_AGNSS_HAgnssMeasurementElement }, + { NULL, 0, 0, NULL } +}; + +static int +dissect_lppe_T_measurements(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index, + ett_lppe_T_measurements, T_measurements_sequence); + + return offset; +} + + +static const value_string lppe_OMA_LPPe_AGNSS_HAgnssProvide_vals[] = { + { 0, "controlParameters" }, + { 1, "measurements" }, + { 0, NULL } +}; + +static const per_choice_t OMA_LPPe_AGNSS_HAgnssProvide_choice[] = { + { 0, &hf_lppe_controlParameters_01, ASN1_EXTENSION_ROOT , dissect_lppe_T_controlParameters }, + { 1, &hf_lppe_measurements , ASN1_EXTENSION_ROOT , dissect_lppe_T_measurements }, + { 0, NULL, 0, NULL } +}; + +static int +dissect_lppe_OMA_LPPe_AGNSS_HAgnssProvide(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_choice(tvb, offset, actx, tree, hf_index, + ett_lppe_OMA_LPPe_AGNSS_HAgnssProvide, OMA_LPPe_AGNSS_HAgnssProvide_choice, + NULL); + + return offset; +} + + + +static int +dissect_lppe_INTEGER_0_90(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index, + 0U, 90U, NULL, FALSE); + + return offset; +} + + +static const per_sequence_t OMA_LPPe_AGNSS_TECPerSVElement_sequence[] = { + { &hf_lppe_azimuth , ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_lppe_INTEGER_0_359 }, + { &hf_lppe_elevation , ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_lppe_INTEGER_0_90 }, + { &hf_lppe_tecValue , ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_lppe_INTEGER_0_511 }, + { &hf_lppe_tecUncertainty , ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_lppe_INTEGER_0_63 }, + { NULL, 0, 0, NULL } +}; + +static int +dissect_lppe_OMA_LPPe_AGNSS_TECPerSVElement(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index, + ett_lppe_OMA_LPPe_AGNSS_TECPerSVElement, OMA_LPPe_AGNSS_TECPerSVElement_sequence); + + return offset; +} + + +static const per_sequence_t OMA_LPPe_AGNSS_TECPerSV_sequence_of[1] = { + { &hf_lppe_OMA_LPPe_AGNSS_TECPerSV_item, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lppe_OMA_LPPe_AGNSS_TECPerSVElement }, +}; + +static int +dissect_lppe_OMA_LPPe_AGNSS_TECPerSV(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_constrained_sequence_of(tvb, offset, actx, tree, hf_index, + ett_lppe_OMA_LPPe_AGNSS_TECPerSV, OMA_LPPe_AGNSS_TECPerSV_sequence_of, + 1, 64, FALSE); + + return offset; +} + + +static const per_sequence_t OMA_LPPe_AGNSS_TECAtZenith_sequence[] = { + { &hf_lppe_tecValueAtZenith, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_lppe_INTEGER_0_511 }, + { &hf_lppe_tecUncertaintyAtZenith, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_lppe_INTEGER_0_63 }, + { NULL, 0, 0, NULL } +}; + +static int +dissect_lppe_OMA_LPPe_AGNSS_TECAtZenith(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index, + ett_lppe_OMA_LPPe_AGNSS_TECAtZenith, OMA_LPPe_AGNSS_TECAtZenith_sequence); + + return offset; +} + + +static const per_sequence_t OMA_LPPe_AGNSS_IonosphereMeasurements_sequence[] = { + { &hf_lppe_gnssTime , ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_lpp_GNSS_SystemTime }, + { &hf_lppe_position , ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_lpp_EllipsoidPointWithAltitudeAndUncertaintyEllipsoid }, + { &hf_lppe_tecPerSV , ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lppe_OMA_LPPe_AGNSS_TECPerSV }, + { &hf_lppe_tecAtZenith , ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lppe_OMA_LPPe_AGNSS_TECAtZenith }, + { NULL, 0, 0, NULL } +}; + +static int +dissect_lppe_OMA_LPPe_AGNSS_IonosphereMeasurements(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index, + ett_lppe_OMA_LPPe_AGNSS_IonosphereMeasurements, OMA_LPPe_AGNSS_IonosphereMeasurements_sequence); + + return offset; +} + + +static const per_sequence_t T_temperatureMeasurement_sequence[] = { + { &hf_lppe_temperature , ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lppe_INTEGER_M64_63 }, + { &hf_lppe_temperatureUncertainty, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lppe_INTEGER_0_7 }, + { NULL, 0, 0, NULL } +}; + +static int +dissect_lppe_T_temperatureMeasurement(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index, + ett_lppe_T_temperatureMeasurement, T_temperatureMeasurement_sequence); + + return offset; +} + + +static const per_sequence_t OMA_LPPe_AGNSS_LocalSurfaceMeasurements_sequence[] = { + { &hf_lppe_gnssTime , ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_lpp_GNSS_SystemTime }, + { &hf_lppe_position , ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_lpp_EllipsoidPointWithAltitudeAndUncertaintyEllipsoid }, + { &hf_lppe_pressure , ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_lppe_INTEGER_M1024_1023 }, + { &hf_lppe_pressureUncertainty, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_lppe_INTEGER_0_127 }, + { &hf_lppe_temperatureMeasurement, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lppe_T_temperatureMeasurement }, + { NULL, 0, 0, NULL } +}; + +static int +dissect_lppe_OMA_LPPe_AGNSS_LocalSurfaceMeasurements(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index, + ett_lppe_OMA_LPPe_AGNSS_LocalSurfaceMeasurements, OMA_LPPe_AGNSS_LocalSurfaceMeasurements_sequence); + + return offset; +} + + +static const per_sequence_t OMA_LPPe_AGNSS_ProvideLocationInformation_sequence[] = { + { &hf_lppe_highAccuracyReferenceTime, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lpp_GNSS_SystemTime }, + { &hf_lppe_highAccuracyMeasurements, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lppe_OMA_LPPe_AGNSS_HAgnssProvide }, + { &hf_lppe_ionosphereMeasurements, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lppe_OMA_LPPe_AGNSS_IonosphereMeasurements }, + { &hf_lppe_localSurfaceMeasurements, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lppe_OMA_LPPe_AGNSS_LocalSurfaceMeasurements }, + { &hf_lppe_error_01 , ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lppe_OMA_LPPe_AGNSS_Error }, + { NULL, 0, 0, NULL } +}; + +static int +dissect_lppe_OMA_LPPe_AGNSS_ProvideLocationInformation(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index, + ett_lppe_OMA_LPPe_AGNSS_ProvideLocationInformation, OMA_LPPe_AGNSS_ProvideLocationInformation_sequence); + + return offset; +} + + +static const per_sequence_t OMA_LPPe_OTDOA_LocationInformation_sequence[] = { + { &hf_lppe_systemFrameNumber, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_lppe_BIT_STRING_SIZE_10 }, + { &hf_lppe_physCellId , ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_lppe_INTEGER_0_503 }, + { &hf_lppe_cellGlobalId , ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lpp_CellGlobalIdEUTRA_AndUTRA }, + { NULL, 0, 0, NULL } +}; + +static int +dissect_lppe_OMA_LPPe_OTDOA_LocationInformation(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index, + ett_lppe_OMA_LPPe_OTDOA_LocationInformation, OMA_LPPe_OTDOA_LocationInformation_sequence); + + return offset; +} + + +static const per_sequence_t OMA_LPPe_OTDOA_ProvideLocationInformation_sequence[] = { + { &hf_lppe_otdoaLocationInformation, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lppe_OMA_LPPe_OTDOA_LocationInformation }, + { &hf_lppe_otdoaError , ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lppe_OMA_LPPe_OTDOA_Error }, + { NULL, 0, 0, NULL } +}; + +static int +dissect_lppe_OMA_LPPe_OTDOA_ProvideLocationInformation(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index, + ett_lppe_OMA_LPPe_OTDOA_ProvideLocationInformation, OMA_LPPe_OTDOA_ProvideLocationInformation_sequence); + + return offset; +} + + + +static int +dissect_lppe_INTEGER_0_42431(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index, + 0U, 42431U, NULL, FALSE); + + return offset; +} + + + +static int +dissect_lppe_OMA_LPPe_EOTD_ModuloTimeSlot(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index, + 0U, 3U, NULL, FALSE); + + return offset; +} + + + +static int +dissect_lppe_BIT_STRING_SIZE_5(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_bit_string(tvb, offset, actx, tree, hf_index, + 5, 5, FALSE, NULL); + + return offset; +} + + + +static int +dissect_lppe_BIT_STRING_SIZE_3(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_bit_string(tvb, offset, actx, tree, hf_index, + 3, 3, FALSE, NULL); + + return offset; +} + + +static const per_sequence_t OMA_LPPe_EOTD_TOA_MeasurementsOfRef_sequence[] = { + { &hf_lppe_refQuality , ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_lppe_BIT_STRING_SIZE_5 }, + { &hf_lppe_numOfMeasurements, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_lppe_BIT_STRING_SIZE_3 }, + { NULL, 0, 0, NULL } +}; + +static int +dissect_lppe_OMA_LPPe_EOTD_TOA_MeasurementsOfRef(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index, + ett_lppe_OMA_LPPe_EOTD_TOA_MeasurementsOfRef, OMA_LPPe_EOTD_TOA_MeasurementsOfRef_sequence); + + return offset; +} + + + +static int +dissect_lppe_BIT_STRING_SIZE_2(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_bit_string(tvb, offset, actx, tree, hf_index, + 2, 2, FALSE, NULL); + + return offset; +} + + + +static int +dissect_lppe_INTEGER_0_960(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index, + 0U, 960U, NULL, FALSE); + + return offset; +} + + + +static int +dissect_lppe_OMA_LPPe_EOTD_CellID(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index, + 0U, 65535U, NULL, FALSE); + + return offset; +} + + + +static int +dissect_lppe_OMA_LPPe_EOTD_BCCHCarrier(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index, + 0U, 1023U, NULL, FALSE); + + return offset; +} + + +static const per_sequence_t OMA_LPPe_EOTD_MultiFrameCarrier_sequence[] = { + { &hf_lppe_bcchCarrier , ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_lppe_OMA_LPPe_EOTD_BCCHCarrier }, + { &hf_lppe_multiFrameOffset, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_lppe_OMA_LPPe_EOTD_MultiFrameOffset }, + { NULL, 0, 0, NULL } +}; + +static int +dissect_lppe_OMA_LPPe_EOTD_MultiFrameCarrier(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index, + ett_lppe_OMA_LPPe_EOTD_MultiFrameCarrier, OMA_LPPe_EOTD_MultiFrameCarrier_sequence); + + return offset; +} + + + +static int +dissect_lppe_OMA_LPPe_EOTD_RequestIndex(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index, + 1U, 16U, NULL, FALSE); + + return offset; +} + + + +static int +dissect_lppe_OMA_LPPe_EOTD_SystemInfoIndex(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index, + 1U, 32U, NULL, FALSE); + + return offset; +} + + +static const value_string lppe_OMA_LPPe_EOTD_NeighborIdentity_vals[] = { + { 0, "bsicAndCarrier" }, + { 1, "ci" }, + { 2, "multiFrameCarrier" }, + { 3, "requestIndex" }, + { 4, "systemInfoIndex" }, + { 5, "ciAndLac" }, + { 0, NULL } +}; + +static const per_choice_t OMA_LPPe_EOTD_NeighborIdentity_choice[] = { + { 0, &hf_lppe_bsicAndCarrier , ASN1_EXTENSION_ROOT , dissect_lppe_OMA_LPPe_CellNonUniqueIDGERAN }, + { 1, &hf_lppe_ci , ASN1_EXTENSION_ROOT , dissect_lppe_OMA_LPPe_EOTD_CellID }, + { 2, &hf_lppe_multiFrameCarrier, ASN1_EXTENSION_ROOT , dissect_lppe_OMA_LPPe_EOTD_MultiFrameCarrier }, + { 3, &hf_lppe_requestIndex , ASN1_EXTENSION_ROOT , dissect_lppe_OMA_LPPe_EOTD_RequestIndex }, + { 4, &hf_lppe_systemInfoIndex, ASN1_EXTENSION_ROOT , dissect_lppe_OMA_LPPe_EOTD_SystemInfoIndex }, + { 5, &hf_lppe_ciAndLac , ASN1_EXTENSION_ROOT , dissect_lppe_OMA_LPPe_CellLocalIdGERAN }, + { 0, NULL, 0, NULL } +}; + +static int +dissect_lppe_OMA_LPPe_EOTD_NeighborIdentity(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_choice(tvb, offset, actx, tree, hf_index, + ett_lppe_OMA_LPPe_EOTD_NeighborIdentity, OMA_LPPe_EOTD_NeighborIdentity_choice, + NULL); + + return offset; +} + + +static const per_sequence_t OMA_LPPe_EOTD_EOTDQuality_sequence[] = { + { &hf_lppe_nbrOfMeasurements, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_lppe_BIT_STRING_SIZE_3 }, + { &hf_lppe_stdOfEOTD , ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_lppe_BIT_STRING_SIZE_5 }, + { NULL, 0, 0, NULL } +}; + +static int +dissect_lppe_OMA_LPPe_EOTD_EOTDQuality(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index, + ett_lppe_OMA_LPPe_EOTD_EOTDQuality, OMA_LPPe_EOTD_EOTDQuality_sequence); + + return offset; +} + + + +static int +dissect_lppe_OMA_LPPe_EOTD_OTDValue(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index, + 0U, 39999U, NULL, FALSE); + + return offset; +} + + +static const per_sequence_t OMA_LPPe_EOTD_MeasurementWithID_sequence[] = { + { &hf_lppe_neighborIdentity, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_lppe_OMA_LPPe_EOTD_NeighborIdentity }, + { &hf_lppe_nborTimeSlot , ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_lppe_OMA_LPPe_EOTD_ModuloTimeSlot }, + { &hf_lppe_eotdQuality , ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_lppe_OMA_LPPe_EOTD_EOTDQuality }, + { &hf_lppe_otdValue , ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_lppe_OMA_LPPe_EOTD_OTDValue }, + { NULL, 0, 0, NULL } +}; + +static int +dissect_lppe_OMA_LPPe_EOTD_MeasurementWithID(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index, + ett_lppe_OMA_LPPe_EOTD_MeasurementWithID, OMA_LPPe_EOTD_MeasurementWithID_sequence); + + return offset; +} + + +static const per_sequence_t SEQUENCE_SIZE_1_15_OF_OMA_LPPe_EOTD_MeasurementWithID_sequence_of[1] = { + { &hf_lppe_otd_FirstSetMsrs_item, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lppe_OMA_LPPe_EOTD_MeasurementWithID }, +}; + +static int +dissect_lppe_SEQUENCE_SIZE_1_15_OF_OMA_LPPe_EOTD_MeasurementWithID(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_constrained_sequence_of(tvb, offset, actx, tree, hf_index, + ett_lppe_SEQUENCE_SIZE_1_15_OF_OMA_LPPe_EOTD_MeasurementWithID, SEQUENCE_SIZE_1_15_OF_OMA_LPPe_EOTD_MeasurementWithID_sequence_of, + 1, 15, FALSE); + + return offset; +} + + +static const per_sequence_t OMA_LPPe_EOTD_MsrElement_sequence[] = { + { &hf_lppe_refFrameNumber , ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_lppe_INTEGER_0_42431 }, + { &hf_lppe_referenceTimeSlot, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_lppe_OMA_LPPe_EOTD_ModuloTimeSlot }, + { &hf_lppe_toaMeasurementsOfRef, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lppe_OMA_LPPe_EOTD_TOA_MeasurementsOfRef }, + { &hf_lppe_stdResolution , ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_lppe_BIT_STRING_SIZE_2 }, + { &hf_lppe_taCorrection , ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lppe_INTEGER_0_960 }, + { &hf_lppe_otd_FirstSetMsrs, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lppe_SEQUENCE_SIZE_1_15_OF_OMA_LPPe_EOTD_MeasurementWithID }, + { NULL, 0, 0, NULL } +}; + +static int +dissect_lppe_OMA_LPPe_EOTD_MsrElement(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index, + ett_lppe_OMA_LPPe_EOTD_MsrElement, OMA_LPPe_EOTD_MsrElement_sequence); + + return offset; +} + + +static const per_sequence_t OMA_LPPe_EOTD_ProvideLocationInformation_sequence[] = { + { &hf_lppe_eotdMsrElement , ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lppe_OMA_LPPe_EOTD_MsrElement }, + { &hf_lppe_eotdError , ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lppe_OMA_LPPe_EOTD_Error }, + { NULL, 0, 0, NULL } +}; + +static int +dissect_lppe_OMA_LPPe_EOTD_ProvideLocationInformation(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index, + ett_lppe_OMA_LPPe_EOTD_ProvideLocationInformation, OMA_LPPe_EOTD_ProvideLocationInformation_sequence); + + return offset; +} + + + +static int +dissect_lppe_OMA_LPPe_OTDOA_UTRA_TimeDifferenceType2(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index, + 0U, 8191U, NULL, FALSE); + + return offset; +} + + +static const per_sequence_t OMA_LPPe_OTDOA_UTRA_Quality_sequence[] = { + { &hf_lppe_stdResolution , ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_lppe_BIT_STRING_SIZE_2 }, + { &hf_lppe_numberOfOTDOA_Measurements, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_lppe_BIT_STRING_SIZE_3 }, + { &hf_lppe_stdOfOTDOA_Measurements, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_lppe_BIT_STRING_SIZE_5 }, + { NULL, 0, 0, NULL } +}; + +static int +dissect_lppe_OMA_LPPe_OTDOA_UTRA_Quality(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index, + ett_lppe_OMA_LPPe_OTDOA_UTRA_Quality, OMA_LPPe_OTDOA_UTRA_Quality_sequence); + + return offset; +} + + +static const per_sequence_t OMA_LPPe_OTDOA_UTRA_NeighborQuality_sequence[] = { + { &hf_lppe_quality_01 , ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_lppe_OMA_LPPe_OTDOA_UTRA_Quality }, + { NULL, 0, 0, NULL } +}; + +static int +dissect_lppe_OMA_LPPe_OTDOA_UTRA_NeighborQuality(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index, + ett_lppe_OMA_LPPe_OTDOA_UTRA_NeighborQuality, OMA_LPPe_OTDOA_UTRA_NeighborQuality_sequence); + + return offset; +} + + +static const per_sequence_t OMA_LPPe_OTDOA_UTRA_UE_RX_TX_TimeDifferenceType2Info_sequence[] = { + { &hf_lppe_ue_RX_TX_timeDifferenceType2, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lppe_OMA_LPPe_OTDOA_UTRA_TimeDifferenceType2 }, + { &hf_lppe_neighborQuality, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lppe_OMA_LPPe_OTDOA_UTRA_NeighborQuality }, + { NULL, 0, 0, NULL } +}; + +static int +dissect_lppe_OMA_LPPe_OTDOA_UTRA_UE_RX_TX_TimeDifferenceType2Info(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index, + ett_lppe_OMA_LPPe_OTDOA_UTRA_UE_RX_TX_TimeDifferenceType2Info, OMA_LPPe_OTDOA_UTRA_UE_RX_TX_TimeDifferenceType2Info_sequence); + + return offset; +} + + +static const per_sequence_t T_fdd_03_sequence[] = { + { &hf_lppe_referenceCellIdentity, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_lppe_OMA_LPPe_OTDOA_UTRA_PrimaryCPICH_Info }, + { &hf_lppe_ue_RX_TX_TimeDifferenceType2Info, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_lppe_OMA_LPPe_OTDOA_UTRA_UE_RX_TX_TimeDifferenceType2Info }, + { NULL, 0, 0, NULL } +}; + +static int +dissect_lppe_T_fdd_03(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index, + ett_lppe_T_fdd_03, T_fdd_03_sequence); + + return offset; +} + + +static const per_sequence_t T_tdd_03_sequence[] = { + { &hf_lppe_cellAndChannelIdentity, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_lppe_OMA_LPPe_OTDOA_UTRA_CellAndChannelIdentity }, + { NULL, 0, 0, NULL } +}; + +static int +dissect_lppe_T_tdd_03(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index, + ett_lppe_T_tdd_03, T_tdd_03_sequence); + + return offset; +} + + +static const value_string lppe_T_modeSpecificInfoMeas_vals[] = { + { 0, "fdd" }, + { 1, "tdd" }, + { 0, NULL } +}; + +static const per_choice_t T_modeSpecificInfoMeas_choice[] = { + { 0, &hf_lppe_fdd_03 , ASN1_NO_EXTENSIONS , dissect_lppe_T_fdd_03 }, + { 1, &hf_lppe_tdd_03 , ASN1_NO_EXTENSIONS , dissect_lppe_T_tdd_03 }, + { 0, NULL, 0, NULL } +}; + +static int +dissect_lppe_T_modeSpecificInfoMeas(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_choice(tvb, offset, actx, tree, hf_index, + ett_lppe_T_modeSpecificInfoMeas, T_modeSpecificInfoMeas_choice, + NULL); + + return offset; +} + + +static const per_sequence_t T_fdd_04_sequence[] = { + { &hf_lppe_neighborIdentity_01, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lppe_OMA_LPPe_OTDOA_UTRA_PrimaryCPICH_Info }, + { &hf_lppe_ue_RX_TX_timeDifferenceType2Info, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lppe_OMA_LPPe_OTDOA_UTRA_UE_RX_TX_TimeDifferenceType2Info }, + { NULL, 0, 0, NULL } +}; + +static int +dissect_lppe_T_fdd_04(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index, + ett_lppe_T_fdd_04, T_fdd_04_sequence); + + return offset; +} + + +static const per_sequence_t T_tdd_04_sequence[] = { + { &hf_lppe_cellAndChannelIdentity, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lppe_OMA_LPPe_OTDOA_UTRA_CellAndChannelIdentity }, + { &hf_lppe_uarfcn , ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lpp_ARFCN_ValueUTRA }, + { NULL, 0, 0, NULL } +}; + +static int +dissect_lppe_T_tdd_04(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index, + ett_lppe_T_tdd_04, T_tdd_04_sequence); + + return offset; +} + + +static const value_string lppe_T_modeSpecificInfo_03_vals[] = { + { 0, "fdd" }, + { 1, "tdd" }, + { 0, NULL } +}; + +static const per_choice_t T_modeSpecificInfo_03_choice[] = { + { 0, &hf_lppe_fdd_04 , ASN1_NO_EXTENSIONS , dissect_lppe_T_fdd_04 }, + { 1, &hf_lppe_tdd_04 , ASN1_NO_EXTENSIONS , dissect_lppe_T_tdd_04 }, + { 0, NULL, 0, NULL } +}; + +static int +dissect_lppe_T_modeSpecificInfo_03(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_choice(tvb, offset, actx, tree, hf_index, + ett_lppe_T_modeSpecificInfo_03, T_modeSpecificInfo_03_choice, + NULL); + + return offset; +} + + + +static int +dissect_lppe_OMA_LPPe_OTDOA_UTRA_SFN_SFN_ObsTimeDifference2(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index, + 0U, 65535U, NULL, FALSE); + + return offset; +} + + +static const per_sequence_t OMA_LPPe_OTDOA_UTRA_Neighbor_sequence[] = { + { &hf_lppe_modeSpecificInfo_03, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_lppe_T_modeSpecificInfo_03 }, + { &hf_lppe_neighborQuality, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_lppe_OMA_LPPe_OTDOA_UTRA_NeighborQuality }, + { &hf_lppe_sfn_sfn_ObsTimeDifference2, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_lppe_OMA_LPPe_OTDOA_UTRA_SFN_SFN_ObsTimeDifference2 }, + { NULL, 0, 0, NULL } +}; + +static int +dissect_lppe_OMA_LPPe_OTDOA_UTRA_Neighbor(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index, + ett_lppe_OMA_LPPe_OTDOA_UTRA_Neighbor, OMA_LPPe_OTDOA_UTRA_Neighbor_sequence); + + return offset; +} + + +static const per_sequence_t OMA_LPPe_OTDOA_UTRA_NeighborList_sequence_of[1] = { + { &hf_lppe_OMA_LPPe_OTDOA_UTRA_NeighborList_item, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lppe_OMA_LPPe_OTDOA_UTRA_Neighbor }, +}; + +static int +dissect_lppe_OMA_LPPe_OTDOA_UTRA_NeighborList(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_constrained_sequence_of(tvb, offset, actx, tree, hf_index, + ett_lppe_OMA_LPPe_OTDOA_UTRA_NeighborList, OMA_LPPe_OTDOA_UTRA_NeighborList_sequence_of, + 1, utra_maxCellMeas, FALSE); + + return offset; +} + + +static const per_sequence_t OMA_LPPe_OTDOA_UTRA_Measurement_sequence[] = { + { &hf_lppe_sfn , ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_lppe_INTEGER_0_4095 }, + { &hf_lppe_modeSpecificInfoMeas, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_lppe_T_modeSpecificInfoMeas }, + { &hf_lppe_neighborList , ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lppe_OMA_LPPe_OTDOA_UTRA_NeighborList }, + { NULL, 0, 0, NULL } +}; + +static int +dissect_lppe_OMA_LPPe_OTDOA_UTRA_Measurement(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index, + ett_lppe_OMA_LPPe_OTDOA_UTRA_Measurement, OMA_LPPe_OTDOA_UTRA_Measurement_sequence); + + return offset; +} + + +static const value_string lppe_T_nonUniqueCellID_vals[] = { + { 0, "primaryScramblingCode" }, + { 1, "cellParametersId" }, + { 0, NULL } +}; + +static const per_choice_t T_nonUniqueCellID_choice[] = { + { 0, &hf_lppe_primaryScramblingCode, ASN1_EXTENSION_ROOT , dissect_lppe_OMA_LPPe_OTDOA_UTRA_PrimaryScramblingCode }, + { 1, &hf_lppe_cellParametersId, ASN1_EXTENSION_ROOT , dissect_lppe_OMA_LPPe_OTDOA_UTRA_CellParametersID }, + { 0, NULL, 0, NULL } +}; + +static int +dissect_lppe_T_nonUniqueCellID(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_choice(tvb, offset, actx, tree, hf_index, + ett_lppe_T_nonUniqueCellID, T_nonUniqueCellID_choice, + NULL); + + return offset; +} + + +static const per_sequence_t OMA_LPPe_OTDOA_UTRA_TimeStampData_sequence[] = { + { &hf_lppe_sfn , ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_lppe_INTEGER_0_4095 }, + { &hf_lppe_utraCellGlobalID, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_lpp_CellGlobalIdEUTRA_AndUTRA }, + { &hf_lppe_frequencyInfo , ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lppe_OMA_LPPe_UTRA_FrequencyInfo }, + { &hf_lppe_nonUniqueCellID, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_lppe_T_nonUniqueCellID }, + { NULL, 0, 0, NULL } +}; + +static int +dissect_lppe_OMA_LPPe_OTDOA_UTRA_TimeStampData(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index, + ett_lppe_OMA_LPPe_OTDOA_UTRA_TimeStampData, OMA_LPPe_OTDOA_UTRA_TimeStampData_sequence); + + return offset; +} + + +static const per_sequence_t OMA_LPPe_OTDOA_UTRA_ProvideLocationInformation_sequence[] = { + { &hf_lppe_otdoaUtraMeasurement, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lppe_OMA_LPPe_OTDOA_UTRA_Measurement }, + { &hf_lppe_otdoaUtraError , ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lppe_OMA_LPPe_OTDOA_UTRA_Error }, + { &hf_lppe_timeStampData , ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lppe_OMA_LPPe_OTDOA_UTRA_TimeStampData }, + { NULL, 0, 0, NULL } +}; + +static int +dissect_lppe_OMA_LPPe_OTDOA_UTRA_ProvideLocationInformation(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index, + ett_lppe_OMA_LPPe_OTDOA_UTRA_ProvideLocationInformation, OMA_LPPe_OTDOA_UTRA_ProvideLocationInformation_sequence); + + return offset; +} + + +static const per_sequence_t OMA_LPPe_ECID_LTE_LocationInformation_sequence[] = { + { &hf_lppe_lpp_ECID_SignalMeasurementInformation, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_lpp_ECID_SignalMeasurementInformation }, + { NULL, 0, 0, NULL } +}; + +static int +dissect_lppe_OMA_LPPe_ECID_LTE_LocationInformation(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index, + ett_lppe_OMA_LPPe_ECID_LTE_LocationInformation, OMA_LPPe_ECID_LTE_LocationInformation_sequence); + + return offset; +} + + +static const per_sequence_t OMA_LPPe_ECID_LTE_LocationInformationList_sequence[] = { + { &hf_lppe_ecid_LTE_LocationInformation, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_lppe_OMA_LPPe_ECID_LTE_LocationInformation }, + { &hf_lppe_relativeTimeStamp, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lppe_INTEGER_0_65535 }, + { &hf_lppe_servingFlag , ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_lppe_BOOLEAN }, + { NULL, 0, 0, NULL } +}; + +static int +dissect_lppe_OMA_LPPe_ECID_LTE_LocationInformationList(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index, + ett_lppe_OMA_LPPe_ECID_LTE_LocationInformationList, OMA_LPPe_ECID_LTE_LocationInformationList_sequence); + + return offset; +} + + +static const per_sequence_t SEQUENCE_SIZE_1_maxLTEECIDSize_OF_OMA_LPPe_ECID_LTE_LocationInformationList_sequence_of[1] = { + { &hf_lppe_ecid_LTE_CombinedLocationInformation_item, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lppe_OMA_LPPe_ECID_LTE_LocationInformationList }, +}; + +static int +dissect_lppe_SEQUENCE_SIZE_1_maxLTEECIDSize_OF_OMA_LPPe_ECID_LTE_LocationInformationList(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_constrained_sequence_of(tvb, offset, actx, tree, hf_index, + ett_lppe_SEQUENCE_SIZE_1_maxLTEECIDSize_OF_OMA_LPPe_ECID_LTE_LocationInformationList, SEQUENCE_SIZE_1_maxLTEECIDSize_OF_OMA_LPPe_ECID_LTE_LocationInformationList_sequence_of, + 1, maxLTEECIDSize, FALSE); + + return offset; +} + + +static const per_sequence_t OMA_LPPe_ECID_LTE_ProvideLocationInformation_sequence[] = { + { &hf_lppe_ecid_LTE_CombinedLocationInformation, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lppe_SEQUENCE_SIZE_1_maxLTEECIDSize_OF_OMA_LPPe_ECID_LTE_LocationInformationList }, + { &hf_lppe_ecid_LTE_Error , ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lppe_OMA_LPPe_ECID_LTE_Error }, + { NULL, 0, 0, NULL } +}; + +static int +dissect_lppe_OMA_LPPe_ECID_LTE_ProvideLocationInformation(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index, + ett_lppe_OMA_LPPe_ECID_LTE_ProvideLocationInformation, OMA_LPPe_ECID_LTE_ProvideLocationInformation_sequence); + + return offset; +} + + +static const per_sequence_t OMA_LPPe_NMR_GERAN_item_sequence[] = { + { &hf_lppe_cellNonUniqueIDGERAN, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_lppe_OMA_LPPe_CellNonUniqueIDGERAN }, + { &hf_lppe_cellLocalIDGERAN, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lppe_OMA_LPPe_CellLocalIdGERAN }, + { &hf_lppe_rxLevel , ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_lppe_INTEGER_0_63 }, + { NULL, 0, 0, NULL } +}; + +static int +dissect_lppe_OMA_LPPe_NMR_GERAN_item(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index, + ett_lppe_OMA_LPPe_NMR_GERAN_item, OMA_LPPe_NMR_GERAN_item_sequence); + + return offset; +} + + +static const per_sequence_t OMA_LPPe_NMR_GERAN_sequence_of[1] = { + { &hf_lppe_OMA_LPPe_NMR_GERAN_item, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lppe_OMA_LPPe_NMR_GERAN_item }, +}; + +static int +dissect_lppe_OMA_LPPe_NMR_GERAN(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_constrained_sequence_of(tvb, offset, actx, tree, hf_index, + ett_lppe_OMA_LPPe_NMR_GERAN, OMA_LPPe_NMR_GERAN_sequence_of, + 1, 15, FALSE); + + return offset; +} + + +static const per_sequence_t OMA_LPPe_ECID_GSM_LocationInformation_sequence[] = { + { &hf_lppe_cellGlobalIdGERAN, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_lpp_CellGlobalIdGERAN }, + { &hf_lppe_rxLevel , ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lppe_INTEGER_0_63 }, + { &hf_lppe_tA , ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lppe_INTEGER_0_255 }, + { &hf_lppe_nMR_GERAN , ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lppe_OMA_LPPe_NMR_GERAN }, + { NULL, 0, 0, NULL } +}; + +static int +dissect_lppe_OMA_LPPe_ECID_GSM_LocationInformation(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index, + ett_lppe_OMA_LPPe_ECID_GSM_LocationInformation, OMA_LPPe_ECID_GSM_LocationInformation_sequence); + + return offset; +} + + +static const per_sequence_t OMA_LPPe_ECID_GSM_LocationInformationList_sequence[] = { + { &hf_lppe_ecid_GSM_LocationInformation, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_lppe_OMA_LPPe_ECID_GSM_LocationInformation }, + { &hf_lppe_relativeTimeStamp, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lppe_INTEGER_0_65535 }, + { &hf_lppe_servingFlag , ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_lppe_BOOLEAN }, + { NULL, 0, 0, NULL } +}; + +static int +dissect_lppe_OMA_LPPe_ECID_GSM_LocationInformationList(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index, + ett_lppe_OMA_LPPe_ECID_GSM_LocationInformationList, OMA_LPPe_ECID_GSM_LocationInformationList_sequence); + + return offset; +} + + +static const per_sequence_t SEQUENCE_SIZE_1_maxGSMECIDSize_OF_OMA_LPPe_ECID_GSM_LocationInformationList_sequence_of[1] = { + { &hf_lppe_ecid_GSM_CombinedLocationInformation_item, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lppe_OMA_LPPe_ECID_GSM_LocationInformationList }, +}; + +static int +dissect_lppe_SEQUENCE_SIZE_1_maxGSMECIDSize_OF_OMA_LPPe_ECID_GSM_LocationInformationList(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_constrained_sequence_of(tvb, offset, actx, tree, hf_index, + ett_lppe_SEQUENCE_SIZE_1_maxGSMECIDSize_OF_OMA_LPPe_ECID_GSM_LocationInformationList, SEQUENCE_SIZE_1_maxGSMECIDSize_OF_OMA_LPPe_ECID_GSM_LocationInformationList_sequence_of, + 1, maxGSMECIDSize, FALSE); + + return offset; +} + + +static const per_sequence_t OMA_LPPe_ECID_GSM_ProvideLocationInformation_sequence[] = { + { &hf_lppe_ecid_GSM_CombinedLocationInformation, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lppe_SEQUENCE_SIZE_1_maxGSMECIDSize_OF_OMA_LPPe_ECID_GSM_LocationInformationList }, + { &hf_lppe_ecid_GSM_Error , ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lppe_OMA_LPPe_ECID_GSM_Error }, + { NULL, 0, 0, NULL } +}; + +static int +dissect_lppe_OMA_LPPe_ECID_GSM_ProvideLocationInformation(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index, + ett_lppe_OMA_LPPe_ECID_GSM_ProvideLocationInformation, OMA_LPPe_ECID_GSM_ProvideLocationInformation_sequence); + + return offset; +} + + + +static int +dissect_lppe_OMA_LPPe_ECID_UTRA_CarrierRSSI(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index, + 0U, 127U, NULL, FALSE); + + return offset; +} + + + +static int +dissect_lppe_OMA_LPPe_ECID_UTRA_CPICH_Ec_N0(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index, + 0U, 63U, NULL, FALSE); + + return offset; +} + + + +static int +dissect_lppe_OMA_LPPe_ECID_UTRA_CPICH_RSCP(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index, + 0U, 127U, NULL, FALSE); + + return offset; +} + + + +static int +dissect_lppe_OMA_LPPe_ECID_UTRA_Pathloss(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index, + 46U, 173U, NULL, FALSE); + + return offset; +} + + +static const per_sequence_t T_fdd_06_sequence[] = { + { &hf_lppe_primaryCPICH_Info, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_lppe_OMA_LPPe_OTDOA_UTRA_PrimaryScramblingCode }, + { &hf_lppe_cpich_Ec_N0 , ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lppe_OMA_LPPe_ECID_UTRA_CPICH_Ec_N0 }, + { &hf_lppe_cpich_RSCP , ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lppe_OMA_LPPe_ECID_UTRA_CPICH_RSCP }, + { &hf_lppe_pathloss , ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lppe_OMA_LPPe_ECID_UTRA_Pathloss }, + { NULL, 0, 0, NULL } +}; + +static int +dissect_lppe_T_fdd_06(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index, + ett_lppe_T_fdd_06, T_fdd_06_sequence); + + return offset; +} + + + +static int +dissect_lppe_OMA_LPPe_ECID_UTRA_PrimaryCCPCH_RSCP(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index, + 0U, 127U, NULL, FALSE); + + return offset; +} + + +static const per_sequence_t T_tdd_06_sequence[] = { + { &hf_lppe_cellParametersID, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_lppe_OMA_LPPe_OTDOA_UTRA_CellParametersID }, + { &hf_lppe_primaryCCPCH_RSCP, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lppe_OMA_LPPe_ECID_UTRA_PrimaryCCPCH_RSCP }, + { &hf_lppe_pathloss , ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lppe_OMA_LPPe_ECID_UTRA_Pathloss }, + { NULL, 0, 0, NULL } +}; + +static int +dissect_lppe_T_tdd_06(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index, + ett_lppe_T_tdd_06, T_tdd_06_sequence); + + return offset; +} + + +static const value_string lppe_T_modeSpecificInfo_05_vals[] = { + { 0, "fdd" }, + { 1, "tdd" }, + { 0, NULL } +}; + +static const per_choice_t T_modeSpecificInfo_05_choice[] = { + { 0, &hf_lppe_fdd_07 , ASN1_NO_EXTENSIONS , dissect_lppe_T_fdd_06 }, + { 1, &hf_lppe_tdd_07 , ASN1_NO_EXTENSIONS , dissect_lppe_T_tdd_06 }, + { 0, NULL, 0, NULL } +}; + +static int +dissect_lppe_T_modeSpecificInfo_05(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_choice(tvb, offset, actx, tree, hf_index, + ett_lppe_T_modeSpecificInfo_05, T_modeSpecificInfo_05_choice, + NULL); + + return offset; +} + + +static const per_sequence_t OMA_LPPe_ECID_UTRA_CellMeasuredResults_sequence[] = { + { &hf_lppe_cellIdentity_02, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lppe_BIT_STRING_SIZE_32 }, + { &hf_lppe_modeSpecificInfo_06, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_lppe_T_modeSpecificInfo_05 }, + { NULL, 0, 0, NULL } +}; + +static int +dissect_lppe_OMA_LPPe_ECID_UTRA_CellMeasuredResults(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index, + ett_lppe_OMA_LPPe_ECID_UTRA_CellMeasuredResults, OMA_LPPe_ECID_UTRA_CellMeasuredResults_sequence); + + return offset; +} + + +static const per_sequence_t OMA_LPPe_ECID_UTRA_CellMeasuredResultsList_sequence_of[1] = { + { &hf_lppe_OMA_LPPe_ECID_UTRA_CellMeasuredResultsList_item, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lppe_OMA_LPPe_ECID_UTRA_CellMeasuredResults }, +}; + +static int +dissect_lppe_OMA_LPPe_ECID_UTRA_CellMeasuredResultsList(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_constrained_sequence_of(tvb, offset, actx, tree, hf_index, + ett_lppe_OMA_LPPe_ECID_UTRA_CellMeasuredResultsList, OMA_LPPe_ECID_UTRA_CellMeasuredResultsList_sequence_of, + 1, utra_maxCellMeas, FALSE); + + return offset; +} + + +static const per_sequence_t OMA_LPPe_ECID_UTRA_MeasuredResults_sequence[] = { + { &hf_lppe_frequencyInfo , ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_lppe_OMA_LPPe_UTRA_FrequencyInfo }, + { &hf_lppe_utra_CarrierRSSI, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lppe_OMA_LPPe_ECID_UTRA_CarrierRSSI }, + { &hf_lppe_cellMeasuredResultsList, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lppe_OMA_LPPe_ECID_UTRA_CellMeasuredResultsList }, + { NULL, 0, 0, NULL } +}; + +static int +dissect_lppe_OMA_LPPe_ECID_UTRA_MeasuredResults(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index, + ett_lppe_OMA_LPPe_ECID_UTRA_MeasuredResults, OMA_LPPe_ECID_UTRA_MeasuredResults_sequence); + + return offset; +} + + +static const per_sequence_t OMA_LPPe_ECID_UTRA_MeasuredResultsList_sequence_of[1] = { + { &hf_lppe_OMA_LPPe_ECID_UTRA_MeasuredResultsList_item, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lppe_OMA_LPPe_ECID_UTRA_MeasuredResults }, +}; + +static int +dissect_lppe_OMA_LPPe_ECID_UTRA_MeasuredResultsList(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_constrained_sequence_of(tvb, offset, actx, tree, hf_index, + ett_lppe_OMA_LPPe_ECID_UTRA_MeasuredResultsList, OMA_LPPe_ECID_UTRA_MeasuredResultsList_sequence_of, + 1, maxFreq, FALSE); + + return offset; +} + + +static const value_string lppe_OMA_LPPe_ECID_UTRA_TAResolution_vals[] = { + { 0, "res1-0chip" }, + { 1, "res0-5chip" }, + { 2, "res0-125chip" }, + { 0, NULL } +}; + + +static int +dissect_lppe_OMA_LPPe_ECID_UTRA_TAResolution(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_enumerated(tvb, offset, actx, tree, hf_index, + 3, NULL, TRUE, 0, NULL); + + return offset; +} + + +static const value_string lppe_OMA_LPPe_ECID_UTRA_ChipRate_vals[] = { + { 0, "tdd128" }, + { 1, "tdd384" }, + { 2, "tdd768" }, + { 0, NULL } +}; + + +static int +dissect_lppe_OMA_LPPe_ECID_UTRA_ChipRate(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_enumerated(tvb, offset, actx, tree, hf_index, + 3, NULL, TRUE, 0, NULL); + + return offset; +} + + +static const per_sequence_t OMA_LPPe_ECID_UTRA_UTRATimingAdvance_sequence[] = { + { &hf_lppe_tA_01 , ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_lppe_INTEGER_0_8191 }, + { &hf_lppe_tAResolution , ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lppe_OMA_LPPe_ECID_UTRA_TAResolution }, + { &hf_lppe_chipRate , ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lppe_OMA_LPPe_ECID_UTRA_ChipRate }, + { NULL, 0, 0, NULL } +}; + +static int +dissect_lppe_OMA_LPPe_ECID_UTRA_UTRATimingAdvance(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index, + ett_lppe_OMA_LPPe_ECID_UTRA_UTRATimingAdvance, OMA_LPPe_ECID_UTRA_UTRATimingAdvance_sequence); + + return offset; +} + + +static const per_sequence_t OMA_LPPe_ECID_UTRA_LocationInformation_sequence[] = { + { &hf_lppe_cellGlobalIdUTRA, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_lpp_CellGlobalIdEUTRA_AndUTRA }, + { &hf_lppe_frequencyInfo , ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lppe_OMA_LPPe_UTRA_FrequencyInfo }, + { &hf_lppe_primaryScramblingCode, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lppe_OMA_LPPe_OTDOA_UTRA_PrimaryScramblingCode }, + { &hf_lppe_measuredResultsList, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lppe_OMA_LPPe_ECID_UTRA_MeasuredResultsList }, + { &hf_lppe_cellParametersId, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lppe_OMA_LPPe_OTDOA_UTRA_CellParametersID }, + { &hf_lppe_utratimingAdvance, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lppe_OMA_LPPe_ECID_UTRA_UTRATimingAdvance }, + { NULL, 0, 0, NULL } +}; + +static int +dissect_lppe_OMA_LPPe_ECID_UTRA_LocationInformation(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index, + ett_lppe_OMA_LPPe_ECID_UTRA_LocationInformation, OMA_LPPe_ECID_UTRA_LocationInformation_sequence); + + return offset; +} + + +static const per_sequence_t OMA_LPPe_ECID_UTRA_LocationInformationList_sequence[] = { + { &hf_lppe_ecid_utra_LocationInformation, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_lppe_OMA_LPPe_ECID_UTRA_LocationInformation }, + { &hf_lppe_relativeTimeStamp, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lppe_INTEGER_0_65535 }, + { &hf_lppe_servingFlag , ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_lppe_BOOLEAN }, + { NULL, 0, 0, NULL } +}; + +static int +dissect_lppe_OMA_LPPe_ECID_UTRA_LocationInformationList(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index, + ett_lppe_OMA_LPPe_ECID_UTRA_LocationInformationList, OMA_LPPe_ECID_UTRA_LocationInformationList_sequence); + + return offset; +} + + +static const per_sequence_t SEQUENCE_SIZE_1_maxECIDUTRASize_OF_OMA_LPPe_ECID_UTRA_LocationInformationList_sequence_of[1] = { + { &hf_lppe_ecid_UTRA_CombinedLocationInformation_item, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lppe_OMA_LPPe_ECID_UTRA_LocationInformationList }, +}; + +static int +dissect_lppe_SEQUENCE_SIZE_1_maxECIDUTRASize_OF_OMA_LPPe_ECID_UTRA_LocationInformationList(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_constrained_sequence_of(tvb, offset, actx, tree, hf_index, + ett_lppe_SEQUENCE_SIZE_1_maxECIDUTRASize_OF_OMA_LPPe_ECID_UTRA_LocationInformationList, SEQUENCE_SIZE_1_maxECIDUTRASize_OF_OMA_LPPe_ECID_UTRA_LocationInformationList_sequence_of, + 1, maxECIDUTRASize, FALSE); + + return offset; +} + + +static const per_sequence_t OMA_LPPe_ECID_UTRA_ProvideLocationInformation_sequence[] = { + { &hf_lppe_ecid_UTRA_CombinedLocationInformation, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lppe_SEQUENCE_SIZE_1_maxECIDUTRASize_OF_OMA_LPPe_ECID_UTRA_LocationInformationList }, + { &hf_lppe_ecid_Error , ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lppe_OMA_LPPe_ECID_UTRA_Error }, + { NULL, 0, 0, NULL } +}; + +static int +dissect_lppe_OMA_LPPe_ECID_UTRA_ProvideLocationInformation(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index, + ett_lppe_OMA_LPPe_ECID_UTRA_ProvideLocationInformation, OMA_LPPe_ECID_UTRA_ProvideLocationInformation_sequence); + + return offset; +} + + + +static int +dissect_lppe_OCTET_STRING_SIZE_1_32(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_octet_string(tvb, offset, actx, tree, hf_index, + 1, 32, FALSE, NULL); + + return offset; +} + + +static const value_string lppe_OMA_LPPe_WLAN_AP_PHY_Type_vals[] = { + { 0, "unknown" }, + { 1, "any" }, + { 2, "fhss" }, + { 3, "dsss" }, + { 4, "irbaseband" }, + { 5, "ofdm" }, + { 6, "hrdsss" }, + { 7, "erp" }, + { 8, "ht" }, + { 9, "ihv" }, + { 0, NULL } +}; + + +static int +dissect_lppe_OMA_LPPe_WLAN_AP_PHY_Type(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_enumerated(tvb, offset, actx, tree, hf_index, + 10, NULL, TRUE, 0, NULL); + + return offset; +} + + + +static int +dissect_lppe_INTEGER_0_256(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index, + 0U, 256U, NULL, FALSE); + + return offset; +} + + + +static int +dissect_lppe_INTEGER_0_16777215(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index, + 0U, 16777215U, NULL, FALSE); + + return offset; +} + + +static const value_string lppe_OMA_LPPe_WLAN_RTDUnits_vals[] = { + { 0, "microseconds" }, + { 1, "hundredsofnanoseconds" }, + { 2, "tensofnanoseconds" }, + { 3, "nanoseconds" }, + { 4, "tenthsofnanoseconds" }, + { 0, NULL } +}; + + +static int +dissect_lppe_OMA_LPPe_WLAN_RTDUnits(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_enumerated(tvb, offset, actx, tree, hf_index, + 5, NULL, TRUE, 0, NULL); + + return offset; +} + + +static const per_sequence_t OMA_LPPe_WLAN_RTD_sequence[] = { + { &hf_lppe_rTDValue , ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_lppe_INTEGER_0_16777215 }, + { &hf_lppe_rTDUnits , ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_lppe_OMA_LPPe_WLAN_RTDUnits }, + { &hf_lppe_rTDAccuracy , ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lppe_INTEGER_0_255 }, + { NULL, 0, 0, NULL } +}; + +static int +dissect_lppe_OMA_LPPe_WLAN_RTD(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index, + ett_lppe_OMA_LPPe_WLAN_RTD, OMA_LPPe_WLAN_RTD_sequence); + + return offset; +} + + + +static int +dissect_lppe_BIT_STRING_SIZE_6(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_bit_string(tvb, offset, actx, tree, hf_index, + 6, 6, FALSE, NULL); + + return offset; +} + + + +static int +dissect_lppe_BIT_STRING_SIZE_34(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_bit_string(tvb, offset, actx, tree, hf_index, + 34, 34, FALSE, NULL); + + return offset; +} + + + +static int +dissect_lppe_BIT_STRING_SIZE_4(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_bit_string(tvb, offset, actx, tree, hf_index, + 4, 4, FALSE, NULL); + + return offset; +} + + + +static int +dissect_lppe_BIT_STRING_SIZE_30(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_bit_string(tvb, offset, actx, tree, hf_index, + 30, 30, FALSE, NULL); + + return offset; +} + + +static const per_sequence_t OMA_LPPe_WLAN_LocationDataLCI_sequence[] = { + { &hf_lppe_latitudeResolution, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_lppe_BIT_STRING_SIZE_6 }, + { &hf_lppe_latitude_01 , ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_lppe_BIT_STRING_SIZE_34 }, + { &hf_lppe_longitudeResolution, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_lppe_BIT_STRING_SIZE_6 }, + { &hf_lppe_longitude_01 , ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_lppe_BIT_STRING_SIZE_34 }, + { &hf_lppe_altitudeType , ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_lppe_BIT_STRING_SIZE_4 }, + { &hf_lppe_altitudeResolution, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_lppe_BIT_STRING_SIZE_6 }, + { &hf_lppe_altitude_01 , ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_lppe_BIT_STRING_SIZE_30 }, + { &hf_lppe_datum , ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_lppe_BIT_STRING_SIZE_8 }, + { NULL, 0, 0, NULL } +}; + +static int +dissect_lppe_OMA_LPPe_WLAN_LocationDataLCI(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index, + ett_lppe_OMA_LPPe_WLAN_LocationDataLCI, OMA_LPPe_WLAN_LocationDataLCI_sequence); + + return offset; +} + + +static const per_sequence_t OMA_LPPe_WLAN_ReportedLocation_sequence[] = { + { &hf_lppe_locationDataLCI, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lppe_OMA_LPPe_WLAN_LocationDataLCI }, + { NULL, 0, 0, NULL } +}; + +static int +dissect_lppe_OMA_LPPe_WLAN_ReportedLocation(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index, + ett_lppe_OMA_LPPe_WLAN_ReportedLocation, OMA_LPPe_WLAN_ReportedLocation_sequence); + + return offset; +} + + +static const per_sequence_t OMA_LPPe_WLAN_AP_LocationInformation_sequence[] = { + { &hf_lppe_apMACAddress , ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_lppe_OMA_LPPe_WLAN_AP_ID }, + { &hf_lppe_apSSID , ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lppe_OCTET_STRING_SIZE_1_32 }, + { &hf_lppe_apSignaltoNoise, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lppe_INTEGER_M127_128 }, + { &hf_lppe_apDeviceType , ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lppe_OMA_LPPe_WLAN_AP_Type }, + { &hf_lppe_apPHYtype , ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lppe_OMA_LPPe_WLAN_AP_PHY_Type }, + { &hf_lppe_apSignalStrength, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lppe_INTEGER_M127_128 }, + { &hf_lppe_apChannelFrequency, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lppe_INTEGER_0_256 }, + { &hf_lppe_apRoundTripDelay, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lppe_OMA_LPPe_WLAN_RTD }, + { &hf_lppe_ueTransmitPower, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lppe_INTEGER_M127_128 }, + { &hf_lppe_ueAntennaGain , ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lppe_INTEGER_M127_128 }, + { &hf_lppe_apReportedLocation, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lppe_OMA_LPPe_WLAN_ReportedLocation }, + { NULL, 0, 0, NULL } +}; + +static int +dissect_lppe_OMA_LPPe_WLAN_AP_LocationInformation(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index, + ett_lppe_OMA_LPPe_WLAN_AP_LocationInformation, OMA_LPPe_WLAN_AP_LocationInformation_sequence); + + return offset; +} + + +static const per_sequence_t OMA_LPPe_WLAN_AP_LocationInformationList_sequence[] = { + { &hf_lppe_wlan_AP_LocationInformation, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_lppe_OMA_LPPe_WLAN_AP_LocationInformation }, + { &hf_lppe_relativeTimeStamp, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lppe_INTEGER_0_65535 }, + { &hf_lppe_servingFlag , ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_lppe_BOOLEAN }, + { NULL, 0, 0, NULL } +}; + +static int +dissect_lppe_OMA_LPPe_WLAN_AP_LocationInformationList(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index, + ett_lppe_OMA_LPPe_WLAN_AP_LocationInformationList, OMA_LPPe_WLAN_AP_LocationInformationList_sequence); + + return offset; +} + + +static const per_sequence_t SEQUENCE_SIZE_1_maxWLANAPSize_OF_OMA_LPPe_WLAN_AP_LocationInformationList_sequence_of[1] = { + { &hf_lppe_wlan_AP_CombinedLocationInformation_item, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lppe_OMA_LPPe_WLAN_AP_LocationInformationList }, +}; + +static int +dissect_lppe_SEQUENCE_SIZE_1_maxWLANAPSize_OF_OMA_LPPe_WLAN_AP_LocationInformationList(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_constrained_sequence_of(tvb, offset, actx, tree, hf_index, + ett_lppe_SEQUENCE_SIZE_1_maxWLANAPSize_OF_OMA_LPPe_WLAN_AP_LocationInformationList, SEQUENCE_SIZE_1_maxWLANAPSize_OF_OMA_LPPe_WLAN_AP_LocationInformationList_sequence_of, + 1, maxWLANAPSize, FALSE); + + return offset; +} + + +static const per_sequence_t OMA_LPPe_WLAN_AP_ProvideLocationInformation_sequence[] = { + { &hf_lppe_wlan_AP_CombinedLocationInformation, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lppe_SEQUENCE_SIZE_1_maxWLANAPSize_OF_OMA_LPPe_WLAN_AP_LocationInformationList }, + { &hf_lppe_wlan_AP_Error , ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lppe_OMA_LPPe_WLAN_AP_Error }, + { NULL, 0, 0, NULL } +}; + +static int +dissect_lppe_OMA_LPPe_WLAN_AP_ProvideLocationInformation(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index, + ett_lppe_OMA_LPPe_WLAN_AP_ProvideLocationInformation, OMA_LPPe_WLAN_AP_ProvideLocationInformation_sequence); + + return offset; +} + + + +static int +dissect_lppe_BIT_STRING_SIZE_24(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_bit_string(tvb, offset, actx, tree, hf_index, + 24, 24, FALSE, NULL); + + return offset; +} + + +static const per_sequence_t OMA_LPPe_ECID_WiMax_WimaxBsID_sequence[] = { + { &hf_lppe_bsID_MSB , ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lppe_BIT_STRING_SIZE_24 }, + { &hf_lppe_bsID_LSB , ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_lppe_BIT_STRING_SIZE_24 }, + { NULL, 0, 0, NULL } +}; + +static int +dissect_lppe_OMA_LPPe_ECID_WiMax_WimaxBsID(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index, + ett_lppe_OMA_LPPe_ECID_WiMax_WimaxBsID, OMA_LPPe_ECID_WiMax_WimaxBsID_sequence); + + return offset; +} + + +static const per_sequence_t OMA_LPPe_ECID_WiMax_WimaxRTD_sequence[] = { + { &hf_lppe_rTD , ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_lppe_INTEGER_0_65535 }, + { &hf_lppe_rTDstd , ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lppe_INTEGER_0_1023 }, + { NULL, 0, 0, NULL } +}; + +static int +dissect_lppe_OMA_LPPe_ECID_WiMax_WimaxRTD(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index, + ett_lppe_OMA_LPPe_ECID_WiMax_WimaxRTD, OMA_LPPe_ECID_WiMax_WimaxRTD_sequence); + + return offset; +} + + +static const per_sequence_t OMA_LPPe_ECID_WiMax_WimaxNMR_sequence[] = { + { &hf_lppe_wimaxBsID , ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_lppe_OMA_LPPe_ECID_WiMax_WimaxBsID }, + { &hf_lppe_relDelay , ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lppe_INTEGER_M32768_32767 }, + { &hf_lppe_relDelaystd , ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lppe_INTEGER_0_1023 }, + { &hf_lppe_rSSI , ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lppe_INTEGER_0_255 }, + { &hf_lppe_rSSIstd , ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lppe_INTEGER_0_63 }, + { &hf_lppe_bSTxPower , ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lppe_INTEGER_0_255 }, + { &hf_lppe_cINR , ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lppe_INTEGER_0_255 }, + { &hf_lppe_cINRstd , ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lppe_INTEGER_0_63 }, + { &hf_lppe_bSLocation , ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lppe_OMA_LPPe_WLAN_ReportedLocation }, + { NULL, 0, 0, NULL } +}; + +static int +dissect_lppe_OMA_LPPe_ECID_WiMax_WimaxNMR(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index, + ett_lppe_OMA_LPPe_ECID_WiMax_WimaxNMR, OMA_LPPe_ECID_WiMax_WimaxNMR_sequence); + + return offset; +} + + +static const per_sequence_t OMA_LPPe_ECID_WiMax_WimaxNMRList_sequence_of[1] = { + { &hf_lppe_OMA_LPPe_ECID_WiMax_WimaxNMRList_item, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lppe_OMA_LPPe_ECID_WiMax_WimaxNMR }, +}; + +static int +dissect_lppe_OMA_LPPe_ECID_WiMax_WimaxNMRList(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_constrained_sequence_of(tvb, offset, actx, tree, hf_index, + ett_lppe_OMA_LPPe_ECID_WiMax_WimaxNMRList, OMA_LPPe_ECID_WiMax_WimaxNMRList_sequence_of, + 1, maxWimaxBSMeas, FALSE); + + return offset; +} + + +static const per_sequence_t OMA_LPPe_ECID_WiMax_LocationInformation_sequence[] = { + { &hf_lppe_wimaxBsID , ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_lppe_OMA_LPPe_ECID_WiMax_WimaxBsID }, + { &hf_lppe_wimaxRTD , ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lppe_OMA_LPPe_ECID_WiMax_WimaxRTD }, + { &hf_lppe_wimaxNMRList , ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lppe_OMA_LPPe_ECID_WiMax_WimaxNMRList }, + { NULL, 0, 0, NULL } +}; + +static int +dissect_lppe_OMA_LPPe_ECID_WiMax_LocationInformation(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index, + ett_lppe_OMA_LPPe_ECID_WiMax_LocationInformation, OMA_LPPe_ECID_WiMax_LocationInformation_sequence); + + return offset; +} + + +static const per_sequence_t OMA_LPPe_ECID_WiMax_LocationInformationList_sequence[] = { + { &hf_lppe_ecid_wimax_LocationInformation, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_lppe_OMA_LPPe_ECID_WiMax_LocationInformation }, + { &hf_lppe_relativeTimeStamp, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lppe_INTEGER_0_65535 }, + { &hf_lppe_servingFlag , ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_lppe_BOOLEAN }, + { NULL, 0, 0, NULL } +}; + +static int +dissect_lppe_OMA_LPPe_ECID_WiMax_LocationInformationList(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index, + ett_lppe_OMA_LPPe_ECID_WiMax_LocationInformationList, OMA_LPPe_ECID_WiMax_LocationInformationList_sequence); + + return offset; +} + + +static const per_sequence_t SEQUENCE_SIZE_1_maxWiMaxECIDSize_OF_OMA_LPPe_ECID_WiMax_LocationInformationList_sequence_of[1] = { + { &hf_lppe_ecid_wimax_CombinedLocationInformation_item, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lppe_OMA_LPPe_ECID_WiMax_LocationInformationList }, +}; + +static int +dissect_lppe_SEQUENCE_SIZE_1_maxWiMaxECIDSize_OF_OMA_LPPe_ECID_WiMax_LocationInformationList(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_constrained_sequence_of(tvb, offset, actx, tree, hf_index, + ett_lppe_SEQUENCE_SIZE_1_maxWiMaxECIDSize_OF_OMA_LPPe_ECID_WiMax_LocationInformationList, SEQUENCE_SIZE_1_maxWiMaxECIDSize_OF_OMA_LPPe_ECID_WiMax_LocationInformationList_sequence_of, + 1, maxWiMaxECIDSize, FALSE); + + return offset; +} + + +static const value_string lppe_T_cause_14_vals[] = { + { 0, "undefined" }, + { 0, NULL } +}; + + +static int +dissect_lppe_T_cause_14(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_enumerated(tvb, offset, actx, tree, hf_index, + 1, NULL, TRUE, 0, NULL); + + return offset; +} + + +static const per_sequence_t OMA_LPPe_ECID_WiMax_LocationServerErrorCauses_sequence[] = { + { &hf_lppe_cause_14 , ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_lppe_T_cause_14 }, + { NULL, 0, 0, NULL } +}; + +static int +dissect_lppe_OMA_LPPe_ECID_WiMax_LocationServerErrorCauses(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index, + ett_lppe_OMA_LPPe_ECID_WiMax_LocationServerErrorCauses, OMA_LPPe_ECID_WiMax_LocationServerErrorCauses_sequence); + + return offset; +} + + +static const value_string lppe_T_cause_15_vals[] = { + { 0, "undefined" }, + { 1, "requestedMeasurementsNotAvailable" }, + { 2, "notAllrequestedMeasurementsPossible" }, + { 0, NULL } +}; + + +static int +dissect_lppe_T_cause_15(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_enumerated(tvb, offset, actx, tree, hf_index, + 3, NULL, TRUE, 0, NULL); + + return offset; +} + + +static const per_sequence_t OMA_LPPe_ECID_WiMax_TargetDeviceErrorCauses_sequence[] = { + { &hf_lppe_cause_15 , ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_lppe_T_cause_15 }, + { &hf_lppe_rTDMeasurementNotPossible, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lppe_NULL }, + { &hf_lppe_rTDstdMeasurementNotPossible, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lppe_NULL }, + { &hf_lppe_nMRMeasurementNotPossible, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lppe_NULL }, + { &hf_lppe_nMRrelDelayMeasurementNotPossible, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lppe_NULL }, + { &hf_lppe_nMRrelDelaystdMeasurementNotPossible, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lppe_NULL }, + { &hf_lppe_nMRrSSIMeasurementNotPossible, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lppe_NULL }, + { &hf_lppe_nMRrSSIstdMeasurementNotPossible, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lppe_NULL }, + { &hf_lppe_nMRbSTxPowerMeasurementNotPossible, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lppe_NULL }, + { &hf_lppe_nMRcINRMeasurementNotPossible, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lppe_NULL }, + { &hf_lppe_nMRcINRstdMeasurementNotPossible, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lppe_NULL }, + { &hf_lppe_nMRbSLocationNotAvailable, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lppe_NULL }, + { &hf_lppe_non_servingMeasurementsNotAvailable, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lppe_NULL }, + { &hf_lppe_historicMeasurementsNotAvailable, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lppe_NULL }, + { NULL, 0, 0, NULL } +}; + +static int +dissect_lppe_OMA_LPPe_ECID_WiMax_TargetDeviceErrorCauses(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index, + ett_lppe_OMA_LPPe_ECID_WiMax_TargetDeviceErrorCauses, OMA_LPPe_ECID_WiMax_TargetDeviceErrorCauses_sequence); + + return offset; +} + + +static const value_string lppe_OMA_LPPe_ECID_WiMax_Error_vals[] = { + { 0, "locationServerErrorCauses" }, + { 1, "targetDeviceErrorCauses" }, + { 0, NULL } +}; + +static const per_choice_t OMA_LPPe_ECID_WiMax_Error_choice[] = { + { 0, &hf_lppe_locationServerErrorCauses_07, ASN1_EXTENSION_ROOT , dissect_lppe_OMA_LPPe_ECID_WiMax_LocationServerErrorCauses }, + { 1, &hf_lppe_targetDeviceErrorCauses_07, ASN1_EXTENSION_ROOT , dissect_lppe_OMA_LPPe_ECID_WiMax_TargetDeviceErrorCauses }, + { 0, NULL, 0, NULL } +}; + +static int +dissect_lppe_OMA_LPPe_ECID_WiMax_Error(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_choice(tvb, offset, actx, tree, hf_index, + ett_lppe_OMA_LPPe_ECID_WiMax_Error, OMA_LPPe_ECID_WiMax_Error_choice, + NULL); + + return offset; +} + + +static const per_sequence_t OMA_LPPe_ECID_WiMax_ProvideLocationInformation_sequence[] = { + { &hf_lppe_ecid_wimax_CombinedLocationInformation, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lppe_SEQUENCE_SIZE_1_maxWiMaxECIDSize_OF_OMA_LPPe_ECID_WiMax_LocationInformationList }, + { &hf_lppe_ecid_wimax_Error, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lppe_OMA_LPPe_ECID_WiMax_Error }, + { NULL, 0, 0, NULL } +}; + +static int +dissect_lppe_OMA_LPPe_ECID_WiMax_ProvideLocationInformation(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index, + ett_lppe_OMA_LPPe_ECID_WiMax_ProvideLocationInformation, OMA_LPPe_ECID_WiMax_ProvideLocationInformation_sequence); + + return offset; +} + + +static const value_string lppe_T_primaryMotionState_vals[] = { + { 0, "unknown" }, + { 1, "stationary" }, + { 2, "pedestrian" }, + { 3, "running" }, + { 4, "cycling" }, + { 5, "car" }, + { 6, "train" }, + { 7, "aeroplane" }, + { 8, "boat" }, + { 9, "fidgeting" }, + { 0, NULL } +}; + + +static int +dissect_lppe_T_primaryMotionState(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_enumerated(tvb, offset, actx, tree, hf_index, + 10, NULL, TRUE, 0, NULL); + + return offset; +} + + + +static int +dissect_lppe_T_secondaryMotionState(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_bit_string(tvb, offset, actx, tree, hf_index, + 1, 16, FALSE, NULL); + + return offset; +} + + +static const per_sequence_t OMA_LPPe_Sensor_MotionStateElement_sequence[] = { + { &hf_lppe_primaryMotionState, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_lppe_T_primaryMotionState }, + { &hf_lppe_confidence , ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_lppe_INTEGER_0_99 }, + { &hf_lppe_secondaryMotionState, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lppe_T_secondaryMotionState }, + { NULL, 0, 0, NULL } +}; + +static int +dissect_lppe_OMA_LPPe_Sensor_MotionStateElement(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index, + ett_lppe_OMA_LPPe_Sensor_MotionStateElement, OMA_LPPe_Sensor_MotionStateElement_sequence); + + return offset; +} + + +static const per_sequence_t OMA_LPPe_Sensor_MotionStateList_sequence_of[1] = { + { &hf_lppe_OMA_LPPe_Sensor_MotionStateList_item, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lppe_OMA_LPPe_Sensor_MotionStateElement }, +}; + +static int +dissect_lppe_OMA_LPPe_Sensor_MotionStateList(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_constrained_sequence_of(tvb, offset, actx, tree, hf_index, + ett_lppe_OMA_LPPe_Sensor_MotionStateList, OMA_LPPe_Sensor_MotionStateList_sequence_of, + 1, 8, FALSE); + + return offset; +} + + +static const value_string lppe_T_motionStateError_vals[] = { + { 0, "primaryMotionStateNotAvailable" }, + { 1, "primaryMotionStateNotSupported" }, + { 0, NULL } +}; + + +static int +dissect_lppe_T_motionStateError(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_enumerated(tvb, offset, actx, tree, hf_index, + 2, NULL, TRUE, 0, NULL); + + return offset; +} + + +static const value_string lppe_T_secondaryMotionStateError_vals[] = { + { 0, "secondaryMotionStateNotAvailable" }, + { 1, "secondaryMotionStateNotSupported" }, + { 0, NULL } +}; + + +static int +dissect_lppe_T_secondaryMotionStateError(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_enumerated(tvb, offset, actx, tree, hf_index, + 2, NULL, TRUE, 0, NULL); + + return offset; +} + + +static const per_sequence_t OMA_LPPe_Sensor_TargetError_sequence[] = { + { &hf_lppe_motionStateError, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lppe_T_motionStateError }, + { &hf_lppe_secondaryMotionStateError, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lppe_T_secondaryMotionStateError }, + { NULL, 0, 0, NULL } +}; + +static int +dissect_lppe_OMA_LPPe_Sensor_TargetError(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index, + ett_lppe_OMA_LPPe_Sensor_TargetError, OMA_LPPe_Sensor_TargetError_sequence); + + return offset; +} + + +static const value_string lppe_OMA_LPPe_Sensor_Error_vals[] = { + { 0, "targetError" }, + { 0, NULL } +}; + +static const per_choice_t OMA_LPPe_Sensor_Error_choice[] = { + { 0, &hf_lppe_targetError , ASN1_EXTENSION_ROOT , dissect_lppe_OMA_LPPe_Sensor_TargetError }, + { 0, NULL, 0, NULL } +}; + +static int +dissect_lppe_OMA_LPPe_Sensor_Error(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_choice(tvb, offset, actx, tree, hf_index, + ett_lppe_OMA_LPPe_Sensor_Error, OMA_LPPe_Sensor_Error_choice, + NULL); + + return offset; +} + + +static const per_sequence_t OMA_LPPe_Sensor_ProvideLocationInformation_sequence[] = { + { &hf_lppe_motionStateList, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lppe_OMA_LPPe_Sensor_MotionStateList }, + { &hf_lppe_sensorError , ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lppe_OMA_LPPe_Sensor_Error }, + { NULL, 0, 0, NULL } +}; + +static int +dissect_lppe_OMA_LPPe_Sensor_ProvideLocationInformation(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index, + ett_lppe_OMA_LPPe_Sensor_ProvideLocationInformation, OMA_LPPe_Sensor_ProvideLocationInformation_sequence); + + return offset; +} + + +static const per_sequence_t OMA_LPPe_SRN_srnMeasurementElement_sequence[] = { + { &hf_lppe_relativeTimeStamp_01, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lppe_INTEGER_0_1000 }, + { &hf_lppe_rssi , ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lppe_INTEGER_M128_127 }, + { &hf_lppe_rtd , ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lppe_OMA_LPPe_WLAN_RTD }, + { NULL, 0, 0, NULL } +}; + +static int +dissect_lppe_OMA_LPPe_SRN_srnMeasurementElement(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index, + ett_lppe_OMA_LPPe_SRN_srnMeasurementElement, OMA_LPPe_SRN_srnMeasurementElement_sequence); + + return offset; +} + + +static const per_sequence_t SEQUENCE_SIZE_1_64_OF_OMA_LPPe_SRN_srnMeasurementElement_sequence_of[1] = { + { &hf_lppe_measurementList_item, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lppe_OMA_LPPe_SRN_srnMeasurementElement }, +}; + +static int +dissect_lppe_SEQUENCE_SIZE_1_64_OF_OMA_LPPe_SRN_srnMeasurementElement(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_constrained_sequence_of(tvb, offset, actx, tree, hf_index, + ett_lppe_SEQUENCE_SIZE_1_64_OF_OMA_LPPe_SRN_srnMeasurementElement, SEQUENCE_SIZE_1_64_OF_OMA_LPPe_SRN_srnMeasurementElement_sequence_of, + 1, 64, FALSE); + + return offset; +} + + +static const per_sequence_t OMA_LPPe_SRN_MeasurementElement_sequence[] = { + { &hf_lppe_srnID , ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_lppe_OMA_LPPe_SRN_SRNid }, + { &hf_lppe_srnCategory , ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lppe_OMA_LPPe_SRN_Category }, + { &hf_lppe_srnGroupID , ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lppe_OMA_LPPe_SRN_SRNgroupUniqueID }, + { &hf_lppe_measurementList, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lppe_SEQUENCE_SIZE_1_64_OF_OMA_LPPe_SRN_srnMeasurementElement }, + { NULL, 0, 0, NULL } +}; + +static int +dissect_lppe_OMA_LPPe_SRN_MeasurementElement(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index, + ett_lppe_OMA_LPPe_SRN_MeasurementElement, OMA_LPPe_SRN_MeasurementElement_sequence); + + return offset; +} + + +static const per_sequence_t SEQUENCE_SIZE_1_64_OF_OMA_LPPe_SRN_MeasurementElement_sequence_of[1] = { + { &hf_lppe_srnMeasurementList_item, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lppe_OMA_LPPe_SRN_MeasurementElement }, +}; + +static int +dissect_lppe_SEQUENCE_SIZE_1_64_OF_OMA_LPPe_SRN_MeasurementElement(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_constrained_sequence_of(tvb, offset, actx, tree, hf_index, + ett_lppe_SEQUENCE_SIZE_1_64_OF_OMA_LPPe_SRN_MeasurementElement, SEQUENCE_SIZE_1_64_OF_OMA_LPPe_SRN_MeasurementElement_sequence_of, + 1, 64, FALSE); + + return offset; +} + + +static const per_sequence_t OMA_LPPe_SRN_ProvideLocationInformation_sequence[] = { + { &hf_lppe_srnMeasurementList, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lppe_SEQUENCE_SIZE_1_64_OF_OMA_LPPe_SRN_MeasurementElement }, + { &hf_lppe_srnError , ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lppe_OMA_LPPe_SRN_Error }, + { NULL, 0, 0, NULL } +}; + +static int +dissect_lppe_OMA_LPPe_SRN_ProvideLocationInformation(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index, + ett_lppe_OMA_LPPe_SRN_ProvideLocationInformation, OMA_LPPe_SRN_ProvideLocationInformation_sequence); + + return offset; +} + + +static const per_sequence_t OMA_LPPe_ProvideLocationInformation_sequence[] = { + { &hf_lppe_commonIEsProvideLocationInformation, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lppe_OMA_LPPe_CommonIEsProvideLocationInformation }, + { &hf_lppe_agnss_ProvideLocationInformation, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lppe_OMA_LPPe_AGNSS_ProvideLocationInformation }, + { &hf_lppe_otdoa_ProvideLocationInformation, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lppe_OMA_LPPe_OTDOA_ProvideLocationInformation }, + { &hf_lppe_eotd_ProvideLocationInformation, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lppe_OMA_LPPe_EOTD_ProvideLocationInformation }, + { &hf_lppe_otdoa_utra_ProvideLocationInformation, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lppe_OMA_LPPe_OTDOA_UTRA_ProvideLocationInformation }, + { &hf_lppe_ecid_lte_ProvideLocationInformation, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lppe_OMA_LPPe_ECID_LTE_ProvideLocationInformation }, + { &hf_lppe_ecid_gsm_ProvideLocationInformation, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lppe_OMA_LPPe_ECID_GSM_ProvideLocationInformation }, + { &hf_lppe_ecid_utra_ProvideLocationInformation, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lppe_OMA_LPPe_ECID_UTRA_ProvideLocationInformation }, + { &hf_lppe_wlan_ap_ProvideLocationInformastion, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lppe_OMA_LPPe_WLAN_AP_ProvideLocationInformation }, + { &hf_lppe_ecid_wimax_ProvideLocationInformastion, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lppe_OMA_LPPe_ECID_WiMax_ProvideLocationInformation }, + { &hf_lppe_sensor_ProvideLocationInformation, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lppe_OMA_LPPe_Sensor_ProvideLocationInformation }, + { &hf_lppe_srn_ProvideLocationInformation, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lppe_OMA_LPPe_SRN_ProvideLocationInformation }, + { NULL, 0, 0, NULL } +}; + +static int +dissect_lppe_OMA_LPPe_ProvideLocationInformation(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index, + ett_lppe_OMA_LPPe_ProvideLocationInformation, OMA_LPPe_ProvideLocationInformation_sequence); + + return offset; +} + + +static const per_sequence_t OMA_LPPe_CommonIEsError_sequence[] = { + { NULL, ASN1_EXTENSION_ROOT, 0, NULL } +}; + +static int +dissect_lppe_OMA_LPPe_CommonIEsError(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index, + ett_lppe_OMA_LPPe_CommonIEsError, OMA_LPPe_CommonIEsError_sequence); + + return offset; +} + + +static const per_sequence_t OMA_LPPe_Error_sequence[] = { + { &hf_lppe_commonIEsError , ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lppe_OMA_LPPe_CommonIEsError }, + { NULL, 0, 0, NULL } +}; + +static int +dissect_lppe_OMA_LPPe_Error(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index, + ett_lppe_OMA_LPPe_Error, OMA_LPPe_Error_sequence); + + return offset; +} + + +static const value_string lppe_T_abortCause_vals[] = { + { 0, "periodicADsessionStop" }, + { 1, "periodicADprocedureNotSupported" }, + { 2, "periodicADprocedureNotAccepted" }, + { 3, "periodicLocInfoSessionStop" }, + { 4, "periodicLocInfoProcedureNotSupported" }, + { 5, "periodicLocInfoProcedureNotAccepted" }, + { 0, NULL } +}; + + +static int +dissect_lppe_T_abortCause(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_enumerated(tvb, offset, actx, tree, hf_index, + 6, NULL, TRUE, 0, NULL); + + return offset; +} + + +static const per_sequence_t OMA_LPPe_CommonIEsAbort_sequence[] = { + { &hf_lppe_abortCause , ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lppe_T_abortCause }, + { &hf_lppe_periodicSessionIDtoAbort, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lppe_INTEGER_1_256 }, + { NULL, 0, 0, NULL } +}; + +static int +dissect_lppe_OMA_LPPe_CommonIEsAbort(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index, + ett_lppe_OMA_LPPe_CommonIEsAbort, OMA_LPPe_CommonIEsAbort_sequence); + + return offset; +} + + +static const value_string lppe_T_ccpAbort_vals[] = { + { 0, "undefined" }, + { 1, "ccpNotSupported" }, + { 2, "ccpNotSupportedForProvidedSignals" }, + { 0, NULL } +}; + + +static int +dissect_lppe_T_ccpAbort(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_enumerated(tvb, offset, actx, tree, hf_index, + 3, NULL, TRUE, 0, NULL); + + return offset; +} + + +static const value_string lppe_T_waIonoAbort_vals[] = { + { 0, "undefined" }, + { 1, "waIonoNotSupported" }, + { 2, "waIonoNotSupportedForProvidedGNSSs" }, + { 0, NULL } +}; + + +static int +dissect_lppe_T_waIonoAbort(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_enumerated(tvb, offset, actx, tree, hf_index, + 3, NULL, TRUE, 0, NULL); + + return offset; +} + + +static const per_sequence_t T_targetDeviceAbortCauses_sequence[] = { + { &hf_lppe_ccpAbort , ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lppe_T_ccpAbort }, + { &hf_lppe_waIonoAbort , ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lppe_T_waIonoAbort }, + { NULL, 0, 0, NULL } +}; + +static int +dissect_lppe_T_targetDeviceAbortCauses(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index, + ett_lppe_T_targetDeviceAbortCauses, T_targetDeviceAbortCauses_sequence); + + return offset; +} + + +static const per_sequence_t OMA_LPPe_AGNSS_Abort_sequence[] = { + { &hf_lppe_targetDeviceAbortCauses, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lppe_T_targetDeviceAbortCauses }, + { NULL, 0, 0, NULL } +}; + +static int +dissect_lppe_OMA_LPPe_AGNSS_Abort(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index, + ett_lppe_OMA_LPPe_AGNSS_Abort, OMA_LPPe_AGNSS_Abort_sequence); + + return offset; +} + + +static const per_sequence_t OMA_LPPe_Abort_sequence[] = { + { &hf_lppe_commonIEsAbort , ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lppe_OMA_LPPe_CommonIEsAbort }, + { &hf_lppe_agnssAbort , ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lppe_OMA_LPPe_AGNSS_Abort }, + { NULL, 0, 0, NULL } +}; + +static int +dissect_lppe_OMA_LPPe_Abort(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index, + ett_lppe_OMA_LPPe_Abort, OMA_LPPe_Abort_sequence); + + return offset; +} + + +static const value_string lppe_OMA_LPPe_MessageExtensionBody_vals[] = { + { 0, "requestCapabilities" }, + { 1, "provideCapabilities" }, + { 2, "requestAssistanceData" }, + { 3, "provideAssistanceData" }, + { 4, "requestLocationInformation" }, + { 5, "provideLocationInformation" }, + { 6, "error" }, + { 7, "abort" }, + { 0, NULL } +}; + +static const per_choice_t OMA_LPPe_MessageExtensionBody_choice[] = { + { 0, &hf_lppe_requestCapabilities, ASN1_EXTENSION_ROOT , dissect_lppe_OMA_LPPe_RequestCapabilities }, + { 1, &hf_lppe_provideCapabilities, ASN1_EXTENSION_ROOT , dissect_lppe_OMA_LPPe_ProvideCapabilities }, + { 2, &hf_lppe_requestAssistanceData, ASN1_EXTENSION_ROOT , dissect_lppe_OMA_LPPe_RequestAssistanceData }, + { 3, &hf_lppe_provideAssistanceData, ASN1_EXTENSION_ROOT , dissect_lppe_OMA_LPPe_ProvideAssistanceData }, + { 4, &hf_lppe_requestLocationInformation, ASN1_EXTENSION_ROOT , dissect_lppe_OMA_LPPe_RequestLocationInformation }, + { 5, &hf_lppe_provideLocationInformation, ASN1_EXTENSION_ROOT , dissect_lppe_OMA_LPPe_ProvideLocationInformation }, + { 6, &hf_lppe_error , ASN1_EXTENSION_ROOT , dissect_lppe_OMA_LPPe_Error }, + { 7, &hf_lppe_abort , ASN1_EXTENSION_ROOT , dissect_lppe_OMA_LPPe_Abort }, + { 0, NULL, 0, NULL } +}; + +static int +dissect_lppe_OMA_LPPe_MessageExtensionBody(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_choice(tvb, offset, actx, tree, hf_index, + ett_lppe_OMA_LPPe_MessageExtensionBody, OMA_LPPe_MessageExtensionBody_choice, + NULL); + + return offset; +} + + +static const per_sequence_t OMA_LPPe_MessageExtension_sequence[] = { + { &hf_lppe_lppeCompatibilityLevel, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_lppe_OMA_LPPe_LPPeCompatibilityLevel }, + { &hf_lppe_lppeVersion , ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_lppe_OMA_LPPe_LPPeVersion }, + { &hf_lppe_lppeMode , ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_lppe_OMA_LPPe_LPPeMode }, + { &hf_lppe_messageExtensionBody, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_lppe_OMA_LPPe_MessageExtensionBody }, + { NULL, 0, 0, NULL } +}; + +static int +dissect_lppe_OMA_LPPe_MessageExtension(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +#line 18 "../../asn1/lppe/lppe.cnf" + + proto_tree_add_item(tree, proto_lppe, tvb, 0, -1, ENC_NA); + + col_append_sep_str(actx->pinfo->cinfo, COL_PROTOCOL, "/", "LPPe"); + + offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index, + ett_lppe_OMA_LPPe_MessageExtension, OMA_LPPe_MessageExtension_sequence); + + return offset; +} + +/*--- PDUs ---*/ + +static int dissect_OMA_LPPe_MessageExtension_PDU(tvbuff_t *tvb _U_, packet_info *pinfo _U_, proto_tree *tree _U_) { + int offset = 0; + asn1_ctx_t asn1_ctx; + asn1_ctx_init(&asn1_ctx, ASN1_ENC_PER, FALSE, pinfo); + offset = dissect_lppe_OMA_LPPe_MessageExtension(tvb, offset, &asn1_ctx, tree, hf_lppe_OMA_LPPe_MessageExtension_PDU); + offset += 7; offset >>= 3; + return offset; +} + + +/*--- End of included file: packet-lppe-fn.c ---*/ +#line 62 "../../asn1/lppe/packet-lppe-template.c" + + +/*--- proto_register_lpp -------------------------------------------*/ +void proto_register_lppe(void) { + + /* List of fields */ + static hf_register_info hf[] = { + + +/*--- Included file: packet-lppe-hfarr.c ---*/ +#line 1 "../../asn1/lppe/packet-lppe-hfarr.c" + { &hf_lppe_OMA_LPPe_MessageExtension_PDU, + { "OMA-LPPe-MessageExtension", "lppe.OMA_LPPe_MessageExtension", + FT_NONE, BASE_NONE, NULL, 0, + NULL, HFILL }}, + { &hf_lppe_lppeCompatibilityLevel, + { "lppeCompatibilityLevel", "lppe.lppeCompatibilityLevel", + FT_UINT32, BASE_DEC, NULL, 0, + "OMA_LPPe_LPPeCompatibilityLevel", HFILL }}, + { &hf_lppe_lppeVersion, + { "lppeVersion", "lppe.lppeVersion", + FT_NONE, BASE_NONE, NULL, 0, + "OMA_LPPe_LPPeVersion", HFILL }}, + { &hf_lppe_lppeMode, + { "lppeMode", "lppe.lppeMode", + FT_UINT32, BASE_DEC, VALS(lppe_OMA_LPPe_LPPeMode_vals), 0, + "OMA_LPPe_LPPeMode", HFILL }}, + { &hf_lppe_messageExtensionBody, + { "messageExtensionBody", "lppe.messageExtensionBody", + FT_UINT32, BASE_DEC, VALS(lppe_OMA_LPPe_MessageExtensionBody_vals), 0, + "OMA_LPPe_MessageExtensionBody", HFILL }}, + { &hf_lppe_majorVersion, + { "majorVersion", "lppe.majorVersion", + FT_UINT32, BASE_DEC, NULL, 0, + "INTEGER_0_255", HFILL }}, + { &hf_lppe_minorVersion, + { "minorVersion", "lppe.minorVersion", + FT_UINT32, BASE_DEC, NULL, 0, + "INTEGER_0_255", HFILL }}, + { &hf_lppe_requestCapabilities, + { "requestCapabilities", "lppe.requestCapabilities", + FT_NONE, BASE_NONE, NULL, 0, + "OMA_LPPe_RequestCapabilities", HFILL }}, + { &hf_lppe_provideCapabilities, + { "provideCapabilities", "lppe.provideCapabilities", + FT_NONE, BASE_NONE, NULL, 0, + "OMA_LPPe_ProvideCapabilities", HFILL }}, + { &hf_lppe_requestAssistanceData, + { "requestAssistanceData", "lppe.requestAssistanceData", + FT_NONE, BASE_NONE, NULL, 0, + "OMA_LPPe_RequestAssistanceData", HFILL }}, + { &hf_lppe_provideAssistanceData, + { "provideAssistanceData", "lppe.provideAssistanceData", + FT_NONE, BASE_NONE, NULL, 0, + "OMA_LPPe_ProvideAssistanceData", HFILL }}, + { &hf_lppe_requestLocationInformation, + { "requestLocationInformation", "lppe.requestLocationInformation", + FT_NONE, BASE_NONE, NULL, 0, + "OMA_LPPe_RequestLocationInformation", HFILL }}, + { &hf_lppe_provideLocationInformation, + { "provideLocationInformation", "lppe.provideLocationInformation", + FT_NONE, BASE_NONE, NULL, 0, + "OMA_LPPe_ProvideLocationInformation", HFILL }}, + { &hf_lppe_error, + { "error", "lppe.error", + FT_NONE, BASE_NONE, NULL, 0, + "OMA_LPPe_Error", HFILL }}, + { &hf_lppe_abort, + { "abort", "lppe.abort", + FT_NONE, BASE_NONE, NULL, 0, + "OMA_LPPe_Abort", HFILL }}, + { &hf_lppe_commonIEsRequestCapabilities, + { "commonIEsRequestCapabilities", "lppe.commonIEsRequestCapabilities", + FT_NONE, BASE_NONE, NULL, 0, + "OMA_LPPe_CommonIEsRequestCapabilities", HFILL }}, + { &hf_lppe_agnss_RequestCapabilities, + { "agnss-RequestCapabilities", "lppe.agnss_RequestCapabilities", + FT_NONE, BASE_NONE, NULL, 0, + "OMA_LPPe_AGNSS_RequestCapabilities", HFILL }}, + { &hf_lppe_otdoa_RequestCapabilities, + { "otdoa-RequestCapabilities", "lppe.otdoa_RequestCapabilities", + FT_NONE, BASE_NONE, NULL, 0, + "OMA_LPPe_OTDOA_RequestCapabilities", HFILL }}, + { &hf_lppe_eotd_RequestCapabilities, + { "eotd-RequestCapabilities", "lppe.eotd_RequestCapabilities", + FT_NONE, BASE_NONE, NULL, 0, + "OMA_LPPe_EOTD_RequestCapabilities", HFILL }}, + { &hf_lppe_otdoa_utra_RequestCapabilities, + { "otdoa-utra-RequestCapabilities", "lppe.otdoa_utra_RequestCapabilities", + FT_NONE, BASE_NONE, NULL, 0, + "OMA_LPPe_OTDOA_UTRA_RequestCapabilities", HFILL }}, + { &hf_lppe_ecid_lte_RequestCapabilities, + { "ecid-lte-RequestCapabilities", "lppe.ecid_lte_RequestCapabilities", + FT_NONE, BASE_NONE, NULL, 0, + "OMA_LPPe_ECID_LTE_RequestCapabilities", HFILL }}, + { &hf_lppe_ecid_gsm_RequestCapabilities, + { "ecid-gsm-RequestCapabilities", "lppe.ecid_gsm_RequestCapabilities", + FT_NONE, BASE_NONE, NULL, 0, + "OMA_LPPe_ECID_GSM_RequestCapabilities", HFILL }}, + { &hf_lppe_ecid_utra_RequestCapabilities, + { "ecid-utra-RequestCapabilities", "lppe.ecid_utra_RequestCapabilities", + FT_NONE, BASE_NONE, NULL, 0, + "OMA_LPPe_ECID_UTRA_RequestCapabilities", HFILL }}, + { &hf_lppe_wlan_ap_RequestCapabilities, + { "wlan-ap-RequestCapabilities", "lppe.wlan_ap_RequestCapabilities", + FT_NONE, BASE_NONE, NULL, 0, + "OMA_LPPe_WLAN_AP_RequestCapabilities", HFILL }}, + { &hf_lppe_ecid_wimax_RequestCapabilities, + { "ecid-wimax-RequestCapabilities", "lppe.ecid_wimax_RequestCapabilities", + FT_NONE, BASE_NONE, NULL, 0, + "OMA_LPPe_ECID_WiMax_RequestCapabilities", HFILL }}, + { &hf_lppe_sensor_RequestCapabilities, + { "sensor-RequestCapabilities", "lppe.sensor_RequestCapabilities", + FT_NONE, BASE_NONE, NULL, 0, + "OMA_LPPe_Sensor_RequestCapabilities", HFILL }}, + { &hf_lppe_srn_RequestCapabilities, + { "srn-RequestCapabilities", "lppe.srn_RequestCapabilities", + FT_NONE, BASE_NONE, NULL, 0, + "OMA_LPPe_SRN_RequestCapabilities", HFILL }}, + { &hf_lppe_commonIEsProvideCapabilities, + { "commonIEsProvideCapabilities", "lppe.commonIEsProvideCapabilities", + FT_NONE, BASE_NONE, NULL, 0, + "OMA_LPPe_CommonIEsProvideCapabilities", HFILL }}, + { &hf_lppe_agnss_ProvideCapabilities, + { "agnss-ProvideCapabilities", "lppe.agnss_ProvideCapabilities", + FT_NONE, BASE_NONE, NULL, 0, + "OMA_LPPe_AGNSS_ProvideCapabilities", HFILL }}, + { &hf_lppe_otdoa_ProvideCapabilities, + { "otdoa-ProvideCapabilities", "lppe.otdoa_ProvideCapabilities", + FT_NONE, BASE_NONE, NULL, 0, + "OMA_LPPe_OTDOA_ProvideCapabilities", HFILL }}, + { &hf_lppe_eotd_ProvideCapabilities, + { "eotd-ProvideCapabilities", "lppe.eotd_ProvideCapabilities", + FT_NONE, BASE_NONE, NULL, 0, + "OMA_LPPe_EOTD_ProvideCapabilities", HFILL }}, + { &hf_lppe_otdoa_utra_ProvideCapabilities, + { "otdoa-utra-ProvideCapabilities", "lppe.otdoa_utra_ProvideCapabilities", + FT_NONE, BASE_NONE, NULL, 0, + "OMA_LPPe_OTDOA_UTRA_ProvideCapabilities", HFILL }}, + { &hf_lppe_ecid_lte_ProvideCapabilities, + { "ecid-lte-ProvideCapabilities", "lppe.ecid_lte_ProvideCapabilities", + FT_NONE, BASE_NONE, NULL, 0, + "OMA_LPPe_ECID_LTE_ProvideCapabilities", HFILL }}, + { &hf_lppe_ecid_gsm_ProvideCapabilities, + { "ecid-gsm-ProvideCapabilities", "lppe.ecid_gsm_ProvideCapabilities", + FT_NONE, BASE_NONE, NULL, 0, + "OMA_LPPe_ECID_GSM_ProvideCapabilities", HFILL }}, + { &hf_lppe_ecid_utra_ProvideCapabilities, + { "ecid-utra-ProvideCapabilities", "lppe.ecid_utra_ProvideCapabilities", + FT_NONE, BASE_NONE, NULL, 0, + "OMA_LPPe_ECID_UTRA_ProvideCapabilities", HFILL }}, + { &hf_lppe_wlan_ap_ProvideCapabilities, + { "wlan-ap-ProvideCapabilities", "lppe.wlan_ap_ProvideCapabilities", + FT_NONE, BASE_NONE, NULL, 0, + "OMA_LPPe_WLAN_AP_ProvideCapabilities", HFILL }}, + { &hf_lppe_ecid_wimax_ProvideCapabilities, + { "ecid-wimax-ProvideCapabilities", "lppe.ecid_wimax_ProvideCapabilities", + FT_NONE, BASE_NONE, NULL, 0, + "OMA_LPPe_ECID_WiMax_ProvideCapabilities", HFILL }}, + { &hf_lppe_sensor_ProvideCapabilities, + { "sensor-ProvideCapabilities", "lppe.sensor_ProvideCapabilities", + FT_NONE, BASE_NONE, NULL, 0, + "OMA_LPPe_Sensor_ProvideCapabilities", HFILL }}, + { &hf_lppe_srn_ProvideCapabilities, + { "srn-ProvideCapabilities", "lppe.srn_ProvideCapabilities", + FT_NONE, BASE_NONE, NULL, 0, + "OMA_LPPe_SRN_ProvideCapabilities", HFILL }}, + { &hf_lppe_commonIEsRequestAssistanceData, + { "commonIEsRequestAssistanceData", "lppe.commonIEsRequestAssistanceData", + FT_NONE, BASE_NONE, NULL, 0, + "OMA_LPPe_CommonIEsRequestAssistanceData", HFILL }}, + { &hf_lppe_agnss_RequestAssistanceData, + { "agnss-RequestAssistanceData", "lppe.agnss_RequestAssistanceData", + FT_NONE, BASE_NONE, NULL, 0, + "OMA_LPPe_AGNSS_RequestAssistanceData", HFILL }}, + { &hf_lppe_otdoa_RequestAssistanceData, + { "otdoa-RequestAssistanceData", "lppe.otdoa_RequestAssistanceData", + FT_NONE, BASE_NONE, NULL, 0, + "OMA_LPPe_OTDOA_RequestAssistanceData", HFILL }}, + { &hf_lppe_eotd_RequestAssistanceData, + { "eotd-RequestAssistanceData", "lppe.eotd_RequestAssistanceData", + FT_NONE, BASE_NONE, NULL, 0, + "OMA_LPPe_EOTD_RequestAssistanceData", HFILL }}, + { &hf_lppe_otdoa_utra_RequestAssistanceData, + { "otdoa-utra-RequestAssistanceData", "lppe.otdoa_utra_RequestAssistanceData", + FT_NONE, BASE_NONE, NULL, 0, + "OMA_LPPe_OTDOA_UTRA_RequestAssistanceData", HFILL }}, + { &hf_lppe_ecid_lte_RequestAssistanceData, + { "ecid-lte-RequestAssistanceData", "lppe.ecid_lte_RequestAssistanceData", + FT_NONE, BASE_NONE, NULL, 0, + "OMA_LPPe_ECID_LTE_RequestAssistanceData", HFILL }}, + { &hf_lppe_ecid_gsm_RequestAssistanceData, + { "ecid-gsm-RequestAssistanceData", "lppe.ecid_gsm_RequestAssistanceData", + FT_NONE, BASE_NONE, NULL, 0, + "OMA_LPPe_ECID_GSM_RequestAssistanceData", HFILL }}, + { &hf_lppe_ecid_utra_RequestAssistanceData, + { "ecid-utra-RequestAssistanceData", "lppe.ecid_utra_RequestAssistanceData", + FT_NONE, BASE_NONE, NULL, 0, + "OMA_LPPe_ECID_UTRA_RequestAssistanceData", HFILL }}, + { &hf_lppe_wlan_ap_RequestAssistanceData, + { "wlan-ap-RequestAssistanceData", "lppe.wlan_ap_RequestAssistanceData", + FT_NONE, BASE_NONE, NULL, 0, + "OMA_LPPe_WLAN_AP_RequestAssistanceData", HFILL }}, + { &hf_lppe_sensor_RequestAssistanceData, + { "sensor-RequestAssistanceData", "lppe.sensor_RequestAssistanceData", + FT_NONE, BASE_NONE, NULL, 0, + "OMA_LPPe_Sensor_RequestAssistanceData", HFILL }}, + { &hf_lppe_srn_RequestAssistanceData, + { "srn-RequestAssistanceData", "lppe.srn_RequestAssistanceData", + FT_NONE, BASE_NONE, NULL, 0, + "OMA_LPPe_SRN_RequestAssistanceData", HFILL }}, + { &hf_lppe_commonIEsProvideAssistanceData, + { "commonIEsProvideAssistanceData", "lppe.commonIEsProvideAssistanceData", + FT_NONE, BASE_NONE, NULL, 0, + "OMA_LPPe_CommonIEsProvideAssistanceData", HFILL }}, + { &hf_lppe_agnss_ProvideAssistanceData, + { "agnss-ProvideAssistanceData", "lppe.agnss_ProvideAssistanceData", + FT_NONE, BASE_NONE, NULL, 0, + "OMA_LPPe_AGNSS_ProvideAssistanceData", HFILL }}, + { &hf_lppe_otdoa_ProvideAssistanceData, + { "otdoa-ProvideAssistanceData", "lppe.otdoa_ProvideAssistanceData", + FT_NONE, BASE_NONE, NULL, 0, + "OMA_LPPe_OTDOA_ProvideAssistanceData", HFILL }}, + { &hf_lppe_eotd_ProvideAssistanceData, + { "eotd-ProvideAssistanceData", "lppe.eotd_ProvideAssistanceData", + FT_NONE, BASE_NONE, NULL, 0, + "OMA_LPPe_EOTD_ProvideAssistanceData", HFILL }}, + { &hf_lppe_otdoa_utra_ProvideAssistanceData, + { "otdoa-utra-ProvideAssistanceData", "lppe.otdoa_utra_ProvideAssistanceData", + FT_NONE, BASE_NONE, NULL, 0, + "OMA_LPPe_OTDOA_UTRA_ProvideAssistanceData", HFILL }}, + { &hf_lppe_ecid_lte_ProvideAssistanceData, + { "ecid-lte-ProvideAssistanceData", "lppe.ecid_lte_ProvideAssistanceData", + FT_NONE, BASE_NONE, NULL, 0, + "OMA_LPPe_ECID_LTE_ProvideAssistanceData", HFILL }}, + { &hf_lppe_ecid_gsm_ProvideAssistanceData, + { "ecid-gsm-ProvideAssistanceData", "lppe.ecid_gsm_ProvideAssistanceData", + FT_NONE, BASE_NONE, NULL, 0, + "OMA_LPPe_ECID_GSM_ProvideAssistanceData", HFILL }}, + { &hf_lppe_ecid_utra_ProvideAssistanceData, + { "ecid-utra-ProvideAssistanceData", "lppe.ecid_utra_ProvideAssistanceData", + FT_NONE, BASE_NONE, NULL, 0, + "OMA_LPPe_ECID_UTRA_ProvideAssistanceData", HFILL }}, + { &hf_lppe_wlan_ap_ProvideAssistanceData, + { "wlan-ap-ProvideAssistanceData", "lppe.wlan_ap_ProvideAssistanceData", + FT_NONE, BASE_NONE, NULL, 0, + "OMA_LPPe_WLAN_AP_ProvideAssistanceData", HFILL }}, + { &hf_lppe_sensor_ProvideAssistanceData, + { "sensor-ProvideAssistanceData", "lppe.sensor_ProvideAssistanceData", + FT_NONE, BASE_NONE, NULL, 0, + "OMA_LPPe_Sensor_ProvideAssistanceData", HFILL }}, + { &hf_lppe_srn_ProvideAssistanceData, + { "srn-ProvideAssistanceData", "lppe.srn_ProvideAssistanceData", + FT_NONE, BASE_NONE, NULL, 0, + "OMA_LPPe_SRN_ProvideAssistanceData", HFILL }}, + { &hf_lppe_commonIEsRequestLocationInformation, + { "commonIEsRequestLocationInformation", "lppe.commonIEsRequestLocationInformation", + FT_NONE, BASE_NONE, NULL, 0, + "OMA_LPPe_CommonIEsRequestLocationInformation", HFILL }}, + { &hf_lppe_agnss_RequestLocationInformation, + { "agnss-RequestLocationInformation", "lppe.agnss_RequestLocationInformation", + FT_NONE, BASE_NONE, NULL, 0, + "OMA_LPPe_AGNSS_RequestLocationInformation", HFILL }}, + { &hf_lppe_otdoa_RequestLocationInformation, + { "otdoa-RequestLocationInformation", "lppe.otdoa_RequestLocationInformation", + FT_NONE, BASE_NONE, NULL, 0, + "OMA_LPPe_OTDOA_RequestLocationInformation", HFILL }}, + { &hf_lppe_eotd_RequestLocationInformation, + { "eotd-RequestLocationInformation", "lppe.eotd_RequestLocationInformation", + FT_NONE, BASE_NONE, NULL, 0, + "OMA_LPPe_EOTD_RequestLocationInformation", HFILL }}, + { &hf_lppe_otdoa_utra_RequestLocationInformation, + { "otdoa-utra-RequestLocationInformation", "lppe.otdoa_utra_RequestLocationInformation", + FT_NONE, BASE_NONE, NULL, 0, + "OMA_LPPe_OTDOA_UTRA_RequestLocationInformation", HFILL }}, + { &hf_lppe_ecid_lte_RequestLocationInformation, + { "ecid-lte-RequestLocationInformation", "lppe.ecid_lte_RequestLocationInformation", + FT_NONE, BASE_NONE, NULL, 0, + "OMA_LPPe_ECID_LTE_RequestLocationInformation", HFILL }}, + { &hf_lppe_ecid_gsm_RequestLocationInformation, + { "ecid-gsm-RequestLocationInformation", "lppe.ecid_gsm_RequestLocationInformation", + FT_NONE, BASE_NONE, NULL, 0, + "OMA_LPPe_ECID_GSM_RequestLocationInformation", HFILL }}, + { &hf_lppe_ecid_utra_RequestLocationInformation, + { "ecid-utra-RequestLocationInformation", "lppe.ecid_utra_RequestLocationInformation", + FT_NONE, BASE_NONE, NULL, 0, + "OMA_LPPe_ECID_UTRA_RequestLocationInformation", HFILL }}, + { &hf_lppe_wlan_ap_RequestLocationInformation, + { "wlan-ap-RequestLocationInformation", "lppe.wlan_ap_RequestLocationInformation", + FT_NONE, BASE_NONE, NULL, 0, + "OMA_LPPe_WLAN_AP_RequestLocationInformation", HFILL }}, + { &hf_lppe_ecid_wimax_RequestLocationInformation, + { "ecid-wimax-RequestLocationInformation", "lppe.ecid_wimax_RequestLocationInformation", + FT_NONE, BASE_NONE, NULL, 0, + "OMA_LPPe_ECID_WiMax_RequestLocationInformation", HFILL }}, + { &hf_lppe_sensor_RequestLocationInformation, + { "sensor-RequestLocationInformation", "lppe.sensor_RequestLocationInformation", + FT_NONE, BASE_NONE, NULL, 0, + "OMA_LPPe_Sensor_RequestLocationInformation", HFILL }}, + { &hf_lppe_srn_RequestLocationInformation, + { "srn-RequestLocationInformation", "lppe.srn_RequestLocationInformation", + FT_NONE, BASE_NONE, NULL, 0, + "OMA_LPPe_SRN_RequestLocationInformation", HFILL }}, + { &hf_lppe_commonIEsProvideLocationInformation, + { "commonIEsProvideLocationInformation", "lppe.commonIEsProvideLocationInformation", + FT_NONE, BASE_NONE, NULL, 0, + "OMA_LPPe_CommonIEsProvideLocationInformation", HFILL }}, + { &hf_lppe_agnss_ProvideLocationInformation, + { "agnss-ProvideLocationInformation", "lppe.agnss_ProvideLocationInformation", + FT_NONE, BASE_NONE, NULL, 0, + "OMA_LPPe_AGNSS_ProvideLocationInformation", HFILL }}, + { &hf_lppe_otdoa_ProvideLocationInformation, + { "otdoa-ProvideLocationInformation", "lppe.otdoa_ProvideLocationInformation", + FT_NONE, BASE_NONE, NULL, 0, + "OMA_LPPe_OTDOA_ProvideLocationInformation", HFILL }}, + { &hf_lppe_eotd_ProvideLocationInformation, + { "eotd-ProvideLocationInformation", "lppe.eotd_ProvideLocationInformation", + FT_NONE, BASE_NONE, NULL, 0, + "OMA_LPPe_EOTD_ProvideLocationInformation", HFILL }}, + { &hf_lppe_otdoa_utra_ProvideLocationInformation, + { "otdoa-utra-ProvideLocationInformation", "lppe.otdoa_utra_ProvideLocationInformation", + FT_NONE, BASE_NONE, NULL, 0, + "OMA_LPPe_OTDOA_UTRA_ProvideLocationInformation", HFILL }}, + { &hf_lppe_ecid_lte_ProvideLocationInformation, + { "ecid-lte-ProvideLocationInformation", "lppe.ecid_lte_ProvideLocationInformation", + FT_NONE, BASE_NONE, NULL, 0, + "OMA_LPPe_ECID_LTE_ProvideLocationInformation", HFILL }}, + { &hf_lppe_ecid_gsm_ProvideLocationInformation, + { "ecid-gsm-ProvideLocationInformation", "lppe.ecid_gsm_ProvideLocationInformation", + FT_NONE, BASE_NONE, NULL, 0, + "OMA_LPPe_ECID_GSM_ProvideLocationInformation", HFILL }}, + { &hf_lppe_ecid_utra_ProvideLocationInformation, + { "ecid-utra-ProvideLocationInformation", "lppe.ecid_utra_ProvideLocationInformation", + FT_NONE, BASE_NONE, NULL, 0, + "OMA_LPPe_ECID_UTRA_ProvideLocationInformation", HFILL }}, + { &hf_lppe_wlan_ap_ProvideLocationInformastion, + { "wlan-ap-ProvideLocationInformastion", "lppe.wlan_ap_ProvideLocationInformastion", + FT_NONE, BASE_NONE, NULL, 0, + "OMA_LPPe_WLAN_AP_ProvideLocationInformation", HFILL }}, + { &hf_lppe_ecid_wimax_ProvideLocationInformastion, + { "ecid-wimax-ProvideLocationInformastion", "lppe.ecid_wimax_ProvideLocationInformastion", + FT_NONE, BASE_NONE, NULL, 0, + "OMA_LPPe_ECID_WiMax_ProvideLocationInformation", HFILL }}, + { &hf_lppe_sensor_ProvideLocationInformation, + { "sensor-ProvideLocationInformation", "lppe.sensor_ProvideLocationInformation", + FT_NONE, BASE_NONE, NULL, 0, + "OMA_LPPe_Sensor_ProvideLocationInformation", HFILL }}, + { &hf_lppe_srn_ProvideLocationInformation, + { "srn-ProvideLocationInformation", "lppe.srn_ProvideLocationInformation", + FT_NONE, BASE_NONE, NULL, 0, + "OMA_LPPe_SRN_ProvideLocationInformation", HFILL }}, + { &hf_lppe_commonIEsAbort, + { "commonIEsAbort", "lppe.commonIEsAbort", + FT_NONE, BASE_NONE, NULL, 0, + "OMA_LPPe_CommonIEsAbort", HFILL }}, + { &hf_lppe_agnssAbort, + { "agnssAbort", "lppe.agnssAbort", + FT_NONE, BASE_NONE, NULL, 0, + "OMA_LPPe_AGNSS_Abort", HFILL }}, + { &hf_lppe_commonIEsError, + { "commonIEsError", "lppe.commonIEsError", + FT_NONE, BASE_NONE, NULL, 0, + "OMA_LPPe_CommonIEsError", HFILL }}, + { &hf_lppe_dataSerialNumber, + { "dataSerialNumber", "lppe.dataSerialNumber", + FT_UINT32, BASE_DEC, NULL, 0, + "INTEGER_0_4294967295", HFILL }}, + { &hf_lppe_containerID, + { "containerID", "lppe.containerID", + FT_UINT32, BASE_DEC, NULL, 0, + "INTEGER_0_65535", HFILL }}, + { &hf_lppe_OMA_LPPe_AssistanceContainerProvideList_item, + { "OMA-LPPe-AssistanceContainerProvide", "lppe.OMA_LPPe_AssistanceContainerProvide", + FT_NONE, BASE_NONE, NULL, 0, + NULL, HFILL }}, + { &hf_lppe_dataIdentifier, + { "dataIdentifier", "lppe.dataIdentifier", + FT_NONE, BASE_NONE, NULL, 0, + "OMA_LPPe_VendorOrOperatorAssistanceDataIdentifier", HFILL }}, + { &hf_lppe_checkOrUpdateOrError, + { "checkOrUpdateOrError", "lppe.checkOrUpdateOrError", + FT_UINT32, BASE_DEC, VALS(lppe_T_checkOrUpdateOrError_vals), 0, + NULL, HFILL }}, + { &hf_lppe_dataResult, + { "dataResult", "lppe.dataResult", + FT_UINT32, BASE_DEC, VALS(lppe_T_dataResult_vals), 0, + NULL, HFILL }}, + { &hf_lppe_simulationResult, + { "simulationResult", "lppe.simulationResult", + FT_UINT32, BASE_DEC, NULL, 0, + "INTEGER_0_5000", HFILL }}, + { &hf_lppe_data, + { "data", "lppe.data", + FT_NONE, BASE_NONE, NULL, 0, + "OMA_LPPe_AssistanceContainerData", HFILL }}, + { &hf_lppe_errorCode, + { "errorCode", "lppe.errorCode", + FT_NONE, BASE_NONE, NULL, 0, + "OMA_LPPe_AssistanceContainerProvideError", HFILL }}, + { &hf_lppe_dataSerialNumber_01, + { "dataSerialNumber", "lppe.dataSerialNumber", + FT_NONE, BASE_NONE, NULL, 0, + "OMA_LPPe_AssistanceContainer_DataSerialNumber", HFILL }}, + { &hf_lppe_data_01, + { "data", "lppe.data", + FT_BYTES, BASE_NONE, NULL, 0, + "OCTET_STRING", HFILL }}, + { &hf_lppe_validityPeriod, + { "validityPeriod", "lppe.validityPeriod", + FT_NONE, BASE_NONE, NULL, 0, + "OMA_LPPe_ValidityPeriod", HFILL }}, + { &hf_lppe_validityArea, + { "validityArea", "lppe.validityArea", + FT_NONE, BASE_NONE, NULL, 0, + "OMA_LPPe_ValidityArea", HFILL }}, + { &hf_lppe_serverError, + { "serverError", "lppe.serverError", + FT_UINT32, BASE_DEC, VALS(lppe_T_serverError_vals), 0, + NULL, HFILL }}, + { &hf_lppe_OMA_LPPe_AssistanceContainerRequestList_item, + { "OMA-LPPe-AssistanceContainerRequest", "lppe.OMA_LPPe_AssistanceContainerRequest", + FT_NONE, BASE_NONE, NULL, 0, + NULL, HFILL }}, + { &hf_lppe_simulatedReq, + { "simulatedReq", "lppe.simulatedReq", + FT_BOOLEAN, BASE_NONE, NULL, 0, + "BOOLEAN", HFILL }}, + { &hf_lppe_checkOrUpdateReq, + { "checkOrUpdateReq", "lppe.checkOrUpdateReq", + FT_NONE, BASE_NONE, NULL, 0, + "OMA_LPPe_AssistanceContainerCheckOrUpdateReq", HFILL }}, + { &hf_lppe_validityTimeRequest, + { "validityTimeRequest", "lppe.validityTimeRequest", + FT_NONE, BASE_NONE, NULL, 0, + "OMA_LPPe_ValidityPeriod", HFILL }}, + { &hf_lppe_proprietaryRequestParameters, + { "proprietaryRequestParameters", "lppe.proprietaryRequestParameters", + FT_BYTES, BASE_NONE, NULL, 0, + "OCTET_STRING", HFILL }}, + { &hf_lppe_checkLatest, + { "checkLatest", "lppe.checkLatest", + FT_UINT32, BASE_DEC, VALS(lppe_T_checkLatest_vals), 0, + NULL, HFILL }}, + { &hf_lppe_locationAreaCode, + { "locationAreaCode", "lppe.locationAreaCode", + FT_BYTES, BASE_NONE, NULL, 0, + "BIT_STRING_SIZE_16", HFILL }}, + { &hf_lppe_cellIdentity, + { "cellIdentity", "lppe.cellIdentity", + FT_BYTES, BASE_NONE, NULL, 0, + "BIT_STRING_SIZE_16", HFILL }}, + { &hf_lppe_bsic, + { "bsic", "lppe.bsic", + FT_UINT32, BASE_DEC, NULL, 0, + "INTEGER_0_63", HFILL }}, + { &hf_lppe_bcch, + { "bcch", "lppe.bcch", + FT_UINT32, BASE_DEC, NULL, 0, + "INTEGER_0_1023", HFILL }}, + { &hf_lppe_countryCode, + { "countryCode", "lppe.countryCode", + FT_BYTES, BASE_NONE, NULL, 0, + "OCTET_STRING_SIZE_2", HFILL }}, + { &hf_lppe_civicAddressElementList, + { "civicAddressElementList", "lppe.civicAddressElementList", + FT_UINT32, BASE_DEC, NULL, 0, + "OMA_LPPe_CivicAddressElementList", HFILL }}, + { &hf_lppe_OMA_LPPe_CivicAddressElementList_item, + { "OMA-LPPe-CivicAddressElement", "lppe.OMA_LPPe_CivicAddressElement", + FT_NONE, BASE_NONE, NULL, 0, + NULL, HFILL }}, + { &hf_lppe_caType, + { "caType", "lppe.caType", + FT_UINT32, BASE_DEC, NULL, 0, + "INTEGER_0_511", HFILL }}, + { &hf_lppe_caValue, + { "caValue", "lppe.caValue", + FT_BYTES, BASE_NONE, NULL, 0, + "OCTET_STRING_SIZE_1_256", HFILL }}, + { &hf_lppe_duration, + { "duration", "lppe.duration", + FT_UINT32, BASE_DEC, NULL, 0, + "INTEGER_1_63", HFILL }}, + { &hf_lppe_durationLSB, + { "durationLSB", "lppe.durationLSB", + FT_UINT32, BASE_DEC, NULL, 0, + "INTEGER_1_89", HFILL }}, + { &hf_lppe_latitude, + { "latitude", "lppe.latitude", + FT_INT32, BASE_DEC, NULL, 0, + "INTEGER_M2147483648_2147483647", HFILL }}, + { &hf_lppe_longitude, + { "longitude", "lppe.longitude", + FT_INT32, BASE_DEC, NULL, 0, + "INTEGER_M2147483648_2147483647", HFILL }}, + { &hf_lppe_cep, + { "cep", "lppe.cep", + FT_UINT32, BASE_DEC, NULL, 0, + "INTEGER_0_255", HFILL }}, + { &hf_lppe_uncertainty_semimajor, + { "uncertainty-semimajor", "lppe.uncertainty_semimajor", + FT_UINT32, BASE_DEC, NULL, 0, + "INTEGER_0_255", HFILL }}, + { &hf_lppe_uncertainty_semiminor, + { "uncertainty-semiminor", "lppe.uncertainty_semiminor", + FT_UINT32, BASE_DEC, NULL, 0, + "INTEGER_0_255", HFILL }}, + { &hf_lppe_offset_angle, + { "offset-angle", "lppe.offset_angle", + FT_UINT32, BASE_DEC, NULL, 0, + "INTEGER_0_179", HFILL }}, + { &hf_lppe_confidenceHorizontal, + { "confidenceHorizontal", "lppe.confidenceHorizontal", + FT_UINT32, BASE_DEC, NULL, 0, + "INTEGER_0_99", HFILL }}, + { &hf_lppe_altitude, + { "altitude", "lppe.altitude", + FT_INT32, BASE_DEC, NULL, 0, + "INTEGER_M64000_1280000", HFILL }}, + { &hf_lppe_uncertainty_altitude, + { "uncertainty-altitude", "lppe.uncertainty_altitude", + FT_UINT32, BASE_DEC, NULL, 0, + "INTEGER_0_255", HFILL }}, + { &hf_lppe_confidenceVertical, + { "confidenceVertical", "lppe.confidenceVertical", + FT_UINT32, BASE_DEC, NULL, 0, + "INTEGER_0_99", HFILL }}, + { &hf_lppe_enu_origin, + { "enu-origin", "lppe.enu_origin", + FT_NONE, BASE_NONE, NULL, 0, + "OMA_LPPe_HighAccuracy3Dposition", HFILL }}, + { &hf_lppe_east_component, + { "east-component", "lppe.east_component", + FT_UINT32, BASE_DEC, NULL, 0, + "INTEGER_0_511", HFILL }}, + { &hf_lppe_negative_sign_east, + { "negative-sign-east", "lppe.negative_sign_east", + FT_NONE, BASE_NONE, NULL, 0, + NULL, HFILL }}, + { &hf_lppe_north_component, + { "north-component", "lppe.north_component", + FT_UINT32, BASE_DEC, NULL, 0, + "INTEGER_0_511", HFILL }}, + { &hf_lppe_negative_sign_north, + { "negative-sign-north", "lppe.negative_sign_north", + FT_NONE, BASE_NONE, NULL, 0, + NULL, HFILL }}, + { &hf_lppe_up_component, + { "up-component", "lppe.up_component", + FT_UINT32, BASE_DEC, NULL, 0, + "INTEGER_0_511", HFILL }}, + { &hf_lppe_negative_sign_up, + { "negative-sign-up", "lppe.negative_sign_up", + FT_NONE, BASE_NONE, NULL, 0, + NULL, HFILL }}, + { &hf_lppe_uncertainty_up_component, + { "uncertainty-up-component", "lppe.uncertainty_up_component", + FT_UINT32, BASE_DEC, NULL, 0, + "INTEGER_0_255", HFILL }}, + { &hf_lppe_confidenceUp, + { "confidenceUp", "lppe.confidenceUp", + FT_UINT32, BASE_DEC, NULL, 0, + "INTEGER_0_99", HFILL }}, + { &hf_lppe_vendorOrOperatorID, + { "vendorOrOperatorID", "lppe.vendorOrOperatorID", + FT_UINT32, BASE_DEC, VALS(lppe_OMA_LPPe_VendorOrOperatorID_vals), 0, + "OMA_LPPe_VendorOrOperatorID", HFILL }}, + { &hf_lppe_locationInformationContainerDataList, + { "locationInformationContainerDataList", "lppe.locationInformationContainerDataList", + FT_UINT32, BASE_DEC, NULL, 0, + "OMA_LPPe_LocationInformationContainerDataList", HFILL }}, + { &hf_lppe_OMA_LPPe_LocationInformationContainerDataList_item, + { "OMA-LPPe-LocationInformationContainerData", "lppe.OMA_LPPe_LocationInformationContainerData", + FT_NONE, BASE_NONE, NULL, 0, + NULL, HFILL }}, + { &hf_lppe_containerID_01, + { "containerID", "lppe.containerID", + FT_NONE, BASE_NONE, NULL, 0, + "OMA_LPPe_LocationInformationContainerID", HFILL }}, + { &hf_lppe_containerData, + { "containerData", "lppe.containerData", + FT_BYTES, BASE_NONE, NULL, 0, + "OCTET_STRING", HFILL }}, + { &hf_lppe_locationInformationContainerRequestList, + { "locationInformationContainerRequestList", "lppe.locationInformationContainerRequestList", + FT_UINT32, BASE_DEC, NULL, 0, + "OMA_LPPe_LocationInformationContainerRequestList", HFILL }}, + { &hf_lppe_OMA_LPPe_LocationInformationContainerRequestList_item, + { "OMA-LPPe-LocationInformationContainerRequestItem", "lppe.OMA_LPPe_LocationInformationContainerRequestItem", + FT_NONE, BASE_NONE, NULL, 0, + NULL, HFILL }}, + { &hf_lppe_additionalInformation, + { "additionalInformation", "lppe.additionalInformation", + FT_BYTES, BASE_NONE, NULL, 0, + "OCTET_STRING", HFILL }}, + { &hf_lppe_dataID, + { "dataID", "lppe.dataID", + FT_NONE, BASE_NONE, NULL, 0, + "OMA_LPPe_AssistanceContainerID", HFILL }}, + { &hf_lppe_mapReference, + { "mapReference", "lppe.mapReference", + FT_BYTES, BASE_NONE, NULL, 0, + "OCTET_STRING_SIZE_1_64", HFILL }}, + { &hf_lppe_mapSize, + { "mapSize", "lppe.mapSize", + FT_UINT32, BASE_DEC, NULL, 0, + "INTEGER_1_5000", HFILL }}, + { &hf_lppe_eulerAngles, + { "eulerAngles", "lppe.eulerAngles", + FT_NONE, BASE_NONE, NULL, 0, + NULL, HFILL }}, + { &hf_lppe_alpha, + { "alpha", "lppe.alpha", + FT_UINT32, BASE_DEC, NULL, 0, + "INTEGER_0_359", HFILL }}, + { &hf_lppe_beta, + { "beta", "lppe.beta", + FT_UINT32, BASE_DEC, NULL, 0, + "INTEGER_0_180", HFILL }}, + { &hf_lppe_gamma, + { "gamma", "lppe.gamma", + FT_UINT32, BASE_DEC, NULL, 0, + "INTEGER_0_359", HFILL }}, + { &hf_lppe_referencePointUniqueID, + { "referencePointUniqueID", "lppe.referencePointUniqueID", + FT_NONE, BASE_NONE, NULL, 0, + "OMA_LPPe_ReferencePointUniqueID", HFILL }}, + { &hf_lppe_referencePointGeographicLocation, + { "referencePointGeographicLocation", "lppe.referencePointGeographicLocation", + FT_UINT32, BASE_DEC, VALS(lppe_T_referencePointGeographicLocation_vals), 0, + NULL, HFILL }}, + { &hf_lppe_location3D, + { "location3D", "lppe.location3D", + FT_NONE, BASE_NONE, NULL, 0, + "EllipsoidPointWithAltitude", HFILL }}, + { &hf_lppe_location3DwithUncertainty, + { "location3DwithUncertainty", "lppe.location3DwithUncertainty", + FT_NONE, BASE_NONE, NULL, 0, + "EllipsoidPointWithAltitudeAndUncertaintyEllipsoid", HFILL }}, + { &hf_lppe_locationwithhighaccuracy, + { "locationwithhighaccuracy", "lppe.locationwithhighaccuracy", + FT_NONE, BASE_NONE, NULL, 0, + "OMA_LPPe_HighAccuracy3Dposition", HFILL }}, + { &hf_lppe_referencePointCivicLocation, + { "referencePointCivicLocation", "lppe.referencePointCivicLocation", + FT_NONE, BASE_NONE, NULL, 0, + "OMA_LPPe_CivicLocation", HFILL }}, + { &hf_lppe_referencePointFloorLevel, + { "referencePointFloorLevel", "lppe.referencePointFloorLevel", + FT_INT32, BASE_DEC, NULL, 0, + "INTEGER_M20_235", HFILL }}, + { &hf_lppe_relatedReferencePoints, + { "relatedReferencePoints", "lppe.relatedReferencePoints", + FT_UINT32, BASE_DEC, NULL, 0, + "SEQUENCE_SIZE_1_8_OF_OMA_LPPe_ReferencePointRelationship", HFILL }}, + { &hf_lppe_relatedReferencePoints_item, + { "OMA-LPPe-ReferencePointRelationship", "lppe.OMA_LPPe_ReferencePointRelationship", + FT_NONE, BASE_NONE, NULL, 0, + NULL, HFILL }}, + { &hf_lppe_mapDataInformation, + { "mapDataInformation", "lppe.mapDataInformation", + FT_UINT32, BASE_DEC, NULL, 0, + "OMA_LPPe_MapDataInformation", HFILL }}, + { &hf_lppe_OMA_LPPe_MapDataInformation_item, + { "OMA-LPPe-MapDataReferenceElement", "lppe.OMA_LPPe_MapDataReferenceElement", + FT_NONE, BASE_NONE, NULL, 0, + NULL, HFILL }}, + { &hf_lppe_mapDataUrl, + { "mapDataUrl", "lppe.mapDataUrl", + FT_UINT32, BASE_DEC, VALS(lppe_T_mapDataUrl_vals), 0, + NULL, HFILL }}, + { &hf_lppe_mapDataUrl_01, + { "mapDataUrl", "lppe.mapDataUrl", + FT_STRING, BASE_NONE, NULL, 0, + "OMA_LPPe_Uri", HFILL }}, + { &hf_lppe_mapDataRef, + { "mapDataRef", "lppe.mapDataRef", + FT_NONE, BASE_NONE, NULL, 0, + "OMA_LPPe_MapDataReference", HFILL }}, + { &hf_lppe_mapProvider, + { "mapProvider", "lppe.mapProvider", + FT_UINT32, BASE_DEC, VALS(lppe_T_mapProvider_vals), 0, + NULL, HFILL }}, + { &hf_lppe_sameAsRefPointProvider, + { "sameAsRefPointProvider", "lppe.sameAsRefPointProvider", + FT_NONE, BASE_NONE, NULL, 0, + NULL, HFILL }}, + { &hf_lppe_notSameAsRefPointProvider, + { "notSameAsRefPointProvider", "lppe.notSameAsRefPointProvider", + FT_UINT32, BASE_DEC, VALS(lppe_OMA_LPPe_VendorOrOperatorID_vals), 0, + "OMA_LPPe_VendorOrOperatorID", HFILL }}, + { &hf_lppe_mapAssociation, + { "mapAssociation", "lppe.mapAssociation", + FT_UINT32, BASE_DEC, VALS(lppe_T_mapAssociation_vals), 0, + NULL, HFILL }}, + { &hf_lppe_referencePointUniqueID_01, + { "referencePointUniqueID", "lppe.referencePointUniqueID", + FT_NONE, BASE_NONE, NULL, 0, + NULL, HFILL }}, + { &hf_lppe_otherID, + { "otherID", "lppe.otherID", + FT_STRING, BASE_NONE, NULL, 0, + "VisibleString_SIZE_1_64", HFILL }}, + { &hf_lppe_mapOffset, + { "mapOffset", "lppe.mapOffset", + FT_NONE, BASE_NONE, NULL, 0, + "OMA_LPPe_RelativeLocation", HFILL }}, + { &hf_lppe_origin, + { "origin", "lppe.origin", + FT_NONE, BASE_NONE, NULL, 0, + NULL, HFILL }}, + { &hf_lppe_mapHorizontalOrientation, + { "mapHorizontalOrientation", "lppe.mapHorizontalOrientation", + FT_UINT32, BASE_DEC, NULL, 0, + "INTEGER_0_359", HFILL }}, + { &hf_lppe_relativeLocation, + { "relativeLocation", "lppe.relativeLocation", + FT_NONE, BASE_NONE, NULL, 0, + "OMA_LPPe_RelativeLocation", HFILL }}, + { &hf_lppe_providerID, + { "providerID", "lppe.providerID", + FT_UINT32, BASE_DEC, VALS(lppe_OMA_LPPe_VendorOrOperatorID_vals), 0, + "OMA_LPPe_VendorOrOperatorID", HFILL }}, + { &hf_lppe_providerAssignedID, + { "providerAssignedID", "lppe.providerAssignedID", + FT_BYTES, BASE_NONE, NULL, 0, + "OCTET_STRING", HFILL }}, + { &hf_lppe_version, + { "version", "lppe.version", + FT_UINT32, BASE_DEC, NULL, 0, + "INTEGER_1_64", HFILL }}, + { &hf_lppe_units, + { "units", "lppe.units", + FT_UINT32, BASE_DEC, VALS(lppe_T_units_vals), 0, + NULL, HFILL }}, + { &hf_lppe_arc_second_units, + { "arc-second-units", "lppe.arc_second_units", + FT_UINT32, BASE_DEC, VALS(lppe_T_arc_second_units_vals), 0, + NULL, HFILL }}, + { &hf_lppe_relativeNorth, + { "relativeNorth", "lppe.relativeNorth", + FT_INT32, BASE_DEC, NULL, 0, + "INTEGER_M524288_524287", HFILL }}, + { &hf_lppe_relativeEast, + { "relativeEast", "lppe.relativeEast", + FT_INT32, BASE_DEC, NULL, 0, + "INTEGER_M524288_524287", HFILL }}, + { &hf_lppe_relativeAltitude, + { "relativeAltitude", "lppe.relativeAltitude", + FT_NONE, BASE_NONE, NULL, 0, + "OMA_LPPe_RelativeAltitude", HFILL }}, + { &hf_lppe_horizontalUncertainty, + { "horizontalUncertainty", "lppe.horizontalUncertainty", + FT_NONE, BASE_NONE, NULL, 0, + "OMA_LPPe_HorizontalUncertaintyAndConfidence", HFILL }}, + { &hf_lppe_uncShape, + { "uncShape", "lppe.uncShape", + FT_UINT32, BASE_DEC, VALS(lppe_T_uncShape_vals), 0, + NULL, HFILL }}, + { &hf_lppe_circle, + { "circle", "lppe.circle", + FT_UINT32, BASE_DEC, NULL, 0, + "INTEGER_0_127", HFILL }}, + { &hf_lppe_ellipse, + { "ellipse", "lppe.ellipse", + FT_NONE, BASE_NONE, NULL, 0, + NULL, HFILL }}, + { &hf_lppe_semimajor, + { "semimajor", "lppe.semimajor", + FT_UINT32, BASE_DEC, NULL, 0, + "INTEGER_0_127", HFILL }}, + { &hf_lppe_semiminor, + { "semiminor", "lppe.semiminor", + FT_UINT32, BASE_DEC, NULL, 0, + "INTEGER_0_127", HFILL }}, + { &hf_lppe_offsetAngle, + { "offsetAngle", "lppe.offsetAngle", + FT_UINT32, BASE_DEC, NULL, 0, + "INTEGER_0_179", HFILL }}, + { &hf_lppe_confidence, + { "confidence", "lppe.confidence", + FT_UINT32, BASE_DEC, NULL, 0, + "INTEGER_0_99", HFILL }}, + { &hf_lppe_geodeticRelativeAltitude, + { "geodeticRelativeAltitude", "lppe.geodeticRelativeAltitude", + FT_NONE, BASE_NONE, NULL, 0, + "OMA_LPPe_GeodeticRelativeAltitude", HFILL }}, + { &hf_lppe_civicRelativeAltitude, + { "civicRelativeAltitude", "lppe.civicRelativeAltitude", + FT_NONE, BASE_NONE, NULL, 0, + "OMA_LPPe_CivicRelativeAltitude", HFILL }}, + { &hf_lppe_geodetic_height_depth, + { "geodetic-height-depth", "lppe.geodetic_height_depth", + FT_INT32, BASE_DEC, NULL, 0, + "INTEGER_M32768_32767", HFILL }}, + { &hf_lppe_geodetic_uncertainty_and_confidence, + { "geodetic-uncertainty-and-confidence", "lppe.geodetic_uncertainty_and_confidence", + FT_NONE, BASE_NONE, NULL, 0, + "OMA_LPPe_GeodeticUncertaintyAndConfidence", HFILL }}, + { &hf_lppe_uncertainty, + { "uncertainty", "lppe.uncertainty", + FT_UINT32, BASE_DEC, NULL, 0, + "INTEGER_0_127", HFILL }}, + { &hf_lppe_civic_floors, + { "civic-floors", "lppe.civic_floors", + FT_INT32, BASE_DEC, NULL, 0, + "INTEGER_M255_256", HFILL }}, + { &hf_lppe_civic_uncertainty_and_confidence, + { "civic-uncertainty-and-confidence", "lppe.civic_uncertainty_and_confidence", + FT_NONE, BASE_NONE, NULL, 0, + "OMA_LPPe_CivicUncertaintyAndConfidence", HFILL }}, + { &hf_lppe_provider_ID, + { "provider-ID", "lppe.provider_ID", + FT_UINT32, BASE_DEC, VALS(lppe_OMA_LPPe_VendorOrOperatorID_vals), 0, + "OMA_LPPe_VendorOrOperatorID", HFILL }}, + { &hf_lppe_server_ID, + { "server-ID", "lppe.server_ID", + FT_BYTES, BASE_NONE, NULL, 0, + "OCTET_STRING_SIZE_4", HFILL }}, + { &hf_lppe_session_ID, + { "session-ID", "lppe.session_ID", + FT_BYTES, BASE_NONE, NULL, 0, + "OCTET_STRING_SIZE_4", HFILL }}, + { &hf_lppe_regionSizeInv, + { "regionSizeInv", "lppe.regionSizeInv", + FT_UINT32, BASE_DEC, NULL, 0, + "INTEGER_1_255", HFILL }}, + { &hf_lppe_areaWidth, + { "areaWidth", "lppe.areaWidth", + FT_UINT32, BASE_DEC, NULL, 0, + "INTEGER_2_9180", HFILL }}, + { &hf_lppe_codedLatOfNWCorner, + { "codedLatOfNWCorner", "lppe.codedLatOfNWCorner", + FT_UINT32, BASE_DEC, NULL, 0, + "INTEGER_0_4589", HFILL }}, + { &hf_lppe_codedLonOfNWCorner, + { "codedLonOfNWCorner", "lppe.codedLonOfNWCorner", + FT_UINT32, BASE_DEC, NULL, 0, + "INTEGER_0_9179", HFILL }}, + { &hf_lppe_rleList, + { "rleList", "lppe.rleList", + FT_UINT32, BASE_DEC, NULL, 0, + "OMA_LPPe_RleList", HFILL }}, + { &hf_lppe_OMA_LPPe_RleList_item, + { "OMA-LPPe-RleList item", "lppe.OMA_LPPe_RleList_item", + FT_UINT32, BASE_DEC, NULL, 0, + "INTEGER_0_255", HFILL }}, + { &hf_lppe_beginTime, + { "beginTime", "lppe.beginTime", + FT_NONE, BASE_NONE, NULL, 0, + "GNSS_SystemTime", HFILL }}, + { &hf_lppe_beginTimeAlt, + { "beginTimeAlt", "lppe.beginTimeAlt", + FT_UINT32, BASE_DEC, NULL, 0, + "INTEGER_0_2881", HFILL }}, + { &hf_lppe_duration_01, + { "duration", "lppe.duration", + FT_UINT32, BASE_DEC, NULL, 0, + "INTEGER_1_2881", HFILL }}, + { &hf_lppe_assistanceDataID, + { "assistanceDataID", "lppe.assistanceDataID", + FT_NONE, BASE_NONE, NULL, 0, + "OMA_LPPe_AssistanceContainerID", HFILL }}, + { &hf_lppe_standard_VendorOrOperatorID, + { "standard-VendorOrOperatorID", "lppe.standard_VendorOrOperatorID", + FT_UINT32, BASE_DEC, NULL, 0, + "INTEGER_1_1024", HFILL }}, + { &hf_lppe_nonStandard_VendorOrOperatorID, + { "nonStandard-VendorOrOperatorID", "lppe.nonStandard_VendorOrOperatorID", + FT_NONE, BASE_NONE, NULL, 0, + "OMA_LPPe_NonStandard_VendorOrOperatorID", HFILL }}, + { &hf_lppe_encodedID, + { "encodedID", "lppe.encodedID", + FT_UINT32, BASE_DEC, NULL, 0, + "INTEGER_0_65535", HFILL }}, + { &hf_lppe_visibleIdentification, + { "visibleIdentification", "lppe.visibleIdentification", + FT_STRING, BASE_NONE, NULL, 0, + "OMA_LPPe_CharArray", HFILL }}, + { &hf_lppe_apMacAddress, + { "apMacAddress", "lppe.apMacAddress", + FT_BYTES, BASE_NONE, NULL, 0, + "BIT_STRING_SIZE_48", HFILL }}, + { &hf_lppe_truncation, + { "truncation", "lppe.truncation", + FT_INT32, BASE_DEC, NULL, 0, + "INTEGER_M127_128", HFILL }}, + { &hf_lppe_areaType, + { "areaType", "lppe.areaType", + FT_UINT32, BASE_DEC, VALS(lppe_T_areaType_vals), 0, + NULL, HFILL }}, + { &hf_lppe_componentList, + { "componentList", "lppe.componentList", + FT_UINT32, BASE_DEC, NULL, 0, + "SEQUENCE_SIZE_1_16_OF_OMA_LPPe_WLANFemtoCoverageAreaElement", HFILL }}, + { &hf_lppe_componentList_item, + { "OMA-LPPe-WLANFemtoCoverageAreaElement", "lppe.OMA_LPPe_WLANFemtoCoverageAreaElement", + FT_NONE, BASE_NONE, NULL, 0, + NULL, HFILL }}, + { &hf_lppe_refPointAndArea, + { "refPointAndArea", "lppe.refPointAndArea", + FT_NONE, BASE_NONE, NULL, 0, + NULL, HFILL }}, + { &hf_lppe_referenceLocation, + { "referenceLocation", "lppe.referenceLocation", + FT_UINT32, BASE_DEC, VALS(lppe_T_referenceLocation_vals), 0, + NULL, HFILL }}, + { &hf_lppe_referencePoint, + { "referencePoint", "lppe.referencePoint", + FT_NONE, BASE_NONE, NULL, 0, + "OMA_LPPe_ReferencePointUniqueID", HFILL }}, + { &hf_lppe_locationAndArea, + { "locationAndArea", "lppe.locationAndArea", + FT_NONE, BASE_NONE, NULL, 0, + "OMA_LPPe_RelativeLocation", HFILL }}, + { &hf_lppe_type, + { "type", "lppe.type", + FT_UINT32, BASE_DEC, VALS(lppe_T_type_vals), 0, + NULL, HFILL }}, + { &hf_lppe_weight, + { "weight", "lppe.weight", + FT_UINT32, BASE_DEC, NULL, 0, + "INTEGER_0_100", HFILL }}, + { &hf_lppe_iP_Address_RequestCapabilities, + { "iP-Address-RequestCapabilities", "lppe.iP_Address_RequestCapabilities", + FT_NONE, BASE_NONE, NULL, 0, + "OMA_LPPe_IP_Address_RequestCapabilities", HFILL }}, + { &hf_lppe_assistanceContainerSupportReq, + { "assistanceContainerSupportReq", "lppe.assistanceContainerSupportReq", + FT_NONE, BASE_NONE, NULL, 0, + "OMA_LPPe_AssistanceContainerSupportReq", HFILL }}, + { &hf_lppe_locationInformationContainerSupportReq, + { "locationInformationContainerSupportReq", "lppe.locationInformationContainerSupportReq", + FT_NONE, BASE_NONE, NULL, 0, + "OMA_LPPe_LocationInformationContainerSupportReq", HFILL }}, + { &hf_lppe_relativeLocationChange_RequestCapabilities, + { "relativeLocationChange-RequestCapabilities", "lppe.relativeLocationChange_RequestCapabilities", + FT_NONE, BASE_NONE, NULL, 0, + "OMA_LPPe_RelativeLocationChange_RequestCapabilities", HFILL }}, + { &hf_lppe_highAccuracyFormatCapabilitiesReq, + { "highAccuracyFormatCapabilitiesReq", "lppe.highAccuracyFormatCapabilitiesReq", + FT_NONE, BASE_NONE, NULL, 0, + "OMA_LPPe_HighAccuracyFormatCapabilitiesReq", HFILL }}, + { &hf_lppe_segmentedAssistanceData_ReqCapabilities, + { "segmentedAssistanceData-ReqCapabilities", "lppe.segmentedAssistanceData_ReqCapabilities", + FT_NONE, BASE_NONE, NULL, 0, + "OMA_LPPe_SegmentedAssistanceData_ReqCapabilities", HFILL }}, + { &hf_lppe_referencePointCapabilitiesReq, + { "referencePointCapabilitiesReq", "lppe.referencePointCapabilitiesReq", + FT_NONE, BASE_NONE, NULL, 0, + "OMA_LPPe_ReferencePointCapabilitiesReq", HFILL }}, + { &hf_lppe_scheduledLocation_RequestCapabilities, + { "scheduledLocation-RequestCapabilities", "lppe.scheduledLocation_RequestCapabilities", + FT_NONE, BASE_NONE, NULL, 0, + "OMA_LPPe_ScheduledLocation_RequestCapabilities", HFILL }}, + { &hf_lppe_accessCapabilitiesReq, + { "accessCapabilitiesReq", "lppe.accessCapabilitiesReq", + FT_NONE, BASE_NONE, NULL, 0, + "OMA_LPPe_AccessCapabilitiesReq", HFILL }}, + { &hf_lppe_segmentedLocationInformation_ReqCapabilities, + { "segmentedLocationInformation-ReqCapabilities", "lppe.segmentedLocationInformation_ReqCapabilities", + FT_NONE, BASE_NONE, NULL, 0, + "OMA_LPPe_SegmentedLocationInformation_ReqCapabilities", HFILL }}, + { &hf_lppe_vendorOrOperatorIDList, + { "vendorOrOperatorIDList", "lppe.vendorOrOperatorIDList", + FT_UINT32, BASE_DEC, NULL, 0, + "OMA_LPPe_VendorOrOperatorIDList", HFILL }}, + { &hf_lppe_OMA_LPPe_VendorOrOperatorIDList_item, + { "OMA-LPPe-VendorOrOperatorID", "lppe.OMA_LPPe_VendorOrOperatorID", + FT_UINT32, BASE_DEC, VALS(lppe_OMA_LPPe_VendorOrOperatorID_vals), 0, + NULL, HFILL }}, + { &hf_lppe_referencePointProviderSupportListReq, + { "referencePointProviderSupportListReq", "lppe.referencePointProviderSupportListReq", + FT_UINT32, BASE_DEC, NULL, 0, + "SEQUENCE_SIZE_1_128_OF_OMA_LPPe_VendorOrOperatorID", HFILL }}, + { &hf_lppe_referencePointProviderSupportListReq_item, + { "OMA-LPPe-VendorOrOperatorID", "lppe.OMA_LPPe_VendorOrOperatorID", + FT_UINT32, BASE_DEC, VALS(lppe_OMA_LPPe_VendorOrOperatorID_vals), 0, + NULL, HFILL }}, + { &hf_lppe_iP_Address_Capabilities, + { "iP-Address-Capabilities", "lppe.iP_Address_Capabilities", + FT_NONE, BASE_NONE, NULL, 0, + "OMA_LPPe_IP_Address_Capabilities", HFILL }}, + { &hf_lppe_assistanceContainerSupport, + { "assistanceContainerSupport", "lppe.assistanceContainerSupport", + FT_UINT32, BASE_DEC, NULL, 0, + "OMA_LPPe_AssistanceContainerSupport", HFILL }}, + { &hf_lppe_locationInformationContainerSupport, + { "locationInformationContainerSupport", "lppe.locationInformationContainerSupport", + FT_UINT32, BASE_DEC, NULL, 0, + "OMA_LPPe_LocationInformationContainerSupport", HFILL }}, + { &hf_lppe_relativeLocationChange_Capabilities, + { "relativeLocationChange-Capabilities", "lppe.relativeLocationChange_Capabilities", + FT_NONE, BASE_NONE, NULL, 0, + "OMA_LPPe_RelativeLocationChange_Capabilities", HFILL }}, + { &hf_lppe_highAccuracyFormatCapabilities, + { "highAccuracyFormatCapabilities", "lppe.highAccuracyFormatCapabilities", + FT_BYTES, BASE_NONE, NULL, 0, + "OMA_LPPe_HighAccuracyFormatCapabilities", HFILL }}, + { &hf_lppe_segmentedAssistanceData_ProvideCapabs, + { "segmentedAssistanceData-ProvideCapabs", "lppe.segmentedAssistanceData_ProvideCapabs", + FT_NONE, BASE_NONE, NULL, 0, + "OMA_LPPe_SegmentedAssistanceData_ProvideCapabs", HFILL }}, + { &hf_lppe_referencePointCapabilities, + { "referencePointCapabilities", "lppe.referencePointCapabilities", + FT_NONE, BASE_NONE, NULL, 0, + "OMA_LPPe_ReferencePointCapabilities", HFILL }}, + { &hf_lppe_scheduledLocation_Capabilities, + { "scheduledLocation-Capabilities", "lppe.scheduledLocation_Capabilities", + FT_NONE, BASE_NONE, NULL, 0, + "OMA_LPPe_ScheduledLocation_Capabilities", HFILL }}, + { &hf_lppe_accessCapabilities, + { "accessCapabilities", "lppe.accessCapabilities", + FT_NONE, BASE_NONE, NULL, 0, + "OMA_LPPe_AccessCapabilities", HFILL }}, + { &hf_lppe_segmentedLocationInformation_ProvideCapabs, + { "segmentedLocationInformation-ProvideCapabs", "lppe.segmentedLocationInformation_ProvideCapabs", + FT_NONE, BASE_NONE, NULL, 0, + "OMA_LPPe_SegmentedLocationInformation_ProvideCapabs", HFILL }}, + { &hf_lppe_iP_Address_support, + { "iP-Address-support", "lppe.iP_Address_support", + FT_BYTES, BASE_NONE, NULL, 0, + NULL, HFILL }}, + { &hf_lppe_OMA_LPPe_AssistanceContainerSupport_item, + { "OMA-LPPe-VendorOrOperatorAssistanceContainerList", "lppe.OMA_LPPe_VendorOrOperatorAssistanceContainerList", + FT_NONE, BASE_NONE, NULL, 0, + NULL, HFILL }}, + { &hf_lppe_assistanceContainerList, + { "assistanceContainerList", "lppe.assistanceContainerList", + FT_UINT32, BASE_DEC, NULL, 0, + "OMA_LPPe_AssistanceContainerList", HFILL }}, + { &hf_lppe_OMA_LPPe_AssistanceContainerList_item, + { "OMA-LPPe-AssistanceContainerID", "lppe.OMA_LPPe_AssistanceContainerID", + FT_NONE, BASE_NONE, NULL, 0, + NULL, HFILL }}, + { &hf_lppe_OMA_LPPe_LocationInformationContainerSupport_item, + { "OMA-LPPe-VendorOrOperatorLocationInformationContainerList", "lppe.OMA_LPPe_VendorOrOperatorLocationInformationContainerList", + FT_NONE, BASE_NONE, NULL, 0, + NULL, HFILL }}, + { &hf_lppe_locationInformationContainerList, + { "locationInformationContainerList", "lppe.locationInformationContainerList", + FT_UINT32, BASE_DEC, NULL, 0, + "OMA_LPPe_LocationInformationContainerList", HFILL }}, + { &hf_lppe_OMA_LPPe_LocationInformationContainerList_item, + { "OMA-LPPe-LocationInformationContainerID", "lppe.OMA_LPPe_LocationInformationContainerID", + FT_NONE, BASE_NONE, NULL, 0, + NULL, HFILL }}, + { &hf_lppe_numberOfChanges, + { "numberOfChanges", "lppe.numberOfChanges", + FT_UINT32, BASE_DEC, NULL, 0, + "INTEGER_1_5", HFILL }}, + { &hf_lppe_maxSegments, + { "maxSegments", "lppe.maxSegments", + FT_UINT32, BASE_DEC, NULL, 0, + "INTEGER_2_4096", HFILL }}, + { &hf_lppe_maxSize, + { "maxSize", "lppe.maxSize", + FT_UINT32, BASE_DEC, NULL, 0, + "INTEGER_1_5000", HFILL }}, + { &hf_lppe_minSize, + { "minSize", "lppe.minSize", + FT_UINT32, BASE_DEC, NULL, 0, + "INTEGER_1_5000", HFILL }}, + { &hf_lppe_resume, + { "resume", "lppe.resume", + FT_NONE, BASE_NONE, NULL, 0, + NULL, HFILL }}, + { &hf_lppe_relativeLocationReportingSupport, + { "relativeLocationReportingSupport", "lppe.relativeLocationReportingSupport", + FT_BYTES, BASE_NONE, NULL, 0, + NULL, HFILL }}, + { &hf_lppe_referencePointProviderSupportList, + { "referencePointProviderSupportList", "lppe.referencePointProviderSupportList", + FT_UINT32, BASE_DEC, NULL, 0, + "SEQUENCE_SIZE_1_128_OF_OMA_LPPe_ReferencePointProviderSupportElement", HFILL }}, + { &hf_lppe_referencePointProviderSupportList_item, + { "OMA-LPPe-ReferencePointProviderSupportElement", "lppe.OMA_LPPe_ReferencePointProviderSupportElement", + FT_NONE, BASE_NONE, NULL, 0, + NULL, HFILL }}, + { &hf_lppe_referencePointProvider, + { "referencePointProvider", "lppe.referencePointProvider", + FT_UINT32, BASE_DEC, VALS(lppe_OMA_LPPe_VendorOrOperatorID_vals), 0, + "OMA_LPPe_VendorOrOperatorID", HFILL }}, + { &hf_lppe_mapDataSupport, + { "mapDataSupport", "lppe.mapDataSupport", + FT_NONE, BASE_NONE, NULL, 0, + NULL, HFILL }}, + { &hf_lppe_mapDataFormat, + { "mapDataFormat", "lppe.mapDataFormat", + FT_BYTES, BASE_NONE, NULL, 0, + "OCTET_STRING", HFILL }}, + { &hf_lppe_minimumWindow, + { "minimumWindow", "lppe.minimumWindow", + FT_UINT32, BASE_DEC, NULL, 0, + "INTEGER_1_1024", HFILL }}, + { &hf_lppe_gnssTimeReference, + { "gnssTimeReference", "lppe.gnssTimeReference", + FT_NONE, BASE_NONE, NULL, 0, + "GNSS_ID_Bitmap", HFILL }}, + { &hf_lppe_networkTimeReference, + { "networkTimeReference", "lppe.networkTimeReference", + FT_UINT32, BASE_DEC, VALS(lppe_T_networkTimeReference_vals), 0, + NULL, HFILL }}, + { &hf_lppe_accessTypeUnknown, + { "accessTypeUnknown", "lppe.accessTypeUnknown", + FT_NONE, BASE_NONE, NULL, 0, + NULL, HFILL }}, + { &hf_lppe_fixedAccessTypes, + { "fixedAccessTypes", "lppe.fixedAccessTypes", + FT_BYTES, BASE_NONE, NULL, 0, + "OMA_LPPe_FixedAccessTypes", HFILL }}, + { &hf_lppe_wirelessAccessTypes, + { "wirelessAccessTypes", "lppe.wirelessAccessTypes", + FT_BYTES, BASE_NONE, NULL, 0, + "OMA_LPPe_WirelessAccessTypes", HFILL }}, + { &hf_lppe_approximate_location, + { "approximate-location", "lppe.approximate_location", + FT_NONE, BASE_NONE, NULL, 0, + "EllipsoidPointWithAltitudeAndUncertaintyEllipsoid", HFILL }}, + { &hf_lppe_assistanceContainerRequestList, + { "assistanceContainerRequestList", "lppe.assistanceContainerRequestList", + FT_UINT32, BASE_DEC, NULL, 0, + "OMA_LPPe_AssistanceContainerRequestList", HFILL }}, + { &hf_lppe_requestPeriodicADwithUpdate, + { "requestPeriodicADwithUpdate", "lppe.requestPeriodicADwithUpdate", + FT_NONE, BASE_NONE, NULL, 0, + "OMA_LPPe_RequestPeriodicADwithUpdate", HFILL }}, + { &hf_lppe_segmentedADpreference, + { "segmentedADpreference", "lppe.segmentedADpreference", + FT_UINT32, BASE_DEC, VALS(lppe_T_segmentedADpreference_vals), 0, + NULL, HFILL }}, + { &hf_lppe_segmentedADResume, + { "segmentedADResume", "lppe.segmentedADResume", + FT_NONE, BASE_NONE, NULL, 0, + "OMA_LPPe_SegmentedADResume", HFILL }}, + { &hf_lppe_referencePointAssistanceReq, + { "referencePointAssistanceReq", "lppe.referencePointAssistanceReq", + FT_NONE, BASE_NONE, NULL, 0, + "OMA_LPPe_ReferencePointAssistanceReq", HFILL }}, + { &hf_lppe_periodicAD_session_ID, + { "periodicAD-session-ID", "lppe.periodicAD_session_ID", + FT_UINT32, BASE_DEC, NULL, 0, + "INTEGER_1_256", HFILL }}, + { &hf_lppe_typeOfADRequest, + { "typeOfADRequest", "lppe.typeOfADRequest", + FT_UINT32, BASE_DEC, VALS(lppe_TypeOfADRequest_vals), 0, + NULL, HFILL }}, + { &hf_lppe_segmentedAD_session_ID, + { "segmentedAD-session-ID", "lppe.segmentedAD_session_ID", + FT_NONE, BASE_NONE, NULL, 0, + "OMA_LPPe_Session_ID", HFILL }}, + { &hf_lppe_next_segment_number, + { "next-segment-number", "lppe.next_segment_number", + FT_UINT32, BASE_DEC, NULL, 0, + "INTEGER_1_4096", HFILL }}, + { &hf_lppe_referencePointReq, + { "referencePointReq", "lppe.referencePointReq", + FT_UINT32, BASE_DEC, NULL, 0, + "SEQUENCE_SIZE_1_16_OF_OMA_LPPe_ReferencePointAssistanceReqElement", HFILL }}, + { &hf_lppe_referencePointReq_item, + { "OMA-LPPe-ReferencePointAssistanceReqElement", "lppe.OMA_LPPe_ReferencePointAssistanceReqElement", + FT_NONE, BASE_NONE, NULL, 0, + NULL, HFILL }}, + { &hf_lppe_mapDataReq, + { "mapDataReq", "lppe.mapDataReq", + FT_BYTES, BASE_NONE, NULL, 0, + "OCTET_STRING", HFILL }}, + { &hf_lppe_assistanceContainerList_01, + { "assistanceContainerList", "lppe.assistanceContainerList", + FT_UINT32, BASE_DEC, NULL, 0, + "OMA_LPPe_AssistanceContainerProvideList", HFILL }}, + { &hf_lppe_providePeriodicADwithUpdate, + { "providePeriodicADwithUpdate", "lppe.providePeriodicADwithUpdate", + FT_NONE, BASE_NONE, NULL, 0, + "OMA_LPPe_ProvidePeriodicADwithUpdate", HFILL }}, + { &hf_lppe_segmentedADTransfer, + { "segmentedADTransfer", "lppe.segmentedADTransfer", + FT_NONE, BASE_NONE, NULL, 0, + "OMA_LPPe_SegmentedADTransfer", HFILL }}, + { &hf_lppe_default_reference_point, + { "default-reference-point", "lppe.default_reference_point", + FT_NONE, BASE_NONE, NULL, 0, + "OMA_LPPe_ReferencePoint", HFILL }}, + { &hf_lppe_typeOfADProvide, + { "typeOfADProvide", "lppe.typeOfADProvide", + FT_UINT32, BASE_DEC, VALS(lppe_OMA_LPPe_TypeOfADProvide_vals), 0, + "OMA_LPPe_TypeOfADProvide", HFILL }}, + { &hf_lppe_segment_number, + { "segment-number", "lppe.segment_number", + FT_UINT32, BASE_DEC, NULL, 0, + "INTEGER_1_4096", HFILL }}, + { &hf_lppe_iP_Address_Request, + { "iP-Address-Request", "lppe.iP_Address_Request", + FT_NONE, BASE_NONE, NULL, 0, + "OMA_LPPe_IP_Address_Request", HFILL }}, + { &hf_lppe_locationInformationContainerRequest, + { "locationInformationContainerRequest", "lppe.locationInformationContainerRequest", + FT_NONE, BASE_NONE, NULL, 0, + "OMA_LPPe_LocationInformationContainerRequest", HFILL }}, + { &hf_lppe_requestPeriodicLocInfoWithUpdate, + { "requestPeriodicLocInfoWithUpdate", "lppe.requestPeriodicLocInfoWithUpdate", + FT_NONE, BASE_NONE, NULL, 0, + "OMA_LPPe_RequestPeriodicLocInfoWithUpdate", HFILL }}, + { &hf_lppe_relativeLocationChange_Request, + { "relativeLocationChange-Request", "lppe.relativeLocationChange_Request", + FT_NONE, BASE_NONE, NULL, 0, + "OMA_LPPe_RelativeLocationChange_Request", HFILL }}, + { &hf_lppe_localPositionRequest, + { "localPositionRequest", "lppe.localPositionRequest", + FT_NONE, BASE_NONE, NULL, 0, + "OMA_LPPe_LocalPositionRequest", HFILL }}, + { &hf_lppe_scheduledLocation_Request, + { "scheduledLocation-Request", "lppe.scheduledLocation_Request", + FT_NONE, BASE_NONE, NULL, 0, + "OMA_LPPe_ScheduledLocation_Request", HFILL }}, + { &hf_lppe_accessTypeRequest, + { "accessTypeRequest", "lppe.accessTypeRequest", + FT_NONE, BASE_NONE, NULL, 0, + "OMA_LPPe_AccessTypeRequest", HFILL }}, + { &hf_lppe_segmentedLIpreference, + { "segmentedLIpreference", "lppe.segmentedLIpreference", + FT_UINT32, BASE_DEC, VALS(lppe_T_segmentedLIpreference_vals), 0, + NULL, HFILL }}, + { &hf_lppe_segmentedLIResume, + { "segmentedLIResume", "lppe.segmentedLIResume", + FT_NONE, BASE_NONE, NULL, 0, + "OMA_LPPe_SegmentedLIResume", HFILL }}, + { &hf_lppe_session_ID_01, + { "session-ID", "lppe.session_ID", + FT_UINT32, BASE_DEC, NULL, 0, + "INTEGER_1_256", HFILL }}, + { &hf_lppe_typeOfLocInfoRequest, + { "typeOfLocInfoRequest", "lppe.typeOfLocInfoRequest", + FT_UINT32, BASE_DEC, VALS(lppe_OMA_LPPe_TypeOfLocInfoRequest_vals), 0, + "OMA_LPPe_TypeOfLocInfoRequest", HFILL }}, + { &hf_lppe_typeOfRequest, + { "typeOfRequest", "lppe.typeOfRequest", + FT_UINT32, BASE_DEC, VALS(lppe_T_typeOfRequest_vals), 0, + NULL, HFILL }}, + { &hf_lppe_referencePointReq_01, + { "referencePointReq", "lppe.referencePointReq", + FT_UINT32, BASE_DEC, NULL, 0, + "SEQUENCE_SIZE_1_8_OF_OMA_LPPe_ReferencePointUniqueID", HFILL }}, + { &hf_lppe_referencePointReq_item_01, + { "OMA-LPPe-ReferencePointUniqueID", "lppe.OMA_LPPe_ReferencePointUniqueID", + FT_NONE, BASE_NONE, NULL, 0, + NULL, HFILL }}, + { &hf_lppe_gnssTime, + { "gnssTime", "lppe.gnssTime", + FT_NONE, BASE_NONE, NULL, 0, + "GNSS_SystemTime", HFILL }}, + { &hf_lppe_networkTime, + { "networkTime", "lppe.networkTime", + FT_NONE, BASE_NONE, NULL, 0, + NULL, HFILL }}, + { &hf_lppe_relativeTime, + { "relativeTime", "lppe.relativeTime", + FT_UINT32, BASE_DEC, NULL, 0, + "INTEGER_1_1024", HFILL }}, + { &hf_lppe_windowSize, + { "windowSize", "lppe.windowSize", + FT_UINT32, BASE_DEC, NULL, 0, + "INTEGER_1_1024", HFILL }}, + { &hf_lppe_segmentedLI_session_ID, + { "segmentedLI-session-ID", "lppe.segmentedLI_session_ID", + FT_UINT32, BASE_DEC, NULL, 0, + "INTEGER_1_256", HFILL }}, + { &hf_lppe_highAccuracy3Dposition, + { "highAccuracy3Dposition", "lppe.highAccuracy3Dposition", + FT_NONE, BASE_NONE, NULL, 0, + "OMA_LPPe_HighAccuracy3Dposition", HFILL }}, + { &hf_lppe_localPosition, + { "localPosition", "lppe.localPosition", + FT_NONE, BASE_NONE, NULL, 0, + "OMA_LPPe_LocalPosition", HFILL }}, + { &hf_lppe_highAccuracy3Dvelocity, + { "highAccuracy3Dvelocity", "lppe.highAccuracy3Dvelocity", + FT_NONE, BASE_NONE, NULL, 0, + "OMA_LPPe_HighAccuracy3Dvelocity", HFILL }}, + { &hf_lppe_iP_Address_List, + { "iP-Address-List", "lppe.iP_Address_List", + FT_UINT32, BASE_DEC, NULL, 0, + "OMA_LPPe_IP_Address_List", HFILL }}, + { &hf_lppe_locationInformationContainer, + { "locationInformationContainer", "lppe.locationInformationContainer", + FT_NONE, BASE_NONE, NULL, 0, + "OMA_LPPe_LocationInformationContainer", HFILL }}, + { &hf_lppe_providePeriodicLocInfoWithUpdate, + { "providePeriodicLocInfoWithUpdate", "lppe.providePeriodicLocInfoWithUpdate", + FT_NONE, BASE_NONE, NULL, 0, + "OMA_LPPe_ProvidePeriodicLocInfowithUpdate", HFILL }}, + { &hf_lppe_relativeLocationChangeList, + { "relativeLocationChangeList", "lppe.relativeLocationChangeList", + FT_UINT32, BASE_DEC, NULL, 0, + "OMA_LPPe_RelativeLocationChangeList", HFILL }}, + { &hf_lppe_scheduledLocation, + { "scheduledLocation", "lppe.scheduledLocation", + FT_NONE, BASE_NONE, NULL, 0, + "OMA_LPPe_ScheduledLocation", HFILL }}, + { &hf_lppe_accessTypes, + { "accessTypes", "lppe.accessTypes", + FT_NONE, BASE_NONE, NULL, 0, + "OMA_LPPe_AccessTypes", HFILL }}, + { &hf_lppe_segmentedLITransfer, + { "segmentedLITransfer", "lppe.segmentedLITransfer", + FT_NONE, BASE_NONE, NULL, 0, + "OMA_LPPe_SegmentedLITransfer", HFILL }}, + { &hf_lppe_locationInformationTimeStamp, + { "locationInformationTimeStamp", "lppe.locationInformationTimeStamp", + FT_UINT32, BASE_DEC, VALS(lppe_OMA_LPPe_TimeStamp_vals), 0, + "OMA_LPPe_TimeStamp", HFILL }}, + { &hf_lppe_subjectLocation, + { "subjectLocation", "lppe.subjectLocation", + FT_NONE, BASE_NONE, NULL, 0, + "OMA_LPPe_RelativeLocation", HFILL }}, + { &hf_lppe_OMA_LPPe_IP_Address_List_item, + { "OMA-LPPe-IP-Address", "lppe.OMA_LPPe_IP_Address", + FT_NONE, BASE_NONE, NULL, 0, + NULL, HFILL }}, + { &hf_lppe_local_IP_Address, + { "local-IP-Address", "lppe.local_IP_Address", + FT_UINT32, BASE_DEC, VALS(lppe_T_local_IP_Address_vals), 0, + NULL, HFILL }}, + { &hf_lppe_iPv4, + { "iPv4", "lppe.iPv4", + FT_BYTES, BASE_NONE, NULL, 0, + "BIT_STRING_SIZE_32", HFILL }}, + { &hf_lppe_iPv6, + { "iPv6", "lppe.iPv6", + FT_BYTES, BASE_NONE, NULL, 0, + "BIT_STRING_SIZE_128", HFILL }}, + { &hf_lppe_bearer, + { "bearer", "lppe.bearer", + FT_UINT32, BASE_DEC, VALS(lppe_OMA_LPPe_Bearer_vals), 0, + "OMA_LPPe_Bearer", HFILL }}, + { &hf_lppe_nat, + { "nat", "lppe.nat", + FT_BOOLEAN, BASE_NONE, NULL, 0, + "BOOLEAN", HFILL }}, + { &hf_lppe_typeOfLocInfoProvide, + { "typeOfLocInfoProvide", "lppe.typeOfLocInfoProvide", + FT_UINT32, BASE_DEC, VALS(lppe_OMA_LPPe_TypeOfLocInfoProvide_vals), 0, + "OMA_LPPe_TypeOfLocInfoProvide", HFILL }}, + { &hf_lppe_OMA_LPPe_RelativeLocationChangeList_item, + { "OMA-LPPe-RelativeLocationChange", "lppe.OMA_LPPe_RelativeLocationChange", + FT_NONE, BASE_NONE, NULL, 0, + NULL, HFILL }}, + { &hf_lppe_relativeTime_01, + { "relativeTime", "lppe.relativeTime", + FT_UINT32, BASE_DEC, NULL, 0, + "INTEGER_0_65535", HFILL }}, + { &hf_lppe_transactionID, + { "transactionID", "lppe.transactionID", + FT_UINT32, BASE_DEC, NULL, 0, + "INTEGER_0_255", HFILL }}, + { &hf_lppe_disposition, + { "disposition", "lppe.disposition", + FT_UINT32, BASE_DEC, VALS(lppe_T_disposition_vals), 0, + NULL, HFILL }}, + { &hf_lppe_actualWindow, + { "actualWindow", "lppe.actualWindow", + FT_NONE, BASE_NONE, NULL, 0, + NULL, HFILL }}, + { &hf_lppe_start, + { "start", "lppe.start", + FT_INT32, BASE_DEC, NULL, 0, + "INTEGER_M512_511", HFILL }}, + { &hf_lppe_duration_02, + { "duration", "lppe.duration", + FT_UINT32, BASE_DEC, NULL, 0, + "INTEGER_0_2047", HFILL }}, + { &hf_lppe_relativeTime_02, + { "relativeTime", "lppe.relativeTime", + FT_UINT32, BASE_DEC, NULL, 0, + "INTEGER_0_1024", HFILL }}, + { &hf_lppe_abortCause, + { "abortCause", "lppe.abortCause", + FT_UINT32, BASE_DEC, VALS(lppe_T_abortCause_vals), 0, + NULL, HFILL }}, + { &hf_lppe_periodicSessionIDtoAbort, + { "periodicSessionIDtoAbort", "lppe.periodicSessionIDtoAbort", + FT_UINT32, BASE_DEC, NULL, 0, + "INTEGER_1_256", HFILL }}, + { &hf_lppe_commonAssistData, + { "commonAssistData", "lppe.commonAssistData", + FT_NONE, BASE_NONE, NULL, 0, + "OMA_LPPe_AGNSS_CommonAssistData", HFILL }}, + { &hf_lppe_genericAssistData, + { "genericAssistData", "lppe.genericAssistData", + FT_UINT32, BASE_DEC, NULL, 0, + "OMA_LPPe_AGNSS_GenericAssistData", HFILL }}, + { &hf_lppe_error_01, + { "error", "lppe.error", + FT_UINT32, BASE_DEC, VALS(lppe_OMA_LPPe_AGNSS_Error_vals), 0, + "OMA_LPPe_AGNSS_Error", HFILL }}, + { &hf_lppe_ionosphericModel, + { "ionosphericModel", "lppe.ionosphericModel", + FT_UINT32, BASE_DEC, VALS(lppe_OMA_LPPe_AGNSS_IonosphericModel_vals), 0, + "OMA_LPPe_AGNSS_IonosphericModel", HFILL }}, + { &hf_lppe_troposphereModel, + { "troposphereModel", "lppe.troposphereModel", + FT_NONE, BASE_NONE, NULL, 0, + "OMA_LPPe_AGNSS_TroposphereModel", HFILL }}, + { &hf_lppe_altitudeAssistance, + { "altitudeAssistance", "lppe.altitudeAssistance", + FT_UINT32, BASE_DEC, NULL, 0, + "OMA_LPPe_AGNSS_AltitudeAssistanceList", HFILL }}, + { &hf_lppe_solarRadiation, + { "solarRadiation", "lppe.solarRadiation", + FT_NONE, BASE_NONE, NULL, 0, + "OMA_LPPe_AGNSS_SolarRadiation", HFILL }}, + { &hf_lppe_ccpAssistCommonProvide, + { "ccpAssistCommonProvide", "lppe.ccpAssistCommonProvide", + FT_UINT32, BASE_DEC, VALS(lppe_OMA_LPPe_AGNSS_CCPassistCommonProvide_vals), 0, + "OMA_LPPe_AGNSS_CCPassistCommonProvide", HFILL }}, + { &hf_lppe_OMA_LPPe_AGNSS_GenericAssistData_item, + { "OMA-LPPe-AGNSS-GenericAssistDataElement", "lppe.OMA_LPPe_AGNSS_GenericAssistDataElement", + FT_NONE, BASE_NONE, NULL, 0, + NULL, HFILL }}, + { &hf_lppe_gnss_ID, + { "gnss-ID", "lppe.gnss_ID", + FT_NONE, BASE_NONE, NULL, 0, + NULL, HFILL }}, + { &hf_lppe_wideAreaIonoSurfacePerSVlist, + { "wideAreaIonoSurfacePerSVlist", "lppe.wideAreaIonoSurfacePerSVlist", + FT_UINT32, BASE_DEC, NULL, 0, + "OMA_LPPe_AGNSS_WideAreaIonoSurfacePerSVlist", HFILL }}, + { &hf_lppe_mechanicsForAllSVs, + { "mechanicsForAllSVs", "lppe.mechanicsForAllSVs", + FT_UINT32, BASE_DEC, NULL, 0, + "OMA_LPPe_AGNSS_MechanicsForAllSVs", HFILL }}, + { &hf_lppe_dcbsForAllSVs, + { "dcbsForAllSVs", "lppe.dcbsForAllSVs", + FT_UINT32, BASE_DEC, NULL, 0, + "OMA_LPPe_AGNSS_DCBsForAllSVs", HFILL }}, + { &hf_lppe_navModelDegradationModel, + { "navModelDegradationModel", "lppe.navModelDegradationModel", + FT_UINT32, BASE_DEC, NULL, 0, + "OMA_LPPe_AGNSS_NavModelDegradationModelList", HFILL }}, + { &hf_lppe_ccpAssistProvide, + { "ccpAssistProvide", "lppe.ccpAssistProvide", + FT_UINT32, BASE_DEC, NULL, 0, + "OMA_LPPe_AGNSS_CCPassistGenericProvide", HFILL }}, + { &hf_lppe_navModelList, + { "navModelList", "lppe.navModelList", + FT_NONE, BASE_NONE, NULL, 0, + "OMA_LPPe_AGNSS_NavModelList", HFILL }}, + { &hf_lppe_staticModels, + { "staticModels", "lppe.staticModels", + FT_NONE, BASE_NONE, NULL, 0, + NULL, HFILL }}, + { &hf_lppe_localKlobucharModelList, + { "localKlobucharModelList", "lppe.localKlobucharModelList", + FT_UINT32, BASE_DEC, NULL, 0, + "OMA_LPPe_AGNSS_LocalKlobucharModelList", HFILL }}, + { &hf_lppe_ionoStormIndication, + { "ionoStormIndication", "lppe.ionoStormIndication", + FT_NONE, BASE_NONE, NULL, 0, + "OMA_LPPe_AGNSS_IonoStormIndication", HFILL }}, + { &hf_lppe_waIono, + { "waIono", "lppe.waIono", + FT_UINT32, BASE_DEC, VALS(lppe_T_waIono_vals), 0, + NULL, HFILL }}, + { &hf_lppe_controlParameters, + { "controlParameters", "lppe.controlParameters", + FT_NONE, BASE_NONE, NULL, 0, + "OMA_LPPe_AGNSS_WideAreaIonoSurfaceControlParametersProvide", HFILL }}, + { &hf_lppe_commonProvide, + { "commonProvide", "lppe.commonProvide", + FT_NONE, BASE_NONE, NULL, 0, + "OMA_LPPe_AGNSS_WideAreaIonoSurfaceCommon", HFILL }}, + { &hf_lppe_OMA_LPPe_AGNSS_LocalKlobucharModelList_item, + { "OMA-LPPe-AGNSS-LocalKlobucharModelElement", "lppe.OMA_LPPe_AGNSS_LocalKlobucharModelElement", + FT_NONE, BASE_NONE, NULL, 0, + NULL, HFILL }}, + { &hf_lppe_klobucharModel, + { "klobucharModel", "lppe.klobucharModel", + FT_UINT32, BASE_DEC, NULL, 0, + "SEQUENCE_SIZE_1_8_OF_OMA_LPPe_AGNSS_LocalKlobucharModel", HFILL }}, + { &hf_lppe_klobucharModel_item, + { "OMA-LPPe-AGNSS-LocalKlobucharModel", "lppe.OMA_LPPe_AGNSS_LocalKlobucharModel", + FT_NONE, BASE_NONE, NULL, 0, + NULL, HFILL }}, + { &hf_lppe_alfa0, + { "alfa0", "lppe.alfa0", + FT_INT32, BASE_DEC, NULL, 0, + "INTEGER_M128_127", HFILL }}, + { &hf_lppe_alfa1, + { "alfa1", "lppe.alfa1", + FT_INT32, BASE_DEC, NULL, 0, + "INTEGER_M128_127", HFILL }}, + { &hf_lppe_alfa2, + { "alfa2", "lppe.alfa2", + FT_INT32, BASE_DEC, NULL, 0, + "INTEGER_M128_127", HFILL }}, + { &hf_lppe_alfa3, + { "alfa3", "lppe.alfa3", + FT_INT32, BASE_DEC, NULL, 0, + "INTEGER_M128_127", HFILL }}, + { &hf_lppe_beta0, + { "beta0", "lppe.beta0", + FT_INT32, BASE_DEC, NULL, 0, + "INTEGER_M128_127", HFILL }}, + { &hf_lppe_beta1, + { "beta1", "lppe.beta1", + FT_INT32, BASE_DEC, NULL, 0, + "INTEGER_M128_127", HFILL }}, + { &hf_lppe_beta2, + { "beta2", "lppe.beta2", + FT_INT32, BASE_DEC, NULL, 0, + "INTEGER_M128_127", HFILL }}, + { &hf_lppe_beta3, + { "beta3", "lppe.beta3", + FT_INT32, BASE_DEC, NULL, 0, + "INTEGER_M128_127", HFILL }}, + { &hf_lppe_area, + { "area", "lppe.area", + FT_NONE, BASE_NONE, NULL, 0, + "OMA_LPPe_ValidityArea", HFILL }}, + { &hf_lppe_stormList, + { "stormList", "lppe.stormList", + FT_UINT32, BASE_DEC, NULL, 0, + "OMA_LPPe_AGNSS_StormList", HFILL }}, + { &hf_lppe_OMA_LPPe_AGNSS_StormList_item, + { "OMA-LPPe-AGNSS-StormElement", "lppe.OMA_LPPe_AGNSS_StormElement", + FT_NONE, BASE_NONE, NULL, 0, + NULL, HFILL }}, + { &hf_lppe_rleListIono, + { "rleListIono", "lppe.rleListIono", + FT_UINT32, BASE_DEC, NULL, 0, + "OMA_LPPe_AGNSS_RleListIono", HFILL }}, + { &hf_lppe_OMA_LPPe_AGNSS_RleListIono_item, + { "OMA-LPPe-AGNSS-RleIonoElement", "lppe.OMA_LPPe_AGNSS_RleIonoElement", + FT_NONE, BASE_NONE, NULL, 0, + NULL, HFILL }}, + { &hf_lppe_regionCount, + { "regionCount", "lppe.regionCount", + FT_UINT32, BASE_DEC, NULL, 0, + "INTEGER_0_255", HFILL }}, + { &hf_lppe_ionoIndex, + { "ionoIndex", "lppe.ionoIndex", + FT_UINT32, BASE_DEC, VALS(lppe_T_ionoIndex_vals), 0, + NULL, HFILL }}, + { &hf_lppe_noaaScales, + { "noaaScales", "lppe.noaaScales", + FT_UINT32, BASE_DEC, VALS(lppe_OMA_LPPe_AGNSS_NoaaScales_vals), 0, + "OMA_LPPe_AGNSS_NoaaScales", HFILL }}, + { &hf_lppe_duration_03, + { "duration", "lppe.duration", + FT_NONE, BASE_NONE, NULL, 0, + "OMA_LPPe_Duration", HFILL }}, + { &hf_lppe_rate, + { "rate", "lppe.rate", + FT_UINT32, BASE_DEC, NULL, 0, + "INTEGER_1_64", HFILL }}, + { &hf_lppe_referencePosition, + { "referencePosition", "lppe.referencePosition", + FT_NONE, BASE_NONE, NULL, 0, + "Ellipsoid_Point", HFILL }}, + { &hf_lppe_OMA_LPPe_AGNSS_WideAreaIonoSurfacePerSVlist_item, + { "OMA-LPPe-AGNSS-WideAreaIonoSurfacePerSVelement", "lppe.OMA_LPPe_AGNSS_WideAreaIonoSurfacePerSVelement", + FT_NONE, BASE_NONE, NULL, 0, + NULL, HFILL }}, + { &hf_lppe_svID, + { "svID", "lppe.svID", + FT_NONE, BASE_NONE, NULL, 0, + "SV_ID", HFILL }}, + { &hf_lppe_a0, + { "a0", "lppe.a0", + FT_UINT32, BASE_DEC, NULL, 0, + "INTEGER_0_8191", HFILL }}, + { &hf_lppe_e1, + { "e1", "lppe.e1", + FT_INT32, BASE_DEC, NULL, 0, + "INTEGER_M4096_4095", HFILL }}, + { &hf_lppe_n1, + { "n1", "lppe.n1", + FT_INT32, BASE_DEC, NULL, 0, + "INTEGER_M4096_4095", HFILL }}, + { &hf_lppe_e2, + { "e2", "lppe.e2", + FT_INT32, BASE_DEC, NULL, 0, + "INTEGER_M4096_4095", HFILL }}, + { &hf_lppe_n2, + { "n2", "lppe.n2", + FT_INT32, BASE_DEC, NULL, 0, + "INTEGER_M4096_4095", HFILL }}, + { &hf_lppe_en, + { "en", "lppe.en", + FT_INT32, BASE_DEC, NULL, 0, + "INTEGER_M4096_4095", HFILL }}, + { &hf_lppe_troposphereDelayList, + { "troposphereDelayList", "lppe.troposphereDelayList", + FT_UINT32, BASE_DEC, NULL, 0, + "OMA_LPPe_AGNSS_LocalTroposphereDelayList", HFILL }}, + { &hf_lppe_surfaceParametersList, + { "surfaceParametersList", "lppe.surfaceParametersList", + FT_UINT32, BASE_DEC, NULL, 0, + "OMA_LPPe_AGNSS_LocalSurfaceParametersList", HFILL }}, + { &hf_lppe_OMA_LPPe_AGNSS_LocalTroposphereDelayList_item, + { "OMA-LPPe-AGNSS-LocalTroposphereDelayAreaElement", "lppe.OMA_LPPe_AGNSS_LocalTroposphereDelayAreaElement", + FT_NONE, BASE_NONE, NULL, 0, + NULL, HFILL }}, + { &hf_lppe_refAltitude, + { "refAltitude", "lppe.refAltitude", + FT_INT32, BASE_DEC, NULL, 0, + "INTEGER_M1000_8192", HFILL }}, + { &hf_lppe_gradientReferencePosition, + { "gradientReferencePosition", "lppe.gradientReferencePosition", + FT_NONE, BASE_NONE, NULL, 0, + "Ellipsoid_Point", HFILL }}, + { &hf_lppe_delayList, + { "delayList", "lppe.delayList", + FT_UINT32, BASE_DEC, NULL, 0, + "SEQUENCE_SIZE_1_8_OF_OMA_LPPe_AGNSS_LocalTroposphereDelayTimeElement", HFILL }}, + { &hf_lppe_delayList_item, + { "OMA-LPPe-AGNSS-LocalTroposphereDelayTimeElement", "lppe.OMA_LPPe_AGNSS_LocalTroposphereDelayTimeElement", + FT_NONE, BASE_NONE, NULL, 0, + NULL, HFILL }}, + { &hf_lppe_zh0, + { "zh0", "lppe.zh0", + FT_UINT32, BASE_DEC, NULL, 0, + "INTEGER_0_4095", HFILL }}, + { &hf_lppe_eh, + { "eh", "lppe.eh", + FT_UINT32, BASE_DEC, NULL, 0, + "INTEGER_0_4095", HFILL }}, + { &hf_lppe_zw0, + { "zw0", "lppe.zw0", + FT_UINT32, BASE_DEC, NULL, 0, + "INTEGER_0_4095", HFILL }}, + { &hf_lppe_ew, + { "ew", "lppe.ew", + FT_UINT32, BASE_DEC, NULL, 0, + "INTEGER_0_4095", HFILL }}, + { &hf_lppe_gN, + { "gN", "lppe.gN", + FT_INT32, BASE_DEC, NULL, 0, + "INTEGER_M8192_8191", HFILL }}, + { &hf_lppe_gE, + { "gE", "lppe.gE", + FT_INT32, BASE_DEC, NULL, 0, + "INTEGER_M8192_8191", HFILL }}, + { &hf_lppe_mappingFunctionParameters, + { "mappingFunctionParameters", "lppe.mappingFunctionParameters", + FT_NONE, BASE_NONE, NULL, 0, + "OMA_LPPe_AGNSS_MappingFunctionParameters", HFILL }}, + { &hf_lppe_OMA_LPPe_AGNSS_LocalSurfaceParametersList_item, + { "OMA-LPPe-AGNSS-LocalSurfaceParametersAreaElement", "lppe.OMA_LPPe_AGNSS_LocalSurfaceParametersAreaElement", + FT_NONE, BASE_NONE, NULL, 0, + NULL, HFILL }}, + { &hf_lppe_parameterList, + { "parameterList", "lppe.parameterList", + FT_UINT32, BASE_DEC, NULL, 0, + "SEQUENCE_SIZE_1_8_OF_OMA_LPPe_AGNSS_LocalSurfaceParametersTimeElement", HFILL }}, + { &hf_lppe_parameterList_item, + { "OMA-LPPe-AGNSS-LocalSurfaceParametersTimeElement", "lppe.OMA_LPPe_AGNSS_LocalSurfaceParametersTimeElement", + FT_NONE, BASE_NONE, NULL, 0, + NULL, HFILL }}, + { &hf_lppe_pressure, + { "pressure", "lppe.pressure", + FT_INT32, BASE_DEC, NULL, 0, + "INTEGER_M1024_1023", HFILL }}, + { &hf_lppe_pressureRate, + { "pressureRate", "lppe.pressureRate", + FT_INT32, BASE_DEC, NULL, 0, + "INTEGER_M128_127", HFILL }}, + { &hf_lppe_gN_pressure, + { "gN-pressure", "lppe.gN_pressure", + FT_INT32, BASE_DEC, NULL, 0, + "INTEGER_M128_127", HFILL }}, + { &hf_lppe_gE_pressure, + { "gE-pressure", "lppe.gE_pressure", + FT_INT32, BASE_DEC, NULL, 0, + "INTEGER_M128_127", HFILL }}, + { &hf_lppe_temperature, + { "temperature", "lppe.temperature", + FT_INT32, BASE_DEC, NULL, 0, + "INTEGER_M64_63", HFILL }}, + { &hf_lppe_temperatureRate, + { "temperatureRate", "lppe.temperatureRate", + FT_INT32, BASE_DEC, NULL, 0, + "INTEGER_M16_16", HFILL }}, + { &hf_lppe_gN_temperature, + { "gN-temperature", "lppe.gN_temperature", + FT_INT32, BASE_DEC, NULL, 0, + "INTEGER_M8_7", HFILL }}, + { &hf_lppe_gE_temperature, + { "gE-temperature", "lppe.gE_temperature", + FT_INT32, BASE_DEC, NULL, 0, + "INTEGER_M8_7", HFILL }}, + { &hf_lppe_ah, + { "ah", "lppe.ah", + FT_UINT32, BASE_DEC, NULL, 0, + "INTEGER_0_16383", HFILL }}, + { &hf_lppe_bh, + { "bh", "lppe.bh", + FT_UINT32, BASE_DEC, NULL, 0, + "INTEGER_0_16383", HFILL }}, + { &hf_lppe_ch, + { "ch", "lppe.ch", + FT_UINT32, BASE_DEC, NULL, 0, + "INTEGER_0_16383", HFILL }}, + { &hf_lppe_aw, + { "aw", "lppe.aw", + FT_UINT32, BASE_DEC, NULL, 0, + "INTEGER_0_16383", HFILL }}, + { &hf_lppe_bw, + { "bw", "lppe.bw", + FT_UINT32, BASE_DEC, NULL, 0, + "INTEGER_0_16383", HFILL }}, + { &hf_lppe_cw, + { "cw", "lppe.cw", + FT_UINT32, BASE_DEC, NULL, 0, + "INTEGER_0_16383", HFILL }}, + { &hf_lppe_OMA_LPPe_AGNSS_AltitudeAssistanceList_item, + { "OMA-LPPe-AGNSS-AltitudeAssistanceAreaElement", "lppe.OMA_LPPe_AGNSS_AltitudeAssistanceAreaElement", + FT_NONE, BASE_NONE, NULL, 0, + NULL, HFILL }}, + { &hf_lppe_gradientReferencePosition_01, + { "gradientReferencePosition", "lppe.gradientReferencePosition", + FT_NONE, BASE_NONE, NULL, 0, + "EllipsoidPointWithAltitudeAndUncertaintyEllipsoid", HFILL }}, + { &hf_lppe_pressureAssistanceList, + { "pressureAssistanceList", "lppe.pressureAssistanceList", + FT_UINT32, BASE_DEC, NULL, 0, + "SEQUENCE_SIZE_1_16_OF_OMA_LPPe_AGNSS_PressureAssistanceElement", HFILL }}, + { &hf_lppe_pressureAssistanceList_item, + { "OMA-LPPe-AGNSS-PressureAssistanceElement", "lppe.OMA_LPPe_AGNSS_PressureAssistanceElement", + FT_NONE, BASE_NONE, NULL, 0, + NULL, HFILL }}, + { &hf_lppe_gN_01, + { "gN", "lppe.gN", + FT_INT32, BASE_DEC, NULL, 0, + "INTEGER_M128_127", HFILL }}, + { &hf_lppe_gE_01, + { "gE", "lppe.gE", + FT_INT32, BASE_DEC, NULL, 0, + "INTEGER_M128_127", HFILL }}, + { &hf_lppe_solarRadiation_01, + { "solarRadiation", "lppe.solarRadiation", + FT_UINT32, BASE_DEC, NULL, 0, + "INTEGER_1000_2000", HFILL }}, + { &hf_lppe_OMA_LPPe_AGNSS_MechanicsForAllSVs_item, + { "OMA-LPPe-AGNSS-MechanicsElement", "lppe.OMA_LPPe_AGNSS_MechanicsElement", + FT_NONE, BASE_NONE, NULL, 0, + NULL, HFILL }}, + { &hf_lppe_svid, + { "svid", "lppe.svid", + FT_NONE, BASE_NONE, NULL, 0, + "SV_ID", HFILL }}, + { &hf_lppe_mass, + { "mass", "lppe.mass", + FT_UINT32, BASE_DEC, NULL, 0, + "INTEGER_1_4095", HFILL }}, + { &hf_lppe_effectiveReflectivityArea, + { "effectiveReflectivityArea", "lppe.effectiveReflectivityArea", + FT_UINT32, BASE_DEC, NULL, 0, + "INTEGER_1_511", HFILL }}, + { &hf_lppe_pco, + { "pco", "lppe.pco", + FT_NONE, BASE_NONE, NULL, 0, + "OMA_LPPe_AGNSS_PCOelement", HFILL }}, + { &hf_lppe_svInfo, + { "svInfo", "lppe.svInfo", + FT_NONE, BASE_NONE, NULL, 0, + NULL, HFILL }}, + { &hf_lppe_svType, + { "svType", "lppe.svType", + FT_UINT32, BASE_DEC, VALS(lppe_OMA_LPPe_AGNSS_SVtype_vals), 0, + "OMA_LPPe_AGNSS_SVtype", HFILL }}, + { &hf_lppe_svNumber, + { "svNumber", "lppe.svNumber", + FT_UINT32, BASE_DEC, NULL, 0, + "INTEGER_0_1000", HFILL }}, + { &hf_lppe_xOffsetSBF, + { "xOffsetSBF", "lppe.xOffsetSBF", + FT_INT32, BASE_DEC, NULL, 0, + "INTEGER_M30000_30000", HFILL }}, + { &hf_lppe_yOffsetSBF, + { "yOffsetSBF", "lppe.yOffsetSBF", + FT_INT32, BASE_DEC, NULL, 0, + "INTEGER_M30000_30000", HFILL }}, + { &hf_lppe_zOffsetSBF, + { "zOffsetSBF", "lppe.zOffsetSBF", + FT_INT32, BASE_DEC, NULL, 0, + "INTEGER_M30000_30000", HFILL }}, + { &hf_lppe_OMA_LPPe_AGNSS_DCBsForAllSVs_item, + { "OMA-LPPe-AGNSS-DCBlistElement", "lppe.OMA_LPPe_AGNSS_DCBlistElement", + FT_NONE, BASE_NONE, NULL, 0, + NULL, HFILL }}, + { &hf_lppe_reference, + { "reference", "lppe.reference", + FT_NONE, BASE_NONE, NULL, 0, + NULL, HFILL }}, + { &hf_lppe_signal, + { "signal", "lppe.signal", + FT_NONE, BASE_NONE, NULL, 0, + "GNSS_SignalID", HFILL }}, + { &hf_lppe_pd, + { "pd", "lppe.pd", + FT_UINT32, BASE_DEC, VALS(lppe_T_pd_vals), 0, + NULL, HFILL }}, + { &hf_lppe_dcbList, + { "dcbList", "lppe.dcbList", + FT_UINT32, BASE_DEC, NULL, 0, + "OMA_LPPe_AGNSS_DCBlist", HFILL }}, + { &hf_lppe_OMA_LPPe_AGNSS_DCBlist_item, + { "OMA-LPPe-AGNSS-DCBelement", "lppe.OMA_LPPe_AGNSS_DCBelement", + FT_NONE, BASE_NONE, NULL, 0, + NULL, HFILL }}, + { &hf_lppe_pd_01, + { "pd", "lppe.pd", + FT_UINT32, BASE_DEC, VALS(lppe_T_pd_01_vals), 0, + "T_pd_01", HFILL }}, + { &hf_lppe_dcb, + { "dcb", "lppe.dcb", + FT_INT32, BASE_DEC, NULL, 0, + "INTEGER_M4096_4095", HFILL }}, + { &hf_lppe_OMA_LPPe_AGNSS_NavModelDegradationModelList_item, + { "OMA-LPPe-AGNSS-NavModelDegradationModelElement", "lppe.OMA_LPPe_AGNSS_NavModelDegradationModelElement", + FT_NONE, BASE_NONE, NULL, 0, + NULL, HFILL }}, + { &hf_lppe_clockDegradationModel, + { "clockDegradationModel", "lppe.clockDegradationModel", + FT_NONE, BASE_NONE, NULL, 0, + "OMA_LPPe_AGNSS_ClockModelDegradationModel", HFILL }}, + { &hf_lppe_orbitDegradationModel, + { "orbitDegradationModel", "lppe.orbitDegradationModel", + FT_NONE, BASE_NONE, NULL, 0, + "OMA_LPPe_AGNSS_OrbitModelDegradationModel", HFILL }}, + { &hf_lppe_clockRMS0, + { "clockRMS0", "lppe.clockRMS0", + FT_UINT32, BASE_DEC, NULL, 0, + "INTEGER_0_31", HFILL }}, + { &hf_lppe_clockRMS1, + { "clockRMS1", "lppe.clockRMS1", + FT_UINT32, BASE_DEC, NULL, 0, + "INTEGER_0_7", HFILL }}, + { &hf_lppe_orbitRMS0, + { "orbitRMS0", "lppe.orbitRMS0", + FT_UINT32, BASE_DEC, NULL, 0, + "INTEGER_0_31", HFILL }}, + { &hf_lppe_orbitRMS1, + { "orbitRMS1", "lppe.orbitRMS1", + FT_UINT32, BASE_DEC, NULL, 0, + "INTEGER_0_7", HFILL }}, + { &hf_lppe_ccpProvideCommonParameters, + { "ccpProvideCommonParameters", "lppe.ccpProvideCommonParameters", + FT_NONE, BASE_NONE, NULL, 0, + "OMA_LPPe_AGNSS_CCPprovideCommonParameters", HFILL }}, + { &hf_lppe_ccpProvideControlParameters, + { "ccpProvideControlParameters", "lppe.ccpProvideControlParameters", + FT_NONE, BASE_NONE, NULL, 0, + "OMA_LPPe_AGNSS_CCPprovideControlParameters", HFILL }}, + { &hf_lppe_ccpReferenceTime, + { "ccpReferenceTime", "lppe.ccpReferenceTime", + FT_NONE, BASE_NONE, NULL, 0, + "GNSS_SystemTime", HFILL }}, + { &hf_lppe_ccpSupportArea, + { "ccpSupportArea", "lppe.ccpSupportArea", + FT_NONE, BASE_NONE, NULL, 0, + "OMA_LPPe_AGNSS_CCPsupportArea", HFILL }}, + { &hf_lppe_ccpNeighborList, + { "ccpNeighborList", "lppe.ccpNeighborList", + FT_UINT32, BASE_DEC, NULL, 0, + "OMA_LPPe_AGNSS_CCPreferenceStationList", HFILL }}, + { &hf_lppe_ccpReferenceStationList, + { "ccpReferenceStationList", "lppe.ccpReferenceStationList", + FT_UINT32, BASE_DEC, NULL, 0, + "OMA_LPPe_AGNSS_CCPreferenceStationList", HFILL }}, + { &hf_lppe_areaDescription, + { "areaDescription", "lppe.areaDescription", + FT_NONE, BASE_NONE, NULL, 0, + "OMA_LPPe_ValidityArea", HFILL }}, + { &hf_lppe_signalSupport, + { "signalSupport", "lppe.signalSupport", + FT_UINT32, BASE_DEC, NULL, 0, + "SEQUENCE_SIZE_1_8_OF_OMA_LPPe_AGNSS_CCPsignalSupport", HFILL }}, + { &hf_lppe_signalSupport_item, + { "OMA-LPPe-AGNSS-CCPsignalSupport", "lppe.OMA_LPPe_AGNSS_CCPsignalSupport", + FT_NONE, BASE_NONE, NULL, 0, + NULL, HFILL }}, + { &hf_lppe_gnss, + { "gnss", "lppe.gnss", + FT_NONE, BASE_NONE, NULL, 0, + "GNSS_ID", HFILL }}, + { &hf_lppe_signals, + { "signals", "lppe.signals", + FT_NONE, BASE_NONE, NULL, 0, + "GNSS_SignalIDs", HFILL }}, + { &hf_lppe_OMA_LPPe_AGNSS_CCPreferenceStationList_item, + { "OMA-LPPe-AGNSS-CCPreferenceStationElement", "lppe.OMA_LPPe_AGNSS_CCPreferenceStationElement", + FT_NONE, BASE_NONE, NULL, 0, + NULL, HFILL }}, + { &hf_lppe_referenceStationID, + { "referenceStationID", "lppe.referenceStationID", + FT_NONE, BASE_NONE, NULL, 0, + "OMA_LPPe_AGNSS_CCPreferenceStationID", HFILL }}, + { &hf_lppe_referenceStationLocation, + { "referenceStationLocation", "lppe.referenceStationLocation", + FT_NONE, BASE_NONE, NULL, 0, + "OMA_LPPe_HighAccuracy3Dposition", HFILL }}, + { &hf_lppe_antennaDescription, + { "antennaDescription", "lppe.antennaDescription", + FT_NONE, BASE_NONE, NULL, 0, + "OMA_LPPe_AGNSS_AntennaDescription", HFILL }}, + { &hf_lppe_OMA_LPPe_AGNSS_CCPassistGenericProvide_item, + { "OMA-LPPe-AGNSS-CCPassistGenericProvideElement", "lppe.OMA_LPPe_AGNSS_CCPassistGenericProvideElement", + FT_NONE, BASE_NONE, NULL, 0, + NULL, HFILL }}, + { &hf_lppe_ccpPerSignalList, + { "ccpPerSignalList", "lppe.ccpPerSignalList", + FT_UINT32, BASE_DEC, NULL, 0, + "SEQUENCE_SIZE_1_8_OF_OMA_LPPe_AGNSS_CCPperSignalElement", HFILL }}, + { &hf_lppe_ccpPerSignalList_item, + { "OMA-LPPe-AGNSS-CCPperSignalElement", "lppe.OMA_LPPe_AGNSS_CCPperSignalElement", + FT_NONE, BASE_NONE, NULL, 0, + NULL, HFILL }}, + { &hf_lppe_signal_ID, + { "signal-ID", "lppe.signal_ID", + FT_NONE, BASE_NONE, NULL, 0, + "GNSS_SignalID", HFILL }}, + { &hf_lppe_ccpPerSVlist, + { "ccpPerSVlist", "lppe.ccpPerSVlist", + FT_UINT32, BASE_DEC, NULL, 0, + "SEQUENCE_SIZE_1_64_OF_OMA_LPPe_AGNSS_CCPperSVelement", HFILL }}, + { &hf_lppe_ccpPerSVlist_item, + { "OMA-LPPe-AGNSS-CCPperSVelement", "lppe.OMA_LPPe_AGNSS_CCPperSVelement", + FT_NONE, BASE_NONE, NULL, 0, + NULL, HFILL }}, + { &hf_lppe_integerCodePhase, + { "integerCodePhase", "lppe.integerCodePhase", + FT_UINT32, BASE_DEC, NULL, 0, + "INTEGER_0_255", HFILL }}, + { &hf_lppe_codePhase, + { "codePhase", "lppe.codePhase", + FT_UINT32, BASE_DEC, NULL, 0, + "INTEGER_0_14989622", HFILL }}, + { &hf_lppe_codePhaseError, + { "codePhaseError", "lppe.codePhaseError", + FT_UINT32, BASE_DEC, VALS(lppe_OMA_LPPe_AGNSS_CodePhaseError_vals), 0, + "OMA_LPPe_AGNSS_CodePhaseError", HFILL }}, + { &hf_lppe_phaseRangeDelta, + { "phaseRangeDelta", "lppe.phaseRangeDelta", + FT_INT32, BASE_DEC, NULL, 0, + "INTEGER_M524288_524287", HFILL }}, + { &hf_lppe_phaseRangeRMSerror, + { "phaseRangeRMSerror", "lppe.phaseRangeRMSerror", + FT_UINT32, BASE_DEC, NULL, 0, + "INTEGER_0_127", HFILL }}, + { &hf_lppe_lockIndicator, + { "lockIndicator", "lppe.lockIndicator", + FT_BOOLEAN, BASE_NONE, NULL, 0, + "BOOLEAN", HFILL }}, + { &hf_lppe_codePhaseRMSError, + { "codePhaseRMSError", "lppe.codePhaseRMSError", + FT_UINT32, BASE_DEC, NULL, 0, + "INTEGER_0_63", HFILL }}, + { &hf_lppe_cnr, + { "cnr", "lppe.cnr", + FT_UINT32, BASE_DEC, NULL, 0, + "INTEGER_0_255", HFILL }}, + { &hf_lppe_coordinateBased, + { "coordinateBased", "lppe.coordinateBased", + FT_NONE, BASE_NONE, NULL, 0, + "OMA_LPPe_AGNSS_NavModel_CoordinateBased", HFILL }}, + { &hf_lppe_fixedInterval, + { "fixedInterval", "lppe.fixedInterval", + FT_NONE, BASE_NONE, NULL, 0, + NULL, HFILL }}, + { &hf_lppe_interval, + { "interval", "lppe.interval", + FT_UINT32, BASE_DEC, NULL, 0, + "INTEGER_1_30", HFILL }}, + { &hf_lppe_bases, + { "bases", "lppe.bases", + FT_NONE, BASE_NONE, NULL, 0, + NULL, HFILL }}, + { &hf_lppe_baseForPosVel, + { "baseForPosVel", "lppe.baseForPosVel", + FT_INT32, BASE_DEC, NULL, 0, + "INTEGER_M100000000_100000000", HFILL }}, + { &hf_lppe_baseForCcRate, + { "baseForCcRate", "lppe.baseForCcRate", + FT_NONE, BASE_NONE, NULL, 0, + "OMA_LPPe_AGNSS_NavModel_BigNumber", HFILL }}, + { &hf_lppe_referencedTo, + { "referencedTo", "lppe.referencedTo", + FT_UINT32, BASE_DEC, VALS(lppe_T_referencedTo_vals), 0, + NULL, HFILL }}, + { &hf_lppe_pointList, + { "pointList", "lppe.pointList", + FT_UINT32, BASE_DEC, NULL, 0, + "SEQUENCE_SIZE_1_97_OF_OMA_LPPe_AGNSS_NavModel_CoordinateBasedElement", HFILL }}, + { &hf_lppe_pointList_item, + { "OMA-LPPe-AGNSS-NavModel-CoordinateBasedElement", "lppe.OMA_LPPe_AGNSS_NavModel_CoordinateBasedElement", + FT_NONE, BASE_NONE, NULL, 0, + NULL, HFILL }}, + { &hf_lppe_time_of_record, + { "time-of-record", "lppe.time_of_record", + FT_NONE, BASE_NONE, NULL, 0, + "GNSS_SystemTime", HFILL }}, + { &hf_lppe_svIdList, + { "svIdList", "lppe.svIdList", + FT_UINT32, BASE_DEC, NULL, 0, + "SEQUENCE_SIZE_1_64_OF_OMA_LPPe_AGNSS_NavModel_PVTelement", HFILL }}, + { &hf_lppe_svIdList_item, + { "OMA-LPPe-AGNSS-NavModel-PVTelement", "lppe.OMA_LPPe_AGNSS_NavModel_PVTelement", + FT_NONE, BASE_NONE, NULL, 0, + NULL, HFILL }}, + { &hf_lppe_svClockOffset, + { "svClockOffset", "lppe.svClockOffset", + FT_NONE, BASE_NONE, NULL, 0, + "OMA_LPPe_AGNSS_NavModel_BigNumber", HFILL }}, + { &hf_lppe_ecefPositionX, + { "ecefPositionX", "lppe.ecefPositionX", + FT_NONE, BASE_NONE, NULL, 0, + "OMA_LPPe_AGNSS_NavModel_BigNumber", HFILL }}, + { &hf_lppe_ecefPositionY, + { "ecefPositionY", "lppe.ecefPositionY", + FT_NONE, BASE_NONE, NULL, 0, + "OMA_LPPe_AGNSS_NavModel_BigNumber", HFILL }}, + { &hf_lppe_ecefPositionZ, + { "ecefPositionZ", "lppe.ecefPositionZ", + FT_NONE, BASE_NONE, NULL, 0, + "OMA_LPPe_AGNSS_NavModel_BigNumber", HFILL }}, + { &hf_lppe_clockPosSTD, + { "clockPosSTD", "lppe.clockPosSTD", + FT_NONE, BASE_NONE, NULL, 0, + "OMA_LPPe_AGNSS_NavModel_STDmatrix", HFILL }}, + { &hf_lppe_rateRecord, + { "rateRecord", "lppe.rateRecord", + FT_NONE, BASE_NONE, NULL, 0, + NULL, HFILL }}, + { &hf_lppe_svClockRate, + { "svClockRate", "lppe.svClockRate", + FT_NONE, BASE_NONE, NULL, 0, + "OMA_LPPe_AGNSS_NavModel_BigNumber", HFILL }}, + { &hf_lppe_ecefVelocityX, + { "ecefVelocityX", "lppe.ecefVelocityX", + FT_NONE, BASE_NONE, NULL, 0, + "OMA_LPPe_AGNSS_NavModel_BigNumber", HFILL }}, + { &hf_lppe_ecefVelocityY, + { "ecefVelocityY", "lppe.ecefVelocityY", + FT_NONE, BASE_NONE, NULL, 0, + "OMA_LPPe_AGNSS_NavModel_BigNumber", HFILL }}, + { &hf_lppe_ecefVelocityZ, + { "ecefVelocityZ", "lppe.ecefVelocityZ", + FT_NONE, BASE_NONE, NULL, 0, + "OMA_LPPe_AGNSS_NavModel_BigNumber", HFILL }}, + { &hf_lppe_clockRateVelSTD, + { "clockRateVelSTD", "lppe.clockRateVelSTD", + FT_NONE, BASE_NONE, NULL, 0, + "OMA_LPPe_AGNSS_NavModel_STDmatrix", HFILL }}, + { &hf_lppe_msb, + { "msb", "lppe.msb", + FT_INT32, BASE_DEC, NULL, 0, + "INTEGER_M1000000000_1000000000", HFILL }}, + { &hf_lppe_lsb, + { "lsb", "lppe.lsb", + FT_UINT32, BASE_DEC, NULL, 0, + "INTEGER_1_100", HFILL }}, + { &hf_lppe_e11, + { "e11", "lppe.e11", + FT_UINT32, BASE_DEC, NULL, 0, + "INTEGER_0_1000", HFILL }}, + { &hf_lppe_e22, + { "e22", "lppe.e22", + FT_UINT32, BASE_DEC, NULL, 0, + "INTEGER_0_1000", HFILL }}, + { &hf_lppe_e33, + { "e33", "lppe.e33", + FT_UINT32, BASE_DEC, NULL, 0, + "INTEGER_0_1000", HFILL }}, + { &hf_lppe_e44, + { "e44", "lppe.e44", + FT_UINT32, BASE_DEC, NULL, 0, + "INTEGER_0_1000000", HFILL }}, + { &hf_lppe_e12, + { "e12", "lppe.e12", + FT_UINT32, BASE_DEC, NULL, 0, + "INTEGER_0_10000000", HFILL }}, + { &hf_lppe_e13, + { "e13", "lppe.e13", + FT_UINT32, BASE_DEC, NULL, 0, + "INTEGER_0_10000000", HFILL }}, + { &hf_lppe_e14, + { "e14", "lppe.e14", + FT_UINT32, BASE_DEC, NULL, 0, + "INTEGER_0_10000000", HFILL }}, + { &hf_lppe_e23, + { "e23", "lppe.e23", + FT_UINT32, BASE_DEC, NULL, 0, + "INTEGER_0_10000000", HFILL }}, + { &hf_lppe_e24, + { "e24", "lppe.e24", + FT_UINT32, BASE_DEC, NULL, 0, + "INTEGER_0_10000000", HFILL }}, + { &hf_lppe_e34, + { "e34", "lppe.e34", + FT_UINT32, BASE_DEC, NULL, 0, + "INTEGER_0_10000000", HFILL }}, + { &hf_lppe_commonAssistDataReq, + { "commonAssistDataReq", "lppe.commonAssistDataReq", + FT_NONE, BASE_NONE, NULL, 0, + "OMA_LPPe_AGNSS_CommonAssistanceDataReq", HFILL }}, + { &hf_lppe_genericAssistDataReq, + { "genericAssistDataReq", "lppe.genericAssistDataReq", + FT_UINT32, BASE_DEC, NULL, 0, + "OMA_LPPe_AGNSS_GenericAssistanceDataReq", HFILL }}, + { &hf_lppe_ionosphericModelReq, + { "ionosphericModelReq", "lppe.ionosphericModelReq", + FT_UINT32, BASE_DEC, VALS(lppe_OMA_LPPe_AGNSS_IonosphericModelReq_vals), 0, + "OMA_LPPe_AGNSS_IonosphericModelReq", HFILL }}, + { &hf_lppe_troposphereModelReq, + { "troposphereModelReq", "lppe.troposphereModelReq", + FT_NONE, BASE_NONE, NULL, 0, + "OMA_LPPe_AGNSS_TroposphereModelReq", HFILL }}, + { &hf_lppe_altitudeAssistanceReq, + { "altitudeAssistanceReq", "lppe.altitudeAssistanceReq", + FT_NONE, BASE_NONE, NULL, 0, + "OMA_LPPe_AGNSS_AltitudeAssistanceReq", HFILL }}, + { &hf_lppe_solarRadiationRequest, + { "solarRadiationRequest", "lppe.solarRadiationRequest", + FT_NONE, BASE_NONE, NULL, 0, + "OMA_LPPe_AGNSS_SolarRadiationReq", HFILL }}, + { &hf_lppe_ccpRequestControlParameters, + { "ccpRequestControlParameters", "lppe.ccpRequestControlParameters", + FT_NONE, BASE_NONE, NULL, 0, + "OMA_LPPe_AGNSS_CCPrequestControlParameters", HFILL }}, + { &hf_lppe_OMA_LPPe_AGNSS_GenericAssistanceDataReq_item, + { "OMA-LPPe-AGNSS-GenericAssistDataReqElement", "lppe.OMA_LPPe_AGNSS_GenericAssistDataReqElement", + FT_NONE, BASE_NONE, NULL, 0, + NULL, HFILL }}, + { &hf_lppe_waIonoSurfaceReq, + { "waIonoSurfaceReq", "lppe.waIonoSurfaceReq", + FT_NONE, BASE_NONE, NULL, 0, + "OMA_LPPe_AGNSS_WaIonoSurfaceRequest", HFILL }}, + { &hf_lppe_mechanicsReq, + { "mechanicsReq", "lppe.mechanicsReq", + FT_NONE, BASE_NONE, NULL, 0, + "OMA_LPPe_AGNSS_MechanicsReq", HFILL }}, + { &hf_lppe_dcbReq, + { "dcbReq", "lppe.dcbReq", + FT_NONE, BASE_NONE, NULL, 0, + "OMA_LPPe_AGNSS_DCBreq", HFILL }}, + { &hf_lppe_navModelDegradationModelReq, + { "navModelDegradationModelReq", "lppe.navModelDegradationModelReq", + FT_NONE, BASE_NONE, NULL, 0, + "OMA_LPPe_AGNSS_NavModelDegradationModelReq", HFILL }}, + { &hf_lppe_ccpAssistGenericReq, + { "ccpAssistGenericReq", "lppe.ccpAssistGenericReq", + FT_NONE, BASE_NONE, NULL, 0, + "OMA_LPPe_AGNSS_CCPassistGenericReq", HFILL }}, + { &hf_lppe_navigationModelReq, + { "navigationModelReq", "lppe.navigationModelReq", + FT_NONE, BASE_NONE, NULL, 0, + "OMA_LPPe_AGNSS_NavigationModelReq", HFILL }}, + { &hf_lppe_staticModels_01, + { "staticModels", "lppe.staticModels", + FT_NONE, BASE_NONE, NULL, 0, + "T_staticModels_01", HFILL }}, + { &hf_lppe_ionoreq, + { "ionoreq", "lppe.ionoreq", + FT_BYTES, BASE_NONE, NULL, 0, + NULL, HFILL }}, + { &hf_lppe_requestBeginTime, + { "requestBeginTime", "lppe.requestBeginTime", + FT_NONE, BASE_NONE, NULL, 0, + "GNSS_SystemTime", HFILL }}, + { &hf_lppe_periodicModels, + { "periodicModels", "lppe.periodicModels", + FT_NONE, BASE_NONE, NULL, 0, + NULL, HFILL }}, + { &hf_lppe_waIonoSurface, + { "waIonoSurface", "lppe.waIonoSurface", + FT_NONE, BASE_NONE, NULL, 0, + "OMA_LPPe_AGNSS_WideAreaIonoSurfaceControlParametersRequest", HFILL }}, + { &hf_lppe_troposphereModelReq_01, + { "troposphereModelReq", "lppe.troposphereModelReq", + FT_BYTES, BASE_NONE, NULL, 0, + NULL, HFILL }}, + { &hf_lppe_supportForMultipleGridPoints, + { "supportForMultipleGridPoints", "lppe.supportForMultipleGridPoints", + FT_BOOLEAN, BASE_NONE, NULL, 0, + "BOOLEAN", HFILL }}, + { &hf_lppe_reference_01, + { "reference", "lppe.reference", + FT_NONE, BASE_NONE, NULL, 0, + "T_reference_01", HFILL }}, + { &hf_lppe_pd_02, + { "pd", "lppe.pd", + FT_UINT32, BASE_DEC, VALS(lppe_T_pd_02_vals), 0, + "T_pd_02", HFILL }}, + { &hf_lppe_massRequest, + { "massRequest", "lppe.massRequest", + FT_BOOLEAN, BASE_NONE, NULL, 0, + "BOOLEAN", HFILL }}, + { &hf_lppe_effectiveReflectivityAreaRequest, + { "effectiveReflectivityAreaRequest", "lppe.effectiveReflectivityAreaRequest", + FT_BOOLEAN, BASE_NONE, NULL, 0, + "BOOLEAN", HFILL }}, + { &hf_lppe_pcoRequest, + { "pcoRequest", "lppe.pcoRequest", + FT_BOOLEAN, BASE_NONE, NULL, 0, + "BOOLEAN", HFILL }}, + { &hf_lppe_svInfoRequest, + { "svInfoRequest", "lppe.svInfoRequest", + FT_BOOLEAN, BASE_NONE, NULL, 0, + "BOOLEAN", HFILL }}, + { &hf_lppe_ccpSupportAreaRequest, + { "ccpSupportAreaRequest", "lppe.ccpSupportAreaRequest", + FT_NONE, BASE_NONE, NULL, 0, + NULL, HFILL }}, + { &hf_lppe_ccpNeighborListRequest, + { "ccpNeighborListRequest", "lppe.ccpNeighborListRequest", + FT_NONE, BASE_NONE, NULL, 0, + NULL, HFILL }}, + { &hf_lppe_ccpCommonRequest, + { "ccpCommonRequest", "lppe.ccpCommonRequest", + FT_NONE, BASE_NONE, NULL, 0, + NULL, HFILL }}, + { &hf_lppe_refStation, + { "refStation", "lppe.refStation", + FT_UINT32, BASE_DEC, VALS(lppe_T_refStation_vals), 0, + NULL, HFILL }}, + { &hf_lppe_posBasedReferenceStationRequest, + { "posBasedReferenceStationRequest", "lppe.posBasedReferenceStationRequest", + FT_NONE, BASE_NONE, NULL, 0, + NULL, HFILL }}, + { &hf_lppe_requestedReferenceStationLocation, + { "requestedReferenceStationLocation", "lppe.requestedReferenceStationLocation", + FT_NONE, BASE_NONE, NULL, 0, + "OMA_LPPe_HighAccuracy3Dposition", HFILL }}, + { &hf_lppe_qor, + { "qor", "lppe.qor", + FT_UINT32, BASE_DEC, VALS(lppe_OMA_LPPe_AGNSS_QoR_vals), 0, + "OMA_LPPe_AGNSS_QoR", HFILL }}, + { &hf_lppe_idBasedReferenceStationRequest, + { "idBasedReferenceStationRequest", "lppe.idBasedReferenceStationRequest", + FT_UINT32, BASE_DEC, NULL, 0, + "OMA_LPPe_AGNSS_ReferenceStationIDlist", HFILL }}, + { &hf_lppe_referenceStationKillList, + { "referenceStationKillList", "lppe.referenceStationKillList", + FT_UINT32, BASE_DEC, NULL, 0, + "OMA_LPPe_AGNSS_ReferenceStationIDlist", HFILL }}, + { &hf_lppe_OMA_LPPe_AGNSS_ReferenceStationIDlist_item, + { "OMA-LPPe-AGNSS-CCPreferenceStationID", "lppe.OMA_LPPe_AGNSS_CCPreferenceStationID", + FT_NONE, BASE_NONE, NULL, 0, + NULL, HFILL }}, + { &hf_lppe_ccpAssist_SignalsReq, + { "ccpAssist-SignalsReq", "lppe.ccpAssist_SignalsReq", + FT_NONE, BASE_NONE, NULL, 0, + "GNSS_SignalIDs", HFILL }}, + { &hf_lppe_navModelID_PrefList, + { "navModelID-PrefList", "lppe.navModelID_PrefList", + FT_UINT32, BASE_DEC, NULL, 0, + NULL, HFILL }}, + { &hf_lppe_navModelID_PrefList_item, + { "navModelID-PrefList item", "lppe.navModelID_PrefList_item", + FT_UINT32, BASE_DEC, NULL, 0, + "INTEGER_1_8", HFILL }}, + { &hf_lppe_highAccuracyReferenceTime, + { "highAccuracyReferenceTime", "lppe.highAccuracyReferenceTime", + FT_NONE, BASE_NONE, NULL, 0, + "GNSS_SystemTime", HFILL }}, + { &hf_lppe_highAccuracyMeasurements, + { "highAccuracyMeasurements", "lppe.highAccuracyMeasurements", + FT_UINT32, BASE_DEC, VALS(lppe_OMA_LPPe_AGNSS_HAgnssProvide_vals), 0, + "OMA_LPPe_AGNSS_HAgnssProvide", HFILL }}, + { &hf_lppe_ionosphereMeasurements, + { "ionosphereMeasurements", "lppe.ionosphereMeasurements", + FT_NONE, BASE_NONE, NULL, 0, + "OMA_LPPe_AGNSS_IonosphereMeasurements", HFILL }}, + { &hf_lppe_localSurfaceMeasurements, + { "localSurfaceMeasurements", "lppe.localSurfaceMeasurements", + FT_NONE, BASE_NONE, NULL, 0, + "OMA_LPPe_AGNSS_LocalSurfaceMeasurements", HFILL }}, + { &hf_lppe_controlParameters_01, + { "controlParameters", "lppe.controlParameters", + FT_NONE, BASE_NONE, NULL, 0, + NULL, HFILL }}, + { &hf_lppe_measurements, + { "measurements", "lppe.measurements", + FT_NONE, BASE_NONE, NULL, 0, + NULL, HFILL }}, + { &hf_lppe_position, + { "position", "lppe.position", + FT_NONE, BASE_NONE, NULL, 0, + "EllipsoidPointWithAltitudeAndUncertaintyEllipsoid", HFILL }}, + { &hf_lppe_referenceTime, + { "referenceTime", "lppe.referenceTime", + FT_NONE, BASE_NONE, NULL, 0, + "GNSS_SystemTime", HFILL }}, + { &hf_lppe_localPressure, + { "localPressure", "lppe.localPressure", + FT_NONE, BASE_NONE, NULL, 0, + NULL, HFILL }}, + { &hf_lppe_pressureUncertainty, + { "pressureUncertainty", "lppe.pressureUncertainty", + FT_UINT32, BASE_DEC, NULL, 0, + "INTEGER_0_127", HFILL }}, + { &hf_lppe_antennaOrientation, + { "antennaOrientation", "lppe.antennaOrientation", + FT_UINT32, BASE_DEC, VALS(lppe_OMA_LPPe_Orientation_vals), 0, + "OMA_LPPe_Orientation", HFILL }}, + { &hf_lppe_signalMeasurements, + { "signalMeasurements", "lppe.signalMeasurements", + FT_UINT32, BASE_DEC, NULL, 0, + "SEQUENCE_SIZE_1_16_OF_OMA_LPPe_AGNSS_HAgnssMeasurementElement", HFILL }}, + { &hf_lppe_signalMeasurements_item, + { "OMA-LPPe-AGNSS-HAgnssMeasurementElement", "lppe.OMA_LPPe_AGNSS_HAgnssMeasurementElement", + FT_NONE, BASE_NONE, NULL, 0, + NULL, HFILL }}, + { &hf_lppe_haGNSSperSignalList, + { "haGNSSperSignalList", "lppe.haGNSSperSignalList", + FT_UINT32, BASE_DEC, NULL, 0, + "SEQUENCE_SIZE_1_8_OF_OMA_LPPe_HAgnssPerSignalElement", HFILL }}, + { &hf_lppe_haGNSSperSignalList_item, + { "OMA-LPPe-HAgnssPerSignalElement", "lppe.OMA_LPPe_HAgnssPerSignalElement", + FT_NONE, BASE_NONE, NULL, 0, + NULL, HFILL }}, + { &hf_lppe_haGNSSperSVlist, + { "haGNSSperSVlist", "lppe.haGNSSperSVlist", + FT_UINT32, BASE_DEC, NULL, 0, + "SEQUENCE_SIZE_1_64_OF_OMA_LPPe_HAgnssPerSVelement", HFILL }}, + { &hf_lppe_haGNSSperSVlist_item, + { "OMA-LPPe-HAgnssPerSVelement", "lppe.OMA_LPPe_HAgnssPerSVelement", + FT_NONE, BASE_NONE, NULL, 0, + NULL, HFILL }}, + { &hf_lppe_multipathDetection, + { "multipathDetection", "lppe.multipathDetection", + FT_UINT32, BASE_DEC, VALS(lppe_T_multipathDetection_vals), 0, + NULL, HFILL }}, + { &hf_lppe_adr, + { "adr", "lppe.adr", + FT_UINT32, BASE_DEC, NULL, 0, + "INTEGER_0_536870911", HFILL }}, + { &hf_lppe_adrRMSerror, + { "adrRMSerror", "lppe.adrRMSerror", + FT_UINT32, BASE_DEC, NULL, 0, + "INTEGER_0_127", HFILL }}, + { &hf_lppe_tecPerSV, + { "tecPerSV", "lppe.tecPerSV", + FT_UINT32, BASE_DEC, NULL, 0, + "OMA_LPPe_AGNSS_TECPerSV", HFILL }}, + { &hf_lppe_tecAtZenith, + { "tecAtZenith", "lppe.tecAtZenith", + FT_NONE, BASE_NONE, NULL, 0, + "OMA_LPPe_AGNSS_TECAtZenith", HFILL }}, + { &hf_lppe_OMA_LPPe_AGNSS_TECPerSV_item, + { "OMA-LPPe-AGNSS-TECPerSVElement", "lppe.OMA_LPPe_AGNSS_TECPerSVElement", + FT_NONE, BASE_NONE, NULL, 0, + NULL, HFILL }}, + { &hf_lppe_azimuth, + { "azimuth", "lppe.azimuth", + FT_UINT32, BASE_DEC, NULL, 0, + "INTEGER_0_359", HFILL }}, + { &hf_lppe_elevation, + { "elevation", "lppe.elevation", + FT_UINT32, BASE_DEC, NULL, 0, + "INTEGER_0_90", HFILL }}, + { &hf_lppe_tecValue, + { "tecValue", "lppe.tecValue", + FT_UINT32, BASE_DEC, NULL, 0, + "INTEGER_0_511", HFILL }}, + { &hf_lppe_tecUncertainty, + { "tecUncertainty", "lppe.tecUncertainty", + FT_UINT32, BASE_DEC, NULL, 0, + "INTEGER_0_63", HFILL }}, + { &hf_lppe_tecValueAtZenith, + { "tecValueAtZenith", "lppe.tecValueAtZenith", + FT_UINT32, BASE_DEC, NULL, 0, + "INTEGER_0_511", HFILL }}, + { &hf_lppe_tecUncertaintyAtZenith, + { "tecUncertaintyAtZenith", "lppe.tecUncertaintyAtZenith", + FT_UINT32, BASE_DEC, NULL, 0, + "INTEGER_0_63", HFILL }}, + { &hf_lppe_temperatureMeasurement, + { "temperatureMeasurement", "lppe.temperatureMeasurement", + FT_NONE, BASE_NONE, NULL, 0, + NULL, HFILL }}, + { &hf_lppe_temperatureUncertainty, + { "temperatureUncertainty", "lppe.temperatureUncertainty", + FT_UINT32, BASE_DEC, NULL, 0, + "INTEGER_0_7", HFILL }}, + { &hf_lppe_positioningInstructions, + { "positioningInstructions", "lppe.positioningInstructions", + FT_NONE, BASE_NONE, NULL, 0, + "OMA_LPPe_AGNSS_PositioningInstructions", HFILL }}, + { &hf_lppe_ionosphereMeasurementsReq, + { "ionosphereMeasurementsReq", "lppe.ionosphereMeasurementsReq", + FT_BYTES, BASE_NONE, NULL, 0, + NULL, HFILL }}, + { &hf_lppe_localSurfaceMeasurementReq, + { "localSurfaceMeasurementReq", "lppe.localSurfaceMeasurementReq", + FT_NONE, BASE_NONE, NULL, 0, + "OMA_LPPe_AGNSS_LocalSurfaceMeasurementReq", HFILL }}, + { &hf_lppe_highAccuracyMethodRequested, + { "highAccuracyMethodRequested", "lppe.highAccuracyMethodRequested", + FT_BOOLEAN, BASE_NONE, NULL, 0, + "BOOLEAN", HFILL }}, + { &hf_lppe_haGNSSreq, + { "haGNSSreq", "lppe.haGNSSreq", + FT_NONE, BASE_NONE, NULL, 0, + "OMA_LPPe_AGNSS_HAgnssRequestControlParameters", HFILL }}, + { &hf_lppe_rate_01, + { "rate", "lppe.rate", + FT_UINT32, BASE_DEC, NULL, 0, + "INTEGER_1_63", HFILL }}, + { &hf_lppe_antennaInformationReq, + { "antennaInformationReq", "lppe.antennaInformationReq", + FT_UINT32, BASE_DEC, VALS(lppe_T_antennaInformationReq_vals), 0, + NULL, HFILL }}, + { &hf_lppe_pressureInformationReq, + { "pressureInformationReq", "lppe.pressureInformationReq", + FT_BOOLEAN, BASE_NONE, NULL, 0, + "BOOLEAN", HFILL }}, + { &hf_lppe_signalReqList, + { "signalReqList", "lppe.signalReqList", + FT_UINT32, BASE_DEC, NULL, 0, + "SEQUENCE_SIZE_1_16_OF_OMA_LPPe_AGNSS_HAgnssSignalReqElement", HFILL }}, + { &hf_lppe_signalReqList_item, + { "OMA-LPPe-AGNSS-HAgnssSignalReqElement", "lppe.OMA_LPPe_AGNSS_HAgnssSignalReqElement", + FT_NONE, BASE_NONE, NULL, 0, + NULL, HFILL }}, + { &hf_lppe_gnssID, + { "gnssID", "lppe.gnssID", + FT_NONE, BASE_NONE, NULL, 0, + "GNSS_ID", HFILL }}, + { &hf_lppe_assistanceDataSupportList, + { "assistanceDataSupportList", "lppe.assistanceDataSupportList", + FT_NONE, BASE_NONE, NULL, 0, + "OMA_LPPe_AGNSS_AssistanceDataSupportList", HFILL }}, + { &hf_lppe_environmentObservationSupportList, + { "environmentObservationSupportList", "lppe.environmentObservationSupportList", + FT_NONE, BASE_NONE, NULL, 0, + "OMA_LPPe_AGNSS_EnvironmentObservationSupportList", HFILL }}, + { &hf_lppe_haGNSSsupport, + { "haGNSSsupport", "lppe.haGNSSsupport", + FT_NONE, BASE_NONE, NULL, 0, + "OMA_LPPe_AGNSS_HAgnssSupport", HFILL }}, + { &hf_lppe_commonAssistanceDataSupport, + { "commonAssistanceDataSupport", "lppe.commonAssistanceDataSupport", + FT_NONE, BASE_NONE, NULL, 0, + "OMA_LPPe_AGNSS_CommonAssistanceDataSupport", HFILL }}, + { &hf_lppe_genericAssistanceDataSupport, + { "genericAssistanceDataSupport", "lppe.genericAssistanceDataSupport", + FT_UINT32, BASE_DEC, NULL, 0, + "OMA_LPPe_AGNSS_GenericAssistanceDataSupport", HFILL }}, + { &hf_lppe_ionosphereMeasurementSupport, + { "ionosphereMeasurementSupport", "lppe.ionosphereMeasurementSupport", + FT_BYTES, BASE_NONE, NULL, 0, + NULL, HFILL }}, + { &hf_lppe_pressureMeasurementSupported, + { "pressureMeasurementSupported", "lppe.pressureMeasurementSupported", + FT_BOOLEAN, BASE_NONE, NULL, 0, + "BOOLEAN", HFILL }}, + { &hf_lppe_temperatureMeasurementSupported, + { "temperatureMeasurementSupported", "lppe.temperatureMeasurementSupported", + FT_BOOLEAN, BASE_NONE, NULL, 0, + "BOOLEAN", HFILL }}, + { &hf_lppe_ionosphericModelSupport, + { "ionosphericModelSupport", "lppe.ionosphericModelSupport", + FT_NONE, BASE_NONE, NULL, 0, + "OMA_LPPe_AGNSS_IonosphericModelSupport", HFILL }}, + { &hf_lppe_troposphereModelSupport, + { "troposphereModelSupport", "lppe.troposphereModelSupport", + FT_NONE, BASE_NONE, NULL, 0, + "OMA_LPPe_AGNSS_TroposphereModelSupport", HFILL }}, + { &hf_lppe_altitudeAssistanceSupport, + { "altitudeAssistanceSupport", "lppe.altitudeAssistanceSupport", + FT_NONE, BASE_NONE, NULL, 0, + "OMA_LPPe_AGNSS_AltitudeAssistanceSupport", HFILL }}, + { &hf_lppe_solarRadiationSupport, + { "solarRadiationSupport", "lppe.solarRadiationSupport", + FT_NONE, BASE_NONE, NULL, 0, + "OMA_LPPe_AGNSS_SolarRadiationSupport", HFILL }}, + { &hf_lppe_ccpSupport, + { "ccpSupport", "lppe.ccpSupport", + FT_NONE, BASE_NONE, NULL, 0, + "OMA_LPPe_AGNSS_CCPsupport", HFILL }}, + { &hf_lppe_ionoModel, + { "ionoModel", "lppe.ionoModel", + FT_BYTES, BASE_NONE, NULL, 0, + NULL, HFILL }}, + { &hf_lppe_tropoModel, + { "tropoModel", "lppe.tropoModel", + FT_BYTES, BASE_NONE, NULL, 0, + NULL, HFILL }}, + { &hf_lppe_supportAreaAssistanceSupported, + { "supportAreaAssistanceSupported", "lppe.supportAreaAssistanceSupported", + FT_BOOLEAN, BASE_NONE, NULL, 0, + "BOOLEAN", HFILL }}, + { &hf_lppe_multiReferenceStationSupported, + { "multiReferenceStationSupported", "lppe.multiReferenceStationSupported", + FT_BOOLEAN, BASE_NONE, NULL, 0, + "BOOLEAN", HFILL }}, + { &hf_lppe_OMA_LPPe_AGNSS_GenericAssistanceDataSupport_item, + { "OMA-LPPe-AGNSS-GenericAssistDataSupportElement", "lppe.OMA_LPPe_AGNSS_GenericAssistDataSupportElement", + FT_NONE, BASE_NONE, NULL, 0, + NULL, HFILL }}, + { &hf_lppe_mechnanicsSupport, + { "mechnanicsSupport", "lppe.mechnanicsSupport", + FT_NONE, BASE_NONE, NULL, 0, + "OMA_LPPe_AGNSS_MechanicsSupport", HFILL }}, + { &hf_lppe_dcbSupport, + { "dcbSupport", "lppe.dcbSupport", + FT_NONE, BASE_NONE, NULL, 0, + "OMA_LPPe_AGNSS_DCBsupport", HFILL }}, + { &hf_lppe_navModelAccuracyModelDegradationSupport, + { "navModelAccuracyModelDegradationSupport", "lppe.navModelAccuracyModelDegradationSupport", + FT_NONE, BASE_NONE, NULL, 0, + "OMA_LPPe_AGNSS_NavModelAccuracyModelDegradationSupport", HFILL }}, + { &hf_lppe_ccpAssistanceSuppport, + { "ccpAssistanceSuppport", "lppe.ccpAssistanceSuppport", + FT_NONE, BASE_NONE, NULL, 0, + "GNSS_SignalIDs", HFILL }}, + { &hf_lppe_navModelSupport, + { "navModelSupport", "lppe.navModelSupport", + FT_NONE, BASE_NONE, NULL, 0, + "OMA_LPPe_AGNSS_NavModelSupport", HFILL }}, + { &hf_lppe_navModelSupport_01, + { "navModelSupport", "lppe.navModelSupport", + FT_UINT32, BASE_DEC, NULL, 0, + NULL, HFILL }}, + { &hf_lppe_navModelSupport_item, + { "navModelSupport item", "lppe.navModelSupport_item", + FT_UINT32, BASE_DEC, NULL, 0, + "INTEGER_1_8", HFILL }}, + { &hf_lppe_modeSupport, + { "modeSupport", "lppe.modeSupport", + FT_BYTES, BASE_NONE, NULL, 0, + NULL, HFILL }}, + { &hf_lppe_haGNSSpressureInformationSupport, + { "haGNSSpressureInformationSupport", "lppe.haGNSSpressureInformationSupport", + FT_BOOLEAN, BASE_NONE, NULL, 0, + "BOOLEAN", HFILL }}, + { &hf_lppe_haGNSSantennaInformationSupport, + { "haGNSSantennaInformationSupport", "lppe.haGNSSantennaInformationSupport", + FT_BYTES, BASE_NONE, NULL, 0, + NULL, HFILL }}, + { &hf_lppe_haGNSSperGNSSsupport, + { "haGNSSperGNSSsupport", "lppe.haGNSSperGNSSsupport", + FT_UINT32, BASE_DEC, NULL, 0, + "SEQUENCE_SIZE_1_8_OF_OMA_LPPe_AGNSS_HAgnssPerGNSSsupport", HFILL }}, + { &hf_lppe_haGNSSperGNSSsupport_item, + { "OMA-LPPe-AGNSS-HAgnssPerGNSSsupport", "lppe.OMA_LPPe_AGNSS_HAgnssPerGNSSsupport", + FT_NONE, BASE_NONE, NULL, 0, + NULL, HFILL }}, + { &hf_lppe_haGNSSsignalSupport, + { "haGNSSsignalSupport", "lppe.haGNSSsignalSupport", + FT_NONE, BASE_NONE, NULL, 0, + "GNSS_SignalIDs", HFILL }}, + { &hf_lppe_assistanceDataSupportListReq, + { "assistanceDataSupportListReq", "lppe.assistanceDataSupportListReq", + FT_NONE, BASE_NONE, NULL, 0, + NULL, HFILL }}, + { &hf_lppe_environmentObservationSupportListReq, + { "environmentObservationSupportListReq", "lppe.environmentObservationSupportListReq", + FT_NONE, BASE_NONE, NULL, 0, + NULL, HFILL }}, + { &hf_lppe_haGNSSsupportReq, + { "haGNSSsupportReq", "lppe.haGNSSsupportReq", + FT_NONE, BASE_NONE, NULL, 0, + NULL, HFILL }}, + { &hf_lppe_agnss_locationServerErrorCauses, + { "agnss-locationServerErrorCauses", "lppe.agnss_locationServerErrorCauses", + FT_NONE, BASE_NONE, NULL, 0, + "OMA_LPPe_AGNSS_LocationServerErrorCauses", HFILL }}, + { &hf_lppe_agnss_targetDeviceErrorCauses, + { "agnss-targetDeviceErrorCauses", "lppe.agnss_targetDeviceErrorCauses", + FT_NONE, BASE_NONE, NULL, 0, + "OMA_LPPe_AGNSS_TargetDeviceErrorCauses", HFILL }}, + { &hf_lppe_waIonoErrorCauses, + { "waIonoErrorCauses", "lppe.waIonoErrorCauses", + FT_UINT32, BASE_DEC, VALS(lppe_T_waIonoErrorCauses_vals), 0, + NULL, HFILL }}, + { &hf_lppe_ccpErrorCauses, + { "ccpErrorCauses", "lppe.ccpErrorCauses", + FT_UINT32, BASE_DEC, VALS(lppe_T_ccpErrorCauses_vals), 0, + NULL, HFILL }}, + { &hf_lppe_highAccuracyErrorCauses, + { "highAccuracyErrorCauses", "lppe.highAccuracyErrorCauses", + FT_UINT32, BASE_DEC, VALS(lppe_T_highAccuracyErrorCauses_vals), 0, + NULL, HFILL }}, + { &hf_lppe_ionosphereMeasurementErrorCauses, + { "ionosphereMeasurementErrorCauses", "lppe.ionosphereMeasurementErrorCauses", + FT_UINT32, BASE_DEC, VALS(lppe_T_ionosphereMeasurementErrorCauses_vals), 0, + NULL, HFILL }}, + { &hf_lppe_environmentObservationErrorCauses, + { "environmentObservationErrorCauses", "lppe.environmentObservationErrorCauses", + FT_UINT32, BASE_DEC, VALS(lppe_T_environmentObservationErrorCauses_vals), 0, + NULL, HFILL }}, + { &hf_lppe_haGNSSerrorCauses, + { "haGNSSerrorCauses", "lppe.haGNSSerrorCauses", + FT_UINT32, BASE_DEC, VALS(lppe_T_haGNSSerrorCauses_vals), 0, + NULL, HFILL }}, + { &hf_lppe_stationID, + { "stationID", "lppe.stationID", + FT_UINT32, BASE_DEC, NULL, 0, + "INTEGER_0_65535", HFILL }}, + { &hf_lppe_antennaDescription_01, + { "antennaDescription", "lppe.antennaDescription", + FT_UINT32, BASE_DEC, VALS(lppe_T_antennaDescription_vals), 0, + NULL, HFILL }}, + { &hf_lppe_igsAntennaName, + { "igsAntennaName", "lppe.igsAntennaName", + FT_STRING, BASE_NONE, NULL, 0, + "OMA_LPPe_CharArray", HFILL }}, + { &hf_lppe_proprietaryName, + { "proprietaryName", "lppe.proprietaryName", + FT_STRING, BASE_NONE, NULL, 0, + "OMA_LPPe_CharArray", HFILL }}, + { &hf_lppe_antennaSetupID, + { "antennaSetupID", "lppe.antennaSetupID", + FT_UINT32, BASE_DEC, NULL, 0, + "INTEGER_0_255", HFILL }}, + { &hf_lppe_antennaSerialNumber, + { "antennaSerialNumber", "lppe.antennaSerialNumber", + FT_STRING, BASE_NONE, NULL, 0, + "OMA_LPPe_CharArray", HFILL }}, + { &hf_lppe_targetDeviceAbortCauses, + { "targetDeviceAbortCauses", "lppe.targetDeviceAbortCauses", + FT_NONE, BASE_NONE, NULL, 0, + NULL, HFILL }}, + { &hf_lppe_ccpAbort, + { "ccpAbort", "lppe.ccpAbort", + FT_UINT32, BASE_DEC, VALS(lppe_T_ccpAbort_vals), 0, + NULL, HFILL }}, + { &hf_lppe_waIonoAbort, + { "waIonoAbort", "lppe.waIonoAbort", + FT_UINT32, BASE_DEC, VALS(lppe_T_waIonoAbort_vals), 0, + NULL, HFILL }}, + { &hf_lppe_otdoa_ReferenceCellInfo, + { "otdoa-ReferenceCellInfo", "lppe.otdoa_ReferenceCellInfo", + FT_NONE, BASE_NONE, NULL, 0, + "OMA_LPPe_OTDOA_ReferenceCellInfo", HFILL }}, + { &hf_lppe_otdoa_NeighbourCellInfo, + { "otdoa-NeighbourCellInfo", "lppe.otdoa_NeighbourCellInfo", + FT_UINT32, BASE_DEC, NULL, 0, + "OMA_LPPe_OTDOA_NeighbourCellInfoList", HFILL }}, + { &hf_lppe_otdoa_Error, + { "otdoa-Error", "lppe.otdoa_Error", + FT_UINT32, BASE_DEC, VALS(lppe_OMA_LPPe_OTDOA_Error_vals), 0, + "OMA_LPPe_OTDOA_Error", HFILL }}, + { &hf_lppe_referenceCellInfo, + { "referenceCellInfo", "lppe.referenceCellInfo", + FT_NONE, BASE_NONE, NULL, 0, + "OTDOA_ReferenceCellInfo", HFILL }}, + { &hf_lppe_positionCalculationInfoRef, + { "positionCalculationInfoRef", "lppe.positionCalculationInfoRef", + FT_NONE, BASE_NONE, NULL, 0, + "OMA_LPPe_OTDOA_PositionCalculationInfoRef", HFILL }}, + { &hf_lppe_systemFrameNumber, + { "systemFrameNumber", "lppe.systemFrameNumber", + FT_BYTES, BASE_NONE, NULL, 0, + "BIT_STRING_SIZE_10", HFILL }}, + { &hf_lppe_rtdReferenceStd, + { "rtdReferenceStd", "lppe.rtdReferenceStd", + FT_NONE, BASE_NONE, NULL, 0, + "OMA_LPPe_OTDOA_RTDquality", HFILL }}, + { &hf_lppe_cellLocation, + { "cellLocation", "lppe.cellLocation", + FT_NONE, BASE_NONE, NULL, 0, + NULL, HFILL }}, + { &hf_lppe_reference_point, + { "reference-point", "lppe.reference_point", + FT_NONE, BASE_NONE, NULL, 0, + "OMA_LPPe_ReferencePoint", HFILL }}, + { &hf_lppe_relative_location, + { "relative-location", "lppe.relative_location", + FT_NONE, BASE_NONE, NULL, 0, + "OMA_LPPe_RelativeLocation", HFILL }}, + { &hf_lppe_femtoCellInfo, + { "femtoCellInfo", "lppe.femtoCellInfo", + FT_NONE, BASE_NONE, NULL, 0, + NULL, HFILL }}, + { &hf_lppe_location_reliability, + { "location-reliability", "lppe.location_reliability", + FT_UINT32, BASE_DEC, NULL, 0, + "INTEGER_1_100", HFILL }}, + { &hf_lppe_OMA_LPPe_OTDOA_NeighbourCellInfoList_item, + { "OMA-LPPe-OTDOA-NeighbourFreqCellInfoList", "lppe.OMA_LPPe_OTDOA_NeighbourFreqCellInfoList", + FT_NONE, BASE_NONE, NULL, 0, + NULL, HFILL }}, + { &hf_lppe_neighbourCellInfoList_eNB, + { "neighbourCellInfoList-eNB", "lppe.neighbourCellInfoList_eNB", + FT_UINT32, BASE_DEC, NULL, 0, + "SEQUENCE_SIZE_1_maxLTEeNBs_OF_OMA_LPPe_OTDOA_NeighbourCellInfoElement_eNB", HFILL }}, + { &hf_lppe_neighbourCellInfoList_eNB_item, + { "OMA-LPPe-OTDOA-NeighbourCellInfoElement-eNB", "lppe.OMA_LPPe_OTDOA_NeighbourCellInfoElement_eNB", + FT_NONE, BASE_NONE, NULL, 0, + NULL, HFILL }}, + { &hf_lppe_neighbourCellInfoList_HeNB, + { "neighbourCellInfoList-HeNB", "lppe.neighbourCellInfoList_HeNB", + FT_UINT32, BASE_DEC, NULL, 0, + "SEQUENCE_SIZE_1_maxLTEHeNBs_OF_OMA_LPPe_OTDOA_NeighbourCellInfoElement_HeNB", HFILL }}, + { &hf_lppe_neighbourCellInfoList_HeNB_item, + { "OMA-LPPe-OTDOA-NeighbourCellInfoElement-HeNB", "lppe.OMA_LPPe_OTDOA_NeighbourCellInfoElement_HeNB", + FT_NONE, BASE_NONE, NULL, 0, + NULL, HFILL }}, + { &hf_lppe_relative_Location, + { "relative-Location", "lppe.relative_Location", + FT_NONE, BASE_NONE, NULL, 0, + "OMA_LPPe_RelativeLocation", HFILL }}, + { &hf_lppe_otdoa_eNB_CellDataList, + { "otdoa-eNB-CellDataList", "lppe.otdoa_eNB_CellDataList", + FT_UINT32, BASE_DEC, NULL, 0, + "SEQUENCE_SIZE_1_maxLTEMacroCells_OF_OMA_LPPe_OTDOA_CellData", HFILL }}, + { &hf_lppe_otdoa_eNB_CellDataList_item, + { "OMA-LPPe-OTDOA-CellData", "lppe.OMA_LPPe_OTDOA_CellData", + FT_NONE, BASE_NONE, NULL, 0, + NULL, HFILL }}, + { &hf_lppe_otdoa_HeNB_CellDataList, + { "otdoa-HeNB-CellDataList", "lppe.otdoa_HeNB_CellDataList", + FT_NONE, BASE_NONE, NULL, 0, + "OMA_LPPe_OTDOA_CellData", HFILL }}, + { &hf_lppe_otdoa_NeighbourCellInfoElement, + { "otdoa-NeighbourCellInfoElement", "lppe.otdoa_NeighbourCellInfoElement", + FT_NONE, BASE_NONE, NULL, 0, + NULL, HFILL }}, + { &hf_lppe_rtdInfo, + { "rtdInfo", "lppe.rtdInfo", + FT_NONE, BASE_NONE, NULL, 0, + NULL, HFILL }}, + { &hf_lppe_subframeOffset, + { "subframeOffset", "lppe.subframeOffset", + FT_UINT32, BASE_DEC, NULL, 0, + "INTEGER_0_10229", HFILL }}, + { &hf_lppe_fineRTD, + { "fineRTD", "lppe.fineRTD", + FT_UINT32, BASE_DEC, NULL, 0, + "INTEGER_0_99999", HFILL }}, + { &hf_lppe_fineRTDstd, + { "fineRTDstd", "lppe.fineRTDstd", + FT_NONE, BASE_NONE, NULL, 0, + "OMA_LPPe_OTDOA_RTDquality", HFILL }}, + { &hf_lppe_fineRTDdriftRate, + { "fineRTDdriftRate", "lppe.fineRTDdriftRate", + FT_INT32, BASE_DEC, NULL, 0, + "INTEGER_M100_100", HFILL }}, + { &hf_lppe_resolution, + { "resolution", "lppe.resolution", + FT_UINT32, BASE_DEC, VALS(lppe_T_resolution_vals), 0, + NULL, HFILL }}, + { &hf_lppe_quality, + { "quality", "lppe.quality", + FT_UINT32, BASE_DEC, NULL, 0, + "INTEGER_0_127", HFILL }}, + { &hf_lppe_lteCell, + { "lteCell", "lppe.lteCell", + FT_NONE, BASE_NONE, NULL, 0, + NULL, HFILL }}, + { &hf_lppe_physCellId, + { "physCellId", "lppe.physCellId", + FT_UINT32, BASE_DEC, NULL, 0, + "INTEGER_0_503", HFILL }}, + { &hf_lppe_eARFCN, + { "eARFCN", "lppe.eARFCN", + FT_UINT32, BASE_DEC, NULL, 0, + "ARFCN_ValueEUTRA", HFILL }}, + { &hf_lppe_ecgi, + { "ecgi", "lppe.ecgi", + FT_NONE, BASE_NONE, NULL, 0, + "CellGlobalIdEUTRA_AndUTRA", HFILL }}, + { &hf_lppe_requestedCells, + { "requestedCells", "lppe.requestedCells", + FT_BYTES, BASE_NONE, NULL, 0, + NULL, HFILL }}, + { &hf_lppe_otdoaLocationInformation, + { "otdoaLocationInformation", "lppe.otdoaLocationInformation", + FT_NONE, BASE_NONE, NULL, 0, + "OMA_LPPe_OTDOA_LocationInformation", HFILL }}, + { &hf_lppe_otdoaError, + { "otdoaError", "lppe.otdoaError", + FT_UINT32, BASE_DEC, VALS(lppe_OMA_LPPe_OTDOA_Error_vals), 0, + "OMA_LPPe_OTDOA_Error", HFILL }}, + { &hf_lppe_cellGlobalId, + { "cellGlobalId", "lppe.cellGlobalId", + FT_NONE, BASE_NONE, NULL, 0, + "CellGlobalIdEUTRA_AndUTRA", HFILL }}, + { &hf_lppe_assistanceAvailability, + { "assistanceAvailability", "lppe.assistanceAvailability", + FT_BOOLEAN, BASE_NONE, NULL, 0, + "BOOLEAN", HFILL }}, + { &hf_lppe_eNodeB_AD_sup, + { "eNodeB-AD-sup", "lppe.eNodeB_AD_sup", + FT_NONE, BASE_NONE, NULL, 0, + NULL, HFILL }}, + { &hf_lppe_home_eNodeB_AD_sup, + { "home-eNodeB-AD-sup", "lppe.home_eNodeB_AD_sup", + FT_NONE, BASE_NONE, NULL, 0, + NULL, HFILL }}, + { &hf_lppe_locationServerErrorCauses, + { "locationServerErrorCauses", "lppe.locationServerErrorCauses", + FT_NONE, BASE_NONE, NULL, 0, + "OMA_LPPe_OTDOA_LocationServerErrorCauses", HFILL }}, + { &hf_lppe_targetDeviceErrorCauses, + { "targetDeviceErrorCauses", "lppe.targetDeviceErrorCauses", + FT_NONE, BASE_NONE, NULL, 0, + "OMA_LPPe_OTDOA_TargetDeviceErrorCauses", HFILL }}, + { &hf_lppe_cause, + { "cause", "lppe.cause", + FT_UINT32, BASE_DEC, VALS(lppe_T_cause_vals), 0, + NULL, HFILL }}, + { &hf_lppe_cause_01, + { "cause", "lppe.cause", + FT_UINT32, BASE_DEC, VALS(lppe_T_cause_01_vals), 0, + "T_cause_01", HFILL }}, + { &hf_lppe_referenceBTS, + { "referenceBTS", "lppe.referenceBTS", + FT_NONE, BASE_NONE, NULL, 0, + "OMA_LPPe_EOTD_ReferenceBTSForAssistance", HFILL }}, + { &hf_lppe_msrAssistDataList, + { "msrAssistDataList", "lppe.msrAssistDataList", + FT_UINT32, BASE_DEC, NULL, 0, + "OMA_LPPe_EOTD_MsrAssistDataList", HFILL }}, + { &hf_lppe_systemInfoAssistDataList, + { "systemInfoAssistDataList", "lppe.systemInfoAssistDataList", + FT_UINT32, BASE_DEC, NULL, 0, + "OMA_LPPe_EOTD_SystemInfoAssistDataList", HFILL }}, + { &hf_lppe_eotdError, + { "eotdError", "lppe.eotdError", + FT_UINT32, BASE_DEC, VALS(lppe_OMA_LPPe_EOTD_Error_vals), 0, + "OMA_LPPe_EOTD_Error", HFILL }}, + { &hf_lppe_bsicAndCarrier, + { "bsicAndCarrier", "lppe.bsicAndCarrier", + FT_NONE, BASE_NONE, NULL, 0, + "OMA_LPPe_CellNonUniqueIDGERAN", HFILL }}, + { &hf_lppe_timeSlotScheme, + { "timeSlotScheme", "lppe.timeSlotScheme", + FT_UINT32, BASE_DEC, VALS(lppe_OMA_LPPe_EOTD_TimeSlotScheme_vals), 0, + "OMA_LPPe_EOTD_TimeSlotScheme", HFILL }}, + { &hf_lppe_btsPosition, + { "btsPosition", "lppe.btsPosition", + FT_UINT32, BASE_DEC, VALS(lppe_T_btsPosition_vals), 0, + NULL, HFILL }}, + { &hf_lppe_ellipsoidPoint, + { "ellipsoidPoint", "lppe.ellipsoidPoint", + FT_NONE, BASE_NONE, NULL, 0, + "Ellipsoid_Point", HFILL }}, + { &hf_lppe_ellipsoidPointWithAltitudeAndUncertaintyEllipsoid, + { "ellipsoidPointWithAltitudeAndUncertaintyEllipsoid", "lppe.ellipsoidPointWithAltitudeAndUncertaintyEllipsoid", + FT_NONE, BASE_NONE, NULL, 0, + NULL, HFILL }}, + { &hf_lppe_OMA_LPPe_EOTD_MsrAssistDataList_item, + { "OMA-LPPe-EOTD-MsrAssistBTS", "lppe.OMA_LPPe_EOTD_MsrAssistBTS", + FT_NONE, BASE_NONE, NULL, 0, + NULL, HFILL }}, + { &hf_lppe_multiFrameOffset, + { "multiFrameOffset", "lppe.multiFrameOffset", + FT_UINT32, BASE_DEC, NULL, 0, + "OMA_LPPe_EOTD_MultiFrameOffset", HFILL }}, + { &hf_lppe_roughRTD, + { "roughRTD", "lppe.roughRTD", + FT_UINT32, BASE_DEC, NULL, 0, + "OMA_LPPe_EOTD_RoughRTD", HFILL }}, + { &hf_lppe_expectedOTD, + { "expectedOTD", "lppe.expectedOTD", + FT_NONE, BASE_NONE, NULL, 0, + "OMA_LPPe_EOTD_ExpectedOTD", HFILL }}, + { &hf_lppe_calcAssistanceBTS, + { "calcAssistanceBTS", "lppe.calcAssistanceBTS", + FT_NONE, BASE_NONE, NULL, 0, + "OMA_LPPe_EOTD_CalcAssistanceBTS", HFILL }}, + { &hf_lppe_OMA_LPPe_EOTD_SystemInfoAssistDataList_item, + { "OMA-LPPe-EOTD-SystemInfoAssistBTS", "lppe.OMA_LPPe_EOTD_SystemInfoAssistBTS", + FT_UINT32, BASE_DEC, VALS(lppe_OMA_LPPe_EOTD_SystemInfoAssistBTS_vals), 0, + NULL, HFILL }}, + { &hf_lppe_notPresent, + { "notPresent", "lppe.notPresent", + FT_NONE, BASE_NONE, NULL, 0, + NULL, HFILL }}, + { &hf_lppe_present, + { "present", "lppe.present", + FT_NONE, BASE_NONE, NULL, 0, + "OMA_LPPe_EOTD_AssistBTSData", HFILL }}, + { &hf_lppe_fineRTD_01, + { "fineRTD", "lppe.fineRTD", + FT_UINT32, BASE_DEC, NULL, 0, + "OMA_LPPe_EOTD_FineRTD", HFILL }}, + { &hf_lppe_relativePos, + { "relativePos", "lppe.relativePos", + FT_NONE, BASE_NONE, NULL, 0, + "OMA_LPPe_EOTD_relativePos", HFILL }}, + { &hf_lppe_relativeNorth_01, + { "relativeNorth", "lppe.relativeNorth", + FT_INT32, BASE_DEC, NULL, 0, + "OMA_LPPe_EOTD_RelDistance", HFILL }}, + { &hf_lppe_relativeEast_01, + { "relativeEast", "lppe.relativeEast", + FT_INT32, BASE_DEC, NULL, 0, + "OMA_LPPe_EOTD_RelDistance", HFILL }}, + { &hf_lppe_relativeAlt, + { "relativeAlt", "lppe.relativeAlt", + FT_INT32, BASE_DEC, NULL, 0, + "OMA_LPPe_EOTD_RelativeAlt", HFILL }}, + { &hf_lppe_eotdAssistanceReq, + { "eotdAssistanceReq", "lppe.eotdAssistanceReq", + FT_BYTES, BASE_NONE, NULL, 0, + NULL, HFILL }}, + { &hf_lppe_eotdMsrElement, + { "eotdMsrElement", "lppe.eotdMsrElement", + FT_NONE, BASE_NONE, NULL, 0, + "OMA_LPPe_EOTD_MsrElement", HFILL }}, + { &hf_lppe_refFrameNumber, + { "refFrameNumber", "lppe.refFrameNumber", + FT_UINT32, BASE_DEC, NULL, 0, + "INTEGER_0_42431", HFILL }}, + { &hf_lppe_referenceTimeSlot, + { "referenceTimeSlot", "lppe.referenceTimeSlot", + FT_UINT32, BASE_DEC, NULL, 0, + "OMA_LPPe_EOTD_ModuloTimeSlot", HFILL }}, + { &hf_lppe_toaMeasurementsOfRef, + { "toaMeasurementsOfRef", "lppe.toaMeasurementsOfRef", + FT_NONE, BASE_NONE, NULL, 0, + "OMA_LPPe_EOTD_TOA_MeasurementsOfRef", HFILL }}, + { &hf_lppe_stdResolution, + { "stdResolution", "lppe.stdResolution", + FT_BYTES, BASE_NONE, NULL, 0, + "BIT_STRING_SIZE_2", HFILL }}, + { &hf_lppe_taCorrection, + { "taCorrection", "lppe.taCorrection", + FT_UINT32, BASE_DEC, NULL, 0, + "INTEGER_0_960", HFILL }}, + { &hf_lppe_otd_FirstSetMsrs, + { "otd-FirstSetMsrs", "lppe.otd_FirstSetMsrs", + FT_UINT32, BASE_DEC, NULL, 0, + "SEQUENCE_SIZE_1_15_OF_OMA_LPPe_EOTD_MeasurementWithID", HFILL }}, + { &hf_lppe_otd_FirstSetMsrs_item, + { "OMA-LPPe-EOTD-MeasurementWithID", "lppe.OMA_LPPe_EOTD_MeasurementWithID", + FT_NONE, BASE_NONE, NULL, 0, + NULL, HFILL }}, + { &hf_lppe_refQuality, + { "refQuality", "lppe.refQuality", + FT_BYTES, BASE_NONE, NULL, 0, + "BIT_STRING_SIZE_5", HFILL }}, + { &hf_lppe_numOfMeasurements, + { "numOfMeasurements", "lppe.numOfMeasurements", + FT_BYTES, BASE_NONE, NULL, 0, + "BIT_STRING_SIZE_3", HFILL }}, + { &hf_lppe_neighborIdentity, + { "neighborIdentity", "lppe.neighborIdentity", + FT_UINT32, BASE_DEC, VALS(lppe_OMA_LPPe_EOTD_NeighborIdentity_vals), 0, + "OMA_LPPe_EOTD_NeighborIdentity", HFILL }}, + { &hf_lppe_nborTimeSlot, + { "nborTimeSlot", "lppe.nborTimeSlot", + FT_UINT32, BASE_DEC, NULL, 0, + "OMA_LPPe_EOTD_ModuloTimeSlot", HFILL }}, + { &hf_lppe_eotdQuality, + { "eotdQuality", "lppe.eotdQuality", + FT_NONE, BASE_NONE, NULL, 0, + "OMA_LPPe_EOTD_EOTDQuality", HFILL }}, + { &hf_lppe_otdValue, + { "otdValue", "lppe.otdValue", + FT_UINT32, BASE_DEC, NULL, 0, + "OMA_LPPe_EOTD_OTDValue", HFILL }}, + { &hf_lppe_ci, + { "ci", "lppe.ci", + FT_UINT32, BASE_DEC, NULL, 0, + "OMA_LPPe_EOTD_CellID", HFILL }}, + { &hf_lppe_multiFrameCarrier, + { "multiFrameCarrier", "lppe.multiFrameCarrier", + FT_NONE, BASE_NONE, NULL, 0, + "OMA_LPPe_EOTD_MultiFrameCarrier", HFILL }}, + { &hf_lppe_requestIndex, + { "requestIndex", "lppe.requestIndex", + FT_UINT32, BASE_DEC, NULL, 0, + "OMA_LPPe_EOTD_RequestIndex", HFILL }}, + { &hf_lppe_systemInfoIndex, + { "systemInfoIndex", "lppe.systemInfoIndex", + FT_UINT32, BASE_DEC, NULL, 0, + "OMA_LPPe_EOTD_SystemInfoIndex", HFILL }}, + { &hf_lppe_ciAndLac, + { "ciAndLac", "lppe.ciAndLac", + FT_NONE, BASE_NONE, NULL, 0, + "OMA_LPPe_CellLocalIdGERAN", HFILL }}, + { &hf_lppe_nbrOfMeasurements, + { "nbrOfMeasurements", "lppe.nbrOfMeasurements", + FT_BYTES, BASE_NONE, NULL, 0, + "BIT_STRING_SIZE_3", HFILL }}, + { &hf_lppe_stdOfEOTD, + { "stdOfEOTD", "lppe.stdOfEOTD", + FT_BYTES, BASE_NONE, NULL, 0, + "BIT_STRING_SIZE_5", HFILL }}, + { &hf_lppe_bcchCarrier, + { "bcchCarrier", "lppe.bcchCarrier", + FT_UINT32, BASE_DEC, NULL, 0, + "OMA_LPPe_EOTD_BCCHCarrier", HFILL }}, + { &hf_lppe_eotdSupport, + { "eotdSupport", "lppe.eotdSupport", + FT_BYTES, BASE_NONE, NULL, 0, + NULL, HFILL }}, + { &hf_lppe_locationServerErrorCauses_01, + { "locationServerErrorCauses", "lppe.locationServerErrorCauses", + FT_NONE, BASE_NONE, NULL, 0, + "OMA_LPPe_EOTD_LocationServerErrorCauses", HFILL }}, + { &hf_lppe_targetDeviceErrorCauses_01, + { "targetDeviceErrorCauses", "lppe.targetDeviceErrorCauses", + FT_NONE, BASE_NONE, NULL, 0, + "OMA_LPPe_EOTD_TargetDeviceErrorCauses", HFILL }}, + { &hf_lppe_cause_02, + { "cause", "lppe.cause", + FT_UINT32, BASE_DEC, VALS(lppe_T_cause_02_vals), 0, + "T_cause_02", HFILL }}, + { &hf_lppe_cause_03, + { "cause", "lppe.cause", + FT_UINT32, BASE_DEC, VALS(lppe_T_cause_03_vals), 0, + "T_cause_03", HFILL }}, + { &hf_lppe_expectedOTD_01, + { "expectedOTD", "lppe.expectedOTD", + FT_UINT32, BASE_DEC, NULL, 0, + "INTEGER_0_1250", HFILL }}, + { &hf_lppe_expOTDUncertainty, + { "expOTDUncertainty", "lppe.expOTDUncertainty", + FT_UINT32, BASE_DEC, NULL, 0, + "INTEGER_0_7", HFILL }}, + { &hf_lppe_referenceCellInfo_01, + { "referenceCellInfo", "lppe.referenceCellInfo", + FT_NONE, BASE_NONE, NULL, 0, + "OMA_LPPe_OTDOA_UTRA_ReferenceCellInfo", HFILL }}, + { &hf_lppe_neigborCellList, + { "neigborCellList", "lppe.neigborCellList", + FT_UINT32, BASE_DEC, NULL, 0, + "OMA_LPPe_OTDOA_UTRA_NeighborCellList", HFILL }}, + { &hf_lppe_otdoaUtraError, + { "otdoaUtraError", "lppe.otdoaUtraError", + FT_UINT32, BASE_DEC, VALS(lppe_OMA_LPPe_OTDOA_UTRA_Error_vals), 0, + "OMA_LPPe_OTDOA_UTRA_Error", HFILL }}, + { &hf_lppe_sfn, + { "sfn", "lppe.sfn", + FT_UINT32, BASE_DEC, NULL, 0, + "INTEGER_0_4095", HFILL }}, + { &hf_lppe_modeSpecificInfo, + { "modeSpecificInfo", "lppe.modeSpecificInfo", + FT_UINT32, BASE_DEC, VALS(lppe_T_modeSpecificInfo_vals), 0, + NULL, HFILL }}, + { &hf_lppe_fdd, + { "fdd", "lppe.fdd", + FT_NONE, BASE_NONE, NULL, 0, + NULL, HFILL }}, + { &hf_lppe_primaryCPICH_info, + { "primaryCPICH-info", "lppe.primaryCPICH_info", + FT_NONE, BASE_NONE, NULL, 0, + "OMA_LPPe_OTDOA_UTRA_PrimaryCPICH_Info", HFILL }}, + { &hf_lppe_tdd, + { "tdd", "lppe.tdd", + FT_NONE, BASE_NONE, NULL, 0, + NULL, HFILL }}, + { &hf_lppe_cellAndChannelIdentity, + { "cellAndChannelIdentity", "lppe.cellAndChannelIdentity", + FT_NONE, BASE_NONE, NULL, 0, + "OMA_LPPe_OTDOA_UTRA_CellAndChannelIdentity", HFILL }}, + { &hf_lppe_frequencyInfo, + { "frequencyInfo", "lppe.frequencyInfo", + FT_NONE, BASE_NONE, NULL, 0, + "OMA_LPPe_UTRA_FrequencyInfo", HFILL }}, + { &hf_lppe_refPosAssist, + { "refPosAssist", "lppe.refPosAssist", + FT_NONE, BASE_NONE, NULL, 0, + "OMA_LPPe_OTDOA_UTRA_RefPosAssist", HFILL }}, + { &hf_lppe_ipdl_parameters, + { "ipdl-parameters", "lppe.ipdl_parameters", + FT_NONE, BASE_NONE, NULL, 0, + "OMA_LPPe_OTDOA_UTRA_IPDL_Parameters", HFILL }}, + { &hf_lppe_cellPosition, + { "cellPosition", "lppe.cellPosition", + FT_UINT32, BASE_DEC, VALS(lppe_T_cellPosition_vals), 0, + NULL, HFILL }}, + { &hf_lppe_ellipsoidPointWithAltitude, + { "ellipsoidPointWithAltitude", "lppe.ellipsoidPointWithAltitude", + FT_NONE, BASE_NONE, NULL, 0, + NULL, HFILL }}, + { &hf_lppe_roundTripTime, + { "roundTripTime", "lppe.roundTripTime", + FT_UINT32, BASE_DEC, NULL, 0, + "INTEGER_0_327", HFILL }}, + { &hf_lppe_roundTripTimeExtension, + { "roundTripTimeExtension", "lppe.roundTripTimeExtension", + FT_UINT32, BASE_DEC, NULL, 0, + "INTEGER_0_70274", HFILL }}, + { &hf_lppe_OMA_LPPe_OTDOA_UTRA_NeighborCellList_item, + { "OMA-LPPe-OTDOA-UTRA-NeighborCellInfo", "lppe.OMA_LPPe_OTDOA_UTRA_NeighborCellInfo", + FT_NONE, BASE_NONE, NULL, 0, + NULL, HFILL }}, + { &hf_lppe_modeSpecificInfo_01, + { "modeSpecificInfo", "lppe.modeSpecificInfo", + FT_UINT32, BASE_DEC, VALS(lppe_T_modeSpecificInfo_01_vals), 0, + "T_modeSpecificInfo_01", HFILL }}, + { &hf_lppe_fdd_01, + { "fdd", "lppe.fdd", + FT_NONE, BASE_NONE, NULL, 0, + "T_fdd_01", HFILL }}, + { &hf_lppe_tdd_01, + { "tdd", "lppe.tdd", + FT_NONE, BASE_NONE, NULL, 0, + "T_tdd_01", HFILL }}, + { &hf_lppe_sfn_SFN_relTimeDifference, + { "sfn-SFN-relTimeDifference", "lppe.sfn_SFN_relTimeDifference", + FT_NONE, BASE_NONE, NULL, 0, + "OMA_LPPe_OTDOA_UTRA_SFN_SFN_RelTimeDifference1", HFILL }}, + { &hf_lppe_sfn_offsetValidity, + { "sfn-offsetValidity", "lppe.sfn_offsetValidity", + FT_UINT32, BASE_DEC, VALS(lppe_OMA_LPPe_OTDOA_UTRA_SFN_OffsetValidity_vals), 0, + "OMA_LPPe_OTDOA_UTRA_SFN_OffsetValidity", HFILL }}, + { &hf_lppe_sfn_SFN_drift, + { "sfn-SFN-drift", "lppe.sfn_SFN_drift", + FT_UINT32, BASE_DEC, VALS(lppe_OMA_LPPe_OTDOA_UTRA_SFN_SFN_Drift_vals), 0, + "OMA_LPPe_OTDOA_UTRA_SFN_SFN_Drift", HFILL }}, + { &hf_lppe_searchWindowSize, + { "searchWindowSize", "lppe.searchWindowSize", + FT_UINT32, BASE_DEC, VALS(lppe_OMA_LPPe_OTDOA_UTRA_SearchWindowSize_vals), 0, + "OMA_LPPe_OTDOA_UTRA_SearchWindowSize", HFILL }}, + { &hf_lppe_positioningAssistance, + { "positioningAssistance", "lppe.positioningAssistance", + FT_NONE, BASE_NONE, NULL, 0, + "OMA_LPPe_OTDOA_UTRA_PositioningAssistance", HFILL }}, + { &hf_lppe_sfn_offset, + { "sfn-offset", "lppe.sfn_offset", + FT_UINT32, BASE_DEC, NULL, 0, + "INTEGER_0_4095", HFILL }}, + { &hf_lppe_sfn_sfn_relTimeDifference, + { "sfn-sfn-relTimeDifference", "lppe.sfn_sfn_relTimeDifference", + FT_UINT32, BASE_DEC, NULL, 0, + "INTEGER_0_38399", HFILL }}, + { &hf_lppe_relativeNorth_02, + { "relativeNorth", "lppe.relativeNorth", + FT_INT32, BASE_DEC, NULL, 0, + "INTEGER_M20000_20000", HFILL }}, + { &hf_lppe_relativeEast_02, + { "relativeEast", "lppe.relativeEast", + FT_INT32, BASE_DEC, NULL, 0, + "INTEGER_M20000_20000", HFILL }}, + { &hf_lppe_relativeAltitude_01, + { "relativeAltitude", "lppe.relativeAltitude", + FT_INT32, BASE_DEC, NULL, 0, + "INTEGER_M4000_4000", HFILL }}, + { &hf_lppe_fineSFN_SFN, + { "fineSFN-SFN", "lppe.fineSFN_SFN", + FT_UINT32, BASE_DEC, NULL, 0, + "OMA_LPPe_OTDOA_UTRA_fineSFN_SFN", HFILL }}, + { &hf_lppe_modeSpecificInfo_02, + { "modeSpecificInfo", "lppe.modeSpecificInfo", + FT_UINT32, BASE_DEC, VALS(lppe_T_modeSpecificInfo_02_vals), 0, + "T_modeSpecificInfo_02", HFILL }}, + { &hf_lppe_fdd_02, + { "fdd", "lppe.fdd", + FT_NONE, BASE_NONE, NULL, 0, + "T_fdd_02", HFILL }}, + { &hf_lppe_ip_spacing, + { "ip-spacing", "lppe.ip_spacing", + FT_UINT32, BASE_DEC, VALS(lppe_OMA_LPPe_OTDOA_UTRA_IP_Spacing_vals), 0, + "OMA_LPPe_OTDOA_UTRA_IP_Spacing", HFILL }}, + { &hf_lppe_ip_length, + { "ip-length", "lppe.ip_length", + FT_UINT32, BASE_DEC, VALS(lppe_OMA_LPPe_OTDOA_UTRA_IP_Length_vals), 0, + "OMA_LPPe_OTDOA_UTRA_IP_Length", HFILL }}, + { &hf_lppe_ip_Offset, + { "ip-Offset", "lppe.ip_Offset", + FT_UINT32, BASE_DEC, NULL, 0, + "INTEGER_0_9", HFILL }}, + { &hf_lppe_seed, + { "seed", "lppe.seed", + FT_UINT32, BASE_DEC, NULL, 0, + "INTEGER_0_63", HFILL }}, + { &hf_lppe_burstModeParameters, + { "burstModeParameters", "lppe.burstModeParameters", + FT_NONE, BASE_NONE, NULL, 0, + "OMA_LPPe_OTDOA_UTRA_BurstModeParameters", HFILL }}, + { &hf_lppe_tdd_02, + { "tdd", "lppe.tdd", + FT_NONE, BASE_NONE, NULL, 0, + "T_tdd_02", HFILL }}, + { &hf_lppe_ip_spacing_tdd, + { "ip-spacing-tdd", "lppe.ip_spacing_tdd", + FT_UINT32, BASE_DEC, VALS(lppe_OMA_LPPe_OTDOA_UTRA_IP_Spacing_TDD_vals), 0, + "OMA_LPPe_OTDOA_UTRA_IP_Spacing_TDD", HFILL }}, + { &hf_lppe_ip_slot, + { "ip-slot", "lppe.ip_slot", + FT_UINT32, BASE_DEC, NULL, 0, + "INTEGER_0_14", HFILL }}, + { &hf_lppe_ip_start, + { "ip-start", "lppe.ip_start", + FT_UINT32, BASE_DEC, NULL, 0, + "INTEGER_0_4095", HFILL }}, + { &hf_lppe_ip_PCCPCH, + { "ip-PCCPCH", "lppe.ip_PCCPCH", + FT_BOOLEAN, BASE_NONE, NULL, 0, + "OMA_LPPe_OTDOA_UTRA_IP_PCCPCH", HFILL }}, + { &hf_lppe_burstStart, + { "burstStart", "lppe.burstStart", + FT_UINT32, BASE_DEC, NULL, 0, + "INTEGER_0_15", HFILL }}, + { &hf_lppe_burstLength, + { "burstLength", "lppe.burstLength", + FT_UINT32, BASE_DEC, NULL, 0, + "INTEGER_10_25", HFILL }}, + { &hf_lppe_burstFreq, + { "burstFreq", "lppe.burstFreq", + FT_UINT32, BASE_DEC, NULL, 0, + "INTEGER_1_16", HFILL }}, + { &hf_lppe_otdoaUtraAssistanceReq, + { "otdoaUtraAssistanceReq", "lppe.otdoaUtraAssistanceReq", + FT_BYTES, BASE_NONE, NULL, 0, + NULL, HFILL }}, + { &hf_lppe_otdoaUtraMeasurement, + { "otdoaUtraMeasurement", "lppe.otdoaUtraMeasurement", + FT_NONE, BASE_NONE, NULL, 0, + "OMA_LPPe_OTDOA_UTRA_Measurement", HFILL }}, + { &hf_lppe_timeStampData, + { "timeStampData", "lppe.timeStampData", + FT_NONE, BASE_NONE, NULL, 0, + "OMA_LPPe_OTDOA_UTRA_TimeStampData", HFILL }}, + { &hf_lppe_modeSpecificInfoMeas, + { "modeSpecificInfoMeas", "lppe.modeSpecificInfoMeas", + FT_UINT32, BASE_DEC, VALS(lppe_T_modeSpecificInfoMeas_vals), 0, + NULL, HFILL }}, + { &hf_lppe_fdd_03, + { "fdd", "lppe.fdd", + FT_NONE, BASE_NONE, NULL, 0, + "T_fdd_03", HFILL }}, + { &hf_lppe_referenceCellIdentity, + { "referenceCellIdentity", "lppe.referenceCellIdentity", + FT_NONE, BASE_NONE, NULL, 0, + "OMA_LPPe_OTDOA_UTRA_PrimaryCPICH_Info", HFILL }}, + { &hf_lppe_ue_RX_TX_TimeDifferenceType2Info, + { "ue-RX-TX-TimeDifferenceType2Info", "lppe.ue_RX_TX_TimeDifferenceType2Info", + FT_NONE, BASE_NONE, NULL, 0, + "OMA_LPPe_OTDOA_UTRA_UE_RX_TX_TimeDifferenceType2Info", HFILL }}, + { &hf_lppe_tdd_03, + { "tdd", "lppe.tdd", + FT_NONE, BASE_NONE, NULL, 0, + "T_tdd_03", HFILL }}, + { &hf_lppe_neighborList, + { "neighborList", "lppe.neighborList", + FT_UINT32, BASE_DEC, NULL, 0, + "OMA_LPPe_OTDOA_UTRA_NeighborList", HFILL }}, + { &hf_lppe_ue_RX_TX_timeDifferenceType2, + { "ue-RX-TX-timeDifferenceType2", "lppe.ue_RX_TX_timeDifferenceType2", + FT_UINT32, BASE_DEC, NULL, 0, + "OMA_LPPe_OTDOA_UTRA_TimeDifferenceType2", HFILL }}, + { &hf_lppe_neighborQuality, + { "neighborQuality", "lppe.neighborQuality", + FT_NONE, BASE_NONE, NULL, 0, + "OMA_LPPe_OTDOA_UTRA_NeighborQuality", HFILL }}, + { &hf_lppe_OMA_LPPe_OTDOA_UTRA_NeighborList_item, + { "OMA-LPPe-OTDOA-UTRA-Neighbor", "lppe.OMA_LPPe_OTDOA_UTRA_Neighbor", + FT_NONE, BASE_NONE, NULL, 0, + NULL, HFILL }}, + { &hf_lppe_modeSpecificInfo_03, + { "modeSpecificInfo", "lppe.modeSpecificInfo", + FT_UINT32, BASE_DEC, VALS(lppe_T_modeSpecificInfo_03_vals), 0, + "T_modeSpecificInfo_03", HFILL }}, + { &hf_lppe_fdd_04, + { "fdd", "lppe.fdd", + FT_NONE, BASE_NONE, NULL, 0, + "T_fdd_04", HFILL }}, + { &hf_lppe_neighborIdentity_01, + { "neighborIdentity", "lppe.neighborIdentity", + FT_NONE, BASE_NONE, NULL, 0, + "OMA_LPPe_OTDOA_UTRA_PrimaryCPICH_Info", HFILL }}, + { &hf_lppe_ue_RX_TX_timeDifferenceType2Info, + { "ue-RX-TX-timeDifferenceType2Info", "lppe.ue_RX_TX_timeDifferenceType2Info", + FT_NONE, BASE_NONE, NULL, 0, + "OMA_LPPe_OTDOA_UTRA_UE_RX_TX_TimeDifferenceType2Info", HFILL }}, + { &hf_lppe_tdd_04, + { "tdd", "lppe.tdd", + FT_NONE, BASE_NONE, NULL, 0, + "T_tdd_04", HFILL }}, + { &hf_lppe_uarfcn, + { "uarfcn", "lppe.uarfcn", + FT_UINT32, BASE_DEC, NULL, 0, + "ARFCN_ValueUTRA", HFILL }}, + { &hf_lppe_sfn_sfn_ObsTimeDifference2, + { "sfn-sfn-ObsTimeDifference2", "lppe.sfn_sfn_ObsTimeDifference2", + FT_UINT32, BASE_DEC, NULL, 0, + "OMA_LPPe_OTDOA_UTRA_SFN_SFN_ObsTimeDifference2", HFILL }}, + { &hf_lppe_quality_01, + { "quality", "lppe.quality", + FT_NONE, BASE_NONE, NULL, 0, + "OMA_LPPe_OTDOA_UTRA_Quality", HFILL }}, + { &hf_lppe_numberOfOTDOA_Measurements, + { "numberOfOTDOA-Measurements", "lppe.numberOfOTDOA_Measurements", + FT_BYTES, BASE_NONE, NULL, 0, + "BIT_STRING_SIZE_3", HFILL }}, + { &hf_lppe_stdOfOTDOA_Measurements, + { "stdOfOTDOA-Measurements", "lppe.stdOfOTDOA_Measurements", + FT_BYTES, BASE_NONE, NULL, 0, + "BIT_STRING_SIZE_5", HFILL }}, + { &hf_lppe_utraCellGlobalID, + { "utraCellGlobalID", "lppe.utraCellGlobalID", + FT_NONE, BASE_NONE, NULL, 0, + "CellGlobalIdEUTRA_AndUTRA", HFILL }}, + { &hf_lppe_nonUniqueCellID, + { "nonUniqueCellID", "lppe.nonUniqueCellID", + FT_UINT32, BASE_DEC, VALS(lppe_T_nonUniqueCellID_vals), 0, + NULL, HFILL }}, + { &hf_lppe_primaryScramblingCode, + { "primaryScramblingCode", "lppe.primaryScramblingCode", + FT_UINT32, BASE_DEC, NULL, 0, + "OMA_LPPe_OTDOA_UTRA_PrimaryScramblingCode", HFILL }}, + { &hf_lppe_cellParametersId, + { "cellParametersId", "lppe.cellParametersId", + FT_UINT32, BASE_DEC, NULL, 0, + "OMA_LPPe_OTDOA_UTRA_CellParametersID", HFILL }}, + { &hf_lppe_ueBasedSupported, + { "ueBasedSupported", "lppe.ueBasedSupported", + FT_BOOLEAN, BASE_NONE, NULL, 0, + "BOOLEAN", HFILL }}, + { &hf_lppe_ueAssistedSupported, + { "ueAssistedSupported", "lppe.ueAssistedSupported", + FT_BOOLEAN, BASE_NONE, NULL, 0, + "BOOLEAN", HFILL }}, + { &hf_lppe_ipdlSupported, + { "ipdlSupported", "lppe.ipdlSupported", + FT_BOOLEAN, BASE_NONE, NULL, 0, + "BOOLEAN", HFILL }}, + { &hf_lppe_locationServerErrorCauses_02, + { "locationServerErrorCauses", "lppe.locationServerErrorCauses", + FT_NONE, BASE_NONE, NULL, 0, + "OMA_LPPe_OTDOA_UTRA_LocationServerErrorCauses", HFILL }}, + { &hf_lppe_targetDeviceErrorCauses_02, + { "targetDeviceErrorCauses", "lppe.targetDeviceErrorCauses", + FT_NONE, BASE_NONE, NULL, 0, + "OMA_LPPe_OTDOA_UTRA_TargetDeviceErrorCauses", HFILL }}, + { &hf_lppe_cause_04, + { "cause", "lppe.cause", + FT_UINT32, BASE_DEC, VALS(lppe_T_cause_04_vals), 0, + "T_cause_04", HFILL }}, + { &hf_lppe_cause_05, + { "cause", "lppe.cause", + FT_UINT32, BASE_DEC, VALS(lppe_T_cause_05_vals), 0, + "T_cause_05", HFILL }}, + { &hf_lppe_burstType, + { "burstType", "lppe.burstType", + FT_UINT32, BASE_DEC, VALS(lppe_OMA_LPPe_OTDOA_UTRA_BurstType_vals), 0, + "OMA_LPPe_OTDOA_UTRA_BurstType", HFILL }}, + { &hf_lppe_midambleShift, + { "midambleShift", "lppe.midambleShift", + FT_UINT32, BASE_DEC, NULL, 0, + "OMA_LPPe_OTDOA_UTRA_MidambleShiftLong", HFILL }}, + { &hf_lppe_timeslot, + { "timeslot", "lppe.timeslot", + FT_UINT32, BASE_DEC, NULL, 0, + "OMA_LPPe_OTDOA_UTRA_TimeSlotNumber", HFILL }}, + { &hf_lppe_cellParametersID, + { "cellParametersID", "lppe.cellParametersID", + FT_UINT32, BASE_DEC, NULL, 0, + "OMA_LPPe_OTDOA_UTRA_CellParametersID", HFILL }}, + { &hf_lppe_ecid_LTE_NetworkData, + { "ecid-LTE-NetworkData", "lppe.ecid_LTE_NetworkData", + FT_UINT32, BASE_DEC, NULL, 0, + "SEQUENCE_SIZE_1_maxLTENetworks_OF_OMA_LPPe_ECID_LTE_NetworkData", HFILL }}, + { &hf_lppe_ecid_LTE_NetworkData_item, + { "OMA-LPPe-ECID-LTE-NetworkData", "lppe.OMA_LPPe_ECID_LTE_NetworkData", + FT_NONE, BASE_NONE, NULL, 0, + NULL, HFILL }}, + { &hf_lppe_ecid_LTE_Error, + { "ecid-LTE-Error", "lppe.ecid_LTE_Error", + FT_UINT32, BASE_DEC, VALS(lppe_OMA_LPPe_ECID_LTE_Error_vals), 0, + "OMA_LPPe_ECID_LTE_Error", HFILL }}, + { &hf_lppe_plmn_Identity, + { "plmn-Identity", "lppe.plmn_Identity", + FT_NONE, BASE_NONE, NULL, 0, + NULL, HFILL }}, + { &hf_lppe_mcc, + { "mcc", "lppe.mcc", + FT_UINT32, BASE_DEC, NULL, 0, + NULL, HFILL }}, + { &hf_lppe_mcc_item, + { "mcc item", "lppe.mcc_item", + FT_UINT32, BASE_DEC, NULL, 0, + "INTEGER_0_9", HFILL }}, + { &hf_lppe_mnc, + { "mnc", "lppe.mnc", + FT_UINT32, BASE_DEC, NULL, 0, + NULL, HFILL }}, + { &hf_lppe_mnc_item, + { "mnc item", "lppe.mnc_item", + FT_UINT32, BASE_DEC, NULL, 0, + "INTEGER_0_9", HFILL }}, + { &hf_lppe_multiple_PLMNs, + { "multiple-PLMNs", "lppe.multiple_PLMNs", + FT_BOOLEAN, BASE_NONE, NULL, 0, + "BOOLEAN", HFILL }}, + { &hf_lppe_reference_location, + { "reference-location", "lppe.reference_location", + FT_NONE, BASE_NONE, NULL, 0, + "OMA_LPPe_ReferencePoint", HFILL }}, + { &hf_lppe_ecid_lte_eNodeB_list, + { "ecid-lte-eNodeB-list", "lppe.ecid_lte_eNodeB_list", + FT_UINT32, BASE_DEC, NULL, 0, + "SEQUENCE_SIZE_1_maxLTEeNBs_OF_OMA_LPPe_ECID_LTE_eNodeBData", HFILL }}, + { &hf_lppe_ecid_lte_eNodeB_list_item, + { "OMA-LPPe-ECID-LTE-eNodeBData", "lppe.OMA_LPPe_ECID_LTE_eNodeBData", + FT_NONE, BASE_NONE, NULL, 0, + NULL, HFILL }}, + { &hf_lppe_ecid_lte_HeNB_list, + { "ecid-lte-HeNB-list", "lppe.ecid_lte_HeNB_list", + FT_UINT32, BASE_DEC, NULL, 0, + "SEQUENCE_SIZE_1_maxLTEHeNBs_OF_OMA_LPPe_ECID_LTE_HeNBData", HFILL }}, + { &hf_lppe_ecid_lte_HeNB_list_item, + { "OMA-LPPe-ECID-LTE-HeNBData", "lppe.OMA_LPPe_ECID_LTE_HeNBData", + FT_NONE, BASE_NONE, NULL, 0, + NULL, HFILL }}, + { &hf_lppe_ecid_lte_eNodeB_CellData, + { "ecid-lte-eNodeB-CellData", "lppe.ecid_lte_eNodeB_CellData", + FT_UINT32, BASE_DEC, NULL, 0, + "SEQUENCE_SIZE_1_maxLTEMacroCells_OF_OMA_LPPe_ECID_LTE_CellData", HFILL }}, + { &hf_lppe_ecid_lte_eNodeB_CellData_item, + { "OMA-LPPe-ECID-LTE-CellData", "lppe.OMA_LPPe_ECID_LTE_CellData", + FT_NONE, BASE_NONE, NULL, 0, + NULL, HFILL }}, + { &hf_lppe_coverageArea, + { "coverageArea", "lppe.coverageArea", + FT_NONE, BASE_NONE, NULL, 0, + "OMA_LPPe_WLANFemtoCoverageArea", HFILL }}, + { &hf_lppe_ecid_lte_HeNB_CellData, + { "ecid-lte-HeNB-CellData", "lppe.ecid_lte_HeNB_CellData", + FT_NONE, BASE_NONE, NULL, 0, + "OMA_LPPe_ECID_LTE_CellData", HFILL }}, + { &hf_lppe_cellIdentity_01, + { "cellIdentity", "lppe.cellIdentity", + FT_BYTES, BASE_NONE, NULL, 0, + "BIT_STRING_SIZE_28", HFILL }}, + { &hf_lppe_dl_CarrierFreq, + { "dl-CarrierFreq", "lppe.dl_CarrierFreq", + FT_UINT32, BASE_DEC, NULL, 0, + "ARFCN_ValueEUTRA", HFILL }}, + { &hf_lppe_rs_transmit_power, + { "rs-transmit-power", "lppe.rs_transmit_power", + FT_INT32, BASE_DEC, NULL, 0, + "INTEGER_M127_128", HFILL }}, + { &hf_lppe_antennaPortConfig, + { "antennaPortConfig", "lppe.antennaPortConfig", + FT_UINT32, BASE_DEC, VALS(lppe_T_antennaPortConfig_vals), 0, + NULL, HFILL }}, + { &hf_lppe_antenna_gain, + { "antenna-gain", "lppe.antenna_gain", + FT_INT32, BASE_DEC, NULL, 0, + "INTEGER_M127_128", HFILL }}, + { &hf_lppe_beam_width, + { "beam-width", "lppe.beam_width", + FT_UINT32, BASE_DEC, NULL, 0, + "INTEGER_1_360", HFILL }}, + { &hf_lppe_transmit_direction, + { "transmit-direction", "lppe.transmit_direction", + FT_UINT32, BASE_DEC, NULL, 0, + "INTEGER_0_360", HFILL }}, + { &hf_lppe_frequency_accuracy, + { "frequency-accuracy", "lppe.frequency_accuracy", + FT_UINT32, BASE_DEC, NULL, 0, + "INTEGER_0_100", HFILL }}, + { &hf_lppe_eNBrequestedAD, + { "eNBrequestedAD", "lppe.eNBrequestedAD", + FT_BYTES, BASE_NONE, NULL, 0, + NULL, HFILL }}, + { &hf_lppe_heNBrequestedAD, + { "heNBrequestedAD", "lppe.heNBrequestedAD", + FT_BYTES, BASE_NONE, NULL, 0, + NULL, HFILL }}, + { &hf_lppe_ecid_LTE_CombinedLocationInformation, + { "ecid-LTE-CombinedLocationInformation", "lppe.ecid_LTE_CombinedLocationInformation", + FT_UINT32, BASE_DEC, NULL, 0, + "SEQUENCE_SIZE_1_maxLTEECIDSize_OF_OMA_LPPe_ECID_LTE_LocationInformationList", HFILL }}, + { &hf_lppe_ecid_LTE_CombinedLocationInformation_item, + { "OMA-LPPe-ECID-LTE-LocationInformationList", "lppe.OMA_LPPe_ECID_LTE_LocationInformationList", + FT_NONE, BASE_NONE, NULL, 0, + NULL, HFILL }}, + { &hf_lppe_ecid_LTE_LocationInformation, + { "ecid-LTE-LocationInformation", "lppe.ecid_LTE_LocationInformation", + FT_NONE, BASE_NONE, NULL, 0, + "OMA_LPPe_ECID_LTE_LocationInformation", HFILL }}, + { &hf_lppe_relativeTimeStamp, + { "relativeTimeStamp", "lppe.relativeTimeStamp", + FT_UINT32, BASE_DEC, NULL, 0, + "INTEGER_0_65535", HFILL }}, + { &hf_lppe_servingFlag, + { "servingFlag", "lppe.servingFlag", + FT_BOOLEAN, BASE_NONE, NULL, 0, + "BOOLEAN", HFILL }}, + { &hf_lppe_lpp_ECID_SignalMeasurementInformation, + { "lpp-ECID-SignalMeasurementInformation", "lppe.lpp_ECID_SignalMeasurementInformation", + FT_NONE, BASE_NONE, NULL, 0, + "ECID_SignalMeasurementInformation", HFILL }}, + { &hf_lppe_requestedMeasurements, + { "requestedMeasurements", "lppe.requestedMeasurements", + FT_BYTES, BASE_NONE, NULL, 0, + NULL, HFILL }}, + { &hf_lppe_ecid_lte_MeasSupported, + { "ecid-lte-MeasSupported", "lppe.ecid_lte_MeasSupported", + FT_BYTES, BASE_NONE, NULL, 0, + NULL, HFILL }}, + { &hf_lppe_ecid_lte_eNodeB_ADSupported, + { "ecid-lte-eNodeB-ADSupported", "lppe.ecid_lte_eNodeB_ADSupported", + FT_BYTES, BASE_NONE, NULL, 0, + NULL, HFILL }}, + { &hf_lppe_ecid_utra_HeNB_ADSupported, + { "ecid-utra-HeNB-ADSupported", "lppe.ecid_utra_HeNB_ADSupported", + FT_BYTES, BASE_NONE, NULL, 0, + NULL, HFILL }}, + { &hf_lppe_locationServerErrorCauses_03, + { "locationServerErrorCauses", "lppe.locationServerErrorCauses", + FT_NONE, BASE_NONE, NULL, 0, + "OMA_LPPe_ECID_LTE_LocationServerErrorCauses", HFILL }}, + { &hf_lppe_targetDeviceErrorCauses_03, + { "targetDeviceErrorCauses", "lppe.targetDeviceErrorCauses", + FT_NONE, BASE_NONE, NULL, 0, + "OMA_LPPe_ECID_LTE_TargetDeviceErrorCauses", HFILL }}, + { &hf_lppe_cause_06, + { "cause", "lppe.cause", + FT_UINT32, BASE_DEC, VALS(lppe_T_cause_06_vals), 0, + "T_cause_06", HFILL }}, + { &hf_lppe_eNodeBMandatoryDataUnavailable, + { "eNodeBMandatoryDataUnavailable", "lppe.eNodeBMandatoryDataUnavailable", + FT_NONE, BASE_NONE, NULL, 0, + NULL, HFILL }}, + { &hf_lppe_eNodeBLocationsUnavailable, + { "eNodeBLocationsUnavailable", "lppe.eNodeBLocationsUnavailable", + FT_NONE, BASE_NONE, NULL, 0, + NULL, HFILL }}, + { &hf_lppe_eNodeBcellTransmitPowerUnavailable, + { "eNodeBcellTransmitPowerUnavailable", "lppe.eNodeBcellTransmitPowerUnavailable", + FT_NONE, BASE_NONE, NULL, 0, + NULL, HFILL }}, + { &hf_lppe_eNodeBcellAntennaPortConfigUnavailable, + { "eNodeBcellAntennaPortConfigUnavailable", "lppe.eNodeBcellAntennaPortConfigUnavailable", + FT_NONE, BASE_NONE, NULL, 0, + NULL, HFILL }}, + { &hf_lppe_eNodeBcallAntennaGainUnavailable, + { "eNodeBcallAntennaGainUnavailable", "lppe.eNodeBcallAntennaGainUnavailable", + FT_NONE, BASE_NONE, NULL, 0, + NULL, HFILL }}, + { &hf_lppe_eNodeBcellBeamWidthUnavailable, + { "eNodeBcellBeamWidthUnavailable", "lppe.eNodeBcellBeamWidthUnavailable", + FT_NONE, BASE_NONE, NULL, 0, + NULL, HFILL }}, + { &hf_lppe_eNodeBcellTransmitDirectionUnavailable, + { "eNodeBcellTransmitDirectionUnavailable", "lppe.eNodeBcellTransmitDirectionUnavailable", + FT_NONE, BASE_NONE, NULL, 0, + NULL, HFILL }}, + { &hf_lppe_eNodeBcellFrequencyAccuracyUnavailable, + { "eNodeBcellFrequencyAccuracyUnavailable", "lppe.eNodeBcellFrequencyAccuracyUnavailable", + FT_NONE, BASE_NONE, NULL, 0, + NULL, HFILL }}, + { &hf_lppe_eNodeBnonservingADUnavailable, + { "eNodeBnonservingADUnavailable", "lppe.eNodeBnonservingADUnavailable", + FT_NONE, BASE_NONE, NULL, 0, + NULL, HFILL }}, + { &hf_lppe_heNBMandatoryDataUnavailable, + { "heNBMandatoryDataUnavailable", "lppe.heNBMandatoryDataUnavailable", + FT_NONE, BASE_NONE, NULL, 0, + NULL, HFILL }}, + { &hf_lppe_heNBLocationUnavailable, + { "heNBLocationUnavailable", "lppe.heNBLocationUnavailable", + FT_NONE, BASE_NONE, NULL, 0, + NULL, HFILL }}, + { &hf_lppe_heNBLocationReliabilityUnavailable, + { "heNBLocationReliabilityUnavailable", "lppe.heNBLocationReliabilityUnavailable", + FT_NONE, BASE_NONE, NULL, 0, + NULL, HFILL }}, + { &hf_lppe_heNBcellTransmitPowerUnavailable, + { "heNBcellTransmitPowerUnavailable", "lppe.heNBcellTransmitPowerUnavailable", + FT_NONE, BASE_NONE, NULL, 0, + NULL, HFILL }}, + { &hf_lppe_heNBcellAntennaPortConfigUnavailable, + { "heNBcellAntennaPortConfigUnavailable", "lppe.heNBcellAntennaPortConfigUnavailable", + FT_NONE, BASE_NONE, NULL, 0, + NULL, HFILL }}, + { &hf_lppe_heNBcellFrequencyAccuracyUnavailable, + { "heNBcellFrequencyAccuracyUnavailable", "lppe.heNBcellFrequencyAccuracyUnavailable", + FT_NONE, BASE_NONE, NULL, 0, + NULL, HFILL }}, + { &hf_lppe_heNBCoverageAreaUnavailable, + { "heNBCoverageAreaUnavailable", "lppe.heNBCoverageAreaUnavailable", + FT_NONE, BASE_NONE, NULL, 0, + NULL, HFILL }}, + { &hf_lppe_heNBnonservingADUnavailable, + { "heNBnonservingADUnavailable", "lppe.heNBnonservingADUnavailable", + FT_NONE, BASE_NONE, NULL, 0, + NULL, HFILL }}, + { &hf_lppe_cause_07, + { "cause", "lppe.cause", + FT_UINT32, BASE_DEC, VALS(lppe_T_cause_07_vals), 0, + "T_cause_07", HFILL }}, + { &hf_lppe_rsrpMeasurementNotPossible, + { "rsrpMeasurementNotPossible", "lppe.rsrpMeasurementNotPossible", + FT_NONE, BASE_NONE, NULL, 0, + NULL, HFILL }}, + { &hf_lppe_rsrqMeasurementNotPossible, + { "rsrqMeasurementNotPossible", "lppe.rsrqMeasurementNotPossible", + FT_NONE, BASE_NONE, NULL, 0, + NULL, HFILL }}, + { &hf_lppe_ueRxTxMeasurementNotPossible, + { "ueRxTxMeasurementNotPossible", "lppe.ueRxTxMeasurementNotPossible", + FT_NONE, BASE_NONE, NULL, 0, + NULL, HFILL }}, + { &hf_lppe_non_servingMeasurementsNotAvailable, + { "non-servingMeasurementsNotAvailable", "lppe.non_servingMeasurementsNotAvailable", + FT_NONE, BASE_NONE, NULL, 0, + NULL, HFILL }}, + { &hf_lppe_historicMeasurementsNotAvailable, + { "historicMeasurementsNotAvailable", "lppe.historicMeasurementsNotAvailable", + FT_NONE, BASE_NONE, NULL, 0, + NULL, HFILL }}, + { &hf_lppe_ecid_gsm_NetworkData, + { "ecid-gsm-NetworkData", "lppe.ecid_gsm_NetworkData", + FT_UINT32, BASE_DEC, NULL, 0, + "SEQUENCE_SIZE_1_maxGSMNetworks_OF_OMA_LPPe_ECID_GSM_NetworkData", HFILL }}, + { &hf_lppe_ecid_gsm_NetworkData_item, + { "OMA-LPPe-ECID-GSM-NetworkData", "lppe.OMA_LPPe_ECID_GSM_NetworkData", + FT_NONE, BASE_NONE, NULL, 0, + NULL, HFILL }}, + { &hf_lppe_ecid_gsm_Error, + { "ecid-gsm-Error", "lppe.ecid_gsm_Error", + FT_UINT32, BASE_DEC, VALS(lppe_OMA_LPPe_ECID_GSM_Error_vals), 0, + "OMA_LPPe_ECID_GSM_Error", HFILL }}, + { &hf_lppe_plmn_Identity_01, + { "plmn-Identity", "lppe.plmn_Identity", + FT_NONE, BASE_NONE, NULL, 0, + "T_plmn_Identity_01", HFILL }}, + { &hf_lppe_mcc_01, + { "mcc", "lppe.mcc", + FT_UINT32, BASE_DEC, NULL, 0, + "T_mcc_01", HFILL }}, + { &hf_lppe_mnc_01, + { "mnc", "lppe.mnc", + FT_UINT32, BASE_DEC, NULL, 0, + "T_mnc_01", HFILL }}, + { &hf_lppe_base_station_list, + { "base-station-list", "lppe.base_station_list", + FT_UINT32, BASE_DEC, NULL, 0, + "SEQUENCE_SIZE_1_maxGSMBaseStations_OF_OMA_LPPe_ECID_GSM_BaseStationData", HFILL }}, + { &hf_lppe_base_station_list_item, + { "OMA-LPPe-ECID-GSM-BaseStationData", "lppe.OMA_LPPe_ECID_GSM_BaseStationData", + FT_NONE, BASE_NONE, NULL, 0, + NULL, HFILL }}, + { &hf_lppe_ecid_gsm_CellData, + { "ecid-gsm-CellData", "lppe.ecid_gsm_CellData", + FT_UINT32, BASE_DEC, NULL, 0, + "SEQUENCE_SIZE_1_maxGSMCells_OF_OMA_LPPe_ECID_GSM_CellData", HFILL }}, + { &hf_lppe_ecid_gsm_CellData_item, + { "OMA-LPPe-ECID-GSM-CellData", "lppe.OMA_LPPe_ECID_GSM_CellData", + FT_NONE, BASE_NONE, NULL, 0, + NULL, HFILL }}, + { &hf_lppe_cellNonUniqueIDGERAN, + { "cellNonUniqueIDGERAN", "lppe.cellNonUniqueIDGERAN", + FT_NONE, BASE_NONE, NULL, 0, + "OMA_LPPe_CellNonUniqueIDGERAN", HFILL }}, + { &hf_lppe_cellLocalIDGERAN, + { "cellLocalIDGERAN", "lppe.cellLocalIDGERAN", + FT_NONE, BASE_NONE, NULL, 0, + "OMA_LPPe_CellLocalIdGERAN", HFILL }}, + { &hf_lppe_transmit_power, + { "transmit-power", "lppe.transmit_power", + FT_INT32, BASE_DEC, NULL, 0, + "INTEGER_M127_128", HFILL }}, + { &hf_lppe_requestedAD, + { "requestedAD", "lppe.requestedAD", + FT_BYTES, BASE_NONE, NULL, 0, + NULL, HFILL }}, + { &hf_lppe_ecid_GSM_CombinedLocationInformation, + { "ecid-GSM-CombinedLocationInformation", "lppe.ecid_GSM_CombinedLocationInformation", + FT_UINT32, BASE_DEC, NULL, 0, + "SEQUENCE_SIZE_1_maxGSMECIDSize_OF_OMA_LPPe_ECID_GSM_LocationInformationList", HFILL }}, + { &hf_lppe_ecid_GSM_CombinedLocationInformation_item, + { "OMA-LPPe-ECID-GSM-LocationInformationList", "lppe.OMA_LPPe_ECID_GSM_LocationInformationList", + FT_NONE, BASE_NONE, NULL, 0, + NULL, HFILL }}, + { &hf_lppe_ecid_GSM_Error, + { "ecid-GSM-Error", "lppe.ecid_GSM_Error", + FT_UINT32, BASE_DEC, VALS(lppe_OMA_LPPe_ECID_GSM_Error_vals), 0, + "OMA_LPPe_ECID_GSM_Error", HFILL }}, + { &hf_lppe_ecid_GSM_LocationInformation, + { "ecid-GSM-LocationInformation", "lppe.ecid_GSM_LocationInformation", + FT_NONE, BASE_NONE, NULL, 0, + "OMA_LPPe_ECID_GSM_LocationInformation", HFILL }}, + { &hf_lppe_cellGlobalIdGERAN, + { "cellGlobalIdGERAN", "lppe.cellGlobalIdGERAN", + FT_NONE, BASE_NONE, NULL, 0, + NULL, HFILL }}, + { &hf_lppe_rxLevel, + { "rxLevel", "lppe.rxLevel", + FT_UINT32, BASE_DEC, NULL, 0, + "INTEGER_0_63", HFILL }}, + { &hf_lppe_tA, + { "tA", "lppe.tA", + FT_UINT32, BASE_DEC, NULL, 0, + "INTEGER_0_255", HFILL }}, + { &hf_lppe_nMR_GERAN, + { "nMR-GERAN", "lppe.nMR_GERAN", + FT_UINT32, BASE_DEC, NULL, 0, + "OMA_LPPe_NMR_GERAN", HFILL }}, + { &hf_lppe_OMA_LPPe_NMR_GERAN_item, + { "OMA-LPPe-NMR-GERAN item", "lppe.OMA_LPPe_NMR_GERAN_item", + FT_NONE, BASE_NONE, NULL, 0, + NULL, HFILL }}, + { &hf_lppe_requestedMeasurements_01, + { "requestedMeasurements", "lppe.requestedMeasurements", + FT_BYTES, BASE_NONE, NULL, 0, + "T_requestedMeasurements_01", HFILL }}, + { &hf_lppe_ecid_gsm_MeasSupported, + { "ecid-gsm-MeasSupported", "lppe.ecid_gsm_MeasSupported", + FT_BYTES, BASE_NONE, NULL, 0, + NULL, HFILL }}, + { &hf_lppe_ecid_gsm_ADSupported, + { "ecid-gsm-ADSupported", "lppe.ecid_gsm_ADSupported", + FT_BYTES, BASE_NONE, NULL, 0, + NULL, HFILL }}, + { &hf_lppe_locationServerErrorCauses_04, + { "locationServerErrorCauses", "lppe.locationServerErrorCauses", + FT_NONE, BASE_NONE, NULL, 0, + "OMA_LPPe_ECID_GSM_LocationServerErrorCauses", HFILL }}, + { &hf_lppe_targetDeviceErrorCauses_04, + { "targetDeviceErrorCauses", "lppe.targetDeviceErrorCauses", + FT_NONE, BASE_NONE, NULL, 0, + "OMA_LPPe_ECID_GSM_TargetDeviceErrorCauses", HFILL }}, + { &hf_lppe_cause_08, + { "cause", "lppe.cause", + FT_UINT32, BASE_DEC, VALS(lppe_T_cause_08_vals), 0, + "T_cause_08", HFILL }}, + { &hf_lppe_mandatoryDataUnavailable, + { "mandatoryDataUnavailable", "lppe.mandatoryDataUnavailable", + FT_NONE, BASE_NONE, NULL, 0, + NULL, HFILL }}, + { &hf_lppe_bsLocationsUnavailable, + { "bsLocationsUnavailable", "lppe.bsLocationsUnavailable", + FT_NONE, BASE_NONE, NULL, 0, + NULL, HFILL }}, + { &hf_lppe_cellTransmitPowerUnavailable, + { "cellTransmitPowerUnavailable", "lppe.cellTransmitPowerUnavailable", + FT_NONE, BASE_NONE, NULL, 0, + NULL, HFILL }}, + { &hf_lppe_callAntennaGainUnavailable, + { "callAntennaGainUnavailable", "lppe.callAntennaGainUnavailable", + FT_NONE, BASE_NONE, NULL, 0, + NULL, HFILL }}, + { &hf_lppe_cellBeamWidthUnavailable, + { "cellBeamWidthUnavailable", "lppe.cellBeamWidthUnavailable", + FT_NONE, BASE_NONE, NULL, 0, + NULL, HFILL }}, + { &hf_lppe_cellTransmitDirectionUnavailable, + { "cellTransmitDirectionUnavailable", "lppe.cellTransmitDirectionUnavailable", + FT_NONE, BASE_NONE, NULL, 0, + NULL, HFILL }}, + { &hf_lppe_cellFrequencyAccuracyUnavailable, + { "cellFrequencyAccuracyUnavailable", "lppe.cellFrequencyAccuracyUnavailable", + FT_NONE, BASE_NONE, NULL, 0, + NULL, HFILL }}, + { &hf_lppe_nonservingADUnavailable, + { "nonservingADUnavailable", "lppe.nonservingADUnavailable", + FT_NONE, BASE_NONE, NULL, 0, + NULL, HFILL }}, + { &hf_lppe_cause_09, + { "cause", "lppe.cause", + FT_UINT32, BASE_DEC, VALS(lppe_T_cause_09_vals), 0, + "T_cause_09", HFILL }}, + { &hf_lppe_rxLevelMeasurementNotPossible, + { "rxLevelMeasurementNotPossible", "lppe.rxLevelMeasurementNotPossible", + FT_NONE, BASE_NONE, NULL, 0, + NULL, HFILL }}, + { &hf_lppe_taMeasurementNotPossible, + { "taMeasurementNotPossible", "lppe.taMeasurementNotPossible", + FT_NONE, BASE_NONE, NULL, 0, + NULL, HFILL }}, + { &hf_lppe_nMRMeasurementNotPossible, + { "nMRMeasurementNotPossible", "lppe.nMRMeasurementNotPossible", + FT_NONE, BASE_NONE, NULL, 0, + NULL, HFILL }}, + { &hf_lppe_ecid_UTRA_NetworkData, + { "ecid-UTRA-NetworkData", "lppe.ecid_UTRA_NetworkData", + FT_UINT32, BASE_DEC, NULL, 0, + "SEQUENCE_SIZE_1_maxUTRANetworks_OF_OMA_LPPe_ECID_UTRA_NetworkData", HFILL }}, + { &hf_lppe_ecid_UTRA_NetworkData_item, + { "OMA-LPPe-ECID-UTRA-NetworkData", "lppe.OMA_LPPe_ECID_UTRA_NetworkData", + FT_NONE, BASE_NONE, NULL, 0, + NULL, HFILL }}, + { &hf_lppe_ecid_UTRA_Error, + { "ecid-UTRA-Error", "lppe.ecid_UTRA_Error", + FT_UINT32, BASE_DEC, VALS(lppe_OMA_LPPe_ECID_UTRA_Error_vals), 0, + "OMA_LPPe_ECID_UTRA_Error", HFILL }}, + { &hf_lppe_plmn_Identity_02, + { "plmn-Identity", "lppe.plmn_Identity", + FT_NONE, BASE_NONE, NULL, 0, + "T_plmn_Identity_02", HFILL }}, + { &hf_lppe_mcc_02, + { "mcc", "lppe.mcc", + FT_UINT32, BASE_DEC, NULL, 0, + "T_mcc_02", HFILL }}, + { &hf_lppe_mnc_02, + { "mnc", "lppe.mnc", + FT_UINT32, BASE_DEC, NULL, 0, + "T_mnc_02", HFILL }}, + { &hf_lppe_ecid_utra_nodeB_list, + { "ecid-utra-nodeB-list", "lppe.ecid_utra_nodeB_list", + FT_UINT32, BASE_DEC, NULL, 0, + "SEQUENCE_SIZE_1_maxUTRAnodeBs_OF_OMA_LPPe_ECID_UTRA_NodeBData", HFILL }}, + { &hf_lppe_ecid_utra_nodeB_list_item, + { "OMA-LPPe-ECID-UTRA-NodeBData", "lppe.OMA_LPPe_ECID_UTRA_NodeBData", + FT_NONE, BASE_NONE, NULL, 0, + NULL, HFILL }}, + { &hf_lppe_ecid_utra_HNB_list, + { "ecid-utra-HNB-list", "lppe.ecid_utra_HNB_list", + FT_UINT32, BASE_DEC, NULL, 0, + "SEQUENCE_SIZE_1_maxUTRAHNBs_OF_OMA_LPPe_ECID_UTRA_HNBData", HFILL }}, + { &hf_lppe_ecid_utra_HNB_list_item, + { "OMA-LPPe-ECID-UTRA-HNBData", "lppe.OMA_LPPe_ECID_UTRA_HNBData", + FT_NONE, BASE_NONE, NULL, 0, + NULL, HFILL }}, + { &hf_lppe_ecid_utra_nodeB_CellData, + { "ecid-utra-nodeB-CellData", "lppe.ecid_utra_nodeB_CellData", + FT_UINT32, BASE_DEC, NULL, 0, + "SEQUENCE_SIZE_1_maxUTRAMacroCells_OF_OMA_LPPe_ECID_UTRA_CellData", HFILL }}, + { &hf_lppe_ecid_utra_nodeB_CellData_item, + { "OMA-LPPe-ECID-UTRA-CellData", "lppe.OMA_LPPe_ECID_UTRA_CellData", + FT_NONE, BASE_NONE, NULL, 0, + NULL, HFILL }}, + { &hf_lppe_ecid_utra_HNB_CellData, + { "ecid-utra-HNB-CellData", "lppe.ecid_utra_HNB_CellData", + FT_NONE, BASE_NONE, NULL, 0, + "OMA_LPPe_ECID_UTRA_CellData", HFILL }}, + { &hf_lppe_cellIdentity_02, + { "cellIdentity", "lppe.cellIdentity", + FT_BYTES, BASE_NONE, NULL, 0, + "BIT_STRING_SIZE_32", HFILL }}, + { &hf_lppe_modeSpecificInfo_04, + { "modeSpecificInfo", "lppe.modeSpecificInfo", + FT_UINT32, BASE_DEC, VALS(lppe_T_modeSpecificInfo_04_vals), 0, + "T_modeSpecificInfo_04", HFILL }}, + { &hf_lppe_fdd_05, + { "fdd", "lppe.fdd", + FT_NONE, BASE_NONE, NULL, 0, + "T_fdd_05", HFILL }}, + { &hf_lppe_primaryCPICH_Scrambling_Code, + { "primaryCPICH-Scrambling-Code", "lppe.primaryCPICH_Scrambling_Code", + FT_UINT32, BASE_DEC, NULL, 0, + "OMA_LPPe_OTDOA_UTRA_PrimaryScramblingCode", HFILL }}, + { &hf_lppe_primaryCPICH_Tx_Power, + { "primaryCPICH-Tx-Power", "lppe.primaryCPICH_Tx_Power", + FT_INT32, BASE_DEC, NULL, 0, + "INTEGER_M127_128", HFILL }}, + { &hf_lppe_uarfcn_dl, + { "uarfcn-dl", "lppe.uarfcn_dl", + FT_UINT32, BASE_DEC, NULL, 0, + "ARFCN_ValueUTRA", HFILL }}, + { &hf_lppe_tdd_05, + { "tdd", "lppe.tdd", + FT_NONE, BASE_NONE, NULL, 0, + "T_tdd_05", HFILL }}, + { &hf_lppe_primaryCCPCH_Tx_Power, + { "primaryCCPCH-Tx-Power", "lppe.primaryCCPCH_Tx_Power", + FT_INT32, BASE_DEC, NULL, 0, + "INTEGER_M127_128", HFILL }}, + { &hf_lppe_uarfcn_nt, + { "uarfcn-nt", "lppe.uarfcn_nt", + FT_UINT32, BASE_DEC, NULL, 0, + "ARFCN_ValueUTRA", HFILL }}, + { &hf_lppe_nBrequestedAD, + { "nBrequestedAD", "lppe.nBrequestedAD", + FT_BYTES, BASE_NONE, NULL, 0, + NULL, HFILL }}, + { &hf_lppe_hNBrequestedAD, + { "hNBrequestedAD", "lppe.hNBrequestedAD", + FT_BYTES, BASE_NONE, NULL, 0, + NULL, HFILL }}, + { &hf_lppe_ecid_UTRA_CombinedLocationInformation, + { "ecid-UTRA-CombinedLocationInformation", "lppe.ecid_UTRA_CombinedLocationInformation", + FT_UINT32, BASE_DEC, NULL, 0, + "SEQUENCE_SIZE_1_maxECIDUTRASize_OF_OMA_LPPe_ECID_UTRA_LocationInformationList", HFILL }}, + { &hf_lppe_ecid_UTRA_CombinedLocationInformation_item, + { "OMA-LPPe-ECID-UTRA-LocationInformationList", "lppe.OMA_LPPe_ECID_UTRA_LocationInformationList", + FT_NONE, BASE_NONE, NULL, 0, + NULL, HFILL }}, + { &hf_lppe_ecid_Error, + { "ecid-Error", "lppe.ecid_Error", + FT_UINT32, BASE_DEC, VALS(lppe_OMA_LPPe_ECID_UTRA_Error_vals), 0, + "OMA_LPPe_ECID_UTRA_Error", HFILL }}, + { &hf_lppe_ecid_utra_LocationInformation, + { "ecid-utra-LocationInformation", "lppe.ecid_utra_LocationInformation", + FT_NONE, BASE_NONE, NULL, 0, + "OMA_LPPe_ECID_UTRA_LocationInformation", HFILL }}, + { &hf_lppe_cellGlobalIdUTRA, + { "cellGlobalIdUTRA", "lppe.cellGlobalIdUTRA", + FT_NONE, BASE_NONE, NULL, 0, + "CellGlobalIdEUTRA_AndUTRA", HFILL }}, + { &hf_lppe_measuredResultsList, + { "measuredResultsList", "lppe.measuredResultsList", + FT_UINT32, BASE_DEC, NULL, 0, + "OMA_LPPe_ECID_UTRA_MeasuredResultsList", HFILL }}, + { &hf_lppe_utratimingAdvance, + { "utratimingAdvance", "lppe.utratimingAdvance", + FT_NONE, BASE_NONE, NULL, 0, + "OMA_LPPe_ECID_UTRA_UTRATimingAdvance", HFILL }}, + { &hf_lppe_tA_01, + { "tA", "lppe.tA", + FT_UINT32, BASE_DEC, NULL, 0, + "INTEGER_0_8191", HFILL }}, + { &hf_lppe_tAResolution, + { "tAResolution", "lppe.tAResolution", + FT_UINT32, BASE_DEC, VALS(lppe_OMA_LPPe_ECID_UTRA_TAResolution_vals), 0, + "OMA_LPPe_ECID_UTRA_TAResolution", HFILL }}, + { &hf_lppe_chipRate, + { "chipRate", "lppe.chipRate", + FT_UINT32, BASE_DEC, VALS(lppe_OMA_LPPe_ECID_UTRA_ChipRate_vals), 0, + "OMA_LPPe_ECID_UTRA_ChipRate", HFILL }}, + { &hf_lppe_modeSpecificInfo_05, + { "modeSpecificInfo", "lppe.modeSpecificInfo", + FT_UINT32, BASE_DEC, VALS(lppe_OMA_LPPe_UTRA_ModeSpecificInfo_vals), 0, + "OMA_LPPe_UTRA_ModeSpecificInfo", HFILL }}, + { &hf_lppe_fdd_06, + { "fdd", "lppe.fdd", + FT_NONE, BASE_NONE, NULL, 0, + "OMA_LPPe_UTRA_FrequencyInfoFDD", HFILL }}, + { &hf_lppe_tdd_06, + { "tdd", "lppe.tdd", + FT_NONE, BASE_NONE, NULL, 0, + "OMA_LPPe_UTRA_FrequencyInfoTDD", HFILL }}, + { &hf_lppe_uarfcn_UL, + { "uarfcn-UL", "lppe.uarfcn_UL", + FT_UINT32, BASE_DEC, NULL, 0, + "ARFCN_ValueUTRA", HFILL }}, + { &hf_lppe_uarfcn_DL, + { "uarfcn-DL", "lppe.uarfcn_DL", + FT_UINT32, BASE_DEC, NULL, 0, + "ARFCN_ValueUTRA", HFILL }}, + { &hf_lppe_uarfcn_Nt, + { "uarfcn-Nt", "lppe.uarfcn_Nt", + FT_UINT32, BASE_DEC, NULL, 0, + "ARFCN_ValueUTRA", HFILL }}, + { &hf_lppe_OMA_LPPe_ECID_UTRA_MeasuredResultsList_item, + { "OMA-LPPe-ECID-UTRA-MeasuredResults", "lppe.OMA_LPPe_ECID_UTRA_MeasuredResults", + FT_NONE, BASE_NONE, NULL, 0, + NULL, HFILL }}, + { &hf_lppe_utra_CarrierRSSI, + { "utra-CarrierRSSI", "lppe.utra_CarrierRSSI", + FT_UINT32, BASE_DEC, NULL, 0, + "OMA_LPPe_ECID_UTRA_CarrierRSSI", HFILL }}, + { &hf_lppe_cellMeasuredResultsList, + { "cellMeasuredResultsList", "lppe.cellMeasuredResultsList", + FT_UINT32, BASE_DEC, NULL, 0, + "OMA_LPPe_ECID_UTRA_CellMeasuredResultsList", HFILL }}, + { &hf_lppe_OMA_LPPe_ECID_UTRA_CellMeasuredResultsList_item, + { "OMA-LPPe-ECID-UTRA-CellMeasuredResults", "lppe.OMA_LPPe_ECID_UTRA_CellMeasuredResults", + FT_NONE, BASE_NONE, NULL, 0, + NULL, HFILL }}, + { &hf_lppe_modeSpecificInfo_06, + { "modeSpecificInfo", "lppe.modeSpecificInfo", + FT_UINT32, BASE_DEC, VALS(lppe_T_modeSpecificInfo_05_vals), 0, + "T_modeSpecificInfo_05", HFILL }}, + { &hf_lppe_fdd_07, + { "fdd", "lppe.fdd", + FT_NONE, BASE_NONE, NULL, 0, + "T_fdd_06", HFILL }}, + { &hf_lppe_primaryCPICH_Info, + { "primaryCPICH-Info", "lppe.primaryCPICH_Info", + FT_UINT32, BASE_DEC, NULL, 0, + "OMA_LPPe_OTDOA_UTRA_PrimaryScramblingCode", HFILL }}, + { &hf_lppe_cpich_Ec_N0, + { "cpich-Ec-N0", "lppe.cpich_Ec_N0", + FT_UINT32, BASE_DEC, NULL, 0, + "OMA_LPPe_ECID_UTRA_CPICH_Ec_N0", HFILL }}, + { &hf_lppe_cpich_RSCP, + { "cpich-RSCP", "lppe.cpich_RSCP", + FT_UINT32, BASE_DEC, NULL, 0, + "OMA_LPPe_ECID_UTRA_CPICH_RSCP", HFILL }}, + { &hf_lppe_pathloss, + { "pathloss", "lppe.pathloss", + FT_UINT32, BASE_DEC, NULL, 0, + "OMA_LPPe_ECID_UTRA_Pathloss", HFILL }}, + { &hf_lppe_tdd_07, + { "tdd", "lppe.tdd", + FT_NONE, BASE_NONE, NULL, 0, + "T_tdd_06", HFILL }}, + { &hf_lppe_primaryCCPCH_RSCP, + { "primaryCCPCH-RSCP", "lppe.primaryCCPCH_RSCP", + FT_UINT32, BASE_DEC, NULL, 0, + "OMA_LPPe_ECID_UTRA_PrimaryCCPCH_RSCP", HFILL }}, + { &hf_lppe_requestedMeasurements_02, + { "requestedMeasurements", "lppe.requestedMeasurements", + FT_BYTES, BASE_NONE, NULL, 0, + "T_requestedMeasurements_02", HFILL }}, + { &hf_lppe_ecid_utra_MeasSupported, + { "ecid-utra-MeasSupported", "lppe.ecid_utra_MeasSupported", + FT_BYTES, BASE_NONE, NULL, 0, + NULL, HFILL }}, + { &hf_lppe_ecid_utra_nodeB_ADSupported, + { "ecid-utra-nodeB-ADSupported", "lppe.ecid_utra_nodeB_ADSupported", + FT_BYTES, BASE_NONE, NULL, 0, + NULL, HFILL }}, + { &hf_lppe_ecid_utra_HNB_ADSupported, + { "ecid-utra-HNB-ADSupported", "lppe.ecid_utra_HNB_ADSupported", + FT_BYTES, BASE_NONE, NULL, 0, + NULL, HFILL }}, + { &hf_lppe_locationServerErrorCauses_05, + { "locationServerErrorCauses", "lppe.locationServerErrorCauses", + FT_NONE, BASE_NONE, NULL, 0, + "OMA_LPPe_ECID_UTRA_LocationServerErrorCauses", HFILL }}, + { &hf_lppe_targetDeviceErrorCauses_05, + { "targetDeviceErrorCauses", "lppe.targetDeviceErrorCauses", + FT_NONE, BASE_NONE, NULL, 0, + "OMA_LPPe_ECID_UTRA_TargetDeviceErrorCauses", HFILL }}, + { &hf_lppe_cause_10, + { "cause", "lppe.cause", + FT_UINT32, BASE_DEC, VALS(lppe_T_cause_10_vals), 0, + "T_cause_10", HFILL }}, + { &hf_lppe_nodeBMandatoryDataUnavailable, + { "nodeBMandatoryDataUnavailable", "lppe.nodeBMandatoryDataUnavailable", + FT_NONE, BASE_NONE, NULL, 0, + NULL, HFILL }}, + { &hf_lppe_nodeBLocationUnavailable, + { "nodeBLocationUnavailable", "lppe.nodeBLocationUnavailable", + FT_NONE, BASE_NONE, NULL, 0, + NULL, HFILL }}, + { &hf_lppe_nodeBcellTransmitPowerUnavailable, + { "nodeBcellTransmitPowerUnavailable", "lppe.nodeBcellTransmitPowerUnavailable", + FT_NONE, BASE_NONE, NULL, 0, + NULL, HFILL }}, + { &hf_lppe_nodeBcallAntennaGainUnavailable, + { "nodeBcallAntennaGainUnavailable", "lppe.nodeBcallAntennaGainUnavailable", + FT_NONE, BASE_NONE, NULL, 0, + NULL, HFILL }}, + { &hf_lppe_nodeBcellBeamWidthUnavailable, + { "nodeBcellBeamWidthUnavailable", "lppe.nodeBcellBeamWidthUnavailable", + FT_NONE, BASE_NONE, NULL, 0, + NULL, HFILL }}, + { &hf_lppe_nodeBcellTransmitDirectionUnavailable, + { "nodeBcellTransmitDirectionUnavailable", "lppe.nodeBcellTransmitDirectionUnavailable", + FT_NONE, BASE_NONE, NULL, 0, + NULL, HFILL }}, + { &hf_lppe_nodeBcellFrequencyAccuracyUnavailable, + { "nodeBcellFrequencyAccuracyUnavailable", "lppe.nodeBcellFrequencyAccuracyUnavailable", + FT_NONE, BASE_NONE, NULL, 0, + NULL, HFILL }}, + { &hf_lppe_nodeBnonservingADUnavailable, + { "nodeBnonservingADUnavailable", "lppe.nodeBnonservingADUnavailable", + FT_NONE, BASE_NONE, NULL, 0, + NULL, HFILL }}, + { &hf_lppe_hNBMandatoryDataUnavailable, + { "hNBMandatoryDataUnavailable", "lppe.hNBMandatoryDataUnavailable", + FT_NONE, BASE_NONE, NULL, 0, + NULL, HFILL }}, + { &hf_lppe_hNBLocationUnavailable, + { "hNBLocationUnavailable", "lppe.hNBLocationUnavailable", + FT_NONE, BASE_NONE, NULL, 0, + NULL, HFILL }}, + { &hf_lppe_hNBLocationReliabilityUnavailable, + { "hNBLocationReliabilityUnavailable", "lppe.hNBLocationReliabilityUnavailable", + FT_NONE, BASE_NONE, NULL, 0, + NULL, HFILL }}, + { &hf_lppe_hNBcellTransmitPowerUnavailable, + { "hNBcellTransmitPowerUnavailable", "lppe.hNBcellTransmitPowerUnavailable", + FT_NONE, BASE_NONE, NULL, 0, + NULL, HFILL }}, + { &hf_lppe_hNBcellFrequencyAccuracyUnavailable, + { "hNBcellFrequencyAccuracyUnavailable", "lppe.hNBcellFrequencyAccuracyUnavailable", + FT_NONE, BASE_NONE, NULL, 0, + NULL, HFILL }}, + { &hf_lppe_hNBCoverageAreaUnavailable, + { "hNBCoverageAreaUnavailable", "lppe.hNBCoverageAreaUnavailable", + FT_NONE, BASE_NONE, NULL, 0, + NULL, HFILL }}, + { &hf_lppe_hNBnonservingADUnavailable, + { "hNBnonservingADUnavailable", "lppe.hNBnonservingADUnavailable", + FT_NONE, BASE_NONE, NULL, 0, + NULL, HFILL }}, + { &hf_lppe_cause_11, + { "cause", "lppe.cause", + FT_UINT32, BASE_DEC, VALS(lppe_T_cause_11_vals), 0, + "T_cause_11", HFILL }}, + { &hf_lppe_mRLMeasurementsNotPossible, + { "mRLMeasurementsNotPossible", "lppe.mRLMeasurementsNotPossible", + FT_NONE, BASE_NONE, NULL, 0, + NULL, HFILL }}, + { &hf_lppe_tdd_timingAdvanceMeasurementNotPossible, + { "tdd-timingAdvanceMeasurementNotPossible", "lppe.tdd_timingAdvanceMeasurementNotPossible", + FT_NONE, BASE_NONE, NULL, 0, + NULL, HFILL }}, + { &hf_lppe_mRL_utra_CarrierRSSIMeasurementNotPossible, + { "mRL-utra-CarrierRSSIMeasurementNotPossible", "lppe.mRL_utra_CarrierRSSIMeasurementNotPossible", + FT_NONE, BASE_NONE, NULL, 0, + NULL, HFILL }}, + { &hf_lppe_mRL_FDD_cpich_Ec_N0MeasurementNotPossible, + { "mRL-FDD-cpich-Ec-N0MeasurementNotPossible", "lppe.mRL_FDD_cpich_Ec_N0MeasurementNotPossible", + FT_NONE, BASE_NONE, NULL, 0, + NULL, HFILL }}, + { &hf_lppe_mRL_FDD_cpich_RSCPMeasurementNotPossible, + { "mRL-FDD-cpich-RSCPMeasurementNotPossible", "lppe.mRL_FDD_cpich_RSCPMeasurementNotPossible", + FT_NONE, BASE_NONE, NULL, 0, + NULL, HFILL }}, + { &hf_lppe_mRL_FDD_pathlossMeasurementNotPossible, + { "mRL-FDD-pathlossMeasurementNotPossible", "lppe.mRL_FDD_pathlossMeasurementNotPossible", + FT_NONE, BASE_NONE, NULL, 0, + NULL, HFILL }}, + { &hf_lppe_mRL_TDD_primaryCCPCH_RSCPMeasurementNotPossible, + { "mRL-TDD-primaryCCPCH-RSCPMeasurementNotPossible", "lppe.mRL_TDD_primaryCCPCH_RSCPMeasurementNotPossible", + FT_NONE, BASE_NONE, NULL, 0, + NULL, HFILL }}, + { &hf_lppe_mRL_TDD_pathlossMeasurementNotPossible, + { "mRL-TDD-pathlossMeasurementNotPossible", "lppe.mRL_TDD_pathlossMeasurementNotPossible", + FT_NONE, BASE_NONE, NULL, 0, + NULL, HFILL }}, + { &hf_lppe_wlan_DataSet, + { "wlan-DataSet", "lppe.wlan_DataSet", + FT_UINT32, BASE_DEC, NULL, 0, + "SEQUENCE_SIZE_1_maxWLANDataSets_OF_OMA_LPPe_WLAN_DataSet", HFILL }}, + { &hf_lppe_wlan_DataSet_item, + { "OMA-LPPe-WLAN-DataSet", "lppe.OMA_LPPe_WLAN_DataSet", + FT_NONE, BASE_NONE, NULL, 0, + NULL, HFILL }}, + { &hf_lppe_wlan_AP_Error, + { "wlan-AP-Error", "lppe.wlan_AP_Error", + FT_UINT32, BASE_DEC, VALS(lppe_OMA_LPPe_WLAN_AP_Error_vals), 0, + "OMA_LPPe_WLAN_AP_Error", HFILL }}, + { &hf_lppe_plmn_Identity_03, + { "plmn-Identity", "lppe.plmn_Identity", + FT_NONE, BASE_NONE, NULL, 0, + "T_plmn_Identity_03", HFILL }}, + { &hf_lppe_mcc_03, + { "mcc", "lppe.mcc", + FT_UINT32, BASE_DEC, NULL, 0, + "T_mcc_03", HFILL }}, + { &hf_lppe_mnc_03, + { "mnc", "lppe.mnc", + FT_UINT32, BASE_DEC, NULL, 0, + "T_mnc_03", HFILL }}, + { &hf_lppe_supported_channels_11a, + { "supported-channels-11a", "lppe.supported_channels_11a", + FT_NONE, BASE_NONE, NULL, 0, + NULL, HFILL }}, + { &hf_lppe_supported_channels_11bg, + { "supported-channels-11bg", "lppe.supported_channels_11bg", + FT_NONE, BASE_NONE, NULL, 0, + NULL, HFILL }}, + { &hf_lppe_wlan_ap_list, + { "wlan-ap-list", "lppe.wlan_ap_list", + FT_UINT32, BASE_DEC, NULL, 0, + "SEQUENCE_SIZE_1_maxWLANAPs_OF_OMA_LPPe_WLAN_AP_Data", HFILL }}, + { &hf_lppe_wlan_ap_list_item, + { "OMA-LPPe-WLAN-AP-Data", "lppe.OMA_LPPe_WLAN_AP_Data", + FT_NONE, BASE_NONE, NULL, 0, + NULL, HFILL }}, + { &hf_lppe_ch34, + { "ch34", "lppe.ch34", + FT_BOOLEAN, BASE_NONE, NULL, 0, + "BOOLEAN", HFILL }}, + { &hf_lppe_ch36, + { "ch36", "lppe.ch36", + FT_BOOLEAN, BASE_NONE, NULL, 0, + "BOOLEAN", HFILL }}, + { &hf_lppe_ch38, + { "ch38", "lppe.ch38", + FT_BOOLEAN, BASE_NONE, NULL, 0, + "BOOLEAN", HFILL }}, + { &hf_lppe_ch40, + { "ch40", "lppe.ch40", + FT_BOOLEAN, BASE_NONE, NULL, 0, + "BOOLEAN", HFILL }}, + { &hf_lppe_ch42, + { "ch42", "lppe.ch42", + FT_BOOLEAN, BASE_NONE, NULL, 0, + "BOOLEAN", HFILL }}, + { &hf_lppe_ch44, + { "ch44", "lppe.ch44", + FT_BOOLEAN, BASE_NONE, NULL, 0, + "BOOLEAN", HFILL }}, + { &hf_lppe_ch46, + { "ch46", "lppe.ch46", + FT_BOOLEAN, BASE_NONE, NULL, 0, + "BOOLEAN", HFILL }}, + { &hf_lppe_ch48, + { "ch48", "lppe.ch48", + FT_BOOLEAN, BASE_NONE, NULL, 0, + "BOOLEAN", HFILL }}, + { &hf_lppe_ch52, + { "ch52", "lppe.ch52", + FT_BOOLEAN, BASE_NONE, NULL, 0, + "BOOLEAN", HFILL }}, + { &hf_lppe_ch56, + { "ch56", "lppe.ch56", + FT_BOOLEAN, BASE_NONE, NULL, 0, + "BOOLEAN", HFILL }}, + { &hf_lppe_ch60, + { "ch60", "lppe.ch60", + FT_BOOLEAN, BASE_NONE, NULL, 0, + "BOOLEAN", HFILL }}, + { &hf_lppe_ch64, + { "ch64", "lppe.ch64", + FT_BOOLEAN, BASE_NONE, NULL, 0, + "BOOLEAN", HFILL }}, + { &hf_lppe_ch149, + { "ch149", "lppe.ch149", + FT_BOOLEAN, BASE_NONE, NULL, 0, + "BOOLEAN", HFILL }}, + { &hf_lppe_ch153, + { "ch153", "lppe.ch153", + FT_BOOLEAN, BASE_NONE, NULL, 0, + "BOOLEAN", HFILL }}, + { &hf_lppe_ch157, + { "ch157", "lppe.ch157", + FT_BOOLEAN, BASE_NONE, NULL, 0, + "BOOLEAN", HFILL }}, + { &hf_lppe_ch161, + { "ch161", "lppe.ch161", + FT_BOOLEAN, BASE_NONE, NULL, 0, + "BOOLEAN", HFILL }}, + { &hf_lppe_ch1, + { "ch1", "lppe.ch1", + FT_BOOLEAN, BASE_NONE, NULL, 0, + "BOOLEAN", HFILL }}, + { &hf_lppe_ch2, + { "ch2", "lppe.ch2", + FT_BOOLEAN, BASE_NONE, NULL, 0, + "BOOLEAN", HFILL }}, + { &hf_lppe_ch3, + { "ch3", "lppe.ch3", + FT_BOOLEAN, BASE_NONE, NULL, 0, + "BOOLEAN", HFILL }}, + { &hf_lppe_ch4, + { "ch4", "lppe.ch4", + FT_BOOLEAN, BASE_NONE, NULL, 0, + "BOOLEAN", HFILL }}, + { &hf_lppe_ch5, + { "ch5", "lppe.ch5", + FT_BOOLEAN, BASE_NONE, NULL, 0, + "BOOLEAN", HFILL }}, + { &hf_lppe_ch6, + { "ch6", "lppe.ch6", + FT_BOOLEAN, BASE_NONE, NULL, 0, + "BOOLEAN", HFILL }}, + { &hf_lppe_ch7, + { "ch7", "lppe.ch7", + FT_BOOLEAN, BASE_NONE, NULL, 0, + "BOOLEAN", HFILL }}, + { &hf_lppe_ch8, + { "ch8", "lppe.ch8", + FT_BOOLEAN, BASE_NONE, NULL, 0, + "BOOLEAN", HFILL }}, + { &hf_lppe_ch9, + { "ch9", "lppe.ch9", + FT_BOOLEAN, BASE_NONE, NULL, 0, + "BOOLEAN", HFILL }}, + { &hf_lppe_ch10, + { "ch10", "lppe.ch10", + FT_BOOLEAN, BASE_NONE, NULL, 0, + "BOOLEAN", HFILL }}, + { &hf_lppe_ch11, + { "ch11", "lppe.ch11", + FT_BOOLEAN, BASE_NONE, NULL, 0, + "BOOLEAN", HFILL }}, + { &hf_lppe_ch12, + { "ch12", "lppe.ch12", + FT_BOOLEAN, BASE_NONE, NULL, 0, + "BOOLEAN", HFILL }}, + { &hf_lppe_ch13, + { "ch13", "lppe.ch13", + FT_BOOLEAN, BASE_NONE, NULL, 0, + "BOOLEAN", HFILL }}, + { &hf_lppe_ch14, + { "ch14", "lppe.ch14", + FT_BOOLEAN, BASE_NONE, NULL, 0, + "BOOLEAN", HFILL }}, + { &hf_lppe_wlan_ap_id, + { "wlan-ap-id", "lppe.wlan_ap_id", + FT_NONE, BASE_NONE, NULL, 0, + "OMA_LPPe_WLAN_AP_ID", HFILL }}, + { &hf_lppe_wlan_ap_Type_Data, + { "wlan-ap-Type-Data", "lppe.wlan_ap_Type_Data", + FT_UINT32, BASE_DEC, NULL, 0, + "SEQUENCE_SIZE_1_maxWLANTypes_OF_OMA_LPPe_WLAN_AP_Type_Data", HFILL }}, + { &hf_lppe_wlan_ap_Type_Data_item, + { "OMA-LPPe-WLAN-AP-Type-Data", "lppe.OMA_LPPe_WLAN_AP_Type_Data", + FT_NONE, BASE_NONE, NULL, 0, + NULL, HFILL }}, + { &hf_lppe_wlan_AP_Type, + { "wlan-AP-Type", "lppe.wlan_AP_Type", + FT_UINT32, BASE_DEC, VALS(lppe_OMA_LPPe_WLAN_AP_Type_vals), 0, + "OMA_LPPe_WLAN_AP_Type", HFILL }}, + { &hf_lppe_requestedAD_01, + { "requestedAD", "lppe.requestedAD", + FT_BYTES, BASE_NONE, NULL, 0, + "T_requestedAD_01", HFILL }}, + { &hf_lppe_requestedAPTypes, + { "requestedAPTypes", "lppe.requestedAPTypes", + FT_BYTES, BASE_NONE, NULL, 0, + "OMA_LPPe_WLAN_AP_Type_List", HFILL }}, + { &hf_lppe_wlan_AP_CombinedLocationInformation, + { "wlan-AP-CombinedLocationInformation", "lppe.wlan_AP_CombinedLocationInformation", + FT_UINT32, BASE_DEC, NULL, 0, + "SEQUENCE_SIZE_1_maxWLANAPSize_OF_OMA_LPPe_WLAN_AP_LocationInformationList", HFILL }}, + { &hf_lppe_wlan_AP_CombinedLocationInformation_item, + { "OMA-LPPe-WLAN-AP-LocationInformationList", "lppe.OMA_LPPe_WLAN_AP_LocationInformationList", + FT_NONE, BASE_NONE, NULL, 0, + NULL, HFILL }}, + { &hf_lppe_wlan_AP_LocationInformation, + { "wlan-AP-LocationInformation", "lppe.wlan_AP_LocationInformation", + FT_NONE, BASE_NONE, NULL, 0, + "OMA_LPPe_WLAN_AP_LocationInformation", HFILL }}, + { &hf_lppe_apMACAddress, + { "apMACAddress", "lppe.apMACAddress", + FT_NONE, BASE_NONE, NULL, 0, + "OMA_LPPe_WLAN_AP_ID", HFILL }}, + { &hf_lppe_apSSID, + { "apSSID", "lppe.apSSID", + FT_BYTES, BASE_NONE, NULL, 0, + "OCTET_STRING_SIZE_1_32", HFILL }}, + { &hf_lppe_apSignaltoNoise, + { "apSignaltoNoise", "lppe.apSignaltoNoise", + FT_INT32, BASE_DEC, NULL, 0, + "INTEGER_M127_128", HFILL }}, + { &hf_lppe_apDeviceType, + { "apDeviceType", "lppe.apDeviceType", + FT_UINT32, BASE_DEC, VALS(lppe_OMA_LPPe_WLAN_AP_Type_vals), 0, + "OMA_LPPe_WLAN_AP_Type", HFILL }}, + { &hf_lppe_apPHYtype, + { "apPHYtype", "lppe.apPHYtype", + FT_UINT32, BASE_DEC, VALS(lppe_OMA_LPPe_WLAN_AP_PHY_Type_vals), 0, + "OMA_LPPe_WLAN_AP_PHY_Type", HFILL }}, + { &hf_lppe_apSignalStrength, + { "apSignalStrength", "lppe.apSignalStrength", + FT_INT32, BASE_DEC, NULL, 0, + "INTEGER_M127_128", HFILL }}, + { &hf_lppe_apChannelFrequency, + { "apChannelFrequency", "lppe.apChannelFrequency", + FT_UINT32, BASE_DEC, NULL, 0, + "INTEGER_0_256", HFILL }}, + { &hf_lppe_apRoundTripDelay, + { "apRoundTripDelay", "lppe.apRoundTripDelay", + FT_NONE, BASE_NONE, NULL, 0, + "OMA_LPPe_WLAN_RTD", HFILL }}, + { &hf_lppe_ueTransmitPower, + { "ueTransmitPower", "lppe.ueTransmitPower", + FT_INT32, BASE_DEC, NULL, 0, + "INTEGER_M127_128", HFILL }}, + { &hf_lppe_ueAntennaGain, + { "ueAntennaGain", "lppe.ueAntennaGain", + FT_INT32, BASE_DEC, NULL, 0, + "INTEGER_M127_128", HFILL }}, + { &hf_lppe_apReportedLocation, + { "apReportedLocation", "lppe.apReportedLocation", + FT_NONE, BASE_NONE, NULL, 0, + "OMA_LPPe_WLAN_ReportedLocation", HFILL }}, + { &hf_lppe_rTDValue, + { "rTDValue", "lppe.rTDValue", + FT_UINT32, BASE_DEC, NULL, 0, + "INTEGER_0_16777215", HFILL }}, + { &hf_lppe_rTDUnits, + { "rTDUnits", "lppe.rTDUnits", + FT_UINT32, BASE_DEC, VALS(lppe_OMA_LPPe_WLAN_RTDUnits_vals), 0, + "OMA_LPPe_WLAN_RTDUnits", HFILL }}, + { &hf_lppe_rTDAccuracy, + { "rTDAccuracy", "lppe.rTDAccuracy", + FT_UINT32, BASE_DEC, NULL, 0, + "INTEGER_0_255", HFILL }}, + { &hf_lppe_locationDataLCI, + { "locationDataLCI", "lppe.locationDataLCI", + FT_NONE, BASE_NONE, NULL, 0, + "OMA_LPPe_WLAN_LocationDataLCI", HFILL }}, + { &hf_lppe_latitudeResolution, + { "latitudeResolution", "lppe.latitudeResolution", + FT_BYTES, BASE_NONE, NULL, 0, + "BIT_STRING_SIZE_6", HFILL }}, + { &hf_lppe_latitude_01, + { "latitude", "lppe.latitude", + FT_BYTES, BASE_NONE, NULL, 0, + "BIT_STRING_SIZE_34", HFILL }}, + { &hf_lppe_longitudeResolution, + { "longitudeResolution", "lppe.longitudeResolution", + FT_BYTES, BASE_NONE, NULL, 0, + "BIT_STRING_SIZE_6", HFILL }}, + { &hf_lppe_longitude_01, + { "longitude", "lppe.longitude", + FT_BYTES, BASE_NONE, NULL, 0, + "BIT_STRING_SIZE_34", HFILL }}, + { &hf_lppe_altitudeType, + { "altitudeType", "lppe.altitudeType", + FT_BYTES, BASE_NONE, NULL, 0, + "BIT_STRING_SIZE_4", HFILL }}, + { &hf_lppe_altitudeResolution, + { "altitudeResolution", "lppe.altitudeResolution", + FT_BYTES, BASE_NONE, NULL, 0, + "BIT_STRING_SIZE_6", HFILL }}, + { &hf_lppe_altitude_01, + { "altitude", "lppe.altitude", + FT_BYTES, BASE_NONE, NULL, 0, + "BIT_STRING_SIZE_30", HFILL }}, + { &hf_lppe_datum, + { "datum", "lppe.datum", + FT_BYTES, BASE_NONE, NULL, 0, + "BIT_STRING_SIZE_8", HFILL }}, + { &hf_lppe_requestedMeasurements_03, + { "requestedMeasurements", "lppe.requestedMeasurements", + FT_BYTES, BASE_NONE, NULL, 0, + "T_requestedMeasurements_03", HFILL }}, + { &hf_lppe_wlan_ecid_MeasSupported, + { "wlan-ecid-MeasSupported", "lppe.wlan_ecid_MeasSupported", + FT_BYTES, BASE_NONE, NULL, 0, + NULL, HFILL }}, + { &hf_lppe_wlan_types_Supported, + { "wlan-types-Supported", "lppe.wlan_types_Supported", + FT_BYTES, BASE_NONE, NULL, 0, + "OMA_LPPe_WLAN_AP_Type_List", HFILL }}, + { &hf_lppe_ap_Capability, + { "ap-Capability", "lppe.ap_Capability", + FT_NONE, BASE_NONE, NULL, 0, + "OMA_LPPe_WLAN_AP_Capability", HFILL }}, + { &hf_lppe_wlan_ap_ADSupported, + { "wlan-ap-ADSupported", "lppe.wlan_ap_ADSupported", + FT_BYTES, BASE_NONE, NULL, 0, + NULL, HFILL }}, + { &hf_lppe_apTypes, + { "apTypes", "lppe.apTypes", + FT_BYTES, BASE_NONE, NULL, 0, + "OMA_LPPe_WLAN_AP_Type_List", HFILL }}, + { &hf_lppe_locationServerErrorCauses_06, + { "locationServerErrorCauses", "lppe.locationServerErrorCauses", + FT_NONE, BASE_NONE, NULL, 0, + "OMA_LPPe_WLAN_AP_LocationServerErrorCauses", HFILL }}, + { &hf_lppe_targetDeviceErrorCauses_06, + { "targetDeviceErrorCauses", "lppe.targetDeviceErrorCauses", + FT_NONE, BASE_NONE, NULL, 0, + "OMA_LPPe_WLAN_AP_TargetDeviceErrorCauses", HFILL }}, + { &hf_lppe_cause_12, + { "cause", "lppe.cause", + FT_UINT32, BASE_DEC, VALS(lppe_T_cause_12_vals), 0, + "T_cause_12", HFILL }}, + { &hf_lppe_apMandatoryDataUnavailable, + { "apMandatoryDataUnavailable", "lppe.apMandatoryDataUnavailable", + FT_NONE, BASE_NONE, NULL, 0, + NULL, HFILL }}, + { &hf_lppe_apLocationsUnavailable, + { "apLocationsUnavailable", "lppe.apLocationsUnavailable", + FT_NONE, BASE_NONE, NULL, 0, + NULL, HFILL }}, + { &hf_lppe_apLocationReliabilityUnavailable, + { "apLocationReliabilityUnavailable", "lppe.apLocationReliabilityUnavailable", + FT_NONE, BASE_NONE, NULL, 0, + NULL, HFILL }}, + { &hf_lppe_apTransmitPowerUnavailable, + { "apTransmitPowerUnavailable", "lppe.apTransmitPowerUnavailable", + FT_NONE, BASE_NONE, NULL, 0, + NULL, HFILL }}, + { &hf_lppe_apAntennaGainUnavailable, + { "apAntennaGainUnavailable", "lppe.apAntennaGainUnavailable", + FT_NONE, BASE_NONE, NULL, 0, + NULL, HFILL }}, + { &hf_lppe_apCoverageAreaUnavailable, + { "apCoverageAreaUnavailable", "lppe.apCoverageAreaUnavailable", + FT_NONE, BASE_NONE, NULL, 0, + NULL, HFILL }}, + { &hf_lppe_cause_13, + { "cause", "lppe.cause", + FT_UINT32, BASE_DEC, VALS(lppe_T_cause_13_vals), 0, + "T_cause_13", HFILL }}, + { &hf_lppe_apSSIDnotAvailable, + { "apSSIDnotAvailable", "lppe.apSSIDnotAvailable", + FT_NONE, BASE_NONE, NULL, 0, + NULL, HFILL }}, + { &hf_lppe_apSNMeasurementNotPossible, + { "apSNMeasurementNotPossible", "lppe.apSNMeasurementNotPossible", + FT_NONE, BASE_NONE, NULL, 0, + NULL, HFILL }}, + { &hf_lppe_apDevTypeNotAvailable, + { "apDevTypeNotAvailable", "lppe.apDevTypeNotAvailable", + FT_NONE, BASE_NONE, NULL, 0, + NULL, HFILL }}, + { &hf_lppe_apPhyTypeNotAvailable, + { "apPhyTypeNotAvailable", "lppe.apPhyTypeNotAvailable", + FT_NONE, BASE_NONE, NULL, 0, + NULL, HFILL }}, + { &hf_lppe_apRSSIMeasurementNotPossible, + { "apRSSIMeasurementNotPossible", "lppe.apRSSIMeasurementNotPossible", + FT_NONE, BASE_NONE, NULL, 0, + NULL, HFILL }}, + { &hf_lppe_apChanFreqNotAvailable, + { "apChanFreqNotAvailable", "lppe.apChanFreqNotAvailable", + FT_NONE, BASE_NONE, NULL, 0, + NULL, HFILL }}, + { &hf_lppe_apRTDMeasurementNotPossible, + { "apRTDMeasurementNotPossible", "lppe.apRTDMeasurementNotPossible", + FT_NONE, BASE_NONE, NULL, 0, + NULL, HFILL }}, + { &hf_lppe_ueTPNotAvailable, + { "ueTPNotAvailable", "lppe.ueTPNotAvailable", + FT_NONE, BASE_NONE, NULL, 0, + NULL, HFILL }}, + { &hf_lppe_ueAGNotAvailable, + { "ueAGNotAvailable", "lppe.ueAGNotAvailable", + FT_NONE, BASE_NONE, NULL, 0, + NULL, HFILL }}, + { &hf_lppe_apRecLocNotAvailable, + { "apRecLocNotAvailable", "lppe.apRecLocNotAvailable", + FT_NONE, BASE_NONE, NULL, 0, + NULL, HFILL }}, + { &hf_lppe_ecid_wimax_CombinedLocationInformation, + { "ecid-wimax-CombinedLocationInformation", "lppe.ecid_wimax_CombinedLocationInformation", + FT_UINT32, BASE_DEC, NULL, 0, + "SEQUENCE_SIZE_1_maxWiMaxECIDSize_OF_OMA_LPPe_ECID_WiMax_LocationInformationList", HFILL }}, + { &hf_lppe_ecid_wimax_CombinedLocationInformation_item, + { "OMA-LPPe-ECID-WiMax-LocationInformationList", "lppe.OMA_LPPe_ECID_WiMax_LocationInformationList", + FT_NONE, BASE_NONE, NULL, 0, + NULL, HFILL }}, + { &hf_lppe_ecid_wimax_Error, + { "ecid-wimax-Error", "lppe.ecid_wimax_Error", + FT_UINT32, BASE_DEC, VALS(lppe_OMA_LPPe_ECID_WiMax_Error_vals), 0, + "OMA_LPPe_ECID_WiMax_Error", HFILL }}, + { &hf_lppe_ecid_wimax_LocationInformation, + { "ecid-wimax-LocationInformation", "lppe.ecid_wimax_LocationInformation", + FT_NONE, BASE_NONE, NULL, 0, + "OMA_LPPe_ECID_WiMax_LocationInformation", HFILL }}, + { &hf_lppe_wimaxBsID, + { "wimaxBsID", "lppe.wimaxBsID", + FT_NONE, BASE_NONE, NULL, 0, + "OMA_LPPe_ECID_WiMax_WimaxBsID", HFILL }}, + { &hf_lppe_wimaxRTD, + { "wimaxRTD", "lppe.wimaxRTD", + FT_NONE, BASE_NONE, NULL, 0, + "OMA_LPPe_ECID_WiMax_WimaxRTD", HFILL }}, + { &hf_lppe_wimaxNMRList, + { "wimaxNMRList", "lppe.wimaxNMRList", + FT_UINT32, BASE_DEC, NULL, 0, + "OMA_LPPe_ECID_WiMax_WimaxNMRList", HFILL }}, + { &hf_lppe_bsID_MSB, + { "bsID-MSB", "lppe.bsID_MSB", + FT_BYTES, BASE_NONE, NULL, 0, + "BIT_STRING_SIZE_24", HFILL }}, + { &hf_lppe_bsID_LSB, + { "bsID-LSB", "lppe.bsID_LSB", + FT_BYTES, BASE_NONE, NULL, 0, + "BIT_STRING_SIZE_24", HFILL }}, + { &hf_lppe_rTD, + { "rTD", "lppe.rTD", + FT_UINT32, BASE_DEC, NULL, 0, + "INTEGER_0_65535", HFILL }}, + { &hf_lppe_rTDstd, + { "rTDstd", "lppe.rTDstd", + FT_UINT32, BASE_DEC, NULL, 0, + "INTEGER_0_1023", HFILL }}, + { &hf_lppe_OMA_LPPe_ECID_WiMax_WimaxNMRList_item, + { "OMA-LPPe-ECID-WiMax-WimaxNMR", "lppe.OMA_LPPe_ECID_WiMax_WimaxNMR", + FT_NONE, BASE_NONE, NULL, 0, + NULL, HFILL }}, + { &hf_lppe_relDelay, + { "relDelay", "lppe.relDelay", + FT_INT32, BASE_DEC, NULL, 0, + "INTEGER_M32768_32767", HFILL }}, + { &hf_lppe_relDelaystd, + { "relDelaystd", "lppe.relDelaystd", + FT_UINT32, BASE_DEC, NULL, 0, + "INTEGER_0_1023", HFILL }}, + { &hf_lppe_rSSI, + { "rSSI", "lppe.rSSI", + FT_UINT32, BASE_DEC, NULL, 0, + "INTEGER_0_255", HFILL }}, + { &hf_lppe_rSSIstd, + { "rSSIstd", "lppe.rSSIstd", + FT_UINT32, BASE_DEC, NULL, 0, + "INTEGER_0_63", HFILL }}, + { &hf_lppe_bSTxPower, + { "bSTxPower", "lppe.bSTxPower", + FT_UINT32, BASE_DEC, NULL, 0, + "INTEGER_0_255", HFILL }}, + { &hf_lppe_cINR, + { "cINR", "lppe.cINR", + FT_UINT32, BASE_DEC, NULL, 0, + "INTEGER_0_255", HFILL }}, + { &hf_lppe_cINRstd, + { "cINRstd", "lppe.cINRstd", + FT_UINT32, BASE_DEC, NULL, 0, + "INTEGER_0_63", HFILL }}, + { &hf_lppe_bSLocation, + { "bSLocation", "lppe.bSLocation", + FT_NONE, BASE_NONE, NULL, 0, + "OMA_LPPe_WLAN_ReportedLocation", HFILL }}, + { &hf_lppe_requestedMeasurements_04, + { "requestedMeasurements", "lppe.requestedMeasurements", + FT_BYTES, BASE_NONE, NULL, 0, + "T_requestedMeasurements_04", HFILL }}, + { &hf_lppe_ecid_wimax_MeasSupported, + { "ecid-wimax-MeasSupported", "lppe.ecid_wimax_MeasSupported", + FT_BYTES, BASE_NONE, NULL, 0, + NULL, HFILL }}, + { &hf_lppe_locationServerErrorCauses_07, + { "locationServerErrorCauses", "lppe.locationServerErrorCauses", + FT_NONE, BASE_NONE, NULL, 0, + "OMA_LPPe_ECID_WiMax_LocationServerErrorCauses", HFILL }}, + { &hf_lppe_targetDeviceErrorCauses_07, + { "targetDeviceErrorCauses", "lppe.targetDeviceErrorCauses", + FT_NONE, BASE_NONE, NULL, 0, + "OMA_LPPe_ECID_WiMax_TargetDeviceErrorCauses", HFILL }}, + { &hf_lppe_cause_14, + { "cause", "lppe.cause", + FT_UINT32, BASE_DEC, VALS(lppe_T_cause_14_vals), 0, + "T_cause_14", HFILL }}, + { &hf_lppe_cause_15, + { "cause", "lppe.cause", + FT_UINT32, BASE_DEC, VALS(lppe_T_cause_15_vals), 0, + "T_cause_15", HFILL }}, + { &hf_lppe_rTDMeasurementNotPossible, + { "rTDMeasurementNotPossible", "lppe.rTDMeasurementNotPossible", + FT_NONE, BASE_NONE, NULL, 0, + NULL, HFILL }}, + { &hf_lppe_rTDstdMeasurementNotPossible, + { "rTDstdMeasurementNotPossible", "lppe.rTDstdMeasurementNotPossible", + FT_NONE, BASE_NONE, NULL, 0, + NULL, HFILL }}, + { &hf_lppe_nMRrelDelayMeasurementNotPossible, + { "nMRrelDelayMeasurementNotPossible", "lppe.nMRrelDelayMeasurementNotPossible", + FT_NONE, BASE_NONE, NULL, 0, + NULL, HFILL }}, + { &hf_lppe_nMRrelDelaystdMeasurementNotPossible, + { "nMRrelDelaystdMeasurementNotPossible", "lppe.nMRrelDelaystdMeasurementNotPossible", + FT_NONE, BASE_NONE, NULL, 0, + NULL, HFILL }}, + { &hf_lppe_nMRrSSIMeasurementNotPossible, + { "nMRrSSIMeasurementNotPossible", "lppe.nMRrSSIMeasurementNotPossible", + FT_NONE, BASE_NONE, NULL, 0, + NULL, HFILL }}, + { &hf_lppe_nMRrSSIstdMeasurementNotPossible, + { "nMRrSSIstdMeasurementNotPossible", "lppe.nMRrSSIstdMeasurementNotPossible", + FT_NONE, BASE_NONE, NULL, 0, + NULL, HFILL }}, + { &hf_lppe_nMRbSTxPowerMeasurementNotPossible, + { "nMRbSTxPowerMeasurementNotPossible", "lppe.nMRbSTxPowerMeasurementNotPossible", + FT_NONE, BASE_NONE, NULL, 0, + NULL, HFILL }}, + { &hf_lppe_nMRcINRMeasurementNotPossible, + { "nMRcINRMeasurementNotPossible", "lppe.nMRcINRMeasurementNotPossible", + FT_NONE, BASE_NONE, NULL, 0, + NULL, HFILL }}, + { &hf_lppe_nMRcINRstdMeasurementNotPossible, + { "nMRcINRstdMeasurementNotPossible", "lppe.nMRcINRstdMeasurementNotPossible", + FT_NONE, BASE_NONE, NULL, 0, + NULL, HFILL }}, + { &hf_lppe_nMRbSLocationNotAvailable, + { "nMRbSLocationNotAvailable", "lppe.nMRbSLocationNotAvailable", + FT_NONE, BASE_NONE, NULL, 0, + NULL, HFILL }}, + { &hf_lppe_motionStateList, + { "motionStateList", "lppe.motionStateList", + FT_UINT32, BASE_DEC, NULL, 0, + "OMA_LPPe_Sensor_MotionStateList", HFILL }}, + { &hf_lppe_sensorError, + { "sensorError", "lppe.sensorError", + FT_UINT32, BASE_DEC, VALS(lppe_OMA_LPPe_Sensor_Error_vals), 0, + "OMA_LPPe_Sensor_Error", HFILL }}, + { &hf_lppe_OMA_LPPe_Sensor_MotionStateList_item, + { "OMA-LPPe-Sensor-MotionStateElement", "lppe.OMA_LPPe_Sensor_MotionStateElement", + FT_NONE, BASE_NONE, NULL, 0, + NULL, HFILL }}, + { &hf_lppe_primaryMotionState, + { "primaryMotionState", "lppe.primaryMotionState", + FT_UINT32, BASE_DEC, VALS(lppe_T_primaryMotionState_vals), 0, + NULL, HFILL }}, + { &hf_lppe_secondaryMotionState, + { "secondaryMotionState", "lppe.secondaryMotionState", + FT_BYTES, BASE_NONE, NULL, 0, + NULL, HFILL }}, + { &hf_lppe_motionStateReq, + { "motionStateReq", "lppe.motionStateReq", + FT_NONE, BASE_NONE, NULL, 0, + "OMA_LPPe_Sensor_MotionStateRequest", HFILL }}, + { &hf_lppe_secondaryMotionStateRequest, + { "secondaryMotionStateRequest", "lppe.secondaryMotionStateRequest", + FT_NONE, BASE_NONE, NULL, 0, + NULL, HFILL }}, + { &hf_lppe_motionStateSupport, + { "motionStateSupport", "lppe.motionStateSupport", + FT_NONE, BASE_NONE, NULL, 0, + NULL, HFILL }}, + { &hf_lppe_secondarySupport, + { "secondarySupport", "lppe.secondarySupport", + FT_NONE, BASE_NONE, NULL, 0, + NULL, HFILL }}, + { &hf_lppe_targetError, + { "targetError", "lppe.targetError", + FT_NONE, BASE_NONE, NULL, 0, + "OMA_LPPe_Sensor_TargetError", HFILL }}, + { &hf_lppe_motionStateError, + { "motionStateError", "lppe.motionStateError", + FT_UINT32, BASE_DEC, VALS(lppe_T_motionStateError_vals), 0, + NULL, HFILL }}, + { &hf_lppe_secondaryMotionStateError, + { "secondaryMotionStateError", "lppe.secondaryMotionStateError", + FT_UINT32, BASE_DEC, VALS(lppe_T_secondaryMotionStateError_vals), 0, + NULL, HFILL }}, + { &hf_lppe_srnGroup, + { "srnGroup", "lppe.srnGroup", + FT_UINT32, BASE_DEC, VALS(lppe_T_srnGroup_vals), 0, + NULL, HFILL }}, + { &hf_lppe_srnGroupList, + { "srnGroupList", "lppe.srnGroupList", + FT_NONE, BASE_NONE, NULL, 0, + "OMA_LPPe_SRN_SRNgroupList", HFILL }}, + { &hf_lppe_srnGroupUpdateResponse, + { "srnGroupUpdateResponse", "lppe.srnGroupUpdateResponse", + FT_UINT32, BASE_DEC, NULL, 0, + "OMA_LPPe_SRN_SRNgroupUpdateResponse", HFILL }}, + { &hf_lppe_antennaPattern, + { "antennaPattern", "lppe.antennaPattern", + FT_UINT32, BASE_DEC, NULL, 0, + "OMA_LPPe_SRN_AntennaPattern", HFILL }}, + { &hf_lppe_srnError, + { "srnError", "lppe.srnError", + FT_UINT32, BASE_DEC, VALS(lppe_OMA_LPPe_SRN_Error_vals), 0, + "OMA_LPPe_SRN_Error", HFILL }}, + { &hf_lppe_incompleteFlag, + { "incompleteFlag", "lppe.incompleteFlag", + FT_BOOLEAN, BASE_NONE, NULL, 0, + "BOOLEAN", HFILL }}, + { &hf_lppe_defaultReferencePoint, + { "defaultReferencePoint", "lppe.defaultReferencePoint", + FT_NONE, BASE_NONE, NULL, 0, + "OMA_LPPe_ReferencePoint", HFILL }}, + { &hf_lppe_groupList, + { "groupList", "lppe.groupList", + FT_UINT32, BASE_DEC, NULL, 0, + "SEQUENCE_SIZE_1_64_OF_OMA_LPPe_SRN_SRNgroup", HFILL }}, + { &hf_lppe_groupList_item, + { "OMA-LPPe-SRN-SRNgroup", "lppe.OMA_LPPe_SRN_SRNgroup", + FT_NONE, BASE_NONE, NULL, 0, + NULL, HFILL }}, + { &hf_lppe_srnGroupID, + { "srnGroupID", "lppe.srnGroupID", + FT_NONE, BASE_NONE, NULL, 0, + "OMA_LPPe_SRN_SRNgroupUniqueID", HFILL }}, + { &hf_lppe_defaultSRNtype, + { "defaultSRNtype", "lppe.defaultSRNtype", + FT_NONE, BASE_NONE, NULL, 0, + "OMA_LPPe_SRN_SRNtype", HFILL }}, + { &hf_lppe_referencePoint_01, + { "referencePoint", "lppe.referencePoint", + FT_NONE, BASE_NONE, NULL, 0, + "OMA_LPPe_ReferencePoint", HFILL }}, + { &hf_lppe_globalOrientation, + { "globalOrientation", "lppe.globalOrientation", + FT_NONE, BASE_NONE, NULL, 0, + NULL, HFILL }}, + { &hf_lppe_srnsInGroupList, + { "srnsInGroupList", "lppe.srnsInGroupList", + FT_UINT32, BASE_DEC, NULL, 0, + "SEQUENCE_SIZE_1_1024_OF_OMA_LPPe_SRN_SRNinfo", HFILL }}, + { &hf_lppe_srnsInGroupList_item, + { "OMA-LPPe-SRN-SRNinfo", "lppe.OMA_LPPe_SRN_SRNinfo", + FT_NONE, BASE_NONE, NULL, 0, + NULL, HFILL }}, + { &hf_lppe_srnID, + { "srnID", "lppe.srnID", + FT_NONE, BASE_NONE, NULL, 0, + "OMA_LPPe_SRN_SRNid", HFILL }}, + { &hf_lppe_srnType, + { "srnType", "lppe.srnType", + FT_NONE, BASE_NONE, NULL, 0, + "OMA_LPPe_SRN_SRNtype", HFILL }}, + { &hf_lppe_relativePosition, + { "relativePosition", "lppe.relativePosition", + FT_NONE, BASE_NONE, NULL, 0, + "OMA_LPPe_RelativeLocation", HFILL }}, + { &hf_lppe_orientation, + { "orientation", "lppe.orientation", + FT_UINT32, BASE_DEC, VALS(lppe_OMA_LPPe_Orientation_vals), 0, + "OMA_LPPe_Orientation", HFILL }}, + { &hf_lppe_OMA_LPPe_SRN_SRNgroupUpdateResponse_item, + { "OMA-LPPe-SRN-SRNgroupUpdateResponseElement", "lppe.OMA_LPPe_SRN_SRNgroupUpdateResponseElement", + FT_NONE, BASE_NONE, NULL, 0, + NULL, HFILL }}, + { &hf_lppe_targetDataValidity, + { "targetDataValidity", "lppe.targetDataValidity", + FT_UINT32, BASE_DEC, VALS(lppe_T_targetDataValidity_vals), 0, + NULL, HFILL }}, + { &hf_lppe_updatedSRNgroup, + { "updatedSRNgroup", "lppe.updatedSRNgroup", + FT_NONE, BASE_NONE, NULL, 0, + "OMA_LPPe_SRN_SRNgroup", HFILL }}, + { &hf_lppe_OMA_LPPe_SRN_AntennaPattern_item, + { "OMA-LPPe-SRN-AntennaPatternElement", "lppe.OMA_LPPe_SRN_AntennaPatternElement", + FT_NONE, BASE_NONE, NULL, 0, + NULL, HFILL }}, + { &hf_lppe_identification, + { "identification", "lppe.identification", + FT_NONE, BASE_NONE, NULL, 0, + NULL, HFILL }}, + { &hf_lppe_vendorOrOperator, + { "vendorOrOperator", "lppe.vendorOrOperator", + FT_UINT32, BASE_DEC, VALS(lppe_OMA_LPPe_VendorOrOperatorID_vals), 0, + "OMA_LPPe_VendorOrOperatorID", HFILL }}, + { &hf_lppe_antennaPatternID, + { "antennaPatternID", "lppe.antennaPatternID", + FT_UINT32, BASE_DEC, NULL, 0, + "INTEGER_0_65535", HFILL }}, + { &hf_lppe_antennaData, + { "antennaData", "lppe.antennaData", + FT_UINT32, BASE_DEC, VALS(lppe_T_antennaData_vals), 0, + NULL, HFILL }}, + { &hf_lppe_antennaPattern_01, + { "antennaPattern", "lppe.antennaPattern", + FT_NONE, BASE_NONE, NULL, 0, + "OMA_LPPe_SRN_AntennaPatternForChannels", HFILL }}, + { &hf_lppe_antennaContainer, + { "antennaContainer", "lppe.antennaContainer", + FT_BYTES, BASE_NONE, NULL, 0, + "OCTET_STRING", HFILL }}, + { &hf_lppe_evenGrid, + { "evenGrid", "lppe.evenGrid", + FT_NONE, BASE_NONE, NULL, 0, + NULL, HFILL }}, + { &hf_lppe_inAzimuth, + { "inAzimuth", "lppe.inAzimuth", + FT_UINT32, BASE_DEC, NULL, 0, + "INTEGER_1_200", HFILL }}, + { &hf_lppe_inElevation, + { "inElevation", "lppe.inElevation", + FT_UINT32, BASE_DEC, NULL, 0, + "INTEGER_1_150", HFILL }}, + { &hf_lppe_patternList, + { "patternList", "lppe.patternList", + FT_UINT32, BASE_DEC, NULL, 0, + "SEQUENCE_SIZE_1_maxChannels_OF_OMA_LPPe_SRN_ChannelResponse", HFILL }}, + { &hf_lppe_patternList_item, + { "OMA-LPPe-SRN-ChannelResponse", "lppe.OMA_LPPe_SRN_ChannelResponse", + FT_NONE, BASE_NONE, NULL, 0, + NULL, HFILL }}, + { &hf_lppe_channelNumber, + { "channelNumber", "lppe.channelNumber", + FT_UINT32, BASE_DEC, NULL, 0, + "INTEGER_1_maxChannels", HFILL }}, + { &hf_lppe_responseInElevation, + { "responseInElevation", "lppe.responseInElevation", + FT_UINT32, BASE_DEC, NULL, 0, + "SEQUENCE_SIZE_7_901_OF_OMA_LPPe_SRN_ResponseInElevation", HFILL }}, + { &hf_lppe_responseInElevation_item, + { "OMA-LPPe-SRN-ResponseInElevation", "lppe.OMA_LPPe_SRN_ResponseInElevation", + FT_NONE, BASE_NONE, NULL, 0, + NULL, HFILL }}, + { &hf_lppe_elevation_01, + { "elevation", "lppe.elevation", + FT_UINT32, BASE_DEC, NULL, 0, + "INTEGER_0_900", HFILL }}, + { &hf_lppe_responseInAzimuth, + { "responseInAzimuth", "lppe.responseInAzimuth", + FT_UINT32, BASE_DEC, NULL, 0, + "SEQUENCE_SIZE_18_3601_OF_OMA_LPPe_SRN_ResponseInAzimuth", HFILL }}, + { &hf_lppe_responseInAzimuth_item, + { "OMA-LPPe-SRN-ResponseInAzimuth", "lppe.OMA_LPPe_SRN_ResponseInAzimuth", + FT_NONE, BASE_NONE, NULL, 0, + NULL, HFILL }}, + { &hf_lppe_azimuth_01, + { "azimuth", "lppe.azimuth", + FT_UINT32, BASE_DEC, NULL, 0, + "INTEGER_0_3599", HFILL }}, + { &hf_lppe_response, + { "response", "lppe.response", + FT_NONE, BASE_NONE, NULL, 0, + "OMA_LPPe_ComplexNumber", HFILL }}, + { &hf_lppe_amplitude, + { "amplitude", "lppe.amplitude", + FT_UINT32, BASE_DEC, NULL, 0, + "INTEGER_0_1000", HFILL }}, + { &hf_lppe_phase, + { "phase", "lppe.phase", + FT_INT32, BASE_DEC, NULL, 0, + "INTEGER_M1800_1799", HFILL }}, + { &hf_lppe_srnGroup_01, + { "srnGroup", "lppe.srnGroup", + FT_UINT32, BASE_DEC, VALS(lppe_T_srnGroup_01_vals), 0, + "T_srnGroup_01", HFILL }}, + { &hf_lppe_srnGroupRequest, + { "srnGroupRequest", "lppe.srnGroupRequest", + FT_NONE, BASE_NONE, NULL, 0, + "OMA_LPPe_SRN_SRNgroupRequest", HFILL }}, + { &hf_lppe_srnGroupUpdateRequest, + { "srnGroupUpdateRequest", "lppe.srnGroupUpdateRequest", + FT_UINT32, BASE_DEC, NULL, 0, + "OMA_LPPe_SRN_SRNgroupUpdateRequest", HFILL }}, + { &hf_lppe_antennaPatternRequest, + { "antennaPatternRequest", "lppe.antennaPatternRequest", + FT_UINT32, BASE_DEC, NULL, 0, + "OMA_LPPe_SRN_AntennaPatternRequest", HFILL }}, + { &hf_lppe_doNotProvideList, + { "doNotProvideList", "lppe.doNotProvideList", + FT_NONE, BASE_NONE, NULL, 0, + "OMA_LPPe_SRN_SRNProvideList", HFILL }}, + { &hf_lppe_doProvideList, + { "doProvideList", "lppe.doProvideList", + FT_NONE, BASE_NONE, NULL, 0, + "OMA_LPPe_SRN_SRNProvideList", HFILL }}, + { &hf_lppe_groupList_01, + { "groupList", "lppe.groupList", + FT_UINT32, BASE_DEC, NULL, 0, + "SEQUENCE_SIZE_1_256_OF_OMA_LPPe_SRN_SRNgroupUniqueID", HFILL }}, + { &hf_lppe_groupList_item_01, + { "OMA-LPPe-SRN-SRNgroupUniqueID", "lppe.OMA_LPPe_SRN_SRNgroupUniqueID", + FT_NONE, BASE_NONE, NULL, 0, + NULL, HFILL }}, + { &hf_lppe_categoryList, + { "categoryList", "lppe.categoryList", + FT_UINT32, BASE_DEC, NULL, 0, + "SEQUENCE_SIZE_1_16_OF_OMA_LPPe_SRN_Category", HFILL }}, + { &hf_lppe_categoryList_item, + { "OMA-LPPe-SRN-Category", "lppe.OMA_LPPe_SRN_Category", + FT_NONE, BASE_NONE, NULL, 0, + NULL, HFILL }}, + { &hf_lppe_OMA_LPPe_SRN_SRNgroupUpdateRequest_item, + { "OMA-LPPe-SRN-SRNgroupUpdateRequestElement", "lppe.OMA_LPPe_SRN_SRNgroupUpdateRequestElement", + FT_NONE, BASE_NONE, NULL, 0, + NULL, HFILL }}, + { &hf_lppe_provideIndicationOnly, + { "provideIndicationOnly", "lppe.provideIndicationOnly", + FT_NONE, BASE_NONE, NULL, 0, + NULL, HFILL }}, + { &hf_lppe_inTheGroup, + { "inTheGroup", "lppe.inTheGroup", + FT_UINT32, BASE_DEC, NULL, 0, + "SEQUENCE_SIZE_1_1024_OF_OMA_LPPe_SRN_SRNid", HFILL }}, + { &hf_lppe_inTheGroup_item, + { "OMA-LPPe-SRN-SRNid", "lppe.OMA_LPPe_SRN_SRNid", + FT_NONE, BASE_NONE, NULL, 0, + NULL, HFILL }}, + { &hf_lppe_OMA_LPPe_SRN_AntennaPatternRequest_item, + { "OMA-LPPe-SRN-AntennaPatternRequestElement", "lppe.OMA_LPPe_SRN_AntennaPatternRequestElement", + FT_NONE, BASE_NONE, NULL, 0, + NULL, HFILL }}, + { &hf_lppe_antennaPatternID_01, + { "antennaPatternID", "lppe.antennaPatternID", + FT_NONE, BASE_NONE, NULL, 0, + NULL, HFILL }}, + { &hf_lppe_srnMeasurementList, + { "srnMeasurementList", "lppe.srnMeasurementList", + FT_UINT32, BASE_DEC, NULL, 0, + "SEQUENCE_SIZE_1_64_OF_OMA_LPPe_SRN_MeasurementElement", HFILL }}, + { &hf_lppe_srnMeasurementList_item, + { "OMA-LPPe-SRN-MeasurementElement", "lppe.OMA_LPPe_SRN_MeasurementElement", + FT_NONE, BASE_NONE, NULL, 0, + NULL, HFILL }}, + { &hf_lppe_srnCategory, + { "srnCategory", "lppe.srnCategory", + FT_NONE, BASE_NONE, NULL, 0, + "OMA_LPPe_SRN_Category", HFILL }}, + { &hf_lppe_measurementList, + { "measurementList", "lppe.measurementList", + FT_UINT32, BASE_DEC, NULL, 0, + "SEQUENCE_SIZE_1_64_OF_OMA_LPPe_SRN_srnMeasurementElement", HFILL }}, + { &hf_lppe_measurementList_item, + { "OMA-LPPe-SRN-srnMeasurementElement", "lppe.OMA_LPPe_SRN_srnMeasurementElement", + FT_NONE, BASE_NONE, NULL, 0, + NULL, HFILL }}, + { &hf_lppe_relativeTimeStamp_01, + { "relativeTimeStamp", "lppe.relativeTimeStamp", + FT_UINT32, BASE_DEC, NULL, 0, + "INTEGER_0_1000", HFILL }}, + { &hf_lppe_rssi, + { "rssi", "lppe.rssi", + FT_INT32, BASE_DEC, NULL, 0, + "INTEGER_M128_127", HFILL }}, + { &hf_lppe_rtd, + { "rtd", "lppe.rtd", + FT_NONE, BASE_NONE, NULL, 0, + "OMA_LPPe_WLAN_RTD", HFILL }}, + { &hf_lppe_requestInfo, + { "requestInfo", "lppe.requestInfo", + FT_UINT32, BASE_DEC, NULL, 0, + "SEQUENCE_SIZE_1_16_OF_OMA_LPPe_SRN_ReqLocInfo_Category", HFILL }}, + { &hf_lppe_requestInfo_item, + { "OMA-LPPe-SRN-ReqLocInfo-Category", "lppe.OMA_LPPe_SRN_ReqLocInfo_Category", + FT_NONE, BASE_NONE, NULL, 0, + NULL, HFILL }}, + { &hf_lppe_category, + { "category", "lppe.category", + FT_NONE, BASE_NONE, NULL, 0, + "OMA_LPPe_SRN_Category", HFILL }}, + { &hf_lppe_multipleMeasurements, + { "multipleMeasurements", "lppe.multipleMeasurements", + FT_UINT32, BASE_DEC, VALS(lppe_T_multipleMeasurements_vals), 0, + NULL, HFILL }}, + { &hf_lppe_allowedMeasurements, + { "allowedMeasurements", "lppe.allowedMeasurements", + FT_NONE, BASE_NONE, NULL, 0, + "OMA_LPPe_SRN_MeasurementMask", HFILL }}, + { &hf_lppe_historicMeasurementsRequested, + { "historicMeasurementsRequested", "lppe.historicMeasurementsRequested", + FT_NONE, BASE_NONE, NULL, 0, + NULL, HFILL }}, + { &hf_lppe_capabilitiesPerSRNCategory, + { "capabilitiesPerSRNCategory", "lppe.capabilitiesPerSRNCategory", + FT_UINT32, BASE_DEC, NULL, 0, + "SEQUENCE_SIZE_1_16_OF_OMA_LPPe_SRN_ProvideCapabilitiesElement", HFILL }}, + { &hf_lppe_capabilitiesPerSRNCategory_item, + { "OMA-LPPe-SRN-ProvideCapabilitiesElement", "lppe.OMA_LPPe_SRN_ProvideCapabilitiesElement", + FT_NONE, BASE_NONE, NULL, 0, + NULL, HFILL }}, + { &hf_lppe_supportedMeasurements, + { "supportedMeasurements", "lppe.supportedMeasurements", + FT_NONE, BASE_NONE, NULL, 0, + "OMA_LPPe_SRN_MeasurementMask", HFILL }}, + { &hf_lppe_supportedAssistanceData, + { "supportedAssistanceData", "lppe.supportedAssistanceData", + FT_BYTES, BASE_NONE, NULL, 0, + NULL, HFILL }}, + { &hf_lppe_historicMeasurementsSupported, + { "historicMeasurementsSupported", "lppe.historicMeasurementsSupported", + FT_NONE, BASE_NONE, NULL, 0, + NULL, HFILL }}, + { &hf_lppe_capabilitiesRequestedFor, + { "capabilitiesRequestedFor", "lppe.capabilitiesRequestedFor", + FT_UINT32, BASE_DEC, NULL, 0, + "SEQUENCE_SIZE_1_16_OF_OMA_LPPe_SRN_Category", HFILL }}, + { &hf_lppe_capabilitiesRequestedFor_item, + { "OMA-LPPe-SRN-Category", "lppe.OMA_LPPe_SRN_Category", + FT_NONE, BASE_NONE, NULL, 0, + NULL, HFILL }}, + { &hf_lppe_srnLocationServerErrorCauses, + { "srnLocationServerErrorCauses", "lppe.srnLocationServerErrorCauses", + FT_NONE, BASE_NONE, NULL, 0, + "OMA_LPPe_SRN_LocationServerErrorCauses", HFILL }}, + { &hf_lppe_srnTargetDeviceErrorCauses, + { "srnTargetDeviceErrorCauses", "lppe.srnTargetDeviceErrorCauses", + FT_NONE, BASE_NONE, NULL, 0, + "OMA_LPPe_SRN_TargetDeviceErrorCauses", HFILL }}, + { &hf_lppe_groupErrors, + { "groupErrors", "lppe.groupErrors", + FT_UINT32, BASE_DEC, VALS(lppe_T_groupErrors_vals), 0, + NULL, HFILL }}, + { &hf_lppe_groupUpdateErrors, + { "groupUpdateErrors", "lppe.groupUpdateErrors", + FT_UINT32, BASE_DEC, VALS(lppe_T_groupUpdateErrors_vals), 0, + NULL, HFILL }}, + { &hf_lppe_srnAntennaErrors, + { "srnAntennaErrors", "lppe.srnAntennaErrors", + FT_UINT32, BASE_DEC, VALS(lppe_T_srnAntennaErrors_vals), 0, + NULL, HFILL }}, + { &hf_lppe_srnErrorsPerCategory, + { "srnErrorsPerCategory", "lppe.srnErrorsPerCategory", + FT_UINT32, BASE_DEC, NULL, 0, + "SEQUENCE_SIZE_1_16_OF_OMA_LPPe_SRN_TargetDeviceError", HFILL }}, + { &hf_lppe_srnErrorsPerCategory_item, + { "OMA-LPPe-SRN-TargetDeviceError", "lppe.OMA_LPPe_SRN_TargetDeviceError", + FT_NONE, BASE_NONE, NULL, 0, + NULL, HFILL }}, + { &hf_lppe_srnErrors, + { "srnErrors", "lppe.srnErrors", + FT_UINT32, BASE_DEC, VALS(lppe_T_srnErrors_vals), 0, + NULL, HFILL }}, + { &hf_lppe_rssiNotAvailable, + { "rssiNotAvailable", "lppe.rssiNotAvailable", + FT_NONE, BASE_NONE, NULL, 0, + NULL, HFILL }}, + { &hf_lppe_rtdNotAvailable, + { "rtdNotAvailable", "lppe.rtdNotAvailable", + FT_NONE, BASE_NONE, NULL, 0, + NULL, HFILL }}, + { &hf_lppe_multipleSetsNotAvailable, + { "multipleSetsNotAvailable", "lppe.multipleSetsNotAvailable", + FT_NONE, BASE_NONE, NULL, 0, + NULL, HFILL }}, + { &hf_lppe_srnDataVersion, + { "srnDataVersion", "lppe.srnDataVersion", + FT_UINT32, BASE_DEC, NULL, 0, + "INTEGER_0_4294967295", HFILL }}, + { &hf_lppe_srnERP, + { "srnERP", "lppe.srnERP", + FT_INT32, BASE_DEC, NULL, 0, + "INTEGER_M300_500", HFILL }}, + { &hf_lppe_srnAntennaInfo, + { "srnAntennaInfo", "lppe.srnAntennaInfo", + FT_NONE, BASE_NONE, NULL, 0, + NULL, HFILL }}, + { &hf_lppe_switchingPatternID, + { "switchingPatternID", "lppe.switchingPatternID", + FT_UINT32, BASE_DEC, NULL, 0, + "INTEGER_0_65535", HFILL }}, + { &hf_lppe_srnTechnologyType, + { "srnTechnologyType", "lppe.srnTechnologyType", + FT_NONE, BASE_NONE, NULL, 0, + "OMA_LPPe_SRN_Technologies", HFILL }}, + { &hf_lppe_srnVendorInformation, + { "srnVendorInformation", "lppe.srnVendorInformation", + FT_NONE, BASE_NONE, NULL, 0, + NULL, HFILL }}, + { &hf_lppe_vendor, + { "vendor", "lppe.vendor", + FT_UINT32, BASE_DEC, VALS(lppe_OMA_LPPe_VendorOrOperatorID_vals), 0, + "OMA_LPPe_VendorOrOperatorID", HFILL }}, + { &hf_lppe_vendorInfo, + { "vendorInfo", "lppe.vendorInfo", + FT_BYTES, BASE_NONE, NULL, 0, + "OCTET_STRING", HFILL }}, + { &hf_lppe_srn_id, + { "srn-id", "lppe.srn_id", + FT_UINT32, BASE_DEC, VALS(lppe_T_srn_id_vals), 0, + NULL, HFILL }}, + { &hf_lppe_mac, + { "mac", "lppe.mac", + FT_BYTES, BASE_NONE, NULL, 0, + "BIT_STRING_SIZE_48", HFILL }}, + { &hf_lppe_nfc, + { "nfc", "lppe.nfc", + FT_NONE, BASE_NONE, NULL, 0, + NULL, HFILL }}, + { &hf_lppe_manufacturer, + { "manufacturer", "lppe.manufacturer", + FT_BYTES, BASE_NONE, NULL, 0, + "BIT_STRING_SIZE_8", HFILL }}, + { &hf_lppe_uniqueNumber, + { "uniqueNumber", "lppe.uniqueNumber", + FT_BYTES, BASE_NONE, NULL, 0, + "BIT_STRING_SIZE_48", HFILL }}, + { &hf_lppe_mobileCode, + { "mobileCode", "lppe.mobileCode", + FT_NONE, BASE_NONE, NULL, 0, + NULL, HFILL }}, + { &hf_lppe_registryID, + { "registryID", "lppe.registryID", + FT_BYTES, BASE_NONE, NULL, 0, + "BIT_STRING_SIZE_12", HFILL }}, + { &hf_lppe_remainingPart, + { "remainingPart", "lppe.remainingPart", + FT_BYTES, BASE_NONE, NULL, 0, + "OCTET_STRING_SIZE_1_1", HFILL }}, + { &hf_lppe_resolutionIdentifier, + { "resolutionIdentifier", "lppe.resolutionIdentifier", + FT_BYTES, BASE_NONE, NULL, 0, + "OCTET_STRING_SIZE_1_18", HFILL }}, + { &hf_lppe_other, + { "other", "lppe.other", + FT_BYTES, BASE_NONE, NULL, 0, + "OCTET_STRING", HFILL }}, + { &hf_lppe_srnTechnologies, + { "srnTechnologies", "lppe.srnTechnologies", + FT_UINT32, BASE_DEC, VALS(lppe_T_srnTechnologies_vals), 0, + NULL, HFILL }}, + { &hf_lppe_srnMeasurements, + { "srnMeasurements", "lppe.srnMeasurements", + FT_BYTES, BASE_NONE, NULL, 0, + NULL, HFILL }}, + { &hf_lppe_OMA_LPPe_FixedAccessTypes_cable, + { "cable", "lppe.cable", + FT_BOOLEAN, 8, NULL, 0x80, + NULL, HFILL }}, + { &hf_lppe_OMA_LPPe_FixedAccessTypes_dsl, + { "dsl", "lppe.dsl", + FT_BOOLEAN, 8, NULL, 0x40, + NULL, HFILL }}, + { &hf_lppe_OMA_LPPe_FixedAccessTypes_lan, + { "lan", "lppe.lan", + FT_BOOLEAN, 8, NULL, 0x20, + NULL, HFILL }}, + { &hf_lppe_OMA_LPPe_FixedAccessTypes_pstn, + { "pstn", "lppe.pstn", + FT_BOOLEAN, 8, NULL, 0x10, + NULL, HFILL }}, + { &hf_lppe_OMA_LPPe_FixedAccessTypes_other, + { "other", "lppe.other", + FT_BOOLEAN, 8, NULL, 0x08, + NULL, HFILL }}, + { &hf_lppe_OMA_LPPe_WirelessAccessTypes_gsm, + { "gsm", "lppe.gsm", + FT_BOOLEAN, 8, NULL, 0x80, + NULL, HFILL }}, + { &hf_lppe_OMA_LPPe_WirelessAccessTypes_utra, + { "utra", "lppe.utra", + FT_BOOLEAN, 8, NULL, 0x40, + NULL, HFILL }}, + { &hf_lppe_OMA_LPPe_WirelessAccessTypes_lte, + { "lte", "lppe.lte", + FT_BOOLEAN, 8, NULL, 0x20, + NULL, HFILL }}, + { &hf_lppe_OMA_LPPe_WirelessAccessTypes_wimax, + { "wimax", "lppe.wimax", + FT_BOOLEAN, 8, NULL, 0x10, + NULL, HFILL }}, + { &hf_lppe_OMA_LPPe_WirelessAccessTypes_wifi, + { "wifi", "lppe.wifi", + FT_BOOLEAN, 8, NULL, 0x08, + NULL, HFILL }}, + { &hf_lppe_OMA_LPPe_WirelessAccessTypes_other, + { "other", "lppe.other", + FT_BOOLEAN, 8, NULL, 0x04, + NULL, HFILL }}, + { &hf_lppe_OMA_LPPe_WLAN_AP_Type_List_ieee802_11a, + { "ieee802-11a", "lppe.ieee802-11a", + FT_BOOLEAN, 8, NULL, 0x80, + NULL, HFILL }}, + { &hf_lppe_OMA_LPPe_WLAN_AP_Type_List_ieee802_11b, + { "ieee802-11b", "lppe.ieee802-11b", + FT_BOOLEAN, 8, NULL, 0x40, + NULL, HFILL }}, + { &hf_lppe_OMA_LPPe_WLAN_AP_Type_List_ieee802_11g, + { "ieee802-11g", "lppe.ieee802-11g", + FT_BOOLEAN, 8, NULL, 0x20, + NULL, HFILL }}, + { &hf_lppe_OMA_LPPe_WLAN_AP_Type_List_ieee802_11n, + { "ieee802-11n", "lppe.ieee802-11n", + FT_BOOLEAN, 8, NULL, 0x10, + NULL, HFILL }}, + { &hf_lppe_T_iP_Address_support_iPv4, + { "iPv4", "lppe.iPv4", + FT_BOOLEAN, 8, NULL, 0x80, + NULL, HFILL }}, + { &hf_lppe_T_iP_Address_support_iPv6, + { "iPv6", "lppe.iPv6", + FT_BOOLEAN, 8, NULL, 0x40, + NULL, HFILL }}, + { &hf_lppe_T_iP_Address_support_nat, + { "nat", "lppe.nat", + FT_BOOLEAN, 8, NULL, 0x20, + NULL, HFILL }}, + { &hf_lppe_OMA_LPPe_HighAccuracyFormatCapabilities_hAposition, + { "hAposition", "lppe.hAposition", + FT_BOOLEAN, 8, NULL, 0x80, + NULL, HFILL }}, + { &hf_lppe_OMA_LPPe_HighAccuracyFormatCapabilities_hAvelocity, + { "hAvelocity", "lppe.hAvelocity", + FT_BOOLEAN, 8, NULL, 0x40, + NULL, HFILL }}, + { &hf_lppe_T_relativeLocationReportingSupport_geo, + { "geo", "lppe.geo", + FT_BOOLEAN, 8, NULL, 0x80, + NULL, HFILL }}, + { &hf_lppe_T_relativeLocationReportingSupport_civic, + { "civic", "lppe.civic", + FT_BOOLEAN, 8, NULL, 0x40, + NULL, HFILL }}, + { &hf_lppe_T_relativeLocationReportingSupport_otherProviders, + { "otherProviders", "lppe.otherProviders", + FT_BOOLEAN, 8, NULL, 0x20, + NULL, HFILL }}, + { &hf_lppe_T_ionoreq_klobucharModel, + { "klobucharModel", "lppe.klobucharModel", + FT_BOOLEAN, 8, NULL, 0x80, + NULL, HFILL }}, + { &hf_lppe_T_ionoreq_ionoStormWarning, + { "ionoStormWarning", "lppe.ionoStormWarning", + FT_BOOLEAN, 8, NULL, 0x40, + NULL, HFILL }}, + { &hf_lppe_T_troposphereModelReq_delay, + { "delay", "lppe.delay", + FT_BOOLEAN, 8, NULL, 0x80, + NULL, HFILL }}, + { &hf_lppe_T_troposphereModelReq_surface, + { "surface", "lppe.surface", + FT_BOOLEAN, 8, NULL, 0x40, + NULL, HFILL }}, + { &hf_lppe_T_ionosphereMeasurementsReq_tecPerSV, + { "tecPerSV", "lppe.tecPerSV", + FT_BOOLEAN, 8, NULL, 0x80, + NULL, HFILL }}, + { &hf_lppe_T_ionosphereMeasurementsReq_zenithTEC, + { "zenithTEC", "lppe.zenithTEC", + FT_BOOLEAN, 8, NULL, 0x40, + NULL, HFILL }}, + { &hf_lppe_T_ionosphereMeasurementSupport_tecPerSVsupport, + { "tecPerSVsupport", "lppe.tecPerSVsupport", + FT_BOOLEAN, 8, NULL, 0x80, + NULL, HFILL }}, + { &hf_lppe_T_ionosphereMeasurementSupport_zenithTecSupport, + { "zenithTecSupport", "lppe.zenithTecSupport", + FT_BOOLEAN, 8, NULL, 0x40, + NULL, HFILL }}, + { &hf_lppe_T_ionoModel_localKlobuchar, + { "localKlobuchar", "lppe.localKlobuchar", + FT_BOOLEAN, 8, NULL, 0x80, + NULL, HFILL }}, + { &hf_lppe_T_ionoModel_ionoStormWarning, + { "ionoStormWarning", "lppe.ionoStormWarning", + FT_BOOLEAN, 8, NULL, 0x40, + NULL, HFILL }}, + { &hf_lppe_T_ionoModel_wideAreaIonoSurface, + { "wideAreaIonoSurface", "lppe.wideAreaIonoSurface", + FT_BOOLEAN, 8, NULL, 0x20, + NULL, HFILL }}, + { &hf_lppe_T_tropoModel_localTroposphereDelay, + { "localTroposphereDelay", "lppe.localTroposphereDelay", + FT_BOOLEAN, 8, NULL, 0x80, + NULL, HFILL }}, + { &hf_lppe_T_tropoModel_surfaceParameters, + { "surfaceParameters", "lppe.surfaceParameters", + FT_BOOLEAN, 8, NULL, 0x40, + NULL, HFILL }}, + { &hf_lppe_T_modeSupport_ueBased, + { "ueBased", "lppe.ueBased", + FT_BOOLEAN, 8, NULL, 0x80, + NULL, HFILL }}, + { &hf_lppe_T_modeSupport_ueAssisted, + { "ueAssisted", "lppe.ueAssisted", + FT_BOOLEAN, 8, NULL, 0x40, + NULL, HFILL }}, + { &hf_lppe_T_haGNSSantennaInformationSupport_antennaDescriptionSupported, + { "antennaDescriptionSupported", "lppe.antennaDescriptionSupported", + FT_BOOLEAN, 8, NULL, 0x80, + NULL, HFILL }}, + { &hf_lppe_T_haGNSSantennaInformationSupport_antennaOrientationSupported, + { "antennaOrientationSupported", "lppe.antennaOrientationSupported", + FT_BOOLEAN, 8, NULL, 0x40, + NULL, HFILL }}, + { &hf_lppe_T_requestedCells_eNBs, + { "eNBs", "lppe.eNBs", + FT_BOOLEAN, 8, NULL, 0x80, + NULL, HFILL }}, + { &hf_lppe_T_requestedCells_heNBs, + { "heNBs", "lppe.heNBs", + FT_BOOLEAN, 8, NULL, 0x40, + NULL, HFILL }}, + { &hf_lppe_T_eotdAssistanceReq_ueAssisted, + { "ueAssisted", "lppe.ueAssisted", + FT_BOOLEAN, 8, NULL, 0x80, + NULL, HFILL }}, + { &hf_lppe_T_eotdAssistanceReq_ueBased, + { "ueBased", "lppe.ueBased", + FT_BOOLEAN, 8, NULL, 0x40, + NULL, HFILL }}, + { &hf_lppe_T_eotdSupport_ueBased, + { "ueBased", "lppe.ueBased", + FT_BOOLEAN, 8, NULL, 0x80, + NULL, HFILL }}, + { &hf_lppe_T_eotdSupport_ueAssisted, + { "ueAssisted", "lppe.ueAssisted", + FT_BOOLEAN, 8, NULL, 0x40, + NULL, HFILL }}, + { &hf_lppe_T_otdoaUtraAssistanceReq_ueAssisted, + { "ueAssisted", "lppe.ueAssisted", + FT_BOOLEAN, 8, NULL, 0x80, + NULL, HFILL }}, + { &hf_lppe_T_otdoaUtraAssistanceReq_ueBased, + { "ueBased", "lppe.ueBased", + FT_BOOLEAN, 8, NULL, 0x40, + NULL, HFILL }}, + { &hf_lppe_T_eNBrequestedAD_bslist, + { "bslist", "lppe.bslist", + FT_BOOLEAN, 8, NULL, 0x80, + NULL, HFILL }}, + { &hf_lppe_T_eNBrequestedAD_bslocation, + { "bslocation", "lppe.bslocation", + FT_BOOLEAN, 8, NULL, 0x40, + NULL, HFILL }}, + { &hf_lppe_T_eNBrequestedAD_transmit_power, + { "transmit-power", "lppe.transmit-power", + FT_BOOLEAN, 8, NULL, 0x20, + NULL, HFILL }}, + { &hf_lppe_T_eNBrequestedAD_antennaPortConfig, + { "antennaPortConfig", "lppe.antennaPortConfig", + FT_BOOLEAN, 8, NULL, 0x10, + NULL, HFILL }}, + { &hf_lppe_T_eNBrequestedAD_antenna_gain, + { "antenna-gain", "lppe.antenna-gain", + FT_BOOLEAN, 8, NULL, 0x08, + NULL, HFILL }}, + { &hf_lppe_T_eNBrequestedAD_beam_width, + { "beam-width", "lppe.beam-width", + FT_BOOLEAN, 8, NULL, 0x04, + NULL, HFILL }}, + { &hf_lppe_T_eNBrequestedAD_transmit_direction, + { "transmit-direction", "lppe.transmit-direction", + FT_BOOLEAN, 8, NULL, 0x02, + NULL, HFILL }}, + { &hf_lppe_T_eNBrequestedAD_frequency_accuracy, + { "frequency-accuracy", "lppe.frequency-accuracy", + FT_BOOLEAN, 8, NULL, 0x01, + NULL, HFILL }}, + { &hf_lppe_T_eNBrequestedAD_non_serving, + { "non-serving", "lppe.non-serving", + FT_BOOLEAN, 8, NULL, 0x80, + NULL, HFILL }}, + { &hf_lppe_T_heNBrequestedAD_bslist, + { "bslist", "lppe.bslist", + FT_BOOLEAN, 8, NULL, 0x80, + NULL, HFILL }}, + { &hf_lppe_T_heNBrequestedAD_bslocation, + { "bslocation", "lppe.bslocation", + FT_BOOLEAN, 8, NULL, 0x40, + NULL, HFILL }}, + { &hf_lppe_T_heNBrequestedAD_locationreliability, + { "locationreliability", "lppe.locationreliability", + FT_BOOLEAN, 8, NULL, 0x20, + NULL, HFILL }}, + { &hf_lppe_T_heNBrequestedAD_transmit_power, + { "transmit-power", "lppe.transmit-power", + FT_BOOLEAN, 8, NULL, 0x10, + NULL, HFILL }}, + { &hf_lppe_T_heNBrequestedAD_antennaPortConfig, + { "antennaPortConfig", "lppe.antennaPortConfig", + FT_BOOLEAN, 8, NULL, 0x08, + NULL, HFILL }}, + { &hf_lppe_T_heNBrequestedAD_frequency_accuracy, + { "frequency-accuracy", "lppe.frequency-accuracy", + FT_BOOLEAN, 8, NULL, 0x04, + NULL, HFILL }}, + { &hf_lppe_T_heNBrequestedAD_coveragearea, + { "coveragearea", "lppe.coveragearea", + FT_BOOLEAN, 8, NULL, 0x02, + NULL, HFILL }}, + { &hf_lppe_T_heNBrequestedAD_non_serving, + { "non-serving", "lppe.non-serving", + FT_BOOLEAN, 8, NULL, 0x01, + NULL, HFILL }}, + { &hf_lppe_T_requestedMeasurements_rsrp, + { "rsrp", "lppe.rsrp", + FT_BOOLEAN, 8, NULL, 0x80, + NULL, HFILL }}, + { &hf_lppe_T_requestedMeasurements_rsrq, + { "rsrq", "lppe.rsrq", + FT_BOOLEAN, 8, NULL, 0x40, + NULL, HFILL }}, + { &hf_lppe_T_requestedMeasurements_ueRxTx, + { "ueRxTx", "lppe.ueRxTx", + FT_BOOLEAN, 8, NULL, 0x20, + NULL, HFILL }}, + { &hf_lppe_T_requestedMeasurements_non_serving, + { "non-serving", "lppe.non-serving", + FT_BOOLEAN, 8, NULL, 0x10, + NULL, HFILL }}, + { &hf_lppe_T_requestedMeasurements_historic, + { "historic", "lppe.historic", + FT_BOOLEAN, 8, NULL, 0x08, + NULL, HFILL }}, + { &hf_lppe_T_ecid_lte_MeasSupported_rsrp, + { "rsrp", "lppe.rsrp", + FT_BOOLEAN, 8, NULL, 0x80, + NULL, HFILL }}, + { &hf_lppe_T_ecid_lte_MeasSupported_rsrq, + { "rsrq", "lppe.rsrq", + FT_BOOLEAN, 8, NULL, 0x40, + NULL, HFILL }}, + { &hf_lppe_T_ecid_lte_MeasSupported_ueRxTx, + { "ueRxTx", "lppe.ueRxTx", + FT_BOOLEAN, 8, NULL, 0x20, + NULL, HFILL }}, + { &hf_lppe_T_ecid_lte_MeasSupported_non_serving, + { "non-serving", "lppe.non-serving", + FT_BOOLEAN, 8, NULL, 0x10, + NULL, HFILL }}, + { &hf_lppe_T_ecid_lte_MeasSupported_historic, + { "historic", "lppe.historic", + FT_BOOLEAN, 8, NULL, 0x08, + NULL, HFILL }}, + { &hf_lppe_T_ecid_lte_eNodeB_ADSupported_bslist, + { "bslist", "lppe.bslist", + FT_BOOLEAN, 8, NULL, 0x80, + NULL, HFILL }}, + { &hf_lppe_T_ecid_lte_eNodeB_ADSupported_bslocation, + { "bslocation", "lppe.bslocation", + FT_BOOLEAN, 8, NULL, 0x40, + NULL, HFILL }}, + { &hf_lppe_T_ecid_lte_eNodeB_ADSupported_transmit_power, + { "transmit-power", "lppe.transmit-power", + FT_BOOLEAN, 8, NULL, 0x20, + NULL, HFILL }}, + { &hf_lppe_T_ecid_lte_eNodeB_ADSupported_antennaPortConfig, + { "antennaPortConfig", "lppe.antennaPortConfig", + FT_BOOLEAN, 8, NULL, 0x10, + NULL, HFILL }}, + { &hf_lppe_T_ecid_lte_eNodeB_ADSupported_antenna_gain, + { "antenna-gain", "lppe.antenna-gain", + FT_BOOLEAN, 8, NULL, 0x08, + NULL, HFILL }}, + { &hf_lppe_T_ecid_lte_eNodeB_ADSupported_beam_width, + { "beam-width", "lppe.beam-width", + FT_BOOLEAN, 8, NULL, 0x04, + NULL, HFILL }}, + { &hf_lppe_T_ecid_lte_eNodeB_ADSupported_transmit_direction, + { "transmit-direction", "lppe.transmit-direction", + FT_BOOLEAN, 8, NULL, 0x02, + NULL, HFILL }}, + { &hf_lppe_T_ecid_lte_eNodeB_ADSupported_frequency_accuracy, + { "frequency-accuracy", "lppe.frequency-accuracy", + FT_BOOLEAN, 8, NULL, 0x01, + NULL, HFILL }}, + { &hf_lppe_T_ecid_lte_eNodeB_ADSupported_non_serving, + { "non-serving", "lppe.non-serving", + FT_BOOLEAN, 8, NULL, 0x80, + NULL, HFILL }}, + { &hf_lppe_T_ecid_utra_HeNB_ADSupported_bslist, + { "bslist", "lppe.bslist", + FT_BOOLEAN, 8, NULL, 0x80, + NULL, HFILL }}, + { &hf_lppe_T_ecid_utra_HeNB_ADSupported_bslocation, + { "bslocation", "lppe.bslocation", + FT_BOOLEAN, 8, NULL, 0x40, + NULL, HFILL }}, + { &hf_lppe_T_ecid_utra_HeNB_ADSupported_locationreliability, + { "locationreliability", "lppe.locationreliability", + FT_BOOLEAN, 8, NULL, 0x20, + NULL, HFILL }}, + { &hf_lppe_T_ecid_utra_HeNB_ADSupported_transmit_power, + { "transmit-power", "lppe.transmit-power", + FT_BOOLEAN, 8, NULL, 0x10, + NULL, HFILL }}, + { &hf_lppe_T_ecid_utra_HeNB_ADSupported_antennaPortConfig, + { "antennaPortConfig", "lppe.antennaPortConfig", + FT_BOOLEAN, 8, NULL, 0x08, + NULL, HFILL }}, + { &hf_lppe_T_ecid_utra_HeNB_ADSupported_frequency_accuracy, + { "frequency-accuracy", "lppe.frequency-accuracy", + FT_BOOLEAN, 8, NULL, 0x04, + NULL, HFILL }}, + { &hf_lppe_T_ecid_utra_HeNB_ADSupported_coveragearea, + { "coveragearea", "lppe.coveragearea", + FT_BOOLEAN, 8, NULL, 0x02, + NULL, HFILL }}, + { &hf_lppe_T_ecid_utra_HeNB_ADSupported_non_serving, + { "non-serving", "lppe.non-serving", + FT_BOOLEAN, 8, NULL, 0x01, + NULL, HFILL }}, + { &hf_lppe_T_requestedAD_bslist, + { "bslist", "lppe.bslist", + FT_BOOLEAN, 8, NULL, 0x80, + NULL, HFILL }}, + { &hf_lppe_T_requestedAD_bslocation, + { "bslocation", "lppe.bslocation", + FT_BOOLEAN, 8, NULL, 0x40, + NULL, HFILL }}, + { &hf_lppe_T_requestedAD_transmit_power, + { "transmit-power", "lppe.transmit-power", + FT_BOOLEAN, 8, NULL, 0x20, + NULL, HFILL }}, + { &hf_lppe_T_requestedAD_antenna_gain, + { "antenna-gain", "lppe.antenna-gain", + FT_BOOLEAN, 8, NULL, 0x10, + NULL, HFILL }}, + { &hf_lppe_T_requestedAD_beam_width, + { "beam-width", "lppe.beam-width", + FT_BOOLEAN, 8, NULL, 0x08, + NULL, HFILL }}, + { &hf_lppe_T_requestedAD_transmit_direction, + { "transmit-direction", "lppe.transmit-direction", + FT_BOOLEAN, 8, NULL, 0x04, + NULL, HFILL }}, + { &hf_lppe_T_requestedAD_frequency_accuracy, + { "frequency-accuracy", "lppe.frequency-accuracy", + FT_BOOLEAN, 8, NULL, 0x02, + NULL, HFILL }}, + { &hf_lppe_T_requestedAD_non_serving, + { "non-serving", "lppe.non-serving", + FT_BOOLEAN, 8, NULL, 0x01, + NULL, HFILL }}, + { &hf_lppe_T_requestedMeasurements_01_rxLevel, + { "rxLevel", "lppe.rxLevel", + FT_BOOLEAN, 8, NULL, 0x80, + NULL, HFILL }}, + { &hf_lppe_T_requestedMeasurements_01_tA, + { "tA", "lppe.tA", + FT_BOOLEAN, 8, NULL, 0x40, + NULL, HFILL }}, + { &hf_lppe_T_requestedMeasurements_01_nMR_GERAN, + { "nMR-GERAN", "lppe.nMR-GERAN", + FT_BOOLEAN, 8, NULL, 0x20, + NULL, HFILL }}, + { &hf_lppe_T_requestedMeasurements_01_non_serving, + { "non-serving", "lppe.non-serving", + FT_BOOLEAN, 8, NULL, 0x10, + NULL, HFILL }}, + { &hf_lppe_T_requestedMeasurements_01_historic, + { "historic", "lppe.historic", + FT_BOOLEAN, 8, NULL, 0x08, + NULL, HFILL }}, + { &hf_lppe_T_ecid_gsm_MeasSupported_rxLevel, + { "rxLevel", "lppe.rxLevel", + FT_BOOLEAN, 8, NULL, 0x80, + NULL, HFILL }}, + { &hf_lppe_T_ecid_gsm_MeasSupported_tA, + { "tA", "lppe.tA", + FT_BOOLEAN, 8, NULL, 0x40, + NULL, HFILL }}, + { &hf_lppe_T_ecid_gsm_MeasSupported_nMR_GERAN, + { "nMR-GERAN", "lppe.nMR-GERAN", + FT_BOOLEAN, 8, NULL, 0x20, + NULL, HFILL }}, + { &hf_lppe_T_ecid_gsm_MeasSupported_non_serving, + { "non-serving", "lppe.non-serving", + FT_BOOLEAN, 8, NULL, 0x10, + NULL, HFILL }}, + { &hf_lppe_T_ecid_gsm_MeasSupported_historic, + { "historic", "lppe.historic", + FT_BOOLEAN, 8, NULL, 0x08, + NULL, HFILL }}, + { &hf_lppe_T_ecid_gsm_ADSupported_bslist, + { "bslist", "lppe.bslist", + FT_BOOLEAN, 8, NULL, 0x80, + NULL, HFILL }}, + { &hf_lppe_T_ecid_gsm_ADSupported_bslocation, + { "bslocation", "lppe.bslocation", + FT_BOOLEAN, 8, NULL, 0x40, + NULL, HFILL }}, + { &hf_lppe_T_ecid_gsm_ADSupported_transmit_power, + { "transmit-power", "lppe.transmit-power", + FT_BOOLEAN, 8, NULL, 0x20, + NULL, HFILL }}, + { &hf_lppe_T_ecid_gsm_ADSupported_antenna_gain, + { "antenna-gain", "lppe.antenna-gain", + FT_BOOLEAN, 8, NULL, 0x10, + NULL, HFILL }}, + { &hf_lppe_T_ecid_gsm_ADSupported_beam_width, + { "beam-width", "lppe.beam-width", + FT_BOOLEAN, 8, NULL, 0x08, + NULL, HFILL }}, + { &hf_lppe_T_ecid_gsm_ADSupported_transmit_direction, + { "transmit-direction", "lppe.transmit-direction", + FT_BOOLEAN, 8, NULL, 0x04, + NULL, HFILL }}, + { &hf_lppe_T_ecid_gsm_ADSupported_frequency_accuracy, + { "frequency-accuracy", "lppe.frequency-accuracy", + FT_BOOLEAN, 8, NULL, 0x02, + NULL, HFILL }}, + { &hf_lppe_T_ecid_gsm_ADSupported_non_serving, + { "non-serving", "lppe.non-serving", + FT_BOOLEAN, 8, NULL, 0x01, + NULL, HFILL }}, + { &hf_lppe_T_nBrequestedAD_bslist, + { "bslist", "lppe.bslist", + FT_BOOLEAN, 8, NULL, 0x80, + NULL, HFILL }}, + { &hf_lppe_T_nBrequestedAD_bslocation, + { "bslocation", "lppe.bslocation", + FT_BOOLEAN, 8, NULL, 0x40, + NULL, HFILL }}, + { &hf_lppe_T_nBrequestedAD_transmit_power, + { "transmit-power", "lppe.transmit-power", + FT_BOOLEAN, 8, NULL, 0x20, + NULL, HFILL }}, + { &hf_lppe_T_nBrequestedAD_antenna_gain, + { "antenna-gain", "lppe.antenna-gain", + FT_BOOLEAN, 8, NULL, 0x10, + NULL, HFILL }}, + { &hf_lppe_T_nBrequestedAD_beam_width, + { "beam-width", "lppe.beam-width", + FT_BOOLEAN, 8, NULL, 0x08, + NULL, HFILL }}, + { &hf_lppe_T_nBrequestedAD_transmit_direction, + { "transmit-direction", "lppe.transmit-direction", + FT_BOOLEAN, 8, NULL, 0x04, + NULL, HFILL }}, + { &hf_lppe_T_nBrequestedAD_frequency_accuracy, + { "frequency-accuracy", "lppe.frequency-accuracy", + FT_BOOLEAN, 8, NULL, 0x02, + NULL, HFILL }}, + { &hf_lppe_T_nBrequestedAD_non_serving, + { "non-serving", "lppe.non-serving", + FT_BOOLEAN, 8, NULL, 0x01, + NULL, HFILL }}, + { &hf_lppe_T_hNBrequestedAD_bslist, + { "bslist", "lppe.bslist", + FT_BOOLEAN, 8, NULL, 0x80, + NULL, HFILL }}, + { &hf_lppe_T_hNBrequestedAD_bslocation, + { "bslocation", "lppe.bslocation", + FT_BOOLEAN, 8, NULL, 0x40, + NULL, HFILL }}, + { &hf_lppe_T_hNBrequestedAD_locationreliability, + { "locationreliability", "lppe.locationreliability", + FT_BOOLEAN, 8, NULL, 0x20, + NULL, HFILL }}, + { &hf_lppe_T_hNBrequestedAD_transmit_power, + { "transmit-power", "lppe.transmit-power", + FT_BOOLEAN, 8, NULL, 0x10, + NULL, HFILL }}, + { &hf_lppe_T_hNBrequestedAD_frequency_accuracy, + { "frequency-accuracy", "lppe.frequency-accuracy", + FT_BOOLEAN, 8, NULL, 0x08, + NULL, HFILL }}, + { &hf_lppe_T_hNBrequestedAD_coveragearea, + { "coveragearea", "lppe.coveragearea", + FT_BOOLEAN, 8, NULL, 0x04, + NULL, HFILL }}, + { &hf_lppe_T_hNBrequestedAD_non_serving, + { "non-serving", "lppe.non-serving", + FT_BOOLEAN, 8, NULL, 0x02, + NULL, HFILL }}, + { &hf_lppe_T_requestedMeasurements_02_measuredResultsList, + { "measuredResultsList", "lppe.measuredResultsList", + FT_BOOLEAN, 8, NULL, 0x80, + NULL, HFILL }}, + { &hf_lppe_T_requestedMeasurements_02_tdd_timingAdvance, + { "tdd-timingAdvance", "lppe.tdd-timingAdvance", + FT_BOOLEAN, 8, NULL, 0x40, + NULL, HFILL }}, + { &hf_lppe_T_requestedMeasurements_02_mRL_utra_CarrierRSSI, + { "mRL-utra-CarrierRSSI", "lppe.mRL-utra-CarrierRSSI", + FT_BOOLEAN, 8, NULL, 0x20, + NULL, HFILL }}, + { &hf_lppe_T_requestedMeasurements_02_mRL_FDD_cpich_Ec_N0, + { "mRL-FDD-cpich-Ec-N0", "lppe.mRL-FDD-cpich-Ec-N0", + FT_BOOLEAN, 8, NULL, 0x10, + NULL, HFILL }}, + { &hf_lppe_T_requestedMeasurements_02_mRL_FDD_cpich_RSCP, + { "mRL-FDD-cpich-RSCP", "lppe.mRL-FDD-cpich-RSCP", + FT_BOOLEAN, 8, NULL, 0x08, + NULL, HFILL }}, + { &hf_lppe_T_requestedMeasurements_02_mRL_FDD_pathloss, + { "mRL-FDD-pathloss", "lppe.mRL-FDD-pathloss", + FT_BOOLEAN, 8, NULL, 0x04, + NULL, HFILL }}, + { &hf_lppe_T_requestedMeasurements_02_mRL_TDD_primaryCCPCH_RSCP, + { "mRL-TDD-primaryCCPCH-RSCP", "lppe.mRL-TDD-primaryCCPCH-RSCP", + FT_BOOLEAN, 8, NULL, 0x02, + NULL, HFILL }}, + { &hf_lppe_T_requestedMeasurements_02_mRL_TDD_pathloss, + { "mRL-TDD-pathloss", "lppe.mRL-TDD-pathloss", + FT_BOOLEAN, 8, NULL, 0x01, + NULL, HFILL }}, + { &hf_lppe_T_requestedMeasurements_02_non_serving, + { "non-serving", "lppe.non-serving", + FT_BOOLEAN, 8, NULL, 0x80, + NULL, HFILL }}, + { &hf_lppe_T_requestedMeasurements_02_historic, + { "historic", "lppe.historic", + FT_BOOLEAN, 8, NULL, 0x40, + NULL, HFILL }}, + { &hf_lppe_T_ecid_utra_MeasSupported_measuredResultsList, + { "measuredResultsList", "lppe.measuredResultsList", + FT_BOOLEAN, 8, NULL, 0x80, + NULL, HFILL }}, + { &hf_lppe_T_ecid_utra_MeasSupported_tdd_timingAdvance, + { "tdd-timingAdvance", "lppe.tdd-timingAdvance", + FT_BOOLEAN, 8, NULL, 0x40, + NULL, HFILL }}, + { &hf_lppe_T_ecid_utra_MeasSupported_mRL_utra_CarrierRSSI, + { "mRL-utra-CarrierRSSI", "lppe.mRL-utra-CarrierRSSI", + FT_BOOLEAN, 8, NULL, 0x20, + NULL, HFILL }}, + { &hf_lppe_T_ecid_utra_MeasSupported_mRL_FDD_cpich_Ec_N0, + { "mRL-FDD-cpich-Ec-N0", "lppe.mRL-FDD-cpich-Ec-N0", + FT_BOOLEAN, 8, NULL, 0x10, + NULL, HFILL }}, + { &hf_lppe_T_ecid_utra_MeasSupported_mRL_FDD_cpich_RSCP, + { "mRL-FDD-cpich-RSCP", "lppe.mRL-FDD-cpich-RSCP", + FT_BOOLEAN, 8, NULL, 0x08, + NULL, HFILL }}, + { &hf_lppe_T_ecid_utra_MeasSupported_mRL_FDD_pathloss, + { "mRL-FDD-pathloss", "lppe.mRL-FDD-pathloss", + FT_BOOLEAN, 8, NULL, 0x04, + NULL, HFILL }}, + { &hf_lppe_T_ecid_utra_MeasSupported_mRL_TDD_primaryCCPCH_RSCP, + { "mRL-TDD-primaryCCPCH-RSCP", "lppe.mRL-TDD-primaryCCPCH-RSCP", + FT_BOOLEAN, 8, NULL, 0x02, + NULL, HFILL }}, + { &hf_lppe_T_ecid_utra_MeasSupported_mRL_TDD_pathloss, + { "mRL-TDD-pathloss", "lppe.mRL-TDD-pathloss", + FT_BOOLEAN, 8, NULL, 0x01, + NULL, HFILL }}, + { &hf_lppe_T_ecid_utra_MeasSupported_non_serving, + { "non-serving", "lppe.non-serving", + FT_BOOLEAN, 8, NULL, 0x80, + NULL, HFILL }}, + { &hf_lppe_T_ecid_utra_MeasSupported_historic, + { "historic", "lppe.historic", + FT_BOOLEAN, 8, NULL, 0x40, + NULL, HFILL }}, + { &hf_lppe_T_ecid_utra_nodeB_ADSupported_bslist, + { "bslist", "lppe.bslist", + FT_BOOLEAN, 8, NULL, 0x80, + NULL, HFILL }}, + { &hf_lppe_T_ecid_utra_nodeB_ADSupported_bslocation, + { "bslocation", "lppe.bslocation", + FT_BOOLEAN, 8, NULL, 0x40, + NULL, HFILL }}, + { &hf_lppe_T_ecid_utra_nodeB_ADSupported_transmit_power, + { "transmit-power", "lppe.transmit-power", + FT_BOOLEAN, 8, NULL, 0x20, + NULL, HFILL }}, + { &hf_lppe_T_ecid_utra_nodeB_ADSupported_antenna_gain, + { "antenna-gain", "lppe.antenna-gain", + FT_BOOLEAN, 8, NULL, 0x10, + NULL, HFILL }}, + { &hf_lppe_T_ecid_utra_nodeB_ADSupported_beam_width, + { "beam-width", "lppe.beam-width", + FT_BOOLEAN, 8, NULL, 0x08, + NULL, HFILL }}, + { &hf_lppe_T_ecid_utra_nodeB_ADSupported_transmit_direction, + { "transmit-direction", "lppe.transmit-direction", + FT_BOOLEAN, 8, NULL, 0x04, + NULL, HFILL }}, + { &hf_lppe_T_ecid_utra_nodeB_ADSupported_frequency_accuracy, + { "frequency-accuracy", "lppe.frequency-accuracy", + FT_BOOLEAN, 8, NULL, 0x02, + NULL, HFILL }}, + { &hf_lppe_T_ecid_utra_nodeB_ADSupported_non_serving, + { "non-serving", "lppe.non-serving", + FT_BOOLEAN, 8, NULL, 0x01, + NULL, HFILL }}, + { &hf_lppe_T_ecid_utra_HNB_ADSupported_bslist, + { "bslist", "lppe.bslist", + FT_BOOLEAN, 8, NULL, 0x80, + NULL, HFILL }}, + { &hf_lppe_T_ecid_utra_HNB_ADSupported_bslocation, + { "bslocation", "lppe.bslocation", + FT_BOOLEAN, 8, NULL, 0x40, + NULL, HFILL }}, + { &hf_lppe_T_ecid_utra_HNB_ADSupported_locationreliability, + { "locationreliability", "lppe.locationreliability", + FT_BOOLEAN, 8, NULL, 0x20, + NULL, HFILL }}, + { &hf_lppe_T_ecid_utra_HNB_ADSupported_transmit_power, + { "transmit-power", "lppe.transmit-power", + FT_BOOLEAN, 8, NULL, 0x10, + NULL, HFILL }}, + { &hf_lppe_T_ecid_utra_HNB_ADSupported_frequency_accuracy, + { "frequency-accuracy", "lppe.frequency-accuracy", + FT_BOOLEAN, 8, NULL, 0x08, + NULL, HFILL }}, + { &hf_lppe_T_ecid_utra_HNB_ADSupported_coveragearea, + { "coveragearea", "lppe.coveragearea", + FT_BOOLEAN, 8, NULL, 0x04, + NULL, HFILL }}, + { &hf_lppe_T_ecid_utra_HNB_ADSupported_non_serving, + { "non-serving", "lppe.non-serving", + FT_BOOLEAN, 8, NULL, 0x02, + NULL, HFILL }}, + { &hf_lppe_T_requestedAD_01_aplist, + { "aplist", "lppe.aplist", + FT_BOOLEAN, 8, NULL, 0x80, + NULL, HFILL }}, + { &hf_lppe_T_requestedAD_01_aplocation, + { "aplocation", "lppe.aplocation", + FT_BOOLEAN, 8, NULL, 0x40, + NULL, HFILL }}, + { &hf_lppe_T_requestedAD_01_locationreliability, + { "locationreliability", "lppe.locationreliability", + FT_BOOLEAN, 8, NULL, 0x20, + NULL, HFILL }}, + { &hf_lppe_T_requestedAD_01_transmit_power, + { "transmit-power", "lppe.transmit-power", + FT_BOOLEAN, 8, NULL, 0x10, + NULL, HFILL }}, + { &hf_lppe_T_requestedAD_01_antenna_gain, + { "antenna-gain", "lppe.antenna-gain", + FT_BOOLEAN, 8, NULL, 0x08, + NULL, HFILL }}, + { &hf_lppe_T_requestedAD_01_coveragearea, + { "coveragearea", "lppe.coveragearea", + FT_BOOLEAN, 8, NULL, 0x04, + NULL, HFILL }}, + { &hf_lppe_T_requestedAD_01_non_serving, + { "non-serving", "lppe.non-serving", + FT_BOOLEAN, 8, NULL, 0x02, + NULL, HFILL }}, + { &hf_lppe_T_requestedMeasurements_03_apSSID, + { "apSSID", "lppe.apSSID", + FT_BOOLEAN, 8, NULL, 0x80, + NULL, HFILL }}, + { &hf_lppe_T_requestedMeasurements_03_apSN, + { "apSN", "lppe.apSN", + FT_BOOLEAN, 8, NULL, 0x40, + NULL, HFILL }}, + { &hf_lppe_T_requestedMeasurements_03_apDevType, + { "apDevType", "lppe.apDevType", + FT_BOOLEAN, 8, NULL, 0x20, + NULL, HFILL }}, + { &hf_lppe_T_requestedMeasurements_03_apPhyType, + { "apPhyType", "lppe.apPhyType", + FT_BOOLEAN, 8, NULL, 0x10, + NULL, HFILL }}, + { &hf_lppe_T_requestedMeasurements_03_apRSSI, + { "apRSSI", "lppe.apRSSI", + FT_BOOLEAN, 8, NULL, 0x08, + NULL, HFILL }}, + { &hf_lppe_T_requestedMeasurements_03_apChanFreq, + { "apChanFreq", "lppe.apChanFreq", + FT_BOOLEAN, 8, NULL, 0x04, + NULL, HFILL }}, + { &hf_lppe_T_requestedMeasurements_03_apRTD, + { "apRTD", "lppe.apRTD", + FT_BOOLEAN, 8, NULL, 0x02, + NULL, HFILL }}, + { &hf_lppe_T_requestedMeasurements_03_ueTP, + { "ueTP", "lppe.ueTP", + FT_BOOLEAN, 8, NULL, 0x01, + NULL, HFILL }}, + { &hf_lppe_T_requestedMeasurements_03_ueAG, + { "ueAG", "lppe.ueAG", + FT_BOOLEAN, 8, NULL, 0x80, + NULL, HFILL }}, + { &hf_lppe_T_requestedMeasurements_03_apRepLoc, + { "apRepLoc", "lppe.apRepLoc", + FT_BOOLEAN, 8, NULL, 0x40, + NULL, HFILL }}, + { &hf_lppe_T_requestedMeasurements_03_non_serving, + { "non-serving", "lppe.non-serving", + FT_BOOLEAN, 8, NULL, 0x20, + NULL, HFILL }}, + { &hf_lppe_T_requestedMeasurements_03_historic, + { "historic", "lppe.historic", + FT_BOOLEAN, 8, NULL, 0x10, + NULL, HFILL }}, + { &hf_lppe_T_wlan_ecid_MeasSupported_apSSID, + { "apSSID", "lppe.apSSID", + FT_BOOLEAN, 8, NULL, 0x80, + NULL, HFILL }}, + { &hf_lppe_T_wlan_ecid_MeasSupported_apSN, + { "apSN", "lppe.apSN", + FT_BOOLEAN, 8, NULL, 0x40, + NULL, HFILL }}, + { &hf_lppe_T_wlan_ecid_MeasSupported_apDevType, + { "apDevType", "lppe.apDevType", + FT_BOOLEAN, 8, NULL, 0x20, + NULL, HFILL }}, + { &hf_lppe_T_wlan_ecid_MeasSupported_apPhyType, + { "apPhyType", "lppe.apPhyType", + FT_BOOLEAN, 8, NULL, 0x10, + NULL, HFILL }}, + { &hf_lppe_T_wlan_ecid_MeasSupported_apRSSI, + { "apRSSI", "lppe.apRSSI", + FT_BOOLEAN, 8, NULL, 0x08, + NULL, HFILL }}, + { &hf_lppe_T_wlan_ecid_MeasSupported_apChanFreq, + { "apChanFreq", "lppe.apChanFreq", + FT_BOOLEAN, 8, NULL, 0x04, + NULL, HFILL }}, + { &hf_lppe_T_wlan_ecid_MeasSupported_apRTD, + { "apRTD", "lppe.apRTD", + FT_BOOLEAN, 8, NULL, 0x02, + NULL, HFILL }}, + { &hf_lppe_T_wlan_ecid_MeasSupported_ueTP, + { "ueTP", "lppe.ueTP", + FT_BOOLEAN, 8, NULL, 0x01, + NULL, HFILL }}, + { &hf_lppe_T_wlan_ecid_MeasSupported_ueAG, + { "ueAG", "lppe.ueAG", + FT_BOOLEAN, 8, NULL, 0x80, + NULL, HFILL }}, + { &hf_lppe_T_wlan_ecid_MeasSupported_apRepLoc, + { "apRepLoc", "lppe.apRepLoc", + FT_BOOLEAN, 8, NULL, 0x40, + NULL, HFILL }}, + { &hf_lppe_T_wlan_ecid_MeasSupported_non_serving, + { "non-serving", "lppe.non-serving", + FT_BOOLEAN, 8, NULL, 0x20, + NULL, HFILL }}, + { &hf_lppe_T_wlan_ecid_MeasSupported_historic, + { "historic", "lppe.historic", + FT_BOOLEAN, 8, NULL, 0x10, + NULL, HFILL }}, + { &hf_lppe_T_wlan_ap_ADSupported_aplist, + { "aplist", "lppe.aplist", + FT_BOOLEAN, 8, NULL, 0x80, + NULL, HFILL }}, + { &hf_lppe_T_wlan_ap_ADSupported_aplocation, + { "aplocation", "lppe.aplocation", + FT_BOOLEAN, 8, NULL, 0x40, + NULL, HFILL }}, + { &hf_lppe_T_wlan_ap_ADSupported_locationreliability, + { "locationreliability", "lppe.locationreliability", + FT_BOOLEAN, 8, NULL, 0x20, + NULL, HFILL }}, + { &hf_lppe_T_wlan_ap_ADSupported_transmit_power, + { "transmit-power", "lppe.transmit-power", + FT_BOOLEAN, 8, NULL, 0x10, + NULL, HFILL }}, + { &hf_lppe_T_wlan_ap_ADSupported_antenna_gain, + { "antenna-gain", "lppe.antenna-gain", + FT_BOOLEAN, 8, NULL, 0x08, + NULL, HFILL }}, + { &hf_lppe_T_wlan_ap_ADSupported_coveragearea, + { "coveragearea", "lppe.coveragearea", + FT_BOOLEAN, 8, NULL, 0x04, + NULL, HFILL }}, + { &hf_lppe_T_wlan_ap_ADSupported_non_serving, + { "non-serving", "lppe.non-serving", + FT_BOOLEAN, 8, NULL, 0x02, + NULL, HFILL }}, + { &hf_lppe_T_requestedMeasurements_04_rTD, + { "rTD", "lppe.rTD", + FT_BOOLEAN, 8, NULL, 0x80, + NULL, HFILL }}, + { &hf_lppe_T_requestedMeasurements_04_rTDstd, + { "rTDstd", "lppe.rTDstd", + FT_BOOLEAN, 8, NULL, 0x40, + NULL, HFILL }}, + { &hf_lppe_T_requestedMeasurements_04_nMR, + { "nMR", "lppe.nMR", + FT_BOOLEAN, 8, NULL, 0x20, + NULL, HFILL }}, + { &hf_lppe_T_requestedMeasurements_04_nMRrelDelay, + { "nMRrelDelay", "lppe.nMRrelDelay", + FT_BOOLEAN, 8, NULL, 0x10, + NULL, HFILL }}, + { &hf_lppe_T_requestedMeasurements_04_nMRrelDelaystd, + { "nMRrelDelaystd", "lppe.nMRrelDelaystd", + FT_BOOLEAN, 8, NULL, 0x08, + NULL, HFILL }}, + { &hf_lppe_T_requestedMeasurements_04_nMRrSSI, + { "nMRrSSI", "lppe.nMRrSSI", + FT_BOOLEAN, 8, NULL, 0x04, + NULL, HFILL }}, + { &hf_lppe_T_requestedMeasurements_04_nMRrSSIstd, + { "nMRrSSIstd", "lppe.nMRrSSIstd", + FT_BOOLEAN, 8, NULL, 0x02, + NULL, HFILL }}, + { &hf_lppe_T_requestedMeasurements_04_nMRbSTxPower, + { "nMRbSTxPower", "lppe.nMRbSTxPower", + FT_BOOLEAN, 8, NULL, 0x01, + NULL, HFILL }}, + { &hf_lppe_T_requestedMeasurements_04_nMRcINR, + { "nMRcINR", "lppe.nMRcINR", + FT_BOOLEAN, 8, NULL, 0x80, + NULL, HFILL }}, + { &hf_lppe_T_requestedMeasurements_04_nMRcINRstd, + { "nMRcINRstd", "lppe.nMRcINRstd", + FT_BOOLEAN, 8, NULL, 0x40, + NULL, HFILL }}, + { &hf_lppe_T_requestedMeasurements_04_nMRbSLocation, + { "nMRbSLocation", "lppe.nMRbSLocation", + FT_BOOLEAN, 8, NULL, 0x20, + NULL, HFILL }}, + { &hf_lppe_T_requestedMeasurements_04_non_serving, + { "non-serving", "lppe.non-serving", + FT_BOOLEAN, 8, NULL, 0x10, + NULL, HFILL }}, + { &hf_lppe_T_requestedMeasurements_04_historic, + { "historic", "lppe.historic", + FT_BOOLEAN, 8, NULL, 0x08, + NULL, HFILL }}, + { &hf_lppe_T_ecid_wimax_MeasSupported_rTD, + { "rTD", "lppe.rTD", + FT_BOOLEAN, 8, NULL, 0x80, + NULL, HFILL }}, + { &hf_lppe_T_ecid_wimax_MeasSupported_rTDstd, + { "rTDstd", "lppe.rTDstd", + FT_BOOLEAN, 8, NULL, 0x40, + NULL, HFILL }}, + { &hf_lppe_T_ecid_wimax_MeasSupported_nMR, + { "nMR", "lppe.nMR", + FT_BOOLEAN, 8, NULL, 0x20, + NULL, HFILL }}, + { &hf_lppe_T_ecid_wimax_MeasSupported_nMRrelDelay, + { "nMRrelDelay", "lppe.nMRrelDelay", + FT_BOOLEAN, 8, NULL, 0x10, + NULL, HFILL }}, + { &hf_lppe_T_ecid_wimax_MeasSupported_nMRrelDelaystd, + { "nMRrelDelaystd", "lppe.nMRrelDelaystd", + FT_BOOLEAN, 8, NULL, 0x08, + NULL, HFILL }}, + { &hf_lppe_T_ecid_wimax_MeasSupported_nMRrSSI, + { "nMRrSSI", "lppe.nMRrSSI", + FT_BOOLEAN, 8, NULL, 0x04, + NULL, HFILL }}, + { &hf_lppe_T_ecid_wimax_MeasSupported_nMRrSSIstd, + { "nMRrSSIstd", "lppe.nMRrSSIstd", + FT_BOOLEAN, 8, NULL, 0x02, + NULL, HFILL }}, + { &hf_lppe_T_ecid_wimax_MeasSupported_nMRbSTxPower, + { "nMRbSTxPower", "lppe.nMRbSTxPower", + FT_BOOLEAN, 8, NULL, 0x01, + NULL, HFILL }}, + { &hf_lppe_T_ecid_wimax_MeasSupported_nMRcINR, + { "nMRcINR", "lppe.nMRcINR", + FT_BOOLEAN, 8, NULL, 0x80, + NULL, HFILL }}, + { &hf_lppe_T_ecid_wimax_MeasSupported_nMRcINRstd, + { "nMRcINRstd", "lppe.nMRcINRstd", + FT_BOOLEAN, 8, NULL, 0x40, + NULL, HFILL }}, + { &hf_lppe_T_ecid_wimax_MeasSupported_nMRbSLocation, + { "nMRbSLocation", "lppe.nMRbSLocation", + FT_BOOLEAN, 8, NULL, 0x20, + NULL, HFILL }}, + { &hf_lppe_T_ecid_wimax_MeasSupported_non_serving, + { "non-serving", "lppe.non-serving", + FT_BOOLEAN, 8, NULL, 0x10, + NULL, HFILL }}, + { &hf_lppe_T_ecid_wimax_MeasSupported_historic, + { "historic", "lppe.historic", + FT_BOOLEAN, 8, NULL, 0x08, + NULL, HFILL }}, + { &hf_lppe_T_secondaryMotionState_stationary, + { "stationary", "lppe.stationary", + FT_BOOLEAN, 8, NULL, 0x80, + NULL, HFILL }}, + { &hf_lppe_T_secondaryMotionState_pedestrian, + { "pedestrian", "lppe.pedestrian", + FT_BOOLEAN, 8, NULL, 0x40, + NULL, HFILL }}, + { &hf_lppe_T_secondaryMotionState_running, + { "running", "lppe.running", + FT_BOOLEAN, 8, NULL, 0x20, + NULL, HFILL }}, + { &hf_lppe_T_secondaryMotionState_cycling, + { "cycling", "lppe.cycling", + FT_BOOLEAN, 8, NULL, 0x10, + NULL, HFILL }}, + { &hf_lppe_T_secondaryMotionState_car, + { "car", "lppe.car", + FT_BOOLEAN, 8, NULL, 0x08, + NULL, HFILL }}, + { &hf_lppe_T_secondaryMotionState_train, + { "train", "lppe.train", + FT_BOOLEAN, 8, NULL, 0x04, + NULL, HFILL }}, + { &hf_lppe_T_secondaryMotionState_aeroplane, + { "aeroplane", "lppe.aeroplane", + FT_BOOLEAN, 8, NULL, 0x02, + NULL, HFILL }}, + { &hf_lppe_T_secondaryMotionState_boat, + { "boat", "lppe.boat", + FT_BOOLEAN, 8, NULL, 0x01, + NULL, HFILL }}, + { &hf_lppe_T_secondaryMotionState_fidgeting, + { "fidgeting", "lppe.fidgeting", + FT_BOOLEAN, 8, NULL, 0x80, + NULL, HFILL }}, + { &hf_lppe_T_supportedAssistanceData_srnGroup, + { "srnGroup", "lppe.srnGroup", + FT_BOOLEAN, 8, NULL, 0x80, + NULL, HFILL }}, + { &hf_lppe_T_supportedAssistanceData_antennaPattern, + { "antennaPattern", "lppe.antennaPattern", + FT_BOOLEAN, 8, NULL, 0x40, + NULL, HFILL }}, + { &hf_lppe_T_srnMeasurements_rssi, + { "rssi", "lppe.rssi", + FT_BOOLEAN, 8, NULL, 0x80, + NULL, HFILL }}, + { &hf_lppe_T_srnMeasurements_rtd, + { "rtd", "lppe.rtd", + FT_BOOLEAN, 8, NULL, 0x40, + NULL, HFILL }}, + +/*--- End of included file: packet-lppe-hfarr.c ---*/ +#line 71 "../../asn1/lppe/packet-lppe-template.c" + }; + + /* List of subtrees */ + static gint *ett[] = { + &ett_lppe, + +/*--- Included file: packet-lppe-ettarr.c ---*/ +#line 1 "../../asn1/lppe/packet-lppe-ettarr.c" + &ett_lppe_OMA_LPPe_MessageExtension, + &ett_lppe_OMA_LPPe_LPPeVersion, + &ett_lppe_OMA_LPPe_MessageExtensionBody, + &ett_lppe_OMA_LPPe_RequestCapabilities, + &ett_lppe_OMA_LPPe_ProvideCapabilities, + &ett_lppe_OMA_LPPe_RequestAssistanceData, + &ett_lppe_OMA_LPPe_ProvideAssistanceData, + &ett_lppe_OMA_LPPe_RequestLocationInformation, + &ett_lppe_OMA_LPPe_ProvideLocationInformation, + &ett_lppe_OMA_LPPe_Abort, + &ett_lppe_OMA_LPPe_Error, + &ett_lppe_OMA_LPPe_AssistanceContainer_DataSerialNumber, + &ett_lppe_OMA_LPPe_AssistanceContainerID, + &ett_lppe_OMA_LPPe_AssistanceContainerProvideList, + &ett_lppe_OMA_LPPe_AssistanceContainerProvide, + &ett_lppe_T_dataResult, + &ett_lppe_OMA_LPPe_AssistanceContainerData, + &ett_lppe_OMA_LPPe_AssistanceContainerProvideError, + &ett_lppe_OMA_LPPe_AssistanceContainerRequestList, + &ett_lppe_OMA_LPPe_AssistanceContainerRequest, + &ett_lppe_OMA_LPPe_AssistanceContainerCheckOrUpdateReq, + &ett_lppe_OMA_LPPe_CellLocalIdGERAN, + &ett_lppe_OMA_LPPe_CellNonUniqueIDGERAN, + &ett_lppe_OMA_LPPe_CivicLocation, + &ett_lppe_OMA_LPPe_CivicAddressElementList, + &ett_lppe_OMA_LPPe_CivicAddressElement, + &ett_lppe_OMA_LPPe_Duration, + &ett_lppe_OMA_LPPe_FixedAccessTypes, + &ett_lppe_OMA_LPPe_HighAccuracy3Dposition, + &ett_lppe_OMA_LPPe_HighAccuracy3Dvelocity, + &ett_lppe_OMA_LPPe_LocationInformationContainerID, + &ett_lppe_OMA_LPPe_LocationInformationContainer, + &ett_lppe_OMA_LPPe_LocationInformationContainerDataList, + &ett_lppe_OMA_LPPe_LocationInformationContainerData, + &ett_lppe_OMA_LPPe_LocationInformationContainerRequest, + &ett_lppe_OMA_LPPe_LocationInformationContainerRequestList, + &ett_lppe_OMA_LPPe_LocationInformationContainerRequestItem, + &ett_lppe_OMA_LPPe_MapDataReference, + &ett_lppe_OMA_LPPe_Orientation, + &ett_lppe_T_eulerAngles, + &ett_lppe_OMA_LPPe_ReferencePoint, + &ett_lppe_T_referencePointGeographicLocation, + &ett_lppe_SEQUENCE_SIZE_1_8_OF_OMA_LPPe_ReferencePointRelationship, + &ett_lppe_OMA_LPPe_MapDataInformation, + &ett_lppe_OMA_LPPe_MapDataReferenceElement, + &ett_lppe_T_mapDataUrl, + &ett_lppe_T_mapProvider, + &ett_lppe_T_mapAssociation, + &ett_lppe_OMA_LPPe_ReferencePointRelationship, + &ett_lppe_OMA_LPPe_ReferencePointUniqueID, + &ett_lppe_OMA_LPPe_RelativeLocation, + &ett_lppe_OMA_LPPe_HorizontalUncertaintyAndConfidence, + &ett_lppe_T_uncShape, + &ett_lppe_T_ellipse, + &ett_lppe_OMA_LPPe_RelativeAltitude, + &ett_lppe_OMA_LPPe_GeodeticRelativeAltitude, + &ett_lppe_OMA_LPPe_GeodeticUncertaintyAndConfidence, + &ett_lppe_OMA_LPPe_CivicRelativeAltitude, + &ett_lppe_OMA_LPPe_CivicUncertaintyAndConfidence, + &ett_lppe_OMA_LPPe_Session_ID, + &ett_lppe_OMA_LPPe_ValidityArea, + &ett_lppe_OMA_LPPe_RleList, + &ett_lppe_OMA_LPPe_ValidityPeriod, + &ett_lppe_OMA_LPPe_VendorOrOperatorAssistanceDataIdentifier, + &ett_lppe_OMA_LPPe_VendorOrOperatorID, + &ett_lppe_OMA_LPPe_NonStandard_VendorOrOperatorID, + &ett_lppe_OMA_LPPe_WirelessAccessTypes, + &ett_lppe_OMA_LPPe_WLAN_AP_ID, + &ett_lppe_OMA_LPPe_WLAN_AP_Type_List, + &ett_lppe_OMA_LPPe_WLANFemtoCoverageArea, + &ett_lppe_SEQUENCE_SIZE_1_16_OF_OMA_LPPe_WLANFemtoCoverageAreaElement, + &ett_lppe_OMA_LPPe_WLANFemtoCoverageAreaElement, + &ett_lppe_T_refPointAndArea, + &ett_lppe_OMA_LPPe_CommonIEsRequestCapabilities, + &ett_lppe_OMA_LPPe_IP_Address_RequestCapabilities, + &ett_lppe_OMA_LPPe_AssistanceContainerSupportReq, + &ett_lppe_OMA_LPPe_LocationInformationContainerSupportReq, + &ett_lppe_OMA_LPPe_VendorOrOperatorIDList, + &ett_lppe_OMA_LPPe_RelativeLocationChange_RequestCapabilities, + &ett_lppe_OMA_LPPe_HighAccuracyFormatCapabilitiesReq, + &ett_lppe_OMA_LPPe_SegmentedAssistanceData_ReqCapabilities, + &ett_lppe_OMA_LPPe_ReferencePointCapabilitiesReq, + &ett_lppe_SEQUENCE_SIZE_1_128_OF_OMA_LPPe_VendorOrOperatorID, + &ett_lppe_OMA_LPPe_ScheduledLocation_RequestCapabilities, + &ett_lppe_OMA_LPPe_AccessCapabilitiesReq, + &ett_lppe_OMA_LPPe_SegmentedLocationInformation_ReqCapabilities, + &ett_lppe_OMA_LPPe_CommonIEsProvideCapabilities, + &ett_lppe_OMA_LPPe_IP_Address_Capabilities, + &ett_lppe_T_iP_Address_support, + &ett_lppe_OMA_LPPe_AssistanceContainerSupport, + &ett_lppe_OMA_LPPe_VendorOrOperatorAssistanceContainerList, + &ett_lppe_OMA_LPPe_AssistanceContainerList, + &ett_lppe_OMA_LPPe_LocationInformationContainerSupport, + &ett_lppe_OMA_LPPe_VendorOrOperatorLocationInformationContainerList, + &ett_lppe_OMA_LPPe_LocationInformationContainerList, + &ett_lppe_OMA_LPPe_RelativeLocationChange_Capabilities, + &ett_lppe_OMA_LPPe_HighAccuracyFormatCapabilities, + &ett_lppe_OMA_LPPe_SegmentedAssistanceData_ProvideCapabs, + &ett_lppe_OMA_LPPe_ReferencePointCapabilities, + &ett_lppe_T_relativeLocationReportingSupport, + &ett_lppe_SEQUENCE_SIZE_1_128_OF_OMA_LPPe_ReferencePointProviderSupportElement, + &ett_lppe_OMA_LPPe_ReferencePointProviderSupportElement, + &ett_lppe_T_mapDataSupport, + &ett_lppe_OMA_LPPe_ScheduledLocation_Capabilities, + &ett_lppe_OMA_LPPe_AccessCapabilities, + &ett_lppe_OMA_LPPe_SegmentedLocationInformation_ProvideCapabs, + &ett_lppe_OMA_LPPe_CommonIEsRequestAssistanceData, + &ett_lppe_OMA_LPPe_RequestPeriodicADwithUpdate, + &ett_lppe_OMA_LPPe_SegmentedADResume, + &ett_lppe_OMA_LPPe_ReferencePointAssistanceReq, + &ett_lppe_SEQUENCE_SIZE_1_16_OF_OMA_LPPe_ReferencePointAssistanceReqElement, + &ett_lppe_OMA_LPPe_ReferencePointAssistanceReqElement, + &ett_lppe_OMA_LPPe_CommonIEsProvideAssistanceData, + &ett_lppe_OMA_LPPe_ProvidePeriodicADwithUpdate, + &ett_lppe_OMA_LPPe_SegmentedADTransfer, + &ett_lppe_OMA_LPPe_CommonIEsRequestLocationInformation, + &ett_lppe_OMA_LPPe_IP_Address_Request, + &ett_lppe_OMA_LPPe_RequestPeriodicLocInfoWithUpdate, + &ett_lppe_OMA_LPPe_RelativeLocationChange_Request, + &ett_lppe_OMA_LPPe_LocalPositionRequest, + &ett_lppe_SEQUENCE_SIZE_1_8_OF_OMA_LPPe_ReferencePointUniqueID, + &ett_lppe_OMA_LPPe_ScheduledLocation_Request, + &ett_lppe_OMA_LPPe_AccessTypeRequest, + &ett_lppe_OMA_LPPe_SegmentedLIResume, + &ett_lppe_OMA_LPPe_CommonIEsProvideLocationInformation, + &ett_lppe_OMA_LPPe_LocalPosition, + &ett_lppe_OMA_LPPe_IP_Address_List, + &ett_lppe_OMA_LPPe_IP_Address, + &ett_lppe_T_local_IP_Address, + &ett_lppe_OMA_LPPe_ProvidePeriodicLocInfowithUpdate, + &ett_lppe_OMA_LPPe_RelativeLocationChangeList, + &ett_lppe_OMA_LPPe_RelativeLocationChange, + &ett_lppe_OMA_LPPe_ScheduledLocation, + &ett_lppe_T_actualWindow, + &ett_lppe_OMA_LPPe_AccessTypes, + &ett_lppe_OMA_LPPe_SegmentedLITransfer, + &ett_lppe_OMA_LPPe_TimeStamp, + &ett_lppe_OMA_LPPe_CommonIEsAbort, + &ett_lppe_OMA_LPPe_CommonIEsError, + &ett_lppe_OMA_LPPe_AGNSS_ProvideAssistanceData, + &ett_lppe_OMA_LPPe_AGNSS_CommonAssistData, + &ett_lppe_OMA_LPPe_AGNSS_GenericAssistData, + &ett_lppe_OMA_LPPe_AGNSS_GenericAssistDataElement, + &ett_lppe_OMA_LPPe_AGNSS_IonosphericModel, + &ett_lppe_T_staticModels, + &ett_lppe_T_waIono, + &ett_lppe_OMA_LPPe_AGNSS_LocalKlobucharModelList, + &ett_lppe_OMA_LPPe_AGNSS_LocalKlobucharModelElement, + &ett_lppe_SEQUENCE_SIZE_1_8_OF_OMA_LPPe_AGNSS_LocalKlobucharModel, + &ett_lppe_OMA_LPPe_AGNSS_LocalKlobucharModel, + &ett_lppe_OMA_LPPe_AGNSS_IonoStormIndication, + &ett_lppe_OMA_LPPe_AGNSS_StormList, + &ett_lppe_OMA_LPPe_AGNSS_StormElement, + &ett_lppe_OMA_LPPe_AGNSS_RleListIono, + &ett_lppe_OMA_LPPe_AGNSS_RleIonoElement, + &ett_lppe_T_ionoIndex, + &ett_lppe_OMA_LPPe_AGNSS_WideAreaIonoSurfaceControlParametersProvide, + &ett_lppe_OMA_LPPe_AGNSS_WideAreaIonoSurfaceCommon, + &ett_lppe_OMA_LPPe_AGNSS_WideAreaIonoSurfacePerSVlist, + &ett_lppe_OMA_LPPe_AGNSS_WideAreaIonoSurfacePerSVelement, + &ett_lppe_OMA_LPPe_AGNSS_TroposphereModel, + &ett_lppe_OMA_LPPe_AGNSS_LocalTroposphereDelayList, + &ett_lppe_OMA_LPPe_AGNSS_LocalTroposphereDelayAreaElement, + &ett_lppe_SEQUENCE_SIZE_1_8_OF_OMA_LPPe_AGNSS_LocalTroposphereDelayTimeElement, + &ett_lppe_OMA_LPPe_AGNSS_LocalTroposphereDelayTimeElement, + &ett_lppe_OMA_LPPe_AGNSS_LocalSurfaceParametersList, + &ett_lppe_OMA_LPPe_AGNSS_LocalSurfaceParametersAreaElement, + &ett_lppe_SEQUENCE_SIZE_1_8_OF_OMA_LPPe_AGNSS_LocalSurfaceParametersTimeElement, + &ett_lppe_OMA_LPPe_AGNSS_LocalSurfaceParametersTimeElement, + &ett_lppe_OMA_LPPe_AGNSS_MappingFunctionParameters, + &ett_lppe_OMA_LPPe_AGNSS_AltitudeAssistanceList, + &ett_lppe_OMA_LPPe_AGNSS_AltitudeAssistanceAreaElement, + &ett_lppe_SEQUENCE_SIZE_1_16_OF_OMA_LPPe_AGNSS_PressureAssistanceElement, + &ett_lppe_OMA_LPPe_AGNSS_PressureAssistanceElement, + &ett_lppe_OMA_LPPe_AGNSS_SolarRadiation, + &ett_lppe_OMA_LPPe_AGNSS_MechanicsForAllSVs, + &ett_lppe_OMA_LPPe_AGNSS_MechanicsElement, + &ett_lppe_T_svInfo, + &ett_lppe_OMA_LPPe_AGNSS_PCOelement, + &ett_lppe_OMA_LPPe_AGNSS_DCBsForAllSVs, + &ett_lppe_OMA_LPPe_AGNSS_DCBlistElement, + &ett_lppe_T_reference, + &ett_lppe_OMA_LPPe_AGNSS_DCBlist, + &ett_lppe_OMA_LPPe_AGNSS_DCBelement, + &ett_lppe_OMA_LPPe_AGNSS_NavModelDegradationModelList, + &ett_lppe_OMA_LPPe_AGNSS_NavModelDegradationModelElement, + &ett_lppe_OMA_LPPe_AGNSS_ClockModelDegradationModel, + &ett_lppe_OMA_LPPe_AGNSS_OrbitModelDegradationModel, + &ett_lppe_OMA_LPPe_AGNSS_CCPassistCommonProvide, + &ett_lppe_OMA_LPPe_AGNSS_CCPprovideCommonParameters, + &ett_lppe_OMA_LPPe_AGNSS_CCPprovideControlParameters, + &ett_lppe_OMA_LPPe_AGNSS_CCPsupportArea, + &ett_lppe_SEQUENCE_SIZE_1_8_OF_OMA_LPPe_AGNSS_CCPsignalSupport, + &ett_lppe_OMA_LPPe_AGNSS_CCPsignalSupport, + &ett_lppe_OMA_LPPe_AGNSS_CCPreferenceStationList, + &ett_lppe_OMA_LPPe_AGNSS_CCPreferenceStationElement, + &ett_lppe_OMA_LPPe_AGNSS_CCPassistGenericProvide, + &ett_lppe_OMA_LPPe_AGNSS_CCPassistGenericProvideElement, + &ett_lppe_SEQUENCE_SIZE_1_8_OF_OMA_LPPe_AGNSS_CCPperSignalElement, + &ett_lppe_OMA_LPPe_AGNSS_CCPperSignalElement, + &ett_lppe_SEQUENCE_SIZE_1_64_OF_OMA_LPPe_AGNSS_CCPperSVelement, + &ett_lppe_OMA_LPPe_AGNSS_CCPperSVelement, + &ett_lppe_OMA_LPPe_AGNSS_CodePhaseError, + &ett_lppe_OMA_LPPe_AGNSS_NavModelList, + &ett_lppe_OMA_LPPe_AGNSS_NavModel_CoordinateBased, + &ett_lppe_T_fixedInterval, + &ett_lppe_T_bases, + &ett_lppe_SEQUENCE_SIZE_1_97_OF_OMA_LPPe_AGNSS_NavModel_CoordinateBasedElement, + &ett_lppe_OMA_LPPe_AGNSS_NavModel_CoordinateBasedElement, + &ett_lppe_SEQUENCE_SIZE_1_64_OF_OMA_LPPe_AGNSS_NavModel_PVTelement, + &ett_lppe_OMA_LPPe_AGNSS_NavModel_PVTelement, + &ett_lppe_T_rateRecord, + &ett_lppe_OMA_LPPe_AGNSS_NavModel_BigNumber, + &ett_lppe_OMA_LPPe_AGNSS_NavModel_STDmatrix, + &ett_lppe_OMA_LPPe_AGNSS_RequestAssistanceData, + &ett_lppe_OMA_LPPe_AGNSS_CommonAssistanceDataReq, + &ett_lppe_OMA_LPPe_AGNSS_GenericAssistanceDataReq, + &ett_lppe_OMA_LPPe_AGNSS_GenericAssistDataReqElement, + &ett_lppe_OMA_LPPe_AGNSS_IonosphericModelReq, + &ett_lppe_T_staticModels_01, + &ett_lppe_T_ionoreq, + &ett_lppe_T_periodicModels, + &ett_lppe_OMA_LPPe_AGNSS_WideAreaIonoSurfaceControlParametersRequest, + &ett_lppe_OMA_LPPe_AGNSS_TroposphereModelReq, + &ett_lppe_T_troposphereModelReq, + &ett_lppe_OMA_LPPe_AGNSS_AltitudeAssistanceReq, + &ett_lppe_OMA_LPPe_AGNSS_SolarRadiationReq, + &ett_lppe_OMA_LPPe_AGNSS_WaIonoSurfaceRequest, + &ett_lppe_OMA_LPPe_AGNSS_NavModelDegradationModelReq, + &ett_lppe_OMA_LPPe_AGNSS_DCBreq, + &ett_lppe_T_reference_01, + &ett_lppe_OMA_LPPe_AGNSS_MechanicsReq, + &ett_lppe_OMA_LPPe_AGNSS_CCPrequestControlParameters, + &ett_lppe_T_ccpCommonRequest, + &ett_lppe_T_refStation, + &ett_lppe_T_posBasedReferenceStationRequest, + &ett_lppe_OMA_LPPe_AGNSS_ReferenceStationIDlist, + &ett_lppe_OMA_LPPe_AGNSS_CCPassistGenericReq, + &ett_lppe_OMA_LPPe_AGNSS_NavigationModelReq, + &ett_lppe_T_navModelID_PrefList, + &ett_lppe_OMA_LPPe_AGNSS_ProvideLocationInformation, + &ett_lppe_OMA_LPPe_AGNSS_HAgnssProvide, + &ett_lppe_T_controlParameters, + &ett_lppe_T_measurements, + &ett_lppe_T_localPressure, + &ett_lppe_SEQUENCE_SIZE_1_16_OF_OMA_LPPe_AGNSS_HAgnssMeasurementElement, + &ett_lppe_OMA_LPPe_AGNSS_HAgnssMeasurementElement, + &ett_lppe_SEQUENCE_SIZE_1_8_OF_OMA_LPPe_HAgnssPerSignalElement, + &ett_lppe_OMA_LPPe_HAgnssPerSignalElement, + &ett_lppe_SEQUENCE_SIZE_1_64_OF_OMA_LPPe_HAgnssPerSVelement, + &ett_lppe_OMA_LPPe_HAgnssPerSVelement, + &ett_lppe_OMA_LPPe_AGNSS_IonosphereMeasurements, + &ett_lppe_OMA_LPPe_AGNSS_TECPerSV, + &ett_lppe_OMA_LPPe_AGNSS_TECPerSVElement, + &ett_lppe_OMA_LPPe_AGNSS_TECAtZenith, + &ett_lppe_OMA_LPPe_AGNSS_LocalSurfaceMeasurements, + &ett_lppe_T_temperatureMeasurement, + &ett_lppe_OMA_LPPe_AGNSS_RequestLocationInformation, + &ett_lppe_T_ionosphereMeasurementsReq, + &ett_lppe_OMA_LPPe_AGNSS_PositioningInstructions, + &ett_lppe_OMA_LPPe_AGNSS_LocalSurfaceMeasurementReq, + &ett_lppe_OMA_LPPe_AGNSS_HAgnssRequestControlParameters, + &ett_lppe_SEQUENCE_SIZE_1_16_OF_OMA_LPPe_AGNSS_HAgnssSignalReqElement, + &ett_lppe_OMA_LPPe_AGNSS_HAgnssSignalReqElement, + &ett_lppe_OMA_LPPe_AGNSS_ProvideCapabilities, + &ett_lppe_OMA_LPPe_AGNSS_AssistanceDataSupportList, + &ett_lppe_OMA_LPPe_AGNSS_EnvironmentObservationSupportList, + &ett_lppe_T_ionosphereMeasurementSupport, + &ett_lppe_OMA_LPPe_AGNSS_CommonAssistanceDataSupport, + &ett_lppe_OMA_LPPe_AGNSS_IonosphericModelSupport, + &ett_lppe_T_ionoModel, + &ett_lppe_OMA_LPPe_AGNSS_TroposphereModelSupport, + &ett_lppe_T_tropoModel, + &ett_lppe_OMA_LPPe_AGNSS_AltitudeAssistanceSupport, + &ett_lppe_OMA_LPPe_AGNSS_SolarRadiationSupport, + &ett_lppe_OMA_LPPe_AGNSS_CCPsupport, + &ett_lppe_OMA_LPPe_AGNSS_GenericAssistanceDataSupport, + &ett_lppe_OMA_LPPe_AGNSS_GenericAssistDataSupportElement, + &ett_lppe_OMA_LPPe_AGNSS_MechanicsSupport, + &ett_lppe_OMA_LPPe_AGNSS_DCBsupport, + &ett_lppe_OMA_LPPe_AGNSS_NavModelAccuracyModelDegradationSupport, + &ett_lppe_OMA_LPPe_AGNSS_NavModelSupport, + &ett_lppe_T_navModelSupport, + &ett_lppe_OMA_LPPe_AGNSS_HAgnssSupport, + &ett_lppe_T_modeSupport, + &ett_lppe_T_haGNSSantennaInformationSupport, + &ett_lppe_SEQUENCE_SIZE_1_8_OF_OMA_LPPe_AGNSS_HAgnssPerGNSSsupport, + &ett_lppe_OMA_LPPe_AGNSS_HAgnssPerGNSSsupport, + &ett_lppe_OMA_LPPe_AGNSS_RequestCapabilities, + &ett_lppe_OMA_LPPe_AGNSS_Error, + &ett_lppe_OMA_LPPe_AGNSS_LocationServerErrorCauses, + &ett_lppe_OMA_LPPe_AGNSS_TargetDeviceErrorCauses, + &ett_lppe_OMA_LPPe_AGNSS_CCPreferenceStationID, + &ett_lppe_OMA_LPPe_AGNSS_AntennaDescription, + &ett_lppe_T_antennaDescription, + &ett_lppe_OMA_LPPe_AGNSS_Abort, + &ett_lppe_T_targetDeviceAbortCauses, + &ett_lppe_OMA_LPPe_OTDOA_ProvideAssistanceData, + &ett_lppe_OMA_LPPe_OTDOA_ReferenceCellInfo, + &ett_lppe_OMA_LPPe_OTDOA_PositionCalculationInfoRef, + &ett_lppe_T_cellLocation, + &ett_lppe_T_femtoCellInfo, + &ett_lppe_OMA_LPPe_OTDOA_NeighbourCellInfoList, + &ett_lppe_OMA_LPPe_OTDOA_NeighbourFreqCellInfoList, + &ett_lppe_SEQUENCE_SIZE_1_maxLTEeNBs_OF_OMA_LPPe_OTDOA_NeighbourCellInfoElement_eNB, + &ett_lppe_SEQUENCE_SIZE_1_maxLTEHeNBs_OF_OMA_LPPe_OTDOA_NeighbourCellInfoElement_HeNB, + &ett_lppe_OMA_LPPe_OTDOA_NeighbourCellInfoElement_eNB, + &ett_lppe_SEQUENCE_SIZE_1_maxLTEMacroCells_OF_OMA_LPPe_OTDOA_CellData, + &ett_lppe_OMA_LPPe_OTDOA_NeighbourCellInfoElement_HeNB, + &ett_lppe_OMA_LPPe_OTDOA_CellData, + &ett_lppe_T_rtdInfo, + &ett_lppe_OMA_LPPe_OTDOA_RTDquality, + &ett_lppe_OMA_LPPe_OTDOA_RequestAssistanceData, + &ett_lppe_T_lteCell, + &ett_lppe_T_requestedCells, + &ett_lppe_OMA_LPPe_OTDOA_ProvideLocationInformation, + &ett_lppe_OMA_LPPe_OTDOA_LocationInformation, + &ett_lppe_OMA_LPPe_OTDOA_RequestLocationInformation, + &ett_lppe_OMA_LPPe_OTDOA_ProvideCapabilities, + &ett_lppe_T_eNodeB_AD_sup, + &ett_lppe_T_home_eNodeB_AD_sup, + &ett_lppe_OMA_LPPe_OTDOA_RequestCapabilities, + &ett_lppe_OMA_LPPe_OTDOA_Error, + &ett_lppe_OMA_LPPe_OTDOA_LocationServerErrorCauses, + &ett_lppe_OMA_LPPe_OTDOA_TargetDeviceErrorCauses, + &ett_lppe_OMA_LPPe_EOTD_ProvideAssistanceData, + &ett_lppe_OMA_LPPe_EOTD_ReferenceBTSForAssistance, + &ett_lppe_T_btsPosition, + &ett_lppe_OMA_LPPe_EOTD_MsrAssistDataList, + &ett_lppe_OMA_LPPe_EOTD_MsrAssistBTS, + &ett_lppe_OMA_LPPe_EOTD_SystemInfoAssistDataList, + &ett_lppe_OMA_LPPe_EOTD_SystemInfoAssistBTS, + &ett_lppe_OMA_LPPe_EOTD_AssistBTSData, + &ett_lppe_OMA_LPPe_EOTD_CalcAssistanceBTS, + &ett_lppe_OMA_LPPe_EOTD_relativePos, + &ett_lppe_OMA_LPPe_EOTD_RequestAssistanceData, + &ett_lppe_T_eotdAssistanceReq, + &ett_lppe_OMA_LPPe_EOTD_ProvideLocationInformation, + &ett_lppe_OMA_LPPe_EOTD_MsrElement, + &ett_lppe_SEQUENCE_SIZE_1_15_OF_OMA_LPPe_EOTD_MeasurementWithID, + &ett_lppe_OMA_LPPe_EOTD_TOA_MeasurementsOfRef, + &ett_lppe_OMA_LPPe_EOTD_MeasurementWithID, + &ett_lppe_OMA_LPPe_EOTD_NeighborIdentity, + &ett_lppe_OMA_LPPe_EOTD_EOTDQuality, + &ett_lppe_OMA_LPPe_EOTD_MultiFrameCarrier, + &ett_lppe_OMA_LPPe_EOTD_RequestLocationInformation, + &ett_lppe_OMA_LPPe_EOTD_ProvideCapabilities, + &ett_lppe_T_eotdSupport, + &ett_lppe_OMA_LPPe_EOTD_RequestCapabilities, + &ett_lppe_OMA_LPPe_EOTD_Error, + &ett_lppe_OMA_LPPe_EOTD_LocationServerErrorCauses, + &ett_lppe_OMA_LPPe_EOTD_TargetDeviceErrorCauses, + &ett_lppe_OMA_LPPe_EOTD_ExpectedOTD, + &ett_lppe_OMA_LPPe_OTDOA_UTRA_ProvideAssistanceData, + &ett_lppe_OMA_LPPe_OTDOA_UTRA_ReferenceCellInfo, + &ett_lppe_T_modeSpecificInfo, + &ett_lppe_T_fdd, + &ett_lppe_T_tdd, + &ett_lppe_OMA_LPPe_OTDOA_UTRA_RefPosAssist, + &ett_lppe_T_cellPosition, + &ett_lppe_OMA_LPPe_OTDOA_UTRA_NeighborCellList, + &ett_lppe_OMA_LPPe_OTDOA_UTRA_NeighborCellInfo, + &ett_lppe_T_modeSpecificInfo_01, + &ett_lppe_T_fdd_01, + &ett_lppe_T_tdd_01, + &ett_lppe_OMA_LPPe_OTDOA_UTRA_SFN_SFN_RelTimeDifference1, + &ett_lppe_OMA_LPPe_OTDOA_UTRA_PositioningAssistance, + &ett_lppe_OMA_LPPe_OTDOA_UTRA_IPDL_Parameters, + &ett_lppe_T_modeSpecificInfo_02, + &ett_lppe_T_fdd_02, + &ett_lppe_T_tdd_02, + &ett_lppe_OMA_LPPe_OTDOA_UTRA_BurstModeParameters, + &ett_lppe_OMA_LPPe_OTDOA_UTRA_RequestAssistanceData, + &ett_lppe_T_otdoaUtraAssistanceReq, + &ett_lppe_OMA_LPPe_OTDOA_UTRA_ProvideLocationInformation, + &ett_lppe_OMA_LPPe_OTDOA_UTRA_Measurement, + &ett_lppe_T_modeSpecificInfoMeas, + &ett_lppe_T_fdd_03, + &ett_lppe_T_tdd_03, + &ett_lppe_OMA_LPPe_OTDOA_UTRA_UE_RX_TX_TimeDifferenceType2Info, + &ett_lppe_OMA_LPPe_OTDOA_UTRA_NeighborList, + &ett_lppe_OMA_LPPe_OTDOA_UTRA_Neighbor, + &ett_lppe_T_modeSpecificInfo_03, + &ett_lppe_T_fdd_04, + &ett_lppe_T_tdd_04, + &ett_lppe_OMA_LPPe_OTDOA_UTRA_NeighborQuality, + &ett_lppe_OMA_LPPe_OTDOA_UTRA_Quality, + &ett_lppe_OMA_LPPe_OTDOA_UTRA_TimeStampData, + &ett_lppe_T_nonUniqueCellID, + &ett_lppe_OMA_LPPe_OTDOA_UTRA_RequestLocationInformation, + &ett_lppe_OMA_LPPe_OTDOA_UTRA_ProvideCapabilities, + &ett_lppe_OMA_LPPe_OTDOA_UTRA_RequestCapabilities, + &ett_lppe_OMA_LPPe_OTDOA_UTRA_Error, + &ett_lppe_OMA_LPPe_OTDOA_UTRA_LocationServerErrorCauses, + &ett_lppe_OMA_LPPe_OTDOA_UTRA_TargetDeviceErrorCauses, + &ett_lppe_OMA_LPPe_OTDOA_UTRA_PrimaryCPICH_Info, + &ett_lppe_OMA_LPPe_OTDOA_UTRA_CellAndChannelIdentity, + &ett_lppe_OMA_LPPe_ECID_LTE_ProvideAssistanceData, + &ett_lppe_SEQUENCE_SIZE_1_maxLTENetworks_OF_OMA_LPPe_ECID_LTE_NetworkData, + &ett_lppe_OMA_LPPe_ECID_LTE_NetworkData, + &ett_lppe_T_plmn_Identity, + &ett_lppe_T_mcc, + &ett_lppe_T_mnc, + &ett_lppe_SEQUENCE_SIZE_1_maxLTEeNBs_OF_OMA_LPPe_ECID_LTE_eNodeBData, + &ett_lppe_SEQUENCE_SIZE_1_maxLTEHeNBs_OF_OMA_LPPe_ECID_LTE_HeNBData, + &ett_lppe_OMA_LPPe_ECID_LTE_eNodeBData, + &ett_lppe_SEQUENCE_SIZE_1_maxLTEMacroCells_OF_OMA_LPPe_ECID_LTE_CellData, + &ett_lppe_OMA_LPPe_ECID_LTE_HeNBData, + &ett_lppe_OMA_LPPe_ECID_LTE_CellData, + &ett_lppe_OMA_LPPe_ECID_LTE_RequestAssistanceData, + &ett_lppe_T_eNBrequestedAD, + &ett_lppe_T_heNBrequestedAD, + &ett_lppe_OMA_LPPe_ECID_LTE_ProvideLocationInformation, + &ett_lppe_SEQUENCE_SIZE_1_maxLTEECIDSize_OF_OMA_LPPe_ECID_LTE_LocationInformationList, + &ett_lppe_OMA_LPPe_ECID_LTE_LocationInformationList, + &ett_lppe_OMA_LPPe_ECID_LTE_LocationInformation, + &ett_lppe_OMA_LPPe_ECID_LTE_RequestLocationInformation, + &ett_lppe_T_requestedMeasurements, + &ett_lppe_OMA_LPPe_ECID_LTE_ProvideCapabilities, + &ett_lppe_T_ecid_lte_MeasSupported, + &ett_lppe_T_ecid_lte_eNodeB_ADSupported, + &ett_lppe_T_ecid_utra_HeNB_ADSupported, + &ett_lppe_OMA_LPPe_ECID_LTE_RequestCapabilities, + &ett_lppe_OMA_LPPe_ECID_LTE_Error, + &ett_lppe_OMA_LPPe_ECID_LTE_LocationServerErrorCauses, + &ett_lppe_OMA_LPPe_ECID_LTE_TargetDeviceErrorCauses, + &ett_lppe_OMA_LPPe_ECID_GSM_ProvideAssistanceData, + &ett_lppe_SEQUENCE_SIZE_1_maxGSMNetworks_OF_OMA_LPPe_ECID_GSM_NetworkData, + &ett_lppe_OMA_LPPe_ECID_GSM_NetworkData, + &ett_lppe_T_plmn_Identity_01, + &ett_lppe_T_mcc_01, + &ett_lppe_T_mnc_01, + &ett_lppe_SEQUENCE_SIZE_1_maxGSMBaseStations_OF_OMA_LPPe_ECID_GSM_BaseStationData, + &ett_lppe_OMA_LPPe_ECID_GSM_BaseStationData, + &ett_lppe_SEQUENCE_SIZE_1_maxGSMCells_OF_OMA_LPPe_ECID_GSM_CellData, + &ett_lppe_OMA_LPPe_ECID_GSM_CellData, + &ett_lppe_OMA_LPPe_ECID_GSM_RequestAssistanceData, + &ett_lppe_T_requestedAD, + &ett_lppe_OMA_LPPe_ECID_GSM_ProvideLocationInformation, + &ett_lppe_SEQUENCE_SIZE_1_maxGSMECIDSize_OF_OMA_LPPe_ECID_GSM_LocationInformationList, + &ett_lppe_OMA_LPPe_ECID_GSM_LocationInformationList, + &ett_lppe_OMA_LPPe_ECID_GSM_LocationInformation, + &ett_lppe_OMA_LPPe_NMR_GERAN, + &ett_lppe_OMA_LPPe_NMR_GERAN_item, + &ett_lppe_OMA_LPPe_ECID_GSM_RequestLocationInformation, + &ett_lppe_T_requestedMeasurements_01, + &ett_lppe_OMA_LPPe_ECID_GSM_ProvideCapabilities, + &ett_lppe_T_ecid_gsm_MeasSupported, + &ett_lppe_T_ecid_gsm_ADSupported, + &ett_lppe_OMA_LPPe_ECID_GSM_RequestCapabilities, + &ett_lppe_OMA_LPPe_ECID_GSM_Error, + &ett_lppe_OMA_LPPe_ECID_GSM_LocationServerErrorCauses, + &ett_lppe_OMA_LPPe_ECID_GSM_TargetDeviceErrorCauses, + &ett_lppe_OMA_LPPe_ECID_UTRA_ProvideAssistanceData, + &ett_lppe_SEQUENCE_SIZE_1_maxUTRANetworks_OF_OMA_LPPe_ECID_UTRA_NetworkData, + &ett_lppe_OMA_LPPe_ECID_UTRA_NetworkData, + &ett_lppe_T_plmn_Identity_02, + &ett_lppe_T_mcc_02, + &ett_lppe_T_mnc_02, + &ett_lppe_SEQUENCE_SIZE_1_maxUTRAnodeBs_OF_OMA_LPPe_ECID_UTRA_NodeBData, + &ett_lppe_SEQUENCE_SIZE_1_maxUTRAHNBs_OF_OMA_LPPe_ECID_UTRA_HNBData, + &ett_lppe_OMA_LPPe_ECID_UTRA_NodeBData, + &ett_lppe_SEQUENCE_SIZE_1_maxUTRAMacroCells_OF_OMA_LPPe_ECID_UTRA_CellData, + &ett_lppe_OMA_LPPe_ECID_UTRA_HNBData, + &ett_lppe_OMA_LPPe_ECID_UTRA_CellData, + &ett_lppe_T_modeSpecificInfo_04, + &ett_lppe_T_fdd_05, + &ett_lppe_T_tdd_05, + &ett_lppe_OMA_LPPe_ECID_UTRA_RequestAssistanceData, + &ett_lppe_T_nBrequestedAD, + &ett_lppe_T_hNBrequestedAD, + &ett_lppe_OMA_LPPe_ECID_UTRA_ProvideLocationInformation, + &ett_lppe_SEQUENCE_SIZE_1_maxECIDUTRASize_OF_OMA_LPPe_ECID_UTRA_LocationInformationList, + &ett_lppe_OMA_LPPe_ECID_UTRA_LocationInformationList, + &ett_lppe_OMA_LPPe_ECID_UTRA_LocationInformation, + &ett_lppe_OMA_LPPe_ECID_UTRA_UTRATimingAdvance, + &ett_lppe_OMA_LPPe_UTRA_FrequencyInfo, + &ett_lppe_OMA_LPPe_UTRA_ModeSpecificInfo, + &ett_lppe_OMA_LPPe_UTRA_FrequencyInfoFDD, + &ett_lppe_OMA_LPPe_UTRA_FrequencyInfoTDD, + &ett_lppe_OMA_LPPe_ECID_UTRA_MeasuredResultsList, + &ett_lppe_OMA_LPPe_ECID_UTRA_MeasuredResults, + &ett_lppe_OMA_LPPe_ECID_UTRA_CellMeasuredResultsList, + &ett_lppe_OMA_LPPe_ECID_UTRA_CellMeasuredResults, + &ett_lppe_T_modeSpecificInfo_05, + &ett_lppe_T_fdd_06, + &ett_lppe_T_tdd_06, + &ett_lppe_OMA_LPPe_ECID_UTRA_RequestLocationInformation, + &ett_lppe_T_requestedMeasurements_02, + &ett_lppe_OMA_LPPe_ECID_UTRA_ProvideCapabilities, + &ett_lppe_T_ecid_utra_MeasSupported, + &ett_lppe_T_ecid_utra_nodeB_ADSupported, + &ett_lppe_T_ecid_utra_HNB_ADSupported, + &ett_lppe_OMA_LPPe_ECID_UTRA_RequestCapabilities, + &ett_lppe_OMA_LPPe_ECID_UTRA_Error, + &ett_lppe_OMA_LPPe_ECID_UTRA_LocationServerErrorCauses, + &ett_lppe_OMA_LPPe_ECID_UTRA_TargetDeviceErrorCauses, + &ett_lppe_OMA_LPPe_WLAN_AP_ProvideAssistanceData, + &ett_lppe_SEQUENCE_SIZE_1_maxWLANDataSets_OF_OMA_LPPe_WLAN_DataSet, + &ett_lppe_OMA_LPPe_WLAN_DataSet, + &ett_lppe_T_plmn_Identity_03, + &ett_lppe_T_mcc_03, + &ett_lppe_T_mnc_03, + &ett_lppe_SEQUENCE_SIZE_1_maxWLANAPs_OF_OMA_LPPe_WLAN_AP_Data, + &ett_lppe_Supported_Channels_11a, + &ett_lppe_Supported_Channels_11bg, + &ett_lppe_OMA_LPPe_WLAN_AP_Data, + &ett_lppe_SEQUENCE_SIZE_1_maxWLANTypes_OF_OMA_LPPe_WLAN_AP_Type_Data, + &ett_lppe_OMA_LPPe_WLAN_AP_Type_Data, + &ett_lppe_OMA_LPPe_WLAN_AP_RequestAssistanceData, + &ett_lppe_T_requestedAD_01, + &ett_lppe_OMA_LPPe_WLAN_AP_ProvideLocationInformation, + &ett_lppe_SEQUENCE_SIZE_1_maxWLANAPSize_OF_OMA_LPPe_WLAN_AP_LocationInformationList, + &ett_lppe_OMA_LPPe_WLAN_AP_LocationInformationList, + &ett_lppe_OMA_LPPe_WLAN_AP_LocationInformation, + &ett_lppe_OMA_LPPe_WLAN_RTD, + &ett_lppe_OMA_LPPe_WLAN_ReportedLocation, + &ett_lppe_OMA_LPPe_WLAN_LocationDataLCI, + &ett_lppe_OMA_LPPe_WLAN_AP_RequestLocationInformation, + &ett_lppe_T_requestedMeasurements_03, + &ett_lppe_OMA_LPPe_WLAN_AP_ProvideCapabilities, + &ett_lppe_T_wlan_ecid_MeasSupported, + &ett_lppe_T_wlan_ap_ADSupported, + &ett_lppe_OMA_LPPe_WLAN_AP_Capability, + &ett_lppe_OMA_LPPe_WLAN_AP_RequestCapabilities, + &ett_lppe_OMA_LPPe_WLAN_AP_Error, + &ett_lppe_OMA_LPPe_WLAN_AP_LocationServerErrorCauses, + &ett_lppe_OMA_LPPe_WLAN_AP_TargetDeviceErrorCauses, + &ett_lppe_OMA_LPPe_ECID_WiMax_ProvideLocationInformation, + &ett_lppe_SEQUENCE_SIZE_1_maxWiMaxECIDSize_OF_OMA_LPPe_ECID_WiMax_LocationInformationList, + &ett_lppe_OMA_LPPe_ECID_WiMax_LocationInformationList, + &ett_lppe_OMA_LPPe_ECID_WiMax_LocationInformation, + &ett_lppe_OMA_LPPe_ECID_WiMax_WimaxBsID, + &ett_lppe_OMA_LPPe_ECID_WiMax_WimaxRTD, + &ett_lppe_OMA_LPPe_ECID_WiMax_WimaxNMRList, + &ett_lppe_OMA_LPPe_ECID_WiMax_WimaxNMR, + &ett_lppe_OMA_LPPe_ECID_WiMax_RequestLocationInformation, + &ett_lppe_T_requestedMeasurements_04, + &ett_lppe_OMA_LPPe_ECID_WiMax_ProvideCapabilities, + &ett_lppe_T_ecid_wimax_MeasSupported, + &ett_lppe_OMA_LPPe_ECID_WiMax_RequestCapabilities, + &ett_lppe_OMA_LPPe_ECID_WiMax_Error, + &ett_lppe_OMA_LPPe_ECID_WiMax_LocationServerErrorCauses, + &ett_lppe_OMA_LPPe_ECID_WiMax_TargetDeviceErrorCauses, + &ett_lppe_OMA_LPPe_Sensor_ProvideAssistanceData, + &ett_lppe_OMA_LPPe_Sensor_RequestAssistanceData, + &ett_lppe_OMA_LPPe_Sensor_ProvideLocationInformation, + &ett_lppe_OMA_LPPe_Sensor_MotionStateList, + &ett_lppe_OMA_LPPe_Sensor_MotionStateElement, + &ett_lppe_T_secondaryMotionState, + &ett_lppe_OMA_LPPe_Sensor_RequestLocationInformation, + &ett_lppe_OMA_LPPe_Sensor_MotionStateRequest, + &ett_lppe_OMA_LPPe_Sensor_ProvideCapabilities, + &ett_lppe_OMA_LPPe_Sensor_RequestCapabilities, + &ett_lppe_OMA_LPPe_Sensor_Error, + &ett_lppe_OMA_LPPe_Sensor_TargetError, + &ett_lppe_OMA_LPPe_SRN_ProvideAssistanceData, + &ett_lppe_T_srnGroup, + &ett_lppe_OMA_LPPe_SRN_SRNgroupList, + &ett_lppe_SEQUENCE_SIZE_1_64_OF_OMA_LPPe_SRN_SRNgroup, + &ett_lppe_OMA_LPPe_SRN_SRNgroup, + &ett_lppe_SEQUENCE_SIZE_1_1024_OF_OMA_LPPe_SRN_SRNinfo, + &ett_lppe_OMA_LPPe_SRN_SRNinfo, + &ett_lppe_OMA_LPPe_SRN_SRNgroupUpdateResponse, + &ett_lppe_OMA_LPPe_SRN_SRNgroupUpdateResponseElement, + &ett_lppe_OMA_LPPe_SRN_AntennaPattern, + &ett_lppe_OMA_LPPe_SRN_AntennaPatternElement, + &ett_lppe_T_identification, + &ett_lppe_T_antennaData, + &ett_lppe_OMA_LPPe_SRN_AntennaPatternForChannels, + &ett_lppe_T_evenGrid, + &ett_lppe_SEQUENCE_SIZE_1_maxChannels_OF_OMA_LPPe_SRN_ChannelResponse, + &ett_lppe_OMA_LPPe_SRN_ChannelResponse, + &ett_lppe_SEQUENCE_SIZE_7_901_OF_OMA_LPPe_SRN_ResponseInElevation, + &ett_lppe_OMA_LPPe_SRN_ResponseInElevation, + &ett_lppe_SEQUENCE_SIZE_18_3601_OF_OMA_LPPe_SRN_ResponseInAzimuth, + &ett_lppe_OMA_LPPe_SRN_ResponseInAzimuth, + &ett_lppe_OMA_LPPe_ComplexNumber, + &ett_lppe_OMA_LPPe_SRN_RequestAssistanceData, + &ett_lppe_T_srnGroup_01, + &ett_lppe_OMA_LPPe_SRN_SRNgroupRequest, + &ett_lppe_OMA_LPPe_SRN_SRNProvideList, + &ett_lppe_SEQUENCE_SIZE_1_256_OF_OMA_LPPe_SRN_SRNgroupUniqueID, + &ett_lppe_SEQUENCE_SIZE_1_16_OF_OMA_LPPe_SRN_Category, + &ett_lppe_OMA_LPPe_SRN_SRNgroupUpdateRequest, + &ett_lppe_OMA_LPPe_SRN_SRNgroupUpdateRequestElement, + &ett_lppe_SEQUENCE_SIZE_1_1024_OF_OMA_LPPe_SRN_SRNid, + &ett_lppe_OMA_LPPe_SRN_AntennaPatternRequest, + &ett_lppe_OMA_LPPe_SRN_AntennaPatternRequestElement, + &ett_lppe_T_antennaPatternID, + &ett_lppe_OMA_LPPe_SRN_ProvideLocationInformation, + &ett_lppe_SEQUENCE_SIZE_1_64_OF_OMA_LPPe_SRN_MeasurementElement, + &ett_lppe_OMA_LPPe_SRN_MeasurementElement, + &ett_lppe_SEQUENCE_SIZE_1_64_OF_OMA_LPPe_SRN_srnMeasurementElement, + &ett_lppe_OMA_LPPe_SRN_srnMeasurementElement, + &ett_lppe_OMA_LPPe_SRN_RequestLocationInformation, + &ett_lppe_SEQUENCE_SIZE_1_16_OF_OMA_LPPe_SRN_ReqLocInfo_Category, + &ett_lppe_OMA_LPPe_SRN_ReqLocInfo_Category, + &ett_lppe_OMA_LPPe_SRN_ProvideCapabilities, + &ett_lppe_SEQUENCE_SIZE_1_16_OF_OMA_LPPe_SRN_ProvideCapabilitiesElement, + &ett_lppe_OMA_LPPe_SRN_ProvideCapabilitiesElement, + &ett_lppe_T_supportedAssistanceData, + &ett_lppe_OMA_LPPe_SRN_RequestCapabilities, + &ett_lppe_OMA_LPPe_SRN_Error, + &ett_lppe_OMA_LPPe_SRN_LocationServerErrorCauses, + &ett_lppe_OMA_LPPe_SRN_TargetDeviceErrorCauses, + &ett_lppe_SEQUENCE_SIZE_1_16_OF_OMA_LPPe_SRN_TargetDeviceError, + &ett_lppe_OMA_LPPe_SRN_TargetDeviceError, + &ett_lppe_OMA_LPPe_SRN_SRNgroupUniqueID, + &ett_lppe_OMA_LPPe_SRN_SRNtype, + &ett_lppe_T_srnAntennaInfo, + &ett_lppe_OMA_LPPe_SRN_Category, + &ett_lppe_T_srnVendorInformation, + &ett_lppe_OMA_LPPe_SRN_SRNid, + &ett_lppe_T_srn_id, + &ett_lppe_T_nfc, + &ett_lppe_T_mobileCode, + &ett_lppe_OMA_LPPe_SRN_Technologies, + &ett_lppe_OMA_LPPe_SRN_MeasurementMask, + &ett_lppe_T_srnMeasurements, + +/*--- End of included file: packet-lppe-ettarr.c ---*/ +#line 77 "../../asn1/lppe/packet-lppe-template.c" + }; + + + /* Register protocol */ + proto_lppe = proto_register_protocol(PNAME, PSNAME, PFNAME); + new_register_dissector("lppe", dissect_OMA_LPPe_MessageExtension_PDU, proto_lppe); + + /* Register fields and subtrees */ + proto_register_field_array(proto_lppe, hf, array_length(hf)); + proto_register_subtree_array(ett, array_length(ett)); + + +} + + +/*--- proto_reg_handoff_lpp ---------------------------------------*/ +void +proto_reg_handoff_lppe(void) +{ + +} + + |