| /****************************************************************************** |
| * Copyright (c) 2000-2019 Ericsson AB |
| * All rights reserved. This program and the accompanying materials |
| * are made available under the terms of the Eclipse Public License v2.0 |
| * which accompanies this distribution, and is available at |
| * https://www.eclipse.org/org/documents/epl-2.0/EPL-2.0.html |
| * |
| * Contributors: |
| * Gabor Szalai - initial implementation and initial documentation |
| ******************************************************************************/ |
| // |
| // File: TS29572_Nlmf_Location.ttcn |
| // Description: Type definitions for 3GPP TS29572 |
| /////////////////////////////////////////////// |
| module TS29572_Nlmf_Location { |
| |
| import from TS29571_CommonData all |
| |
| external function f_enc_InputData(in InputData pdu) return octetstring |
| with { extension "prototype(convert) encode(JSON)" } |
| |
| external function f_dec_InputData(in octetstring stream, out InputData pdu) return integer |
| with { extension "prototype(backtrack) decode(JSON)" } |
| |
| external function f_enc_LocationData(in LocationData pdu) return octetstring |
| with { extension "prototype(convert) encode(JSON)" } |
| |
| external function f_dec_LocationData(in octetstring stream, out LocationData pdu) return integer |
| with { extension "prototype(backtrack) decode(JSON)" } |
| |
| |
| type set InputData { |
| ExternalClientType externalClientType optional, |
| CorrelationID correlationID optional, |
| LocationQoS locationQoS optional, |
| set of SupportedGADShapes supportedGADShapes optional, |
| TS29571_CommonData.Supi supi optional, |
| TS29571_CommonData.Pei pei optional, |
| TS29571_CommonData.Gpsi gpsi optional, |
| TS29571_CommonData.Ecgi ecgi optional, |
| TS29571_CommonData.Ncgi ncgi optional, |
| LcsPriority priority optional, |
| VelocityRequested velocityRequested optional |
| } |
| |
| type set LocationData { |
| GeographicArea locationEstimate, |
| AccuracyFulfilmentIndicator accuracyFulfilmentIndicator optional, |
| AgeOfLocationEstimate ageOfLocationEstimate optional, |
| VelocityEstimate velocityEstimate optional, |
| CivicAddress civicAddress optional, |
| set of PositioningMethodAndUsage positioningDataList optional, |
| set of GnssPositioningMethodAndUsage gnssPositioningDataList optional, |
| TS29571_CommonData.Ecgi ecgi optional, |
| TS29571_CommonData.Ncgi ncgi optional, |
| Altitude altitude optional |
| } |
| |
| type union GeographicArea { |
| Point point, |
| PointUncertaintyCircle pointUncertaintyCircle, |
| PointUncertaintyEllipse pointUncertaintyEllipse, |
| Polygon polygon, |
| PointAltitude pointAltitude, |
| PointAltitudeUncertainty pointAltitudeUncertainty, |
| EllipsoidArc ellipsoidArc |
| } with { |
| variant "JSON: as value" |
| } |
| |
| |
| type set GADShape { |
| SupportedGADShapes shape |
| } |
| |
| type set Point { |
| enumerated {POINT} shape, |
| GeographicalCoordinates point |
| } |
| |
| type set PointUncertaintyCircle { |
| enumerated {POINT_UNCERTAINTY_CIRCLE} shape, |
| GeographicalCoordinates point, |
| Uncertainty uncertainty |
| } |
| |
| type set PointUncertaintyEllipse { |
| enumerated {POINT_UNCERTAINTY_ELLIPSE} shape, |
| GeographicalCoordinates point, |
| UncertaintyEllipse uncertaintyEllipse, |
| Confidence confidence |
| } |
| |
| type set Polygon { |
| enumerated {POLYGON} shape, |
| PointList pointList |
| } |
| |
| type set PointAltitude { |
| enumerated {POINT_ALTITUDE} shape, |
| GeographicalCoordinates point, |
| Altitude altitude |
| } |
| |
| type set PointAltitudeUncertainty { |
| enumerated {POINT_ALTITUDE_UNCERTAINTY} shape, |
| GeographicalCoordinates point, |
| Altitude altitude, |
| UncertaintyEllipse uncertaintyEllipse, |
| Uncertainty uncertaintyAltitude, |
| Confidence confidence |
| } |
| |
| type set EllipsoidArc { |
| enumerated {ELLIPSOID_ARC} shape, |
| GeographicalCoordinates point, |
| InnerRadius innerRadius, |
| Uncertainty uncertaintyRadius, |
| Angle offsetAngle, |
| Angle includedAngle, |
| Confidence confidence |
| } |
| |
| type set GeographicalCoordinates { |
| float lon, |
| float lat |
| } |
| |
| type set UncertaintyEllipse { |
| Uncertainty semiMajor, |
| Uncertainty semiMinor, |
| Orientation orientationMajor |
| } |
| |
| type set of GeographicalCoordinates PointList |
| |
| type set LocationQoS { |
| Accuracy hAccuracy optional, |
| Accuracy vAccuracy optional, |
| boolean verticalRequested optional, |
| ResponseTime responseTime optional |
| } |
| |
| type set PositioningMethodAndUsage { |
| PositioningMethod method, |
| PositioningMode mode, |
| Usage usage |
| } |
| |
| type set GnssPositioningMethodAndUsage { |
| PositioningMode mode, |
| GnssId gnss, |
| Usage usage |
| } |
| |
| type set CivicAddress { |
| charstring country optional, |
| charstring A1 optional, |
| charstring A2 optional, |
| charstring A3 optional, |
| charstring A4 optional, |
| charstring A5 optional, |
| charstring A6 optional, |
| charstring PRD optional, |
| charstring POD optional, |
| charstring STS optional, |
| charstring HNO optional, |
| charstring HNS optional, |
| charstring LMK optional, |
| charstring LOC optional, |
| charstring NAM optional, |
| charstring PC optional, |
| charstring BLD optional, |
| charstring UNIT optional, |
| charstring ROOM optional, |
| charstring PLC optional, |
| charstring PCN optional, |
| charstring POBOX optional, |
| charstring ADDCODE optional, |
| charstring SEAT optional, |
| charstring RD optional, |
| charstring RDSEC optional, |
| charstring RDBR optional, |
| charstring RDSUBBR optional, |
| charstring PRM optional, |
| charstring POM optional |
| } |
| |
| type union VelocityEstimate { |
| HorizontalVelocity field1, |
| HorizontalWithVerticalVelocity field2, |
| HorizontalVelocityWithUncertainty field3, |
| HorizontalWithVerticalVelocityAndUncertainty field4 |
| } with { |
| variant "JSON: as value" |
| } |
| |
| |
| type set HorizontalVelocity { |
| HorizontalSpeed hSpeed, |
| Angle bearing |
| } |
| |
| type set HorizontalWithVerticalVelocity { |
| HorizontalSpeed hSpeed, |
| Angle bearing, |
| VerticalSpeed vSpeed, |
| VerticalDirection vDirection |
| } |
| |
| type set HorizontalVelocityWithUncertainty { |
| HorizontalSpeed hSpeed, |
| Angle bearing, |
| SpeedUncertainty hUncertainty |
| } |
| |
| type set HorizontalWithVerticalVelocityAndUncertainty { |
| HorizontalSpeed hSpeed, |
| Angle bearing, |
| VerticalSpeed vSpeed, |
| VerticalDirection vDirection, |
| SpeedUncertainty hUncertainty, |
| SpeedUncertainty vUncertainty |
| } |
| |
| type float Altitude |
| |
| type integer Angle (0..360) |
| |
| type float Uncertainty |
| |
| type integer Orientation (0..180) |
| |
| type integer Confidence (0..100) |
| |
| type float Accuracy |
| |
| type integer InnerRadius (0..infinity) |
| |
| type charstring CorrelationID |
| |
| type integer AgeOfLocationEstimate (0..32767) |
| |
| type float HorizontalSpeed |
| |
| type float VerticalSpeed |
| |
| type float SpeedUncertainty |
| |
| type enumerated ExternalClientType_enum { EMERGENCY_SERVICES, VALUE_ADDED_SERVICES, PLMN_OPERATOR_SERVICES, LAWFUL_INTERCEPT_SERVICES, PLMN_OPERATOR_BROADCAST_SERVICES, PLMN_OPERATOR_OM, PLMN_OPERATOR_ANONYMOUS_STATISTICS, PLMN_OPERATOR_TARGET_MS_SERVICE_SUPPORT} |
| |
| type union ExternalClientType { |
| ExternalClientType_enum enum_val, |
| charstring other_val |
| } with { |
| variant "JSON: as value" |
| } |
| |
| |
| type enumerated SupportedGADShapes_enum { POINT, POINT_UNCERTAINTY_CIRCLE, POINT_UNCERTAINTY_ELLIPSE, POLYGON, POINT_ALTITUDE, POINT_ALTITUDE_UNCERTAINTY, ELLIPSOID_ARC} |
| |
| type union SupportedGADShapes { |
| SupportedGADShapes_enum enum_val, |
| charstring other_val |
| } with { |
| variant "JSON: as value" |
| } |
| |
| |
| type enumerated ResponseTime_enum { LOW_DELAY, DELAY_TOLERANT} |
| |
| type union ResponseTime { |
| ResponseTime_enum enum_val, |
| charstring other_val |
| } with { |
| variant "JSON: as value" |
| } |
| |
| |
| type enumerated PositioningMethod_enum { CELLID, ECID, OTDOA, BAROMETRIC_PRESSURE, WLAN, BLUETOOTH, MBS} |
| |
| type union PositioningMethod { |
| PositioningMethod_enum enum_val, |
| charstring other_val |
| } with { |
| variant "JSON: as value" |
| } |
| |
| |
| type enumerated PositioningMode_enum { UE_BASED, UE_ASSISTED, CONVENTIONAL} |
| |
| type union PositioningMode { |
| PositioningMode_enum enum_val, |
| charstring other_val |
| } with { |
| variant "JSON: as value" |
| } |
| |
| |
| type enumerated GnssId_enum { GPS, GALILEO, SBAS, MODERNIZED_GPS, QZSS, GLONASS} |
| |
| type union GnssId { |
| GnssId_enum enum_val, |
| charstring other_val |
| } with { |
| variant "JSON: as value" |
| } |
| |
| |
| type enumerated Usage_enum { UNSUCCESS, SUCCESS_RESULTS_NOT_USED, SUCCESS_RESULTS_USED_TO_VERIFY_LOCATION, SUCCESS_RESULTS_USED_TO_GENERATE_LOCATION, SUCCESS_METHOD_NOT_DETERMINED} |
| |
| type union Usage { |
| Usage_enum enum_val, |
| charstring other_val |
| } with { |
| variant "JSON: as value" |
| } |
| |
| |
| type enumerated LcsPriority_enum { HIGHEST_PRIORITY, NORMAL_PRIORITY} |
| |
| type union LcsPriority { |
| LcsPriority_enum enum_val, |
| charstring other_val |
| } with { |
| variant "JSON: as value" |
| } |
| |
| |
| type enumerated VelocityRequested_enum { VELOCITY_IS_NOT_REQUESTED, VELOCITY_IS_REQUESTED} |
| |
| type union VelocityRequested { |
| VelocityRequested_enum enum_val, |
| charstring other_val |
| } with { |
| variant "JSON: as value" |
| } |
| |
| |
| type enumerated AccuracyFulfilmentIndicator_enum { REQUESTED_ACCURACY_FULFILLED, REQUESTED_ACCURACY_NOT_FULFILLED} |
| |
| type union AccuracyFulfilmentIndicator { |
| AccuracyFulfilmentIndicator_enum enum_val, |
| charstring other_val |
| } with { |
| variant "JSON: as value" |
| } |
| |
| |
| type enumerated VerticalDirection { UPWARD, DOWNWARD} |
| |
| |
| |
| |
| |
| |
| } with { |
| encode "JSON" |
| } |