diff options
Diffstat (limited to 'enhanced-position-service/dbus/api/genivi-positioning-enhancedposition.xml')
-rw-r--r-- | enhanced-position-service/dbus/api/genivi-positioning-enhancedposition.xml | 168 |
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> |