summaryrefslogtreecommitdiffstats
path: root/video_in_hal/vehicleservice/positioning/client/include/vehicle_service/POS_common_API.h
diff options
context:
space:
mode:
Diffstat (limited to 'video_in_hal/vehicleservice/positioning/client/include/vehicle_service/POS_common_API.h')
-rwxr-xr-xvideo_in_hal/vehicleservice/positioning/client/include/vehicle_service/POS_common_API.h1663
1 files changed, 0 insertions, 1663 deletions
diff --git a/video_in_hal/vehicleservice/positioning/client/include/vehicle_service/POS_common_API.h b/video_in_hal/vehicleservice/positioning/client/include/vehicle_service/POS_common_API.h
deleted file mode 100755
index 5ee3005..0000000
--- a/video_in_hal/vehicleservice/positioning/client/include/vehicle_service/POS_common_API.h
+++ /dev/null
@@ -1,1663 +0,0 @@
-/*
- * @copyright Copyright (c) 2016-2020 TOYOTA MOTOR CORPORATION.
- *
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-#ifndef POSITIONING_CLIENT_INCLUDE_VEHICLE_SERVICE_POS_COMMON_API_H_
-#define POSITIONING_CLIENT_INCLUDE_VEHICLE_SERVICE_POS_COMMON_API_H_
-
-/**
- * @file POS_common_API.h
- * @brief API definition file for common function
- */
-
-/** @addtogroup BaseSystem
- * @{
- */
-/** @addtogroup vehicle_service
- * @ingroup BaseSystem
- * @{
- */
-/** @addtogroup positioning
- * @ingroup vehicle_service
- * @{
- */
-/*---------------------------------------------------------------------------------*
- * Incluce *
- *---------------------------------------------------------------------------------*/
-#include <vehicle_service/POS_define.h>
-#include <gps_hal.h>
-
-/*---------------------------------------------------------------------------------*
- * Definition *
- *---------------------------------------------------------------------------------*/
-/* State definitions can be used */
-#define SENSORLOCATION_STATUS_DISABLE (0) //!< \~english Not available
-#define SENSORLOCATION_STATUS_ENABLE (1) //!< \~english Available
-
-/* State definitions can be used */
-#define SENSORMOTION_STATUS_DISABLE (0) //!< \~english Not available
-#define SENSORMOTION_STATUS_ENABLE (1) //!< \~english Available
-/* Acquisition method */
-#define SENSOR_GET_METHOD_AUTO (0) //!< \~english Not specified
-#define SENSOR_GET_METHOD_GPS (1) //!< \~english GPS
-#define SENSOR_GET_METHOD_NAVI (2) //!< \~english Navigation
-#define SENSOR_GET_METHOD_DR (3) //!< \~english Dead Reckoning
-#define SENSOR_GET_METHOD_POS (4) //!< \~english positioning (Internal)
-
-
-#define LOCATIONINFO_NMEA_MAX (1020)
-//!< \~english Max length of 'Location Information'
-
-/* Command ID */
-/* Vehicle sensor information notification CID (Rate information) */
-
-/**
- * \~english @brief Delivery speed command ID
- * \~english @brief If you want to catch above envents, use NSFW like below.
- * \~english @code
- * l_eStatus = FrameworkUnifiedAttachCallbackToDispatcher(h_app, POS_NTFY_SEND_THREAD, CID_POSIF_REGISTER_LISTENER_SPEED, CBCallbackA);
- * @endcode
- */
-#define CID_POSIF_REGISTER_LISTENER_SPEED (0x0203)
-
-/**
- * \~english @brief Delivery longitude and latitude command ID
- * \~english @brief If you want to catch above envents, use NSFW like below.
- * \~english @code
- * l_eStatus = FrameworkUnifiedAttachCallbackToDispatcher(h_app, POS_NTFY_SEND_THREAD, CID_POSIF_REGISTER_LISTENER_LONLAT, CBCallbackA);
- * @endcode
- */
-#define CID_POSIF_REGISTER_LISTENER_LONLAT 0x0781
-
-/**
- * \~english @brief Delivery altitude command ID
- * \~english @brief If you want to catch above envents, use NSFW like below.
- * \~english @code
- * l_eStatus = FrameworkUnifiedAttachCallbackToDispatcher(h_app, POS_NTFY_SEND_THREAD, CID_POSIF_REGISTER_LISTENER_ALTITUDE, CBCallbackA);
- * @endcode
- */
-#define CID_POSIF_REGISTER_LISTENER_ALTITUDE 0x0782
-
-/**
- * \~english @brief Delivery heading command ID
- * \~english @brief If you want to catch above envents, use NSFW like below.
- * \~english @code
- * l_eStatus = FrameworkUnifiedAttachCallbackToDispatcher(h_app, POS_NTFY_SEND_THREAD, CID_POSIF_REGISTER_LISTENER_HEADING, CBCallbackA);
- * @endcode
- */
-#define CID_POSIF_REGISTER_LISTENER_HEADING 0x0783
-
-/*---------------------------------------------------------------------------------*
- * Typedef declaration *
- *---------------------------------------------------------------------------------*/
-
-/*---------------------------------------------------------------------------------*
- * Struct declaration *
- *---------------------------------------------------------------------------------*/
-/**
- * @struct POS_POSDATA
- * \~english position information
- */
-typedef struct {
- int8_t status; //!< \~english data status
- uint8_t posSts; //!< \~english position status
- uint16_t posAcc; //!< \~english position accuracy
- int32_t longitude; //!< \~english current longitude
- int32_t latitude; //!< \~english current latitude
- int32_t altitude; //!< \~english current altitude
- int16_t heading; //!< \~english current heading
- uint8_t reserved[2]; //!< \~english reserve
-} POS_POSDATA;
-
-/**
- * @struct SENSORLOCATION_MSG_LONLATINFO
- * \~english longitude and latitude information data delivery message
- */
-typedef struct {
- SENSORLOCATION_LONLATINFO_DAT data;
- //!< \~english longitude and latitude information data
-} SENSORLOCATION_MSG_LONLATINFO;
-
-/**
- * @struct SENSORLOCATION_MSG_ALTITUDEINFO
- * \~english altitude information data delivery message
- */
-typedef struct {
- SENSORLOCATION_ALTITUDEINFO_DAT data; //!< \~english altitude information data
-} SENSORLOCATION_MSG_ALTITUDEINFO;
-
-/**
- * @struct SENSORMOTION_MSG_HEADINGINFO
- * \~english heading information data delivery message
- */
-typedef struct {
- SENSORMOTION_HEADINGINFO_DAT data; //!< \~english heading information data
-} SENSORMOTION_MSG_HEADINGINFO;
-
-/**
- * @struct SENSORMOTION_MSG_SPEEDINFO
- * \~english speed information data delivery message
- */
-typedef struct {
- SENSORMOTION_SPEEDINFO_DAT data; //!< \~english speed information data
-} SENSORMOTION_MSG_SPEEDINFO;
-
-
-/**
- * @struct POS_LOCATIONINFO_NMEA
- * \~english Structure of Location Information (NMEA)
- */
-typedef struct {
- uint32_t length; //!< \~english length
- uint8_t data[LOCATIONINFO_NMEA_MAX]; //!< \~english data
-} POS_LOCATIONINFO_NMEA;
-
-
-/*---------------------------------------------------------------------------------*
- * Prototype Declaration *
- *---------------------------------------------------------------------------------*/
-/* SENSOR_API public API */
-#ifdef __cplusplus
-extern "C" {
-#endif
-
-////////////////////////////////////////////////////////////////////////////////////////////
-/// \ingroup tag_Positioning
-/// \~english @par Brief
-/// - Register for longitude and lattitude delivery
-///
-/// \~english @param [in] hApp
-/// - HANDLE - App Handle
-/// \~english @param [in] notifyName
-/// - PCSTR - Destination thread name
-/// \~english @param [in] ucCtrlFlg
-/// - uint8_t - Delivery control flag(register)
-/// \~english @param [in] ucDeliveryTiming
-/// - uint8_t - Delivery timing(change/update)
-/// \~english @param [in] ucGetMethod
-/// - uint8_t - Get method(GPS/Navigation/Not specified)
-///
-/// \~english @par
-/// - Delivery control flag(ucCtrlFlg)
-/// - SENSOR_DELIVERY_REGIST - register
-/// - Register for specified logtitude and latitude delivery
-/// - Please note if call this function for multiple times, the data will be deliveried for multiple times.
-/// - The specified longitude and latitude will be deliveried during the registration(first delivery)
-/// - Delivery timing(ucDeliveryTiming)
-/// - SENSOR_DELIVERY_TIMING_CHANGE - change. Specified longitude and latitude will be deliveried \n
-/// only when it has been changed.
-/// - SENSOR_DELIVERY_TIMING_UPDATE - update. Specified longitude and latitude will be deliveried \n
-/// every time that has been updated by the vehicle sensors.
-/// - Get method(ucGetMethod)
-/// - SENSOR_GET_METHOD_GPS - GPS. The longitude and latitude from GPS will be deliveried.
-/// - SENSOR_GET_METHOD_NAVI - Navi. The longitude and latitude from Navigation will be deliveried.
-/// - SENSOR_GET_METHOD_AUTO - Not specified. The specified longitude and latitude will be deliveried \n
-/// according to the current environment.
-/// - Avaliable method is descriped as following:\n
-/// In the following environment, if the SENSOR_GET_METHOD_AUTO is set,treated as default \n
-/// In the following environment, if the unsupported method has been specified, \n
-/// POS_RET_ERROR_PARAM will be returned.\n
-///
-/// \~english @retval POS_RET_NORMAL normal finish
-/// \~english @retval POS_RET_ERROR_PARAM parameter error
-/// \~english @retval POS_RET_ERROR_BUFFULL the register count is full
-/// \~english @retval POS_RET_ERROR_INNER internal error
-/// \~english @retval POS_RET_ERROR_NOSUPPORT unsupported
-/// \~english @retval POS_RET_ERROR_RESOURCE lack of resource
-///
-/// \~english @par Precondition
-/// - The creation/initialization(FrameworkunifiedCreateDispatcherWithoutLoop and etc.) of the dispatcher for App are completed.
-/// - Availability of positioning service is TRUE.
-///
-/// \~english @par changes of the internal status
-/// - There is no changes of the internal status by this API
-///
-/// \~english @par Failure condition
-/// - The parameter ucDeliveryTiming is neither update(SENSOR_DELIVERY_TIMING_UPDATE) nor change \n
-/// (SENSOR_DELIVERY_TIMING_CHANGE) [POS_RET_ERROR_PARAM]
-/// - The parameter ucCtrlFlg is not register(SENSOR_DELIVERY_REGIST) [POS_RET_ERROR_PARAM]
-/// - The parameter hApp is NULL [POS_RET_ERROR_PARAM]
-/// - The parameter notifyName is NULL [POS_RET_ERROR_PARAM]
-/// - The count of message in message queue is reach to the max [POS_RET_ERROR_RESOURCE]
-/// - The count of mutex is reach to the max [POS_RET_ERROR_RESOURCE]
-/// - The count of item in ProcessName-ProcessNo convert table is reach to the max [POS_RET_ERROR_RESOURCE]
-/// - The event is created in same process, but the count of reference to the event \n
-/// is reach to the max [POS_RET_ERROR_INNER]
-/// - The event is created in system, but the count of reference to the event \n
-/// is reach to the max [POS_RET_ERROR_INNER]
-/// - Memory allocate failed during the event table creation for the event registering. [POS_RET_ERROR_INNER]
-/// - The thread can not register in the event table. [POS_RET_ERROR_INNER]
-/// - Memory allocate failed in event table during the thread table creation. [POS_RET_ERROR_INNER]
-/// - After register the thread table in event table, the event flag has already been registered. \n
-/// [POS_RET_ERROR_INNER]
-/// - After register the thread table in event table, the event flag register failed. [POS_RET_ERROR_INNER]
-/// - The event table is full. [POS_RET_ERROR_INNER]
-/// - The memory for event HANDLE allocate failed. [POS_RET_ERROR_INNER]
-/// - The thread can not be registered in event table. [POS_RET_ERROR_INNER]
-/// - In event table, try to allocate the memory of the thread table creation, but failed. [POS_RET_ERROR_INNER]
-/// - After register the thread in event table, the event flag has already been registered. [POS_RET_ERROR_INNER]
-/// - After register the thread in event table, the event flag register failed. [POS_RET_ERROR_INNER]
-/// - Specified event ID has not been registered in table. [POS_RET_ERROR_INNER]
-/// - Initialize event object failed. [POS_RET_ERROR_INNER]
-/// - ProcessNo has not been registered in message control table when message transfered between processes.\n
-/// [POS_RET_ERROR_INNER]
-/// - Message transfer HANDLE get failed when message transfered between processes. [POS_RET_ERROR_INNER]
-/// - Message transfer failed between processes. [POS_RET_ERROR_INNER]
-/// - The destination process name size is larger than 20 characters when message transfer between processes. \n
-/// [POS_RET_ERROR_INNER]
-/// - The message queue name has not been registered in control table when message transfer between processes.\n
-/// [POS_RET_ERROR_INNER]
-/// - Message transfer HANDLE create failed when message transfered between process. [POS_RET_ERROR_INNER]
-/// - Message transfer HANDLE get failed from internal table when message transfered between processes. \n
-/// [POS_RET_ERROR_INNER]
-/// - Message transfer failed between process. [POS_RET_ERROR_INNER]
-/// - Specified event HANDLE has not been registered in event HANDLE table during waiting event. \n
-/// [POS_RET_ERROR_INNER]
-/// - The count of thread beyond max in event management table during event waiting. [POS_RET_ERROR_INNER]
-/// - The EV_FLAG_BIT is not set in flagID during getting event. [POS_RET_ERROR_INNER]
-/// - The ID of message event queue has not been created during event getting. [POS_RET_ERROR_INNER]
-/// - The flagID has not been registered during event getting. [POS_RET_ERROR_INNER]
-/// - The interruption happened during event getting [POS_RET_ERROR_INNER]
-/// - Whatever error happened during event getting. [POS_RET_ERROR_INNER]
-/// - Getting event timeout. [POS_RET_ERROR_INNER]
-/// - Error happened during event getting. [POS_RET_ERROR_INNER]
-/// - The result of positioning service returned is SENSOR_RET_ERROR_PARAM. [POS_RET_ERROR_PARAM]
-/// - The result of positioning service returned is SENSOR_RET_ERROR_BUFFULL. [POS_RET_ERROR_BUFFULL]
-/// - The result of positioning service returned is SENSOR_RET_ERROR_RESOURCE. [POS_RET_ERROR_RESOURCE]
-/// - The result of positioning service returned is not SENSOR_RET_ERROR_PARAM and SENSOR_RET_ERROR_BUFFULL \n
-/// and SENSOR_RET_ERROR_RESOURCE. [POS_RET_ERROR_INNER]
-///
-/// \~english @par Detail
-/// - Call this API to register longitude and latitude information delivery.\n
-/// This API return the result of registered.
-/// \n
-///
-/// \~english @par
-/// Please note the following points when use this API.
-/// - Duplication registering
-/// - The same destination thread name has already been registered
-/// - The registered delivery data updated and normal return.(first delivery)
-/// - To one delivery destination, the same data will not be duplication deliveried at same time.
-/// - After call this API, if the delivery destination thread name has been changed, please call this API again.
-///
-/// \~english @par
-/// Notification of message
-/// - After registered successfully, vehicle sensor information will been sent as system API \n
-/// message with following format.\n
-/// Command ID : @ref CID_POSIF_REGISTER_LISTENER_LONLAT \n
-/// message structure
-/// \~english @code
-/// typedef struct {
-/// SENSORLOCATION_LONLATINFO_DAT data; /* message data */
-/// } SENSORLOCATION_MSG_LONLATINFO;
-/// @endcode
-/// message data structure \n
-///
-/// \~english @code
-/// typedef struct {
-/// uint8_t getMethod; /* get method */
-/// uint8_t SyncCnt; /* Synchrony count */
-/// uint8_t isEnable; /* enable or not */
-/// uint8_t posSts; /* position status */
-/// uint16_t posAcc; /* Position accuracy */
-/// int32_t Longitude; /* Longitude */
-/// int32_t Latitude; /* Latitude */
-/// } SENSORLOCATION_LONLATINFO_DAT;
-/// @endcode
-/// - Get method(getMethod)
-/// - SENSOR_GET_METHOD_GPS - longitude and latitude from GPS
-/// - SENSOR_GET_METHOD_NAVI - longitude and latitude from Navigation
-/// - Synchrony count(SyncCnt)
-/// - Count for position data synchronous \n
-/// When delivery altitude and heading data, position data can be synchronized by SyncCnt.\n
-/// But the data of different method can not be synchronized by SyncCnt.\n
-/// Example 1: [LonLat from GPS] and [Heading from GPS] can be synchronized by SyncCnt.\n
-/// Example 2: [LonLat from GPS] and [LonLat from Navi] can not be synchronized by SyncCnt.\n
-/// Caution: The sensor count in sensor data delivery is another data.
-/// - Enable or not(isEnable) \n
-/// To describe this delivery message is whether can be used or not
-/// - 0 - not avaliable
-/// - not 0 - avaliable
-/// - when GPS data is specified,longitude and latitude is invalid at following condition:\n
-/// so [not avaliable] provieded
-/// - After system start, GPS unit has not received current location data and GPS unit \n
-/// status is not positioning fixed.
-/// - If it is not initialized status, certainly provide [avaliable] when Navigation data specified
-/// - If the status is [not avaliable], data following can not be guaranteed.
-/// - Position status(posSts)
-/// - Bit0 : GPS data used result(1:used, 0:not used, definition of maskbit:POS_LOC_INFO_USE_GSP)
-/// - Bit1 : DGPS data used result(1:used, 0:not used, definition of maskbit:POS_LOC_INFO_USE_DGPS)
-/// - Bit2 : DR data used result(1:used, 0:not used, definition of maskbit:POS_LOC_INFO_USE_DR)
-/// - Bit3 : MapMatching data used result(1:used, 0:not used, definition of \n
-/// maskbit:POS_LOC_INFO_USE_MAPMATCHING)
-/// - Position accuracy(posAcc)
-/// - Detected accruray of current position:1LSB=1m \n
-/// - Longitude : (WGS-84)(10^-7degree as 1) \n
-/// East longitude is positive value and west longitude is negative value.
-/// - Latitude : (WGS-84)(10^-7degree as 1) \n
-/// North latitude positive value and south latitude is negative value.
-///
-/// \~english @par Classification
-/// - Public
-///
-/// \~english @par Type
-/// - Method
-///
-/// \~english @see
-/// - POS_GetLonLat
-///
-////////////////////////////////////////////////////////////////////////////////////////////
-POS_RET_API POS_RegisterListenerLonLat(HANDLE hApp, PCSTR notifyName, uint8_t ucCtrlFlg, uint8_t ucDeliveryTiming,
- uint8_t ucGetMethod);
-
-////////////////////////////////////////////////////////////////////////////////////////////
-/// \ingroup tag_Positioning
-/// \~english @par Brief
-/// - Register altitude delivery
-///
-/// \~english @param [in] hApp
-/// - HANDLE - App Handle
-/// \~english @param [in] notifyName
-/// - PCSTR - Destination thread name
-/// \~english @param [in] ucCtrlFlg
-/// - uint8_t - Delivery control flag(register)
-/// \~english @param [in] ucDeliveryTiming
-/// - uint8_t - Delivery timing(change/update)
-/// \~english @param [in] ucGetMethod
-/// - uint8_t - Get method(GPS/Not specified)
-///
-/// \~english @par
-/// - Delivery control flag(ucCtrlFlg)
-/// - SENSOR_DELIVERY_REGIST - register
-/// - Register specified altitude delivery
-/// - Please note that if the same data delivery has been registered for multiple times, the data will \n
-/// also be deliveried for registered multiple times.
-/// - The specified altitude will be deliveried at registered time (first delivery).
-/// - Delivery timing(ucDeliveryTiming)
-/// - SENSOR_DELIVERY_TIMING_CHANGE - change. Specified altitude will be deliveried only when it is changed.
-/// - SENSOR_DELIVERY_TIMING_UPDATE - update. Specified altitude will be deliveried when it is updated by \n
-/// vehicle sensor.
-/// - Get method(ucGetMethod)
-/// - SENSOR_GET_METHOD_GPS - GPS. The altitude from GPS will be deliveried.
-/// - SENSOR_GET_METHOD_AUTO - Not specified. The altitude will be deliveried according to \n
-/// the current environment
-/// - Avaliable method is descriped as following in each environment. \n
-/// In the following environment, if the SENSOR_GET_METHOD_AUTO is set,treated as default \n
-/// In the following environment, if the unsupported method has been specified, \n
-/// POS_RET_ERROR_PARAM will be returned.
-///
-/// \~english @retval POS_RET_NORMAL normal finish
-/// \~english @retval POS_RET_ERROR_PARAM parameter error
-/// \~english @retval POS_RET_ERROR_BUFFULL the register count is full
-/// \~english @retval POS_RET_ERROR_INNER internal error
-/// \~english @retval POS_RET_ERROR_NOSUPPORT unsupported
-/// \~english @retval POS_RET_ERROR_RESOURCE lack of resource
-///
-/// \~english @par Precondition
-/// - The creation/initialization(FrameworkunifiedCreateDispatcherWithoutLoop and etc.) of the dispatcher \n
-/// for App are completed.
-/// - Availability of positioning service is TRUE.
-///
-/// \~english @par changes of internal status
-/// - There is no changes of internal status
-///
-/// \~english @par Failure condition
-/// - The parameter ucDeliveryTiming is neither update(SENSOR_DELIVERY_TIMING_UPDATE) nor change \n
-/// (SENSOR_DELIVERY_TIMING_CHANGE) [POS_RET_ERROR_PARAM]
-/// - The parameter ucCtrlFlg is not registered(SENSOR_DELIVERY_REGIST) [POS_RET_ERROR_PARAM]
-/// - The parameter hApp is NULL [POS_RET_ERROR_PARAM]
-/// - The parameter notifyName is NULL [POS_RET_ERROR_PARAM]
-/// - The count of message in message queue is reached to the max [POS_RET_ERROR_RESOURCE]
-/// - The count of mutex is reached to the max [POS_RET_ERROR_RESOURCE]
-/// - The count of item in ProcessName-ProcessNo convert table is reached to the max [POS_RET_ERROR_RESOURCE]
-/// - The event is created in same process, but the count of reference to the event \n
-/// is reach to max [POS_RET_ERROR_INNER]
-/// - The event is created in system, but the count of reference to the event \n
-/// is reach to the max [POS_RET_ERROR_INNER]
-/// - Memory allocate failed during the event table creation for that event registering. [POS_RET_ERROR_INNER]
-/// - The thread can not register in the event table. [POS_RET_ERROR_INNER]
-/// - Memory allocate failed in event table during the thread table creation. [POS_RET_ERROR_INNER]
-/// - After register the thread table in event table, the event flag has already been registered. \n
-/// [POS_RET_ERROR_INNER]
-/// - After register the thread table in event table, the event flag register failed. [POS_RET_ERROR_INNER]
-/// - The event table is full during event creation. [POS_RET_ERROR_INNER]
-/// - The memory for event HANDLE allocate failed during event table creation. [POS_RET_ERROR_INNER]
-/// - The thread can not be registered in event table. [POS_RET_ERROR_INNER]
-/// - In event table, try to allocate the memory of the thread table creation, but failed. [POS_RET_ERROR_INNER]
-/// - After register the thread in event table, the event flag has already been registered. [POS_RET_ERROR_INNER]
-/// - After register the thread in event table, the event flag register failed. [POS_RET_ERROR_INNER]
-/// - Specified event ID has not been registered in table. [POS_RET_ERROR_INNER]
-/// - Initialize event object failed. [POS_RET_ERROR_INNER]
-/// - ProcessNo has not been registered in message control table when message transfered between processes.\n
-/// [POS_RET_ERROR_INNER]
-/// - Message transfer HANDLE get failed when message transfered between processes. [POS_RET_ERROR_INNER]
-/// - Message transfer failed between processes. [POS_RET_ERROR_INNER]
-/// - The destination process name size is larger than 20 characters when message transfer between processes.\n
-/// [POS_RET_ERROR_INNER]
-/// - The message queue name has not been registered in control table when message transfer between processes.\n
-/// [POS_RET_ERROR_INNER]
-/// - Message transfer HANDLE create failed when message transfered between processes. [POS_RET_ERROR_INNER]
-/// - Message transfer HANDLE get failed from internal table when message transfered between processes.\n
-/// [POS_RET_ERROR_INNER]
-/// - Message transfer failed between processes. [POS_RET_ERROR_INNER]
-/// - Specified event HANDLE has not been registered in event HANDLE table during event waiting. \n
-/// [POS_RET_ERROR_INNER]
-/// - The count of thread is reach to max in event management table during event waiting.[POS_RET_ERROR_INNER]
-/// - The EV_FLAG_BIT is not set in flagID during event getting. [POS_RET_ERROR_INNER]
-/// - The ID of message event queue has not been created during event getting. [POS_RET_ERROR_INNER]
-/// - The flagID has not been registered during event getting. [POS_RET_ERROR_INNER]
-/// - The interruption happened during event getting [POS_RET_ERROR_INNER]
-/// - Whatever error happened during event getting. [POS_RET_ERROR_INNER]
-/// - Getting event timeout. [POS_RET_ERROR_INNER]
-/// - Error happened during event getting. [POS_RET_ERROR_INNER]
-/// - The result of positioning service is SENSOR_RET_ERROR_PARAM. [POS_RET_ERROR_PARAM]
-/// - The result of positioning service is SENSOR_RET_ERROR_BUFFULL. [POS_RET_ERROR_BUFFULL]
-/// - The result of positioning service is SENSOR_RET_ERROR_RESOURCE. [POS_RET_ERROR_RESOURCE]
-/// - The result of positioning service is not SENSOR_RET_ERROR_PARAM and SENSOR_RET_ERROR_BUFFULL and \n
-/// SENSOR_RET_ERROR_RESOURCE. [POS_RET_ERROR_INNER]
-///
-/// \~english @par Detail
-/// - Call this API to register altitude delivery. \n
-/// This API will finish when get the return value.
-///
-/// \~english @par
-/// Please note the following points when use this API.
-/// - Duplication registering
-/// - The same destination thread name has already been registered
-/// - The registered delivery data updated and normal return.(first delivery)
-/// - To one delivery destination, the same data will not be duplication deliveried at same timing.
-/// - After call this API, if the delivery destination thread name is changed, please call this API again.
-///
-/// \~english @par
-/// Notification of message
-/// - After registered successfully, vehicle sensor will send system API message with following format. \n
-/// Command ID : @ref CID_POSIF_REGISTER_LISTENER_ALTITUDE \n
-/// message structure
-/// \~english @code
-/// typedef struct {
-/// SENSORLOCATION_ALTITUDEINFO_DAT data; /* message data */
-/// } SENSORLOCATION_MSG_ALTITUDEINFO;
-/// @endcode
-/// message data structure
-/// \~english @code
-/// typedef struct {
-/// uint8_t getMethod; /* get method */
-/// uint8_t SyncCnt; /* synchrony count */
-/// uint8_t isEnable; /* enable or not */
-/// uint8_t Reserve[3]; /* Reserve */
-/// int32_t Altitude; /* Altitude(unit:0.01m) */
-/// } SENSORLOCATION_ALTITUDEINFO_DAT;
-/// @endcode
-/// - Get method(getMethod)
-/// - SENSOR_GET_METHOD_GPS - altitude from GPS
-/// - Synchrony count(SyncCnt)
-/// - Count for position data synchronous \n
-/// When delivery altitude and heading data, position data can be synchronized by SyncCnt. \n
-/// But the data of different method can not be synchronized by SyncCnt.\n
-/// example: [longitude and latitude from GPS] and [heading from GPS] can be synchronized by SyncCnt.\n
-/// synchronized by SyncCnt. \n
-/// Caution: The sensor count in sensor data delivery is another data.
-/// - Enable or not(isEnable) \n
-/// To describe this delivery message is whether can be used or not.
-/// - 0 - not avaliable
-/// - not 0 - avaliable
-/// - when GPS data specified, Altitude is invalid at following condition(so [not avaliable] provieded):
-/// - Immediately after system start, GPS unit has not received current location data and GPS unit status \n
-/// is not positioning fix
-/// - If the status is [not avaliable], data following can not be guaranteed.
-/// - Altitude
-/// - altitude data(unit 0.01m)
-///
-/// \~english @par Classification
-/// - Public
-///
-/// \~english @par Type
-/// - Method
-///
-/// \~english @see delivery
-/// - POS_GetAltitude
-///
-////////////////////////////////////////////////////////////////////////////////////////////
-POS_RET_API POS_RegisterListenerAltitude(HANDLE hApp, PCSTR notifyName, uint8_t ucCtrlFlg, uint8_t ucDeliveryTiming,
- uint8_t ucGetMethod);
-
-////////////////////////////////////////////////////////////////////////////////////////////
-/// \ingroup tag_Positioning
-/// \~english @par Brief
-/// - Register speed delivery
-///
-/// \~english @param [in] hApp
-/// - HANDLE - App Handle
-/// \~english @param [in] notifyName
-/// - PCSTR - Destination thread name
-/// \~english @param [in] ucCtrlFlg
-/// - uint8_t - Delivery control flag(register)
-/// \~english @param [in] ucDeliveryTiming
-/// - uint8_t - Delivery timing(change/update)
-/// \~english @param [in] ucGetMethod
-/// - uint8_t - Get method(POS/Navi/Not specified)
-///
-/// \~english @par
-/// - Delivery control flag(ucCtrlFlg)
-/// - SENSOR_DELIVERY_REGIST - register
-/// - Register specified speed delivery
-/// - Please note that if the same data delivery has been registered for multiple times, the data will \n
-/// also be deliveried for registered mutiple times.
-/// - The specified speed will be deliveried at registered time (first delivery).
-/// - Delivery timing(ucDeliveryTiming)
-/// - SENSOR_DELIVERY_TIMING_CHANGE - change. Specified speed will be deliveried only when it is changed.
-/// - SENSOR_DELIVERY_TIMING_UPDATE - update. Specified speed will be deliveried when it is updated by \n
-/// vehicle sensor.
-/// - Get method(ucGetMethod)
-/// - SENSOR_GET_METHOD_POS - The speed calculated in positioning based on speed pulse will be deliveried.
-/// - SENSOR_GET_METHOD_NAVI - Navi The speed from Navi will be deliveried.
-/// - SENSOR_GET_METHOD_AUTO - Not specified The speed will be deliveried according to the current environment
-/// deliveried.
-/// - Avaliable method is descriped as following in each environment. \n
-/// In the following environment, if the SENSOR_GET_METHOD_AUTO is set,treated as default \n
-/// In the following environment, if the unsupported method has been specified, \n
-/// POS_RET_ERROR_PARAM will be returned.
-///
-/// \~english @retval POS_RET_NORMAL normal end
-/// \~english @retval POS_RET_ERROR_PARAM parameter error
-/// \~english @retval POS_RET_ERROR_BUFFULL the register count is full
-/// \~english @retval POS_RET_ERROR_INNER internal error
-/// \~english @retval POS_RET_ERROR_NOSUPPORT unsupported
-/// \~english @retval POS_RET_ERROR_RESOURCE lack of resource
-///
-/// \~english @par Precondition
-/// - The creation/initialization(FrameworkunifiedCreateDispatcherWithoutLoop and etc.) of the Dispatcher for App \n
-/// are completed.
-/// - Availability of service positioning is TRUE.
-///
-/// \~english @par change of internal status
-/// - There is no change of internal status
-///
-/// \~english @par Failure condition
-/// - The parameter ucDeliveryTiming is neither update(SENSOR_DELIVERY_TIMING_UPDATE) \n
-/// nor change(SENSOR_DELIVERY_TIMING_CHANGE) [POS_RET_ERROR_PARAM]
-/// - The parameter ucCtrlFlg is not register(SENSOR_DELIVERY_REGIST) [POS_RET_ERROR_PARAM]
-/// - The parameter hApp is NULL [POS_RET_ERROR_PARAM]
-/// - The parameter notifyName is NULL [POS_RET_ERROR_PARAM]
-/// - The count of message in message queue is reach to max [POS_RET_ERROR_RESOURCE]
-/// - The count of mutex is reach to max [POS_RET_ERROR_RESOURCE]
-/// - The count of item in ProcessName-ProcessNo convert table is reach to max [POS_RET_ERROR_RESOURCE]
-/// - The event is created in same process, but the count of reference is reach to max [POS_RET_ERROR_INNER]
-/// - The event is created in system, but the count of reference is reach to max [POS_RET_ERROR_INNER]
-/// - Memory allocate failed during the event table creation for event registering. [POS_RET_ERROR_INNER]
-/// - The thread can not register in the event table. [POS_RET_ERROR_INNER]
-/// - Memory allocate failed in event table during the thread table creation. [POS_RET_ERROR_INNER]
-/// - After register the thread table in event table, the event flag has already been registered. \n
-/// [POS_RET_ERROR_INNER]
-/// - After register the thread table in event table, the event flag register failed. [POS_RET_ERROR_INNER]
-/// - The event table is full during event creation. [POS_RET_ERROR_INNER]
-/// - The memory for event HANDLE allocate failed during event table creation. [POS_RET_ERROR_INNER]
-/// - The thread can not be registered in event table. [POS_RET_ERROR_INNER]
-/// - In event table, try to allocate the memory of the thread table creation, but failed. [POS_RET_ERROR_INNER]
-/// - After register the thread in event table, the event flag has already been registered. [POS_RET_ERROR_INNER]
-/// - After register the thread in event table, the event flag register failed. [POS_RET_ERROR_INNER]
-/// - Specified event ID has not been registered in table. [POS_RET_ERROR_INNER]
-/// - Initialize event object failed. [POS_RET_ERROR_INNER]
-/// - ProcessNo has not been registered in message control table when message transfered between processes. \n
-/// [POS_RET_ERROR_INNER]
-/// - Message transfer HANDLE get failed when message transfered between processes. [POS_RET_ERROR_INNER]
-/// - Message transfer failed between processes. [POS_RET_ERROR_INNER]
-/// - The destination process name size is larger than 20 characters when message transfer between processes.\n
-/// [POS_RET_ERROR_INNER]
-/// - The message queue name has not been registered in control table when message transfer between processes.\n
-/// [POS_RET_ERROR_INNER]
-/// - Message transfer HANDLE create failed when message transfered between processes. [POS_RET_ERROR_INNER]
-/// - Message transfer HANDLE get failed from internal table when message transfered between processes. \n
-/// [POS_RET_ERROR_INNER]
-/// - Message transfer failed between processes. [POS_RET_ERROR_INNER]
-/// - Specified event HANDLE has not been registered in event HANDLE table during event waiting. \n
-/// [POS_RET_ERROR_INNER]
-/// - The count of thread is reach to max in event management table during event waiting. [POS_RET_ERROR_INNER]
-/// - The EV_FLAG_BIT is not set in flagID during event getting. [POS_RET_ERROR_INNER]
-/// - The ID of message event queue has not been created during event getting. [POS_RET_ERROR_INNER]
-/// - The flagID has not been registered during event getting. [POS_RET_ERROR_INNER]
-/// - The interruption happened during event getting [POS_RET_ERROR_INNER]
-/// - Whatever error happened during event getting. [POS_RET_ERROR_INNER]
-/// - Getting event timeout. [POS_RET_ERROR_INNER]
-/// - Error happened during event getting. [POS_RET_ERROR_INNER]
-/// - The result of positioning service is SENSOR_RET_ERROR_PARAM. [POS_RET_ERROR_PARAM]
-/// - The result of positioning service is SENSOR_RET_ERROR_BUFFULL. [POS_RET_ERROR_BUFFULL]
-/// - The result of positioning service is SENSOR_RET_ERROR_RESOURCE. [POS_RET_ERROR_RESOURCE]
-/// - The result of positioning service is not SENSOR_RET_ERROR_PARAM and SENSOR_RET_ERROR_BUFFULL \n
-/// and SENSOR_RET_ERROR_RESOURCE. [POS_RET_ERROR_INNER]
-///
-/// \~english @par Detail
-/// - Call this API to register speed delivery. \n
-/// This API will finish when get the return value.
-///
-/// \~english @par
-/// Please note the following points when use this API.
-/// - Duplication registering
-/// - The same destination thread name has already been registered
-/// - The registered delivery data updated and normal return.(first delivery)
-/// - To one delivery destination, the same data will not be duplication deliveried at same timing.
-/// - After call this API, if the delivery destination thread name is changed, please call this API again.
-///
-/// \~english @par
-/// Notification of message
-/// - After registered successfully, vehicle sensor will send system API message with following format. \n
-/// Command ID : @ref CID_POSIF_REGISTER_LISTENER_SPEED \n
-/// message structure
-/// \~english @code
-/// typedef struct {
-/// SENSORMOTION_SPEEDINFO_DAT data; /* message data */
-/// } SENSORMOTION_MSG_SPEEDINFO;
-/// @endcode
-/// message data structure
-/// \~english @code
-/// typedef struct {
-/// uint8_t getMethod; /* get method */
-/// uint8_t SyncCnt; /* synchrony count */
-/// uint8_t isEnable; /* enable or not */
-/// uint8_t Reserve1[3]; /* Reserve */
-/// uint16_t Speed; /* speed(unit:0.01m/sec) */
-/// uint8_t Reserve2[2]; /* Reserve */
-/// } SENSORMOTION_SPEEDINFO_DAT;
-/// @endcode
-/// - Get method(getMethod)
-/// - SENSOR_GET_METHOD_POS - The speed calculated in positioning based on speed pulse will be deliveried.
-/// - SENSOR_GET_METHOD_NAVI - speed from Navi
-/// - Synchrony count(SyncCnt)
-/// - 0 (not change).
-/// - Enable or not(isEnable) \n
-/// To describe this data is whether enable or not.
-/// - 0 - not avaliable
-/// - not 0 - avaliable
-/// - Speed is invalid at following condition when speed pulse specified, so [not avaliable] provieded
-/// - Immediately after system start, the sensor data have not been received from SYS micon
-/// - If it is not initialization status, certainly provide [avaliable] when Navi data specified
-/// - If the status is [not avaliable], data following can not be guaranteed.
-/// - Speed
-/// - speed data(unit 0.01m/sec)
-///
-/// \~english @par Classification
-/// - Public
-///
-/// \~english @par Type
-/// - Method
-///
-/// \~english @see
-/// - POS_GetSpeed
-///
-////////////////////////////////////////////////////////////////////////////////////////////
-POS_RET_API POS_RegisterListenerSpeed(HANDLE hApp, PCSTR notifyName, uint8_t ucCtrlFlg, uint8_t ucDeliveryTiming,
- uint8_t ucGetMethod);
-
-////////////////////////////////////////////////////////////////////////////////////////////
-/// \ingroup tag_Positioning
-/// \~english @par Brief
-/// - Register heading delivery
-///
-/// \~english @param [in] hApp
-/// - HANDLE - App Handle
-/// \~english @param [in] notifyName
-/// - PCSTR - Destination thread name
-/// \~english @param [in] ucCtrlFlg
-/// - uint8_t - Delivery control flag(register)
-/// \~english @param [in] ucDeliveryTiming
-/// - uint8_t - Delivery timing(change/update)
-/// \~english @param [in] ucGetMethod
-/// - uint8_t - Get method(GPS/Navi/Not specified)
-///
-/// \~english @par
-/// - Delivery control flag(ucCtrlFlg)
-/// - SENSOR_DELIVERY_REGIST - register
-/// - Register specified heading delivery
-/// - Please note that if the same data delivery has been registered for mutiple times, the data will \n
-/// also be deliveried for registered mutiple times.
-/// - The specified heading will be deliveried at registered time (first delivery).
-/// - Delivery timing(ucDeliveryTiming)
-/// - SENSOR_DELIVERY_TIMING_CHANGE - change. Specified heading will be deliveried only when it is changed.
-/// - SENSOR_DELIVERY_TIMING_UPDATE - update. Specified heading will be deliveried when it is updated by \n
-/// vehicle sensor.
-/// - Get method(ucGetMethod)
-/// - SENSOR_GET_METHOD_GPS - GPS. The heading from GPS will be deliveried.
-/// - SENSOR_GET_METHOD_AUTO - Not specified. The heading will be deliveried \n
-/// according to the current environment
-/// - Avaliable method is descriped as following in each environment. \n
-/// In the following environment, if the SENSOR_GET_METHOD_AUTO is set,treated as default \n
-/// In the following environment, if the unsupported method has been specified, \n
-/// POS_RET_ERROR_PARAM will be returned.
-///
-/// \~english @retval POS_RET_NORMAL normal finish
-/// \~english @retval POS_RET_ERROR_PARAM parameter error
-/// \~english @retval POS_RET_ERROR_BUFFULL the register count is full
-/// \~english @retval POS_RET_ERROR_INNER internal error
-/// \~english @retval POS_RET_ERROR_NOSUPPORT unsupported
-/// \~english @retval POS_RET_ERROR_RESOURCE lack of resource
-///
-/// \~english @par Precondition
-/// - The creation/initialization(FrameworkunifiedCreateDispatcherWithoutLoop and etc.) of the Dispatcher \n
-/// for App are completed.
-/// - Availability of positioning service is TRUE.
-///
-/// \~english @par changes of internal status
-/// - There is no changes of internal status
-///
-/// \~english @par Failure condition
-/// - The parameter ucDeliveryTiming is neither update(SENSOR_DELIVERY_TIMING_UPDATE) nor change \n
-/// (SENSOR_DELIVERY_TIMING_CHANGE) [POS_RET_ERROR_PARAM]
-/// - The parameter ucCtrlFlg is not register(SENSOR_DELIVERY_REGIST) [POS_RET_ERROR_PARAM]
-/// - The parameter hApp is NULL [POS_RET_ERROR_PARAM]
-/// - The parameter notifyName is NULL [POS_RET_ERROR_PARAM]
-/// - The count of message in message queue is reach to max [POS_RET_ERROR_RESOURCE]
-/// - The count of mutex is reach to max [POS_RET_ERROR_RESOURCE]
-/// - The count of item in ProcessName-ProcessNo convert table is reach to max [POS_RET_ERROR_RESOURCE]
-/// - The event is created in same process, but the count of reference is reach max [POS_RET_ERROR_INNER]
-/// - The event is created in system, but the count of reference is reach to max [POS_RET_ERROR_INNER]
-/// - Memory allocate failed during the event table creation for event registering. [POS_RET_ERROR_INNER]
-/// - The thread can not register in the event table. [POS_RET_ERROR_INNER]
-/// - Memory allocate failed in event table during the thread table creation. [POS_RET_ERROR_INNER]
-/// - After register the thread table in event table, the event flag has already \n
-/// been registered. [POS_RET_ERROR_INNER]
-/// - After register the thread table in event table, the event flag register failed. [POS_RET_ERROR_INNER]
-/// - The event table is full during event creation. [POS_RET_ERROR_INNER]
-/// - The memory for event HANDLE allocate failed during event table creation. [POS_RET_ERROR_INNER]
-/// - The thread can not be registered in event table. [POS_RET_ERROR_INNER]
-/// - In event table, try to allocate the memory of the thread table creation, but failed. [POS_RET_ERROR_INNER]
-/// - After register the thread in event table, the event flag has already been registered. [POS_RET_ERROR_INNER]
-/// - After register the thread in event table, the event flag register failed. [POS_RET_ERROR_INNER]
-/// - Specified event ID has not been registered in table. [POS_RET_ERROR_INNER]
-/// - Initialize event object failed. [POS_RET_ERROR_INNER]
-/// - ProcessNo has not been registered in message control table when message transfered between processes. \n
-/// [POS_RET_ERROR_INNER]
-/// - Message transfer HANDLE get failed when message transfered between processes. [POS_RET_ERROR_INNER]
-/// - Message transfer failed between processes. [POS_RET_ERROR_INNER]
-/// - The destination process name size is larger than 20 characters when message transfer \n
-/// between processes. [POS_RET_ERROR_INNER]
-/// - The message queue name has not been registered in control table when message transfer between \n
-/// processes. [POS_RET_ERROR_INNER]
-/// - Message transfer HANDLE create failed when message transfered between processes. [POS_RET_ERROR_INNER]
-/// - Message transfer HANDLE get failed from internal table when message transfered between processes. \n
-/// [POS_RET_ERROR_INNER]
-/// - Message transfer failed between processes. [POS_RET_ERROR_INNER]
-/// - Specified event HANDLE has not been registered in event HANDLE table during event waiting. \n
-/// [POS_RET_ERROR_INNER]
-/// - The count of thread is reach to max in event management table during event waiting. [POS_RET_ERROR_INNER]
-/// - The EV_FLAG_BIT is not set in flagID during event getting. [POS_RET_ERROR_INNER]
-/// - The ID of message event queue has not been created during event getting. [POS_RET_ERROR_INNER]
-/// - The flagID has not been registered during event getting. [POS_RET_ERROR_INNER]
-/// - The interruption happened during event getting [POS_RET_ERROR_INNER]
-/// - Whatever error happened during event getting. [POS_RET_ERROR_INNER]
-/// - Getting event timeout. [POS_RET_ERROR_INNER]
-/// - Error happened during event getting. [POS_RET_ERROR_INNER]
-/// - The result of positioning service is SENSOR_RET_ERROR_PARAM. [POS_RET_ERROR_PARAM]
-/// - The result of positioning service is SENSOR_RET_ERROR_BUFFULL. [POS_RET_ERROR_BUFFULL]
-/// - The result of positioning service is SENSOR_RET_ERROR_RESOURCE. [POS_RET_ERROR_RESOURCE]
-/// - The result of positioning service is not SENSOR_RET_ERROR_PARAM and SENSOR_RET_ERROR_BUFFULL \n
-/// and SENSOR_RET_ERROR_RESOURCE. [POS_RET_ERROR_INNER]
-///
-/// \~english @par Detail
-/// - Call this API to register heading delivery.
-/// This API will finish when get the return value.
-///
-/// \~english @par
-/// Please note the following points when use this API.
-/// - Duplication registering
-/// - The same destination thread name has already been registered
-/// - The registered delivery data updated and normal return.(first delivery)
-/// - To one delivery destination, the same data will not be duplication deliveried at same timing.
-/// - After call this API, if the delivery destination thread name is changed, please call this API again.
-///
-/// \~english @par
-/// Notification of message
-/// - After registered successfully, vehicle sensor will send system API message with following format. \n
-/// Command ID : @ref CID_POSIF_REGISTER_LISTENER_HEADING \n
-/// message structure
-/// \~english @code
-/// typedef struct {
-/// SENSORMOTION_HEADINGINFO_DAT data; /* message data */
-/// } SENSORMOTION_MSG_HEADINGINFO;
-/// @endcode
-/// message data structure
-/// \~english @code
-/// typedef struct {
-/// uint8_t getMethod; /* get method */
-/// uint8_t SyncCnt; /* sync count */
-/// uint8_t isEnable; /* enable or not */
-/// uint8_t posSts; /* position status */
-/// uint8_t Reserve1[2]; /* Reserve */
-/// uint16_t Heading; /* heading(unit:0.01degree) */
-/// uint8_t Reserve2[2]; /* Reserve */
-/// } SENSORMOTION_HEADINGINFO_DAT;
-/// @endcode
-/// - Get method(getMethod)
-/// - SENSOR_GET_METHOD_GPS - Heading from GPS
-/// - SENSOR_GET_METHOD_NAVI - Heading from Navi
-/// - Synchrony count(SyncCnt)
-/// - Count for position data synchronous \n
-/// When delivery altitude and heading data, position data can be synchronized by this count. \n
-/// But the data of different method can not be synchronized by this count.\n
-/// example 1: [longitude and latitude from GPS] and [heading from GPS] can be synchronized by the count. \n
-/// example 2: [longitude and latitude from GPS] and [longitude and latitude from Navi] can not be \n
-/// synchronized by the count. \n
-/// Caution: The sensor count in sensor data delivery is another data.
-/// - Enable or not(isEnable) \n
-/// To describe this data is whether enable or not.
-/// - 0 - not avaliable
-/// - not 0 - avaliable
-/// - Heading is invalid at following condition when GPS data specified, so [not avaliable] provieded \n
-/// - Immediately after system start, GPS unit has not received current location data and GPS unit status \n
-/// is not positioning fix
-/// - If it is not initialization status, certainly provide [avaliable] when Navi data specified
-/// - If the status is [not avaliable], data following can not be guaranteed.
-/// - Position status(posSts)
-/// - Bit0 : GPS data used result(1:used, 0:not used, definition of maskbit:POS_LOC_INFO_USE_GSP)
-/// - Bit1 : DGPS data used result(1:used, 0:not used, definition of maskbit:POS_LOC_INFO_USE_DGPS)
-/// - Bit2 : DR data used result(1:used, 0:not used, definition of maskbit:POS_LOC_INFO_USE_DR)
-/// - Bit3 : MapMatching data used result(1:used, 0:not used, definition of \n
-/// maskbit:POS_LOC_INFO_USE_MAPMATCHING)
-/// - Heading
-///
-/// \~english @par Classification
-/// - Public
-///
-/// \~english @par Type
-/// - Method
-///
-/// \~english @see
-/// - POS_GetHeading
-///
-////////////////////////////////////////////////////////////////////////////////////////////
-POS_RET_API POS_RegisterListenerHeading(HANDLE hApp, PCSTR notifyName, uint8_t ucCtrlFlg, uint8_t ucDeliveryTiming,
- uint8_t ucGetMethod);
-
-////////////////////////////////////////////////////////////////////////////////////////////
-/// \ingroup tag_Positioning
-/// \~english @par Brief
-/// - Get longitude and latitude information
-///
-/// \~english @param [in] hApp
-/// - HANDLE - App Handle
-/// \~english @param [out] dat
-/// - SENSORLOCATION_LONLATINFO_DAT* - output pointer to longitude and latitude informaiton
-/// \~english @param [in] ucGetMethod
-/// - uint8_t - Get method(GPS/Navi/Not specified)
-///
-/// \~english @par
-/// - Get method(ucGetMethod)
-/// - SENSOR_GET_METHOD_GPS - GPS The longitude and latitude from GPS will be deliveried.
-/// - SENSOR_GET_METHOD_NAVI - Navi The longitude and latitude from Navi will be deliveried.
-/// - SENSOR_GET_METHOD_AUTO - Not specified The longitude and latitude will be deliveried \n
-/// according to the current environment.
-/// - Avaliable method is descriped as following in each environment. \n
-/// In the following environment, if the SENSOR_GET_METHOD_AUTO is set,treated as default \n
-/// In the following environment, if the unsupported method has been specified, \n
-/// POS_RET_ERROR_PARAM will be returned.
-/// \~english @par
-/// - SENSORLOCATION_LONLATINFO_DAT structure
-/// \~english @code
-/// typedef struct {
-/// uint8_t getMethod; /* get method */
-/// uint8_t SyncCnt; /* sync count */
-/// uint8_t isEnable; /* enable or not */
-/// uint8_t posSts; /* position status */
-/// uint16_t posAcc; /* Position accuracy */
-/// int32_t Longitude; /* Longitude */
-/// int32_t Latitude; /* Latitude */
-/// } SENSORLOCATION_LONLATINFO_DAT;
-/// @endcode
-/// - Get method(getMethod)
-/// - SENSOR_GET_METHOD_GPS - longitude and latitude from GPS
-/// - SENSOR_GET_METHOD_NAVI - longitude and latitude from Navi
-/// - Synchrony count(SyncCnt)
-/// - Count for position data synchronous\n
-/// When delivery altitude and heading data, position data can be synchronized by this count. \n
-/// But the data of different method can not be synchronized by this count. \n
-/// example 1: [longitude and latitude from GPS] and [heading from GPS] can be synchronized by this count. \n
-/// example 2: [longitude and latitude from GPS] and [longitude and latitude from Navi] can not be \n
-/// synchronized by this count. \n
-/// Caution: The sensor count in sensor data delivery is another data.
-/// - Enable or not(isEnable) \n
-/// To describe this data is whether enable or not.
-/// - 0 - not avaliable
-/// - not 0 - avaliable
-/// - longitude and latitude is invalid at following condition when GPS data specified, \n
-/// so [not avaliable] provieded
-/// - Immediately after system start, GPS unit has not received current location data and \n
-/// GPS unit status is not positioning fix
-/// - If it is not initialization status, certainly provide [avaliable] when Navi data specified\n
-/// - If the status is [not avaliable], data following can not be guaranteed.
-/// - Position status(posSts)
-/// - Bit0 : GPS data used result(1:used, 0:not used, definition of maskbit:POS_LOC_INFO_USE_GSP)
-/// - Bit1 : DGPS data used result(1:used, 0:not used, definition of maskbit:POS_LOC_INFO_USE_DGPS)
-/// - Bit2 : DR data used result(1:used, 0:not used, definition of maskbit:POS_LOC_INFO_USE_DR)
-/// - Bit3 : MapMatching data used result(1:used, 0:not used, definition of \n
-/// maskbit:POS_LOC_INFO_USE_MAPMATCHING)
-/// - Position accuracy(posAcc)
-/// - Detected accruray of current position:1LSB=1m
-/// - Longitude : (WGS-84)(10^-7degree as 1) \n
-/// East longitude is positive value and west longitude is minus value.
-/// - Latitude : (WGS-84)(10^-7degree as 1)\n
-/// North latitudeis positive value and south latitude is minus value.
-///
-/// \~english @retval POS_RET_NORMAL normal finish
-/// \~english @retval POS_RET_ERROR_PARAM parameter error
-/// \~english @retval POS_RET_ERROR_INNER internal error
-/// \~english @retval POS_RET_ERROR_NOSUPPORT unsupported
-/// \~english @retval POS_RET_ERROR_RESOURCE lack of resource
-///
-/// \~english @par Precondition
-/// - The creation/initialization(FrameworkunifiedCreateDispatcherWithoutLoop and etc.) of the Dispatcher \n
-/// for App are completed.
-/// - Availability of positioning service is TRUE.
-///
-/// \~english @par change of internal status
-/// - There is no change of internal status
-///
-/// \~english @par Failure condition
-/// - The parameter hApp is NULL [POS_RET_ERROR_PARAM]
-/// - The parameter dat is NULL [POS_RET_ERROR_PARAM]
-/// - The count of message in message queue is reach to max [POS_RET_ERROR_RESOURCE]
-/// - The count of mutex is reach to max [POS_RET_ERROR_RESOURCE]
-/// - The count of item in ProcessName-ProcessNo convert table is reach to max [POS_RET_ERROR_RESOURCE]
-/// - The event is created in same process, but the count of reference is reach to max [POS_RET_ERROR_INNER]
-/// - The event is created in system, but the count of reference is reach to max [POS_RET_ERROR_INNER]
-/// - Memory allocate failed during the event table creation for event registering. [POS_RET_ERROR_INNER]
-/// - The thread can not register in the event table. [POS_RET_ERROR_INNER]
-/// - Memory allocate failed in event table during the thread table creation. [POS_RET_ERROR_INNER]
-/// - After register the thread table in event table, the event flag has already been registered. \n
-/// [POS_RET_ERROR_INNER]
-/// - After register the thread table in event table, the event flag register failed. [POS_RET_ERROR_INNER]
-/// - The event table is full during event creation. [POS_RET_ERROR_INNER]
-/// - The memory for event HANDLE allocate failed during event table creation. [POS_RET_ERROR_INNER]
-/// - The thread can not be registered in event table. [POS_RET_ERROR_INNER]
-/// - In event table, try to allocate the memory of the thread table creation, but failed. [POS_RET_ERROR_INNER]
-/// - After register the thread in event table, the event flag has already been registered. [POS_RET_ERROR_INNER]
-/// - After register the thread in event table, the event flag register failed. [POS_RET_ERROR_INNER]
-/// - Specified event ID has not been registered in table. [POS_RET_ERROR_INNER]
-/// - Initialize event object failed. [POS_RET_ERROR_INNER]
-/// - The memory for storing semaphore control data allocate failed. [POS_RET_ERROR_INNER]
-/// - Specified semaphore ID has not been registered when lock semaphore. [POS_RET_ERROR_INNER]
-/// - Internal mutex HANDLE is NULL when lock mutex. [POS_RET_ERROR_INNER]
-/// - Internal mutex HANDLE has not been registered in mutex table when lock mutex. [POS_RET_ERROR_INNER]
-/// - The owner of specified mutex is not itself when lock mutex. [POS_RET_ERROR_INNER]
-/// - Mutex has been multiple locked [POS_RET_ERROR_INNER]
-/// - The HANDLE is NULL when getting usable share memory address. [POS_RET_ERROR_INNER]
-/// - Can not get usable share memory address. [POS_RET_ERROR_INNER]
-/// - Memory allocate failed for share memory map. [POS_RET_ERROR_INNER]
-/// - Memory allocate failed for share memory management. [POS_RET_ERROR_INNER]
-/// - Can not open share memory. [POS_RET_ERROR_INNER]
-/// - Failed to mapping share memory. [POS_RET_ERROR_INNER]
-/// - No empty field in share memory. [POS_RET_ERROR_INNER]
-/// - Failed to guarantee share memory. [POS_RET_ERROR_INNER]
-/// - ProcessNo has not been registered in message control table when message transfered between processes. \n
-/// [POS_RET_ERROR_INNER]
-/// - Message transfer HANDLE get failed when message transfered between processes. [POS_RET_ERROR_INNER]
-/// - Message transfer failed between processes. [POS_RET_ERROR_INNER]
-/// - The destination process name size is larger than 20 characters when message transfer \n
-/// between processes. [POS_RET_ERROR_INNER]
-/// - The message queue name has not been registered in control table when message transfer \n
-/// between processes. [POS_RET_ERROR_INNER]
-/// - Message transfer HANDLE create failed when message transfered between processes. [POS_RET_ERROR_INNER]
-/// - Message transfer HANDLE get failed from internal table when message transfered between processes. \n
-/// [POS_RET_ERROR_INNER]
-/// - Message transfer failed between process. [POS_RET_ERROR_INNER]
-/// - Specified event HANDLE has not been registered in event HANDLE table during event waiting. \n
-/// [POS_RET_ERROR_INNER]
-/// - The count of thread is reach to max in event management table during event waiting. [POS_RET_ERROR_INNER]
-/// - The EV_FLAG_BIT is not set in flagID during event getting. [POS_RET_ERROR_INNER]
-/// - The ID of message event queue has not been created during event getting. [POS_RET_ERROR_INNER]
-/// - The flagID has not been registered during event getting. [POS_RET_ERROR_INNER]
-/// - The interruption happened during event getting [POS_RET_ERROR_INNER]
-/// - Whatever error happened during event getting. [POS_RET_ERROR_INNER]
-/// - The HANDLE is NULL when getting usable share memory address for accessing received data. \n
-/// [POS_RET_ERROR_INNER]
-/// - Can not get usable share memory address for accessing received data. [POS_RET_ERROR_INNER]
-/// - Memory for share memory map allocate failed for accessing received data. [POS_RET_ERROR_INNER]
-/// - Memory for share memory management allocate failed for accessing received data. [POS_RET_ERROR_INNER]
-/// - Can not open share memory for accessing received data. [POS_RET_ERROR_INNER]
-/// - Failed to mapping share memory for accessing received data. [POS_RET_ERROR_INNER]
-/// - The size of data stored in share memory is larger than the size of received data. [POS_RET_ERROR_INNER]
-/// - The result of getting sensor data get is POS_RET_ERROR_RESOURCE. [POS_RET_ERROR_RESOURCE]
-/// - The result of getting sensor data get is not POS_RET_ERROR_RESOURCE. [POS_RET_ERROR_INNER]
-///
-/// \~english @par Detail
-/// - Call this API to get longitude and latitude from vehicle sensor
-///
-/// \~english @par Classification
-/// - Public
-///
-/// \~english @par Type
-/// - Sync
-///
-/// \~english @see
-/// - POS_RegisterListenerLonLat
-///
-////////////////////////////////////////////////////////////////////////////////////////////
-POS_RET_API POS_GetLonLat(HANDLE hApp, SENSORLOCATION_LONLATINFO_DAT *dat, uint8_t ucGetMethod);
-
-////////////////////////////////////////////////////////////////////////////////////////////
-/// \ingroup tag_Positioning
-/// \~english @par Brief
-/// - Get altitude data
-///
-/// \~english @param [in] hApp
-/// - HANDLE - App Handle
-/// \~english @param [out] dat
-/// - SENSORLOCATION_ALTITUDEINFO_DAT* - output pointer to altitude data
-/// \~english @param [in] ucGetMethod
-/// - uint8_t - Get method(GPS/Not specified)
-///
-/// \~english @par
-/// - Get method(ucGetMethod)
-/// - SENSOR_GET_METHOD_GPS - GPS The altitude from GPS will be deliveried.
-/// - SENSOR_GET_METHOD_AUTO - Not specified The altitude will be deliveried \n
-/// according to the current environment
-/// - Avaliable method is descriped as following in each environment. \n
-/// In the following environment, if the SENSOR_GET_METHOD_AUTO is set,treated as default \n
-/// In the following environment, if the unsupported method has been specified, \n
-/// POS_RET_ERROR_PARAM will be returned.
-/// \~english @par
-/// - SENSORLOCATION_ALTITUDEINFO_DAT structure
-/// \~english @code
-/// typedef struct {
-/// uint8_t getMethod; /* get method */
-/// uint8_t SyncCnt; /* sync count */
-/// uint8_t isEnable; /* enable or not */
-/// uint8_t Reserve[3]; /* Reserve */
-/// int32_t Altitude; /* Altitude(unit:0.01m) */
-/// } SENSORLOCATION_ALTITUDEINFO_DAT;
-/// @endcode
-/// - Get method(getMethod)
-/// - SENSOR_GET_METHOD_GPS - altitude from GPS
-/// - Synchrony count(SyncCnt)
-/// - Count for position data synchronous \n
-/// When delivery altitude and heading data, position data can be synchronized by this count. \n
-/// But the data of different method can not be synchronized by this count. \n
-/// example: [longitude and latitude from GPS] and [heading from GPS] can be synchronized by the count. \n
-/// synchronized by the count. \n
-/// Caution: The sensor count in sensor data delivery is another data.
-/// - Enable or not(isEnable)\n
-/// To describe this data is whether enable or not.
-/// - 0 - not avaliable
-/// - not 0 - avaliable
-/// - Altitude is invalid at following condition when GPS data specified, so [not avaliable] provieded
-/// - Immediately after system start, GPS unit has not received current location data and GPS unit \n
-/// status is not positioning fix
-/// - If the status is [not avaliable], data following can not be guaranteed.
-/// - Altitude
-/// - altitude data(unit 0.01m)
-///
-/// \~english @retval POS_RET_NORMAL normal finish
-/// \~english @retval POS_RET_ERROR_PARAM parameter error
-/// \~english @retval POS_RET_ERROR_INNER internal error
-/// \~english @retval POS_RET_ERROR_NOSUPPORT unsupported
-/// \~english @retval POS_RET_ERROR_RESOURCE lack of resource
-///
-/// \~english @par Precondition
-/// - The creation/initialization(FrameworkunifiedCreateDispatcherWithoutLoop and etc.) of \n
-/// the Dispatcher for App are completed.
-/// - Availability of positioning service is TRUE.
-///
-/// \~english @par changes of internal status
-/// - There is no changes of internal status
-///
-/// \~english @par Failure condition
-/// - The parameter hApp is NULL [POS_RET_ERROR_PARAM]
-/// - The parameter dat is NULL [POS_RET_ERROR_PARAM]
-/// - The count of message in message queue is reach to max [POS_RET_ERROR_RESOURCE]
-/// - The count of mutex is reach to max [POS_RET_ERROR_RESOURCE]
-/// - The count of item in ProcessName-ProcessNo convert table is reach to max [POS_RET_ERROR_RESOURCE]
-/// - The event is created in same process, but the count of reference is reach to max [POS_RET_ERROR_INNER]
-/// - The event is created in system, but the count of reference is reach to max [POS_RET_ERROR_INNER]
-/// - Memory allocate falied during the event table creation for event registering. [POS_RET_ERROR_INNER]
-/// - The thread can not register in the event table. [POS_RET_ERROR_INNER]
-/// - Memory allocate failed in event table during the thread table creation. [POS_RET_ERROR_INNER]
-/// - After register the thread table in event table, the event flag has already been \n
-/// registered. [POS_RET_ERROR_INNER]
-/// - After register the thread table in event table, the event flag register failed. [POS_RET_ERROR_INNER]
-/// - The event table is full during event creation. [POS_RET_ERROR_INNER]
-/// - The memory for event HANDLE allocate failed during event table creation. [POS_RET_ERROR_INNER]
-/// - The thread can not be registered in event table. [POS_RET_ERROR_INNER]
-/// - In event table, try to allocate the memory of the thread table creation, but failed. [POS_RET_ERROR_INNER]
-/// - After register the thread in event table, the event flag has already been registered. [POS_RET_ERROR_INNER]
-/// - After register the thread in event table, the event flag register failed. [POS_RET_ERROR_INNER]
-/// - Specified event ID has not been registered in table. [POS_RET_ERROR_INNER]
-/// - Initialize event object failed. [POS_RET_ERROR_INNER]
-/// - The memory for storing semaphore control data allocate failed. [POS_RET_ERROR_INNER]
-/// - Specified semaphore ID has not been registered when lock semaphore. [POS_RET_ERROR_INNER]
-/// - Internal mutex HANDLE is NULL when lock mutex. [POS_RET_ERROR_INNER]
-/// - Internal mutex HANDLE has not been registered in mutex table when lock mutex. [POS_RET_ERROR_INNER]
-/// - The owner of specified mutex is not itself when lock mutex. [POS_RET_ERROR_INNER]
-/// - Mutex has been multiple locked [POS_RET_ERROR_INNER]
-/// - The HANDLE is NULL when getting usable share memory address. [POS_RET_ERROR_INNER]
-/// - Can not get usable share memory address. [POS_RET_ERROR_INNER]
-/// - Memory allocate failed for share memory map. [POS_RET_ERROR_INNER]
-/// - Memory allocate failed for share memory management. [POS_RET_ERROR_INNER]
-/// - Can not open share memory. [POS_RET_ERROR_INNER]
-/// - Failed to mapping share memory. [POS_RET_ERROR_INNER]
-/// - No empty field in share memory. [POS_RET_ERROR_INNER]
-/// - Failed to guarantee share memory. [POS_RET_ERROR_INNER]
-/// - ProcessNo has not been registered in message control table when message \n
-/// transfered between processes. [POS_RET_ERROR_INNER]
-/// - Message transfer HANDLE get failed when message transfered between processes. [POS_RET_ERROR_INNER]
-/// - Message transfer failed between processes. [POS_RET_ERROR_INNER]
-/// - The destination process name size is larger than 20 characters when message transfer \n
-/// between processes. [POS_RET_ERROR_INNER]
-/// - The message queue name has not been registered in control table when message \n
-/// transfer between processes. [POS_RET_ERROR_INNER]
-/// - Message transfer HANDLE create failed when message transfered between processes. [POS_RET_ERROR_INNER]
-/// - Message transfer HANDLE get failed from internal table when message transfered \n
-/// between processes. [POS_RET_ERROR_INNER]
-/// - Message transfer failed between processes. [POS_RET_ERROR_INNER]
-/// - Specified event HANDLE has not been registered in event HANDLE table during \n
-/// event waiting. [POS_RET_ERROR_INNER]
-/// - The count of thread is reach to max in event management table during event waiting. [POS_RET_ERROR_INNER]
-/// - The EV_FLAG_BIT is not set in flagID during event getting. [POS_RET_ERROR_INNER]
-/// - The ID of message event queue has not been created during event getting. [POS_RET_ERROR_INNER]
-/// - The flagID has not been registered during event getting. [POS_RET_ERROR_INNER]
-/// - The interruption happened during event getting [POS_RET_ERROR_INNER]
-/// - Whatever error happened during event getting. [POS_RET_ERROR_INNER]
-/// - The HANDLE is NULL when getting usable share memory address for accessing
-/// received data. [POS_RET_ERROR_INNER]
-/// - Can not get usable share memory address for accessing received data. [POS_RET_ERROR_INNER]
-/// - Memory for share memory map allocate failed for accessing received data. [POS_RET_ERROR_INNER]
-/// - Memory for share memory management allocate failed for accessing received data. [POS_RET_ERROR_INNER]
-/// - Can not open share memory for accessing received data. [POS_RET_ERROR_INNER]
-/// - Failed to mapping share memory for accessing received data. [POS_RET_ERROR_INNER]
-/// - The size of data stored in share memory is larger than the size of received data. [POS_RET_ERROR_INNER]
-/// - The result of getting sensor data is POS_RET_ERROR_RESOURCE. [POS_RET_ERROR_RESOURCE]
-/// - The result of getting sensor data is not POS_RET_ERROR_RESOURCE. [POS_RET_ERROR_INNER]
-///
-/// \~english @par Detail
-/// - Call this API to get altitude from vehicle sensor
-///
-/// \~english @par Classification
-/// - Public
-///
-/// \~english @par Type
-/// - Sync
-///
-/// \~english @see
-/// - POS_RegisterListenerAltitude
-////////////////////////////////////////////////////////////////////////////////////////////
-POS_RET_API POS_GetAltitude(HANDLE hApp, SENSORLOCATION_ALTITUDEINFO_DAT *dat, uint8_t ucGetMethod);
-
-////////////////////////////////////////////////////////////////////////////////////////////
-/// \ingroup tag_Positioning
-/// \~english @par Brief
-/// - Get speed data
-///
-/// \~english @param [in] hApp
-/// - HANDLE - App Handle
-/// \~english @param [out] dat
-/// - SENSORMOTION_SPEEDINFO_DAT* - output buffer pointer to store speed data
-/// \~english @param [in] ucGetMethod
-/// - uint8_t - Get method(POS/Navi/Not specified)
-///
-/// \~english @par
-/// - Get method(ucGetMethod)
-/// - SENSOR_GET_METHOD_POS - The speed calculated in positioning based on speed pulse will be deliveried.
-/// - SENSOR_GET_METHOD_NAVI - Navi The speed from Navi will be deliveried.
-/// - SENSOR_GET_METHOD_AUTO - Not specified The speed will be deliveried according to current \n
-/// environment.
-/// - Avaliable method is descriped as following in each environment. \n
-/// In the following environment, if the SENSOR_GET_METHOD_AUTO is set,treated as default \n
-/// In the following environment, if the unsupported method has been specified, \n
-/// POS_RET_ERROR_PARAM will be returned.
-///
-/// \~english @par
-/// - SENSORMOTION_SPEEDINFO_DAT structure
-/// \~english @code
-/// typedef struct {
-/// uint8_t getMethod; /* get method */
-/// uint8_t SyncCnt; /* sync count */
-/// uint8_t isEnable; /* enable or not */
-/// uint8_t Reserve1[3]; /* Reserve */
-/// uint16_t Speed; /* speed(unit:0.01m/sec) */
-/// uint8_t Reserve2[2]; /* Reserve */
-/// } SENSORMOTION_SPEEDINFO_DAT;
-/// @endcode
-/// - Get method(getMethod)
-/// - SENSOR_GET_METHOD_POS - The speed calculated in positioning based on speed pulse will be deliveried.
-/// - Sync count(SyncCnt)
-/// - 0.
-/// - Enable or not(isEnable) \n
-/// To describe this data is whether enable or not.
-/// - 0 - not avaliable
-/// - not 0 - avaliable
-/// - Speed is invalid at following condition when speed pulse specified, so [not avaliable] provieded
-/// - Immediately after system start, the sensor data have not been received from SYS micon
-/// - If it is not initialization status, certainly provide [avaliable] when Navi data specified
-/// - If the status is [not avaliable], data following can not be guaranteed.
-/// - Speed
-/// - speed data(unit 0.01m/sec)
-///
-/// \~english @retval POS_RET_NORMAL normal finish
-/// \~english @retval POS_RET_ERROR_PARAM parameter error
-/// \~english @retval POS_RET_ERROR_INNER internal error
-/// \~english @retval POS_RET_ERROR_NOSUPPORT unsupported
-/// \~english @retval POS_RET_ERROR_RESOURCE lack of resource
-///
-/// \~english @par Precondition
-/// - The creation/initialization(FrameworkunifiedCreateDispatcherWithoutLoop and etc.) \n
-/// of the dispatcher for App are completed.
-/// - Availability of positioning service is TRUE.
-///
-/// \~english @par changes of internal status
-/// - There is no changes of internal status
-///
-/// \~english @par Failure condition
-/// - The parameter hApp is NULL [POS_RET_ERROR_PARAM]
-/// - The parameter dat is NULL [POS_RET_ERROR_PARAM]
-/// - The count of message in message queue is reach to max [POS_RET_ERROR_RESOURCE]
-/// - The count of mutex is reach to max [POS_RET_ERROR_RESOURCE]
-/// - The count of item in ProcessName-ProcessNo convert table is reach to max [POS_RET_ERROR_RESOURCE]
-/// - The event is created in same process, but the count of reference is reach to max [POS_RET_ERROR_INNER]
-/// - The event is created in system, but the count of reference is reach to max [POS_RET_ERROR_INNER]
-/// - Memory allocate falied when the event table creation that for event registering. [POS_RET_ERROR_INNER]
-/// - The thread can not register in the event table. [POS_RET_ERROR_INNER]
-/// - Memory allocate failed in event table when the thread table creation. [POS_RET_ERROR_INNER]
-/// - After register the thread table in event table, the event flag has already been \n
-/// registered. [POS_RET_ERROR_INNER]
-/// - After register the thread table in event table, the event flag register failed. [POS_RET_ERROR_INNER]
-/// - The event table is full when event creation. [POS_RET_ERROR_INNER]
-/// - The memory for event HANDLE allocate failed when event table creation. [POS_RET_ERROR_INNER]
-/// - The thread can not be registered in event table. [POS_RET_ERROR_INNER]
-/// - In event table, to allocate the memory of the thread table creation, but failed. [POS_RET_ERROR_INNER]
-/// - After register the thread in event table, the event flag has already been registered. [POS_RET_ERROR_INNER]
-/// - After register the thread in event table, the event flag register failed. [POS_RET_ERROR_INNER]
-/// - Specified event ID has not been registered in table. [POS_RET_ERROR_INNER]
-/// - Initialize event object failed. [POS_RET_ERROR_INNER]
-/// - The memory for storing semaphore control data allocate failed. [POS_RET_ERROR_INNER]
-/// - Specified semaphore ID has not been registered when semaphore lock. [POS_RET_ERROR_INNER]
-/// - Internal mutex HANDLE is NULL when mutex lock. [POS_RET_ERROR_INNER]
-/// - Internal mutex HANDLE has not been registered in mutex table when mutex lock. [POS_RET_ERROR_INNER]
-/// - The owner of specified mutex is not itself when mutex lock. [POS_RET_ERROR_INNER]
-/// - Mutex has been multiple locked [POS_RET_ERROR_INNER]
-/// - The HANDLE is NULL when getting usable share memory address. [POS_RET_ERROR_INNER]
-/// - Can not get usable share memory address. [POS_RET_ERROR_INNER]
-/// - Memory allocate failed for share memory map. [POS_RET_ERROR_INNER]
-/// - Memory allocate failed for share memory management. [POS_RET_ERROR_INNER]
-/// - Can not open share memory. [POS_RET_ERROR_INNER]
-/// - Failed to mapping share memory. [POS_RET_ERROR_INNER]
-/// - No empty field in share memory. [POS_RET_ERROR_INNER]
-/// - Failed to guarantee share memory. [POS_RET_ERROR_INNER]
-/// - ProcessNo has not been registered in message control table when message transfered \n
-/// between processes. [POS_RET_ERROR_INNER]
-/// - Message transfer HANDLE get failed when message transfered between processes. [POS_RET_ERROR_INNER]
-/// - Message transfer failed between processes. [POS_RET_ERROR_INNER]
-/// - The destination process name size is larger than 20 characters when message transfer \n
-/// between processes. [POS_RET_ERROR_INNER]
-/// - The message queue name has not been registered in control table when message transfer \n
-/// between processes [POS_RET_ERROR_INNER]
-/// - Message transfer HANDLE create failed when message transfered between processes. [POS_RET_ERROR_INNER]
-/// - Message transfer HANDLE get failed from internal table when message transfered between \n
-/// processes. [POS_RET_ERROR_INNER]
-/// - Message transfer failed between processes. [POS_RET_ERROR_INNER]
-/// - Specified event HANDLE has not been registered in event HANDLE table during event \n
-/// waiting. [POS_RET_ERROR_INNER]
-/// - The count of thread is reach to max in event management table during event waiting. [POS_RET_ERROR_INNER]
-/// - The EV_FLAG_BIT is not set in flagID during event getting. [POS_RET_ERROR_INNER]
-/// - The ID of message event queue has not been created during event getting. [POS_RET_ERROR_INNER]
-/// - The flagID has not been registered during event getting. [POS_RET_ERROR_INNER]
-/// - The interruption happened during event getting [POS_RET_ERROR_INNER]
-/// - Whatever error happened during event getting. [POS_RET_ERROR_INNER]
-/// - The HANDLE is NULL when getting usable share memory address for accessing \n
-/// received data. [POS_RET_ERROR_INNER]
-/// - Can not get usable share memory address for accessing received data. [POS_RET_ERROR_INNER]
-/// - Memory for share memory map allocate failed for accessing received data. [POS_RET_ERROR_INNER]
-/// - Memory for share memory management allocate failed for accessing received data. [POS_RET_ERROR_INNER]
-/// - Can not open share memory for accessing received data. [POS_RET_ERROR_INNER]
-/// - Failed to mapping share memory for accessing received data. [POS_RET_ERROR_INNER]
-/// - The size of data stored in share memory is larger than the size of received data. [POS_RET_ERROR_INNER]
-/// - The result of getting sensor data is POS_RET_ERROR_RESOURCE. [POS_RET_ERROR_RESOURCE]
-/// - The result of getting sensor data is not POS_RET_ERROR_RESOURCE. [POS_RET_ERROR_INNER]
-///
-/// \~english @par Detail
-/// - Call this API to get speed from vehicle sensor.
-///
-/// \~english @par Classification
-/// - Public
-///
-/// \~english @par Type
-/// - Sync
-///
-/// \~english @see
-/// - POS_RegisterListenerSpeed
-///
-////////////////////////////////////////////////////////////////////////////////////////////
-POS_RET_API POS_GetSpeed(HANDLE hApp, SENSORMOTION_SPEEDINFO_DAT *dat, uint8_t ucGetMethod);
-
-////////////////////////////////////////////////////////////////////////////////////////////
-/// \ingroup tag_Positioning
-/// \~english @par Brief
-/// - Get heading data
-///
-/// \~english @param [in] hApp
-/// - HANDLE - App Handle
-/// \~english @param [out] dat
-/// - SENSORMOTION_HEADINGINFO_DAT* - output buffer pointer to store heading data
-/// \~english @param [in] ucGetMethod
-/// - uint8_t - Get method(GPS/Navi/Not specified)
-///
-/// \~english @par
-/// - Get method(ucGetMethod)
-/// - SENSOR_GET_METHOD_GPS - GPS The heading from GPS will be deliveried.
-/// - SENSOR_GET_METHOD_NAVI - Navi The heading from Navi will be deliveried.
-/// - SENSOR_GET_METHOD_AUTO - Not specified The heading which most suitable in current environment \n
-/// - Avaliable method is descriped as following in each environment. \n
-/// In corresponding environment, the SENSOR_GET_METHOD_AUTO is set as default. \n
-/// In corresponding environment, if the unsupported method has been specified, \n
-/// POS_RET_ERROR_PARAM will be returned.
-/// \~english @par
-/// - SENSORMOTION_HEADINGINFO_DAT structure
-/// \~english @code
-/// typedef struct {
-/// uint8_t getMethod; /* get method */
-/// uint8_t SyncCnt; /* sync count */
-/// uint8_t isEnable; /* enable or not */
-/// uint8_t posSts; /* position status */
-/// uint8_t Reserve1[2]; /* Reserve */
-/// uint16_t Heading; /* heading(unit:0.01degree) */
-/// uint8_t Reserve2[2]; /* Reserve */
-/// } SENSORMOTION_HEADINGINFO_DAT;
-/// @endcode
-/// - Get method(getMethod)
-/// - SENSOR_GET_METHOD_GPS - Heading from GPS
-/// - SENSOR_GET_METHOD_NAVI - Heading from Navi
-/// - Synchrony count(SyncCnt)
-/// - Count for position data synchronous \n
-/// When delivery altitude and heading data, position data can be synchronized by this count. \n
-/// But the data of different method can not be synchronized by this count. \n
-/// example 1: [longitude and latitude from GPS] and [heading from GPS] can be synchronized by the count. \n
-/// example 2: [longitude and latitude from GPS] and [longitude and latitude from Navi] can not be \n
-/// synchronized by the count. \n
-/// Caution: The sensor count in sensor data delivery is another data.
-/// - Enable or not(isEnable) \n
-/// To describe this data is whether enable or not.
-/// - 0 - not avaliable
-/// - not 0 - avaliable
-/// - Heading is invalid at following condition when GPS data specified, so [not avaliable] provieded
-/// - Immediately after system start, GPS unit has not received current location data and GPS unit \n
-/// status is not positioning fix
-/// - If it is not initialization status, certainly provide [avaliable] when Navi data specified
-/// - If the status is [not avaliable], data following can not be guaranteed.
-/// - Position status(posSts)
-/// - Bit0 : GPS data used result(1:used, 0:not used, definition of maskbit:POS_LOC_INFO_USE_GSP)
-/// - Bit1 : DGPS data used result(1:used, 0:not used, definition of maskbit:POS_LOC_INFO_USE_DGPS)
-/// - Bit2 : DR data used result(1:used, 0:not used, definition of maskbit:POS_LOC_INFO_USE_DR)
-/// - Bit3 : MapMatching data use result(1:used, 0:not used, definition of maskbit:POS_LOC_INFO_USE_MAPMATCHING)
-/// - Heading
-///
-/// \~english @retval POS_RET_NORMAL normal finish
-/// \~english @retval POS_RET_ERROR_PARAM parameter error
-/// \~english @retval POS_RET_ERROR_INNER internal error
-/// \~english @retval POS_RET_ERROR_NOSUPPORT unsupported
-/// \~english @retval POS_RET_ERROR_RESOURCE lack of resource
-///
-/// \~english @par Precondition
-/// - The creation/initialization(FrameworkunifiedCreateDispatcherWithoutLoop and etc.) of the Dispatcher
-/// - for App are completed.
-/// - Availability of positioning service is TRUE.
-///
-/// \~english @par changes of internal status
-/// - There is no changes of internal status
-///
-/// \~english @par Failure condition
-/// - The parameter hApp is NULL [POS_RET_ERROR_PARAM]
-/// - The parameter dat is NULL [POS_RET_ERROR_PARAM]
-/// - The count of message in message queue is reach to max [POS_RET_ERROR_RESOURCE]
-/// - The count of mutex is reach to max [POS_RET_ERROR_RESOURCE]
-/// - The count of item in ProcessName-ProcessNo convert table is reach to max [POS_RET_ERROR_RESOURCE]
-/// - The event is created in same process, but the count of reference is reach to max [POS_RET_ERROR_INNER]
-/// - The event is created in system, but the count of reference is reach to max [POS_RET_ERROR_INNER]
-/// - Memory allocate falied during the event table creation for event registering. [POS_RET_ERROR_INNER]
-/// - The thread can not register in the event table. [POS_RET_ERROR_INNER]
-/// - Memory allocate failed in event table during the thread table creation. [POS_RET_ERROR_INNER]
-/// - After register the thread table in event table, the event flag has already been \n
-/// registered. [POS_RET_ERROR_INNER]
-/// - After register the thread table in event table, the event flag register failed. [POS_RET_ERROR_INNER]
-/// - The event table is full during event creation. [POS_RET_ERROR_INNER]
-/// - The memory for event HANDLE allocate failed during event table creation. [POS_RET_ERROR_INNER]
-/// - The thread can not be registered in event table. [POS_RET_ERROR_INNER]
-/// - In event table, try to allocate the memory of the thread table creation, but failed. [POS_RET_ERROR_INNER]
-/// - After register the thread in event table, the event flag has already been registered. [POS_RET_ERROR_INNER]
-/// - After register the thread in event table, the event flag register failed. [POS_RET_ERROR_INNER]
-/// - Specified event ID has not been registered in table. [POS_RET_ERROR_INNER]
-/// - Initialize event object failed. [POS_RET_ERROR_INNER]
-/// - The memory for storing semaphore control data allocate failed. [POS_RET_ERROR_INNER]
-/// - Specified semaphore ID has not been registered when semaphore lock. [POS_RET_ERROR_INNER]
-/// - Internal mutex HANDLE is NULL when mutex lock. [POS_RET_ERROR_INNER]
-/// - Internal mutex HANDLE has not been registered in mutex table when mutex lock. [POS_RET_ERROR_INNER]
-/// - The owner of specified mutex is not itself when mutex lock. [POS_RET_ERROR_INNER]
-/// - Mutex has been multiple locked [POS_RET_ERROR_INNER]
-/// - The HANDLE is NULL when getting usable share memory address. [POS_RET_ERROR_INNER]
-/// - Can not get usable share memory address. [POS_RET_ERROR_INNER]
-/// - Memory allocate failed for share memory map. [POS_RET_ERROR_INNER]
-/// - Memory allocate failed for share memory management. [POS_RET_ERROR_INNER]
-/// - Can not open share memory. [POS_RET_ERROR_INNER]
-/// - Failed to mapping share memory. [POS_RET_ERROR_INNER]
-/// - No empty field in share memory. [POS_RET_ERROR_INNER]
-/// - Failed to guarantee share memory. [POS_RET_ERROR_INNER]
-/// - ProcessNo has not been registered in message control table when message transfered \n
-/// between processes. [POS_RET_ERROR_INNER]
-/// - Message transfer HANDLE get failed when message transfered between processes. [POS_RET_ERROR_INNER]
-/// - Message transfer failed between processes. [POS_RET_ERROR_INNER]
-/// - The destination process name size is larger than 20 characters when message transfer \n
-/// between processes. [POS_RET_ERROR_INNER]
-/// - The message queue name has not been registered in control table when message transfer \n
-/// between processes. [POS_RET_ERROR_INNER]
-/// - Message transfer HANDLE create failed when message transfered between processes. [POS_RET_ERROR_INNER]
-/// - Message transfer HANDLE get failed from internal table when message transfered between \n
-/// processes. [POS_RET_ERROR_INNER]
-/// - Message transfer failed between processes. [POS_RET_ERROR_INNER]
-/// - Specified event HANDLE has not been registered in event HANDLE table \n
-/// during event waiting[POS_RET_ERROR_INNER]
-/// - The count of thread is reach to max in event management table during event waiting. [POS_RET_ERROR_INNER]
-/// - The EV_FLAG_BIT is not set in flagID during event getting. [POS_RET_ERROR_INNER]
-/// - The ID of message event queue has not been created during event getting. [POS_RET_ERROR_INNER]
-/// - The flagID has not been registered during event getting. [POS_RET_ERROR_INNER]
-/// - The interruption happened during event getting [POS_RET_ERROR_INNER]
-/// - Whatever error happened during event getting. [POS_RET_ERROR_INNER]
-/// - The HANDLE is NULL when getting usable share memory address for accessing received \n
-/// data. [POS_RET_ERROR_INNER]
-/// - Can not get usable share memory address for accessing received data. [POS_RET_ERROR_INNER]
-/// - Memory for share memory map allocate failed for accessing received data. [POS_RET_ERROR_INNER]
-/// - Memory for share memory management allocate failed for accessing received data. [POS_RET_ERROR_INNER]
-/// - Can not open share memory for accessing received data. [POS_RET_ERROR_INNER]
-/// - Failed to mapping share memory for accessing received data. [POS_RET_ERROR_INNER]
-/// - The size of data stored in share memory is larger than the size of received data. [POS_RET_ERROR_INNER]
-/// - The result of getting sensor data is POS_RET_ERROR_RESOURCE. [POS_RET_ERROR_RESOURCE]
-/// - The result of getting sensor data is not POS_RET_ERROR_RESOURCE. [POS_RET_ERROR_INNER]
-///
-/// \~english @par Detail
-/// - Call this API to get heading from vehicle sensor.
-///
-/// \~english @par Classification
-/// - Public
-///
-/// \~english @par Type
-/// - Sync
-///
-/// \~english @see
-/// - POS_RegisterListenerHeading
-///
-////////////////////////////////////////////////////////////////////////////////////////////
-POS_RET_API POS_GetHeading(HANDLE hApp, SENSORMOTION_HEADINGINFO_DAT *dat, uint8_t ucGetMethod);
-
-////////////////////////////////////////////////////////////////////////////////////////////
-/// \ingroup tag_Positioning
-/// \~english @par Brief
-/// - Set speed information
-///
-/// \~english @param [in] hApp
-/// - HANDLE - App Handle
-/// \~english @param [in] navispeed
-/// - uint16_t - speed data[unit: 1.0km/h]
-///
-/// \~english @retval POS_RET_NORMAL normal finish
-/// \~english @retval POS_RET_ERROR_PARAM parameter error
-/// \~english @retval POS_RET_ERROR_INNER internal error
-/// \~english @retval POS_RET_ERROR_NOSUPPORT unsupported
-/// \~english @retval POS_RET_ERROR_RESOURCE lack of resource
-///
-/// \~english @par Precondition
-/// - The creation/initialization(FrameworkunifiedCreateDispatcherWithoutLoop and etc.) of \n
-/// the Dispatcher for App are completed.
-/// - Availability of positioning service is TRUE.
-///
-/// \~english @par changes of internal status
-/// - There is no changes of internal status
-///
-/// \~english @par Failure condition
-/// - The parameter hApp is NULL [POS_RET_ERROR_PARAM]
-/// - The data size is larger than specified value(POS_MSG_INFO_DSIZE) [POS_RET_ERROR_RESOURCE]
-/// - The count of message in message queue is reach to max [POS_RET_ERROR_RESOURCE]
-/// - The count of mutex is reach to max [POS_RET_ERROR_RESOURCE]
-/// - The count of item in ProcessName-ProcessNo convert table is reach to max [POS_RET_ERROR_RESOURCE]
-/// - The message queue name has not been registered in control table. [POS_RET_ERROR_INNER]
-/// - Message transfer HANDLE create failed. [POS_RET_ERROR_INNER]
-/// - Message transfer HANDLE get failed from internal table. [POS_RET_ERROR_INNER]
-/// - Speed data setting message transfer failed. [POS_RET_ERROR_INNER]
-///
-/// \~english @par Detail
-/// - Call this API to set speed to vehicle sensor. \n
-/// This API will finish when get the return value. \n
-/// The speed set by this API is saved in positioning as the speed calculated by Navi.
-///
-/// \~english @par
-/// - Please note the following points when use this API.
-/// - This API is only called by Navi proxy.
-///
-/// \~english @par Classification
-/// - Public
-///
-/// \~english @par Type
-/// - Fire and Forget
-///
-/// \~english @see
-/// - None
-///
-////////////////////////////////////////////////////////////////////////////////////////////
-POS_RET_API POS_SetSpeedInfo(HANDLE hApp, uint16_t navispeed);
-
-////////////////////////////////////////////////////////////////////////////////////////////
-/// \ingroup tag_Positioning
-/// \~english @par Brief
-/// - Set location information
-///
-/// \~english @param [in] hApp
-/// - HANDLE - App Handle
-/// \~english @param [in] pstPosData
-/// - POS_POSDATA * - pointer to location information
-///
-/// \~english @par
-/// - POS_POSDATA structure
-/// \~english @code
-/// typedef struct
-/// {
-/// int8_t status; /* data status */
-/// uint8_t posSts; /* position status */
-/// uint16_t posAcc; /* Position accuracy 1LSB=1m */
-/// int32_t Longitude; /* Longitude(unit:1/128sec) */
-/// int32_t Latitude; /* Latitude(unit:1/128sec) */
-/// int32_t altitude; /* altitude (unit:0.01m) */
-/// int16_t heading; /* heading (unit:1degree) */
-/// uint8_t reserved[2]; /* reserve */
-/// } POS_POSDATA;
-/// @endcode
-///
-/// \~english @par
-/// - data status(status) \n
-/// Do not set the invalid data(do not update data).
-/// - data valid/invalid status
-/// - Bit0 : latitude(1:valid, 0:invalid, definition of maskbit:POS_LOC_INFO_LAT)
-/// - Bit1 : longitude(1:valid, 0:invalid, definition of maskbit:POS_LOC_INFO_LON)
-/// - Bit2 : altitude (1:valid, 0:invalid, definition of maskbit:POS_LOC_INFO_ALT)
-/// - Bit3 : heading (1:valid, 0:invalid, definition of maskbit:POS_LOC_INFO_HEAD)
-/// - Bit4~7 : reserve
-/// - Position status(posSts)
-/// - Bit0 : GPS data used result(1:used, 0:not used, definition of maskbit:POS_LOC_INFO_USE_GSP)
-/// - Bit1 : DGPS data used result(1:used, 0:not used, definition of maskbit:POS_LOC_INFO_USE_DGPS)
-/// - Bit2 : DR data used result(1:used, 0:not used, definition of maskbit:POS_LOC_INFO_USE_DR)
-/// - Bit3 : MapMatching data use result(1:used, 0:not used, definition of maskbit:POS_LOC_INFO_USE_MAPMATCHING)
-/// - Bit4~7 : reserve
-/// - Position accuracy(posAcc)
-/// - Detected accruray of current position:1LSB=1m
-/// - longitude
-/// - data range: -180deg ~ +180deg
-/// - +: east longitude -: west longitude
-/// - latitude
-/// - data range:-90deg ~ +90deg
-/// - +: north latitude -: south latitude
-/// - heading
-/// - data range:-179deg ~ +180deg
-/// - Based on north, west(counter-clockwise) is +, east(clockwise) is -
-///
-/// \~english @retval POS_RET_NORMAL normal finish
-/// \~english @retval POS_RET_ERROR_PARAM parameter error
-/// \~english @retval POS_RET_ERROR_INNER internal error
-/// \~english @retval POS_RET_ERROR_NOSUPPORT unsupported
-/// \~english @retval POS_RET_ERROR_RESOURCE lack of resource
-///
-/// \~english @par Precondition
-/// - The creation/initialization(FrameworkunifiedCreateDispatcherWithoutLoop and etc.) of the Dispatcher \n
-/// for App are completed.
-/// - Availability of positioning service is TRUE.
-///
-/// \~english @par change of internal status
-/// - There is no change of internal status
-///
-/// \~english @par Failure condition
-/// - The parameter pstPosData is NULL [POS_RET_ERROR_PARAM]
-/// - The parameter hApp is NULL [POS_RET_ERROR_PARAM]
-/// - The data status in parameter pstPosData is invalid value(0). [POS_RET_ERROR_PARAM]
-/// - The data status in parameter pstPosData is abnormal value(<15). [POS_RET_ERROR_PARAM]
-/// - The data size is larger than specified value(POS_MSG_INFO_DSIZE) [POS_RET_ERROR_RESOURCE]
-/// - The count of message in message queue is reach to max [POS_RET_ERROR_RESOURCE]
-/// - The count of mutex is reach to max [POS_RET_ERROR_RESOURCE]
-/// - The count of item in ProcessName-ProcessNo convert table is reach to max [POS_RET_ERROR_RESOURCE]
-/// - The message queue name has not been registered in control table. [POS_RET_ERROR_INNER]
-/// - Message transfer HANDLE create failed. [POS_RET_ERROR_INNER]
-/// - Message transfer HANDLE get failed from internal table. [POS_RET_ERROR_INNER]
-/// - Location data setting message transfer failed. [POS_RET_ERROR_INNER]
-///
-/// \~english @par Detail
-/// - Call this API to set location to vehicle sensor. \n
-/// This API will finish when get the return value. \n
-/// The location set by this API is saved in positioning as the location calculated by Navi. \n
-/// If one of longitude and latitude is valid, the another data will be used as valid data no \n
-/// matter what status it is. \n
-/// If one of longitude and latitude is valid, the position accuracy data will be used as valid data.
-///
-/// \~english @par
-/// - Please note the following points when use this API.
-/// - This API is only called by Navi proxy.
-///
-/// \~english @par Classification
-/// - Public
-///
-/// \~english @par Type
-/// - Fire and Forget
-///
-/// \~english @see
-/// - None
-///
-////////////////////////////////////////////////////////////////////////////////////////////
-POS_RET_API POS_SetLocationInfo(HANDLE hApp, POS_POSDATA* pstPosData);
-
-#ifdef __cplusplus
-}
-#endif
-/** @}*/ // end of positioning
-/** @}*/ // end of vehicle_service
-/** @}*/ // end of BaseSystem
-#endif // POSITIONING_CLIENT_INCLUDE_VEHICLE_SERVICE_POS_COMMON_API_H_