summaryrefslogtreecommitdiff
path: root/enhanced-position-service/dbus/api/genivi-positioning-enhancedposition.xml
diff options
context:
space:
mode:
Diffstat (limited to 'enhanced-position-service/dbus/api/genivi-positioning-enhancedposition.xml')
-rw-r--r--enhanced-position-service/dbus/api/genivi-positioning-enhancedposition.xml168
1 files changed, 168 insertions, 0 deletions
diff --git a/enhanced-position-service/dbus/api/genivi-positioning-enhancedposition.xml b/enhanced-position-service/dbus/api/genivi-positioning-enhancedposition.xml
new file mode 100644
index 0000000..f5e2f99
--- /dev/null
+++ b/enhanced-position-service/dbus/api/genivi-positioning-enhancedposition.xml
@@ -0,0 +1,168 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE node PUBLIC "-//freedesktop//DTD D-BUS Object Introspection 1.0//EN" "http://www.freedesktop.org/standards/dbus/1.0/introspect.dtd">
+<?xml-stylesheet type="text/xsl" href="introspect.xsl"?>
+
+<!-- SPDX-License-Identifier: MPL-2.0
+ Component Name: EnhancedPositionService
+ Compliance Level: Abstract Component
+ Copyright (C) 2012, BMW Car IT GmbH, Continental Automotive GmbH, PCA Peugeot Citroën, XS Embedded GmbH
+ License:
+ This Source Code Form is subject to the terms of the
+ Mozilla Public License, v. 2.0. If a copy of the MPL was not distributed with
+ this file, You can obtain one at http://mozilla.org/MPL/2.0/.
+-->
+
+<node name="/org/genivi/positioning/EnhancedPosition" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:noNamespaceSchemaLocation="introspect.xsd">
+
+ <interface name="org.genivi.positioning.EnhancedPosition">
+ <version>3.0.0 (10-Dec-2014)</version>
+ <doc>
+ <line>EnhancedPosition = This interface offers functionalities to retrieve the enhanced position of the vehicle</line>
+ </doc>
+
+ <method name="GetVersion">
+ <doc>
+ <line>GetVersion = This method returns the API version implemented by the server application</line>
+ </doc>
+ <arg name="version" type="(qqqs)" direction="out">
+ <doc>
+ <line>version = struct(major,minor,micro,date)</line>
+ <line>major = when the major changes, then backward compatibility with previous releases is not granted</line>
+ <line>minor = when the minor changes, then backward compatibility with previous releases is granted, but something changed in the implementation of the API (e.g. new methods may have been added)</line>
+ <line>micro = when the micro changes, then backward compatibility with previous releases is granted (bug fixes or documentation modifications)</line>
+ <line>date = release date (e.g. 21-06-2011)</line>
+ </doc>
+ </arg>
+ </method>
+
+ <method name="GetPositionInfo">
+ <doc>
+ <line>GetPositionInfo = This method returns a given set of positioning data (e.g. Position, Course, Accuracy, Status, ... )</line>
+ </doc>
+
+ <arg name="valuesToReturn" type="t" direction="in">
+ <doc>
+ <line>valuesToReturn = Bitmask obtained as result of a bitwise OR operation on the keys corresponding to requested values</line>
+ <line>Keys: LATITUDE,LONGITUDE,ALTITUDE,</line>
+ <line> HEADING,SPEED,CLIMB,</line>
+ <line> ROLL_RATE,PITCH_RATE,YAW_RATE,</line>
+ <line> PDOP,HDOP,VDOP,</line>
+ <line> USED_SATELLITES,TRACKED_SATELLITES,VISIBLE_SATELLITES,</line>
+ <line> SIGMA_HPOSITION,SIGMA_ALTITUDE,</line>
+ <line> SIGMA_HEADING,SIGMA_SPEED,SIGMA_CLIMB,</line>
+ <line> GNSS_FIX_STATUS,DR_STATUS</line>
+ </doc>
+ </arg>
+
+ <arg name="timestamp" type="t" direction="out">
+ <doc>
+ <line>timestamp = Timestamp of the acquisition of the position data [ms]</line>
+ <line> Note: All timestamps must be based on the same time source.</line>
+ </doc>
+ </arg>
+
+ <arg name="data" type="a{tv}" direction="out">
+ <doc>
+ <line>data = dictionary[key,value]</line>
+ <line>dictionary = array of tuples (key,value)</line>
+ <line>Invalid data is not be returned to the client application</line>
+ <line>The vehicle axis system is defined by ISO 8855: In short, the X-axis pointing is forwards, the Y-axis is pointing left, the Z-axis is pointing upwards</line>
+ <line>key = enum(LATITUDE,LONGITUDE,ALTITUDE,HEADING,SPEED,CLIMB,ROLL_RATE,PITCH_RATE,YAW_RATE,PDOP,HDOP,VDOP,USED_SATELLITES,TRACKED_SATELLITES,VISIBLE_SATELLITES,SIGMA_HPOSITION,SIGMA_ALTITUDE,SIGMA_HEADING,SIGMA_SPEED,SIGMA_CLIMB,GNSS_FIX_STATUS,DR_STATUS)</line>
+ <line>key = LATITUDE, value = value of type 'd', that expresses the WGS84 latitude of the current position in degrees. Range [-90:+90]. Example: 48.053250</line>
+ <line>key = LONGITUDE, value = value of type 'd', that expresses the WGS84 longitude of the current position in degrees. Range [-180:+180]. Example: 8.324500</line>
+ <line>key = ALTITUDE, value = value of type 'd', that expresses the altitude above the sea level of the current position in meters</line>
+ <line>key = HEADING, value = value of type 'd', that expresses the course angle in degree. Range [0:360]. 0 = north, 90 = east, 180 = south, 270 = west</line>
+ <line>key = SPEED, value = value of type 'd', that expresses speed measured in m/s. A negative value indicates that the vehicle is moving backwards</line>
+ <line>key = CLIMB, value = value of type 'd', that expresses the road gradient in degrees. Range [-180:+180]. A positive value means upwards. </line>
+ <line>key = ROLL_RATE, value = value of type 'd', rotation rate around the X-axis in degrees/s. Range [-100:+100]</line>
+ <line>key = PITCH_RATE, value = value of type 'd', rotation rate around the Y-axis in degrees/s. Range [-100:+100]</line>
+ <line>key = YAW_RATE, value = value of type 'd', rotation rate around the Z-axis in degrees/s. Range [-100:+100]</line>
+ <line>key = PDOP, value = value of type 'd', that represents the positional (3D) dilution of precision</line>
+ <line>key = HDOP, value = value of type 'd', that represents the horizontal (2D) dilution of precision</line>
+ <line>key = VDOP, value = value of type 'd', that represents vertical (altitude) dilution of precision</line>
+ <line>key = USED_SATELLITES, value = value of type 'y', that represents the number of used satellites</line>
+ <line>key = TRACKED_SATELLITES, value = value of type 'y', that represents the number of tracked satellites</line>
+ <line>key = VISIBLE_SATELLITES, value = value of type 'y', that represents the number of visible satellites</line>
+ <line>key = SIGMA_HPOSITION, value = value of type 'd', that represents the standard error estimate of the horizontal position in m</line>
+ <line>key = SIGMA_ALTITUDE, value = value of type 'd', that represents the standard error estimate of the altitude in m</line>
+ <line>key = SIGMA_HEADING, value = value of type 'd', that represents the standard error estimate of the heading in degrees</line>
+ <line>key = SIGMA_SPEED, value = value of type 'd', that represents the standard error estimate of the speed in m/s</line>
+ <line>key = SIGMA_CLIMB, value = value of type 'd', that represents the standard error estimate of the climb in degrees</line>
+ <line>key = GNSS_FIX_STATUS, value = value of type 'q', that represents an enum(NO_FIX(0x00),TIME_FIX(0x01),2D_FIX(0x02),3D_FIX(0x03), ... )</line>
+ <line>key = DR_STATUS, value = value of type 'b', where TRUE means that a dead-reckoning algorithm has been used to calculate the current position</line>
+ </doc>
+ </arg>
+ </method>
+
+ <signal name="PositionUpdate">
+ <doc>
+ <line>PositionUpdate = This signal is called to notifiy a client application that updated positioning data is available. The update frequency is implementation specific. The maximum allowed frequency is 10Hz</line>
+ </doc>
+ <arg name="changedValues" type="t">
+ <doc>
+ <line>changedValues = Bitmask obtained as result of a bitwise OR operation on the keys corresponding to updated values</line>
+ <line>LATITUDE,LONGITUDE,ALTITUDE,</line>
+ <line> HEADING,SPEED,CLIMB,</line>
+ <line> ROLL_RATE,PITCH_RATE,YAW_RATE,</line>
+ <line> PDOP,HDOP,VDOP,</line>
+ <line> USED_SATELLITES,TRACKED_SATELLITES,VISIBLE_SATELLITES,</line>
+ <line> SIGMA_HPOSITION,SIGMA_ALTITUDE,</line>
+ <line> SIGMA_HEADING,SIGMA_SPEED,SIGMA_CLIMB,</line>
+ <line> GNSS_FIX_STATUS,DR_STATUS</line>
+ </doc>
+ </arg>
+ </signal>
+
+ <method name="GetSatelliteInfo">
+ <doc>
+ <line>GetSatelliteInfo = This method returns information about the current satellite constellation</line>
+ </doc>
+ <arg name="timestamp" type="t" direction="out">
+ <doc>
+ <line>timestamp = Timestamp of the acquisition of the satellite detail data [ms]</line>
+ <line> Note: All timestamps must be based on the same time source.</line>
+ </doc>
+ </arg>
+ <arg name="satelliteInfo" type="a(qqqqqb)" direction="out">
+ <doc>
+ <line>satelliteInfo = array(struct(system,satelliteId,azimuth,elevation,snr,inUse))</line>
+ <line> system = enum(GPS, GLONASS, GALILEO, COMPASS, ... )</line>
+ <line> satelliteId = satellite ID. This ID is unique within one satellite system</line>
+ <line> azimuth = satellite azimuth in degrees. Value range 0..359</line>
+ <line> elevation = satellite elevation in degrees. Value range 0..90</line>
+ <line> snr = SNR (C/No) in dBHz. Range 0 to 99, null when not tracking</line>
+ <line> inUse = flag indicating if the satellite is used for the fix (inUse=true)</line>
+ </doc>
+ </arg>
+ </method>
+
+ <method name="GetTime">
+ <doc>
+ <line>GetTime = This method returns UTC time and date</line>
+ </doc>
+ <arg name="timestamp" type="t" direction="out">
+ <doc>
+ <line>timestamp = Timestamp of the acquisition of the UTC date/time [ms]</line>
+ <line> Note: All timestamps must be based on the same time source.</line>
+ </doc>
+ </arg>
+ <arg name="time" type="a{tv}" direction="out">
+ <doc>
+ <line>time = dictionary[key,value]</line>
+ <line>dictionary = array of tuples (key,value)</line>
+ <line>If you request for a specific value which is invalid, it's not returned in the dictionary.</line>
+ <line>key = enum(YEAR,MONTH,DAY,HOUR,MINUTE,SECOND,MS, ... )</line>
+ <line>key = YEAR, value = value of type 'q', 4 digits number that indicates the year. Example: 2012</line>
+ <line>key = MONTH, value = value of type 'y', 2 digits number that indicates the month. Example: 03 means March</line>
+ <line>key = DAY, value = value of type 'y', 2 digits number that indicates the day. Range [0:31]. Example: 07</line>
+ <line>key = HOUR, value = value of type 'y', 2 digits number that indicates the hour. Range [0:23]. Example: 01</line>
+ <line>key = MINUTE, value = value of type 'y', 2 digits number that represents the minutes. Range [0:59]. Example: 01</line>
+ <line>key = SECOND, value = value of type 'y', 2 digits number that represents the seconds. Range [0:59], for leap seconds, also 60 is allowed. Example: 01</line>
+ <line>key = MS, value = value of type 'q', 3 digits number that represents the milliseconds. Range [0:999]. Example: 007</line>
+ </doc>
+ </arg>
+ </method>
+
+ </interface>
+
+</node>