summaryrefslogtreecommitdiffstats
path: root/video_in_hal/positioning_hal/hal_api/gps_hal.h
diff options
context:
space:
mode:
Diffstat (limited to 'video_in_hal/positioning_hal/hal_api/gps_hal.h')
-rwxr-xr-xvideo_in_hal/positioning_hal/hal_api/gps_hal.h932
1 files changed, 0 insertions, 932 deletions
diff --git a/video_in_hal/positioning_hal/hal_api/gps_hal.h b/video_in_hal/positioning_hal/hal_api/gps_hal.h
deleted file mode 100755
index 3321275..0000000
--- a/video_in_hal/positioning_hal/hal_api/gps_hal.h
+++ /dev/null
@@ -1,932 +0,0 @@
-/*
- * @copyright Copyright (c) 2018-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 HAL_API_GPS_HAL_H_
-#define HAL_API_GPS_HAL_H_
-
-/**
- * @file gps_hal.h
- */
-
-/** @addtogroup positioning
- * @{
- */
-/** @addtogroup positioning_hal
- * @ingroup positioning
- * @{
- */
-
-/*---------------------------------------------------------------------------*/
-// Include files
-
-#include <native_service/frameworkunified_types.h>
-#include <vehicle_service/pos_message_header.h>
-#include <vehicle_service/std_types.h>
-
-/*---------------------------------------------------------------------------*/
-// Value define
-
-typedef int32 RET_API;
-typedef uint32_t DID;
-
-/*************************************************************************
- * RET_API define
- *************************************************************************/
-/*--- for message ---*/
-#define POS_TIMESTS_NG 0x00
-//!< \~english time has not been adjusted after GPS receiver reset(time input or master reset or CSF start)
-#define POS_TIMESTS_RTC 0x01
-//!< \~english time output from RTC Backup(have time adjustment)
-#define POS_TIMESTS_OK 0x02 //!< \~english time adjustment completed
-
-/* command ID */
-#define CID_POSIF_REGISTER_LISTENER_GPS_TIME 0x0201
-//!< \~english GPS time delivery command ID
-
-#define POS_DID_GPS__CWORD82__SETINITIAL 0x80000033
-//!< \~english data ID of setting initial location and time to GPS
-
-#define POS_DID_GPS__CWORD82__SETRMODEEX 0x80000035
-//!< \~english data ID of setting GPS receiver mode(pull extension sentence)
-
-#define POS_DID_GPS__CWORD82__SELSENT 0x80000036
-//!< \~english data ID of setting command to GPS that output any sentence
-
-/* NAVIINFO_RET_API */
-#define NAVIINFO_RET_NORMAL (0) //!< \~english normal finish
-#define NAVIINFO_RET_ERROR_PARAM (-1) //!< \~english parameter error
-#define NAVIINFO_RET_ERROR_INNER (-2) //!< \~english internal error
-#define NAVIINFO_RET_ERROR_BUFFULL (-3) //!< \~english buffer full
-#define NAVIINFO_RET_ERROR_NOSUPPORT (-4) //!< \~english no support
-#define NAVIINFO_RET_ERROR_RESOURCE (-5) //!< \~english lack of resource
-
-/* Positioning Level/GPS Information Positioning Status Information Definition */
-#define NAVIINFO_DIAG_GPS_FIX_STS_NON (0) //!< \~english position not fix
-#define NAVIINFO_DIAG_GPS_FIX_STS_2D (1) //!< \~english 2D position fix
-#define NAVIINFO_DIAG_GPS_FIX_STS_3D (2) //!< \~english 3D position fix
-
-/* Reception status definition */
-#define NAVIINFO_DIAG_GPS_RCV_STS_NOTUSE (0) //!< \~english not used
-#define NAVIINFO_DIAG_GPS_RCV_STS_SEARCHING (1) //!< \~english searching
-#define NAVIINFO_DIAG_GPS_RCV_STS_TRACHING (2) //!< \~english tracking
-#define NAVIINFO_DIAG_GPS_RCV_STS_NOTUSEFIX (3) //!< \~english not used for position fix
-#define NAVIINFO_DIAG_GPS_RCV_STS_USEFIX (4) //!< \~english used for position fix
-
-/* GPS Response Status Definition */
-#define GPS_SENDOK 0 //!< \~english send result OK
-#define GPS_SENDNG 1 //!< \~english send result NG
-
-/* GPS reset request mode definition */
-#define GPS_RST_COLDSTART 0xff
-//!< \~english GPS reset request(cold start)
-
-#define RET_NORMAL 0 //!< \~english normally end
-
-#define RET_RCVMSG 1 //!< \~english receive message only
-#define RET_RCVSIG 2 //!< \~english receive signal only
-#define RET_RCVBOTH 3 //!< \~english receive message and signal
-#define RET_NOMSG 4 //!< \~english receive no message
-
-#define RET_QUE 5 //!< \~english insert signal
-#define RET_NOTQUE 6 //!< \~english do not insert signal
-#define RET_PROCDOWN 7 //!< \~english sub process down found
-#define RET_SLEEP 100 //!< \~english sleep time
-
-
-#define RET_OSERROR (-127) //!< \~english OS system call error
-
-#define RET_ERROR (-1)
-//!< \~english abnormally end(do not know reason)
-#define RET_ERRPARAM (-2) //!< \~english parameter error
-#define RET_ERRNOTRDY (-3)
-//!< \~english port or semphore ID is not created
-#define RET_ERRPROC (-4) //!< \~english error occurs in API process
-#define RET_ERRTIMEOUT (-5)
-//!< \~english timeout occurs but process unfinished
-#define RET_ERRMSGFULL (-6) //!< \~english message table full
-
-
-#define RET_ERROVERFLW (-7)
-//!< \~english message size exceeds receive buffer size
-
-#define RET_ERRINIT (-8) //!< \~english abnormally initialization
-
-#define RET_EV_NONE (-20) //!< \~english event does not exist
-#define RET_EV_MAX (-21) //!< \~english event value exceeds max value
-#define RET_EV_MIN (-22)
-//!< \~english event value is lower than min value
-
-/* POS_RET_API */
-#define POS_RET_NORMAL 0 //!< \~english normal finish
-#define POS_RET_ERROR (-1) //!< \~english error occured
-#define POS_RET_ERROR_DID (-2) //!< \~english data ID error
-#define POS_RET_ERROR_INNER (-3) //!< \~english internal error
-#define POS_RET_ERROR_PARAM (-4) //!< \~english parameter error
-#define POS_RET_ERROR_BUFFULL (-5) //!< \~english buffer full error
-#define POS_RET_ERROR_CREATE_EVENT (-6) //!< \~english create event error
-#define POS_RET_ERROR_OUTOF_MEMORY (-8)
-//!< \~english share memory allocation size error
-
-#define POS_RET_ERROR_SIZE (-9) //!< \~english memory size error
-#define POS_RET_ERROR_TIMEOUT (-10) //!< \~english timeout error
-#define POS_RET_ERROR_NOSUPPORT (-11) //!< \~english no support
-#define POS_RET_ERROR_BUSY (-12) //!< \~english busy
-#define POS_RET_ERROR_RESOURCE (-13) //!< \~english lack of resources
-#define POS_RET_ERROR_MIN (-13) //!< \~english min value of error
-
-
-#define NUM_OF_100msData (10)
-//!< \~english number of gyro data every 100ms
-
-
-#define CID_GPS_SERIAL1 (CID)0x0101
-//!< \~english Defination of notification about Gps Data has been receiced
-
-#define CID_GPS_SERIAL2 (CID)0x0102 //!< \~english notification about 1PPS interupt
-
-
-#define CID_GPS_SERIAL3 (CID)0x0103
-//!< \~english Defination of SIF2 Data
-
-#define CID_GPS_SERIAL4 (CID)0x0104
-//!< \~english Defination of _CWORD82_ command send
-
-#define CID_GPS_SERIAL5 (CID)0x0105
-//!< \~english Defination of _CWORD82_ command send
-
-#define CID_GPS_SERIAL6 (CID)0x0106
-//!< \~english Defination of u-blox request data
-
-#define CID_GPS_SERIAL7 (CID)0x0107
-//!< \~english Defination of u-blox ack data
-
-#define CID_GPS_RECVDATA (CID)(CID_GPS_BASE | CID_GPS_SERIAL1)
-//!< \~english gps data receiced CID
-
-#define CID_GPS_1PPSINT (CID)(CID_GPS_BASE | CID_GPS_SERIAL2)
-//!< \~english 1PPS interupt CID
-
-#define CID_GPS_SIF2DATA (CID)(CID_GPS_BASE | CID_GPS_SERIAL3)
-//!< \~english SIF2 Data CID
-
-/**
- * \~english @brief _CWORD82_ command send CID
- * \~english @brief Message structure\n
- * \~english @brief Message buffer header structure @ref T_APIMSG_MSGBUF_HEADER\n
- * \~english @brief Message header structure @ref T_APIMSG_HEADER\n
- * \~english @brief Message main structure @ref TgGpsSndData\n
- * \~english @brief Message data(Vehicle sensor information setting message) structure @ref VEHICLE_MSG_SEND_DAT\n
- */
-#define CID_GPS__CWORD82__REQUEST (CID)(CID_GPS_BASE | CID_GPS_SERIAL4)
-
-#define CID_GPS_CYCLEDATA_PROV (CID)(CID_GPS_BASE | CID_GPS_SERIAL5)
-//!< \~english Gps cycle data CID
-
-#define CID_GPS_RCV_REQUESTDATA (CID)(CID_GPS_BASE | CID_GPS_SERIAL6)
-//!< \~english u-blox request data CID
-
-#define CID_GPS_RCV_ACKDATA (CID)(CID_GPS_BASE | CID_GPS_SERIAL7)
-//!< \~english u-blox ack data CID
-
-#define CID_GPS_SERIAL8 (CID)0x0108
-//!< \~english Defination of Time Setting request
-
-#define CID_GPS_SERIAL9 (CID)0x0109
-//!< \~english Defination of Time Setting ack
-
-#define CID_GPS_SERIAL10 (CID)0x010A
-//!< \~english Defination of back up data read request
-
-#define CID_GPS_SERIAL11 (CID)0x010B
-//!< \~english Defination gps of week count request
-
-/**
- * \~english @brief Defination of Time Setting request
- * \~english @brief Message structure\n
- * \~english @brief Message header structure @ref T_APIMSG_MSGBUF_HEADER\n
- * \~english @brief Message body structure @ref TgGpsSndData\n
- * \~english @brief Positioning information structure @ref POS_MSGINFO\n
- * */
-#define CID_GPS_TIMESETTING (CID)(CID_GPS_BASE | CID_GPS_SERIAL8)
-
-/**
- * \~english @brief Defination of Time Setting ack
- * \~english @brief Message structure\n
- * \~english @brief Message body structure @ref TG_GPS_RET_TIMESET_MSG\n
- */
-#define CID_GPS_RETTIMESETTING (CID)(CID_GPS_BASE | CID_GPS_SERIAL9)
-
-/**
- * \~english @brief Read backup data request CID
- * \~english @brief When this command is received, the backup data is read.\n
- * \~english @brief Message-Related Structures\n
- * \~english @brief Message buffer header structure @ref T_APIMSG_MSGBUF_HEADER
- */
-#define CID_GPS_BACKUPDATA_LOAD (CID)(CID_GPS_BASE | CID_GPS_SERIAL10)
-
-/**
- * \~english @brief Gps Week count request CID
- * \~english @brief Message structure\n
- * \~english @brief Message buffer header structure @ref T_APIMSG_MSGBUF_HEADER\n
- * \~english @brief Message header structure @ref T_APIMSG_HEADER\n
- * \~english @brief Message data(Gps Week correction count notify message) structure @ref GpsWeekCorCntMsg\n
- */
-#define CID_GPSWEEKCOR_CNT_NOTIFICATION (CID)(CID_GPS_BASE | CID_GPS_SERIAL11)
-
-
-
-/**
- * \~english @brief GPS reset result delivery command ID
- * \~english @brief If you want to catch above envents, use NSFW like below.
- * \~english @code
- * l_eStatus = FrameworkunifiedAttachCallbackToDispatcher(hThread, TN_POSITIONING_GPS, CID_POSIF_REQ_GPS_RESET, OnRecivePosResetMsg);
- * @endcode
- */
-#define CID_POSIF_REQ_GPS_RESET 0x0784
-
-#define POSHAL_DID_GPS_CONNECT_ERROR 0x800000B5U
-//!< \~english GPS receive error DID
-
-#define GPS_READ_LEN 316
-//!< \~english Gps NMEA FULLBINARY max length
-
-#define GPS_CMD_NMEA_GGA_SZ (71U) //!< \~english GGA
-#define GPS_CMD_NMEA_DGGA_SZ (75U) //!< \~english double precison GGA
-#define GPS_CMD_NMEA_VTG_SZ (37U) //!< \~english VTG
-#define GPS_CMD_NMEA_RMC_SZ (61U) //!< \~english RMC
-#define GPS_CMD_NMEA_DRMC_SZ (67U) //!< \~english double precison RMC
-#define GPS_CMD_NMEA_GLL_SZ (44U) //!< \~english GLL
-#define GPS_CMD_NMEA_DGLL_SZ (50U) //!< \~english double precison GLL
-#define GPS_CMD_NMEA_GSA_SZ (66U) //!< \~english GSA
-#define GPS_CMD_NMEA_GSV_SZ (70U) //!< \~english GSV
-#define GPS_CMD_NMEA__CWORD44__GP_3_SZ (78U) //!< \~english _CWORD44_,GP,3
-#define GPS_CMD_NMEA__CWORD44__GP_4_SZ (25U) //!< \~english _CWORD44_,GP,4
-#define GPS_CMD_NMEA_P_CWORD82_F_GP_0_SZ (50U) //!< \~english _CWORD44_,GP,0
-#define GPS_CMD_NMEA_P_CWORD82_J_GP_1_SZ (31U) //!< \~english _CWORD44_,GP,1
-#define GPS_CMD_NMEA_P_CWORD82_I_GP_SZ (71U) //!< \~english P_CWORD82_I,GP
-#define GPS_CMD_NMEA_P_CWORD82_E_GP_0_SZ (50U) //!< \~english P_CWORD82_E,GP,0
-#define GPS_CMD_NMEA_P_CWORD82_J_GP_0_SZ (63U) //!< \~english P_CWORD82_J,GP,0
-#define GPS_CMD_NMEA_P_CWORD82_E_GP_2_SZ (21U) //!< \~english P_CWORD82_E,GP,2
-#define GPS_CMD_NMEA_P_CWORD82_G_GP_0_SZ (34U) //!< \~english P_CWORD82_G,GP,0
-#define GPS_CMD_NMEA_P_CWORD82_J_GP_7_SZ (37U) //!< \~english P_CWORD82_J,GP,7
-#define GPS_CMD_NMEA_P_CWORD82_J_GP_8_SZ (45U) //!< \~english P_CWORD82_J,GP,8
-#define GPS_CMD_BINARY_SZ (81U) //!< \~english standard binary
-
-#define GPS_CMD_FULLBIN_SZ (316U)
-//!< \~english FULL binary(GPS10 format)
-
-#define GPS_CMD_FULLBIN_VINFO (30U + 160U + 25U + 8U)
-//!< \~english FULL bianry version
-
-#define GPS_NMEA_MAX_SZ (255U) //!< \~english NMEA max size
-#define GPS_DATASIZE_RTC (13U) //!< \~english RTC Data size
-#define GPS_NMEARCVSTS_SZ (1U) //!< \~english received NMEA size
-
-#define GPS_GPSANT_SZ (1U) //!< \~english gps antenna status size
-#define GPS_SNSCNT_SZ (1U) //!< \~english Sensor Count value size
-
-
-#define GPS_CMD_NMEA_PROV_SZ (GPS_CMD_NMEA_DRMC_SZ + GPS_CMD_NMEA_GSA_SZ + \
- (GPS_CMD_NMEA_GSV_SZ*3) + GPS_CMD_NMEA__CWORD44__GP_3_SZ)
-//!< \~english NMEA size
-
-#define GPS_NMEA_SZ (GPS_NMEARCVSTS_SZ + GPS_GPSANT_SZ + GPS_SNSCNT_SZ + GPS_CMD_NMEA_PROV_SZ)
-//!< \~english NEMA size
-
-#define GPS_FULLBIN_SZ (GPS_GPSANT_SZ + GPS_SNSCNT_SZ + GPS_CMD_FULLBIN_SZ)
-//!< \~english FULLBIN size
-
-#define GPS__CWORD44_GP4_SZ (GPS_GPSANT_SZ + GPS_SNSCNT_SZ + GPS_CMD_NMEA__CWORD44__GP_4_SZ)
-//!< \~english _CWORD44_GP4 size
-
-#define GPS_MSGDATA_SZ_MAX (512U) //!< \~english message maximum data size
-#define GPS_TLGRM_LEN 253 //!< \~english message data length
-#define GPS_MSG_VSINFO_DSIZE 1904 //!< \~english message body size
-
-#define POS_MSG_INFO_DSIZE 1028 //!< \~english message body maximum size
-
-/**
- * @enum MdevGpsDataKind
- * \~english enumeration of gps data kind
- */
-typedef enum MdevGpsDataKind {
- MDEV_GPS_DATA_RAWDATA_NMEA = 0, //!< \~english raw NMEA data of GPS
- MDEV_GPS_DATA_RAWDATA_FULLBIN, //!< \~english raw binary data of GPS
- MDEV_GPS_DATA_RAWDATA__CWORD44_GP4, //!< \~english raw _CWORD44_ data of GPS
- MDEV_GPS_DATA_NAVISPEED, //!< \~english speed data
- MDEV_GPS_DATA_CUSTOMDATA, //!< \~english position information
- MDEV_GPS_DATA_GPSTIME, //!< \~english GPS time
- MDEV_GPS_DATA_GPSTIME_RAW, //!< \~english raw time of GPS
- MDEV_GPS_DATA_INITIAL //!< \~english initialize data
-} MDEV_GPS_DATA_KIND;
-
-/**
- * @struct NAVIINFO_UTCTIME
- * \~english UTC time information structure
- */
-typedef struct {
- uint16_t year; //!< \~english year
- uint8_t month; //!< \~english month
- uint8_t date; //!< \~english day
- uint8_t hour; //!< \~english hour
- uint8_t minute; //!< \~english minute
- uint8_t second; //!< \~english second
- uint8_t reserved; //!< \~english reserve
-} NAVIINFO_UTCTIME;
-
-/**
- * @struct SENSORLOCATION_LONLATINFO_DAT
- * \~english longitude and latitude information data
- * - 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)
- * - It is valid only when "Get method is Navigation" and "evironment is _CWORD80_".(otherwise it will be set as 0)
- * - 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)
- * - 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
- * - It is valid only when "Get method is Navigation" and "evironment is _CWORD80_".(otherwise it will be set as 0)\n
- * 0000H:0m \n
- * 0001H:1m \n
- * :\n
- * FFFDH:65533m \n
- * FFFEH:65534m and larger than 65534m \n
- * FFFFH:no data
- * - 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.
- */
-typedef struct {
- uint8_t getMethod; //!< \~english get method
- uint8_t SyncCnt; //!< \~english Synchrony count
- uint8_t isEnable; //!< \~english enable or not
- uint8_t posSts; //!< \~english position status
- uint16_t posAcc; //!< \~english position accuracy
- int32_t Longitude; //!< \~english longitude(10^-7degree)
- //!< \~english max: +180.0000000degree[east longitude]
- //!< \~english min: -170.9999999degree[west longitude]
- int32_t Latitude; //!< \~english latitude(10^-7degree)
- //!< \~english max: +90.0000000degree[north Latitude]
- //!< \~english min: -90.0000000degree[south Latitude]
-} SENSORLOCATION_LONLATINFO_DAT;
-
-
-/**
- * @struct SENSORLOCATION_ALTITUDEINFO_DAT
- * \~english altitude information data
- * - Get method(getMethod)
- * - SENSOR_GET_METHOD_GPS - altitude from GPS
- * - SENSOR_GET_METHOD_NAVI - altitude 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: [longitude and latitude from GPS] and [heading from GPS] can be synchronized by SyncCnt.\n
- * example 2: [longitude and latitude from GPS] and [longitude and latitude 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 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 it is not initialization status, certainly provide [avaliable] when Navi data specified
- * - If the status is [not avaliable], data following can not be guaranteed.
- * - Altitude
- * - altitude data(unit 0.01m)
- */
-typedef struct {
- uint8_t getMethod; //!< \~english get method
- uint8_t SyncCnt; //!< \~english Synchrony count
- uint8_t isEnable; //!< \~english enable or not
- uint8_t Reserved[3]; //!< \~english reserve
- int32_t Altitude; //!< \~english altitude(0.01m)
-} SENSORLOCATION_ALTITUDEINFO_DAT;
-
-
-/**
- * @struct SENSORMOTION_HEADINGINFO_DAT
- * \~english heading information data
- * - 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)
- * - It is valid only when "Get method is Navi" and "evironment is _CWORD80_".(otherwise it will be set as 0)
- * - 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)
- * - Bit3 : MapMatching data used result(1:used, 0:not used, definition of \n
- * maskbit:POS_LOC_INFO_USE_MAPMATCHING)
- * - Heading
- * - Heading data(0.01degree as 1, based on north and clockwise count)\n
- * But in environment _CWORD95_/_CWORD101___CWORD84_,the heading from Navi is a approximate that separate 360 degree \n
- * into 16 part. \n
- * example: 0, 2300, 4500, ..., 31500, 33800
- */
-typedef struct {
- uint8_t getMethod; //!< \~english get method
- uint8_t SyncCnt; //!< \~english Synchrony count
- uint8_t isEnable; //!< \~english enable or not
- uint8_t posSts; //!< \~english position status
- uint8_t Reserved1[2]; //!< \~english reserve
- uint16_t Heading; //!< \~english heading(0.01degree)
- //!< \~english max: 359.99 degree
- //!< \~english min: 0.00 degree
- uint8_t Reserved2[2]; //!< \~english reserve
-} SENSORMOTION_HEADINGINFO_DAT;
-
-/**
- * @struct NAVIINFO_DIAG_GPS_FIX_CNT
- * \~english position fix count data structure
- */
-typedef struct {
- uint32_t ulCnt3d; //!< \~english position fix count:3D
- uint32_t ulCnt2d; //!< \~english position fix count:2D
- uint32_t ulCntElse; //!< \~english position fix count:not fix
-} NAVIINFO_DIAG_GPS_FIX_CNT;
-
-/**
- * @struct NAVIINFO_DIAG_GPS_FIX_XYZ
- * \~english longitude and latitude data structure
- */
-typedef struct {
- int32_t lLat; //!< \~english GPS latitude
- int32_t lLon; //!< \~english GPS longitude
-} NAVIINFO_DIAG_GPS_FIX_XYZ;
-
-/**
- * @struct NAVIINFO_DIAG_GPS_FIX
- * \~english position fix information structure
- */
-typedef struct {
- uint8_t ucFixSts; //!< \~english fix status
- uint8_t ucReserve[3]; //!< \~english reserve
- NAVIINFO_DIAG_GPS_FIX_CNT stCnt; //!< \~english fix count data
- NAVIINFO_DIAG_GPS_FIX_XYZ stWgs84; //!< \~english longitude and latitude data
-} NAVIINFO_DIAG_GPS_FIX;
-
-/**
- * @struct NAVIINFO_DIAG_GPS_PRN
- * \~english satellite information structure
- * - reception status(ucRcvSts)
- * - NAVIINFO_DIAG_GPS_RCV_STS_NOTUSE : not used
- * - NAVIINFO_DIAG_GPS_RCV_STS_SEARCHING : searching
- * - NAVIINFO_DIAG_GPS_RCV_STS_TRACHING : tracking
- * - NAVIINFO_DIAG_GPS_RCV_STS_NOTUSEFIX : not used for position fix
- * - NAVIINFO_DIAG_GPS_RCV_STS_USEFIX : used for position fix
- */
-typedef struct {
- uint8_t ucRcvSts; //!< \~english reception status
- uint8_t ucPrn; //!< \~english satellite No.
- uint8_t ucelv; //!< \~english satellite dramatic angle
- uint8_t ucLv; //!< \~english satellite signal level
- uint16_t usAzm; //!< \~english satellite azimuth
- uint8_t ucReserve[2]; //!< \~english reserve
-} NAVIINFO_DIAG_GPS_PRN;
-
-/**
- * @struct NAVIINFO_DIAG_GPS_SAT
- * \~english all satellite information structure
- */
-typedef struct {
- NAVIINFO_DIAG_GPS_PRN stPrn[12]; //!< \~english all satellite information
-} NAVIINFO_DIAG_GPS_SAT;
-
-/**
- * @struct NAVIINFO_DIAG_GPS
- * \~english position fixed and satellite information structure
- */
-typedef struct {
- NAVIINFO_DIAG_GPS_FIX stFix; //!< \~english position fixed information
- NAVIINFO_DIAG_GPS_SAT stSat; //!< \~english all satellite information
-} NAVIINFO_DIAG_GPS;
-
-/**
- * @struct NAVIINFO_NAVI_GPS
- * \~english other GPS related information structure
- * - altitude(altitude) \n
- * As the altitude is used as unit [0.01m] in internal, \n
- * the altitude data range is (-21,474,839~21,474,839).
- * - UTC(utc)
- * - The time set after rollover.
- * - date and time status(tdsts)
- * - 0= time has not been adjusted after GPS receiver reset(time input or master reset or CSF start)
- * - 1= time output from RTC Backup(have time adjustment result)
- * - 2= time adjustment completed
- */
-typedef struct {
- int32_t altitude; //!< \~english altitude
- uint16_t speed; //!< \~english speed
- uint16_t heading; //!< \~english heading
- NAVIINFO_UTCTIME utc; //!< \~english UTC time
- uint8_t tdsts; //!< \~english date and time status
- uint8_t reserve[3]; //!< \~english reserve
-} NAVIINFO_NAVI_GPS;
-
-/**
- * @struct NAVIINFO_ALL
- * \~english Navi data structure
- */
-typedef struct {
- uint8_t ucSensorCnt; //!< \~english sensor count
- uint8_t reserve[3]; //!< \~english reserve
- NAVIINFO_DIAG_GPS stDiagGps; //!< \~english position fix related information
- NAVIINFO_NAVI_GPS stNaviGps; //!< \~english other GPS related information
-} NAVIINFO_ALL;
-
-/**
- * @struct POS_MSGINFO
- * \~english message delivery positioning sensor information
- */
-typedef struct {
- DID did; //!< \~english data ID
- PNO pno; //!< \~english delivery destination PNO
- uint16_t size; //!< \~english data body size
- uint8_t rcv_flag; //!< \~english received flag
- uint8_t reserve; //!< \~english reserve
- uint8_t data[POS_MSG_INFO_DSIZE]; //!< \~english data body
-} POS_MSGINFO;
-
-/**
- * @struct SENSOR_GPSTIME
- * \~english GPS time information
- * - date amd time status(tdsts)
- * - 0= time has not been adjusted after GPS receiver reset(time input or master reset or CSF start)
- * - 1= time output from RTC Backup(have time adjustment result)
- * - 2= time adjustment completed
- */
-typedef struct {
- NAVIINFO_UTCTIME utc; //!< \~english UTC time
- uint8_t tdsts; //!< \~english time status
- uint8_t reserve[3]; //!< \~english reserve
-} SENSOR_GPSTIME;
-
-#define SENSOR_MSG_GPSTIME SENSOR_GPSTIME //!< \~english GPS time information
-#define SENSOR_GPSTIME_RAW SENSOR_GPSTIME //!< \~english GPS time information
-
-/**
- * @struct MdevGpsCustomData
- * \~english Struct of Gps custom data
- */
-typedef struct MdevGpsCustomData {
- MDEV_GPS_DATA_KIND e_kind; //!< \~english kind
- SENSORLOCATION_LONLATINFO_DAT st_lonlat; //!< \~english longtitude,latitude
- SENSORLOCATION_ALTITUDEINFO_DAT st_altitude; //!< \~english altitude
- SENSORMOTION_HEADINGINFO_DAT st_heading; //!< \~english headings
- SENSOR_MSG_GPSTIME st_gps_time; //!< \~english Gps Time
- NAVIINFO_DIAG_GPS st_diag_gps; //!< \~english Gps data from diag
-} MDEV_GPS_CUSTOMDATA;
-
-/**
- * @struct MdevGpsCustomDataMgs
- * \~english Struct of Gps custom data message
- */
-typedef struct MdevGpsCustomDataMgs {
- T_APIMSG_MSGBUF_HEADER h_dr; //!< \~english header
- MDEV_GPS_CUSTOMDATA st_data; //!< \~english Gps Custom Data
-} MDEV_GPS_CUSTOMDATA_MGS;
-
-/**
- * @struct MdevGpsRtc
- * \~english Struct of Gps RTC data
- */
-typedef struct MdevGpsRtc {
- u_int32 ul_retsts; //!< \~english return status
- u_int8 uc_datalen; //!< \~english data length
- u_int8 uc_ctrlcode; //!< \~english control code
- u_int8 uc_bcd_year; //!< \~english year
- u_int8 uc_bcd_month; //!< \~english month
- u_int8 uc_bcd_day; //!< \~english day
- u_int8 uc_bcd_hour; //!< \~english hour
- u_int8 uc_bcd_min; //!< \~english minute
- u_int8 uc_bcd_sec; //!< \~english second
- u_int8 uc_status; //!< \~english status
- u_int8 u_reserve[3]; //!< \~english reserve
-} MDEV_GPS_RTC;
-
-/**
- * @struct MdevGpsGpsTime
- * \~english Struct of Gps Time
- */
-typedef struct MdevGpsGpsTime {
- MDEV_GPS_DATA_KIND e_kind; //!< \~english kind
- MDEV_GPS_RTC st_rtc_data; //!< \~english Gps Time
-} MDEV_GPS_GPSTIME;
-
-/**
- * @struct MdevGpsGpsTimeMgs
- * \~english Struct of Gps Time message
- */
-typedef struct MdevGpsGpsTimeMgs {
- T_APIMSG_MSGBUF_HEADER h_dr; //!< \~english header
- MDEV_GPS_GPSTIME st_data; //!< \~english Gps Time Data
-} MDEV_GPS_GPSTIME_MGS;
-
-/**
- * @struct DevGpsUtcTime
- * \~english Struct of Gps UTC time
- */
-typedef struct DevGpsUtcTime {
- u_int16 us_year; //!< \~english Year
- u_int8 uc_month; //!< \~english month
- u_int8 uc_date; //!< \~english day
- u_int8 uc_hour; //!< \~english hour
- u_int8 uc_minute; //!< \~english minute
- u_int8 uc_second; //!< \~english second
- u_int8 u_reserved; //!< \~english reserve
-} DEV_GPS_UTCTIME;
-
-/**
- * @enum MdevGpsFixSts
- * \~english enumeration of gps fix status
- */
-typedef enum MdevGpsFixSts {
- MDEV_GPS_NOTFIX = 0, //!< \~english not fix
- MDEV_GPS_FIX //!< \~english fix
-} MDEV_GPS_FIX_STS;
-
-/**
- * @struct MdevGpsNmea
- * \~english Struct of gps NMEA Data
- */
-typedef struct MdevGpsNmea {
- u_int8 uc_nmea_data[GPS_MSG_VSINFO_DSIZE]; //!< \~english NMEA Data
-} MDEV_GPS_NMEA;
-
-/**
- * @struct MdevGpsFullbin
- * \~english Struct of Gps full bin data
- */
-typedef struct MdevGpsFullbin {
- u_int8 uc_fullbin_data[GPS_FULLBIN_SZ]; //!< \~english gps full bin data
- u_int8 u_reserve[3]; //!< \~english reserve
-} MDEV_GPS_FULLBIN;
-
-/**
- * @struct MdevGps_CWORD44_gp4
- * \~english Struct of Gps _CWORD44_GP4 data
- */
-typedef struct MdevGps_CWORD44_gp4 {
- u_int8 uc__CWORD44_gp4_data[GPS__CWORD44_GP4_SZ]; //!< \~english gps _CWORD44_GP4 data
- u_int8 u_reserve; //!< \~english reserve
-} MDEV_GPS__CWORD44_GP4;
-
-/**
- * @struct MdevGpsCycledata
- * \~english Struct of Gps cycle data
- */
-typedef struct MdevGpsCycledata {
- MDEV_GPS_DATA_KIND e_kind; //!< \~english kind
- u_int8 uc_data[GPS_MSGDATA_SZ_MAX - sizeof(MDEV_GPS_DATA_KIND)]; //!< \~english data
-} MDEV_GPS_CYCLEDATA;
-
-/**
- * @struct MdevGpsCycledataMsg
- * \~english Struct of Gps cycle data message
- */
-typedef struct MdevGpsCycledataMsg {
- T_APIMSG_MSGBUF_HEADER h_dr; //!< \~english header
- MDEV_GPS_CYCLEDATA st_data; //!< \~english data
-} MDEV_GPS_CYCLEDATA_MSG;
-
-/**
- * @struct MdevGpsRawdataNmea
- * \~english Struct of Gps NMEA Raw Data
- */
-typedef struct MdevGpsRawdataNmea {
- MDEV_GPS_DATA_KIND e_kind; //!< \~english kind
- MDEV_GPS_NMEA st_nmea_data; //!< \~english NMEA Data
-} MDEV_GPS_RAWDATA_NMEA;
-
-/**
- * @struct MdevGpsRawdataNmeaMsg
- * \~english Struct of Gps NMEA Raw Data message
- */
-typedef struct MdevGpsRawdataNmeaMsg {
- T_APIMSG_MSGBUF_HEADER h_dr; //!< \~english header(see vs-positioning-base-library)
- MDEV_GPS_RAWDATA_NMEA st_data; //!< \~english data
-} MDEV_GPS_RAWDATA_NMEA_MSG;
-
-/**
- * @struct MdevGpsRawdataFullbin
- * \~english Struct of Gps Full Bin Raw Data
- */
-typedef struct MdevGpsRawdataFullbin {
- MDEV_GPS_DATA_KIND e_kind; //!< \~english kind
- MDEV_GPS_FULLBIN st_fullbin_data; //!< \~english Full Binary Data
-} MDEV_GPS_RAWDATA_FULLBIN;
-
-/**
- * @struct MdevGpsRawdataFullbinMsg
- * \~english Struct of Gps Full Bin Raw Data message
- */
-typedef struct MdevGpsRawdataFullbinMsg {
- T_APIMSG_MSGBUF_HEADER h_dr; //!< \~english header
- MDEV_GPS_RAWDATA_FULLBIN st_data; //!< \~english Gps Full Bin Data
-} MDEV_GPS_RAWDATA_FULLBIN_MSG;
-
-/**
- * @struct MdevGpsRawdata_CWORD44_gp4
- * \~english Struct of Gps _CWORD44_GP4 Raw Data
- */
-typedef struct MdevGpsRawdata_CWORD44_gp4 {
- MDEV_GPS_DATA_KIND e_kind; //!< \~english kind
- MDEV_GPS__CWORD44_GP4 st__CWORD44_gp4; //!< \~english Gps _CWORD44_GP4 Data
-} MDEV_GPS_RAWDATA__CWORD44_GP4;
-
-/**
- * @struct MdevGpsRawdata_CWORD44_gp4Msg
- * \~english Struct of Gps _CWORD44_GP4 Raw Data message
- */
-typedef struct MdevGpsRawdata_CWORD44_gp4Msg {
- T_APIMSG_MSGBUF_HEADER h_dr; //!< \~english header
- MDEV_GPS_RAWDATA__CWORD44_GP4 st_data; //!< \~english Gps _CWORD44_GP4 Raw Data
-} MDEV_GPS_RAWDATA__CWORD44_GP4_MSG;
-
-/**
- * @struct SENSORMOTION_SPEEDINFO_DAT
- * \~english speed information data
- * - 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)
- */
-typedef struct {
- uint8_t getMethod; //!< \~english get method
- uint8_t SyncCnt; //!< \~english Synchrony count
- uint8_t isEnable; //!< \~english enable or not
- uint8_t Reserved1[3]; //!< \~english reserve
- uint16_t Speed; //!< \~english speed(0.01m/sec)
- uint8_t Reserved2[2]; //!< \~english reserve
-} SENSORMOTION_SPEEDINFO_DAT;
-
-/**
- * @struct MdevGpsNavispeed
- * \~english Struct of Gps speed data
- */
-typedef struct MdevGpsNavispeed {
- MDEV_GPS_DATA_KIND e_kind; //!< \~english kind
- u_int16 us_speed_kmph; //!< \~english Speed(km/h)
- u_int8 u_reserve[2]; //!< \~english reserve
- SENSORMOTION_SPEEDINFO_DAT st_speed; //!< \~english speed data
-} MDEV_GPS_NAVISPEED;
-
-/**
- * @struct MdevGpsNavispeedMsg
- * \~english Struct of Gps speed data message
- */
-typedef struct MdevGpsNavispeedMsg {
- T_APIMSG_MSGBUF_HEADER h_dr; //!< \~english header
- MDEV_GPS_NAVISPEED st_data; //!< \~english Gps Speed Data
-} MDEV_GPS_NAVISPEED_MSG;
-
-/**
- * @struct TgGpsSndData
- * \~english Struct of _CWORD82_ Gps send data
- */
-typedef struct TgGpsSndData {
- uint8_t reserve[4]; //!< \~english reserve
- u_int16 us_size; //!< \~english send data length
- u_int8 ub_data[502]; //!< \~english send data
-} TG_GPS_SND_DATA;
-
-/**
- * @struct TgGpsRetPram
- * \~english Gps Response data
- */
-typedef struct TgGpsRetPram {
- unsigned int ret_status; //!< \~english response flag
- unsigned char data_len; //!< \~english data size
- unsigned char ctrl_code; //!< \~english control code
- unsigned char gps_data[GPS_TLGRM_LEN]; //!< \~english data contents
-} TG_GPS_RET_PRAM;
-
-/**
- * @struct SensorWknRollOverHal
- * \~english Struct of GPS week number
- */
-typedef struct SensorWknRollOverHal {
- uint16_t us_wkn; //!< \~english GPS week number
-} SENSOR_WKN_ROLLOVER_HAL;
-
-/**
- * @struct POS_DATETIME
- * \~english GPS time information structure
- */
-typedef struct {
- uint16_t year; //!< \~english year
- uint8_t month; //!< \~english month
- uint8_t date; //!< \~english day
- uint8_t hour; //!< \~english hour
- uint8_t minute; //!< \~english minute
- uint8_t second; //!< \~english second
- uint8_t reserved; //!< \~english reserve
-} POS_DATETIME;
-
-/**
- * @struct TG_GPS_RET_RESET
- * \~english GPS reset status
- */
-typedef struct {
- unsigned long ret_rst_status; //!< \~english response GPS reset status
-} TG_GPS_RET_RESET;
-
-/**
- * @struct TG_GPS_RET_RESET_MSG
- * \~english GPS reset information message
- */
-typedef struct {
- TG_GPS_RET_RESET data; //!< \~english GPS reset status data
-} TG_GPS_RET_RESET_MSG;
-
-/**
- * @struct VEHICLE_MSG_SEND_DAT
- * \~english Vehicle information setting message structure
- */
-typedef struct {
- DID did; //!< \~english Data ID
- u_int16 size; //!< \~english Data size
- u_int8 data[502]; //!< \~english Data
-} VEHICLE_MSG_SEND_DAT;
-
-/**
- * @struct GpsWeekCorCntMsg
- * \~english Gps Week correction count notify message structure
- */
-typedef struct GpsWeekCorCntMsg {
- T_APIMSG_MSGBUF_HEADER stHead; //!< \~english Message header
- u_int8 gpsweekcorcnt; //!< \~english Gps Week correction count
- int8 dummy[3]; //!< \~english Alignment adjustment
-} CLOCKGPS_GPSWEEKCOR_CNT_MSG;
-
-/** @}*/ // end of positioning_hal
-/** @}*/ // end of positioning
-
-/*---------------------------------------------------------------------------*/
-#endif // HAL_API_GPS_HAL_H_
-
-/*---------------------------------------------------------------------------*/
-/*EOF*/