From 00ab09fac9701443fdff616fdcc274809a03d4d7 Mon Sep 17 00:00:00 2001 From: takeshi_hoshina Date: Thu, 22 Oct 2020 09:06:18 +0900 Subject: vs-positioning branch 0.1 --- positioning/Makefile.client | 2 +- positioning/Makefile.server | 2 +- positioning/client/Makefile | 2 +- positioning/client/include/CanInput_API.h | 2 +- positioning/client/include/CanInput_API_private.h | 4 +- positioning/client/include/Clock_API.h | 2 +- positioning/client/include/CommonDefine.h | 37 +- positioning/client/include/DR_API.h | 2 +- .../client/include/DeadReckoning_DbgLogSim.h | 2 +- positioning/client/include/Dead_Reckoning_API.h | 6 +- .../client/include/Dead_Reckoning_Local_Api.h | 2 +- positioning/client/include/Gps_API_private.h | 2 +- positioning/client/include/INI_API.h | 2 +- positioning/client/include/Naviinfo_API.h | 6 +- positioning/client/include/POS_common_private.h | 7 +- positioning/client/include/POS_private.h | 170 +- positioning/client/include/POS_sensor_private.h | 11 +- positioning/client/include/SensorLocation_API.h | 2 +- .../client/include/SensorLocation_API_private.h | 2 +- positioning/client/include/SensorMotion_API.h | 2 +- positioning/client/include/Sensor_API.h | 22 +- positioning/client/include/Sensor_API_private.h | 28 +- positioning/client/include/Sensor_Common_API.h | 211 +- positioning/client/include/VehicleDebug_API.h | 2 +- positioning/client/include/Vehicle_API.h | 4 +- positioning/client/include/Vehicle_API_Dummy.h | 2 +- positioning/client/include/Vehicle_API_private.h | 4 +- .../include/vehicle_service/POS_common_API.h | 164 +- .../client/include/vehicle_service/POS_define.h | 6 +- .../client/include/vehicle_service/POS_gps_API.h | 62 +- .../include/vehicle_service/POS_sensor_API.h | 138 +- .../client/include/vehicle_service/positioning.h | 2 +- .../src/CanInput_API/common/CanInput_API.cpp | 134 - positioning/client/src/DR_API/common/DR_API.cpp | 243 -- .../client/src/POS_common_API/Common_API.cpp | 619 +++-- positioning/client/src/POS_common_API/Makefile | 10 +- .../src/POS_common_API/libPOS_common_API.ver | 2 +- positioning/client/src/POS_gps_API/Gps_API.cpp | 285 +-- positioning/client/src/POS_gps_API/Makefile | 5 +- .../client/src/POS_gps_API/Naviinfo_API.cpp | 404 +++ .../client/src/POS_gps_API/libPOS_gps_API.ver | 2 +- .../variant/awnavi/src/Naviinfo_API.cpp | 404 --- positioning/client/src/POS_sensor_API/Makefile | 9 +- .../client/src/POS_sensor_API/Sensor_API.cpp | 784 ++++++ .../client/src/POS_sensor_API/Vehicle_API.cpp | 292 +++ .../src/POS_sensor_API/common/Sensor_API.cpp | 775 ------ .../src/POS_sensor_API/libPOS_sensor_API.ver | 2 +- .../common/SensorLocation_API.cpp | 142 -- .../VehicleDebug_API/common/VehicleDebug_API.cpp | 334 --- .../client/src/Vehicle_API/common/Vehicle_API.cpp | 292 --- positioning/server/Makefile | 2 +- positioning/server/include/Sensor/ClockDataMng.h | 6 +- .../server/include/Sensor/ClockGPS_Process_Proto.h | 2 +- positioning/server/include/Sensor/ClockUtility.h | 4 +- .../server/include/Sensor/ClockUtility_private.h | 2 +- .../server/include/Sensor/DeadReckoning_Common.h | 2 +- .../include/Sensor/DeadReckoning_DataMaster.h | 2 +- .../include/Sensor/DeadReckoning_DeliveryCtrl.h | 2 +- .../server/include/Sensor/DeadReckoning_main.h | 16 +- positioning/server/include/Sensor/GpsInt.h | 2 +- positioning/server/include/Sensor/SensorLog.h | 2 +- .../server/include/Sensor/VehicleSens_Common.h | 6 +- .../server/include/Sensor/VehicleSens_DataMaster.h | 575 +++-- .../include/Sensor/VehicleSens_DeliveryCtrl.h | 8 +- .../server/include/Sensor/VehicleSens_FromAccess.h | 2 +- .../server/include/Sensor/VehicleSens_FromMng.h | 85 - .../include/Sensor/VehicleSens_SelectionItemList.h | 6 +- .../include/Sensor/VehicleSens_SharedMemory.h | 2 +- .../server/include/Sensor/VehicleSens_Thread.h | 41 +- .../server/include/Sensor/VehicleSensor_Thread.h | 2 +- positioning/server/include/Sensor/VehicleUtility.h | 2 +- .../server/include/ServiceInterface/BackupMgrIf.h | 2 +- .../server/include/ServiceInterface/ClockIf.h | 6 +- .../server/include/ServiceInterface/CommUsbIf.h | 6 +- .../include/ServiceInterface/DevDetectSrvIf.h | 2 +- .../server/include/ServiceInterface/DiagSrvIf.h | 5 +- .../server/include/ServiceInterface/PSMShadowIf.h | 2 +- .../server/include/ServiceInterface/VehicleIf.h | 6 +- .../ServiceInterface/ps_psmshadow_notifications.h | 2 +- .../server/include/ServiceInterface/ps_version.h | 2 +- .../server/include/common/com/com_message_header.h | 68 - .../server/include/nsfw/positioning_common.h | 44 +- positioning/server/include/nsfw/vehicle_version.h | 2 +- positioning/server/src/Sensor/ClockUtility.cpp | 2 +- .../server/src/Sensor/DeadReckoning_Common.cpp | 2 +- .../src/Sensor/DeadReckoning_DataMasterMain.cpp | 2 +- .../src/Sensor/DeadReckoning_DeliveryCtrl.cpp | 2 +- .../src/Sensor/DeadReckoning_Did_Altitude_dr.cpp | 2 +- .../src/Sensor/DeadReckoning_Did_GyroOffset_dr.cpp | 2 +- .../DeadReckoning_Did_GyroScaleFactorLevel_dr.cpp | 2 +- .../DeadReckoning_Did_GyroScaleFactor_dr.cpp | 2 +- .../src/Sensor/DeadReckoning_Did_Heading_dr.cpp | 2 +- .../src/Sensor/DeadReckoning_Did_Latitude_dr.cpp | 2 +- .../src/Sensor/DeadReckoning_Did_Longitude_dr.cpp | 2 +- .../src/Sensor/DeadReckoning_Did_SnsCounter.cpp | 2 +- ...Reckoning_Did_SpeedPulseScaleFactorLevel_dr.cpp | 2 +- .../DeadReckoning_Did_SpeedPulseScaleFactor_dr.cpp | 2 +- .../src/Sensor/DeadReckoning_Did_Speed_dr.cpp | 2 +- .../server/src/Sensor/DeadReckoning_main.cpp | 966 ++++---- positioning/server/src/Sensor/GpsInt.cpp | 2 +- positioning/server/src/Sensor/Makefile | 43 +- positioning/server/src/Sensor/SensorLog.cpp | 114 +- .../src/Sensor/VehicleSens_CanDeliveryEntry.cpp | 2 +- .../server/src/Sensor/VehicleSens_Common.cpp | 582 ++--- .../src/Sensor/VehicleSens_DataMasterMain.cpp | 2620 +++++++++++--------- .../server/src/Sensor/VehicleSens_DeliveryCtrl.cpp | 1547 ++++++------ .../Sensor/VehicleSens_Did_GPSInterruptFlag.cpp | 44 +- .../src/Sensor/VehicleSens_Did_GpsAntenna.cpp | 2 +- .../Sensor/VehicleSens_Did_GpsAntennaStatus.cpp | 52 +- .../src/Sensor/VehicleSens_Did_GpsAntenna_l.cpp | 42 +- .../src/Sensor/VehicleSens_Did_GpsClockDrift.cpp | 28 +- .../src/Sensor/VehicleSens_Did_GpsClockDrift_g.cpp | 32 +- .../src/Sensor/VehicleSens_Did_GpsClockFreq.cpp | 28 +- .../src/Sensor/VehicleSens_Did_GpsClockFreq_g.cpp | 32 +- .../src/Sensor/VehicleSens_Did_GpsCounter_g.cpp | 62 +- .../src/Sensor/VehicleSens_Did_GpsNmea_g.cpp | 62 +- .../server/src/Sensor/VehicleSens_Did_GpsTime.cpp | 30 +- .../src/Sensor/VehicleSens_Did_GpsTimeRaw.cpp | 28 +- .../src/Sensor/VehicleSens_Did_GpsTimeRaw_g.cpp | 84 +- .../src/Sensor/VehicleSens_Did_GpsTime_g.cpp | 74 +- .../VehicleSens_Did_Gps_CWORD82_FullBinary_g.cpp | 66 +- .../Sensor/VehicleSens_Did_Gps_CWORD82_Nmea_g.cpp | 60 +- .../VehicleSens_Did_Gps_CWORD82__CWORD44_Gp4_g.cpp | 66 +- .../server/src/Sensor/VehicleSens_Did_GsnsX.cpp | 38 +- .../src/Sensor/VehicleSens_Did_GsnsXExt_l.cpp | 144 +- .../src/Sensor/VehicleSens_Did_GsnsXFst_l.cpp | 138 +- .../server/src/Sensor/VehicleSens_Did_GsnsX_l.cpp | 40 +- .../server/src/Sensor/VehicleSens_Did_GsnsY.cpp | 42 +- .../src/Sensor/VehicleSens_Did_GsnsYExt_l.cpp | 144 +- .../src/Sensor/VehicleSens_Did_GsnsYFst_l.cpp | 140 +- .../server/src/Sensor/VehicleSens_Did_GsnsY_l.cpp | 40 +- .../server/src/Sensor/VehicleSens_Did_GsnsZ.cpp | 116 + .../src/Sensor/VehicleSens_Did_GsnsZExt_l.cpp | 142 ++ .../src/Sensor/VehicleSens_Did_GsnsZFst_l.cpp | 127 + .../server/src/Sensor/VehicleSens_Did_GsnsZ_l.cpp | 97 + .../server/src/Sensor/VehicleSens_Did_Gyro.cpp | 145 -- .../Sensor/VehicleSens_Did_GyroConnectStatus.cpp | 52 +- .../src/Sensor/VehicleSens_Did_GyroExt_l.cpp | 228 +- .../src/Sensor/VehicleSens_Did_GyroFst_l.cpp | 175 -- .../server/src/Sensor/VehicleSens_Did_GyroTemp.cpp | 74 +- .../src/Sensor/VehicleSens_Did_GyroTempExt_l.cpp | 168 +- .../src/Sensor/VehicleSens_Did_GyroTempFst_l.cpp | 140 +- .../src/Sensor/VehicleSens_Did_GyroTemp_l.cpp | 40 +- .../src/Sensor/VehicleSens_Did_GyroTrouble.cpp | 70 +- .../server/src/Sensor/VehicleSens_Did_GyroX.cpp | 145 ++ .../src/Sensor/VehicleSens_Did_GyroXFst_l.cpp | 176 ++ .../server/src/Sensor/VehicleSens_Did_GyroX_l.cpp | 128 + .../server/src/Sensor/VehicleSens_Did_GyroY.cpp | 113 + .../src/Sensor/VehicleSens_Did_GyroYExt_l.cpp | 148 ++ .../src/Sensor/VehicleSens_Did_GyroYFst_l.cpp | 169 ++ .../server/src/Sensor/VehicleSens_Did_GyroY_l.cpp | 126 + .../server/src/Sensor/VehicleSens_Did_GyroZ.cpp | 113 + .../src/Sensor/VehicleSens_Did_GyroZExt_l.cpp | 148 ++ .../src/Sensor/VehicleSens_Did_GyroZFst_l.cpp | 169 ++ .../server/src/Sensor/VehicleSens_Did_GyroZ_l.cpp | 126 + .../server/src/Sensor/VehicleSens_Did_Gyro_l.cpp | 128 - .../Sensor/VehicleSens_Did_LocationAltitude.cpp | 2 +- .../Sensor/VehicleSens_Did_LocationAltitude_g.cpp | 52 +- .../Sensor/VehicleSens_Did_LocationAltitude_n.cpp | 54 +- .../Sensor/VehicleSens_Did_LocationInfoNmea.cpp | 2 +- .../Sensor/VehicleSens_Did_LocationInfoNmea_n.cpp | 2 +- .../src/Sensor/VehicleSens_Did_LocationLonLat.cpp | 2 +- .../Sensor/VehicleSens_Did_LocationLonLat_g.cpp | 52 +- .../Sensor/VehicleSens_Did_LocationLonLat_n.cpp | 78 +- .../VehicleSens_Did_MainGpsInterruptSignal.cpp | 82 +- .../server/src/Sensor/VehicleSens_Did_Mon_Hw_g.cpp | 72 +- .../src/Sensor/VehicleSens_Did_MotionHeading.cpp | 2 +- .../src/Sensor/VehicleSens_Did_MotionHeading_g.cpp | 54 +- .../src/Sensor/VehicleSens_Did_MotionHeading_n.cpp | 78 +- .../src/Sensor/VehicleSens_Did_MotionSpeed.cpp | 2 +- .../src/Sensor/VehicleSens_Did_MotionSpeed_g.cpp | 54 +- .../src/Sensor/VehicleSens_Did_MotionSpeed_i.cpp | 50 +- .../src/Sensor/VehicleSens_Did_MotionSpeed_n.cpp | 50 +- .../src/Sensor/VehicleSens_Did_Nav_Clock_g.cpp | 72 +- .../src/Sensor/VehicleSens_Did_Nav_Dop_g.cpp | 72 +- .../src/Sensor/VehicleSens_Did_Nav_Posllh_g.cpp | 72 +- .../src/Sensor/VehicleSens_Did_Nav_Status_g.cpp | 72 +- .../src/Sensor/VehicleSens_Did_Nav_SvInfo_g.cpp | 72 +- .../src/Sensor/VehicleSens_Did_Nav_TimeGps_g.cpp | 72 +- .../src/Sensor/VehicleSens_Did_Nav_TimeUtc_g.cpp | 72 +- .../src/Sensor/VehicleSens_Did_Nav_Velned_g.cpp | 72 +- .../Sensor/VehicleSens_Did_NaviinfoDiagGPS_g.cpp | 60 +- .../src/Sensor/VehicleSens_Did_PulseTime.cpp | 74 +- .../src/Sensor/VehicleSens_Did_PulseTimeExt_l.cpp | 174 +- .../src/Sensor/VehicleSens_Did_PulseTime_l.cpp | 40 +- .../server/src/Sensor/VehicleSens_Did_Rev.cpp | 38 +- .../server/src/Sensor/VehicleSens_Did_RevExt_l.cpp | 155 +- .../server/src/Sensor/VehicleSens_Did_RevFst_l.cpp | 154 +- .../server/src/Sensor/VehicleSens_Did_Rev_l.cpp | 82 +- .../src/Sensor/VehicleSens_Did_SettingTime.cpp | 2 +- .../Sensor/VehicleSens_Did_SettingTime_clock.cpp | 44 +- .../src/Sensor/VehicleSens_Did_SnsCounter.cpp | 2 +- .../src/Sensor/VehicleSens_Did_SnsCounterExt_l.cpp | 139 +- .../src/Sensor/VehicleSens_Did_SnsCounter_l.cpp | 74 +- .../src/Sensor/VehicleSens_Did_SpeedKmph.cpp | 2 +- .../src/Sensor/VehicleSens_Did_SpeedKmph_l.cpp | 130 +- .../src/Sensor/VehicleSens_Did_SpeedPulse.cpp | 2 +- .../src/Sensor/VehicleSens_Did_SpeedPulseExt_l.cpp | 144 +- .../src/Sensor/VehicleSens_Did_SpeedPulseFlag.cpp | 44 +- .../Sensor/VehicleSens_Did_SpeedPulseFlagFst_l.cpp | 16 +- .../src/Sensor/VehicleSens_Did_SpeedPulseFst_l.cpp | 156 +- .../src/Sensor/VehicleSens_Did_SpeedPulse_l.cpp | 80 +- .../VehicleSens_Did_SysGpsInterruptSignal.cpp | 82 +- .../src/Sensor/VehicleSens_Did_WknRollover.cpp | 28 +- .../src/Sensor/VehicleSens_Did_WknRollover_g.cpp | 32 +- .../server/src/Sensor/VehicleSens_FromAccess.cpp | 2 +- .../server/src/Sensor/VehicleSens_FromMng.cpp | 148 -- .../src/Sensor/VehicleSens_SelectionItemList.cpp | 485 ++-- .../server/src/Sensor/VehicleSens_SharedMemory.cpp | 2 +- .../server/src/Sensor/VehicleSens_Thread.cpp | 1371 +++++----- positioning/server/src/Sensor/VehicleUtility.cpp | 6 +- .../server/src/ServiceInterface/BackupMgrIf.cpp | 2 +- .../server/src/ServiceInterface/ClockIf.cpp | 86 +- .../server/src/ServiceInterface/CommUsbIf.cpp | 12 +- .../server/src/ServiceInterface/DevDetectSrvIf.cpp | 2 +- .../server/src/ServiceInterface/DiagSrvIf.cpp | 77 +- positioning/server/src/ServiceInterface/Makefile | 10 +- .../server/src/ServiceInterface/PSMShadowIf.cpp | 2 +- .../server/src/ServiceInterface/VehicleIf.cpp | 322 +-- positioning/server/src/nsfw/Makefile | 31 +- .../server/src/nsfw/positioning_application.cpp | 511 ++-- positioning/server/src/nsfw/ps_main.cpp | 2 +- 222 files changed, 11665 insertions(+), 11679 deletions(-) delete mode 100644 positioning/client/src/CanInput_API/common/CanInput_API.cpp delete mode 100644 positioning/client/src/DR_API/common/DR_API.cpp create mode 100644 positioning/client/src/POS_gps_API/Naviinfo_API.cpp delete mode 100644 positioning/client/src/POS_naviinfo_API/variant/awnavi/src/Naviinfo_API.cpp create mode 100644 positioning/client/src/POS_sensor_API/Sensor_API.cpp create mode 100644 positioning/client/src/POS_sensor_API/Vehicle_API.cpp delete mode 100644 positioning/client/src/POS_sensor_API/common/Sensor_API.cpp delete mode 100644 positioning/client/src/SensorLocation_API/common/SensorLocation_API.cpp delete mode 100644 positioning/client/src/VehicleDebug_API/common/VehicleDebug_API.cpp delete mode 100644 positioning/client/src/Vehicle_API/common/Vehicle_API.cpp delete mode 100644 positioning/server/include/Sensor/VehicleSens_FromMng.h delete mode 100644 positioning/server/include/common/com/com_message_header.h create mode 100644 positioning/server/src/Sensor/VehicleSens_Did_GsnsZ.cpp create mode 100644 positioning/server/src/Sensor/VehicleSens_Did_GsnsZExt_l.cpp create mode 100644 positioning/server/src/Sensor/VehicleSens_Did_GsnsZFst_l.cpp create mode 100644 positioning/server/src/Sensor/VehicleSens_Did_GsnsZ_l.cpp delete mode 100644 positioning/server/src/Sensor/VehicleSens_Did_Gyro.cpp delete mode 100644 positioning/server/src/Sensor/VehicleSens_Did_GyroFst_l.cpp create mode 100644 positioning/server/src/Sensor/VehicleSens_Did_GyroX.cpp create mode 100644 positioning/server/src/Sensor/VehicleSens_Did_GyroXFst_l.cpp create mode 100644 positioning/server/src/Sensor/VehicleSens_Did_GyroX_l.cpp create mode 100644 positioning/server/src/Sensor/VehicleSens_Did_GyroY.cpp create mode 100644 positioning/server/src/Sensor/VehicleSens_Did_GyroYExt_l.cpp create mode 100644 positioning/server/src/Sensor/VehicleSens_Did_GyroYFst_l.cpp create mode 100644 positioning/server/src/Sensor/VehicleSens_Did_GyroY_l.cpp create mode 100644 positioning/server/src/Sensor/VehicleSens_Did_GyroZ.cpp create mode 100644 positioning/server/src/Sensor/VehicleSens_Did_GyroZExt_l.cpp create mode 100644 positioning/server/src/Sensor/VehicleSens_Did_GyroZFst_l.cpp create mode 100644 positioning/server/src/Sensor/VehicleSens_Did_GyroZ_l.cpp delete mode 100644 positioning/server/src/Sensor/VehicleSens_Did_Gyro_l.cpp delete mode 100644 positioning/server/src/Sensor/VehicleSens_FromMng.cpp diff --git a/positioning/Makefile.client b/positioning/Makefile.client index 373ed535..7236c743 100644 --- a/positioning/Makefile.client +++ b/positioning/Makefile.client @@ -1,5 +1,5 @@ # -# @copyright Copyright (c) 2016-2019 TOYOTA MOTOR CORPORATION. +# @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. diff --git a/positioning/Makefile.server b/positioning/Makefile.server index 0cbad728..d0fda9ca 100644 --- a/positioning/Makefile.server +++ b/positioning/Makefile.server @@ -1,5 +1,5 @@ # -# @copyright Copyright (c) 2016-2019 TOYOTA MOTOR CORPORATION. +# @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. diff --git a/positioning/client/Makefile b/positioning/client/Makefile index e7ee7443..d7fce284 100644 --- a/positioning/client/Makefile +++ b/positioning/client/Makefile @@ -1,5 +1,5 @@ # -# @copyright Copyright (c) 2016-2019 TOYOTA MOTOR CORPORATION. +# @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. diff --git a/positioning/client/include/CanInput_API.h b/positioning/client/include/CanInput_API.h index 46e86da9..1449b25a 100644 --- a/positioning/client/include/CanInput_API.h +++ b/positioning/client/include/CanInput_API.h @@ -1,5 +1,5 @@ /* - * @copyright Copyright (c) 2016-2019 TOYOTA MOTOR CORPORATION. + * @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. diff --git a/positioning/client/include/CanInput_API_private.h b/positioning/client/include/CanInput_API_private.h index cae7e031..d7c8e8e5 100644 --- a/positioning/client/include/CanInput_API_private.h +++ b/positioning/client/include/CanInput_API_private.h @@ -1,5 +1,5 @@ /* - * @copyright Copyright (c) 2016-2019 TOYOTA MOTOR CORPORATION. + * @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. @@ -49,7 +49,7 @@ *****************************************************************************/ typedef struct { T_APIMSG_MSGBUF_HEADER hdr; /* Message header */ - u_int8 data[CANINPUT_MSGBUF_DSIZE]; /* Message data (Localtime) */ + uint8_t data[CANINPUT_MSGBUF_DSIZE]; /* Message data (Localtime) */ } CANINPUT_MSG_INFO; /************************************************************************ diff --git a/positioning/client/include/Clock_API.h b/positioning/client/include/Clock_API.h index 372e39ad..19879994 100644 --- a/positioning/client/include/Clock_API.h +++ b/positioning/client/include/Clock_API.h @@ -1,5 +1,5 @@ /* - * @copyright Copyright (c) 2016-2019 TOYOTA MOTOR CORPORATION. + * @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. diff --git a/positioning/client/include/CommonDefine.h b/positioning/client/include/CommonDefine.h index 82fed306..2e9e3e6c 100644 --- a/positioning/client/include/CommonDefine.h +++ b/positioning/client/include/CommonDefine.h @@ -1,5 +1,5 @@ /* - * @copyright Copyright (c) 2016-2019 TOYOTA MOTOR CORPORATION. + * @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. @@ -59,40 +59,7 @@ #define POS_SNS__CWORD82__PJRDC_GP_3 (0x20U) //!< \~english PJRDC_GP_3 sentence /* NMEA Receive Flag */ -#define POS_SNS_GPS_NMEA_GGA (0x00000001U) //!< \~english GGA sentence -#define POS_SNS_GPS_NMEA_GLL (0x00000002U) //!< \~english GLL sentence -#define POS_SNS_GPS_NMEA_GSA (0x00000004U) //!< \~english GSA sentence -#define POS_SNS_GPS_NMEA_GST (0x00000008U) //!< \~english GST sentence -#define POS_SNS_GPS_NMEA_RMC (0x00000010U) //!< \~english RMC sentence -#define POS_SNS_GPS_NMEA_VTG (0x00000020U) //!< \~english VTG sentence -#define POS_SNS_GPS_NMEA_GSV1 (0x00000040U) //!< \~english GSV1 sentence -#define POS_SNS_GPS_NMEA_GSV2 (0x00000080U) //!< \~english GSV2 sentence -#define POS_SNS_GPS_NMEA_GSV3 (0x00000100U) //!< \~english GSV3 sentence -#define POS_SNS_GPS_NMEA_GSV4 (0x00000200U) //!< \~english GSV4 sentence -#define POS_SNS_GPS_NMEA_GSV5 (0x00000400U) //!< \~english GSV5 sentence - -#define POS_SNS_GPS_NMEA_PASCD (0x00000800U) //!< \~english pascd sentence - -/** - * @enum POS_SNS_GPS_NMEA_SNO - * \~english type of NMEA - */ -typedef enum { - POS_SNS_GPS_NMEA_SNO_GGA = 0, //!< \~english GGA sentence - POS_SNS_GPS_NMEA_SNO_GLL, //!< \~english GLL sentence - POS_SNS_GPS_NMEA_SNO_GSA, //!< \~english GSA sentence - POS_SNS_GPS_NMEA_SNO_GST, //!< \~english GST sentence - POS_SNS_GPS_NMEA_SNO_RMC, //!< \~english RMC sentence - POS_SNS_GPS_NMEA_SNO_VTG, //!< \~english VTG sentence - POS_SNS_GPS_NMEA_SNO_GSV1, //!< \~english GSV1 sentence - POS_SNS_GPS_NMEA_SNO_GSV2, //!< \~english GSV2 sentence - POS_SNS_GPS_NMEA_SNO_GSV3, //!< \~english GSV3 sentence - POS_SNS_GPS_NMEA_SNO_GSV4, //!< \~english GSV4 sentence - POS_SNS_GPS_NMEA_SNO_GSV5, //!< \~english GSV5 sentence - - POS_SNS_GPS_NMEA_SNO_PASCD, //!< \~english pascd sentence - POS_SNS_GPS_NMEA_SNO_MAX //!< \~english MAX sentence(invalid) -} POS_SNS_GPS_NMEA_SNO; +#define POS_SNS_GPS_NMEA_PASCD (0x01000000U) //!< \~english pascd sentence typedef u_int16 PNO; //!< \~english PNo. diff --git a/positioning/client/include/DR_API.h b/positioning/client/include/DR_API.h index fde5034e..6362f8cf 100644 --- a/positioning/client/include/DR_API.h +++ b/positioning/client/include/DR_API.h @@ -1,5 +1,5 @@ /* - * @copyright Copyright (c) 2016-2019 TOYOTA MOTOR CORPORATION. + * @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. diff --git a/positioning/client/include/DeadReckoning_DbgLogSim.h b/positioning/client/include/DeadReckoning_DbgLogSim.h index 34d5243c..bd57de70 100644 --- a/positioning/client/include/DeadReckoning_DbgLogSim.h +++ b/positioning/client/include/DeadReckoning_DbgLogSim.h @@ -1,5 +1,5 @@ /* - * @copyright Copyright (c) 2016-2019 TOYOTA MOTOR CORPORATION. + * @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. diff --git a/positioning/client/include/Dead_Reckoning_API.h b/positioning/client/include/Dead_Reckoning_API.h index a42aa904..bd2e0318 100644 --- a/positioning/client/include/Dead_Reckoning_API.h +++ b/positioning/client/include/Dead_Reckoning_API.h @@ -1,5 +1,5 @@ /* - * @copyright Copyright (c) 2016-2019 TOYOTA MOTOR CORPORATION. + * @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. @@ -107,7 +107,9 @@ typedef struct { /* Set "0" for initial sensor transmission and "1" for periodic transmission. */ u_int8 sens_cnt; /* Sensor data transmission counter value Set "0" at initial transmission of sensor */ Struct_PulseRevTbl pulse_rev_tbl; /* Vehicle speed/REV Data table */ - Struct_GyroTbl gyro_tbl; /* Gyro data table */ + Struct_GyroTbl gyro_x_tbl; /* Gyro(X axis) data table */ + Struct_GyroTbl gyro_y_tbl; /* Gyro(Y axis) data table */ + Struct_GyroTbl gyro_z_tbl; /* Gyro(Z axis) data table */ } Struct_SensData; /* GPS data */ diff --git a/positioning/client/include/Dead_Reckoning_Local_Api.h b/positioning/client/include/Dead_Reckoning_Local_Api.h index 42fb004d..c513e9b0 100644 --- a/positioning/client/include/Dead_Reckoning_Local_Api.h +++ b/positioning/client/include/Dead_Reckoning_Local_Api.h @@ -1,5 +1,5 @@ /* - * @copyright Copyright (c) 2016-2019 TOYOTA MOTOR CORPORATION. + * @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. diff --git a/positioning/client/include/Gps_API_private.h b/positioning/client/include/Gps_API_private.h index adf538b4..7026ce97 100644 --- a/positioning/client/include/Gps_API_private.h +++ b/positioning/client/include/Gps_API_private.h @@ -1,5 +1,5 @@ /* - * @copyright Copyright (c) 2016-2019 TOYOTA MOTOR CORPORATION. + * @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. diff --git a/positioning/client/include/INI_API.h b/positioning/client/include/INI_API.h index 734bc92c..f16a4c62 100644 --- a/positioning/client/include/INI_API.h +++ b/positioning/client/include/INI_API.h @@ -1,5 +1,5 @@ /* - * @copyright Copyright (c) 2016-2019 TOYOTA MOTOR CORPORATION. + * @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. diff --git a/positioning/client/include/Naviinfo_API.h b/positioning/client/include/Naviinfo_API.h index 59898e48..12caa84f 100644 --- a/positioning/client/include/Naviinfo_API.h +++ b/positioning/client/include/Naviinfo_API.h @@ -1,5 +1,5 @@ /* - * @copyright Copyright (c) 2016-2019 TOYOTA MOTOR CORPORATION. + * @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. @@ -82,7 +82,7 @@ *****************************************************************************/ typedef struct { T_APIMSG_MSGBUF_HEADER hdr; /* Message header */ -// NAVIINFO_ALL dat; /* Message data section */ + NAVIINFO_ALL dat; /* Message data section */ } NAVIINFO_DELIVER_MSG; /***************************************************************************** @@ -102,7 +102,7 @@ typedef struct { #ifdef __cplusplus extern "C" { #endif -//extern int32 VehicleSetVehicleData(PNO pid, VEHICLE_MSG_SEND_DAT *p_data); +extern int32 VehicleSetVehicleData(PNO pid, VEHICLE_MSG_SEND_DAT *p_data); #ifdef __cplusplus } #endif diff --git a/positioning/client/include/POS_common_private.h b/positioning/client/include/POS_common_private.h index 531ef6a9..4dd98a25 100644 --- a/positioning/client/include/POS_common_private.h +++ b/positioning/client/include/POS_common_private.h @@ -1,5 +1,5 @@ /* - * @copyright Copyright (c) 2016-2019 TOYOTA MOTOR CORPORATION. + * @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. @@ -31,6 +31,11 @@ * Definition * *---------------------------------------------------------------------------------*/ /*--- for message ---*/ +/* + * Maximum receive message size + * - Set the value based on the message receiving buffer size of the local thread + */ +#define MAX_MSG_BUF_SIZE (4096) /* command ID */ #define CID_POSIF_SET_DATA 0x0790 /* set data command ID */ diff --git a/positioning/client/include/POS_private.h b/positioning/client/include/POS_private.h index 05a52480..9f022028 100644 --- a/positioning/client/include/POS_private.h +++ b/positioning/client/include/POS_private.h @@ -1,5 +1,5 @@ /* - * @copyright Copyright (c) 2016-2019 TOYOTA MOTOR CORPORATION. + * @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. @@ -35,6 +35,7 @@ #include "POS_common_private.h" #include #include +#include #include "CommonDefine.h" /*---------------------------------------------------------------------------------* * Function Prototype * @@ -42,8 +43,8 @@ /* Shared Library Value Area Check Function */ inline UNIT_TYPE GetEnvSupportInfo(void); inline BOOL ChkUnitType(UNIT_TYPE type); -inline RET_API MunMapDeviceIo(HANDLE dev, u_int32 map_size); -inline RET_API MilliSecSleep(u_int32 mill_time); +inline RET_API MunMapDeviceIo(HANDLE dev, uint32_t map_size); +inline RET_API MilliSecSleep(uint32_t mill_time); inline POS_RET_API PosChkParam8(int8_t data, int8_t min, int8_t max, const char* fn, int32_t line); inline POS_RET_API PosChkParam16(int16_t data, int16_t min, int16_t max, const char* fn, int32_t line); inline POS_RET_API PosChkParam32(int32_t data, int32_t min, int32_t max, const char* fn, int32_t line); @@ -60,9 +61,9 @@ inline SENSOR_RET_API PosRegisterListenerProc(PCSTR notify_name, /* General Functions in Shared Libraries */ inline EventID VehicleCreateEvent(PNO pno); inline RET_API VehicleDeleteEvent(EventID event_id); -inline RET_API VehicleLinkShareData(void **share_top, u_int32 *share_size, u_int16 *offset); -inline RET_API VehicleUnLinkShareData(VEHICLE_SHARE *share_top, u_int16 offset); -inline RET_API VehicleSndMsg(PNO pno_src, PNO pno_dest, CID cid, u_int16 msg_len, const void *msg_data); +inline RET_API VehicleLinkShareData(void **share_top, uint32_t *share_size, uint16_t *offset); +inline RET_API VehicleUnLinkShareData(VEHICLE_SHARE *share_top, uint16_t offset); +inline RET_API VehicleSndMsg(PNO pno_src, PNO pno_dest, CID cid, uint16_t msg_len, const void *msg_data); inline BOOL VehicleGetResource(void); inline void VehicleReleaseResource(void); inline uint32_t GetTid(void); @@ -81,22 +82,34 @@ inline uint32_t GetTid(void); * Inline Functions * *---------------------------------------------------------------------------------*/ UNIT_TYPE GetEnvSupportInfo(void) { - UNIT_TYPE ret_type = UNIT_TYPE_UNKNOWN; + UNIT_TYPE ret_type = UNIT_TYPE_GRADE1; + char env_area[VP_MAX_LENGTH]; char env_grade[VP_MAX_LENGTH]; char* p_env_grade = env_grade; + char* p_env_area = env_area; - VP_GetEnv(VEHICLEPARAMETERLIBRARY_GRADE, p_env_grade); + /* + * Note. + * This feature branches processing depending on the area and grade type. + */ - if (0 == strcmp(p_env_grade, "GRADE1")) { - ret_type = UNIT_TYPE_GRADE1; - } else { - /* - * Note. - * This feature branches processing depending on the unit type. - */ + VP_GetEnv(VP_VEHICLEPARAMETERLIBRARY_AREA, p_env_area); + + if (0 == strcmp(p_env_area, "AREA1")) { ret_type = UNIT_TYPE_GRADE2; + } else if (0 == strcmp(p_env_area, "AREA2")) { + memset(&env_grade, 0x00, sizeof(env_grade)); + VP_GetEnv(VP_VEHICLEPARAMETERLIBRARY_GRADE, p_env_grade); + if (0 == strcmp(p_env_grade, "_CWORD95_") || + 0 == strcmp(p_env_grade, "_CWORD101_") || + 0 == strcmp(p_env_grade, "_CWORD61_")) { + ret_type = UNIT_TYPE_GRADE2; + } + } else { + // NOP } + return ret_type; } @@ -114,11 +127,11 @@ BOOL ChkUnitType(UNIT_TYPE type) { return ret; } -RET_API MunMapDeviceIo(HANDLE dev, u_int32 map_size) { +RET_API MunMapDeviceIo(HANDLE dev, uint32_t map_size) { return RET_NORMAL; } -RET_API MilliSecSleep(u_int32 mill_time) { +RET_API MilliSecSleep(uint32_t mill_time) { switch (mill_time) { case 0: { @@ -352,36 +365,36 @@ inline POS_RET_API PosChkParamU32(uint32_t data, uint32_t min, uint32_t max, con inline POS_RET_API PosSetProc(DID did, void *p_data, uint16_t size, uint8_t is_event) { POS_RET_API ret = POS_RET_NORMAL; /* Return value of this function */ RET_API ret_api = RET_NORMAL; /* API return value */ -// POS_MSGINFO snd_msg; /* Message */ + POS_MSGINFO snd_msg; /* Message */ EventID event_id; /* Event ID */ -// int32_t event_val; /* Event value */ + int32_t event_val; /* Event value */ PNO pno; /* Calling thread PNO */ uint32_t pid; /* Process ID */ uint32_t tid; /* Thread ID */ char name[128]; /* Data size check */ -// if (POS_MSG_INFO_DSIZE < size) { -// ret = POS_RET_ERROR_PARAM; -// } else { + if (POS_MSG_INFO_DSIZE < size) { + ret = POS_RET_ERROR_PARAM; + } else { /* Resource acquisition */ if (VehicleGetResource() == TRUE) { /* Message data */ /* _CWORD71_ processing speed(Memset modification) */ /* Initialization of areas that do not contain values */ -// snd_msg.pno = 0; -// snd_msg.rcv_flag = 0; -// snd_msg.reserve = 0; -// -// snd_msg.did = did; -// snd_msg.size = size; -// memcpy(snd_msg.data, p_data, size); + snd_msg.pno = 0; + snd_msg.rcv_flag = 0; + snd_msg.reserve = 0; + + snd_msg.did = did; + snd_msg.size = size; + memcpy(snd_msg.data, p_data, size); if (TRUE == is_event) { /* After requesting data setting,Wait for the setting completion(Event Wait) */ /* Event Generation */ - pid = static_cast(getpid()); + pid = static_cast(getpid()); tid = GetTid(); snprintf(name, sizeof(name), "PS_p%u_t%u", pid, tid); @@ -389,38 +402,37 @@ inline POS_RET_API PosSetProc(DID did, void *p_data, uint16_t size, uint8_t is_e event_id = VehicleCreateEvent(pno); /* Set the source Pno of message data */ -// snd_msg.pno = pno; + snd_msg.pno = pno; if (0 != event_id) { /* Successful event generation */ /* Send NAVI Sensor Data Setting to Vehicle Sensor */ -// ret_api = VehicleSndMsg(pno, -// PNO_VEHICLE_SENSOR, -// CID_POSIF_SET_DATA, -// -//// (u_int16)sizeof(POS_MSGINFO), (const void *)&snd_msg); -// (u_int16)sizeof(POS_MSGINFO) - POS_MSG_INFO_DSIZE + snd_msg.size, /* variable length */ -// (const void *)&snd_msg); -// -// if (RET_NORMAL == ret_api) { -// /* If the data setup process is successful,Wait for a completion event */ -// ret_api = _pb_WaitEvent(event_id, -// SAPI_EVWAIT_VAL, -// VEHICLE_RET_ERROR_MIN, -// VEHICLE_RET_NORMAL, &event_val, POS_API_TIME_OUT_MS); -// if (RET_NORMAL != ret_api) { -// /* Return an internal error */ -// ret = POS_RET_ERROR_INNER; -// } else { -// /* Return from Event Wait */ -// /* Set event value (processing result) as return value */ -// ret = (POS_RET_API)event_val; -// } -// } else { -// /* Message transmission processing failed */ -// ret = POS_RET_ERROR_INNER; -// } + ret_api = VehicleSndMsg(pno, + PNO_VEHICLE_SENSOR, + CID_POSIF_SET_DATA, + + (uint16_t)sizeof(POS_MSGINFO) - POS_MSG_INFO_DSIZE + snd_msg.size, /* variable length */ + (const void *)&snd_msg); + + if (RET_NORMAL == ret_api) { + /* If the data setup process is successful,Wait for a completion event */ + ret_api = _pb_WaitEvent(event_id, + SAPI_EVWAIT_VAL, + VEHICLE_RET_ERROR_MIN, + VEHICLE_RET_NORMAL, &event_val, POS_API_TIME_OUT_MS); + if (RET_NORMAL != ret_api) { + /* Return an internal error */ + ret = POS_RET_ERROR_INNER; + } else { + /* Return from Event Wait */ + /* Set event value (processing result) as return value */ + ret = (POS_RET_API)event_val; + } + } else { + /* Message transmission processing failed */ + ret = POS_RET_ERROR_INNER; + } /* Event deletion */ ret_api = VehicleDeleteEvent(event_id); } else { @@ -431,13 +443,13 @@ inline POS_RET_API PosSetProc(DID did, void *p_data, uint16_t size, uint8_t is_e /* After setting data,Immediate termination */ /* Send NAVI Sensor Data Setting to Vehicle Sensor */ -// ret_api = _pb_SndMsg_Ext(POS_THREAD_NAME, -// CID_POSIF_SET_DATA, -// sizeof(POS_MSGINFO), reinterpret_cast(&snd_msg), 0); -// if (ret_api != RET_NORMAL) { -// /* Message transmission failure */ -// ret = POS_RET_ERROR_INNER; -// } + ret_api = _pb_SndMsg_Ext(POS_THREAD_NAME, + CID_POSIF_SET_DATA, + sizeof(POS_MSGINFO), reinterpret_cast(&snd_msg), 0); + if (ret_api != RET_NORMAL) { + /* Message transmission failure */ + ret = POS_RET_ERROR_INNER; + } } } else { /* Insufficient resource */ @@ -445,7 +457,7 @@ inline POS_RET_API PosSetProc(DID did, void *p_data, uint16_t size, uint8_t is_e } /* Resource release */ VehicleReleaseResource(); -// } + } return ret; } @@ -465,16 +477,16 @@ inline POS_RET_API PosSetProc(DID did, void *p_data, uint16_t size, uint8_t is_e * POS_RET_ERROR_DID Unregistered ID
*/ inline POS_RET_API PosGetProc(DID did, void *p_data, uint16_t dest_size) { - POS_RET_API ret; /* Return value */ - RET_API ret_api; /* System API return value */ - EventID event_id; /* Event ID */ - int32 event_val; /* Event value */ + POS_RET_API ret; /* Return value */ + RET_API ret_api; /* System API return value */ + EventID event_id; /* Event ID */ + int32_t event_val; /* Event value */ void *share_top; /* Start address of shared memory */ - u_int32 share_size; /* Size of shared memory area */ - u_int16 offset; /* Offset to free shared memory area */ + uint32_t share_size; /* Size of shared memory area */ + uint16_t offset; /* Offset to free shared memory area */ VEHICLE_SHARE_BLOCK_DAT *share_dat; /* Address of free shared memory area */ VEHICLE_MSG_GET_VEHICLE_DATA_DAT data; /* Message data */ - PNO pno; /* Calling thread PNO */ + PNO pno; /* Calling thread PNO */ uint32_t pid; /* Process ID */ uint32_t tid; /* Thread ID */ char name[128]; @@ -487,7 +499,7 @@ inline POS_RET_API PosGetProc(DID did, void *p_data, uint16_t dest_size) { memset(reinterpret_cast(&data), 0, sizeof(VEHICLE_MSG_GET_VEHICLE_DATA_DAT)); /* Event Generation */ - pid = static_cast(getpid()); + pid = static_cast(getpid()); tid = GetTid(); snprintf(name, sizeof(name), "PG_p%u_t%u", pid, tid); @@ -637,7 +649,7 @@ inline SENSOR_RET_API PosRegisterListenerProc(PCSTR notify_name, DID did, u_int8 ret_api = VehicleSndMsg(pno, PNO_VEHICLE_SENSOR, CID_VEHICLEIF_DELIVERY_ENTRY, - (u_int16)sizeof(VEHICLE_MSG_DELIVERY_ENTRY_DAT), (const void *)&data); + (uint16_t)sizeof(VEHICLE_MSG_DELIVERY_ENTRY_DAT), (const void *)&data); if (RET_NORMAL == ret_api) { /* Message transmission processing is successful */ @@ -738,7 +750,7 @@ inline RET_API VehicleDeleteEvent(EventID event_id) { * RETURN : RET_NORMAL : Normal completion * : RET_ERROR : There is no shared memory area. ******************************************************************************/ -inline RET_API VehicleLinkShareData(void **share_top, u_int32 *share_size, u_int16 *offset) { +inline RET_API VehicleLinkShareData(void **share_top, uint32_t *share_size, uint16_t *offset) { RET_API ret_api; /* System API return value */ SemID sem_id; /* Semaphore ID */ VEHICLE_SHARE *share_top_tmp; @@ -807,7 +819,7 @@ inline RET_API VehicleLinkShareData(void **share_top, u_int32 *share_size, u_int * RETURN : RET_NORMAL : Normal completion * : RET_ERROR : There is no shared memory area./semaphore error ******************************************************************************/ -inline RET_API VehicleUnLinkShareData(VEHICLE_SHARE *share_top, u_int16 offset) { +inline RET_API VehicleUnLinkShareData(VEHICLE_SHARE *share_top, uint16_t offset) { RET_API ret_api; /* System API return value */ SemID sem_id; /* Semaphore ID */ int32 i; @@ -857,7 +869,7 @@ inline RET_API VehicleUnLinkShareData(VEHICLE_SHARE *share_top, u_int16 offset) * : RET_ERRMSGFULL : Message queue overflows * : RET_ERRPARAM : Buffer size error ******************************************************************************/ -inline RET_API VehicleSndMsg(PNO pno_src, PNO pno_dest, CID cid, u_int16 msg_len, const void *msg_data) { +inline RET_API VehicleSndMsg(PNO pno_src, PNO pno_dest, CID cid, uint16_t msg_len, const void *msg_data) { VEHICLE_MSG_BUF msg_buf; /* message buffer */ T_APIMSG_MSGBUF_HEADER *msg_hdr; /* Pointer to the message header */ RET_API ret_api; /* Return value */ @@ -905,13 +917,13 @@ inline RET_API VehicleSndMsg(PNO pno_src, PNO pno_dest, CID cid, u_int16 msg_len /* Internal Process Transmission and Reception Messages */ ret_api = _pb_SndMsg(pno_dest, - (u_int16)(sizeof(T_APIMSG_MSGBUF_HEADER) + msg_len), + (uint16_t)(sizeof(T_APIMSG_MSGBUF_HEADER) + msg_len), reinterpret_cast(&msg_buf), 0); } else { /* External Process Transmission and Reception Messages */ ret_api = _pb_SndMsg_Ext(thread_name, cid, - (u_int16)(msg_len), /* Ignore->MISRA-C++:2008 Rule 5-0-5 */ + (uint16_t)(msg_len), /* Ignore->MISRA-C++:2008 Rule 5-0-5 */ reinterpret_cast(&(msg_buf.data)), 0); } FRAMEWORKUNIFIEDLOG(ZONE_26, __FUNCTION__, "-"); diff --git a/positioning/client/include/POS_sensor_private.h b/positioning/client/include/POS_sensor_private.h index a324eae7..1e1497f9 100644 --- a/positioning/client/include/POS_sensor_private.h +++ b/positioning/client/include/POS_sensor_private.h @@ -1,5 +1,5 @@ /* - * @copyright Copyright (c) 2016-2019 TOYOTA MOTOR CORPORATION. + * @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. @@ -107,15 +107,6 @@ typedef struct { u_int8 data[SENSOR_MSGBUF_DSIZE]; /* message body */ } SENSOR_INTERNAL_MSG_BUF; -/******************************************************************************** - * TAG TG_GPS_RET_TIMESET_MSG - * ABSTRACT :GPS Time Setting Response Message Structure - ********************************************************************************/ -typedef struct { - T_APIMSG_MSGBUF_HEADER header; /* Message header */ - uint64_t status; /* Response status */ -} TG_GPS_RET_TIMESET_MSG; - /******************************************************************************** * TAG :TG_GPSTIME * ABSTRACT :GPS Absolute Time Structure diff --git a/positioning/client/include/SensorLocation_API.h b/positioning/client/include/SensorLocation_API.h index 4befe2d4..ae7f20a0 100644 --- a/positioning/client/include/SensorLocation_API.h +++ b/positioning/client/include/SensorLocation_API.h @@ -1,5 +1,5 @@ /* - * @copyright Copyright (c) 2016-2019 TOYOTA MOTOR CORPORATION. + * @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. diff --git a/positioning/client/include/SensorLocation_API_private.h b/positioning/client/include/SensorLocation_API_private.h index fa2ab503..d37d9eb3 100644 --- a/positioning/client/include/SensorLocation_API_private.h +++ b/positioning/client/include/SensorLocation_API_private.h @@ -1,5 +1,5 @@ /* - * @copyright Copyright (c) 2016-2019 TOYOTA MOTOR CORPORATION. + * @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. diff --git a/positioning/client/include/SensorMotion_API.h b/positioning/client/include/SensorMotion_API.h index 24e0e97b..2db5511b 100644 --- a/positioning/client/include/SensorMotion_API.h +++ b/positioning/client/include/SensorMotion_API.h @@ -1,5 +1,5 @@ /* - * @copyright Copyright (c) 2016-2019 TOYOTA MOTOR CORPORATION. + * @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. diff --git a/positioning/client/include/Sensor_API.h b/positioning/client/include/Sensor_API.h index f86a2891..b49b4ac5 100644 --- a/positioning/client/include/Sensor_API.h +++ b/positioning/client/include/Sensor_API.h @@ -1,5 +1,5 @@ /* - * @copyright Copyright (c) 2016-2019 TOYOTA MOTOR CORPORATION. + * @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. @@ -33,24 +33,4 @@ typedef struct { uint16_t wkn; /**< GPS rollover base week number */ } SENSOR_WKNROLLOVER; -/************************************************************************ -* prototype declalation * -************************************************************************/ -/*[SENSOR_API public API]*/ -#ifdef __cplusplus -extern "C" { -#endif -SENSOR_RET_API SensorPkgDeliveryEntry(PNO pno, u_int8 pkg_num, DID *did, u_int8 ctrl_flg, u_int8 delivery_timing); -SENSOR_RET_API SensorPkgDeliveryEntryExt(PNO pno, u_int8 pkg_num, DID *did, u_int8 ctrl_flg, u_int8 delivery_timing); -int32 SensorGetSensorPkgData(PNO pno, u_int8 pkg_num, DID *did, void *dest_data, u_int16 dest_size); -RET_API SensorReqGpsReset(PNO proc_no, u_int8 mode, RID req_id); -SENSOR_RET_API GpsGetGpsInterruptSignal(GPS_INTERRUPT *gps_interrupt); -SENSOR_RET_API SensorGetGyroConnectStatus(u_int8 *gyro_connect_status); -SENSOR_RET_API GpsGetValidEphemerisNumberOnShutdown(u_int8 *valid_ephemeris_num); -SENSOR_RET_API ClockGetLocalTimeOnShutdown(LOCALTIME *local_time); -int32 VehicleGetVehicleData(PNO pno, DID did, void *dest_data, u_int16 dest_size); -#ifdef __cplusplus -} -#endif - #endif // POSITIONING_CLIENT_INCLUDE_SENSOR_API_H_ diff --git a/positioning/client/include/Sensor_API_private.h b/positioning/client/include/Sensor_API_private.h index 9314316c..c3b5f54d 100644 --- a/positioning/client/include/Sensor_API_private.h +++ b/positioning/client/include/Sensor_API_private.h @@ -1,5 +1,5 @@ /* - * @copyright Copyright (c) 2016-2019 TOYOTA MOTOR CORPORATION. + * @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. @@ -25,7 +25,7 @@ /************************************************************************ * Macro definitions * ************************************************************************/ -#define SENSOR_PUBLIC_DID_NUM 25 +#define SENSOR_PUBLIC_DID_NUM 31 /*----------------------------------------------------------------------* * Shared Memory Related Extensions * @@ -105,8 +105,8 @@ * ABSTRACT : Shared memory management area ************************************************************************/ typedef struct { - u_int8 lock_info[SENSOR_SHARE_BLOCK_NUM]; /* Usages */ - u_int8 reserve[501]; /* 512-11 */ + uint8_t lock_info[SENSOR_SHARE_BLOCK_NUM]; /* Usages */ + uint8_t reserve[501]; /* 512-11 */ } SENSOR_SHARE_MNG; /************************************************************************ @@ -114,10 +114,10 @@ typedef struct { * ABSTRACT : Shared memory data area(Data section details) ************************************************************************/ typedef struct { - u_int8 pkg_num; /* Number of packages */ - u_int8 reserve[3]; - u_int16 offset[SENSOR_PKG_DELIVERY_MAX]; /* Offset value */ - u_int8 data[SENSOR_SHARE_BLOCK_DSIZE]; /* Data portion */ + uint8_t pkg_num; /* Number of packages */ + uint8_t reserve[3]; + uint16_t offset[SENSOR_PKG_DELIVERY_MAX]; /* Offset value */ + uint8_t data[SENSOR_SHARE_BLOCK_DSIZE]; /* Data portion */ } SENSOR_SHARE_BLOCK_DAT_DAT; /************************************************************************ @@ -125,8 +125,8 @@ typedef struct { * ABSTRACT : Shared memory data area(One block) ************************************************************************/ typedef struct { - u_int16 size; /* Size of the data */ - u_int8 reserve[2]; + uint16_t size; /* Size of the data */ + uint8_t reserve[2]; SENSOR_SHARE_BLOCK_DAT_DAT data; /* Data portion */ } SENSOR_SHARE_BLOCK_DAT; @@ -157,12 +157,12 @@ typedef struct { * Function prototype * ************************************************************************/ RET_API PosDeleteEvent(EventID event_id); -RET_API SensorLinkShareData(void **share_top, u_int32 *share_size, u_int16 *offset); -RET_API SensorUnLinkShareData(SENSOR_SHARE *share_top, u_int16 offset); +RET_API SensorLinkShareData(void **share_top, uint32_t *share_size, uint16_t *offset); +RET_API SensorUnLinkShareData(SENSOR_SHARE *share_top, uint16_t offset); EventID PosCreateEvent(PNO pno); -void SensorSetShareData(void *share_top, u_int16 offset, const void *data_src, u_int16 size_src); -RET_API PosSndMsg(PNO pno_src, PNO pno_dest, CID cid, u_int16 msg_len, const void *msg_data); +void SensorSetShareData(void *share_top, uint16_t offset, const void *data_src, uint16_t size_src); +RET_API PosSndMsg(PNO pno_src, PNO pno_dest, CID cid, uint16_t msg_len, const void *msg_data); BOOL SensorJudgeDid(DID did, uint8_t mode); diff --git a/positioning/client/include/Sensor_Common_API.h b/positioning/client/include/Sensor_Common_API.h index f2c8c6d4..5631e837 100644 --- a/positioning/client/include/Sensor_Common_API.h +++ b/positioning/client/include/Sensor_Common_API.h @@ -1,5 +1,5 @@ /* - * @copyright Copyright (c) 2016-2019 TOYOTA MOTOR CORPORATION. + * @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. @@ -41,146 +41,95 @@ /* VEHICLE__DID */ /* ++ PastModel002 Support_UBX_Protocol_DID */ -#define VEHICLE_DID_GPS_UBLOX_NAV_POSLLH 0x00000000 -#define VEHICLE_DID_GPS_UBLOX_NAV_STATUS 0x00000001 -#define VEHICLE_DID_GPS_UBLOX_NAV_TIMEUTC 0x00000002 -#define VEHICLE_DID_GPS_UBLOX_NAV_VELNED 0x00000003 -#define VEHICLE_DID_GPS_UBLOX_NAV_DOP 0x00000004 -#define VEHICLE_DID_GPS_UBLOX_NAV_TIMEGPS 0x00000005 -#define VEHICLE_DID_GPS_UBLOX_NAV_SVINFO 0x00000006 -#define VEHICLE_DID_GPS_UBLOX_NAV_CLOCK 0x00000007 -#define VEHICLE_DID_GPS_UBLOX_MON_HW 0x00000008 -#define VEHICLE_DID_GPS_UBLOX_ACK_ACK 0x00000009 -#define VEHICLE_DID_GPS_UBLOX_ACK_NAK 0x0000000A -#define VEHICLE_DID_GPS_UBLOX_CFG_RST 0x0000000B -#define VEHICLE_DID_GPS_UBLOX_AID_INI 0x0000000C -#define VEHICLE_DID_GPS_UBLOX_AID_EPH 0x0000000D -#define VEHICLE_DID_GPS_UBLOX_CFG_MSG 0x0000000E -#define VEHICLE_DID_GPS_UBLOX_CFG_NAVX5 0x0000000F +#define VEHICLE_DID_GPS_UBLOX_NAV_POSLLH 0x80000060 +#define VEHICLE_DID_GPS_UBLOX_NAV_STATUS 0x80000061 +#define VEHICLE_DID_GPS_UBLOX_NAV_TIMEUTC 0x80000062 +#define VEHICLE_DID_GPS_UBLOX_NAV_VELNED 0x80000063 +#define VEHICLE_DID_GPS_UBLOX_NAV_DOP 0x80000064 +#define VEHICLE_DID_GPS_UBLOX_NAV_TIMEGPS 0x80000065 +#define VEHICLE_DID_GPS_UBLOX_NAV_SVINFO 0x80000066 +#define VEHICLE_DID_GPS_UBLOX_NAV_CLOCK 0x80000067 +#define VEHICLE_DID_GPS_UBLOX_MON_HW 0x80000068 +#define VEHICLE_DID_GPS_UBLOX_ACK_ACK 0x80000069 +#define VEHICLE_DID_GPS_UBLOX_ACK_NAK 0x8000006A +#define VEHICLE_DID_GPS_UBLOX_CFG_RST 0x8000006B +#define VEHICLE_DID_GPS_UBLOX_AID_INI 0x8000006C +#define VEHICLE_DID_GPS_UBLOX_AID_EPH 0x8000006D +#define VEHICLE_DID_GPS_UBLOX_CFG_MSG 0x8000006E +#define VEHICLE_DID_GPS_UBLOX_CFG_NAVX5 0x8000006F /* -- PastModel002 Support_UBX_Protocol_DID */ /* ++ used internally by the DR */ -#define VEHICLE_DID_GPS_COUNTER 0x00000010 -#define VEHICLE_DID_GYRO_EXT 0x00000011 /* 3 to 14bit A/D value,0bit:REV */ - -#define VEHICLE_DID_DR_LONGITUDE 0x00000012 -#define VEHICLE_DID_DR_LATITUDE 0x00000013 -#define VEHICLE_DID_DR_ALTITUDE 0x00000014 -#define VEHICLE_DID_DR_SPEED 0x00000015 -#define VEHICLE_DID_DR_HEADING 0x00000016 -#define VEHICLE_DID_DR_SNS_COUNTER 0x00000017 -#define VEHICLE_DID_DR_GYRO_OFFSET 0x00000018 -#define VEHICLE_DID_DR_GYRO_SCALE_FACTOR 0x00000019 -#define VEHICLE_DID_DR_GYRO_SCALE_FACTOR_LEVEL 0x0000001A -#define VEHICLE_DID_DR_SPEED_PULSE_SCALE_FACTOR 0x0000001B -#define VEHICLE_DID_DR_SPEED_PULSE_SCALE_FACTOR_LEVEL 0x0000001C +#define VEHICLE_DID_GPS_COUNTER 0x8000001B +#define VEHICLE_DID_GYRO_EXT 0x80000027 + +#define VEHICLE_DID_DR_LONGITUDE 0x80000070 +#define VEHICLE_DID_DR_LATITUDE 0x80000071 +#define VEHICLE_DID_DR_ALTITUDE 0x80000072 +#define VEHICLE_DID_DR_SPEED 0x80000073 +#define VEHICLE_DID_DR_HEADING 0x80000074 +#define VEHICLE_DID_DR_SNS_COUNTER 0x80000075 +#define VEHICLE_DID_DR_GYRO_OFFSET 0x80000078 +#define VEHICLE_DID_DR_GYRO_SCALE_FACTOR 0x80000079 +#define VEHICLE_DID_DR_GYRO_SCALE_FACTOR_LEVEL 0x8000007A +#define VEHICLE_DID_DR_SPEED_PULSE_SCALE_FACTOR 0x8000007B +#define VEHICLE_DID_DR_SPEED_PULSE_SCALE_FACTOR_LEVEL 0x8000007C /* -- used internally by the DR */ /* ++ PastModel002 Support_DID */ -#define VEHICLE_DID_GYRO_TROUBLE 0x0000001D -#define VEHICLE_DID_MAIN_GPS_INTERRUPT_SIGNAL 0x0000001E -#define VEHICLE_DID_SYS_GPS_INTERRUPT_SIGNAL 0x0000001F -#define VEHICLE_DID_GYRO_CONNECT_STATUS 0x00000020 -#define VEHICLE_DID_VALID_EPH_NUM 0x00000021 +#define VEHICLE_DID_GYRO_TROUBLE 0x80000080 +#define VEHICLE_DID_MAIN_GPS_INTERRUPT_SIGNAL 0x80000081 +#define VEHICLE_DID_SYS_GPS_INTERRUPT_SIGNAL 0x80000082 +#define VEHICLE_DID_GYRO_CONNECT_STATUS 0x80000083 +#define VEHICLE_DID_VALID_EPH_NUM 0x80000084 /* -- PastModel002 Support_DID */ /* ++ Not supported by UBX_Protocol */ -#define VEHICLE_DID_2WD4WD 0x00000022 -#define VEHICLE_DID_TEST 0x00000023 -#define VEHICLE_DID_VTRADAPTER 0x00000024 -#define VEHICLE_DID_AUXADAPTER 0x00000025 -#define VEHICLE_DID_PANELTEMP 0x00000026 -#define VEHICLE_DID_MINIJACK 0x00000027 -#define VEHICLE_DID_SIRF_BINARY 0x00000028 -#define VEHICLE_DID_RTC 0x00000029 -#define VEHICLE_DID_SATELLITE_STATUS 0x0000002A -#define VEHICLE_DID_LOCATION 0x0000002B -#define VEHICLE_DID_BACKDOOR_LINE 0x0000002C -#define VEHICLE_DID_ADIM_LINE 0x0000002D -#define VEHICLE_DID_BACKDOOR_CAN 0x0000002E -#define VEHICLE_DID_ADIM_CAN 0x0000002F -#define VEHICLE_DID_GGA 0x00000030 -#define VEHICLE_DID_GLL 0x00000031 -#define VEHICLE_DID_GSA 0x00000032 -#define VEHICLE_DID_GSV 0x00000033 -#define VEHICLE_DID_RMC 0x00000034 -#define VEHICLE_DID_VTG 0x00000035 -#define VEHICLE_DID_TOUCH 0x00000036 -#define VEHICLE_DID_KEY 0x00000037 -#define VEHICLE_DID_REMO 0x00000038 -#define VEHICLE_DID_VSC1S03 0x00000039 -#define VEHICLE_DID_ECO1S01 0x0000003A -#define VEHICLE_DID_ENG1F07 0x0000003B -#define VEHICLE_DID_ENG1S03 0x0000003C -#define VEHICLE_DID_ACN1S04 0x0000003D -#define VEHICLE_DID_ACN1S05 0x0000003E -#define VEHICLE_DID_ACN1S06 0x0000003F -#define VEHICLE_DID_ACN1S08 0x00000040 -#define VEHICLE_DID_ACN1S07 0x00000041 -#define VEHICLE_DID_EHV1S90 0x00000042 -#define VEHICLE_DID_ECT1S92 0x00000043 -#define VEHICLE_DID_ENG1S28 0x00000044 -#define VEHICLE_DID_BGM1S01 0x00000045 -#define VEHICLE_DID_ENG1F03 0x00000046 -#define VEHICLE_DID_CAA1N01 0x00000047 -#define VEHICLE_DID_MET1S01 0x00000048 -#define VEHICLE_DID_MET1S03 0x00000049 -#define VEHICLE_DID_MET1S04 0x0000004A -#define VEHICLE_DID_MET1S05 0x0000004B -#define VEHICLE_DID_MET1S07 0x0000004C -#define VEHICLE_DID_BDB1S01 0x0000004D -#define VEHICLE_DID_BDB1S03 0x0000004E -#define VEHICLE_DID_BDB1S08 0x0000004F -#define VEHICLE_DID_BDB1F03 0x00000050 -#define VEHICLE_DID_TPM1S02 0x00000051 -#define VEHICLE_DID_TPM1S03 0x00000052 -#define VEHICLE_DID_ENG1S92 0x00000053 -#define VEHICLE_DID_MMT1S52 0x00000054 -#define VEHICLE_DID_EPB1S01 0x00000055 -#define VEHICLE_DID_GPS__CWORD82__NMEA 0x00000056 -#define VEHICLE_DID_GPS__CWORD82__SETINITIAL 0x00000057 -#define VEHICLE_DID_GPS__CWORD82__SETRMODE 0x00000058 -#define VEHICLE_DID_GPS__CWORD82__SETRMODEEX 0x00000059 -#define VEHICLE_DID_GPS__CWORD82__SELSENT 0x0000005A -#define VEHICLE_DID_GPS__CWORD82__SETSBAS 0x0000005B -#define VEHICLE_DID_GPS__CWORD82__SETCONF1 0x0000005C -#define VEHICLE_DID_GPS__CWORD82__SETCONF2 0x0000005D -#define VEHICLE_DID_GPS__CWORD82__NMEA_GGA_INTERNAL 0x0000005E -#define VEHICLE_DID_GPS__CWORD82__NMEA_DGGA_INTERNAL 0x0000005F -#define VEHICLE_DID_GPS__CWORD82__NMEA_VTG_INTERNAL 0x00000060 -#define VEHICLE_DID_GPS__CWORD82__NMEA_RMC_INTERNAL 0x00000061 -#define VEHICLE_DID_GPS__CWORD82__NMEA_DRMC_INTERNAL 0x00000062 -#define VEHICLE_DID_GPS__CWORD82__NMEA_GLL_INTERNAL 0x00000063 -#define VEHICLE_DID_GPS__CWORD82__NMEA_DGLL_INTERNAL 0x00000064 -#define VEHICLE_DID_GPS__CWORD82__NMEA_GSA_INTERNAL 0x00000065 -#define VEHICLE_DID_GPS__CWORD82__NMEA_GSV1_INTERNAL 0x00000066 -#define VEHICLE_DID_GPS__CWORD82__NMEA_GSV2_INTERNAL 0x00000067 -#define VEHICLE_DID_GPS__CWORD82__NMEA_GSV3_INTERNAL 0x00000068 -#define VEHICLE_DID_GPS__CWORD82__NMEA_PJRDC_GP_3_INTERNAL 0x00000069 -#define VEHICLE_DID_LOCATION_LONLAT 0x0000006A -#define VEHICLE_DID_LOCATION_ALTITUDE 0x0000006B -#define VEHICLE_DID_MOTION_SPEED 0x0000006C -#define VEHICLE_DID_MOTION_HEADING 0x0000006D -#define VEHICLE_DID_GPS_TIME 0x0000006E -#define VEHICLE_DID_NAVIINFO_DIAG_GPS 0x0000006F -#define VEHICLE_DID_GPSWEEKCOR_CNT 0x00000070 - -#define VEHICLE_DID_GPS_CUSTOMDATA_NAVI 0x00000071 -#define VEHICLE_DID_LOCATION_LONLAT_NAVI 0x00000072 -#define VEHICLE_DID_LOCATION_ALTITUDE_NAVI 0x00000073 -#define VEHICLE_DID_MOTION_SPEED_NAVI 0x00000074 -#define VEHICLE_DID_MOTION_HEADING_NAVI 0x00000075 -#define VEHICLE_DID_SETTINGTIME 0x00000076 - -#define VEHICLE_DID_LOCATIONINFO_NMEA_NAVI 0x00000077 - -#define VEHICLE_DID_MOTION_SPEED_INTERNAL 0x00000078 - -#define VEHICLE_DID_GPS_TIME_RAW 0x00000079U /* QAC 1281 */ -#define VEHICLE_DID_GPS_WKNROLLOVER 0x0000007AU /* QAC 1281 */ - -#define VEHICLE_DID_SPEED_PULSE_VEHICLE (0x00000080UL) +#define VEHICLE_DID_LOCATION 0x80000020 +#define VEHICLE_DID_GPS__CWORD82__NMEA POS_DID_GPS__CWORD82__NMEA +#define VEHICLE_DID_GPS__CWORD82__SETINITIAL POS_DID_GPS__CWORD82__SETINITIAL +#define VEHICLE_DID_GPS__CWORD82__SETRMODE 0x80000034 +#define VEHICLE_DID_GPS__CWORD82__SETRMODEEX POS_DID_GPS__CWORD82__SETRMODEEX +#define VEHICLE_DID_GPS__CWORD82__SELSENT POS_DID_GPS__CWORD82__SELSENT +#define VEHICLE_DID_GPS__CWORD82__SETSBAS 0x80000037 +#define VEHICLE_DID_GPS__CWORD82__SETCONF1 0x80000038 +#define VEHICLE_DID_GPS__CWORD82__SETCONF2 0x80000039 +#define VEHICLE_DID_GPS__CWORD82__NMEA_GGA_INTERNAL 0xA050 +#define VEHICLE_DID_GPS__CWORD82__NMEA_DGGA_INTERNAL 0xA051 +#define VEHICLE_DID_GPS__CWORD82__NMEA_VTG_INTERNAL 0xA052 +#define VEHICLE_DID_GPS__CWORD82__NMEA_RMC_INTERNAL 0xA053 +#define VEHICLE_DID_GPS__CWORD82__NMEA_DRMC_INTERNAL 0xA054 +#define VEHICLE_DID_GPS__CWORD82__NMEA_GLL_INTERNAL 0xA055 +#define VEHICLE_DID_GPS__CWORD82__NMEA_DGLL_INTERNAL 0xA056 +#define VEHICLE_DID_GPS__CWORD82__NMEA_GSA_INTERNAL 0xA057 +#define VEHICLE_DID_GPS__CWORD82__NMEA_GSV1_INTERNAL 0xA058 +#define VEHICLE_DID_GPS__CWORD82__NMEA_GSV2_INTERNAL 0xA059 +#define VEHICLE_DID_GPS__CWORD82__NMEA_GSV3_INTERNAL 0xA060 +#define VEHICLE_DID_GPS__CWORD82__NMEA_PJRDC_GP_3_INTERNAL 0xA061 +#define VEHICLE_DID_LOCATION_LONLAT 0x80000095 +#define VEHICLE_DID_LOCATION_ALTITUDE 0x80000096 +#define VEHICLE_DID_MOTION_SPEED 0x80000062 +#define VEHICLE_DID_MOTION_HEADING 0x80000097 +#define VEHICLE_DID_GPS_TIME 0x80000098 +#define VEHICLE_DID_NAVIINFO_DIAG_GPS 0x80000099 +#define VEHICLE_DID_GPSWEEKCOR_CNT 0x8000009A + +#define VEHICLE_DID_GPS_CUSTOMDATA_NAVI 0x800000A0 +#define VEHICLE_DID_LOCATION_LONLAT_NAVI 0x800000A1 +#define VEHICLE_DID_LOCATION_ALTITUDE_NAVI 0x800000A2 +#define VEHICLE_DID_MOTION_SPEED_NAVI 0x800000A3 +#define VEHICLE_DID_MOTION_HEADING_NAVI 0x800000A4 +#define VEHICLE_DID_SETTINGTIME 0x800000A5 + +#define VEHICLE_DID_LOCATIONINFO_NMEA_NAVI 0x800000A6 + +#define VEHICLE_DID_MOTION_SPEED_INTERNAL 0x800000B0 + +#define VEHICLE_DID_GPS_TIME_RAW 0x800000B1U /* QAC 1281 */ +#define VEHICLE_DID_GPS_WKNROLLOVER 0x800000B2U /* QAC 1281 */ + +#define VEHICLE_DID_SPEED_PULSE_VEHICLE (0x80000044UL) /* -- Not supported by UBX_Protocol */ diff --git a/positioning/client/include/VehicleDebug_API.h b/positioning/client/include/VehicleDebug_API.h index 101da4fc..e0c9ef20 100644 --- a/positioning/client/include/VehicleDebug_API.h +++ b/positioning/client/include/VehicleDebug_API.h @@ -1,5 +1,5 @@ /* - * @copyright Copyright (c) 2016-2019 TOYOTA MOTOR CORPORATION. + * @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. diff --git a/positioning/client/include/Vehicle_API.h b/positioning/client/include/Vehicle_API.h index cd50827e..78450c54 100644 --- a/positioning/client/include/Vehicle_API.h +++ b/positioning/client/include/Vehicle_API.h @@ -1,5 +1,5 @@ /* - * @copyright Copyright (c) 2016-2019 TOYOTA MOTOR CORPORATION. + * @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. @@ -94,7 +94,7 @@ typedef struct { ************************************************************************/ typedef struct { T_APIMSG_MSGBUF_HEADER hdr; /* Message header */ -// VEHICLE_MSG_SEND_DAT data; /* Message data */ + VEHICLE_MSG_SEND_DAT data; /* Message data */ } VEHICLE_MSG_SEND; /* -- GPS _CWORD82_ support */ diff --git a/positioning/client/include/Vehicle_API_Dummy.h b/positioning/client/include/Vehicle_API_Dummy.h index ad7a7f31..b242ac6d 100644 --- a/positioning/client/include/Vehicle_API_Dummy.h +++ b/positioning/client/include/Vehicle_API_Dummy.h @@ -1,5 +1,5 @@ /* - * @copyright Copyright (c) 2016-2019 TOYOTA MOTOR CORPORATION. + * @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. diff --git a/positioning/client/include/Vehicle_API_private.h b/positioning/client/include/Vehicle_API_private.h index dfe082dd..ad92ddbf 100644 --- a/positioning/client/include/Vehicle_API_private.h +++ b/positioning/client/include/Vehicle_API_private.h @@ -1,5 +1,5 @@ /* - * @copyright Copyright (c) 2016-2019 TOYOTA MOTOR CORPORATION. + * @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. @@ -118,7 +118,7 @@ typedef struct { * Function prototype * ************************************************************************/ RET_API VehicleDeleteEvent(EventID event_id); -RET_API VehicleLinkShareData(void **share_top, u_int32 *share_size, u_int16 *offset); +RET_API VehicleLinkShareData(void **share_top, uint32_t *share_size, uint16_t *offset); RET_API VehicleUnLinkShareData(VEHICLE_SHARE *share_top, u_int16 offset); EventID VehicleCreateEvent(PNO pno); void PosSetShareData(void *share_top, u_int16 offset, const void *data_src, u_int16 size_src); diff --git a/positioning/client/include/vehicle_service/POS_common_API.h b/positioning/client/include/vehicle_service/POS_common_API.h index fb1b834a..5ee30055 100644 --- a/positioning/client/include/vehicle_service/POS_common_API.h +++ b/positioning/client/include/vehicle_service/POS_common_API.h @@ -1,5 +1,5 @@ /* - * @copyright Copyright (c) 2016-2019 TOYOTA MOTOR CORPORATION. + * @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. @@ -36,7 +36,7 @@ * Incluce * *---------------------------------------------------------------------------------*/ #include -//#include +#include /*---------------------------------------------------------------------------------* * Definition * @@ -61,11 +61,42 @@ /* Command ID */ /* Vehicle sensor information notification CID (Rate information) */ -#define CID_POSIF_REGISTER_LISTENER_SPEED (0x0203) //!< \~english Delivery speed + +/** + * \~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 Delivery longitude and latitude -#define CID_POSIF_REGISTER_LISTENER_ALTITUDE 0x0782 //!< \~english Delivery altitude -#define CID_POSIF_REGISTER_LISTENER_HEADING 0x0783 //!< \~english Delivery heading + +/** + * \~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 * @@ -94,7 +125,7 @@ typedef struct { * \~english longitude and latitude information data delivery message */ typedef struct { -// SENSORLOCATION_LONLATINFO_DAT data; + SENSORLOCATION_LONLATINFO_DAT data; //!< \~english longitude and latitude information data } SENSORLOCATION_MSG_LONLATINFO; @@ -103,7 +134,7 @@ typedef struct { * \~english altitude information data delivery message */ typedef struct { -// SENSORLOCATION_ALTITUDEINFO_DAT data; //!< \~english altitude information data + SENSORLOCATION_ALTITUDEINFO_DAT data; //!< \~english altitude information data } SENSORLOCATION_MSG_ALTITUDEINFO; /** @@ -111,7 +142,7 @@ typedef struct { * \~english heading information data delivery message */ typedef struct { -// SENSORMOTION_HEADINGINFO_DAT data; //!< \~english heading information data + SENSORMOTION_HEADINGINFO_DAT data; //!< \~english heading information data } SENSORMOTION_MSG_HEADINGINFO; /** @@ -119,7 +150,7 @@ typedef struct { * \~english speed information data delivery message */ typedef struct { -// SENSORMOTION_SPEEDINFO_DAT data; //!< \~english speed information data + SENSORMOTION_SPEEDINFO_DAT data; //!< \~english speed information data } SENSORMOTION_MSG_SPEEDINFO; @@ -264,7 +295,7 @@ extern "C" { /// Notification of message /// - After registered successfully, vehicle sensor information will been sent as system API \n /// message with following format.\n -/// Command ID : CID_POSIF_REGISTER_LISTENER_LONLAT \n +/// Command ID : @ref CID_POSIF_REGISTER_LISTENER_LONLAT \n /// message structure /// \~english @code /// typedef struct { @@ -278,8 +309,6 @@ extern "C" { /// uint8_t getMethod; /* get method */ /// uint8_t SyncCnt; /* Synchrony count */ /// uint8_t isEnable; /* enable or not */ -/// uint8_t isExistDR; /* DR exist or not[not used] */ -/// uint8_t DRStatus /* DR status[not used] */ /// uint8_t posSts; /* position status */ /// uint16_t posAcc; /* Position accuracy */ /// int32_t Longitude; /* Longitude */ @@ -346,7 +375,7 @@ POS_RET_API POS_RegisterListenerLonLat(HANDLE hApp, PCSTR notifyName, uint8_t uc /// \~english @param [in] ucDeliveryTiming /// - uint8_t - Delivery timing(change/update) /// \~english @param [in] ucGetMethod -/// - uint8_t - Get method(GPS/Navi/Not specified) +/// - uint8_t - Get method(GPS/Not specified) /// /// \~english @par /// - Delivery control flag(ucCtrlFlg) @@ -361,7 +390,6 @@ POS_RET_API POS_RegisterListenerLonLat(HANDLE hApp, PCSTR notifyName, uint8_t uc /// vehicle sensor. /// - Get method(ucGetMethod) /// - SENSOR_GET_METHOD_GPS - GPS. The altitude from GPS will be deliveried. -/// - SENSOR_GET_METHOD_NAVI - Navi. The altitude from Navigation 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 @@ -454,7 +482,7 @@ POS_RET_API POS_RegisterListenerLonLat(HANDLE hApp, PCSTR notifyName, uint8_t uc /// \~english @par /// Notification of message /// - After registered successfully, vehicle sensor will send system API message with following format. \n -/// Command ID : CID_POSIF_REGISTER_LISTENER_ALTITUDE \n +/// Command ID : @ref CID_POSIF_REGISTER_LISTENER_ALTITUDE \n /// message structure /// \~english @code /// typedef struct { @@ -467,21 +495,17 @@ POS_RET_API POS_RegisterListenerLonLat(HANDLE hApp, PCSTR notifyName, uint8_t uc /// uint8_t getMethod; /* get method */ /// uint8_t SyncCnt; /* synchrony count */ /// uint8_t isEnable; /* enable or not */ -/// uint8_t isExistDR; /* DR exist or not[not used] */ -/// uint8_t DRStatus /* DR status[not used] */ /// 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 -/// - 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 +/// 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 @@ -491,7 +515,6 @@ POS_RET_API POS_RegisterListenerLonLat(HANDLE hApp, PCSTR notifyName, uint8_t uc /// - 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) @@ -629,7 +652,7 @@ POS_RET_API POS_RegisterListenerAltitude(HANDLE hApp, PCSTR notifyName, uint8_t /// \~english @par /// Notification of message /// - After registered successfully, vehicle sensor will send system API message with following format. \n -/// Command ID : CID_POSIF_REGISTER_LISTENER_SPEED \n +/// Command ID : @ref CID_POSIF_REGISTER_LISTENER_SPEED \n /// message structure /// \~english @code /// typedef struct { @@ -642,9 +665,7 @@ POS_RET_API POS_RegisterListenerAltitude(HANDLE hApp, PCSTR notifyName, uint8_t /// uint8_t getMethod; /* get method */ /// uint8_t SyncCnt; /* synchrony count */ /// uint8_t isEnable; /* enable or not */ -/// uint8_t isExistDR; /* DR exist or not[not used] */ /// uint8_t Reserve1[3]; /* Reserve */ -/// uint8_t DRStatus /* DR status[not used] */ /// uint16_t Speed; /* speed(unit:0.01m/sec) */ /// uint8_t Reserve2[2]; /* Reserve */ /// } SENSORMOTION_SPEEDINFO_DAT; @@ -707,7 +728,6 @@ POS_RET_API POS_RegisterListenerSpeed(HANDLE hApp, PCSTR notifyName, uint8_t ucC /// vehicle sensor. /// - 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 will be deliveried \n /// according to the current environment /// - Avaliable method is descriped as following in each environment. \n @@ -798,7 +818,7 @@ POS_RET_API POS_RegisterListenerSpeed(HANDLE hApp, PCSTR notifyName, uint8_t ucC /// \~english @par /// Notification of message /// - After registered successfully, vehicle sensor will send system API message with following format. \n -/// Command ID : CID_POSIF_REGISTER_LISTENER_HEADING \n +/// Command ID : @ref CID_POSIF_REGISTER_LISTENER_HEADING \n /// message structure /// \~english @code /// typedef struct { @@ -811,8 +831,6 @@ POS_RET_API POS_RegisterListenerSpeed(HANDLE hApp, PCSTR notifyName, uint8_t ucC /// uint8_t getMethod; /* get method */ /// uint8_t SyncCnt; /* sync count */ /// uint8_t isEnable; /* enable or not */ -/// uint8_t isExistDR; /* DR exist or not[not used] */ -/// uint8_t DRStatus /* DR status[not used] */ /// uint8_t posSts; /* position status */ /// uint8_t Reserve1[2]; /* Reserve */ /// uint16_t Heading; /* heading(unit:0.01degree) */ @@ -889,8 +907,6 @@ POS_RET_API POS_RegisterListenerHeading(HANDLE hApp, PCSTR notifyName, uint8_t u /// uint8_t getMethod; /* get method */ /// uint8_t SyncCnt; /* sync count */ /// uint8_t isEnable; /* enable or not */ -/// uint8_t isExistDR; /* DR exist or not[not used] */ -/// uint8_t DRStatus /* DR status[not used] */ /// uint8_t posSts; /* position status */ /// uint16_t posAcc; /* Position accuracy */ /// int32_t Longitude; /* Longitude */ @@ -1025,7 +1041,7 @@ POS_RET_API POS_RegisterListenerHeading(HANDLE hApp, PCSTR notifyName, uint8_t u /// - POS_RegisterListenerLonLat /// //////////////////////////////////////////////////////////////////////////////////////////// -//POS_RET_API POS_GetLonLat(HANDLE hApp, SENSORLOCATION_LONLATINFO_DAT *dat, uint9_t ucGetMethod); +POS_RET_API POS_GetLonLat(HANDLE hApp, SENSORLOCATION_LONLATINFO_DAT *dat, uint8_t ucGetMethod); //////////////////////////////////////////////////////////////////////////////////////////// /// \ingroup tag_Positioning @@ -1037,12 +1053,11 @@ POS_RET_API POS_RegisterListenerHeading(HANDLE hApp, PCSTR notifyName, uint8_t u /// \~english @param [out] dat /// - SENSORLOCATION_ALTITUDEINFO_DAT* - output pointer to altitude data /// \~english @param [in] ucGetMethod -/// - uint8_t - Get method(GPS/Navi/Not specified) +/// - 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_NAVI - Navi The altitude from Navi 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 @@ -1056,21 +1071,17 @@ POS_RET_API POS_RegisterListenerHeading(HANDLE hApp, PCSTR notifyName, uint8_t u /// uint8_t getMethod; /* get method */ /// uint8_t SyncCnt; /* sync count */ /// uint8_t isEnable; /* enable or not */ -/// uint8_t isExistDR; /* DR exist or not[not used] */ -/// uint8_t DRStatus /* DR status[not used] */ /// 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 -/// - SENSOR_GET_METHOD_NAVI - altitude 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 +/// 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 @@ -1080,7 +1091,6 @@ POS_RET_API POS_RegisterListenerHeading(HANDLE hApp, PCSTR notifyName, uint8_t u /// - 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 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) @@ -1178,7 +1188,7 @@ POS_RET_API POS_RegisterListenerHeading(HANDLE hApp, PCSTR notifyName, uint8_t u /// \~english @see /// - POS_RegisterListenerAltitude //////////////////////////////////////////////////////////////////////////////////////////// -//POS_RET_API POS_GetAltitude(HANDLE hApp, SENSORLOCATION_ALTITUDEINFO_DAT *dat, uint8_t ucGetMethod); +POS_RET_API POS_GetAltitude(HANDLE hApp, SENSORLOCATION_ALTITUDEINFO_DAT *dat, uint8_t ucGetMethod); //////////////////////////////////////////////////////////////////////////////////////////// /// \ingroup tag_Positioning @@ -1210,16 +1220,13 @@ POS_RET_API POS_RegisterListenerHeading(HANDLE hApp, PCSTR notifyName, uint8_t u /// uint8_t getMethod; /* get method */ /// uint8_t SyncCnt; /* sync count */ /// uint8_t isEnable; /* enable or not */ -/// uint8_t isExistDR; /* DR exist or not[not used] */ /// uint8_t Reserve1[3]; /* Reserve */ -/// uint8_t DRStatus /* DR status[not used] */ /// 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 /// - Sync count(SyncCnt) /// - 0. /// - Enable or not(isEnable) \n @@ -1327,7 +1334,7 @@ POS_RET_API POS_RegisterListenerHeading(HANDLE hApp, PCSTR notifyName, uint8_t u /// - POS_RegisterListenerSpeed /// //////////////////////////////////////////////////////////////////////////////////////////// -//POS_RET_API POS_GetSpeed(HANDLE hApp, SENSORMOTION_SPEEDINFO_DAT *dat, uint8_t ucGetMethod); +POS_RET_API POS_GetSpeed(HANDLE hApp, SENSORMOTION_SPEEDINFO_DAT *dat, uint8_t ucGetMethod); //////////////////////////////////////////////////////////////////////////////////////////// /// \ingroup tag_Positioning @@ -1343,8 +1350,9 @@ POS_RET_API POS_RegisterListenerHeading(HANDLE hApp, PCSTR notifyName, uint8_t u /// /// \~english @par /// - Get method(ucGetMethod) -/// - SENSOR_GET_METHOD_GPS - GPS The altitude from GPS will be deliveried. -/// - SENSOR_GET_METHOD_NAVI - Navi The altitude from Navi will be deliveried. +/// - 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 @@ -1356,8 +1364,6 @@ POS_RET_API POS_RegisterListenerHeading(HANDLE hApp, PCSTR notifyName, uint8_t u /// uint8_t getMethod; /* get method */ /// uint8_t SyncCnt; /* sync count */ /// uint8_t isEnable; /* enable or not */ -/// uint8_t isExistDR; /* DR exist or not[not used] */ -/// uint8_t DRStatus /* DR status[not used] */ /// uint8_t posSts; /* position status */ /// uint8_t Reserve1[2]; /* Reserve */ /// uint16_t Heading; /* heading(unit:0.01degree) */ @@ -1485,7 +1491,7 @@ POS_RET_API POS_RegisterListenerHeading(HANDLE hApp, PCSTR notifyName, uint8_t u /// - POS_RegisterListenerHeading /// //////////////////////////////////////////////////////////////////////////////////////////// -//POS_RET_API POS_GetHeading(HANDLE hApp, SENSORMOTION_HEADINGINFO_DAT *dat, uint8_t ucGetMethod); +POS_RET_API POS_GetHeading(HANDLE hApp, SENSORMOTION_HEADINGINFO_DAT *dat, uint8_t ucGetMethod); //////////////////////////////////////////////////////////////////////////////////////////// /// \ingroup tag_Positioning @@ -1648,64 +1654,6 @@ POS_RET_API POS_SetSpeedInfo(HANDLE hApp, uint16_t navispeed); //////////////////////////////////////////////////////////////////////////////////////////// POS_RET_API POS_SetLocationInfo(HANDLE hApp, POS_POSDATA* pstPosData); -//////////////////////////////////////////////////////////////////////////////////////////// -/// \ingroup tag_Positioning -/// \~english @par Brief -/// - Set location NMEA information -/// -/// \~english @param [in] hApp -/// - HANDLE - App Handle -/// \~english @param [in] locationInfo -/// - POS_POSDATA * - pointer to location information NMEA -/// -/// \~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 SENSOR_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 length in parameter locationInfo is invalid value(0). [POS_RET_ERROR_PARAM] -/// - The length in parameter locationInfo is abnormal value(> LOCATIONINFO_NMEA_MAX). [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 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 NMEA data setting message transfer failed. [POS_RET_ERROR_INNER] -/// -/// \~english @par Detail -/// - Call this API to set location nmea 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 -/// -/// \~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 -/// -////////////////////////////////////////////////////////////////////////////////////////////yy -POS_RET_API POS_SetLocationInfoNmea(HANDLE hApp, POS_LOCATIONINFO_NMEA* locationInfo); - #ifdef __cplusplus } #endif diff --git a/positioning/client/include/vehicle_service/POS_define.h b/positioning/client/include/vehicle_service/POS_define.h index 3971c047..2ea918da 100644 --- a/positioning/client/include/vehicle_service/POS_define.h +++ b/positioning/client/include/vehicle_service/POS_define.h @@ -1,5 +1,5 @@ /* - * @copyright Copyright (c) 2016-2019 TOYOTA MOTOR CORPORATION. + * @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. @@ -34,7 +34,7 @@ */ #include -//#include +#include /*---------------------------------------------------------------------------------* * Definition * @@ -48,7 +48,7 @@ /* SENSOR_RET_API */ #define SENSOR_RET_NORMAL 0 //!< \~english normal finish #define SENSOR_RET_ERROR_PID (-1) //!< \~english thread ID error -#define SENSOR_RET_ERROR_DID (-2) //!< \~english data ID error +#define SENSOR_RET_ERROR_DID (-2) //!< \~english unregistered data ID error #define SENSOR_RET_ERROR_DID_DIS (-3) //!< \~english data ID not CAN ID #define SENSOR_RET_ERROR_PARAM (-4) //!< \~english parameter error #define SENSOR_RET_ERROR_BUFFULL (-5) //!< \~english buffer full error diff --git a/positioning/client/include/vehicle_service/POS_gps_API.h b/positioning/client/include/vehicle_service/POS_gps_API.h index 865966c4..41e8e01e 100644 --- a/positioning/client/include/vehicle_service/POS_gps_API.h +++ b/positioning/client/include/vehicle_service/POS_gps_API.h @@ -1,5 +1,5 @@ /* - * @copyright Copyright (c) 2016-2019 TOYOTA MOTOR CORPORATION. + * @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. @@ -37,7 +37,7 @@ * Incluce * *---------------------------------------------------------------------------------*/ #include -//#include +#include /*---------------------------------------------------------------------------------* * Typedef declaration * @@ -54,7 +54,7 @@ typedef int32_t NAVIINFO_RET_API; * \~english @brief GPS time setting result delivery command ID * \~english @brief If you want to catch above envents, use NSFW like below. * \~english @code - * l_eStatus = FrameworkunifiedAttachCallbackToDispatcher(test_params_->h_app,"POS_Main", CID_POSIF_REGISTER_LISTENER_GPS_TIME_SET_REQ, CBCallbackA); + * l_eStatus = FrameworkunifiedAttachCallbackToDispatcher(h_app,POS_NTFY_SEND_THREAD, CID_POSIF_REGISTER_LISTENER_GPS_TIME_SET_REQ, CBCallbackA); * @endcode */ #define CID_POSIF_REGISTER_LISTENER_GPS_TIME_SET_REQ 0x0780 @@ -316,7 +316,7 @@ int32_t POS_ReqGPSSetting(HANDLE hApp, SENSOR_MSG_SEND_DAT *p_data); /// related to data ID [NAVIINFO_RET_ERROR_RESOURCE] /// - The count of message in message queue is reach to max [NAVIINFO_RET_ERROR_RESOURCE] /// - The count of mutex is reach to max [NAVIINFO_RET_ERROR_RESOURCE] -/// - The count of item in ProcessName-ProcessNo convert table is reach to max [SENSOR_RET_ERROR_RESOURCE] +/// - The count of item in ProcessName-ProcessNo convert table is reach to max [NAVIINFO_RET_ERROR_RESOURCE] /// - The message queue name has not been registered in control table. [NAVIINFO_RET_ERROR_INNER] /// - Message transfer HANDLE create failed. [NAVIINFO_RET_ERROR_INNER] /// - Message transfer HANDLE get failed from internal table. [NAVIINFO_RET_ERROR_INNER] @@ -339,7 +339,7 @@ int32_t POS_ReqGPSSetting(HANDLE hApp, SENSOR_MSG_SEND_DAT *p_data); /// \~english @see /// - POS_GetGPSInfo //////////////////////////////////////////////////////////////////////////////////////////// -//NAVIINFO_RET_API POS_SetGPSInfo(HANDLE hApp, NAVIINFO_ALL *navilocinfo); +NAVIINFO_RET_API POS_SetGPSInfo(HANDLE hApp, NAVIINFO_ALL *navilocinfo); //////////////////////////////////////////////////////////////////////////////////////////// /// \ingroup tag_Positioning @@ -520,7 +520,7 @@ int32_t POS_ReqGPSSetting(HANDLE hApp, SENSOR_MSG_SEND_DAT *p_data); /// \~english @see /// - POS_SetGPSInfo //////////////////////////////////////////////////////////////////////////////////////////// -//NAVIINFO_RET_API POS_GetGPSInfo(HANDLE hApp, NAVIINFO_DIAG_GPS *navidiaginfo); +NAVIINFO_RET_API POS_GetGPSInfo(HANDLE hApp, NAVIINFO_DIAG_GPS *navidiaginfo); //////////////////////////////////////////////////////////////////////////////////////////// /// \ingroup tag_Positioning @@ -637,49 +637,6 @@ int32_t POS_ReqGPSSetting(HANDLE hApp, SENSOR_MSG_SEND_DAT *p_data); //////////////////////////////////////////////////////////////////////////////////////////// POS_RET_API POS_ReqGPSReset(HANDLE hApp, PCSTR ResName, uint8_t mode); -//////////////////////////////////////////////////////////////////////////////////////////// -/// \ingroup tag_Positioning -/// \~english @par Brief -/// - Get GPS device version -/// -/// \~english @param [in] hApp -/// - HANDLE - App Handle -/// \~english @param [in] buf_size -/// - uint8_t - size of the output buffer -/// \~english @param [out] buf -/// - int8_t* - output buffer of storing GPS version -/// \~english @param [out] size -/// - uint8_t* - the size of getting GPS version data -/// -/// \~english @retval POS_RET_ERROR_NOSUPPORT unsupported -/// -/// \~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 Detail -/// - Call this API to get GPS device version from vehicle sensor. -/// -/// \~english @par -/// - Please note the following points when use this API. -/// - Current enviroment does not support to get GPS version, and certainly return POS_RET_ERROR_NOSUPPORT. -/// -/// -/// \~english @par Classification -/// - Public -/// -/// \~english @par Type -/// - Fire and Forget -/// -/// \~english @see -/// - None -//////////////////////////////////////////////////////////////////////////////////////////// -POS_RET_API POS_GetGPSVersion(HANDLE hApp, uint8_t buf_size, int8_t* buf, uint8_t* size); - //////////////////////////////////////////////////////////////////////////////////////////// /// \ingroup tag_Positioning /// \~english @par Brief @@ -777,7 +734,7 @@ POS_RET_API POS_GetGPSVersion(HANDLE hApp, uint8_t buf_size, int8_t* buf, uint8_ /// Notification of message /// - After registered successfully, vehicle sensor information will be sent by system \n /// API message with following format. \n -/// Command ID : CID_POSIF_REGISTER_LISTENER_GPS_TIME_SET_REQ \n +/// Command ID : @ref CID_POSIF_REGISTER_LISTENER_GPS_TIME_SET_REQ \n /// time info structure \n /// The year, month, date, hour, minute and second should be the format set to GPS /// \~english @code @@ -877,7 +834,7 @@ POS_RET_API POS_RegisterListenerGPSTimeSetReq(HANDLE hApp, PCSTR notifyName, uin /// \~english @see /// - POS_GetGPStime //////////////////////////////////////////////////////////////////////////////////////////// -//POS_RET_API POS_SetGPStime(HANDLE hApp, POS_DATETIME* pstDateTime); +POS_RET_API POS_SetGPStime(HANDLE hApp, POS_DATETIME* pstDateTime); //////////////////////////////////////////////////////////////////////////////////////////// /// \ingroup tag_Positioning @@ -984,7 +941,6 @@ POS_RET_API POS_RegisterListenerGPSTimeSetReq(HANDLE hApp, PCSTR notifyName, uin /// - 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. -/// - Although registering can be finished, but the data will not be deliveried. /// - After call this API, if the delivery destination thread name has changed, please call this API again. /// /// \~english @par @@ -1168,7 +1124,7 @@ SENSOR_RET_API POS_RegisterListenerGPStime(HANDLE hApp, PCSTR notifyName, uint8_ /// \~english @see /// - POS_SetGPStime //////////////////////////////////////////////////////////////////////////////////////////// -//POS_RET_API POS_GetGPStime(HANDLE hApp, SENSOR_GPSTIME* dat); +POS_RET_API POS_GetGPStime(HANDLE hApp, SENSOR_GPSTIME* dat); #ifdef __cplusplus } diff --git a/positioning/client/include/vehicle_service/POS_sensor_API.h b/positioning/client/include/vehicle_service/POS_sensor_API.h index eade3790..a7a35c4a 100644 --- a/positioning/client/include/vehicle_service/POS_sensor_API.h +++ b/positioning/client/include/vehicle_service/POS_sensor_API.h @@ -1,5 +1,5 @@ /* - * @copyright Copyright (c) 2016-2019 TOYOTA MOTOR CORPORATION. + * @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. @@ -44,24 +44,35 @@ #define POS_DID_SPEED_KMPH 0x80000013 //!< \~english Data ID of KMPH speed #define POS_DID_SNS_COUNTER 0x8000001A //!< \~english Data ID of sensor counter -#define POS_DID_GYRO 0x80000014 //!< \~english Data ID of gyro +#define POS_DID_GYRO_X 0x80000014 //!< \~english Data ID of X axis gyro +#define POS_DID_GYRO_Y 0x80000085 //!< \~english Data ID of Y axis gyro +#define POS_DID_GYRO_Z 0x80000086 //!< \~english Data ID of Z axis gyro +#define POS_DID_GYRO POS_DID_GYRO_X +//!< \~english Data ID of POS_DID_GYRO is same as POS_DID_GYRO_X #define POS_DID_GSNS_X 0x80000015 //!< \~english Data ID of x axis gsensor #define POS_DID_GSNS_Y 0x80000016 //!< \~english Data ID of Y axis gsensor +#define POS_DID_GSNS_Z 0x80000026 //!< \~english Data ID of Z axis gsensor #define POS_DID_REV 0x80000017 //!< \~english Data ID of reverse signal #define POS_DID_GPS_ANTENNA 0x80000019 //!< \~english Data ID of GPS antenna status #define POS_DID_SPEED_PULSE_FST 0x80000028 //!< \~english Data ID of first time speed pulse -#define POS_DID_GYRO_FST 0x80000029 //!< \~english Data ID of first time gyro +#define POS_DID_GYRO_X_FST 0x80000029 //!< \~english Data ID of first time X axis gyro +#define POS_DID_GYRO_Y_FST 0x80000043 //!< \~english Data ID of first time Y axis gyro +#define POS_DID_GYRO_Z_FST 0x80000023 //!< \~english Data ID of first time Z axis gyro +#define POS_DID_GYRO_FST POS_DID_GYRO_X_FST +//!< \~~english Data ID of POS_DID_GYRO_FST is same as POS_DID_GYRO_X_FST #define POS_DID_REV_FST 0x8000007E //!< \~english Data ID of first time reverse signal #define POS_DID_GYRO_TEMP 0x80000090 //!< \~english Data ID of gyro temperature #define POS_DID_GYRO_TEMP_FST 0x80000091 //!< \~english Data ID of first time gyro temperature -#define POS_DID_GSNS_X_FST 0x80000092 +#define POS_DID_GSNS_X_FST 0x80000087 //!< \~english Data ID of first time x axis gsensor -#define POS_DID_GSNS_Y_FST 0x80000093 +#define POS_DID_GSNS_Y_FST 0x80000088 //!< \~english Data ID of first time Y axis gsensor +#define POS_DID_GSNS_Z_FST 0x80000089 +//!< \~english Data ID of first time Z axis gsensor #define POS_DID_PULSE_TIME 0x8000003A //!< \~english Data ID of pulse time #define POS_DID_GPS__CWORD82__NMEA 0x80000030U @@ -77,13 +88,25 @@ #define POS_DID_GPS_CLOCK_FREQ 0x800000B4U //!< \~english Data ID of GPS time frequency data +/** + * \~english @brief Delivery sensor extra package 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_PKG_SENSOR_DATA, CBCallbackA); + * @endcode + */ #define CID_POSIF_REGISTER_LISTENER_PKG_SENSOR_DATA 0x0700 -//!< \~english sensor extra package register command ID +/** + * \~english @brief Delivery sensor information 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_SENSOR_DATA, CBCallbackA); + * @endcode + */ #define CID_POSIF_REGISTER_LISTENER_SENSOR_DATA 0x0200 -//!< \~english sensor information register command ID -#define SENSOR_MSGBUF_DSIZE 2264 +#define SENSOR_MSGBUF_DSIZE 4096 //!< \~english message body maximum size #define SENSOR_VSHEAD_DSIZE 36 @@ -92,8 +115,12 @@ #define SENSOR_VSINFO_DSIZE (SENSOR_MSGBUF_DSIZE - SENSOR_VSHEAD_DSIZE) //!< \~english vehicle sensor data size -#define SENSOR_MSG_VSINFO_DSIZE 1272 +// Same name/value is defined, but client doesn't include HAL header. +// It defines SENSOR_MSG_VSINFO_DSIZE if not included HAL. +#ifndef HAL_API_POSITIONING_HAL_H_ +#define SENSOR_MSG_VSINFO_DSIZE 1904u //!< \~english vehicle sensor message body maximum size +#endif #define SENSOR_PKG_DELIVERY_MAX 16 //!< \~english number of data ID per a package @@ -161,15 +188,19 @@ extern "C" { /// - buffer pointer of the data ID array in package(pulDid) \n /// The data ID set to the first in pulDid is the delivery key. \n /// If the data ID not one of the following be set, return SENSOR_RET_ERROR_PARAM. -/// - POS_DID_SNS_COUNTER - sensor counter(get from sys) -/// - POS_DID_GYRO - gyro output -/// - POS_DID_SPEED_PULSE - speed pulse(count of pulse) +/// - POS_DID_SNS_COUNTER - sensor counter +/// - POS_DID_GYRO_X - gyro output (X axis) +/// - POS_DID_GYRO_Y - gyro output (Y axis) +/// - POS_DID_GYRO_Z - gyro output (Z axis) +/// - POS_DID_SPEED_PULSE - speed pulse /// - POS_DID_REV - REV signal(0:forward 1:backward) -/// - POS_DID_GSNS_X - Gsensor output X axis(15 to 4bit A/D value) -/// - POS_DID_GSNS_Y - Gsensor output Y axis(15 to 4bit A/D value) +/// - POS_DID_GSNS_X - Gsensor output X axis +/// - POS_DID_GSNS_Y - Gsensor output Y axis +/// - POS_DID_GSNS_Z - Gsensor output Z axis /// - POS_DID_GYRO_TEMP - gyro temperature -/// - POS_DID_PULSE_TIME - pulse time(32bit pulse time store count(0-32), \n -/// 32bitx max32 time between pulse[ micro s](1-4294967295 micro s)) \n +/// - POS_DID_PULSE_TIME - pulse time\n +/// \~english @par +/// - Because positioning is G/W between Navi and HAL, value depends on the design of HAL. /// \~english @par /// - Note:The Gsensor output is 0 in the environment without Gsensor hardware.\n /// \~english @par @@ -266,43 +297,43 @@ extern "C" { /// This API return the result of registering. \n /// The data from sensor data received to registering will be deliveried. \n /// The first delivery data is the sensor data(max 64 number of sensor counter, \n -/// reverse signal,gyro temperature, max 640 number of gyro output,speed pulse,Gsensor output(X axis), \n -/// Gsensor output(Y axis), max 2048 number of pulse time) in 6.4 second. \n +/// reverse signal,gyro temperature, max 640 number of gyro output(X axis), gyro output(X axis), gyro output(Z axis), \n +/// speed pulse,Gsensor output(X axis), Gsensor output(Y axis), Gsensor output(Z axis), max 2048 number of pulse time) in 6.4 second. \n /// If the data number is more than max number, delivery the data in newest 6.4 second. \n -/// If the sensor data accumulated more than max number, set VEHICLE_SNS_BREAK to data missing information.\n +/// If the sensor data accumulated more than max number, set VEHICLE_SNS_BREAK to data missing information. \n /// If sensor data number is more than the data number send in one time(10 number of \n -/// sensor counter,reverse signal,gyro temperature, 100 number of gyro output,speed pulse, \n -/// Gsensor output(X axis),Gsensor output(Y axis), 320 number of pulse time), \n -/// the new data is divided into partitions(every partition with 10 number of sensor counter, \n -/// reverse signal,gyro temperature, 100 number of gyro output,speed pulse,Gsensor output(X axis), \n -/// Gsensor output(Y axis), 320 number of pulse time) to delivery. \n +/// sensor counter,reverse signal,gyro temperature, 100 number of gyro output(X axis), gyro output(X axis), gyro output(Z axis), \n +/// speed pulse, Gsensor output(X axis),Gsensor output(Y axis), Gsensor output(Z axis), 320 number of pulse time), \n +/// the old data is divided into partitions(every partition with 10 number of sensor counter, \n +/// reverse signal,gyro temperature, 100 number of gyro output(X axis), gyro output(X axis), gyro output(Z axis), \n +/// speed pulse,Gsensor output(X axis), Gsensor output(Y axis), Gsensor output(Z axis), 320 number of pulse time) to delivery. \n /// The last message for first delivery is the message that the partition count equal to partition No. \n /// After first delivery, the message data(1 number of sensor counter,reverse signal, \n -/// gyro temperature, 10 number of gyro output,speed pulse,Gsensor output(X axis), \n -/// Gsensor output(Y axis), 32 number of pulse time) deliveried. \n +/// gyro temperature, 10 number of gyro output(X axis), gyro output(X axis), gyro output(Z axis),speed pulse, \n +/// Gsensor output(X axis), Gsensor output(Y axis), Gsensor output(Z axis), 32 number of pulse time) deliveried. \n /// And because the data missing information, divided partition count, \n /// diveided partition No is not used, they will be set to 0 in message.\n /// (sample)The sensor data in 6.4 second divided to delivery -/// - 1st message(sensor counter,reverse signal,gyro temperature=10 number, gyro output,speed pulse, \n -/// Gsensor output(X axis),Gsensor output(Y axis)=100 number,pulse time=320 number), divided \n -/// partition count=7,divided partition No=1) -/// - 2nd message(sensor counter,reverse signal,gyro temperature=10 number, gyro output,speed pulse, \n -/// Gsensor output(X axis),Gsensor output(Y axis)=100 number,pulse time=320 number), divided \n -/// partition count=7,divided partition No=2) -/// - 3rd message(sensor counter,reverse signal,gyro temperature=10 number, gyro output,speed pulse, \n -/// Gsensor output(X axis),Gsensor output(Y axis)=100 number,pulse time=320 number), divided \n +/// - 1st message(sensor counter, reverse signal, gyro temperature=10 number, gyro output(X axis), gyro output(Y axis), gyro output(Z axis), speed pulse, \n +/// Gsensor output(X axis), Gsensor output(Y axis), Gsensor output(Z axis)=100 number, pulse time=320 number), divided \n +/// partition count=7, divided partition No=1) +/// - 2nd message(sensor counter, reverse signal, gyro temperature=10 number, gyro output(X axis), gyro output(Y axis), gyro output(Z axis), speed pulse, \n +/// Gsensor output(X axis), Gsensor output(Y axis), Gsensor output(Z axis)=100 number, pulse time=320 number), divided \n +/// partition count=7, divided partition No=2) +/// - 3rd message(sensor counter, reverse signal, gyro temperature=10 number, gyro output(X axis), gyro output(Y axis), gyro output(Z axis), speed pulse, \n +/// Gsensor output(X axis), Gsensor output(Y axis), Gsensor output(Z axis)=100 number, pulse time=320 number), divided \n /// partition count=7,divided partition No=3) -/// - 4th message(sensor counter,reverse signal,gyro temperature=10 number, gyro output,speed pulse, \n -/// Gsensor output(X axis),Gsensor output(Y axis)=100 number,pulse time=320 number), divided \n +/// - 4th message(sensor counter, reverse signal, gyro temperature=10 number, gyro output(X axis), gyro output(Y axis), gyro output(Z axis), speed pulse, \n +/// Gsensor output(X axis), Gsensor output(Y axis), Gsensor output(Z axis)=100 number, pulse time=320 number), divided \n /// partition count=7,divided partition No=4) -/// - 5th message(sensor counter,reverse signal,gyro temperature=10 number, gyro output,speed pulse, \n -/// Gsensor output(X axis),Gsensor output(Y axis)=100 number,pulse time=320 number), divided \n +/// - 5th message(sensor counter, reverse signal, gyro temperature=10 number, gyro output(X axis), gyro output(Y axis), gyro output(Z axis), speed pulse, \n +/// Gsensor output(X axis), Gsensor output(Y axis), Gsensor output(Z axis)=100 number, pulse time=320 number), divided \n /// partition count=7,divided partition No=5) -/// - 6th message(sensor counter,reverse signal,gyro temperature=10 number, gyro output,speed pulse, \n -/// Gsensor output(X axis),Gsensor output(Y axis)=100 number,pulse time=320 number), divided \n +/// - 6th message(sensor counter, reverse signal, gyro temperature=10 number, gyro output(X axis), gyro output(Y axis), gyro output(Z axis), speed pulse, \n +/// Gsensor output(X axis), Gsensor output(Y axis), Gsensor output(Z axis)=100 number, pulse time=320 number), divided \n /// partition count=7,divided partition No=6) -/// - 7th message(sensor counter,reverse signal,gyro temperature=10 number, gyro output,speed pulse, \n -/// Gsensor output(X axis),Gsensor output(Y axis)=100 number,pulse time=320 number), divided \n +/// - 7th message(sensor counter, reverse signal, gyro temperature=4 number, gyro output(X axis), gyro output(Y axis), gyro output(Z axis), speed pulse, \n +/// Gsensor output(X axis), Gsensor output(Y axis), Gsensor output(Z axis)=40 number, pulse time=128 number), divided \n /// partition count=7,divided partition No=7) /// /// \~english @par @@ -320,10 +351,10 @@ extern "C" { /// \~english @par /// message structure /// - After success to register, vehicle sensor will send message as system API message with following format. -/// Command ID : CID_POSIF_REGISTER_LISTENER_PKG_SENSOR_DATA \n +/// Command ID : @ref CID_POSIF_REGISTER_LISTENER_PKG_SENSOR_DATA \n /// Definition of structure /// \~english @code -/// #define SENSOR_MSGBUF_DSIZE 2264 /* max size of message body */ +/// #define SENSOR_MSGBUF_DSIZE 4096 /* max size of message body */ /// #define SENSOR_VSHEAD_DSIZE 36 /* vehicle sensor header size(1+3+16*2) */ /// #define SENSOR_PKG_DELIVERY_MAX 16 /* max number of Data ID in package */ /// #define SENSOR_VSINFO_DSIZE (SENSOR_MSGBUF_DSIZE - SENSOR_VSHEAD_DSIZE) @@ -496,10 +527,10 @@ SENSOR_RET_API POS_RegisterListenerPkgSensData(HANDLE hApp, PCSTR notifyName, /// - After success to register, vehicle sensor will send message as system API message with following format. /// - If the register successed, certainly delivery first data. And then delivery data according to /// the delivery timing. \n -/// Command ID : CID_POSIF_REGISTER_LISTENER_SENSOR_DATA \n +/// Command ID : @ref CID_POSIF_REGISTER_LISTENER_SENSOR_DATA \n /// /// \~english @code -/// #define SENSOR_MSG_VSINFO_DSIZE 1272 /* max size of message body */ +/// #define SENSOR_MSG_VSINFO_DSIZE 1904 /* max size of message body */ /// typedef struct /// { /// DID did; /* data ID */ @@ -543,18 +574,23 @@ SENSOR_RET_API POS_RegisterListenerSensData(HANDLE hApp, PCSTR notifyName, DI /// \~english @par /// - Data ID of vehicle info(ulDid) /// - POS_DID_SPEED_PULSE - speed pulse(count of pulse) -/// - POS_DID_GYRO - gyro output(16bit A/D value) -/// - POS_DID_GSNS_X - Gsensor output (X axis)(12bit A/D value(left justified:15 to 4bit)) -/// - POS_DID_GSNS_Y - Gsensor output (Y axis)(12bit A/D value(left justified:15 to 4bit)) +/// - POS_DID_GYRO_X - gyro output (X axis) +/// - POS_DID_GYRO_Y - gyro output (Y axis) +/// - POS_DID_GYRO_Z - gyro output (Z axis) +/// - POS_DID_GSNS_X - Gsensor output (X axis) +/// - POS_DID_GSNS_Y - Gsensor output (Y axis) +/// - POS_DID_GSNS_Z - Gsensor output (Z axis) /// - POS_DID_GPS_ANTENNA - GPS antenna connection status /// - POS_DID_GPS__CWORD82__NMEA - GPS NMEA(_CWORD82_) /// - POS_DID_GPS__CWORD82__FULLBINARY - GPS _CWORD82_ full binary(_CWORD82_) /// - POS_DID_GPS_NMEA - GPS NMEA /// - POS_DID_GYRO_TEMP - gyro temperature -/// - POS_DID_GPS_CLOCK_DRIFT - GPS clock drift([ns/s]) -/// - POS_DID_GPS_CLOCK_FREQ - GPS clock frequency([Hz]) +/// - POS_DID_GPS_CLOCK_DRIFT - GPS clock drift +/// - POS_DID_GPS_CLOCK_FREQ - GPS clock frequency /// - The avaliable data ID of each hardware type is as following. /// \~english @par +/// - Because positioning is G/W between Navi and HAL, value depends on the design of HAL. +/// \~english @par /// - Note:The Gsensor output is 0 in the environment without Gsensor hardware. /// - vehicle sensor data buffer size(usDestSize) \n /// Please note it is the size of output buffer, not the size of data. diff --git a/positioning/client/include/vehicle_service/positioning.h b/positioning/client/include/vehicle_service/positioning.h index 28dc0b20..a5a1e562 100644 --- a/positioning/client/include/vehicle_service/positioning.h +++ b/positioning/client/include/vehicle_service/positioning.h @@ -1,5 +1,5 @@ // -// @copyright Copyright (c) 2017-2019 TOYOTA MOTOR CORPORATION. +// @copyright Copyright (c) 2017-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. diff --git a/positioning/client/src/CanInput_API/common/CanInput_API.cpp b/positioning/client/src/CanInput_API/common/CanInput_API.cpp deleted file mode 100644 index ebf69dd8..00000000 --- a/positioning/client/src/CanInput_API/common/CanInput_API.cpp +++ /dev/null @@ -1,134 +0,0 @@ -/* - * @copyright Copyright (c) 2016-2019 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. - */ - -/******************************************************************************* - * File name : CanInput_API.cpp - * System name : PastModel002 - * Sub System name : CanInput_API library - * Program name : CanInput_API - * Module configuration: CanInputInitialize() Initialization - * : CanInputSndMsg() Send a message - ******************************************************************************/ - -/************************************************************************ - * Include * - ***********************************************************************/ -#include -#include "CanInput_API.h" -#include "CanInput_API_private.h" - -/************************************************************************ -* Global variable * -************************************************************************/ - -/************************************************************************ -* Definition * -************************************************************************/ - -/******************************************************************************* - * MODULE : CanInputInitialize - * ABSTRACT : Initialization - * FUNCTION : CanInput_API Initialization - * ARGUMENT : None - * NOTE : - * RETURN : CAN_INPUT_RET_NORMAL : Successful completion - * : CAN_INPUT_RET_ERROR : An error has occurred - ******************************************************************************/ -CAN_INPUT_RET_API CanInputInitialize(void) { - RET_API ret_sys; - CAN_INPUT_RET_API ret_api; - - /* _CWORD64_api Initialization */ - ret_sys = _pb_Setup_CWORD64_API(NULL); - - if (ret_sys == RET_NORMAL) { - ret_api = CAN_INPUT_RET_NORMAL; - } else { - ret_api = CAN_INPUT_RET_ERROR; - } - - return ret_api; -} - -/******************************************************************************* - * MODULE : CanInputSndMsg - * ABSTRACT : Send a message - * FUNCTION : Send a message to VehicleSens_thread - * ARGUMENT : pno : Thread ID - * : cid : Command ID - * : msg_len : Data size - * : *msg_data : Pointer to the data buffer - * NOTE : - * RETURN : CAN_INPUT_RET_NORMAL : Successful completion - * : CAN_INPUT_RET_ERROR_PARAM : Parameter error - * : CAN_INPUT_RET_ERROR : An error has occurred - ******************************************************************************/ -CAN_INPUT_RET_API CanInputSndMsg(PNO pno, CID cid, u_int16 msg_len, const void *msg_data) { - CAN_INPUT_RET_API ret_api; - CANINPUT_MSG_INFO msg_buf; - - - if (cid == CANINPUT_CID_LOCALTIME_NOTIFICATION) { - if (msg_len <= sizeof(msg_buf.data)) { - RET_API ret_sys; - u_int16 msg_size; - - - /* Initialization message buffer */ - (void)memset(reinterpret_cast(&msg_buf), 0, sizeof(msg_buf)); - - /*--------------------------------------------------------------* - * Create a message header * - *--------------------------------------------------------------*/ - /* Set only the required data */ - msg_buf.hdr.hdr.sndpno = pno; /* source PNO */ - msg_buf.hdr.hdr.cid = cid; /* Command ID */ - msg_buf.hdr.hdr.msgbodysize = msg_len; /* Data size */ - - /*--------------------------------------------------------------* - * Create a message data * - *--------------------------------------------------------------*/ - if ((msg_len != 0) && (msg_data != NULL)) { - (void)memcpy(reinterpret_cast(&msg_buf.data), msg_data, (size_t)msg_len); - } - - msg_size = sizeof(T_APIMSG_MSGBUF_HEADER) + msg_len; - - /*--------------------------------------------------------------* - * Send a message * - *--------------------------------------------------------------*/ - ret_sys = _pb_SndMsg(PNO_VEHICLE_SENSOR, /* destination PNO */ - msg_size, /* message size */ - reinterpret_cast(&msg_buf), /* message buffer */ - 0); /* Unused Argument */ - - if (ret_sys == RET_NORMAL) { - ret_api = CAN_INPUT_RET_NORMAL; - } else { - ret_api = CAN_INPUT_RET_ERROR; - } - } else { - /* Argument error(Data size) */ - ret_api = CAN_INPUT_RET_ERROR_PARAM; - } - } else { - /* Argument error(Command ID) */ - ret_api = CAN_INPUT_RET_ERROR_PARAM; - } - - return ret_api; -} - diff --git a/positioning/client/src/DR_API/common/DR_API.cpp b/positioning/client/src/DR_API/common/DR_API.cpp deleted file mode 100644 index a7416b48..00000000 --- a/positioning/client/src/DR_API/common/DR_API.cpp +++ /dev/null @@ -1,243 +0,0 @@ -/* - * @copyright Copyright (c) 2016-2019 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. - */ - -/****************************************************************************** -@file DR_API.cpp -@detail DR_API Functions -@lib libDR_API.so -******************************************************************************/ - -/***************************************************************************** - * Include * - *****************************************************************************/ -#include -#include "DR_API.h" -#include "DR_API_private.h" - -#define DR_API_DEBUG 0 - -static EventID DrCreateEvent(PNO pno); -static RET_API DrDeleteEvent(EventID event_id); -static RET_API DrSndMsg(PNO pno_src, PNO pno_dest, CID cid, u_int16 msg_len, const void *msg_data); - -/****************************************************************************** -@brief DrSetMapMatchingData
- Map matching information setting -@outline Set up map matching information. -@param[in] PNO pno : Thread ID -@param[in] MAP_MATCHING_DATA* map_matching_data : Map matching information
-@param[out] none -@return DR_EXT_RET_API -@retval DR_EXT_RET_NORMAL : Normal completion -@retval DR_EXT_RET_ERROR : Parameter error -*******************************************************************************/ -DR_EXT_RET_API DrSetMapMatchingData(PNO pno, MAP_MATCHING_DATA* map_matching_data) { - DR_EXT_RET_API ret = DR_EXT_RET_NORMAL; /* Return value of this function */ - RET_API ret_api = RET_NORMAL; /* System API return value */ - -#if DR_API_DEBUG - FRAMEWORKUNIFIEDLOG(ZONE_INFO, __FUNCTION__, "DR_API : DrSetMapMatchingData \r\n"); - FRAMEWORKUNIFIEDLOG(ZONE_INFO, __FUNCTION__, "\r\n lat[0x%08X] lon[0x%08X] sts[0x%02X] \r\n", - map_matching_data->position_info.latitude, - map_matching_data->position_info.longitude, - map_matching_data->position_info.status); - FRAMEWORKUNIFIEDLOG(ZONE_INFO, __FUNCTION__, "rate[0x%04X] sts[0x%02X] ort[0x%04X] sts[0x%02X] \r\n Sts[0x%08X] \r\n", - map_matching_data->rate_info.rate, - map_matching_data->rate_info.status, - map_matching_data->orient_info.orient, - map_matching_data->orient_info.status, - map_matching_data->status); -#endif - - /*--------------------------------------------------------------* - * Send map matching information * - *--------------------------------------------------------------*/ - /* Messaging */ - ret_api = DrSndMsg(pno, - PNO_VEHICLE_SENSOR, - CID_DR_MAP_MATCHING_DATA, - (u_int16)sizeof(MAP_MATCHING_DATA), (const void *)map_matching_data); - - if (RET_NORMAL == ret_api) { - ret = DR_EXT_RET_NORMAL; - } else { - ret = DR_EXT_RET_ERROR; - } - -#if DR_API_DEBUG - FRAMEWORKUNIFIEDLOG(ZONE_INFO, __FUNCTION__, "DR_API : DrSetMapMatchingData return[0x%X] \r\n", ret); -#endif - - return ret; -} - -/****************************************************************************** -@brief DrClearBackupData
- DR backup data initialization -@outline Initialize the DR backup data. -@param[in] PNO pno : Thread ID -@param[out] none -@return DR_EXT_RET_API -@retval DR_EXT_RET_NORMAL : Clear success -@retval DR_EXT_RET_ERROR : Clear failed -*******************************************************************************/ -DR_EXT_RET_API DrClearBackupData(PNO pno) { - EventID event_id = 0; /* Event ID */ - int32 event_val = 0; /* Event value */ - RET_API ret_api = RET_NORMAL; /* System API return value */ - DR_EXT_RET_API ret = DR_EXT_RET_NORMAL; /* Return value */ - u_char data; /* Message data(Dummy) */ - - /* Event Generation */ - event_id = DrCreateEvent(pno); - - if (event_id != 0) { - /* Successful event generation */ - /* Messaging(Notify VehicleSens_thread) */ - ret_api = DrSndMsg(pno, - PNO_VEHICLE_SENSOR, - CID_DR_CLEAR_BACKUP_DATA, - 0U, /* Message size is set to 0 */ - (const void *)&data); /* Message data(Dummy) -> Errors by NULL */ - if (ret_api == RET_NORMAL) { - /* Message transmission process succeeded */ - /* Waiting for completion event from vehicle sensor thread */ - ret_api = _pb_WaitEvent(event_id, - SAPI_EVWAIT_VAL, - DR_RET_ERROR_MIN, DR_EXT_RET_NORMAL, &event_val, INFINITE); - if (ret_api == RET_NORMAL) { - /* Return from Event Wait */ - if (event_val == RET_NORMAL) { - /* Clear success */ - ret = DR_EXT_RET_NORMAL; - } else { - /* Clear failed */ - ret = DR_EXT_RET_ERROR; - } - } else { - /* Failed to wait for event */ - ret = DR_EXT_RET_ERROR; - FRAMEWORKUNIFIEDLOG(ZONE_ERR, __FUNCTION__, "_pb_WaitEvent Failed"); - } - } else { - /* Message transmission failure */ - ret = DR_EXT_RET_ERROR; - FRAMEWORKUNIFIEDLOG(ZONE_ERR, __FUNCTION__, "DrSndMsg Failed"); - } - /* Event deletion */ - (void)DrDeleteEvent(event_id); - } else { - /* Event generation failure */ - ret = DR_EXT_RET_ERROR; - FRAMEWORKUNIFIEDLOG(ZONE_ERR, __FUNCTION__, "DrCreateEvent Failed"); - } - - return ret; -} - -/******************************************************************************* - * MODULE : DrSndMsg - * ABSTRACT : Message transmission processing - * FUNCTION : Send a message to the specified PNO - * ARGUMENT : pno_src : Source PNO - * : pno_dest : Destination PNO - * : cid : Command ID - * : msg_len : Message data body length - * : *msg_data : Pointer to message data - * NOTE : - * RETURN : RET_NORMAL : Normal completion - * : RET_ERRNOTRDY : Destination process is not wakeup - * : RET_ERRMSGFULL : Message queue overflows - * : RET_ERRPARAM : Buffer size error - ******************************************************************************/ -static RET_API DrSndMsg(PNO pno_src, PNO pno_dest, CID cid, u_int16 msg_len, const void *msg_data) { - DR_MSG_BUF msg_buf; - RET_API ret_api; - - if (msg_data != NULL) { - /* Initialization message buffe */ - (void)memset(reinterpret_cast(&msg_buf), 0, sizeof(DR_MSG_BUF)); - - /*--------------------------------------------------------------* - * Create a message header * - *--------------------------------------------------------------*/ - msg_buf.stHdr.hdr.sndpno = pno_src; /* source PNO */ - msg_buf.stHdr.hdr.cid = cid; /* Command ID */ - msg_buf.stHdr.hdr.msgbodysize = msg_len; /* Data size */ - - /*--------------------------------------------------------------* - * Create a message data * - *--------------------------------------------------------------*/ - if (msg_len != 0) { - (void)memcpy(reinterpret_cast(msg_buf.ucData), msg_data, (size_t)msg_len); - } - /*--------------------------------------------------------------* - * Send messages * - *--------------------------------------------------------------*/ - ret_api = _pb_SndMsg(pno_dest, /* destination PNO */ - (u_int16)(sizeof(T_APIMSG_MSGBUF_HEADER) + msg_len), /* message size */ - reinterpret_cast(&msg_buf), /* message buffer */ - 0); /* Unused Argument */ - } else { - /* Argument error(Pointer to the data buffer) */ - ret_api = RET_ERRPARAM; - } - - return ret_api; -} - -/******************************************************************************* - * MODULE : DrCreateEvent - * ABSTRACT : Event creation process - * FUNCTION : Generate an event - * ARGUMENT : pno : Thread ID - * NOTE : - * RETURN : Non-zero : Event ID - * : Zero : Event generation failure - ******************************************************************************/ -static EventID DrCreateEvent(PNO pno) { - EventID event_id; /* Event ID */ - int8 event_name[32]; /* Event name character string buffer */ - - /* Initialization of event name character string buffer */ - (void)memset(reinterpret_cast(event_name), 0, sizeof(event_name)); - - /* Event name creation */ - snprintf(event_name, sizeof(event_name), "DR_API_%X", pno); - - /* Event Generation */ - event_id = _pb_CreateEvent(_CWORD64_EVENT_MANUALRESET_OFF, DR_EVENT_VAL_INIT, event_name); - - if (event_id == 0) { - FRAMEWORKUNIFIEDLOG(ZONE_ERR, __FUNCTION__, "_pb_CreateEvent"); - } - - return event_id; -} - -/******************************************************************************* - * MODULE : DrDeleteEvent - * ABSTRACT : Event deletion processing - * FUNCTION : Delete events - * ARGUMENT : event_id : Event ID of the event to delete - * NOTE : - * RETURN : RET_NORMAL : Normal completion - * : RET_EV_NONE : Specified event does not exist - ******************************************************************************/ -static RET_API DrDeleteEvent(EventID event_id) { - return (_pb_DeleteEvent(event_id)); -} - diff --git a/positioning/client/src/POS_common_API/Common_API.cpp b/positioning/client/src/POS_common_API/Common_API.cpp index ceabb18c..f266decd 100644 --- a/positioning/client/src/POS_common_API/Common_API.cpp +++ b/positioning/client/src/POS_common_API/Common_API.cpp @@ -1,5 +1,5 @@ /* - * @copyright Copyright (c) 2016-2019 TOYOTA MOTOR CORPORATION. + * @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. @@ -38,7 +38,7 @@ * @param[in] notifyName PCSTR - Destination thread name * @param[in] ucCtrlFlg uint8_t - Delivery control(Delivery registration/Delivery stop/Resume delivery) * @param[in] ucDeliveryTiming uint8_t - Delivery timing(Changing/Updating) - * @param[in] ucGetMethod uint8_t - Acquisition method(GPS/Navigation/DR/Not specified) + * @param[in] ucGetMethod uint8_t - Acquisition method(GPS/Navigation/Not specified) * * @return POS_RET_NORMAL Normal completion(Include illegal)
* POS_RET_ERROR_BUFFULL Buffer-full
@@ -80,12 +80,15 @@ POS_RET_API POS_RegisterListenerLonLat(HANDLE hApp, // NOLINT(readability/nolin /* Supported HW Configuration Check */ type = GetEnvSupportInfo(); + if (UNIT_TYPE_GRADE1 == type) { /* GRADE1 */ ret = POS_RET_NORMAL; - if ((ucGetMethod == SENSOR_GET_METHOD_GPS) || - (ucGetMethod == SENSOR_GET_METHOD_AUTO)) { + if (ucGetMethod == SENSOR_GET_METHOD_GPS) { did = VEHICLE_DID_LOCATION_LONLAT; + } else if ((ucGetMethod == SENSOR_GET_METHOD_NAVI) || + (ucGetMethod == SENSOR_GET_METHOD_AUTO)) { + did = VEHICLE_DID_LOCATION_LONLAT_NAVI; } else { /* End as a parameter error abnormality except for GPS/unspecified acquisition method */ ret = POS_RET_ERROR_PARAM; @@ -138,7 +141,7 @@ POS_RET_API POS_RegisterListenerLonLat(HANDLE hApp, // NOLINT(readability/nolin * @param[in] notifyName PCSTR - Destination thread name * @param[in] ucCtrlFlg uint8_t - Delivery control(Delivery registration/Delivery stop/Resume delivery) * @param[in] ucDeliveryTiming uint8_t - Delivery timing(Changing/Updating) - * @param[in] ucGetMethod uint8_t - Acquisition method(GPS/Navigation/DR/Not specified) + * @param[in] ucGetMethod uint8_t - Acquisition method(GPS/Navigation/Not specified) * * @return POS_RET_NORMAL Normal completion(Include illegal)
* POS_RET_ERROR_PARAM Parameter error
@@ -235,7 +238,7 @@ POS_RET_API POS_RegisterListenerAltitude(HANDLE hApp, // NOLINT(readability/nol * @param[in] notifyName PCSTR - Destination thread name * @param[in] ucCtrlFlg uint8_t - Delivery control(Delivery registration/Delivery stop/Resume delivery) * @param[in] ucDeliveryTiming uint8_t - Delivery timing(Changing/Updating) - * @param[in] ucGetMethod uint8_t - Acquisition method(POS/Navigation/DR/Not specified) + * @param[in] ucGetMethod uint8_t - Acquisition method(POS/Navigation/Not specified) * * @return POS_RET_NORMAL Normal completion(Include illegal)
* POS_RET_ERROR_BUFFULL Buffer-full
@@ -280,11 +283,12 @@ POS_RET_API POS_RegisterListenerSpeed(HANDLE hApp, // NOLINT(readability/nolint if (UNIT_TYPE_GRADE1 == type) { /* GRADE1 */ ret = POS_RET_NORMAL; - if ((ucGetMethod == SENSOR_GET_METHOD_POS) || - (ucGetMethod == SENSOR_GET_METHOD_AUTO)) { + if (ucGetMethod == SENSOR_GET_METHOD_POS) { did = VEHICLE_DID_MOTION_SPEED_INTERNAL; + } else if ((ucGetMethod == SENSOR_GET_METHOD_NAVI) || + (ucGetMethod == SENSOR_GET_METHOD_AUTO)) { + did = VEHICLE_DID_MOTION_SPEED_NAVI; } else { - /* End as a parameter error abnormality except for POS/unspecified acquisition method */ ret = POS_RET_ERROR_PARAM; } } else if (UNIT_TYPE_GRADE2 == type) { @@ -335,7 +339,7 @@ POS_RET_API POS_RegisterListenerSpeed(HANDLE hApp, // NOLINT(readability/nolint * @param[in] notifyName PCSTR - Destination thread name * @param[in] ucCtrlFlg uint8_t - Delivery control(Delivery registration/Delivery stop/Resume delivery) * @param[in] ucDeliveryTiming uint8_t - Delivery timing(Changing/Updating) - * @param[in] ucGetMethod uint8_t - Acquisition method(GPS/Navigation/DR/Not specified) + * @param[in] ucGetMethod uint8_t - Acquisition method(GPS/Navigation/Not specified) * * @return POS_RET_NORMAL Normal completion(Include illegal)
* POS_RET_ERROR_PARAM Parameter error
@@ -378,9 +382,11 @@ POS_RET_API POS_RegisterListenerHeading(HANDLE hApp, // NOLINT(readability/noli if (UNIT_TYPE_GRADE1 == type) { /* GRADE1 */ ret = POS_RET_NORMAL; - if ((ucGetMethod == SENSOR_GET_METHOD_GPS) || - (ucGetMethod == SENSOR_GET_METHOD_AUTO)) { + if (ucGetMethod == SENSOR_GET_METHOD_GPS) { did = VEHICLE_DID_MOTION_HEADING; + } else if ((ucGetMethod == SENSOR_GET_METHOD_NAVI) || + (ucGetMethod == SENSOR_GET_METHOD_AUTO)) { + did = VEHICLE_DID_MOTION_HEADING_NAVI; } else { /* End as a parameter error abnormality except for GPS/unspecified acquisition method */ ret = POS_RET_ERROR_PARAM; @@ -431,7 +437,7 @@ POS_RET_API POS_RegisterListenerHeading(HANDLE hApp, // NOLINT(readability/noli * * @param[in] hApp HANDLE - Application handle * @param[in] dat SENSORLOCATION_LONLATINFO_DAT* - Pointer to the acquired latitude/longitude information storage destination - * @param[in] ucGetMethod uint8_t - Acquisition method(GPS/Navigation/DR/Not specified) + * @param[in] ucGetMethod uint8_t - Acquisition method(GPS/Navigation/Not specified) * * @return POS_RET_NORMAL Normal completion(Include illegal)
* POS_RET_ERROR_PARAM Parameter error
@@ -439,69 +445,71 @@ POS_RET_API POS_RegisterListenerHeading(HANDLE hApp, // NOLINT(readability/noli * POS_RET_ERROR_INNER Internal error * */ -//POS_RET_API POS_GetLonLat(HANDLE hApp, // NOLINT(readability/nolint) -// SENSORLOCATION_LONLATINFO_DAT *dat, // NOLINT(readability/nolint) -// uint8_t ucGetMethod) { // NOLINT(readability/nolint) -// POS_RET_API ret = POS_RET_NORMAL; /* Return value */ -// UNIT_TYPE type = UNIT_TYPE_NONE; /* Supported HW Configuration Type */ -// DID did = VEHICLE_DID_LOCATION_LONLAT; /* DID */ -// int32 ret_get_proc; /* POS_GetProc Return Values */ -// -// /* Internal debug log output */ -// FRAMEWORKUNIFIEDLOG(ZONE_26, __FUNCTION__, "+"); -// -// /* Arguments & Support Configuration Check */ -// if (hApp == NULL) { -// /* If the handler is NULL, the process terminates with an error. */ -// ret = POS_RET_ERROR_PARAM; -// } else if (dat == NULL) { -// /* If the longitude/latitude data is NULL, it ends with an abnormal parameter. */ -// ret = POS_RET_ERROR_PARAM; -// } else { -// /* Positioning Base API initialization */ -// _pb_Setup_CWORD64_API(hApp); -// -// /* Supported HW Configuration Check */ -// type = GetEnvSupportInfo(); -// if (UNIT_TYPE_GRADE1 == type) { -// /* GRADE1 */ -// if ((ucGetMethod == SENSOR_GET_METHOD_GPS) || -// (ucGetMethod == SENSOR_GET_METHOD_AUTO)) { -// did = VEHICLE_DID_LOCATION_LONLAT; -// } else { -// /* End as a parameter error abnormality except for GPS/unspecified acquisition method */ -// ret = POS_RET_ERROR_PARAM; -// } -// } else if (UNIT_TYPE_GRADE2 == type) { -// /* -// * Note. -// * This feature branches processing depending on the unit type. -// */ -// ret = POS_RET_ERROR_NOSUPPORT; -// } else { -// /* Environment error */ -// ret = POS_RET_ERROR_NOSUPPORT; -// } -// } -// -// /* Sensor information acquisition */ -// if (ret == POS_RET_NORMAL) { -// /* Data acquisition process */ -// ret_get_proc = PosGetProc(did, reinterpret_cast(dat), sizeof(SENSORLOCATION_LONLATINFO_DAT)); -// if (static_cast(sizeof(SENSORLOCATION_LONLATINFO_DAT)) > ret_get_proc) { -// /** Failed to acquire */ -// if (ret_get_proc == POS_RET_ERROR_RESOURCE) { -// /** Insufficient resource */ -// ret = POS_RET_ERROR_RESOURCE; -// } else { -// ret = POS_RET_ERROR_INNER; -// } -// FRAMEWORKUNIFIEDLOG(ZONE_ERR, __FUNCTION__, "PosGetProc ERROR [ret = %d]", ret); -// } -// } -// FRAMEWORKUNIFIEDLOG(ZONE_26, __FUNCTION__, "- [ret = %d]", ret); -// return ret; -//} +POS_RET_API POS_GetLonLat(HANDLE hApp, // NOLINT(readability/nolint) + SENSORLOCATION_LONLATINFO_DAT *dat, // NOLINT(readability/nolint) + uint8_t ucGetMethod) { // NOLINT(readability/nolint) + POS_RET_API ret = POS_RET_NORMAL; /* Return value */ + UNIT_TYPE type = UNIT_TYPE_NONE; /* Supported HW Configuration Type */ + DID did = VEHICLE_DID_LOCATION_LONLAT; /* DID */ + int32_t ret_get_proc; /* POS_GetProc Return Values */ + + /* Internal debug log output */ + FRAMEWORKUNIFIEDLOG(ZONE_26, __FUNCTION__, "+"); + + /* Arguments & Support Configuration Check */ + if (hApp == NULL) { + /* If the handler is NULL, the process terminates with an error. */ + ret = POS_RET_ERROR_PARAM; + } else if (dat == NULL) { + /* If the longitude/latitude data is NULL, it ends with an abnormal parameter. */ + ret = POS_RET_ERROR_PARAM; + } else { + /* Positioning Base API initialization */ + _pb_Setup_CWORD64_API(hApp); + + /* Supported HW Configuration Check */ + type = GetEnvSupportInfo(); + if (UNIT_TYPE_GRADE1 == type) { + /* GRADE1 */ + if (ucGetMethod == SENSOR_GET_METHOD_GPS) { + did = VEHICLE_DID_LOCATION_LONLAT; + } else if ((ucGetMethod == SENSOR_GET_METHOD_NAVI) || + (ucGetMethod == SENSOR_GET_METHOD_AUTO)) { + did = VEHICLE_DID_LOCATION_LONLAT_NAVI; + } else { + /* End as a parameter error abnormality except for GPS/unspecified acquisition method */ + ret = POS_RET_ERROR_PARAM; + } + } else if (UNIT_TYPE_GRADE2 == type) { + /* + * Note. + * This feature branches processing depending on the unit type. + */ + ret = POS_RET_ERROR_NOSUPPORT; + } else { + /* Environment error */ + ret = POS_RET_ERROR_NOSUPPORT; + } + } + + /* Sensor information acquisition */ + if (ret == POS_RET_NORMAL) { + /* Data acquisition process */ + ret_get_proc = PosGetProc(did, reinterpret_cast(dat), sizeof(SENSORLOCATION_LONLATINFO_DAT)); + if (static_cast(sizeof(SENSORLOCATION_LONLATINFO_DAT)) > ret_get_proc) { + /* Failed to acquire */ + if (ret_get_proc == POS_RET_ERROR_RESOURCE) { + /* Insufficient resource */ + ret = POS_RET_ERROR_RESOURCE; + } else { + ret = POS_RET_ERROR_INNER; + } + FRAMEWORKUNIFIEDLOG(ZONE_ERR, __FUNCTION__, "PosGetProc ERROR [ret = %d]", ret); + } + } + FRAMEWORKUNIFIEDLOG(ZONE_26, __FUNCTION__, "- [ret = %d]", ret); + return ret; +} /** * @brief @@ -511,7 +519,7 @@ POS_RET_API POS_RegisterListenerHeading(HANDLE hApp, // NOLINT(readability/noli * * @param[in] hApp HANDLE - Application handle * @param[in] dat SENSORLOCATION_ALTITUDEINFO_DAT* - Pointer to the acquired altitude information storage destination - * @param[in] ucGetMethod uint8_t - Acquisition method(GPS/Navigation/DR/Not specified) + * @param[in] ucGetMethod uint8_t - Acquisition method(GPS/Not specified) * * @return POS_RET_NORMAL Normal completion(Include illegal)
* POS_RET_ERROR_PARAM Parameter error
@@ -519,68 +527,68 @@ POS_RET_API POS_RegisterListenerHeading(HANDLE hApp, // NOLINT(readability/noli * POS_RET_ERROR_INNER Internal error * */ -//POS_RET_API POS_GetAltitude(HANDLE hApp, // NOLINT(readability/nolint) -// SENSORLOCATION_ALTITUDEINFO_DAT *dat, // NOLINT(readability/nolint) -// uint8_t ucGetMethod) { // NOLINT(readability/nolint) -// POS_RET_API ret = POS_RET_NORMAL; /* Return value */ -// UNIT_TYPE type = UNIT_TYPE_NONE; /* Supported HW Configuration Type */ -// DID did = VEHICLE_DID_LOCATION_ALTITUDE; /* DID */ -// int32 ret_get_proc; /* POS_GetProc Return Values */ -// -// /* Internal debug log output */ -// FRAMEWORKUNIFIEDLOG(ZONE_26, __FUNCTION__, "+"); -// -// /* Arguments & Support Configuration Check */ -// if (hApp == NULL) { -// /* If the handler is NULL, the process terminates with an error. */ -// ret = POS_RET_ERROR_PARAM; -// } else if (dat == NULL) { -// /* If the altitude data is NULL, it terminates with an abnormal parameter. */ -// ret = POS_RET_ERROR_PARAM; -// } else { -// /* Positioning Base API initialization */ -// _pb_Setup_CWORD64_API(hApp); -// -// /* Supported HW Configuration Check */ -// type = GetEnvSupportInfo(); -// if (UNIT_TYPE_GRADE1 == type) { -// /* GRADE1 */ -// if ((ucGetMethod == SENSOR_GET_METHOD_GPS) || -// (ucGetMethod == SENSOR_GET_METHOD_AUTO)) { -// did = VEHICLE_DID_LOCATION_ALTITUDE; -// } else { -// /* End as a parameter error abnormality except for GPS/unspecified acquisition method */ -// ret = POS_RET_ERROR_PARAM; -// } -// } else if (UNIT_TYPE_GRADE2 == type) { -// /* -// * Note. -// * This feature branches processing depending on the unit type. -// */ -// ret = POS_RET_ERROR_NOSUPPORT; -// } else { -// /* Environment error */ -// ret = POS_RET_ERROR_NOSUPPORT; -// } -// } -// /* Sensor information acquisition */ -// if (ret == POS_RET_NORMAL) { -// /* Data acquisition process */ -// ret_get_proc = PosGetProc(did, reinterpret_cast(dat), sizeof(SENSORLOCATION_ALTITUDEINFO_DAT)); -// if (static_cast(sizeof(SENSORLOCATION_ALTITUDEINFO_DAT)) > ret_get_proc) { -// /** Failed to acquire */ -// if (ret_get_proc == POS_RET_ERROR_RESOURCE) { -// /** Insufficient resource */ -// ret = POS_RET_ERROR_RESOURCE; -// } else { -// ret = POS_RET_ERROR_INNER; -// } -// FRAMEWORKUNIFIEDLOG(ZONE_ERR, __FUNCTION__, "PosGetProc ERROR [ret = %d]", ret); -// } -// } -// FRAMEWORKUNIFIEDLOG(ZONE_26, __FUNCTION__, "- [ret = %d]", ret); -// return ret; -//} +POS_RET_API POS_GetAltitude(HANDLE hApp, // NOLINT(readability/nolint) + SENSORLOCATION_ALTITUDEINFO_DAT *dat, // NOLINT(readability/nolint) + uint8_t ucGetMethod) { // NOLINT(readability/nolint) + POS_RET_API ret = POS_RET_NORMAL; /* Return value */ + UNIT_TYPE type = UNIT_TYPE_NONE; /* Supported HW Configuration Type */ + DID did = VEHICLE_DID_LOCATION_ALTITUDE; /* DID */ + int32_t ret_get_proc; /* POS_GetProc Return Values */ + + /* Internal debug log output */ + FRAMEWORKUNIFIEDLOG(ZONE_26, __FUNCTION__, "+"); + + /* Arguments & Support Configuration Check */ + if (hApp == NULL) { + /* If the handler is NULL, the process terminates with an error. */ + ret = POS_RET_ERROR_PARAM; + } else if (dat == NULL) { + /* If the altitude data is NULL, it terminates with an abnormal parameter. */ + ret = POS_RET_ERROR_PARAM; + } else { + /* Positioning Base API initialization */ + _pb_Setup_CWORD64_API(hApp); + + /* Supported HW Configuration Check */ + type = GetEnvSupportInfo(); + if (UNIT_TYPE_GRADE1 == type) { + /* GRADE1 */ + if ((ucGetMethod == SENSOR_GET_METHOD_GPS) || + (ucGetMethod == SENSOR_GET_METHOD_AUTO)) { + did = VEHICLE_DID_LOCATION_ALTITUDE; + } else { + /* End as a parameter error abnormality except for GPS/unspecified acquisition method */ + ret = POS_RET_ERROR_PARAM; + } + } else if (UNIT_TYPE_GRADE2 == type) { + /* + * Note. + * This feature branches processing depending on the unit type. + */ + ret = POS_RET_ERROR_NOSUPPORT; + } else { + /* Environment error */ + ret = POS_RET_ERROR_NOSUPPORT; + } + } + /* Sensor information acquisition */ + if (ret == POS_RET_NORMAL) { + /* Data acquisition process */ + ret_get_proc = PosGetProc(did, reinterpret_cast(dat), sizeof(SENSORLOCATION_ALTITUDEINFO_DAT)); + if (static_cast(sizeof(SENSORLOCATION_ALTITUDEINFO_DAT)) > ret_get_proc) { + /* Failed to acquire */ + if (ret_get_proc == POS_RET_ERROR_RESOURCE) { + /* Insufficient resource */ + ret = POS_RET_ERROR_RESOURCE; + } else { + ret = POS_RET_ERROR_INNER; + } + FRAMEWORKUNIFIEDLOG(ZONE_ERR, __FUNCTION__, "PosGetProc ERROR [ret = %d]", ret); + } + } + FRAMEWORKUNIFIEDLOG(ZONE_26, __FUNCTION__, "- [ret = %d]", ret); + return ret; +} /** * @brief @@ -590,7 +598,7 @@ POS_RET_API POS_RegisterListenerHeading(HANDLE hApp, // NOLINT(readability/noli * * @param[in] hApp HANDLE - Application handle * @param[in] dat SENSORMOTION_SPEEDINFO_DAT* - Pointer to the acquired car speed information storage destination - * @param[in] ucGetMethod uint8_t - Acquisition method(GPS/Navigation/DR/Not specified) + * @param[in] ucGetMethod uint8_t - Acquisition method(GPS/Navigation/Not specified) * * @return POS_RET_NORMAL Normal completion(Include illegal)
* POS_RET_ERROR_PARAM Parameter error
@@ -598,73 +606,75 @@ POS_RET_API POS_RegisterListenerHeading(HANDLE hApp, // NOLINT(readability/noli * POS_RET_ERROR_INNER Internal error * */ -//POS_RET_API POS_GetSpeed(HANDLE hApp, // NOLINT(readability/nolint) -// SENSORMOTION_SPEEDINFO_DAT *dat, // NOLINT(readability/nolint) -// uint8_t ucGetMethod) { // NOLINT(readability/nolint) -// POS_RET_API ret = POS_RET_NORMAL; /* Return value */ -// UNIT_TYPE type = UNIT_TYPE_NONE; /* Supported HW Configuration Type */ -// DID did; /* Data ID */ -// int32 ret_get_proc; /* POS_GetProc Return Values */ -// -// FRAMEWORKUNIFIEDLOG(ZONE_26, __FUNCTION__, "+"); -// if (hApp == NULL) { -// /* If the handler is NULL, the process terminates with an error. */ -// ret = POS_RET_ERROR_PARAM; -// FRAMEWORKUNIFIEDLOG(ZONE_ERR, __FUNCTION__, "Argument ERROR [hApp = %p]", hApp); -// } else if (dat == NULL) { -// /* When the pointer to the vehicle speed data storage destination is NULL, the pointer terminates with an error in the parameter. */ -// ret = POS_RET_ERROR_PARAM; -// FRAMEWORKUNIFIEDLOG(ZONE_ERR, __FUNCTION__, "Argument ERROR [dat = %p]", dat); -// } else { -// /* Positioning Base API initialization */ -// _pb_Setup_CWORD64_API(hApp); -// -// /* Supported HW Configuration Check */ -// type = GetEnvSupportInfo(); -// if (UNIT_TYPE_GRADE1 == type) { -// /* GRADE1 */ -// ret = POS_RET_NORMAL; -// if ((ucGetMethod == SENSOR_GET_METHOD_POS) || -// (ucGetMethod == SENSOR_GET_METHOD_AUTO)) { -// did = VEHICLE_DID_MOTION_SPEED_INTERNAL; -// } else { -// /* End as a parameter error abnormality except for POS/unspecified acquisition method */ -// ret = POS_RET_ERROR_PARAM; -// FRAMEWORKUNIFIEDLOG(ZONE_ERR, __FUNCTION__, -// "Argument ERROR [type = %d, ucGetMethod = %d]", -// type, ucGetMethod); -// } -// } else if (UNIT_TYPE_GRADE2 == type) { -// /* -// * Note. -// * This feature branches processing depending on the unit type. -// */ -// ret = POS_RET_ERROR_NOSUPPORT; -// } else { -// /* Environment error */ -// ret = POS_RET_ERROR_NOSUPPORT; -// FRAMEWORKUNIFIEDLOG(ZONE_ERR, __FUNCTION__, "GetEnvSupportInfo ERROR [type = %d]", type); -// } -// } -// -// if (ret == POS_RET_NORMAL) { -// /* Data acquisition process */ -// ret_get_proc = PosGetProc(did, dat, sizeof(SENSORMOTION_SPEEDINFO_DAT)); -// if (static_cast(sizeof(SENSORMOTION_SPEEDINFO_DAT)) > ret_get_proc) { -// /** Failed to acquire */ -// if (ret_get_proc == POS_RET_ERROR_RESOURCE) { -// /** Insufficient resource */ -// ret = POS_RET_ERROR_RESOURCE; -// } else { -// ret = POS_RET_ERROR_INNER; -// } -// FRAMEWORKUNIFIEDLOG(ZONE_ERR, __FUNCTION__, "PosGetProc ERROR [ret = %d]", ret); -// } -// } -// FRAMEWORKUNIFIEDLOG(ZONE_26, __FUNCTION__, "- [ret = %d]", ret); -// -// return ret; -//} +POS_RET_API POS_GetSpeed(HANDLE hApp, // NOLINT(readability/nolint) + SENSORMOTION_SPEEDINFO_DAT *dat, // NOLINT(readability/nolint) + uint8_t ucGetMethod) { // NOLINT(readability/nolint) + POS_RET_API ret = POS_RET_NORMAL; /* Return value */ + UNIT_TYPE type = UNIT_TYPE_NONE; /* Supported HW Configuration Type */ + DID did; /* Data ID */ + int32_t ret_get_proc; /* POS_GetProc Return Values */ + + FRAMEWORKUNIFIEDLOG(ZONE_26, __FUNCTION__, "+"); + if (hApp == NULL) { + /* If the handler is NULL, the process terminates with an error. */ + ret = POS_RET_ERROR_PARAM; + FRAMEWORKUNIFIEDLOG(ZONE_ERR, __FUNCTION__, "Argument ERROR [hApp = %p]", hApp); + } else if (dat == NULL) { + /* When the pointer to the vehicle speed data storage destination is NULL, the pointer terminates with an error in the parameter. */ + ret = POS_RET_ERROR_PARAM; + FRAMEWORKUNIFIEDLOG(ZONE_ERR, __FUNCTION__, "Argument ERROR [dat = %p]", dat); + } else { + /* Positioning Base API initialization */ + _pb_Setup_CWORD64_API(hApp); + + /* Supported HW Configuration Check */ + type = GetEnvSupportInfo(); + if (UNIT_TYPE_GRADE1 == type) { + /* GRADE1 */ + ret = POS_RET_NORMAL; + if (ucGetMethod == SENSOR_GET_METHOD_POS) { + did = VEHICLE_DID_MOTION_SPEED_INTERNAL; + } else if ((ucGetMethod == SENSOR_GET_METHOD_NAVI) || + (ucGetMethod == SENSOR_GET_METHOD_AUTO)) { + did = VEHICLE_DID_MOTION_SPEED_NAVI; + } else { + /* End as a parameter error abnormality except for POS/unspecified acquisition method */ + ret = POS_RET_ERROR_PARAM; + FRAMEWORKUNIFIEDLOG(ZONE_ERR, __FUNCTION__, + "Argument ERROR [type = %d, ucGetMethod = %d]", + type, ucGetMethod); + } + } else if (UNIT_TYPE_GRADE2 == type) { + /* + * Note. + * This feature branches processing depending on the unit type. + */ + ret = POS_RET_ERROR_NOSUPPORT; + } else { + /* Environment error */ + ret = POS_RET_ERROR_NOSUPPORT; + FRAMEWORKUNIFIEDLOG(ZONE_ERR, __FUNCTION__, "GetEnvSupportInfo ERROR [type = %d]", type); + } + } + + if (ret == POS_RET_NORMAL) { + /* Data acquisition process */ + ret_get_proc = PosGetProc(did, dat, sizeof(SENSORMOTION_SPEEDINFO_DAT)); + if (static_cast(sizeof(SENSORMOTION_SPEEDINFO_DAT)) > ret_get_proc) { + /* Failed to acquire */ + if (ret_get_proc == POS_RET_ERROR_RESOURCE) { + /* Insufficient resource */ + ret = POS_RET_ERROR_RESOURCE; + } else { + ret = POS_RET_ERROR_INNER; + } + FRAMEWORKUNIFIEDLOG(ZONE_ERR, __FUNCTION__, "PosGetProc ERROR [ret = %d]", ret); + } + } + FRAMEWORKUNIFIEDLOG(ZONE_26, __FUNCTION__, "- [ret = %d]", ret); + + return ret; +} /** * @brief @@ -674,7 +684,7 @@ POS_RET_API POS_RegisterListenerHeading(HANDLE hApp, // NOLINT(readability/noli * * @param[in] hApp HANDLE - Application handle * @param[in] dat SENSORMOTION_HEADINGINFO_DAT* - Pointer to the acquired altitude information storage destination - * @param[in] ucGetMethod uint8_t - Acquisition method(GPS/Navigation/DR/Not specified) + * @param[in] ucGetMethod uint8_t - Acquisition method(GPS/Navigation/Not specified) * * @return POS_RET_NORMAL Normal completion(Include illegal)
* POS_RET_ERROR_PARAM Parameter error
@@ -682,68 +692,70 @@ POS_RET_API POS_RegisterListenerHeading(HANDLE hApp, // NOLINT(readability/noli * POS_RET_ERROR_INNER Internal error * */ -//POS_RET_API POS_GetHeading(HANDLE hApp, // NOLINT(readability/nolint) -// SENSORMOTION_HEADINGINFO_DAT *dat, // NOLINT(readability/nolint) -// uint8_t ucGetMethod) { // NOLINT(readability/nolint) -// POS_RET_API ret = POS_RET_NORMAL; /* Return value */ -// UNIT_TYPE type = UNIT_TYPE_NONE; /* Supported HW Configuration Type */ -// DID did = VEHICLE_DID_MOTION_HEADING; /* Data ID */ -// int32 ret_get_proc; /* POS_GetProc Return Values */ -// -// /* Internal debug log output */ -// FRAMEWORKUNIFIEDLOG(ZONE_26, __FUNCTION__, "+"); -// -// /* Arguments & Support Configuration Check */ -// if (hApp == NULL) { -// /* If the handler is NULL, the process terminates with an error. */ -// ret = POS_RET_ERROR_PARAM; -// } else if (dat == NULL) { -// /* If the longitude/latitude data is NULL, it ends with an abnormal parameter. */ -// ret = POS_RET_ERROR_PARAM; -// } else { -// /* Positioning Base API initialization */ -// _pb_Setup_CWORD64_API(hApp); -// -// /* Supported HW Configuration Check */ -// type = GetEnvSupportInfo(); -// if (UNIT_TYPE_GRADE1 == type) { -// /* GRADE1 */ -// if ((ucGetMethod == SENSOR_GET_METHOD_GPS) || -// (ucGetMethod == SENSOR_GET_METHOD_AUTO)) { -// did = VEHICLE_DID_MOTION_HEADING; -// } else { -// /* End as a parameter error abnormality except for GPS/unspecified acquisition method */ -// ret = POS_RET_ERROR_PARAM; -// } -// } else if (UNIT_TYPE_GRADE2 == type) { -// /* -// * Note. -// * This feature branches processing depending on the unit type. -// */ -// ret = SENSOR_RET_ERROR_NOSUPPORT; -// } else { -// /* Environment error */ -// ret = SENSOR_RET_ERROR_NOSUPPORT; -// } -// } -// /* Sensor information acquisition */ -// if (ret == POS_RET_NORMAL) { -// /* Data acquisition process */ -// ret_get_proc = PosGetProc(did, reinterpret_cast(dat), sizeof(SENSORMOTION_HEADINGINFO_DAT)); -// if (static_cast(sizeof(SENSORMOTION_HEADINGINFO_DAT)) > ret_get_proc) { -// /** Failed to acquire */ -// if (ret_get_proc == POS_RET_ERROR_RESOURCE) { -// /** Insufficient resource */ -// ret = POS_RET_ERROR_RESOURCE; -// } else { -// ret = POS_RET_ERROR_INNER; -// } -// FRAMEWORKUNIFIEDLOG(ZONE_ERR, __FUNCTION__, "PosGetProc ERROR [ret = %d]", ret); -// } -// } -// FRAMEWORKUNIFIEDLOG(ZONE_26, __FUNCTION__, "- [ret = %d]", ret); -// return ret; -//} +POS_RET_API POS_GetHeading(HANDLE hApp, // NOLINT(readability/nolint) + SENSORMOTION_HEADINGINFO_DAT *dat, // NOLINT(readability/nolint) + uint8_t ucGetMethod) { // NOLINT(readability/nolint) + POS_RET_API ret = POS_RET_NORMAL; /* Return value */ + UNIT_TYPE type = UNIT_TYPE_NONE; /* Supported HW Configuration Type */ + DID did = VEHICLE_DID_MOTION_HEADING; /* Data ID */ + int32_t ret_get_proc; /* POS_GetProc Return Values */ + + /* Internal debug log output */ + FRAMEWORKUNIFIEDLOG(ZONE_26, __FUNCTION__, "+"); + + /* Arguments & Support Configuration Check */ + if (hApp == NULL) { + /* If the handler is NULL, the process terminates with an error. */ + ret = POS_RET_ERROR_PARAM; + } else if (dat == NULL) { + /* If the longitude/latitude data is NULL, it ends with an abnormal parameter. */ + ret = POS_RET_ERROR_PARAM; + } else { + /* Positioning Base API initialization */ + _pb_Setup_CWORD64_API(hApp); + + /* Supported HW Configuration Check */ + type = GetEnvSupportInfo(); + if (UNIT_TYPE_GRADE1 == type) { + /* GRADE1 */ + if (ucGetMethod == SENSOR_GET_METHOD_GPS) { + did = VEHICLE_DID_MOTION_HEADING; + } else if ((ucGetMethod == SENSOR_GET_METHOD_NAVI) || + (ucGetMethod == SENSOR_GET_METHOD_AUTO)) { + did = VEHICLE_DID_MOTION_HEADING_NAVI; + } else { + /* End as a parameter error abnormality except for GPS/unspecified acquisition method */ + ret = POS_RET_ERROR_PARAM; + } + } else if (UNIT_TYPE_GRADE2 == type) { + /* + * Note. + * This feature branches processing depending on the unit type. + */ + ret = SENSOR_RET_ERROR_NOSUPPORT; + } else { + /* Environment error */ + ret = SENSOR_RET_ERROR_NOSUPPORT; + } + } + /* Sensor information acquisition */ + if (ret == POS_RET_NORMAL) { + /* Data acquisition process */ + ret_get_proc = PosGetProc(did, reinterpret_cast(dat), sizeof(SENSORMOTION_HEADINGINFO_DAT)); + if (static_cast(sizeof(SENSORMOTION_HEADINGINFO_DAT)) > ret_get_proc) { + /** Failed to acquire */ + if (ret_get_proc == POS_RET_ERROR_RESOURCE) { + /** Insufficient resource */ + ret = POS_RET_ERROR_RESOURCE; + } else { + ret = POS_RET_ERROR_INNER; + } + FRAMEWORKUNIFIEDLOG(ZONE_ERR, __FUNCTION__, "PosGetProc ERROR [ret = %d]", ret); + } + } + FRAMEWORKUNIFIEDLOG(ZONE_26, __FUNCTION__, "- [ret = %d]", ret); + return ret; +} /** * @brief @@ -792,7 +804,7 @@ POS_RET_API POS_SetSpeedInfo(HANDLE hApp, uint16_t navispeed) { // NOLINT(reada if (ret == POS_RET_NORMAL) { /* Adjustment by unit [1.0km/h]->[0.01m/sec] */ - speed = static_cast(navispeed * 10000 / 360); + speed = static_cast(navispeed * 10000 / 360); /* Data setting(After setting,Immediate termination) */ ret = PosSetProc(VEHICLE_DID_MOTION_SPEED_NAVI, reinterpret_cast(&speed), sizeof(uint16_t), FALSE); @@ -867,7 +879,7 @@ POS_RET_API POS_SetLocationInfo(HANDLE hApp, POS_POSDATA* pstPosData) { // NOLI } /* Data setting(After setting,Immediate termination) */ - ret = PosSetProc(VEHICLE_DID_GPS_CUSTOMDATA_NAVI, + ret = PosSetProc(VEHICLE_DID_GPS_CUSTOMDATA_NAVI, // == POSHAL_DID_GPS_CUSTOMDATA_NAVI reinterpret_cast(pstPosData), sizeof(POS_POSDATA), FALSE); } } @@ -875,66 +887,3 @@ POS_RET_API POS_SetLocationInfo(HANDLE hApp, POS_POSDATA* pstPosData) { // NOLI FRAMEWORKUNIFIEDLOG(ZONE_26, __FUNCTION__, "- [ret = %d]", ret); return ret; } - - -/** - * @brief - * Location Information (NMEA) Setting - * - * Set Location Information (NEMA) - * - * @param[in] hApp HANDLE - Application handle - * @param[in] locationInfo POS_LOCATIONINFO_NEMA - Pointer to location information - * - * @return POS_RET_NORMAL Normal completion(Include illegal)
- * POS_RET_ERROR_PARAM Parameter error
- * POS_RET_ERROR_INNER Internal error
- * POS_RET_ERROR_NOSUPPORT Unsupported environment - * - */ -POS_RET_API POS_SetLocationInfoNmea( HANDLE hApp, POS_LOCATIONINFO_NMEA* locationInfo ) { - POS_RET_API lRet = POS_RET_NORMAL; /* Return value of this function */ - UNIT_TYPE eType = UNIT_TYPE_NONE; /* Supported HW Configuration Type */ - - FRAMEWORKUNIFIEDLOG(ZONE_26, __FUNCTION__, "+"); - - /* Arguments & Support Configuration Check */ - if ((locationInfo == NULL) || (hApp == NULL)) { - lRet = POS_RET_ERROR_PARAM; - } else { - /* Positioning Base API initialization */ - _pb_Setup_CWORD64_API(hApp); - - /* Supported HW Configuration Check */ - eType = GetEnvSupportInfo(); - if ( UNIT_TYPE_GRADE1 == eType ) { - /* GRADE1 */ - lRet = POS_RET_NORMAL; - } else if ( UNIT_TYPE_GRADE2 == eType ) { - /* - * Note. - * This feature branches processing depending on the unit type. - */ - lRet = SENSOR_RET_ERROR_NOSUPPORT; - } else { - /* Environment error */ - lRet = SENSOR_RET_ERROR_NOSUPPORT; - } - } - - if ( lRet == POS_RET_NORMAL ) { - /* check data length */ - if ((locationInfo->length == 0) || (locationInfo->length > LOCATIONINFO_NMEA_MAX)) { - lRet = POS_RET_ERROR_PARAM; - } else { - /* Data setting(After setting,Immediate termination) */ - lRet = PosSetProc( VEHICLE_DID_LOCATIONINFO_NMEA_NAVI, (void*)locationInfo, - locationInfo->length + sizeof(locationInfo->length), FALSE ); - } - } - - FRAMEWORKUNIFIEDLOG(ZONE_26, __FUNCTION__, "- [lRet = %d]", lRet); - return lRet; -} - - diff --git a/positioning/client/src/POS_common_API/Makefile b/positioning/client/src/POS_common_API/Makefile index 7f4ab1c0..4d7a90fb 100644 --- a/positioning/client/src/POS_common_API/Makefile +++ b/positioning/client/src/POS_common_API/Makefile @@ -1,5 +1,5 @@ # -# @copyright Copyright (c) 2016-2019 TOYOTA MOTOR CORPORATION. +# @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. @@ -17,20 +17,12 @@ INST_SHLIBS = libPOS_common_API ######### compiled sources ############# -VPATH += ../SensorLocation_API/common - -libPOS_common_API_SRCS += SensorLocation_API.cpp libPOS_common_API_SRCS += Common_API.cpp ######### add include path ############# -CPPFLAGS += -I./ CPPFLAGS += -I../../../server/include/common CPPFLAGS += -I../../include CPPFLAGS += -I../../../server/include/nsfw -CPPFLAGS += -I../SensorLocation_API/common - -CPPFLAGS += -I../Vehicle_API -CPPFLAGS += -I../Vehicle_API/common ######### add compile option ############# CPPFLAGS += -DLINUX -fPIC diff --git a/positioning/client/src/POS_common_API/libPOS_common_API.ver b/positioning/client/src/POS_common_API/libPOS_common_API.ver index 1e7baf59..afc7f3a5 100644 --- a/positioning/client/src/POS_common_API/libPOS_common_API.ver +++ b/positioning/client/src/POS_common_API/libPOS_common_API.ver @@ -1,5 +1,5 @@ /* - * @copyright Copyright (c) 2016-2019 TOYOTA MOTOR CORPORATION. + * @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. diff --git a/positioning/client/src/POS_gps_API/Gps_API.cpp b/positioning/client/src/POS_gps_API/Gps_API.cpp index b3da219e..7395f9d6 100644 --- a/positioning/client/src/POS_gps_API/Gps_API.cpp +++ b/positioning/client/src/POS_gps_API/Gps_API.cpp @@ -1,5 +1,5 @@ /* - * @copyright Copyright (c) 2016-2019 TOYOTA MOTOR CORPORATION. + * @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. @@ -67,9 +67,9 @@ POS_RET_API POS_ReqGPSReset(HANDLE hApp, PCSTR ResName, uint8_t mode) { // NOLI /* Arguments & Support Configuration Check */ if ((hApp == NULL) || (ResName == NULL)) { ret = POS_RET_ERROR_PARAM; -// } else if (GPS_RST_COLDSTART != mode) { -// /* Parameter error except */ -// ret = POS_RET_ERROR_PARAM; + } else if (GPS_RST_COLDSTART != mode) { + /* Parameter error except */ + ret = POS_RET_ERROR_PARAM; } else { /* Positioning Base API initialization */ _pb_Setup_CWORD64_API(hApp); @@ -95,7 +95,7 @@ POS_RET_API POS_ReqGPSReset(HANDLE hApp, PCSTR ResName, uint8_t mode) { // NOLI if (VehicleGetResource() == TRUE) { /* Event Generation */ rs_pno = _pb_CnvName2Pno(ResName); - pid = (u_int32)getpid(); + pid = (uint32_t)getpid(); tid = GetTid(); snprintf(name, sizeof(name), "PR_p%u_t%u", pid, tid); @@ -153,53 +153,6 @@ POS_RET_API POS_ReqGPSReset(HANDLE hApp, PCSTR ResName, uint8_t mode) { // NOLI return ret; } -/** - * @brief - * Get GPS version - * - * Get GPS version information - * - * @param[in] hApp HANDLE - Application handle - * @param[in] buf_size uint8_t - Storage size of version information(Byte) - * @param[in] buf int8_t* - Pointer to store the version information - * @param[in] size uint8_t* - Size of the character string written to buf(Byte) - * - * @return POS_RET_NORMAL Normal completion(Include illegal)
- * POS_RET_ERROR_PARAM Parameter error
- * POS_RET_ERROR_NOSUPPORT Unsupported environment - * - */ -POS_RET_API POS_GetGPSVersion(HANDLE hApp, // NOLINT(readability/nolint) - uint8_t buf_size, - int8_t* buf, // NOLINT(readability/nolint) - uint8_t* size) { - POS_RET_API ret = POS_RET_NORMAL; /* Return value */ - UNIT_TYPE type = UNIT_TYPE_NONE; /* Supported HW Configuration Type */ - - FRAMEWORKUNIFIEDLOG(ZONE_26, __FUNCTION__, "+"); - - /* Positioning Base API initialization */ - _pb_Setup_CWORD64_API(hApp); - - /* Supported HW Configuration Check */ - type = GetEnvSupportInfo(); - if (UNIT_TYPE_GRADE1 == type) { - /* GRADE1 */ - ret = POS_RET_ERROR_NOSUPPORT; - } else if (UNIT_TYPE_GRADE2 == type) { - /* - * Note. - * This feature branches processing depending on the unit type. - */ - ret = POS_RET_ERROR_NOSUPPORT; - } else { - /* Environment error */ - ret = POS_RET_ERROR_NOSUPPORT; - } - FRAMEWORKUNIFIEDLOG(ZONE_26, __FUNCTION__, "- [ret = %d]", ret); - return ret; -} - /** * @brief * GPS time setting request delivery registration @@ -295,67 +248,67 @@ POS_RET_API POS_RegisterListenerGPSTimeSetReq(HANDLE hApp, // NOLINT(readabilit * POS_RET_ERROR_NOSUPPORT Unsupported environment * */ -//POS_RET_API POS_SetGPStime(HANDLE hApp, POS_DATETIME* pstDateTime) { // NOLINT(readability/nolint) -// POS_RET_API ret = POS_RET_NORMAL; /* Return value of this function */ -// UNIT_TYPE type = UNIT_TYPE_NONE; /* Supported HW Configuration Type */ -// -// FRAMEWORKUNIFIEDLOG(ZONE_26, __FUNCTION__, "+"); -// -// /* Arguments & Support Configuration Check */ -// if ((pstDateTime == NULL) || (hApp == NULL)) { -// ret = POS_RET_ERROR_PARAM; -// } else { -// /* Positioning Base API initialization */ -// _pb_Setup_CWORD64_API(hApp); -// -// /* Supported HW Configuration Check */ -// type = GetEnvSupportInfo(); -// if (UNIT_TYPE_GRADE1 == type) { -// /* GRADE1 */ -// ret = POS_RET_NORMAL; -// } else if (UNIT_TYPE_GRADE2 == type) { -// /* -// * Note. -// * This feature branches processing depending on the unit type. -// */ -// ret = POS_RET_ERROR_NOSUPPORT; -// } else { -// /* Environment error */ -// ret = POS_RET_ERROR_NOSUPPORT; -// } -// } -// -// if (ret == POS_RET_NORMAL) { -// /* Parameter range check */ -// /* Month */ -// if (POS_RET_ERROR == POS_CHKPARAMU8(pstDateTime->month, 1, 12)) { -// return POS_RET_ERROR_PARAM; -// } -// /* Day */ -// if (POS_RET_ERROR == POS_CHKPARAMU8(pstDateTime->date, 1, 31)) { -// return POS_RET_ERROR_PARAM; -// } -// /* Hour */ -// if (POS_RET_ERROR == POS_CHKPARAMU8(pstDateTime->hour, 0, 23)) { -// return POS_RET_ERROR_PARAM; -// } -// /* Minutes */ -// if (POS_RET_ERROR == POS_CHKPARAMU8(pstDateTime->minute, 0, 59)) { -// return POS_RET_ERROR_PARAM; -// } -// /* Second */ -// if (POS_RET_ERROR == POS_CHKPARAMU8(pstDateTime->second, 0, 59)) { -// return POS_RET_ERROR_PARAM; -// } -// -// /* Data setting(Immediate recovery)*/ -// ret = PosSetProc(VEHICLE_DID_SETTINGTIME, -// reinterpret_cast(pstDateTime), sizeof(POS_DATETIME), FALSE); -// } -// -// FRAMEWORKUNIFIEDLOG(ZONE_26, __FUNCTION__, "- [ret = %d]", ret); -// return ret; -//} +POS_RET_API POS_SetGPStime(HANDLE hApp, POS_DATETIME* pstDateTime) { // NOLINT(readability/nolint) + POS_RET_API ret = POS_RET_NORMAL; /* Return value of this function */ + UNIT_TYPE type = UNIT_TYPE_NONE; /* Supported HW Configuration Type */ + + FRAMEWORKUNIFIEDLOG(ZONE_26, __FUNCTION__, "+"); + + /* Arguments & Support Configuration Check */ + if ((pstDateTime == NULL) || (hApp == NULL)) { + ret = POS_RET_ERROR_PARAM; + } else { + /* Positioning Base API initialization */ + _pb_Setup_CWORD64_API(hApp); + + /* Supported HW Configuration Check */ + type = GetEnvSupportInfo(); + if (UNIT_TYPE_GRADE1 == type) { + /* GRADE1 */ + ret = POS_RET_NORMAL; + } else if (UNIT_TYPE_GRADE2 == type) { + /* + * Note. + * This feature branches processing depending on the unit type. + */ + ret = POS_RET_ERROR_NOSUPPORT; + } else { + /* Environment error */ + ret = POS_RET_ERROR_NOSUPPORT; + } + } + + if (ret == POS_RET_NORMAL) { + /* Parameter range check */ + /* Month */ + if (POS_RET_ERROR == POS_CHKPARAMU8(pstDateTime->month, 1, 12)) { + return POS_RET_ERROR_PARAM; + } + /* Day */ + if (POS_RET_ERROR == POS_CHKPARAMU8(pstDateTime->date, 1, 31)) { + return POS_RET_ERROR_PARAM; + } + /* Hour */ + if (POS_RET_ERROR == POS_CHKPARAMU8(pstDateTime->hour, 0, 23)) { + return POS_RET_ERROR_PARAM; + } + /* Minutes */ + if (POS_RET_ERROR == POS_CHKPARAMU8(pstDateTime->minute, 0, 59)) { + return POS_RET_ERROR_PARAM; + } + /* Second */ + if (POS_RET_ERROR == POS_CHKPARAMU8(pstDateTime->second, 0, 59)) { + return POS_RET_ERROR_PARAM; + } + + /* Data setting(Immediate recovery)*/ + ret = PosSetProc(VEHICLE_DID_SETTINGTIME, + reinterpret_cast(pstDateTime), sizeof(POS_DATETIME), FALSE); + } + + FRAMEWORKUNIFIEDLOG(ZONE_26, __FUNCTION__, "- [ret = %d]", ret); + return ret; +} /** * @brief @@ -448,56 +401,56 @@ SENSOR_RET_API POS_RegisterListenerGPStime(HANDLE hApp, // NOLINT(readability/n * POS_RET_ERROR_NOSUPPORT Unsupported environment * */ -//POS_RET_API POS_GetGPStime(HANDLE hApp, SENSOR_GPSTIME* dat) { // NOLINT(readability/nolint) -// POS_RET_API ret = POS_RET_NORMAL; /* Return value */ -// UNIT_TYPE type = UNIT_TYPE_NONE; /* Supported HW Configuration Type */ -// DID did = VEHICLE_DID_GPS_TIME; /* DID */ -// int32 ret_get_proc; /* POS_GetProc Return Values */ -// -// /* Internal debug log output */ -// FRAMEWORKUNIFIEDLOG(ZONE_26, __FUNCTION__, "+"); -// -// /* Arguments & Support Configuration Check */ -// if (hApp == NULL) { -// /* If the handler is NULL, the process terminates with an error. */ -// ret = POS_RET_ERROR_PARAM; -// } else if (dat == NULL) { -// /* If the longitude/latitude data is NULL, it ends with an abnormal parameter. */ -// ret = POS_RET_ERROR_PARAM; -// } else { -// /* Positioning Base API initialization */ -// _pb_Setup_CWORD64_API(hApp); -// -// /* Supported HW Configuration Check */ -// type = GetEnvSupportInfo(); -// if (UNIT_TYPE_GRADE1 == type) { -// ret = POS_RET_NORMAL; -// } else { -// /* -// * Note. -// * This feature branches processing depending on the unit type. -// */ -// ret = POS_RET_ERROR_NOSUPPORT; -// } -// } -// -// /* Sensor information acquisition */ -// if (ret == POS_RET_NORMAL) { -// /* Data acquisition process */ -// ret_get_proc = PosGetProc(did, reinterpret_cast(dat), sizeof(SENSOR_GPSTIME)); -// if (static_cast(sizeof(SENSOR_GPSTIME)) > ret_get_proc) { -// /** Failed to acquire */ -// if (ret_get_proc == POS_RET_ERROR_RESOURCE) { -// /** Insufficient resource */ -// ret = POS_RET_ERROR_RESOURCE; -// } else { -// ret = POS_RET_ERROR_INNER; -// } -// FRAMEWORKUNIFIEDLOG(ZONE_ERR, __FUNCTION__, "PosGetProc ERROR [ret = %d]", ret); -// } -// } -// -// FRAMEWORKUNIFIEDLOG(ZONE_26, __FUNCTION__, "- [ret = %d]", ret); -// -// return ret; -//} +POS_RET_API POS_GetGPStime(HANDLE hApp, SENSOR_GPSTIME* dat) { // NOLINT(readability/nolint) + POS_RET_API ret = POS_RET_NORMAL; /* Return value */ + UNIT_TYPE type = UNIT_TYPE_NONE; /* Supported HW Configuration Type */ + DID did = VEHICLE_DID_GPS_TIME; /* DID */ + int32_t ret_get_proc; /* POS_GetProc Return Values */ + + /* Internal debug log output */ + FRAMEWORKUNIFIEDLOG(ZONE_26, __FUNCTION__, "+"); + + /* Arguments & Support Configuration Check */ + if (hApp == NULL) { + /* If the handler is NULL, the process terminates with an error. */ + ret = POS_RET_ERROR_PARAM; + } else if (dat == NULL) { + /* If the longitude/latitude data is NULL, it ends with an abnormal parameter. */ + ret = POS_RET_ERROR_PARAM; + } else { + /* Positioning Base API initialization */ + _pb_Setup_CWORD64_API(hApp); + + /* Supported HW Configuration Check */ + type = GetEnvSupportInfo(); + if (UNIT_TYPE_GRADE1 == type) { + ret = POS_RET_NORMAL; + } else { + /* + * Note. + * This feature branches processing depending on the unit type. + */ + ret = POS_RET_ERROR_NOSUPPORT; + } + } + + /* Sensor information acquisition */ + if (ret == POS_RET_NORMAL) { + /* Data acquisition process */ + ret_get_proc = PosGetProc(did, reinterpret_cast(dat), sizeof(SENSOR_GPSTIME)); + if (static_cast(sizeof(SENSOR_GPSTIME)) > ret_get_proc) { + /* Failed to acquire */ + if (ret_get_proc == POS_RET_ERROR_RESOURCE) { + /* Insufficient resource */ + ret = POS_RET_ERROR_RESOURCE; + } else { + ret = POS_RET_ERROR_INNER; + } + FRAMEWORKUNIFIEDLOG(ZONE_ERR, __FUNCTION__, "PosGetProc ERROR [ret = %d]", ret); + } + } + + FRAMEWORKUNIFIEDLOG(ZONE_26, __FUNCTION__, "- [ret = %d]", ret); + + return ret; +} diff --git a/positioning/client/src/POS_gps_API/Makefile b/positioning/client/src/POS_gps_API/Makefile index a2de3c80..c6391a9e 100644 --- a/positioning/client/src/POS_gps_API/Makefile +++ b/positioning/client/src/POS_gps_API/Makefile @@ -1,5 +1,5 @@ # -# @copyright Copyright (c) 2016-2019 TOYOTA MOTOR CORPORATION. +# @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. @@ -17,13 +17,10 @@ INST_SHLIBS = libPOS_gps_API ######### compiled sources ############# -VPATH += ../POS_naviinfo_API/variant/awnavi/src - libPOS_gps_API_SRCS += Gps_API.cpp libPOS_gps_API_SRCS += Naviinfo_API.cpp ######### add include path ############# -CPPFLAGS += -I./ CPPFLAGS += -I../../../server/include/common CPPFLAGS += -I../../include CPPFLAGS += -I../../../server/include/nsfw diff --git a/positioning/client/src/POS_gps_API/Naviinfo_API.cpp b/positioning/client/src/POS_gps_API/Naviinfo_API.cpp new file mode 100644 index 00000000..cfe04ff8 --- /dev/null +++ b/positioning/client/src/POS_gps_API/Naviinfo_API.cpp @@ -0,0 +1,404 @@ +/* + * @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. + */ + +/****************************************************************************** +@file Naviinfo_API.cpp +@detail Naviinfo_API Functions +@lib libNaviinfo_API.so +******************************************************************************/ + +/***************************************************************************** + * Include * + *****************************************************************************/ +#include "Naviinfo_API.h" +#include +#include +#include +#include "Vehicle_API_Dummy.h" +#include "POS_private.h" +#include // NOLINT(build/include_order) + +void PosCnvGpsInfo(NAVIINFO_ALL *navi_loc_info); + + +/** + * @brief + * GPS information setting + * + * Set GPS information + * + * @param[in] hApp HANDLE - Application handle + * @param[in] navilocinfo NAVIINFO_ALL* - Pointer to GPS information storage area + * + * @return NAVIINFO_RET_NORMAL Normal completion
+ * NAVIINFO_RET_ERROR_PARAM Parameter error
+ * NAVIINFO_RET_ERROR_INNER Internal error
+ * NAVIINFO_RET_ERROR_NOSUPPORT Unsupported environment + * + */ +NAVIINFO_RET_API POS_SetGPSInfo(HANDLE hApp, NAVIINFO_ALL *navilocinfo) +{ + NAVIINFO_RET_API ret = NAVIINFO_RET_NORMAL; /* Return value of this function */ + UNIT_TYPE type = UNIT_TYPE_NONE; /* Supported HW Configuration Type */ + NAVIINFO_ALL navi_loc_info_tmp; /* Conversion quantity area */ + RET_API ret_api; + + /** NULL checking */ + if (navilocinfo == NULL) { + /** Parameter error */ + ret = NAVIINFO_RET_ERROR_PARAM; + } else if (hApp == NULL) { + /** Parameter error */ + ret = NAVIINFO_RET_ERROR_PARAM; + } else { + /* Positioning Base API initialization */ + _pb_Setup_CWORD64_API(hApp); + + /* Supported HW Configuration Check */ + type = GetEnvSupportInfo(); + if (UNIT_TYPE_GRADE1 == type) { + /* GRADE1 */ + ret = NAVIINFO_RET_NORMAL; + } else if (UNIT_TYPE_GRADE2 == type) { + /* + * Note. + * This feature branches processing depending on the unit type. + */ + ret = NAVIINFO_RET_ERROR_NOSUPPORT; + } else { + /* Environment error */ + ret = NAVIINFO_RET_ERROR_NOSUPPORT; + } + } + + if (ret == NAVIINFO_RET_NORMAL) { + /* Parameter range check */ + if (navilocinfo->stNaviGps.tdsts != 0) { /* Other than ""Time not calibrated after receiver reset"" */ + /* Positioning status information */ + if (POS_RET_ERROR == POS_CHKPARAMU8(navilocinfo->stDiagGps.stFix.ucFixSts, 0, 2)) { + return NAVIINFO_RET_ERROR_PARAM; + } + /* Latitude */ + if (POS_RET_ERROR == POS_CHKPARAM32(navilocinfo->stDiagGps.stFix.stWgs84.lLat, -82944000, 82944000)) { + return NAVIINFO_RET_ERROR_PARAM; + } + /* Longitude */ + if (POS_RET_ERROR == POS_CHKPARAM32(navilocinfo->stDiagGps.stFix.stWgs84.lLon, -165888000, 165888000)) { + return NAVIINFO_RET_ERROR_PARAM; + } + /* Measurement Azimuth */ + if (POS_RET_ERROR == POS_CHKPARAMU16(navilocinfo->stNaviGps.heading, 0, 3599)) { + return NAVIINFO_RET_ERROR_PARAM; + } + /* UTC(Month) */ + if (POS_RET_ERROR == POS_CHKPARAMU8(navilocinfo->stNaviGps.utc.month, 1, 12)) { + return NAVIINFO_RET_ERROR_PARAM; + } + /* UTC(Day) */ + if (POS_RET_ERROR == POS_CHKPARAMU8(navilocinfo->stNaviGps.utc.date, 1, 31)) { + return NAVIINFO_RET_ERROR_PARAM; + } + /* UTC(Hour) */ + if (POS_RET_ERROR == POS_CHKPARAMU8(navilocinfo->stNaviGps.utc.hour, 0, 23)) { + return NAVIINFO_RET_ERROR_PARAM; + } + /* UTC(Minutes) */ + if (POS_RET_ERROR == POS_CHKPARAMU8(navilocinfo->stNaviGps.utc.minute, 0, 59)) { + return NAVIINFO_RET_ERROR_PARAM; + } + /* UTC(Second) */ + if (POS_RET_ERROR == POS_CHKPARAMU8(navilocinfo->stNaviGps.utc.second, 0, 59)) { + return NAVIINFO_RET_ERROR_PARAM; + } + } + /* Date and Time Status */ + if (POS_RET_ERROR == POS_CHKPARAMU8(navilocinfo->stNaviGps.tdsts, 0, 2)) { + return NAVIINFO_RET_ERROR_PARAM; + } + + /* Copy to conversion area */ + memcpy(&navi_loc_info_tmp, navilocinfo, sizeof(NAVIINFO_ALL)); + /** Data unit conversion */ + PosCnvGpsInfo(&navi_loc_info_tmp); + + /* Resource acquisition */ + if (VehicleGetResource() == TRUE) { + + /** Send navigation information to vehicle sensor */ + ret_api = _pb_SndMsg_Ext(POS_THREAD_NAME, + CID_NAVIINFO_DELIVER, + sizeof(NAVIINFO_ALL), + reinterpret_cast(&navi_loc_info_tmp), 0); + if (ret_api != RET_NORMAL) { + /** Message transmission failure */ + ret = NAVIINFO_RET_ERROR_INNER; + } + } else { + /* When resource shortage occurs, the system terminates with an insufficient resource error. */ + ret = NAVIINFO_RET_ERROR_RESOURCE; + } + /* Resource release */ + VehicleReleaseResource(); + } + + return ret; +} + +/** + * @brief + * GPS information acquisition + * + * Access GPS information + * + * @param[in] hApp HANDLE - Application handle + * @param[in] navidiaginfo NAVIINFO_DIAG_GPS* - Pointer to GPS information storage area + * + * @return NAVIINFO_RET_NORMAL Normal completion
+ * NAVIINFO_RET_ERROR_PARAM Parameter error
+ * NAVIINFO_RET_ERROR_INNER Internal error
+ * NAVIINFO_RET_ERROR_NOSUPPORT Unsupported environment + * + */ +NAVIINFO_RET_API POS_GetGPSInfo(HANDLE hApp, NAVIINFO_DIAG_GPS *navidiaginfo) +{ + NAVIINFO_RET_API ret = NAVIINFO_RET_NORMAL; /* Return value of this function */ + UNIT_TYPE type = UNIT_TYPE_NONE; /* Supported HW Configuration Type */ + int32_t ret_veh; /* VehicleAPI Return Values */ + NAVIINFO_DIAG_GPS dest_data; /* Data acquisition area */ + + /** NULL checking */ + if (navidiaginfo == NULL) { + /** Parameter error */ + ret = NAVIINFO_RET_ERROR_PARAM; + } else if (hApp == NULL) { + /** Parameter error */ + ret = NAVIINFO_RET_ERROR_PARAM; + } else { + /* Positioning Base API initialization */ + _pb_Setup_CWORD64_API(hApp); + + /* Supported HW Configuration Check */ + type = GetEnvSupportInfo(); + if (UNIT_TYPE_GRADE1 == type) { + /* GRADE1 */ + ret = NAVIINFO_RET_NORMAL; + } else if (UNIT_TYPE_GRADE2 == type) { + /* + * Note. + * This feature branches processing depending on the unit type. + */ + ret = NAVIINFO_RET_ERROR_NOSUPPORT; + } else { + /* Environment error */ + ret = NAVIINFO_RET_ERROR_NOSUPPORT; + } + } + + if (ret == NAVIINFO_RET_NORMAL) { + /** Acquisition of navigation data for Diag provide */ + ret_veh = PosGetProc( + (DID)VEHICLE_DID_NAVIINFO_DIAG_GPS, + reinterpret_cast(&dest_data), + (u_int16)sizeof(dest_data)); + + if (static_cast(sizeof(NAVIINFO_DIAG_GPS)) > ret_veh) { + /** Failed to acquire */ + if (ret_veh == POS_RET_ERROR_RESOURCE) { + ret = NAVIINFO_RET_ERROR_RESOURCE; + } else { + ret = NAVIINFO_RET_ERROR_INNER; + } + } else { + /** Successful acquisition */ + memcpy( navidiaginfo, &dest_data, sizeof(NAVIINFO_DIAG_GPS)); + } + } + + return ret; +} + +/* ++ GPS _CWORD82_ support */ +/** + * @brief + * GPS setting transmission request + * + * Requesting GPS Settings with Complete Return + * + * @param[in] hApp HANDLE - Application handle + * @param[in] p_data SENSOR_MSG_SEND_DAT* - GPS setting information to be sent + * + * @return SENSOR_RET_NORMAL Normal completion
+ * SENSOR_RET_ERROR_CREATE_EVENT Event generation failure
+ * SENSOR_RET_ERROR_PARAM Parameter error
+ * SENSOR_RET_ERROR_DID Unregistered DID
+ * SENSOR_RET_ERROR_NOSUPPORT Unsupported environment + * + */ +int32 POS_ReqGPSSetting(HANDLE hApp, SENSOR_MSG_SEND_DAT *p_data) { /* Ignore->MISRA-C++:2008 Rule 7-1-2 */ + SENSOR_RET_API ret = SENSOR_RET_NORMAL; /* Return value */ + RET_API ret_api; /* System API return value */ + uint16_t expected_size; /* Message size for the specified DID */ + + UNIT_TYPE type = UNIT_TYPE_NONE; /* Supported HW Configuration Type */ + + if (hApp == NULL) { + /* Parameter error */ + ret = SENSOR_RET_ERROR_PARAM; + } + + if (ret == SENSOR_RET_NORMAL) { + /* Positioning Base API initialization */ + _pb_Setup_CWORD64_API(hApp); + + /* Argument check (DID) + Size calculation */ + if (p_data != reinterpret_cast(NULL)) { + switch (p_data->did) { + case VEHICLE_DID_GPS__CWORD82__SETINITIAL: + { + expected_size = 71; + break; + } + case VEHICLE_DID_GPS__CWORD82__SETRMODE: + { + expected_size = 50; + break; + } + case VEHICLE_DID_GPS__CWORD82__SETRMODEEX: + { + expected_size = 63; + break; + } + case VEHICLE_DID_GPS__CWORD82__SELSENT: + { + expected_size = 21; + break; + } + case VEHICLE_DID_GPS__CWORD82__SETSBAS: + { + expected_size = 34; + break; + } + case VEHICLE_DID_GPS__CWORD82__SETCONF1: + { + expected_size = 37; + break; + } + case VEHICLE_DID_GPS__CWORD82__SETCONF2: + { + expected_size = 45; + break; + } + default: /* Ignore->MISRA-C++:2008 Rule 6-3-1, 6-4-1 */ + ret = SENSOR_RET_ERROR_DID; + break; + } + } else { + ret = SENSOR_RET_ERROR_PARAM; + } + } + + /* Supported HW Configuration Check */ + if (ret == SENSOR_RET_NORMAL) { + type = GetEnvSupportInfo(); + if (UNIT_TYPE_GRADE1 == type) { + /* GRADE1 */ + ret = SENSOR_RET_NORMAL; + } else if (UNIT_TYPE_GRADE2 == type) { + /* + * Note. + * This feature branches processing depending on the unit type. + */ + ret = SENSOR_RET_ERROR_NOSUPPORT; + } else { + /* Environment error */ + ret = SENSOR_RET_ERROR_NOSUPPORT; + } + } + + if (ret == SENSOR_RET_NORMAL) { + /* Argument check (Size)*/ + if (expected_size != p_data->usSize) { + ret = SENSOR_RET_ERROR_PARAM; + } else { + /* Message buffer initialization */ + + /* Create message data */ + + /* Resource acquisition */ + if (VehicleGetResource() == TRUE) { + /* External Process Transmission and Reception Messages */ + FRAMEWORKUNIFIEDLOG(ZONE_27, __FUNCTION__, + "POSITIONING: POS_ReqGPSSetting() --> cid = %d", + CID_SENSORIF__CWORD82__REQUEST); + ret_api = _pb_SndMsg_Ext(POS_THREAD_NAME, + CID_SENSORIF__CWORD82__REQUEST, + sizeof(SENSOR_MSG_SEND_DAT), + reinterpret_cast(p_data), 0); + FRAMEWORKUNIFIEDLOG(ZONE_27, __FUNCTION__, "POSITIONING: POS_ReqGPSSetting() <--"); + + if (ret_api != RET_NORMAL) { + ret = SENSOR_RET_ERROR_CREATE_EVENT; + } + } else { + /* When resource shortage occurs, the system terminates with an insufficient resource error. */ + ret = SENSOR_RET_ERROR_RESOURCE; + } + /* Resource release */ + VehicleReleaseResource(); + } + } + + return ret; +} +/* -- GPS _CWORD82_ support */ + +/** + * @brief + * GPS information conversion process + * + * Convert GPS information to a format to be provided to the vehicle sensor + * + * @param[in] none + * @param[in] navi_loc_info NAVIINFO_ALL* - GPS information pointer + * + * @return none + */ +void PosCnvGpsInfo(NAVIINFO_ALL *navi_loc_info) { + int32_t altitude; + int64_t tmp; + uint16_t heading; + + /* Unit conversion of fix altitude[1m]->[0.01m] */ + tmp = (int64_t)((int64_t)(navi_loc_info->stNaviGps.altitude) * 100); + if (tmp > static_cast(0x7FFFFFFF)) { + /* +Overflow of digits */ + altitude = static_cast(0x7FFFFFFF); + } else if (tmp < static_cast(0x80000000)) { /* Ignore->MISRA-C:2004 Rule 3.1 */ + /* -Overflow of digits */ + altitude = static_cast(0x80000000); /* Ignore->MISRA-C:2004 Rule 3.1 */ + } else { + altitude = static_cast(tmp); + } + navi_loc_info->stNaviGps.altitude = altitude; + + /* Measurement Azimuth Conversion[0.Once]->[0.01 degree] */ + heading = navi_loc_info->stNaviGps.heading; + heading = static_cast(heading - ((heading / 3600) * 3600)); + heading = static_cast(heading * 10); + navi_loc_info->stNaviGps.heading = heading; + + return; +} diff --git a/positioning/client/src/POS_gps_API/libPOS_gps_API.ver b/positioning/client/src/POS_gps_API/libPOS_gps_API.ver index 93578dec..038c99ec 100644 --- a/positioning/client/src/POS_gps_API/libPOS_gps_API.ver +++ b/positioning/client/src/POS_gps_API/libPOS_gps_API.ver @@ -1,5 +1,5 @@ /* - * @copyright Copyright (c) 2016-2019 TOYOTA MOTOR CORPORATION. + * @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. diff --git a/positioning/client/src/POS_naviinfo_API/variant/awnavi/src/Naviinfo_API.cpp b/positioning/client/src/POS_naviinfo_API/variant/awnavi/src/Naviinfo_API.cpp deleted file mode 100644 index 38f821f6..00000000 --- a/positioning/client/src/POS_naviinfo_API/variant/awnavi/src/Naviinfo_API.cpp +++ /dev/null @@ -1,404 +0,0 @@ -/* - * @copyright Copyright (c) 2016-2019 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. - */ - -/****************************************************************************** -@file Naviinfo_API.cpp -@detail Naviinfo_API Functions -@lib libNaviinfo_API.so -******************************************************************************/ - -/***************************************************************************** - * Include * - *****************************************************************************/ -#include "Naviinfo_API.h" -#include -#include -#include -#include "Vehicle_API_Dummy.h" -#include "POS_private.h" -#include // NOLINT(build/include_order) - -//void PosCnvGpsInfo(NAVIINFO_ALL *navi_loc_info); - - -/** - * @brief - * GPS information setting - * - * Set GPS information - * - * @param[in] hApp HANDLE - Application handle - * @param[in] navilocinfo NAVIINFO_ALL* - Pointer to GPS information storage area - * - * @return NAVIINFO_RET_NORMAL Normal completion
- * NAVIINFO_RET_ERROR_PARAM Parameter error
- * NAVIINFO_RET_ERROR_INNER Internal error
- * NAVIINFO_RET_ERROR_NOSUPPORT Unsupported environment - * - */ -//NAVIINFO_RET_API POS_SetGPSInfo(HANDLE hApp, NAVIINFO_ALL *navilocinfo) -//{ -// NAVIINFO_RET_API ret = NAVIINFO_RET_NORMAL; /* Return value of this function */ -// UNIT_TYPE type = UNIT_TYPE_NONE; /* Supported HW Configuration Type */ -// NAVIINFO_ALL navi_loc_info_tmp; /* Conversion quantity area */ -// RET_API ret_api; -// -// /** NULL checking */ -// if (navilocinfo == NULL) { -// /** Parameter error */ -// ret = NAVIINFO_RET_ERROR_PARAM; -// } else if (hApp == NULL) { -// /** Parameter error */ -// ret = NAVIINFO_RET_ERROR_PARAM; -// } else { -// /* Positioning Base API initialization */ -// _pb_Setup_CWORD64_API(hApp); -// -// /* Supported HW Configuration Check */ -// type = GetEnvSupportInfo(); -// if (UNIT_TYPE_GRADE1 == type) { -// /* GRADE1 */ -// ret = NAVIINFO_RET_NORMAL; -// } else if (UNIT_TYPE_GRADE2 == type) { -// /* -// * Note. -// * This feature branches processing depending on the unit type. -// */ -// ret = NAVIINFO_RET_ERROR_NOSUPPORT; -// } else { -// /* Environment error */ -// ret = NAVIINFO_RET_ERROR_NOSUPPORT; -// } -// } -// -// if (ret == NAVIINFO_RET_NORMAL) { -// /* Parameter range check */ -// if (navilocinfo->stNaviGps.tdsts != 0) { /* Other than ""Time not calibrated after receiver reset"" */ -// /* Positioning status information */ -// if (POS_RET_ERROR == POS_CHKPARAMU8(navilocinfo->stDiagGps.stFix.ucFixSts, 0, 2)) { -// return NAVIINFO_RET_ERROR_PARAM; -// } -// /* Latitude */ -// if (POS_RET_ERROR == POS_CHKPARAM32(navilocinfo->stDiagGps.stFix.stWgs84.lLat, -82944000, 82944000)) { -// return NAVIINFO_RET_ERROR_PARAM; -// } -// /* Longitude */ -// if (POS_RET_ERROR == POS_CHKPARAM32(navilocinfo->stDiagGps.stFix.stWgs84.lLon, -165888000, 165888000)) { -// return NAVIINFO_RET_ERROR_PARAM; -// } -// /* Measurement Azimuth */ -// if (POS_RET_ERROR == POS_CHKPARAMU16(navilocinfo->stNaviGps.heading, 0, 3599)) { -// return NAVIINFO_RET_ERROR_PARAM; -// } -// /* UTC(Month) */ -// if (POS_RET_ERROR == POS_CHKPARAMU8(navilocinfo->stNaviGps.utc.month, 1, 12)) { -// return NAVIINFO_RET_ERROR_PARAM; -// } -// /* UTC(Day) */ -// if (POS_RET_ERROR == POS_CHKPARAMU8(navilocinfo->stNaviGps.utc.date, 1, 31)) { -// return NAVIINFO_RET_ERROR_PARAM; -// } -// /* UTC(Hour) */ -// if (POS_RET_ERROR == POS_CHKPARAMU8(navilocinfo->stNaviGps.utc.hour, 0, 23)) { -// return NAVIINFO_RET_ERROR_PARAM; -// } -// /* UTC(Minutes) */ -// if (POS_RET_ERROR == POS_CHKPARAMU8(navilocinfo->stNaviGps.utc.minute, 0, 59)) { -// return NAVIINFO_RET_ERROR_PARAM; -// } -// /* UTC(Second) */ -// if (POS_RET_ERROR == POS_CHKPARAMU8(navilocinfo->stNaviGps.utc.second, 0, 59)) { -// return NAVIINFO_RET_ERROR_PARAM; -// } -// } -// /* Date and Time Status */ -// if (POS_RET_ERROR == POS_CHKPARAMU8(navilocinfo->stNaviGps.tdsts, 0, 2)) { -// return NAVIINFO_RET_ERROR_PARAM; -// } -// -// /* Copy to conversion area */ -// memcpy(&navi_loc_info_tmp, navilocinfo, sizeof(NAVIINFO_ALL)); -// /** Data unit conversion */ -// PosCnvGpsInfo(&navi_loc_info_tmp); -// -// /* Resource acquisition */ -// if (VehicleGetResource() == TRUE) { -// -// /** Send navigation information to vehicle sensor */ -// ret_api = _pb_SndMsg_Ext(POS_THREAD_NAME, -// CID_NAVIINFO_DELIVER, -// sizeof(NAVIINFO_ALL), -// reinterpret_cast(&navi_loc_info_tmp), 0); -// if (ret_api != RET_NORMAL) { -// /** Message transmission failure */ -// ret = NAVIINFO_RET_ERROR_INNER; -// } -// } else { -// /* When resource shortage occurs, the system terminates with an insufficient resource error. */ -// ret = NAVIINFO_RET_ERROR_RESOURCE; -// } -// /* Resource release */ -// VehicleReleaseResource(); -// } -// -// return ret; -//} - -/** - * @brief - * GPS information acquisition - * - * Access GPS information - * - * @param[in] hApp HANDLE - Application handle - * @param[in] navidiaginfo NAVIINFO_DIAG_GPS* - Pointer to GPS information storage area - * - * @return NAVIINFO_RET_NORMAL Normal completion
- * NAVIINFO_RET_ERROR_PARAM Parameter error
- * NAVIINFO_RET_ERROR_INNER Internal error
- * NAVIINFO_RET_ERROR_NOSUPPORT Unsupported environment - * - */ -//NAVIINFO_RET_API POS_GetGPSInfo(HANDLE hApp, NAVIINFO_DIAG_GPS *navidiaginfo) -//{ -// NAVIINFO_RET_API ret = NAVIINFO_RET_NORMAL; /* Return value of this function */ -// UNIT_TYPE type = UNIT_TYPE_NONE; /* Supported HW Configuration Type */ -// int32 ret_veh; /* VehicleAPI Return Values */ -// NAVIINFO_DIAG_GPS dest_data; /* Data acquisition area */ -// -// /** NULL checking */ -// if (navidiaginfo == NULL) { -// /** Parameter error */ -// ret = NAVIINFO_RET_ERROR_PARAM; -// } else if (hApp == NULL) { -// /** Parameter error */ -// ret = NAVIINFO_RET_ERROR_PARAM; -// } else { -// /* Positioning Base API initialization */ -// _pb_Setup_CWORD64_API(hApp); -// -// /* Supported HW Configuration Check */ -// type = GetEnvSupportInfo(); -// if (UNIT_TYPE_GRADE1 == type) { -// /* GRADE1 */ -// ret = NAVIINFO_RET_NORMAL; -// } else if (UNIT_TYPE_GRADE2 == type) { -// /* -// * Note. -// * This feature branches processing depending on the unit type. -// */ -// ret = NAVIINFO_RET_ERROR_NOSUPPORT; -// } else { -// /* Environment error */ -// ret = NAVIINFO_RET_ERROR_NOSUPPORT; -// } -// } -// -// if (ret == NAVIINFO_RET_NORMAL) { -// /** Acquisition of navigation data for Diag provide */ -// ret_veh = PosGetProc( -// (DID)VEHICLE_DID_NAVIINFO_DIAG_GPS, -// reinterpret_cast(&dest_data), -// (u_int16)sizeof(dest_data)); -// -// if (static_cast(sizeof(NAVIINFO_DIAG_GPS)) > ret_veh) { -// /** Failed to acquire */ -// if (ret_veh == POS_RET_ERROR_RESOURCE) { -// ret = NAVIINFO_RET_ERROR_RESOURCE; -// } else { -// ret = NAVIINFO_RET_ERROR_INNER; -// } -// } else { -// /** Successful acquisition */ -// memcpy( navidiaginfo, &dest_data, sizeof(NAVIINFO_DIAG_GPS)); -// } -// } -// -// return ret; -//} - -/* ++ GPS _CWORD82_ support */ -/** - * @brief - * GPS setting transmission request - * - * Requesting GPS Settings with Complete Return - * - * @param[in] hApp HANDLE - Application handle - * @param[in] p_data SENSOR_MSG_SEND_DAT* - GPS setting information to be sent - * - * @return SENSOR_RET_NORMAL Normal completion
- * SENSOR_RET_ERROR_CREATE_EVENT Event generation failure
- * SENSOR_RET_ERROR_PARAM Parameter error
- * SENSOR_RET_ERROR_DID Unregistered DID
- * SENSOR_RET_ERROR_NOSUPPORT Unsupported environment - * - */ -int32 POS_ReqGPSSetting(HANDLE hApp, SENSOR_MSG_SEND_DAT *p_data) { /* Ignore->MISRA-C++:2008 Rule 7-1-2 */ - SENSOR_RET_API ret = SENSOR_RET_NORMAL; /* Return value */ - RET_API ret_api; /* System API return value */ - u_int16 expected_size; /* Message size for the specified DID */ - - UNIT_TYPE type = UNIT_TYPE_NONE; /* Supported HW Configuration Type */ - - if (hApp == NULL) { - /* Parameter error */ - ret = SENSOR_RET_ERROR_PARAM; - } - - if (ret == SENSOR_RET_NORMAL) { - /* Positioning Base API initialization */ - _pb_Setup_CWORD64_API(hApp); - - /* Argument check (DID) + Size calculation */ - if (p_data != reinterpret_cast(NULL)) { - switch (p_data->did) { - case VEHICLE_DID_GPS__CWORD82__SETINITIAL: - { - expected_size = 71; - break; - } - case VEHICLE_DID_GPS__CWORD82__SETRMODE: - { - expected_size = 50; - break; - } - case VEHICLE_DID_GPS__CWORD82__SETRMODEEX: - { - expected_size = 63; - break; - } - case VEHICLE_DID_GPS__CWORD82__SELSENT: - { - expected_size = 21; - break; - } - case VEHICLE_DID_GPS__CWORD82__SETSBAS: - { - expected_size = 34; - break; - } - case VEHICLE_DID_GPS__CWORD82__SETCONF1: - { - expected_size = 37; - break; - } - case VEHICLE_DID_GPS__CWORD82__SETCONF2: - { - expected_size = 45; - break; - } - default: /* Ignore->MISRA-C++:2008 Rule 6-3-1, 6-4-1 */ - ret = SENSOR_RET_ERROR_DID; - break; - } - } else { - ret = SENSOR_RET_ERROR_PARAM; - } - } - - /* Supported HW Configuration Check */ - if (ret == SENSOR_RET_NORMAL) { - type = GetEnvSupportInfo(); - if (UNIT_TYPE_GRADE1 == type) { - /* GRADE1 */ - ret = SENSOR_RET_NORMAL; - } else if (UNIT_TYPE_GRADE2 == type) { - /* - * Note. - * This feature branches processing depending on the unit type. - */ - ret = SENSOR_RET_ERROR_NOSUPPORT; - } else { - /* Environment error */ - ret = SENSOR_RET_ERROR_NOSUPPORT; - } - } - - if (ret == SENSOR_RET_NORMAL) { - /* Argument check (Size)*/ - if (expected_size != p_data->usSize) { - ret = SENSOR_RET_ERROR_PARAM; - } else { - /* Message buffer initialization */ - - /* Create message data */ - - /* Resource acquisition */ - if (VehicleGetResource() == TRUE) { - /* External Process Transmission and Reception Messages */ - FRAMEWORKUNIFIEDLOG(ZONE_27, __FUNCTION__, - "POSITIONING: POS_ReqGPSSetting() --> cid = %d", - CID_SENSORIF__CWORD82__REQUEST); - ret_api = _pb_SndMsg_Ext(POS_THREAD_NAME, - CID_SENSORIF__CWORD82__REQUEST, - sizeof(SENSOR_MSG_SEND_DAT), - reinterpret_cast(p_data), 0); - FRAMEWORKUNIFIEDLOG(ZONE_27, __FUNCTION__, "POSITIONING: POS_ReqGPSSetting() <--"); - - if (ret_api != RET_NORMAL) { - ret = SENSOR_RET_ERROR_CREATE_EVENT; - } - } else { - /* When resource shortage occurs, the system terminates with an insufficient resource error. */ - ret = SENSOR_RET_ERROR_RESOURCE; - } - /* Resource release */ - VehicleReleaseResource(); - } - } - - return ret; -} -/* -- GPS _CWORD82_ support */ - -/** - * @brief - * GPS information conversion process - * - * Convert GPS information to a format to be provided to the vehicle sensor - * - * @param[in] none - * @param[in] navi_loc_info NAVIINFO_ALL* - GPS information pointer - * - * @return none - */ -//void PosCnvGpsInfo(NAVIINFO_ALL *navi_loc_info) { -// int32 altitude; -// int64_t tmp; -// u_int16 heading; -// -// /* Unit conversion of fix altitude[1m]->[0.01m] */ -// tmp = (int64_t)((int64_t)(navi_loc_info->stNaviGps.altitude) * 100); -// if (tmp > static_cast(0x7FFFFFFF)) { -// /* +Overflow of digits */ -// altitude = static_cast(0x7FFFFFFF); -// } else if (tmp < static_cast(0x80000000)) { /* Ignore->MISRA-C:2004 Rule 3.1 */ -// /* -Overflow of digits */ -// altitude = static_cast(0x80000000); /* Ignore->MISRA-C:2004 Rule 3.1 */ -// } else { -// altitude = static_cast(tmp); -// } -// navi_loc_info->stNaviGps.altitude = altitude; -// -// /* Measurement Azimuth Conversion[0.Once]->[0.01 degree] */ -// heading = navi_loc_info->stNaviGps.heading; -// heading = static_cast(heading - ((heading / 3600) * 3600)); -// heading = static_cast(heading * 10); -// navi_loc_info->stNaviGps.heading = heading; -// -// return; -//} diff --git a/positioning/client/src/POS_sensor_API/Makefile b/positioning/client/src/POS_sensor_API/Makefile index bde53d22..a4f627f4 100644 --- a/positioning/client/src/POS_sensor_API/Makefile +++ b/positioning/client/src/POS_sensor_API/Makefile @@ -1,5 +1,5 @@ # -# @copyright Copyright (c) 2016-2019 TOYOTA MOTOR CORPORATION. +# @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. @@ -17,21 +17,14 @@ INST_SHLIBS = libPOS_sensor_API ######### compiled sources ############# -VPATH += ../Vehicle_API/common ./common - libPOS_sensor_API_SRCS += Sensor_API.cpp libPOS_sensor_API_SRCS += Vehicle_API.cpp ######### add include path ############# -CPPFLAGS += -I./ -CPPFLAGS += -I./common/ CPPFLAGS += -I../../../server/include/common CPPFLAGS += -I../../include CPPFLAGS += -I../../../server/include/nsfw -CPPFLAGS += -I../Vehicle_API -CPPFLAGS += -I../Vehicle_API/common - ######### add compile option ############# CPPFLAGS += -DLINUX -fPIC diff --git a/positioning/client/src/POS_sensor_API/Sensor_API.cpp b/positioning/client/src/POS_sensor_API/Sensor_API.cpp new file mode 100644 index 00000000..179eb926 --- /dev/null +++ b/positioning/client/src/POS_sensor_API/Sensor_API.cpp @@ -0,0 +1,784 @@ +/* + * @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. + */ + +/******************************************************************************* + * File name :Sensor_API.cpp + * System name :GPF + * Subsystem name :Sensor I/F library + * Program name :SensorI/F API + ******************************************************************************/ + +#include +#include +#include +#include +#include +#include "POS_sensor_private.h" +#include "Sensor_Common_API.h" +#include "Sensor_API_private.h" +#include "Sensor_Common_API.h" +#include "Vehicle_API_Dummy.h" +#include "Vehicle_API_private.h" +#include "Naviinfo_API.h" +#include "POS_private.h" + +/*************************************************/ +/* Global variable */ +/*************************************************/ +/******************************************************************************** + * TAG :TG_GPS_REQ_RESET + * ABSTRACT :GPS reset request + * NOTE :I/F information between host applications(Reset mode) + ********************************************************************************/ +/** + * @brief POS_RegisterListenerPkgSensData Return code list + */ +static const SENSOR_RET_PKG g_ret_list_reg_lis_pkg_sens_data[SENSOR_PUBLIC_DID_NUM] = { + /* GRADE2 GRADE1 DID (Key) */ + {TRUE, TRUE, POS_DID_SPEED_PULSE }, + {FALSE, TRUE, POS_DID_SPEED_KMPH }, + {TRUE, TRUE, POS_DID_GYRO_X }, + {TRUE, TRUE, POS_DID_GYRO_Y }, + {TRUE, TRUE, POS_DID_GYRO_Z }, + {TRUE, TRUE, POS_DID_GSNS_X }, + {TRUE, TRUE, POS_DID_GSNS_Y }, + {TRUE, TRUE, POS_DID_GSNS_Z }, + {FALSE, TRUE, POS_DID_GPS_ANTENNA }, + {TRUE, TRUE, POS_DID_SNS_COUNTER }, + {FALSE, TRUE, POS_DID_SPEED_PULSE_FST }, + {FALSE, TRUE, POS_DID_GYRO_X_FST }, + {FALSE, TRUE, POS_DID_GYRO_Y_FST }, + {FALSE, TRUE, POS_DID_GYRO_Z_FST }, + {FALSE, TRUE, POS_DID_GPS__CWORD82__NMEA }, + {FALSE, TRUE, POS_DID_GPS__CWORD82___CWORD44_GP4 }, + {FALSE, TRUE, POS_DID_GPS__CWORD82__FULLBINARY }, + {FALSE, TRUE, POS_DID_GPS_NMEA }, + {TRUE, TRUE, POS_DID_REV }, + {FALSE, TRUE, POS_DID_REV_FST }, + {TRUE, TRUE, POS_DID_GYRO_TEMP }, + {FALSE, TRUE, POS_DID_GYRO_TEMP_FST }, + {FALSE, TRUE, POS_DID_GSNS_X_FST }, + {FALSE, TRUE, POS_DID_GSNS_Y_FST }, + {FALSE, TRUE, POS_DID_GSNS_Z_FST }, + {TRUE, TRUE, POS_DID_PULSE_TIME }, + {FALSE, TRUE, POS_DID_GPS_CLOCK_DRIFT }, + {FALSE, TRUE, POS_DID_GPS_CLOCK_FREQ }, + {FALSE, TRUE, VEHICLE_DID_GPS_TIME }, /* For local use */ + {FALSE, TRUE, VEHICLE_DID_GPS_TIME_RAW }, /* For local use */ + {FALSE, TRUE, VEHICLE_DID_GPS_WKNROLLOVER} /* For local use */ +}; + +/** + * @brief POS_RegisterListenerSensData Return code list + */ +static const SENSOR_RET_PKG g_ret_list_reg_lis_sens_data[SENSOR_PUBLIC_DID_NUM] = { + /* GRADE2 GRADE1 DID (Key) */ + {TRUE, TRUE, POS_DID_SPEED_PULSE }, + {FALSE, TRUE, POS_DID_SPEED_KMPH }, + {TRUE, TRUE, POS_DID_GYRO_X }, + {TRUE, TRUE, POS_DID_GYRO_Y }, + {TRUE, TRUE, POS_DID_GYRO_Z }, + {TRUE, TRUE, POS_DID_GSNS_X }, + {TRUE, TRUE, POS_DID_GSNS_Y }, + {TRUE, TRUE, POS_DID_GSNS_Z }, + {TRUE, TRUE, POS_DID_GPS_ANTENNA }, + {FALSE, TRUE, POS_DID_SNS_COUNTER }, + {TRUE, TRUE, POS_DID_SPEED_PULSE_FST }, + {TRUE, TRUE, POS_DID_GYRO_X_FST }, + {TRUE, TRUE, POS_DID_GYRO_Y_FST }, + {TRUE, TRUE, POS_DID_GYRO_Z_FST }, + {TRUE, TRUE, POS_DID_GPS__CWORD82__NMEA }, + {FALSE, TRUE, POS_DID_GPS__CWORD82___CWORD44_GP4 }, + {TRUE, TRUE, POS_DID_GPS__CWORD82__FULLBINARY }, + {FALSE, TRUE, POS_DID_GPS_NMEA }, + {FALSE, TRUE, POS_DID_REV }, + {TRUE, TRUE, POS_DID_REV_FST }, + {TRUE, TRUE, POS_DID_GYRO_TEMP }, + {TRUE, TRUE, POS_DID_GYRO_TEMP_FST }, + {TRUE, TRUE, POS_DID_GSNS_X_FST }, + {TRUE, TRUE, POS_DID_GSNS_Y_FST }, + {TRUE, TRUE, POS_DID_GSNS_Z_FST }, + {FALSE, TRUE, POS_DID_PULSE_TIME }, + {FALSE, TRUE, POS_DID_GPS_CLOCK_DRIFT }, + {FALSE, TRUE, POS_DID_GPS_CLOCK_FREQ }, + {FALSE, TRUE, VEHICLE_DID_GPS_TIME }, /* For local use */ + {FALSE, TRUE, VEHICLE_DID_GPS_TIME_RAW }, /* For local use */ + {FALSE, TRUE, VEHICLE_DID_GPS_WKNROLLOVER } /* For local use */ +}; + +/** + * @brief POS_GetSensData Return code list + */ +static const SENSOR_RET_PKG g_ret_list_get_sens_data[SENSOR_PUBLIC_DID_NUM] = { + /* GRADE2 GRADE1 DID (Key) */ + {TRUE, TRUE, POS_DID_SPEED_PULSE }, + {FALSE, TRUE, POS_DID_SPEED_KMPH }, + {TRUE, TRUE, POS_DID_GYRO_X }, + {TRUE, TRUE, POS_DID_GYRO_Y }, + {TRUE, TRUE, POS_DID_GYRO_Z }, + {TRUE, TRUE, POS_DID_GSNS_X }, + {TRUE, TRUE, POS_DID_GSNS_Y }, + {TRUE, TRUE, POS_DID_GSNS_Z }, + {TRUE, TRUE, POS_DID_GPS_ANTENNA }, + {FALSE, TRUE, POS_DID_SNS_COUNTER }, + {FALSE, TRUE, POS_DID_SPEED_PULSE_FST }, + {FALSE, TRUE, POS_DID_GYRO_X_FST }, + {FALSE, TRUE, POS_DID_GYRO_Y_FST }, + {FALSE, TRUE, POS_DID_GYRO_Z_FST }, + {TRUE, TRUE, POS_DID_GPS__CWORD82__NMEA }, + {FALSE, TRUE, POS_DID_GPS__CWORD82___CWORD44_GP4 }, + {TRUE, TRUE, POS_DID_GPS__CWORD82__FULLBINARY }, + {FALSE, TRUE, POS_DID_GPS_NMEA }, + {FALSE, TRUE, POS_DID_REV }, + {FALSE, TRUE, POS_DID_REV_FST }, + {TRUE, TRUE, POS_DID_GYRO_TEMP }, + {FALSE, TRUE, POS_DID_GYRO_TEMP_FST }, + {FALSE, TRUE, POS_DID_GSNS_X_FST }, + {FALSE, TRUE, POS_DID_GSNS_Y_FST }, + {FALSE, TRUE, POS_DID_GSNS_Z_FST }, + {FALSE, TRUE, POS_DID_PULSE_TIME }, + {FALSE, TRUE, POS_DID_GPS_CLOCK_DRIFT }, + {FALSE, TRUE, POS_DID_GPS_CLOCK_FREQ }, + {FALSE, TRUE, VEHICLE_DID_GPS_TIME }, /* For local use */ + {FALSE, TRUE, VEHICLE_DID_GPS_TIME_RAW }, /* For local use */ + {FALSE, TRUE, VEHICLE_DID_GPS_WKNROLLOVER } /* For local use */ +}; + +/** + * @brief + * DID-decision functions for Sensor API + * + * Determines whether or not the DID specified by the public API corresponds to the DID. + * + * @param[in] did Data ID + * @param[in] mode Operation mode 1:For Package Delivery Registration API
+ * 2:For Sensor Data Delivery Registration API
+ * 3:For Sensor Data Acquisition API + * + * @return TRUE Be supported + * FALSE Not supported + */ +BOOL SensorJudgeDid(DID did, uint8_t mode) { + BOOL ret = FALSE; + UNIT_TYPE type; + const SENSOR_RET_PKG *pkg_list = NULL; + int32_t i; + + /* Set Return pakage list */ + switch (mode) { + case MODE_REGISTER_LISTENER_PKG_SENS_DATA: /* POS_RegisterListenerPkgSensData */ + { + pkg_list = g_ret_list_reg_lis_pkg_sens_data; + break; + } + case MODE_REGISTER_LISTENER_SENSDATA: /* POS_RegisterListenerSensData */ + { + pkg_list = g_ret_list_reg_lis_sens_data; + break; + } + case MODE_GET_SENSDATA: /* POS_GetSensData */ + { + pkg_list = g_ret_list_get_sens_data; + break; + } + default: + /* Error log */ + FRAMEWORKUNIFIEDLOG(ZONE_ERR, __FUNCTION__, "Argument ERROR [mode = %d]", mode); + break; + } + + if (pkg_list != NULL) { + /* Search Return code list for DID */ + for (i = 0; i < SENSOR_PUBLIC_DID_NUM; i++) { + if (did == pkg_list[i].did) { + break; + } + } + + if (i != SENSOR_PUBLIC_DID_NUM) { + /* Get Unit type */ + type = GetEnvSupportInfo(); + switch (type) { + case UNIT_TYPE_GRADE1: + { + ret = pkg_list[i].GRADE1_ret; + break; + } + case UNIT_TYPE_GRADE2: + { + /* + * Note. + * This feature branches processing depending on the unit type. + */ + ret = pkg_list[i].GRADE2_ret; + break; + } + default: + /* Error log */ + FRAMEWORKUNIFIEDLOG(ZONE_ERR, __FUNCTION__, + "GetEnvSupportInfo ERROR [type = %d]", type); + break; + } + } else { + /* Error log */ + FRAMEWORKUNIFIEDLOG(ZONE_ERR, __FUNCTION__, "Argument ERROR [did = %d]", did); + } + } + + return ret; +} + +/** + * @brief + * Vehicle Sensor Information Extended Package Delivery Registration + * Sensor information is delivered for the first time.,Extension Packaging and Registering for Delivery. + * + * @param[in] hApp Application handle + * @param[in] notifyName Destination thread name + * @param[in] ucPkgNum Number of package data(1 to 16) + * @param[in] *pulDid Pointer to an array of data IDs for vehicle information + * @param[in] ucCtrlFlg Delivery control
+ * Delivery registration: SENSOR_DELIVERY_REGIST
+ * Delivery stop: SENSOR_DELIVERY_STOP (Note: Not mounted)
+ * Resume delivery: SENSOR_DELIVERY_RESTART (Note: Not mounted) + * @param[in] ucDeliveryTiming Delivery timing
+ * Updating : SENSOR_DELIVERY_TIMING_UPDATE
+ * Changing : SENSOR_DELIVERY_TIMING_CHANGE + * + * @return SENSOR_RET_NORMAL Successful registration
+ * SENSOR_RET_ERROR_CREATE_EVENT Event generation failure
+ * SENSOR_RET_ERROR_PARAM Parameter error
+ * SENSOR_RET_ERROR_DID Unregistered ID
+ * SENSOR_RET_ERROR_BUFFULL FULL of delivery registers
+ * SENSOR_RET_ERROR_NOSUPPORT Unsupported environment
+ * SENSOR_RET_ERROR_INNER Internal abnormality + * + */ +SENSOR_RET_API POS_RegisterListenerPkgSensData(HANDLE hApp, + PCSTR notifyName, + uint8_t ucPkgNum, + DID *pulDid, uint8_t ucCtrlFlg, uint8_t ucDeliveryTiming) { + SENSOR_RET_API ret; /* Return value */ + BOOL ret_b; + RET_API ret_api; /* System API return value */ + EventID event_id; /* Event ID */ + int32_t event_val; /* Event value */ + SENSOR_MSG_DELIVERY_ENTRY_DAT data; /* Message data */ + int32_t i; /* Generic counters */ + PNO ch_pno; /* Converted internal PNO */ + UNIT_TYPE type; /* Supported HW Configuration Type */ + + /* Internal debug log output */ + FRAMEWORKUNIFIEDLOG(ZONE_INFO, __FUNCTION__, "+"); + + ret = SENSOR_RET_NORMAL; + /* Check Handle */ + if (hApp == NULL) { + /* NULL terminates with an abnormal parameter */ + ret = SENSOR_RET_ERROR_PARAM; + } + + if (ret == SENSOR_RET_NORMAL) { + /* Positioning Base API initialization */ + _pb_Setup_CWORD64_API(hApp); + + /* Supported HW Configuration Check */ + type = GetEnvSupportInfo(); + if (UNIT_TYPE_GRADE1 == type) { + /* GRADE1 */ + ret = SENSOR_RET_NORMAL; + } else if (UNIT_TYPE_GRADE2 == type) { + /* + * Note. + * This feature branches processing depending on the unit type. + */ + ret = SENSOR_RET_ERROR_NOSUPPORT; + } else { + /* Environment error */ + ret = SENSOR_RET_ERROR_NOSUPPORT; + } + } + + if (ret == SENSOR_RET_NORMAL) { + /* Check Delivery Control Designation */ + if (SENSOR_DELIVERY_REGIST != ucCtrlFlg) { + /* Parameters other than delivery registration terminated abnormally. */ + ret = SENSOR_RET_ERROR_PARAM; + } else if ((ucDeliveryTiming != SENSOR_DELIVERY_TIMING_CHANGE) && + (ucDeliveryTiming != SENSOR_DELIVERY_TIMING_UPDATE)) { + /* Check delivery timing */ + /* Change delivery timing,Terminate as a parameter error except update */ + ret = SENSOR_RET_ERROR_PARAM; + } else if (notifyName == NULL) { + /* Check Thread Name */ + /* NULL terminates with an abnormal parameter */ + ret = SENSOR_RET_ERROR_PARAM; + } else if ((0 == ucPkgNum) || (SENSOR_PKG_DELIVERY_MAX < ucPkgNum)) { + /* Check Package Data Count */ + /* Out-of-range is terminated as a parameter error. */ + ret = SENSOR_RET_ERROR_PARAM; + } else if (pulDid == NULL) { + /* Check Data ID */ + /* NULL terminates with an abnormal parameter */ + ret = SENSOR_RET_ERROR_PARAM; + } else { + /* Check if data ID is acceptable */ + for (i = 0; i < ucPkgNum; i++) { + /* Judge DID */ + ret_b = SENSOR_DID_JUDGE_REGLIS_PKG(pulDid[i]); + if (ret_b == FALSE) { + /* An unacceptable ID terminates with an abnormal parameter. */ + ret = SENSOR_RET_ERROR_PARAM; + break; + } else { + ret = SENSOR_RET_NORMAL; + } + } + } + } + + if (ret == SENSOR_RET_NORMAL) { + /* Resource acquisition */ + if (VehicleGetResource() == TRUE) { + + /* Initialization */ + event_id = 0; + event_val = 0; + memset(reinterpret_cast(&data), 0, sizeof(SENSOR_MSG_DELIVERY_ENTRY_DAT)); + + /* Get PNO from Thread Name */ + ch_pno = _pb_CnvName2Pno(notifyName); + + /* Event Generation */ + event_id = PosCreateEvent(ch_pno); + + if (0 != event_id) { + /* Successful event generation */ + + /*--------------------------------------------------------------* + * Send Vehicle Sensor Information Delivery Registration Message * + *--------------------------------------------------------------*/ + /* Create Message Data */ + data.pno = ch_pno; + data.pkg_num = ucPkgNum; + data.delivery_timing = ucDeliveryTiming; + data.ctrl_flg = ucCtrlFlg; + data.event_id = event_id; + for (i = 0; i < ucPkgNum; i++) { + data.did[i] = pulDid[i]; + } + + /* Messaging */ + ret_api = PosSndMsg(ch_pno, + PNO_VEHICLE_SENSOR, + CID_SENSORIF_PKG_DELIVERY_ENTRY_EXT, + (uint16_t)sizeof(SENSOR_MSG_DELIVERY_ENTRY_DAT), + (const void *)&data); + + if (RET_NORMAL == ret_api) { + /* Message transmission processing is successful */ + /* Wait for completion event from vehicle sensor thread */ + ret_api = _pb_WaitEvent(event_id, + SAPI_EVWAIT_VAL, + SENSOR_RET_ERROR_MIN, + SENSOR_RET_NORMAL, + &event_val, + POS_API_TIME_OUT_MS); + if (RET_NORMAL != ret_api) { + /* Return an internal error */ + ret = SENSOR_RET_ERROR_INNER; + } else { + /* Return from Event Wait */ + /* Set event value (processing result) as return value */ + ret = (SENSOR_RET_API)event_val; + } + } else { + /* Message transmission processing failed */ + /* Return an internal error */ + ret = SENSOR_RET_ERROR_INNER; + } + + /* Event deletion */ + ret_api = PosDeleteEvent(event_id); + } else { + /* Event generation failure */ + ret = SENSOR_RET_ERROR_CREATE_EVENT; + } + } else { + /* When resource shortage occurs, the system terminates with an insufficient resource error. */ + ret = SENSOR_RET_ERROR_RESOURCE; + } + /* Resource release */ + VehicleReleaseResource(); + } + + /* Internal debug log output */ + FRAMEWORKUNIFIEDLOG(ZONE_INFO, __FUNCTION__, "- [ret = %d]", ret); + + return ret; +} + +/******************************************************************************* + * MODULE : PosCreateEvent + * ABSTRACT : Event creation process + * FUNCTION : Generate an event + * ARGUMENT : pno : Thread ID + * NOTE : + * RETURN : Non-zero : Event ID + * : Zero : Event generation failure + ******************************************************************************/ +EventID PosCreateEvent(PNO pno) { + EventID event_id; /* Event ID */ + char event_name[32]; /* Event name character string buffer */ + RET_API ret_api; /* System API return value */ + + /* Initialization of event name character string buffer */ + (void)memset(reinterpret_cast(event_name), 0, sizeof(event_name)); + + /* Event name creation */ + snprintf(event_name, sizeof(event_name), "SENSOR_%X", pno); /* Ignore->MISRA-C++:2008 Rule 5-2-12 */ + + /* Event Generation */ + event_id = _pb_CreateEvent(FALSE , 0, event_name); /* Ignore->MISRA-C++:2008 Rule 5-2-12 */ + + if (0 != event_id) { + /* For successful event generation */ + + /* Initialize the event */ + ret_api = _pb_SetEvent(event_id, SAPI_EVSET_ABSOLUTE, SENSOR_EVENT_VAL_INIT); + if (RET_NORMAL != ret_api) { + /* Event initialization failed */ + + /* Delete Event and Return Event Generation Failed */ + ret_api = PosDeleteEvent(event_id); + event_id = 0; + } + } + + return event_id; +} + +/******************************************************************************* + * MODULE : PosDeleteEvent + * ABSTRACT : Event deletion processing + * FUNCTION : Delete events + * ARGUMENT : event_id : Event ID of the event to delete + * NOTE : + * RETURN : RET_NORMAL : Normal completion + * : RET_EV_NONE : Specified event does not exist + ******************************************************************************/ +RET_API PosDeleteEvent(EventID event_id) { + return(_pb_DeleteEvent(event_id)); +} + +/******************************************************************************* + * MODULE : SensorLinkShareData + * ABSTRACT : Link to shared memory + * FUNCTION : Link to shared memory + * ARGUMENT : **share_top : Storage destination of shared memory top address + * : *share_size : Storage destination of shared memory area size + * : *offset : Offset storage destination to free shared memory area + * NOTE : + * RETURN : RET_NORMAL : Normal completion + * : RET_ERROR : There is no shared memory area. + ******************************************************************************/ +RET_API SensorLinkShareData(void **share_top, uint32_t *share_size, uint16_t *offset) { // LCOV_EXCL_START 8:dead code + AGL_ASSERT_NOT_TESTED(); // LCOV_EXCL_LINE 200: test assert + RET_API ret_api; /* System API return value */ + SemID sem_id; /* Semaphore ID */ + SENSOR_SHARE *share_top_tmp; + int32_t i; + + /* Initialization */ + ret_api = RET_ERROR; + + /* Create Semaphore */ + sem_id = _pb_CreateSemaphore(const_cast(SENSOR_SEMAPHO_NAME)); + if (0 != sem_id) { + /* Semaphore Lock */ + ret_api = _pb_SemLock(sem_id); + if (RET_NORMAL == ret_api) { + /* Link to shared memory */ + ret_api = _pb_LinkShareData(const_cast(SENSOR_SHARE_NAME), share_top, share_size); + if (RET_NORMAL == ret_api) { + /* By searching the free shared memory area,Offset is calculated if there is free space. */ + share_top_tmp = reinterpret_cast(*share_top); + + /* Because the first block of the shared memory area is the control area,Loop from i = 1 */ + for (i = 1; i < SENSOR_SHARE_BLOCK_NUM; i++) { + if (SENSOR_SHARE_UNLOCK == share_top_tmp->mng.lock_info[i]) { + break; + } + } + if (i < SENSOR_SHARE_BLOCK_NUM) { + /* Empty space */ + /* Lock the block */ + share_top_tmp->mng.lock_info[i] = SENSOR_SHARE_LOCK; + + /* Calculate the offset to the block */ + *offset = static_cast(i * SENSOR_SHARE_BLOCK_SIZE); + + /* Normal completion */ + ret_api = RET_NORMAL; + } else { + /* No free space */ + ret_api = RET_ERROR; + } + } else { + /* Failed link to shared memory */ + ret_api = RET_ERROR; + } + /* Semaphore unlock */ + _pb_SemUnlock(sem_id); + } else { + /* Semaphore lock failed */ + ret_api = RET_ERROR; + } + } else { + /* Semaphore creation failed */ + ret_api = RET_ERROR; + } + + return ret_api; +} +// LCOV_EXCL_STOP + +/******************************************************************************* + * MODULE : SensorUnLinkShareData + * ABSTRACT : Unlinking shared memory + * FUNCTION : Unlink shared memory + * ARGUMENT : *share_top : Start address of shared memory + * : offset : Offset to shared memory free area + * NOTE : + * RETURN : RET_NORMAL : Normal completion + * : RET_ERROR : There is no shared memory area./semaphore error + ******************************************************************************/ +RET_API SensorUnLinkShareData(SENSOR_SHARE *share_top, uint16_t offset) { // LCOV_EXCL_START 8:dead code + AGL_ASSERT_NOT_TESTED(); // LCOV_EXCL_LINE 200: test assert + RET_API ret_api; /* System API return value */ + SemID sem_id; /* Semaphore ID */ + int32_t i; + + /* Initialization */ + ret_api = RET_ERROR; + + /* Create Semaphore */ + sem_id = _pb_CreateSemaphore(const_cast(SENSOR_SEMAPHO_NAME)); + if (0 != sem_id) { + /* Semaphore Lock */ + ret_api = _pb_SemLock(sem_id); + if (RET_NORMAL == ret_api) { + /* Unlock the block */ + i = static_cast(offset) / SENSOR_SHARE_BLOCK_SIZE; + share_top->mng.lock_info[i] = SENSOR_SHARE_UNLOCK; + + /* Semaphore unlock */ + _pb_SemUnlock(sem_id); + + /* Normal completion */ + ret_api = RET_NORMAL; + } else { + /* Semaphore lock failed */ + ret_api = RET_ERROR; + } + } else { + /* Semaphore creation failed */ + ret_api = RET_ERROR; + } + + return ret_api; +} +// LCOV_EXCL_STOP + +/******************************************************************************* + * MODULE : SensorSetShareData + * ABSTRACT : Write processing to shared memory + * FUNCTION : Write shared memory + * ARGUMENT : *share_top : Start address of shared memory + * : offset : Offsets to shared memory write destination + * : *data_src : + : size_src : + * NOTE : + * RETURN : void + ******************************************************************************/ +void SensorSetShareData(void *share_top, uint16_t offset, const void *data_src, uint16_t size_src) { // LCOV_EXCL_START 8:dead code // NOLINT(whitespace/line_length) + AGL_ASSERT_NOT_TESTED(); // LCOV_EXCL_LINE 200: test assert + SENSOR_SHARE_BLOCK_DAT *share_dat; + + /* Calculate Shared Memory Write Address */ + share_dat = reinterpret_cast(reinterpret_cast(share_top) + offset); + /* #QAC confirmation Rule11.4 Use structure for member reference(Cast according to shared memory link IF) */ + + /* Clear Shared Memory */ + memset(reinterpret_cast(share_dat), 0, sizeof(SENSOR_SHARE_BLOCK_DAT)); + + /* Set write size to shared memory */ + share_dat->size = size_src; + + /* Set specified data in shared memory */ + memcpy(reinterpret_cast(&share_dat->data), data_src, (size_t)size_src); +} +// LCOV_EXCL_STOP + +/******************************************************************************* + * MODULE : PosSndMsg + * ABSTRACT : Message transmission processing + * FUNCTION : Send a message to the specified PNO + * ARGUMENT : pno_src : Source PNO + * : pno_dest : Destination PNO + * : cid : Command ID + * : msg_len : Message data body length + * : *msg_len : Pointer to message data + * NOTE : + * RETURN : RET_NORMAL : Normal completion + * : RET_ERRNOTRDY : Destination process is not wakeup + * : RET_ERRMSGFULL : Message queue overflows + * : RET_ERRPARAM : Buffer size error + ******************************************************************************/ +RET_API PosSndMsg(PNO pno_src, PNO pno_dest, CID cid, uint16_t msg_len, const void *msg_data) { + SENSOR_INTERNAL_MSG_BUF msg_buf; /* message buffer */ + T_APIMSG_MSGBUF_HEADER *msg_hdr; /* Pointer to the message header */ + RET_API ret_api; /* Return value */ + PCSTR thread_name; /* Destination thread name */ + + /* Internal debug log output */ + FRAMEWORKUNIFIEDLOG(ZONE_26, __FUNCTION__, "+"); + + /* _CWORD71_ processing speed(Memset modification) */ + /* Initializing the header of the message buffer */ + memset(reinterpret_cast(&msg_buf.hdr), 0, sizeof(T_APIMSG_MSGBUF_HEADER)); + + /* Get pointer to send buffer */ + msg_hdr = reinterpret_cast(reinterpret_cast(&msg_buf)); + + /*--------------------------------------------------------------* + * Create message headers * + *--------------------------------------------------------------*/ + msg_hdr->hdr.sndpno = pno_src; /* Source PNO */ + msg_hdr->hdr.cid = cid; /* Command ID */ + msg_hdr->hdr.msgbodysize = msg_len; /* Message data body length */ + + /*--------------------------------------------------------------* + * Create message data * + *--------------------------------------------------------------*/ + if ((0 != msg_data) && (0 != msg_len)) { /* Ignore->MISRA-C++:2008 Rule 5-0-5 */ + /* Set the message data */ + memcpy(reinterpret_cast(msg_buf.data), msg_data, (size_t)msg_len); + } + /*--------------------------------------------------------------* + * Send messages * + *--------------------------------------------------------------*/ + /* Get Thread Name from PNO */ + if (pno_dest <= SYS_PNO_MAX) { + thread_name = POS_THREAD_NAME; + } else { + thread_name = _pb_CnvPno2Name(pno_dest); + } + + if ((pno_dest <= SYS_PNO_MAX) && (pno_src <= SYS_PNO_MAX)) { + /* Internal debug log output */ + FRAMEWORKUNIFIEDLOG(ZONE_26, __FUNCTION__, "[LOG pno_dest = 0x%x]", pno_dest); + + /* Internal Process Transmission and Reception Messages */ + ret_api = _pb_SndMsg(pno_dest, + (uint16_t)(sizeof(T_APIMSG_MSGBUF_HEADER) + msg_len),/* Ignore->MISRA-C++:2008 Rule 5-0-5 */ + reinterpret_cast(&msg_buf), 0); + } else { + /* Internal debug log output */ + FRAMEWORKUNIFIEDLOG(ZONE_26, __FUNCTION__, + "[LOG thread_name = %s, cid = 0x%x]", thread_name, cid); + + /* External Process Transmission and Reception Messages */ + ret_api = _pb_SndMsg_Ext(thread_name, + cid, + (uint16_t)(msg_len), /* Ignore->MISRA-C++:2008 Rule 5-0-5 */ + reinterpret_cast(&(msg_buf.data)), 0); + } + /* If RET_ERROR,Register a dialog if called from a Vehicle related thread */ /* Task_30332 */ + if (ret_api == RET_ERROR) { + FRAMEWORKUNIFIEDLOG(ZONE_ERR, __FUNCTION__, "[ERROR]"); + } + + /* Internal debug log output */ + FRAMEWORKUNIFIEDLOG(ZONE_26, __FUNCTION__, "- [ret = %d]", ret_api); + + return ret_api; +} + +/** + * @brief + * Sensor information acquisition + * + * Obtain sensor information + * + * @param[in] hApp HANDLE - Application handle + * @param[in] did DID - Data ID for vehicle information + * @param[in] dest_data void* - Pointer representing the storage destination of vehicle sensor information + * @param[in] dest_size uint16_t - Storage destination size of vehicle sensor information(byte) + * + * @return 0 or more Stored data size(Include illegal)
+ * POS_RET_ERROR_CREATE_EVENT Event generation failure
+ * POS_RET_ERROR_OUTOF_MEMORY Shared memory allocation failed
+ * POS_RET_ERROR_SIZE Storage destination size error
+ * POS_RET_ERROR_DID Unregistered ID
+ * POS_RET_ERROR_NOSUPPORT Unsupported environment + * + */ +POS_RET_API POS_GetSensData(HANDLE hApp, DID did, void *dest_data, uint16_t dest_size) +{ + POS_RET_API ret; /* Return value */ + UNIT_TYPE type = UNIT_TYPE_NONE; /* Supported HW Configuration Type */ + BOOL ret_b; + + /** NULL checking */ + if ((hApp == NULL) || (dest_data == NULL)) { + /** Parameter error */ + ret = POS_RET_ERROR_PARAM; + } else { + /* Positioning Base API initialization */ + _pb_Setup_CWORD64_API(hApp); + + /* Supported HW Configuration Check */ + type = GetEnvSupportInfo(); + if (UNIT_TYPE_GRADE1 == type) { + /* GRADE1 */ + ret = POS_RET_NORMAL; + } else if (UNIT_TYPE_GRADE2 == type) { + /* + * Note. + * This feature branches processing depending on the unit type. + */ + ret = POS_RET_ERROR_NOSUPPORT; + } else { + /* Environment error */ + ret = POS_RET_ERROR_NOSUPPORT; + } + } + + if (ret == NAVIINFO_RET_NORMAL) { + /* Judge DID*/ + ret_b = SENSOR_DID_JUDGE_GET(did); + if (ret_b == FALSE) { + /* An unacceptable ID is regarded as a parameter error. */ + ret = POS_RET_ERROR_PARAM; + } else { + /* Data acquisition process */ + ret = PosGetProc(did, dest_data, dest_size); + } + } + + return ret; +} diff --git a/positioning/client/src/POS_sensor_API/Vehicle_API.cpp b/positioning/client/src/POS_sensor_API/Vehicle_API.cpp new file mode 100644 index 00000000..3cd97f86 --- /dev/null +++ b/positioning/client/src/POS_sensor_API/Vehicle_API.cpp @@ -0,0 +1,292 @@ +/* + * @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. + */ + +/******************************************************************************* + * File name :Vehicle_API.cpp + * System name :GPF + * Subsystem name :Vehicle I/F library + * Program name :Vehicle I/F API + * Module configuration :POS_RegisterListenerSensData() Vehicle sensor information delivery registration + ******************************************************************************/ +#include +#include +#include +#include "Sensor_API_private.h" +#include "Vehicle_API_Dummy.h" +#include "Vehicle_API_private.h" +#include "POS_private.h" + +/*************************************************/ +/* Global variable */ +/*************************************************/ + +/******************************************************************************* + * initialize +******************************************************************************/ +VEHICLE_RET_API VehicleInitialize(u_int32 (*sighand)()) { // LCOV_EXCL_START 8:dead code // NOLINT(readability/nolint) + AGL_ASSERT_NOT_TESTED(); // LCOV_EXCL_LINE 200: test assert + RET_API _CWORD64_api_ret; + VEHICLE_RET_API ret; + + _CWORD64_api_ret = _pb_Setup_CWORD64_API(NULL); + + if (_CWORD64_api_ret == RET_NORMAL) { + ret = RET_NORMAL; + } else { + ret = RET_ERROR; + } + return ret; +} +// LCOV_EXCL_STOP + +/** + * @brief + * Vehicle sensor information delivery registration + * Register delivery of vehicle sensor information + * + * @param[in] hApp Application handle + * @param[in] notifyName Destination thread name + * @param[in] ulDid Pointer to an array of data IDs for vehicle information + * @param[in] ucCtrlFlg Delivery control
+ * Delivery registration: SENSOR_DELIVERY_REGIST
+ * Delivery stop: SENSOR_DELIVERY_STOP (Note: Not mounted)
+ * Resume delivery: SENSOR_DELIVERY_RESTART (Note: Not mounted) + * @param[in] ucDeliveryTiming Delivery timing
+ * Updating : SENSOR_DELIVERY_TIMING_UPDATE
+ * Changing : SENSOR_DELIVERY_TIMING_CHANGE + * + * @return SENSOR_RET_NORMAL Successful registration
+ * SENSOR_RET_ERROR_CREATE_EVENT Event generation failure
+ * SENSOR_RET_ERROR_PARAM Parameter error
+ * SENSOR_RET_ERROR_DID Unregistered ID
+ * SENSOR_RET_ERROR_BUFFULL FULL of delivery registers
+ * SENSOR_RET_ERROR_NOSUPPORT Unsupported environment + * + */ +SENSOR_RET_API POS_RegisterListenerSensData(HANDLE hApp, + PCSTR notifyName, DID ulDid, u_int8 ucCtrlFlg, u_int8 ucDeliveryTiming) { + SENSOR_RET_API ret; /* Return value */ + UNIT_TYPE type; /* Supported HW Configuration Type */ + BOOL ret_b; + + /* Internal debug log output */ + FRAMEWORKUNIFIEDLOG(ZONE_INFO, __FUNCTION__, "+"); + + /* Check Delivery Control Designation */ + ret = SENSOR_RET_NORMAL; + /* Arguments & Support Configuration Check */ + if ((ucDeliveryTiming != SENSOR_DELIVERY_TIMING_CHANGE) && + (ucDeliveryTiming != SENSOR_DELIVERY_TIMING_UPDATE)) { + /* Change delivery timing,Terminate as a parameter error except update */ + ret = SENSOR_RET_ERROR_PARAM; + } else if (SENSOR_DELIVERY_REGIST != ucCtrlFlg) { + /* Parameters other than delivery registration terminated abnormally. */ + ret = SENSOR_RET_ERROR_PARAM; + } else if (hApp == NULL) { + /* Check Handle */ + /* NULL terminates with an abnormal parameter */ + ret = SENSOR_RET_ERROR_PARAM; + } else if (notifyName == NULL) { + /* Check Thread Name */ + /* NULL terminates with an abnormal parameter */ + ret = SENSOR_RET_ERROR_PARAM; + } else { + /* Positioning Base API initialization */ + _pb_Setup_CWORD64_API(hApp); + + /* Supported HW Configuration Check */ + type = GetEnvSupportInfo(); + if (UNIT_TYPE_GRADE1 == type) { + /* GRADE1 */ + ret = SENSOR_RET_NORMAL; + } else if (UNIT_TYPE_GRADE2 == type) { + /* + * Note. + * This feature branches processing depending on the unit type. + */ + ret = SENSOR_RET_ERROR_NOSUPPORT; + } else { + /* Environment error */ + ret = SENSOR_RET_ERROR_NOSUPPORT; + } + } + + if (SENSOR_RET_NORMAL == ret) { + /* Judge DID */ + ret_b = SENSOR_DID_JUDGE_REGLIS(ulDid); + if (ret_b == FALSE) { + /* An unacceptable ID is regarded as a parameter error. */ + ret = SENSOR_RET_ERROR_PARAM; + } else { + /* Delivery registration process */ + ret = PosRegisterListenerProc(notifyName, ulDid, ucCtrlFlg, ucDeliveryTiming); + } + } + + /* Internal debug log output */ + FRAMEWORKUNIFIEDLOG(ZONE_INFO, __FUNCTION__, "- [ret = %d]", ret); + + return ret; +} + +/******************************************************************************* + * MODULE : PosSetShareData + * ABSTRACT : Write processing to shared memory + * FUNCTION : Write shared memory + * ARGUMENT : *share_top : Start address of shared memory + * : offset : Offsets to shared memory write destination + * : *data_src : Data + * : size_src : Size + * NOTE : + * RETURN : void + ******************************************************************************/ +void PosSetShareData(void *share_top, u_int16 offset, const void *data_src, u_int16 size_src) { + VEHICLE_SHARE_BLOCK_DAT *share_dat; + /* Calculate Shared Memory Write Address */ + share_dat = reinterpret_cast(reinterpret_cast(share_top) + offset); + + /* _CWORD71_ processing speed(Memset modification) */ + /* Clear Shared Memory(Unused area) */ + share_dat->reserve[0] = 0; + share_dat->reserve[1] = 0; + + /* Set write size to shared memory */ + share_dat->size = size_src; + + /* Set specified data in shared memory */ + memcpy(reinterpret_cast(share_dat->data), data_src, (size_t)size_src); +} + +/******************************************************************************* +* MODULE : VehicleGetDrData +* ABSTRACT : DR information acquisition +* FUNCTION : Retrieves DR information (optional data) by returning to completion. +* ARGUMENT : pno : Thread ID +* : did : Data ID for DR information +* : *dest_data : Pointer to the storage destination of DR information +* : dest_size : Storage destination size of DR information(byte) +* NOTE : +* RETURN : Zero or more : Stored data size +* : VEHICLE_RET_ERROR_CREATE_EVENT : Event generation failure +* : VEHICLE_RET_ERROR_OUTOF_MEMORY : Shared memory allocation failed +* : VEHICLE_RET_ERROR_SIZE : Storage destination size error +* : VEHICLE_RET_ERROR_DID : Unregistered ID +******************************************************************************/ +int32 VehicleGetDrData(PNO pno, DID did, void *dest_data, u_int16 dest_size) { // LCOV_EXCL_START 8:dead code + AGL_ASSERT_NOT_TESTED(); // LCOV_EXCL_LINE 200: test assert + VEHICLE_RET_API ret; /* Return value */ + RET_API ret_api; /* System API return value */ + EventID event_id; /* Event ID */ + int32 event_val; /* Event value */ + void *share_top; /* Start address of shared memory */ + u_int32 share_size; /* Size of shared memory area */ + u_int16 offset; /* Offset to free shared memory area */ + VEHICLE_SHARE_BLOCK_DAT *share_dat; /* Address of free shared memory area */ + VEHICLE_MSG_GET_VEHICLE_DATA_DAT data; /* Message data */ + + /* Initialization */ + event_id = 0; + event_val = 0; + memset(reinterpret_cast(&data), 0, sizeof(VEHICLE_MSG_GET_VEHICLE_DATA_DAT)); + + /* Event Generation */ + event_id = VehicleCreateEvent(pno); + + if (0 != event_id) { + /* Successful event generation */ + /* Allocate shared memory */ + ret_api = VehicleLinkShareData(reinterpret_cast(&share_top), &share_size, &offset); + if (RET_NORMAL != ret_api) { + /* Failed to allocate shared memory */ + ret = VEHICLE_RET_ERROR_OUTOF_MEMORY; + } else { + /* When the shared memory is allocated successfully */ + + /* Calculate start address of free shared memory area */ + share_dat = reinterpret_cast(reinterpret_cast(share_top) + offset); + + /* Send vehicle sensor information acquisition message */ + data.did = did; + data.pno = pno; + data.offset = offset; + data.size = VEHICLE_SHARE_BLOCK_DSIZE; + data.event_id = event_id; + /* Messaging */ + + ret_api = VehicleSndMsg(pno, + PNO_VEHICLE_SENSOR, + CID_VEHICLEIF_GET_DR_DATA, + sizeof(VEHICLE_MSG_GET_VEHICLE_DATA_DAT), + (const void *)&data); + + if (RET_NORMAL == ret_api) { + /* Message transmission processing is successful */ + /* Wait for completion event from vehicle sensor thread */ + ret_api = _pb_WaitEvent(event_id, + SAPI_EVWAIT_VAL, + VEHICLE_RET_ERROR_MIN, VEHICLE_RET_NORMAL, &event_val, INFINITE); + if (RET_NORMAL != ret_api) { + /* When not put in event wait state */ + /* Return an event generation failure */ + ret = VEHICLE_RET_ERROR_CREATE_EVENT; + } else { + /* Return from Event Wait */ + + /* Link to shared memory */ + ret_api = _pb_LinkShareData(const_cast(VEHICLE_SHARE_NAME), &share_top, &share_size); + + /* Calculate the address of the shared memory storage area. */ + share_dat = reinterpret_cast(reinterpret_cast(share_top) + + offset); + + if (event_val < 0) { + /* Vehicle sensor information acquisition failure */ + ret = (VEHICLE_RET_API)event_val; + } else if (RET_NORMAL != ret_api) { + /* Shared memory error */ + ret = VEHICLE_RET_ERROR_OUTOF_MEMORY; + } else if (dest_size < share_dat->size) { + /* Storage destination size error */ + ret = VEHICLE_RET_ERROR_SIZE; + } else { + /* Vehicle sensor information acquisition success */ + + /* Copy from shared memory to user memory */ + memcpy(dest_data, share_dat->data, (size_t)share_dat->size); + + /* Set Write Size to Return Value */ + ret = static_cast(share_dat->size); + } + } + } else { + /* Message transmission processing failed */ + /* Return an event generation failure */ + ret = VEHICLE_RET_ERROR_CREATE_EVENT; + } + /* Free shared memory */ + (void)VehicleUnLinkShareData(reinterpret_cast(share_top), offset); + } + + /* Event deletion */ + ret_api = VehicleDeleteEvent(event_id); + + } else { + /* Event generation failure */ + ret = VEHICLE_RET_ERROR_CREATE_EVENT; + } + return ret; +} +// LCOV_EXCL_STOP diff --git a/positioning/client/src/POS_sensor_API/common/Sensor_API.cpp b/positioning/client/src/POS_sensor_API/common/Sensor_API.cpp deleted file mode 100644 index a015998f..00000000 --- a/positioning/client/src/POS_sensor_API/common/Sensor_API.cpp +++ /dev/null @@ -1,775 +0,0 @@ -/* - * @copyright Copyright (c) 2016-2019 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. - */ - -/******************************************************************************* - * File name :Sensor_API.cpp - * System name :GPF - * Subsystem name :Sensor I/F library - * Program name :SensorI/F API - * Module configuration :SensorPkgDeliveryEntry() Vehicle sensor information package delivery registration - * :SensorGetSensorPkgData() Vehicle sensor information package acquisition - ******************************************************************************/ - -#include -#include "Sensor_API.h" -#include "Sensor_API_private.h" -/* ++ GPS _CWORD82_ support */ -#include "Vehicle_API_Dummy.h" -/* -- GPS _CWORD82_ support */ - -#include "Sensor_Common_API.h" -#include "Vehicle_API_private.h" -#include "Naviinfo_API.h" -#include -#include -#include "POS_private.h" -#include - -/*************************************************/ -/* Global variable */ -/*************************************************/ -/******************************************************************************** - * TAG :TG_GPS_REQ_RESET - * ABSTRACT :GPS reset request - * NOTE :I/F information between host applications(Reset mode) - ********************************************************************************/ -/** - * @brief POS_RegisterListenerPkgSensData Return code list - */ -static const SENSOR_RET_PKG g_ret_list_reg_lis_pkg_sens_data[SENSOR_PUBLIC_DID_NUM] = { - /* GRADE2 GRADE1 DID (Key) */ - {TRUE, FALSE, POS_DID_SPEED_PULSE }, - {FALSE, FALSE, POS_DID_SPEED_KMPH }, - {TRUE, FALSE, POS_DID_GYRO }, - {TRUE, FALSE, POS_DID_GSNS_X }, - {TRUE, FALSE, POS_DID_GSNS_Y }, - {FALSE, FALSE, POS_DID_GPS_ANTENNA }, - {TRUE, FALSE, POS_DID_SNS_COUNTER }, - {FALSE, FALSE, POS_DID_SPEED_PULSE_FST }, - {FALSE, FALSE, POS_DID_GYRO_FST }, - {FALSE, FALSE, POS_DID_GPS__CWORD82__NMEA }, - {FALSE, FALSE, POS_DID_GPS__CWORD82___CWORD44_GP4 }, - {FALSE, FALSE, POS_DID_GPS__CWORD82__FULLBINARY }, - {FALSE, FALSE, POS_DID_GPS_NMEA }, - {TRUE, FALSE, POS_DID_REV }, - {FALSE, FALSE, POS_DID_REV_FST }, - {TRUE, FALSE, POS_DID_GYRO_TEMP }, - {FALSE, FALSE, POS_DID_GYRO_TEMP_FST }, - {FALSE, FALSE, POS_DID_GSNS_X_FST }, - {FALSE, FALSE, POS_DID_GSNS_Y_FST }, - {TRUE, FALSE, POS_DID_PULSE_TIME }, - {FALSE, FALSE, POS_DID_GPS_CLOCK_DRIFT }, - {FALSE, FALSE, POS_DID_GPS_CLOCK_FREQ }, - {FALSE, FALSE, VEHICLE_DID_GPS_TIME }, /* For local use */ - {FALSE, FALSE, VEHICLE_DID_GPS_TIME_RAW }, /* For local use */ - {FALSE, FALSE, VEHICLE_DID_GPS_WKNROLLOVER } /* For local use */ -}; - -/** - * @brief POS_RegisterListenerSensData Return code list - */ -static const SENSOR_RET_PKG g_ret_list_reg_lis_sens_data[SENSOR_PUBLIC_DID_NUM] = { - /* GRADE2 GRADE1 DID (Key) */ - {TRUE, TRUE, POS_DID_SPEED_PULSE }, - {FALSE, FALSE, POS_DID_SPEED_KMPH }, - {TRUE, FALSE, POS_DID_GYRO }, - {TRUE, FALSE, POS_DID_GSNS_X }, - {TRUE, FALSE, POS_DID_GSNS_Y }, - {TRUE, TRUE, POS_DID_GPS_ANTENNA }, - {FALSE, FALSE, POS_DID_SNS_COUNTER }, - {TRUE, FALSE, POS_DID_SPEED_PULSE_FST }, - {TRUE, FALSE, POS_DID_GYRO_FST }, - {TRUE, FALSE, POS_DID_GPS__CWORD82__NMEA }, - {FALSE, FALSE, POS_DID_GPS__CWORD82___CWORD44_GP4 }, - {TRUE, FALSE, POS_DID_GPS__CWORD82__FULLBINARY }, - {FALSE, TRUE, POS_DID_GPS_NMEA }, - {FALSE, FALSE, POS_DID_REV }, - {TRUE, FALSE, POS_DID_REV_FST }, - {TRUE, FALSE, POS_DID_GYRO_TEMP }, - {TRUE, FALSE, POS_DID_GYRO_TEMP_FST }, - {TRUE, FALSE, POS_DID_GSNS_X_FST }, - {TRUE, FALSE, POS_DID_GSNS_Y_FST }, - {FALSE, FALSE, POS_DID_PULSE_TIME }, - {FALSE, TRUE, POS_DID_GPS_CLOCK_DRIFT }, - {FALSE, TRUE, POS_DID_GPS_CLOCK_FREQ }, - {FALSE, FALSE, VEHICLE_DID_GPS_TIME }, /* For local use */ - {FALSE, FALSE, VEHICLE_DID_GPS_TIME_RAW }, /* For local use */ - {FALSE, FALSE, VEHICLE_DID_GPS_WKNROLLOVER } /* For local use */ -}; - -/** - * @brief POS_GetSensData Return code list - */ -static const SENSOR_RET_PKG g_ret_list_get_sens_data[SENSOR_PUBLIC_DID_NUM] = { - /* GRADE2 GRADE1 DID (Key) */ - {TRUE, TRUE, POS_DID_SPEED_PULSE }, - {FALSE, FALSE, POS_DID_SPEED_KMPH }, - {TRUE, FALSE, POS_DID_GYRO }, - {TRUE, FALSE, POS_DID_GSNS_X }, - {TRUE, FALSE, POS_DID_GSNS_Y }, - {TRUE, TRUE, POS_DID_GPS_ANTENNA }, - {FALSE, FALSE, POS_DID_SNS_COUNTER }, - {FALSE, FALSE, POS_DID_SPEED_PULSE_FST }, - {FALSE, FALSE, POS_DID_GYRO_FST }, - {TRUE, FALSE, POS_DID_GPS__CWORD82__NMEA }, - {FALSE, FALSE, POS_DID_GPS__CWORD82___CWORD44_GP4 }, - {TRUE, FALSE, POS_DID_GPS__CWORD82__FULLBINARY }, - {FALSE, TRUE, POS_DID_GPS_NMEA }, - {FALSE, FALSE, POS_DID_REV }, - {FALSE, FALSE, POS_DID_REV_FST }, - {TRUE, FALSE, POS_DID_GYRO_TEMP }, - {FALSE, FALSE, POS_DID_GYRO_TEMP_FST }, - {FALSE, FALSE, POS_DID_GSNS_X_FST }, - {FALSE, FALSE, POS_DID_GSNS_Y_FST }, - {FALSE, FALSE, POS_DID_PULSE_TIME }, - {FALSE, TRUE, POS_DID_GPS_CLOCK_DRIFT }, - {FALSE, TRUE, POS_DID_GPS_CLOCK_FREQ }, - {FALSE, TRUE, VEHICLE_DID_GPS_TIME }, /* For local use */ - {FALSE, TRUE, VEHICLE_DID_GPS_TIME_RAW }, /* For local use */ - {FALSE, TRUE, VEHICLE_DID_GPS_WKNROLLOVER } /* For local use */ -}; - -/** - * @brief - * DID-decision functions for Sensor API - * - * Determines whether or not the DID specified by the public API corresponds to the DID. - * - * @param[in] did Data ID - * @param[in] mode Operation mode 1:For Package Delivery Registration API
- * 2:For Sensor Data Delivery Registration API
- * 3:For Sensor Data Acquisition API - * - * @return TRUE Be supported - * FALSE Not supported - */ -BOOL SensorJudgeDid(DID did, uint8_t mode) { - BOOL ret = FALSE; - UNIT_TYPE type; - const SENSOR_RET_PKG *pkg_list = NULL; - int32_t i; - - /* Set Return pakage list */ - switch (mode) { - case MODE_REGISTER_LISTENER_PKG_SENS_DATA: /* POS_RegisterListenerPkgSensData */ - { - pkg_list = g_ret_list_reg_lis_pkg_sens_data; - break; - } - case MODE_REGISTER_LISTENER_SENSDATA: /* POS_RegisterListenerSensData */ - { - pkg_list = g_ret_list_reg_lis_sens_data; - break; - } - case MODE_GET_SENSDATA: /* POS_GetSensData */ - { - pkg_list = g_ret_list_get_sens_data; - break; - } - default: - /* Error log */ - FRAMEWORKUNIFIEDLOG(ZONE_ERR, __FUNCTION__, "Argument ERROR [mode = %d]", mode); - break; - } - - if (pkg_list != NULL) { - /* Search Return code list for DID */ - for (i = 0; i < SENSOR_PUBLIC_DID_NUM; i++) { - if (did == pkg_list[i].did) { - break; - } - } - - if (i != SENSOR_PUBLIC_DID_NUM) { - /* Get Unit type */ - type = GetEnvSupportInfo(); - switch (type) { - case UNIT_TYPE_GRADE1: - { - ret = pkg_list[i].GRADE1_ret; - break; - } - case UNIT_TYPE_GRADE2: - { - /* - * Note. - * This feature branches processing depending on the unit type. - */ - ret = pkg_list[i].GRADE2_ret; - break; - } - default: - /* Error log */ - FRAMEWORKUNIFIEDLOG(ZONE_ERR, __FUNCTION__, - "GetEnvSupportInfo ERROR [type = %d]", type); - break; - } - } else { - /* Error log */ - FRAMEWORKUNIFIEDLOG(ZONE_ERR, __FUNCTION__, "Argument ERROR [did = %d]", did); - } - } - - return ret; -} - -/** - * @brief - * Vehicle Sensor Information Extended Package Delivery Registration - * Sensor information is delivered for the first time.,Extension Packaging and Registering for Delivery. - * - * @param[in] hApp Application handle - * @param[in] notifyName Destination thread name - * @param[in] ucPkgNum Number of package data(1 to 16) - * @param[in] *pulDid Pointer to an array of data IDs for vehicle information - * @param[in] ucCtrlFlg Delivery control
- * Delivery registration: SENSOR_DELIVERY_REGIST
- * Delivery stop: SENSOR_DELIVERY_STOP (Note: Not mounted)
- * Resume delivery: SENSOR_DELIVERY_RESTART (Note: Not mounted) - * @param[in] ucDeliveryTiming Delivery timing
- * Updating : SENSOR_DELIVERY_TIMING_UPDATE
- * Changing : SENSOR_DELIVERY_TIMING_CHANGE - * - * @return SENSOR_RET_NORMAL Successful registration
- * SENSOR_RET_ERROR_CREATE_EVENT Event generation failure
- * SENSOR_RET_ERROR_PARAM Parameter error
- * SENSOR_RET_ERROR_DID Unregistered ID
- * SENSOR_RET_ERROR_BUFFULL FULL of delivery registers
- * SENSOR_RET_ERROR_NOSUPPORT Unsupported environment
- * SENSOR_RET_ERROR_INNER Internal abnormality - * - */ -SENSOR_RET_API POS_RegisterListenerPkgSensData(HANDLE hApp, - PCSTR notifyName, - uint8_t ucPkgNum, - DID *pulDid, uint8_t ucCtrlFlg, uint8_t ucDeliveryTiming) { - SENSOR_RET_API ret; /* Return value */ - BOOL ret_b; - RET_API ret_api; /* System API return value */ - EventID event_id; /* Event ID */ - int32 event_val; /* Event value */ - SENSOR_MSG_DELIVERY_ENTRY_DAT data; /* Message data */ - int32 i; /* Generic counters */ - PNO ch_pno; /* Converted internal PNO */ - UNIT_TYPE type; /* Supported HW Configuration Type */ - - /* Internal debug log output */ - FRAMEWORKUNIFIEDLOG(ZONE_INFO, __FUNCTION__, "+"); - - ret = SENSOR_RET_NORMAL; - /* Check Handle */ - if (hApp == NULL) { - /* NULL terminates with an abnormal parameter */ - ret = SENSOR_RET_ERROR_PARAM; - } - - if (ret == SENSOR_RET_NORMAL) { - /* Positioning Base API initialization */ - _pb_Setup_CWORD64_API(hApp); - - /* Supported HW Configuration Check */ - type = GetEnvSupportInfo(); - if (UNIT_TYPE_GRADE1 == type) { - /* GRADE1 */ - ret = SENSOR_RET_NORMAL; - } else if (UNIT_TYPE_GRADE2 == type) { - /* - * Note. - * This feature branches processing depending on the unit type. - */ - ret = SENSOR_RET_ERROR_NOSUPPORT; - } else { - /* Environment error */ - ret = SENSOR_RET_ERROR_NOSUPPORT; - } - } - - if (ret == SENSOR_RET_NORMAL) { - /* Check Delivery Control Designation */ - if (SENSOR_DELIVERY_REGIST != ucCtrlFlg) { - /* Parameters other than delivery registration terminated abnormally. */ - ret = SENSOR_RET_ERROR_PARAM; - } else if ((ucDeliveryTiming != SENSOR_DELIVERY_TIMING_CHANGE) && - (ucDeliveryTiming != SENSOR_DELIVERY_TIMING_UPDATE)) { - /* Check delivery timing */ - /* Change delivery timing,Terminate as a parameter error except update */ - ret = SENSOR_RET_ERROR_PARAM; - } else if (notifyName == NULL) { - /* Check Thread Name */ - /* NULL terminates with an abnormal parameter */ - ret = SENSOR_RET_ERROR_PARAM; - } else if ((0 == ucPkgNum) || (SENSOR_PKG_DELIVERY_MAX < ucPkgNum)) { - /* Check Package Data Count */ - /* Out-of-range is terminated as a parameter error. */ - ret = SENSOR_RET_ERROR_PARAM; - } else if (pulDid == NULL) { - /* Check Data ID */ - /* NULL terminates with an abnormal parameter */ - ret = SENSOR_RET_ERROR_PARAM; - } else { - /* Check if data ID is acceptable */ - for (i = 0; i < ucPkgNum; i++) { - /* Judge DID */ - ret_b = SENSOR_DID_JUDGE_REGLIS_PKG(pulDid[i]); - if (ret_b == FALSE) { - /* An unacceptable ID terminates with an abnormal parameter. */ - ret = SENSOR_RET_ERROR_PARAM; - break; - } else { - ret = SENSOR_RET_NORMAL; - } - } - } - } - - if (ret == SENSOR_RET_NORMAL) { - /* Resource acquisition */ - if (VehicleGetResource() == TRUE) { - - /* Initialization */ - event_id = 0; - event_val = 0; - memset(reinterpret_cast(&data), 0, sizeof(SENSOR_MSG_DELIVERY_ENTRY_DAT)); - - /* Get PNO from Thread Name */ - ch_pno = _pb_CnvName2Pno(notifyName); - - /* Event Generation */ - event_id = PosCreateEvent(ch_pno); - - if (0 != event_id) { - /* Successful event generation */ - - /*--------------------------------------------------------------* - * Send Vehicle Sensor Information Delivery Registration Message * - *--------------------------------------------------------------*/ - /* Create Message Data */ - data.pno = ch_pno; - data.pkg_num = ucPkgNum; - data.delivery_timing = ucDeliveryTiming; - data.ctrl_flg = ucCtrlFlg; - data.event_id = event_id; - for (i = 0; i < ucPkgNum; i++) { - if (pulDid[i] == POS_DID_GYRO) { - /* Replaced because POS_DID_GYRO is treated internally as VEHICLE_DID_GYRO_EXT. */ - data.did[i] = VEHICLE_DID_GYRO_EXT; - } else { - data.did[i] = pulDid[i]; - } - } - - /* Messaging */ - ret_api = PosSndMsg(ch_pno, - PNO_VEHICLE_SENSOR, - CID_SENSORIF_PKG_DELIVERY_ENTRY_EXT, - (u_int16)sizeof(SENSOR_MSG_DELIVERY_ENTRY_DAT), - (const void *)&data); - - if (RET_NORMAL == ret_api) { - /* Message transmission processing is successful */ - /* Wait for completion event from vehicle sensor thread */ - ret_api = _pb_WaitEvent(event_id, - SAPI_EVWAIT_VAL, - SENSOR_RET_ERROR_MIN, - SENSOR_RET_NORMAL, - &event_val, - POS_API_TIME_OUT_MS); - if (RET_NORMAL != ret_api) { - /* Return an internal error */ - ret = SENSOR_RET_ERROR_INNER; - } else { - /* Return from Event Wait */ - /* Set event value (processing result) as return value */ - ret = (SENSOR_RET_API)event_val; - } - } else { - /* Message transmission processing failed */ - /* Return an internal error */ - ret = SENSOR_RET_ERROR_INNER; - } - - /* Event deletion */ - ret_api = PosDeleteEvent(event_id); - } else { - /* Event generation failure */ - ret = SENSOR_RET_ERROR_CREATE_EVENT; - } - } else { - /* When resource shortage occurs, the system terminates with an insufficient resource error. */ - ret = SENSOR_RET_ERROR_RESOURCE; - } - /* Resource release */ - VehicleReleaseResource(); - } - - /* Internal debug log output */ - FRAMEWORKUNIFIEDLOG(ZONE_INFO, __FUNCTION__, "- [ret = %d]", ret); - - return ret; -} - -/******************************************************************************* - * MODULE : PosCreateEvent - * ABSTRACT : Event creation process - * FUNCTION : Generate an event - * ARGUMENT : pno : Thread ID - * NOTE : - * RETURN : Non-zero : Event ID - * : Zero : Event generation failure - ******************************************************************************/ -EventID PosCreateEvent(PNO pno) { - EventID event_id; /* Event ID */ - char event_name[32]; /* Event name character string buffer */ - RET_API ret_api; /* System API return value */ - - /* Initialization of event name character string buffer */ - (void)memset(reinterpret_cast(event_name), 0, sizeof(event_name)); - - /* Event name creation */ - snprintf(event_name, sizeof(event_name), "SENSOR_%X", pno); /* Ignore->MISRA-C++:2008 Rule 5-2-12 */ - - /* Event Generation */ - event_id = _pb_CreateEvent(FALSE , 0, event_name); /* Ignore->MISRA-C++:2008 Rule 5-2-12 */ - - if (0 != event_id) { - /* For successful event generation */ - - /* Initialize the event */ - ret_api = _pb_SetEvent(event_id, SAPI_EVSET_ABSOLUTE, SENSOR_EVENT_VAL_INIT); - if (RET_NORMAL != ret_api) { - /* Event initialization failed */ - - /* Delete Event and Return Event Generation Failed */ - ret_api = PosDeleteEvent(event_id); - event_id = 0; - } - } - - return event_id; -} - -/******************************************************************************* - * MODULE : PosDeleteEvent - * ABSTRACT : Event deletion processing - * FUNCTION : Delete events - * ARGUMENT : event_id : Event ID of the event to delete - * NOTE : - * RETURN : RET_NORMAL : Normal completion - * : RET_EV_NONE : Specified event does not exist - ******************************************************************************/ -RET_API PosDeleteEvent(EventID event_id) { - return(_pb_DeleteEvent(event_id)); -} - -/******************************************************************************* - * MODULE : SensorLinkShareData - * ABSTRACT : Link to shared memory - * FUNCTION : Link to shared memory - * ARGUMENT : **share_top : Storage destination of shared memory top address - * : *share_size : Storage destination of shared memory area size - * : *offset : Offset storage destination to free shared memory area - * NOTE : - * RETURN : RET_NORMAL : Normal completion - * : RET_ERROR : There is no shared memory area. - ******************************************************************************/ -RET_API SensorLinkShareData(void **share_top, u_int32 *share_size, u_int16 *offset) { // LCOV_EXCL_START 8:dead code - AGL_ASSERT_NOT_TESTED(); // LCOV_EXCL_LINE 200: test assert - RET_API ret_api; /* System API return value */ - SemID sem_id; /* Semaphore ID */ - SENSOR_SHARE *share_top_tmp; - int32 i; - - /* Initialization */ - ret_api = RET_ERROR; - - /* Create Semaphore */ - sem_id = _pb_CreateSemaphore(const_cast(SENSOR_SEMAPHO_NAME)); - if (0 != sem_id) { - /* Semaphore Lock */ - ret_api = _pb_SemLock(sem_id); - if (RET_NORMAL == ret_api) { - /* Link to shared memory */ - ret_api = _pb_LinkShareData(const_cast(SENSOR_SHARE_NAME), share_top, share_size); - if (RET_NORMAL == ret_api) { - /* By searching the free shared memory area,Offset is calculated if there is free space. */ - share_top_tmp = reinterpret_cast(*share_top); - - /* Because the first block of the shared memory area is the control area,Loop from i = 1 */ - for (i = 1; i < SENSOR_SHARE_BLOCK_NUM; i++) { - if (SENSOR_SHARE_UNLOCK == share_top_tmp->mng.lock_info[i]) { - break; - } - } - if (i < SENSOR_SHARE_BLOCK_NUM) { - /* Empty space */ - /* Lock the block */ - share_top_tmp->mng.lock_info[i] = SENSOR_SHARE_LOCK; - - /* Calculate the offset to the block */ - *offset = static_cast(i * SENSOR_SHARE_BLOCK_SIZE); - - /* Normal completion */ - ret_api = RET_NORMAL; - } else { - /* No free space */ - ret_api = RET_ERROR; - } - } else { - /* Failed link to shared memory */ - ret_api = RET_ERROR; - } - /* Semaphore unlock */ - _pb_SemUnlock(sem_id); - } else { - /* Semaphore lock failed */ - ret_api = RET_ERROR; - } - } else { - /* Semaphore creation failed */ - ret_api = RET_ERROR; - } - - return ret_api; -} -// LCOV_EXCL_STOP - -/******************************************************************************* - * MODULE : SensorUnLinkShareData - * ABSTRACT : Unlinking shared memory - * FUNCTION : Unlink shared memory - * ARGUMENT : *share_top : Start address of shared memory - * : offset : Offset to shared memory free area - * NOTE : - * RETURN : RET_NORMAL : Normal completion - * : RET_ERROR : There is no shared memory area./semaphore error - ******************************************************************************/ -RET_API SensorUnLinkShareData(SENSOR_SHARE *share_top, u_int16 offset) { // LCOV_EXCL_START 8:dead code - AGL_ASSERT_NOT_TESTED(); // LCOV_EXCL_LINE 200: test assert - RET_API ret_api; /* System API return value */ - SemID sem_id; /* Semaphore ID */ - int32 i; - - /* Initialization */ - ret_api = RET_ERROR; - - /* Create Semaphore */ - sem_id = _pb_CreateSemaphore(const_cast(SENSOR_SEMAPHO_NAME)); - if (0 != sem_id) { - /* Semaphore Lock */ - ret_api = _pb_SemLock(sem_id); - if (RET_NORMAL == ret_api) { - /* Unlock the block */ - i = static_cast(offset) / SENSOR_SHARE_BLOCK_SIZE; - share_top->mng.lock_info[i] = SENSOR_SHARE_UNLOCK; - - /* Semaphore unlock */ - _pb_SemUnlock(sem_id); - - /* Normal completion */ - ret_api = RET_NORMAL; - } else { - /* Semaphore lock failed */ - ret_api = RET_ERROR; - } - } else { - /* Semaphore creation failed */ - ret_api = RET_ERROR; - } - - return ret_api; -} -// LCOV_EXCL_STOP - -/******************************************************************************* - * MODULE : SensorSetShareData - * ABSTRACT : Write processing to shared memory - * FUNCTION : Write shared memory - * ARGUMENT : *share_top : Start address of shared memory - * : offset : Offsets to shared memory write destination - * : *data_src : - : size_src : - * NOTE : - * RETURN : void - ******************************************************************************/ -void SensorSetShareData(void *share_top, u_int16 offset, const void *data_src, u_int16 size_src) { // LCOV_EXCL_START 8:dead code // NOLINT(whitespace/line_length) - AGL_ASSERT_NOT_TESTED(); // LCOV_EXCL_LINE 200: test assert - SENSOR_SHARE_BLOCK_DAT *share_dat; - - /* Calculate Shared Memory Write Address */ - share_dat = reinterpret_cast(reinterpret_cast(share_top) + offset); - /* #QAC confirmation Rule11.4 Use structure for member reference(Cast according to shared memory link IF) */ - - /* Clear Shared Memory */ - memset(reinterpret_cast(share_dat), 0, sizeof(SENSOR_SHARE_BLOCK_DAT)); - - /* Set write size to shared memory */ - share_dat->size = size_src; - - /* Set specified data in shared memory */ - memcpy(reinterpret_cast(&share_dat->data), data_src, (size_t)size_src); -} -// LCOV_EXCL_STOP - -/******************************************************************************* - * MODULE : PosSndMsg - * ABSTRACT : Message transmission processing - * FUNCTION : Send a message to the specified PNO - * ARGUMENT : pno_src : Source PNO - * : pno_dest : Destination PNO - * : cid : Command ID - * : msg_len : Message data body length - * : *msg_len : Pointer to message data - * NOTE : - * RETURN : RET_NORMAL : Normal completion - * : RET_ERRNOTRDY : Destination process is not wakeup - * : RET_ERRMSGFULL : Message queue overflows - * : RET_ERRPARAM : Buffer size error - ******************************************************************************/ -RET_API PosSndMsg(PNO pno_src, PNO pno_dest, CID cid, u_int16 msg_len, const void *msg_data) { - SENSOR_INTERNAL_MSG_BUF msg_buf; /* message buffer */ - T_APIMSG_MSGBUF_HEADER *msg_hdr; /* Pointer to the message header */ - RET_API ret_api; /* Return value */ - PCSTR thread_name; /* Destination thread name */ - - /* Internal debug log output */ - FRAMEWORKUNIFIEDLOG(ZONE_26, __FUNCTION__, "+"); - - /* _CWORD71_ processing speed(Memset modification) */ - /* Initializing the header of the message buffer */ - memset(reinterpret_cast(&msg_buf.hdr), 0, sizeof(T_APIMSG_MSGBUF_HEADER)); - - /* Get pointer to send buffer */ - msg_hdr = reinterpret_cast(reinterpret_cast(&msg_buf)); - - /*--------------------------------------------------------------* - * Create message headers * - *--------------------------------------------------------------*/ - msg_hdr->hdr.sndpno = pno_src; /* Source PNO */ - msg_hdr->hdr.cid = cid; /* Command ID */ - msg_hdr->hdr.msgbodysize = msg_len; /* Message data body length */ - - /*--------------------------------------------------------------* - * Create message data * - *--------------------------------------------------------------*/ - if ((0 != msg_data) && (0 != msg_len)) { /* Ignore->MISRA-C++:2008 Rule 5-0-5 */ - /* Set the message data */ - memcpy(reinterpret_cast(msg_buf.data), msg_data, (size_t)msg_len); - } - /*--------------------------------------------------------------* - * Send messages * - *--------------------------------------------------------------*/ - /* Get Thread Name from PNO */ - if (pno_dest <= SYS_PNO_MAX) { - thread_name = POS_THREAD_NAME; - } else { - thread_name = _pb_CnvPno2Name(pno_dest); - } - - if ((pno_dest <= SYS_PNO_MAX) && (pno_src <= SYS_PNO_MAX)) { - /* Internal debug log output */ - FRAMEWORKUNIFIEDLOG(ZONE_26, __FUNCTION__, "[LOG pno_dest = 0x%x]", pno_dest); - - /* Internal Process Transmission and Reception Messages */ - ret_api = _pb_SndMsg(pno_dest, - (u_int16)(sizeof(T_APIMSG_MSGBUF_HEADER) + msg_len),/* Ignore->MISRA-C++:2008 Rule 5-0-5 */ - reinterpret_cast(&msg_buf), 0); - } else { - /* Internal debug log output */ - FRAMEWORKUNIFIEDLOG(ZONE_26, __FUNCTION__, - "[LOG thread_name = %s, cid = 0x%x]", thread_name, cid); - - /* External Process Transmission and Reception Messages */ - ret_api = _pb_SndMsg_Ext(thread_name, - cid, - (u_int16)(msg_len), /* Ignore->MISRA-C++:2008 Rule 5-0-5 */ - reinterpret_cast(&(msg_buf.data)), 0); - } - /* If RET_ERROR,Register a dialog if called from a Vehicle related thread */ /* Task_30332 */ - if (ret_api == RET_ERROR) { - FRAMEWORKUNIFIEDLOG(ZONE_ERR, __FUNCTION__, "[ERROR]"); - } - - /* Internal debug log output */ - FRAMEWORKUNIFIEDLOG(ZONE_26, __FUNCTION__, "- [ret = %d]", ret_api); - - return ret_api; -} - -/** - * @brief - * Sensor information acquisition - * - * Obtain sensor information - * - * @param[in] hApp HANDLE - Application handle - * @param[in] did DID - Data ID for vehicle information - * @param[in] dest_data void* - Pointer representing the storage destination of vehicle sensor information - * @param[in] dest_size uint16_t - Storage destination size of vehicle sensor information(byte) - * - * @return 0 or more Stored data size(Include illegal)
- * POS_RET_ERROR_CREATE_EVENT Event generation failure
- * POS_RET_ERROR_OUTOF_MEMORY Shared memory allocation failed
- * POS_RET_ERROR_SIZE Storage destination size error
- * POS_RET_ERROR_DID Unregistered ID
- * POS_RET_ERROR_NOSUPPORT Unsupported environment - * - */ -POS_RET_API POS_GetSensData(HANDLE hApp, DID did, void *dest_data, uint16_t dest_size) -{ - POS_RET_API ret; /* Return value */ - UNIT_TYPE type = UNIT_TYPE_NONE; /* Supported HW Configuration Type */ - BOOL ret_b; - - /** NULL checking */ - if ((hApp == NULL) || (dest_data == NULL)) { - /** Parameter error */ - ret = POS_RET_ERROR_PARAM; - } else { - /* Positioning Base API initialization */ - _pb_Setup_CWORD64_API(hApp); - - /* Supported HW Configuration Check */ - type = GetEnvSupportInfo(); - if (UNIT_TYPE_GRADE1 == type) { - /* GRADE1 */ - ret = POS_RET_NORMAL; - } else if (UNIT_TYPE_GRADE2 == type) { - /* - * Note. - * This feature branches processing depending on the unit type. - */ - ret = POS_RET_ERROR_NOSUPPORT; - } else { - /* Environment error */ - ret = POS_RET_ERROR_NOSUPPORT; - } - } - -// if (ret == NAVIINFO_RET_NORMAL) { -// /* Judge DID*/ -// ret_b = SENSOR_DID_JUDGE_GET(did); -// if (ret_b == FALSE) { -// /* An unacceptable ID is regarded as a parameter error. */ -// ret = POS_RET_ERROR_PARAM; -// } else { -// /* Data acquisition process */ -// ret = PosGetProc(did, dest_data, dest_size); -// } -// } - - return ret; -} - diff --git a/positioning/client/src/POS_sensor_API/libPOS_sensor_API.ver b/positioning/client/src/POS_sensor_API/libPOS_sensor_API.ver index 5cb4bc2b..10fd95bc 100644 --- a/positioning/client/src/POS_sensor_API/libPOS_sensor_API.ver +++ b/positioning/client/src/POS_sensor_API/libPOS_sensor_API.ver @@ -1,5 +1,5 @@ /* - * @copyright Copyright (c) 2016-2019 TOYOTA MOTOR CORPORATION. + * @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. diff --git a/positioning/client/src/SensorLocation_API/common/SensorLocation_API.cpp b/positioning/client/src/SensorLocation_API/common/SensorLocation_API.cpp deleted file mode 100644 index f39c9e17..00000000 --- a/positioning/client/src/SensorLocation_API/common/SensorLocation_API.cpp +++ /dev/null @@ -1,142 +0,0 @@ -/* - * @copyright Copyright (c) 2016-2019 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. - */ - -/****************************************************************************** -@file SensorLocation_API.cpp -@detail SensorLocation_API Functions -@lib libSensorLocation_API.so -******************************************************************************/ - -/***************************************************************************** - * Include * - *****************************************************************************/ -#include -#include "SensorLocation_API.h" -#include "Vehicle_API.h" -#include "Vehicle_API_Dummy.h" -#include "SensorLocation_API_private.h" - -static RET_API SensorLocationGetLonLatOnShutdownGetData(LONLAT *lonlat); - -/******************************************************************************* -* MODULE : SensorLocationGetLonLatOnShutdownGetData -* ABSTRACT : Obtain position at shutdown -* FUNCTION : Gets the location at shutdown from shared memory -* ARGUMENT : LONLAT * lonlat : Latitude/Longitude -* NOTE : -* RETURN : RET_NORMAL : Successful acquisition -* : RET_ERROR : Failed to acquire -* : RET_ERRPARAM : Parameter error -******************************************************************************/ -static RET_API SensorLocationGetLonLatOnShutdownGetData(LONLAT *lonlat) { // LCOV_EXCL_START 8:dead code - AGL_ASSERT_NOT_TESTED(); // LCOV_EXCL_LINE 200: test assert - RET_API ret = RET_NORMAL; - RET_API ret_api; - LONLAT *share_mem; /* Store Shared Memory Address */ - u_int32 share_mem_size; /* Size of the linked shared memory */ - - if (lonlat == NULL) { - ret = RET_ERRPARAM; - FRAMEWORKUNIFIEDLOG(ZONE_ERR, __FUNCTION__, "lonlat is NULL\r\n"); - } else { - /* Link to shared memory */ - ret_api = _pb_LinkShareData(const_cast(LONLAT_SHARE_NAME), - reinterpret_cast(&share_mem), &share_mem_size); - /* #QAC confirmation Rule11.4 Use structure for member reference(Cast according to shared memory link IF) */ - - if (ret_api == RET_NORMAL) { - /* Link to shared memory successful */ - - /* Get shutdown location from shared memory */ - *lonlat = *share_mem; - } else { - /* Failed to link to shared memory */ - ret = RET_ERROR; - FRAMEWORKUNIFIEDLOG(ZONE_ERR, __FUNCTION__, "Can't link shared memory\r\n"); - } - } - - return ret; -} -// LCOV_EXCL_STOP - -/****************************************************************************** -@brief SensorLocationGetLonLatOnShutdown
- Obtain position at shutdown -@outline Get location information at shutdown. -@param[in] none -@param[out] LONLAT* lonlat: Pointer to the acquired latitude/longitude information storage destination -@return SENSORLOCATION_RET_API -@retval SENSORLOCATION_RET_NORMAL : Normal completion -@retval SENSORLOCATION_RET_ERROR_INNER : Internal error -*******************************************************************************/ -SENSORLOCATION_RET_API SensorLocationGetLonLatOnShutdown(LONLAT *lonlat) { // LCOV_EXCL_START 8:dead code - AGL_ASSERT_NOT_TESTED(); // LCOV_EXCL_LINE 200: test assert - SENSORLOCATION_RET_API ret; - RET_API ret_api; /* API return value */ - RET_API ret_tmp; - SemID sem_id; /* Semaphore ID */ - - if (lonlat != NULL) { - /* Get Semaphore ID */ - sem_id = _pb_CreateSemaphore(const_cast(LONLAT_SEMAPHO_NAME)); - - if (sem_id != 0) { /* Because the return value of _pb_CreateSemaphore is not defined in #define,Evaluate directly */ - /* Semaphore ID successfully acquired */ - - /* Semaphore Lock */ - ret_api = _pb_SemLock(sem_id); - - if (ret_api == RET_NORMAL) { - /* Semaphore lock successful */ - - /* Obtain position at shutdown */ - ret_tmp = SensorLocationGetLonLatOnShutdownGetData(lonlat); - - if (ret_tmp == RET_NORMAL) { - /* Position acquisition at shutdown successful */ - ret = SENSORLOCATION_RET_NORMAL; - } else { - /* Location acquisition at shutdown failed */ - ret = SENSORLOCATION_RET_ERROR_INNER; - FRAMEWORKUNIFIEDLOG(ZONE_ERR, __FUNCTION__, "SensorLocationGetLonLatOnShutdownGetData failed"); - } - - /* Semaphore unlock */ - ret_api = _pb_SemUnlock(sem_id); - if (ret_api != RET_NORMAL) { - /* Semaphore unlock failure */ - ret = SENSORLOCATION_RET_ERROR_INNER; - FRAMEWORKUNIFIEDLOG(ZONE_ERR, __FUNCTION__, "_pb_SemUnlock failed"); - } - } else { - /* Semaphore lock failed */ - ret = SENSORLOCATION_RET_ERROR_INNER; - FRAMEWORKUNIFIEDLOG(ZONE_ERR, __FUNCTION__, "_pb_SemLock failed"); - } - } else { - /* Semaphore ID acquisition failure */ - ret = SENSORLOCATION_RET_ERROR_INNER; - FRAMEWORKUNIFIEDLOG(ZONE_ERR, __FUNCTION__, "sem_id == 0"); - } - } else { - ret = SENSORLOCATION_RET_ERROR_INNER; - FRAMEWORKUNIFIEDLOG(ZONE_ERR, __FUNCTION__, "lonlat == NULL"); - } - - return ret; -} -// LCOV_EXCL_STOP diff --git a/positioning/client/src/VehicleDebug_API/common/VehicleDebug_API.cpp b/positioning/client/src/VehicleDebug_API/common/VehicleDebug_API.cpp deleted file mode 100644 index 7ac19b2f..00000000 --- a/positioning/client/src/VehicleDebug_API/common/VehicleDebug_API.cpp +++ /dev/null @@ -1,334 +0,0 @@ -/* - * @copyright Copyright (c) 2016-2019 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. - */ - -/****************************************************************************** -@file VehicleDebug_API.cpp -@detail VehicleDebug_API Functions -@lib libVehicleDebug_API.so -******************************************************************************/ - -/***************************************************************************** - * Include * - *****************************************************************************/ -#include -#include "VehicleDebug_API.h" -#include "VehicleDebug_API_private.h" - -static VEHICLEDEBUG_RET_API VehicleDebugSndMsg(PNO pno_src, - PNO pno_dest, CID cid, u_int16 msg_len, const void *msg_data); -static RET_API SensorGetLogSettingGetData(u_int32 *log_sw, u_int8 *severity); -static EventID SensorGetLogSettingCreateEvent(PNO pno); -static RET_API SensorGetLogSettingDeleteEvent(EventID event_id); - -/******************************************************************************* -* MODULE : SensorGetLogSettingGetData -* ABSTRACT : Get Log Settings from Shared Memory -* FUNCTION : Get log settings from shared memory -* ARGUMENT : u_int32* log_sw : Log type -* : u_int8* severity : Output level -* NOTE : -* RETURN : RET_NORMAL : Successful acquisition -* : RET_ERROR : Failed to acquire -* : RET_ERRPARAM : Parameter error -******************************************************************************/ -static RET_API SensorGetLogSettingGetData(u_int32 *log_sw, u_int8 *severity) { - RET_API ret = RET_NORMAL; - RET_API ret_api; /* API return value */ - VEHICLEDEBUG_MSG_LOGINFO_DAT *share_mem; /* Store Shared Memory Address */ - u_int32 share_mem_size; /* Size of the linked shared memory */ - - if (log_sw == NULL || severity == NULL) { - ret = RET_ERRPARAM; - FRAMEWORKUNIFIEDLOG(ZONE_ERR, __FUNCTION__, "log_sw == NULL or severity == NULL\r\n"); - } else { - /* Link to shared memory */ - ret_api = _pb_LinkShareData(const_cast(LOG_SETTING_SHARE_MEMORY_NAME), - reinterpret_cast(&share_mem), &share_mem_size); - /* #QAC confirmation Rule11.4 Use structure for member reference(Cast according to shared memory link IF) */ - - if (ret_api == RET_NORMAL) { - /* Link to shared memory successful */ - if (share_mem_size == VEHICLEDEBUG_MSGBUF_DSIZE) { - /* When the size of the linked shared memory is correct */ - - /* Get log type/output level from shared memory */ - *log_sw = share_mem->log_sw; - (void)memcpy(reinterpret_cast(severity), - (const void *)(share_mem->severity), sizeof(share_mem->severity)); - } else { - /* The size of the linked shared memory is incorrect. */ - ret = RET_ERROR; - FRAMEWORKUNIFIEDLOG(ZONE_ERR, __FUNCTION__, "Bad shared memory size\r\n"); - } - } else { - /* Failed to link to shared memory */ - ret = RET_ERROR; - FRAMEWORKUNIFIEDLOG(ZONE_ERR, __FUNCTION__, "Can't link shared memory\r\n"); - } - } - - return ret; -} - -/******************************************************************************* -* MODULE : SensorGetLogSettingCreateEvent -* ABSTRACT : Event Generation -* FUNCTION : Generate an event -* ARGUMENT : PNO pno : Destination thread ID -* NOTE : -* RETURN : EventID event_id : Event ID (Event set failed if 0) -******************************************************************************/ -static EventID SensorGetLogSettingCreateEvent(PNO pno) { - EventID event_id; /* Event ID */ - int8 event_name[32]; /* Event name character string buffer */ - - /* Initialization of event name character string buffer */ - (void)memset(reinterpret_cast(event_name), 0, sizeof(event_name)); - - /* Event name creation */ - snprintf(event_name, sizeof(event_name), "VehicleDebug_%X", pno); - - /* Event Generation */ - event_id = _pb_CreateEvent(_CWORD64_EVENT_MANUALRESET_OFF, VEHICLEDEBUG_EVENT_VAL_INIT, event_name); - - return event_id; -} - -/******************************************************************************* - * MODULE : SensorGetLogSettingDeleteEvent - * ABSTRACT : Event deletion processing - * FUNCTION : Delete events - * ARGUMENT : event_id : Event ID of the event to delete - * NOTE : - * RETURN : RET_NORMAL : Normal completion - * : RET_EV_NONE : Specified event does not exist - ******************************************************************************/ -static RET_API SensorGetLogSettingDeleteEvent(EventID event_id) { - return(_pb_DeleteEvent(event_id)); -} - -/******************************************************************************* -@brief SensorGetLogSetting
- Log setting acquisition -@outline Get the log settings. -@param[in] PNO pno : Destination thread ID -@param[out] u_int32* log_sw : Log type -@param[out] u_int8* severity : Output level -@return SENSORMOTION_RET_API -@retval VEHICLEDEBUG_RET_NORMAL : Successful acquisition -@retval VEHICLEDEBUG_RET_ERROR : Acquisition failure error -*******************************************************************************/ -VEHICLEDEBUG_RET_API SensorGetLogSetting(PNO pno, u_int32 *log_sw, u_int8 *severity) { - VEHICLEDEBUG_RET_API ret; - RET_API ret_api; /* API return value */ - RET_API ret_tmp; - EventID event_id; /* Event ID */ - int32 event_val; /* Event value */ - SemID sem_id; /* Semaphore ID */ - VEHICLEDEBUG_MSG_LOGINFO_DAT data; /* Message data(Dummy) */ - - if (log_sw == NULL || severity == NULL) { - ret = VEHICLEDEBUG_RET_ERROR; - FRAMEWORKUNIFIEDLOG(ZONE_ERR, __FUNCTION__, "log_sw == NULL or severity == NULL\r\n"); - } else { - /* Set of events */ - event_id = SensorGetLogSettingCreateEvent(pno); - - if (event_id != 0) { - /* Event Set Success */ - - /* Messaging(Notify VehicleSens_thread) */ - /* Because it uses shared memory for data retrieval,Message body does not need to be sent */ - ret_api = VehicleDebugSndMsg(pno, - PNO_VEHICLE_SENSOR, - CID_VEHICLEDEBUG_LOG_GET, - 0, /* Message size is set to 0 */ - (const void *)&data); /* Message data(Dummy) -> Errors by NULL */ - - if (ret_api == RET_NORMAL) { - /* Message transmission success */ - - /* Wait for completion event */ - ret_api = _pb_WaitEvent(event_id, - SAPI_EVWAIT_VAL, - VEHICLEDEBUG_RET_ERROR_MIN, VEHICLEDEBUG_RET_NORMAL, &event_val, INFINITE); - if (ret_api == RET_NORMAL) { - /* Return from Event Wait */ - if (event_val == VEHICLEDEBUG_RET_NORMAL) { - /* Log setting acquisition function succeeded */ - - /* Get Semaphore ID */ - sem_id = _pb_CreateSemaphore(const_cast(SENSOR_LOG_SETTING_SEMAPHO_NAME)); - - /* Because the return value of _pb_CreateSemaphore is not defined in #define,Evaluate directly */ - if (sem_id != 0) { - /* Semaphore ID successfully acquired */ - /* Semaphore Lock */ - ret_api = _pb_SemLock(sem_id); - - if (ret_api == RET_NORMAL) { - /* Semaphore lock successful */ - - /* Get Log Settings from Shared Memory */ - ret_tmp = SensorGetLogSettingGetData(log_sw, severity); - - if (ret_tmp == RET_NORMAL) { - /* Log setting acquisition success */ - ret = VEHICLEDEBUG_RET_NORMAL; - } else { - /* Log setting acquisition failure */ - ret = VEHICLEDEBUG_RET_ERROR; - FRAMEWORKUNIFIEDLOG(ZONE_ERR, __FUNCTION__, "SensorGetLogSettingGetData Failed"); - } - - /* Semaphore unlock */ - ret_api = _pb_SemUnlock(sem_id); - if (ret_api != RET_NORMAL) { - /* Semaphore unlock failure */ - ret = VEHICLEDEBUG_RET_ERROR; - FRAMEWORKUNIFIEDLOG(ZONE_ERR, __FUNCTION__, "_pb_SemUnlock Failed"); - } - } else { - /* Semaphore lock failed */ - ret = VEHICLEDEBUG_RET_ERROR; - FRAMEWORKUNIFIEDLOG(ZONE_ERR, __FUNCTION__, "_pb_SemLock Failed"); - } - } else { - /* Semaphore ID acquisition failure */ - ret = VEHICLEDEBUG_RET_ERROR; - FRAMEWORKUNIFIEDLOG(ZONE_ERR, __FUNCTION__, "sem_id == 0"); - } - } else { - /* Log setting acquisition function failed */ - ret = VEHICLEDEBUG_RET_ERROR; - FRAMEWORKUNIFIEDLOG(ZONE_ERR, __FUNCTION__, "event_val != VEHICLEDEBUG_RET_NORMAL"); - } - } else { - /* _pb_WaitEvent failed */ - ret = VEHICLEDEBUG_RET_ERROR; - FRAMEWORKUNIFIEDLOG(ZONE_ERR, __FUNCTION__, "_pb_WaitEvent Failed"); - } - } else { - /* Message transmission failure */ - ret = VEHICLEDEBUG_RET_ERROR; - FRAMEWORKUNIFIEDLOG(ZONE_ERR, __FUNCTION__, "VehicleDebugSndMsg Failed"); - } - /* Event deletion */ - (void)SensorGetLogSettingDeleteEvent(event_id); - } else { - /* Event set failed */ - ret = VEHICLEDEBUG_RET_ERROR; - FRAMEWORKUNIFIEDLOG(ZONE_ERR, __FUNCTION__, "event_id == 0"); - } - } - - return ret; -} - -/******************************************************************************* -@brief SensorSetLogStatus
- Log Setting Request -@outline Configure the log. -@param[in] PNO pno : Destination thread ID -@param[in] u_int32 log_sw : Log type - Correspond to the log output by each bit. - 0th bit : Location Log Output Settings(0:OFF 1:ON) -@param[in] u_int8* severity : Output level(Not used) -@param[out] None -@return SENSORMOTION_RET_API -@retval VEHICLEDEBUG_RET_NORMAL : Setting success -@retval VEHICLEDEBUG_RET_ERROR : Setting failed -*******************************************************************************/ -VEHICLEDEBUG_RET_API SensorSetLogStatus(PNO pno, u_int32 log_sw, u_int8 *severity) { - RET_API ret_api = RET_NORMAL; /* System API return value */ - VEHICLEDEBUG_RET_API ret = VEHICLEDEBUG_RET_NORMAL; /* Return value */ - VEHICLEDEBUG_MSG_LOGINFO_DAT data; /* Message data */ - - if (severity != NULL) { - /* Message configuration */ - data.log_sw = log_sw; - (void)memcpy(reinterpret_cast(&(data.severity[0])), (const void *)(severity), sizeof(data.severity)); - - /* Messaging */ - ret_api = VehicleDebugSndMsg(pno, - PNO_VEHICLE_SENSOR, - CID_VEHICLEDEBUG_LOG_SET, - (u_int16)sizeof(VEHICLEDEBUG_MSG_LOGINFO_DAT), - (const void *)&data); - if (ret_api == RET_NORMAL) { - ret = VEHICLEDEBUG_RET_NORMAL; - } else { - ret = VEHICLEDEBUG_RET_ERROR; - } - } else { - ret = VEHICLEDEBUG_RET_ERROR; - FRAMEWORKUNIFIEDLOG(ZONE_ERR, __FUNCTION__, "severity == NULL"); - } - - return ret; -} - -/******************************************************************************* - * MODULE : VehicleDebugSndMsg - * ABSTRACT : Message transmission processing - * FUNCTION : Send a message to the specified PNO - * ARGUMENT : pno_src : Source PNO - * : pno_dest : Destination PNO - * : cid : Command ID - * : msg_len : Message data body length - * : *msg_data : Pointer to message data - * NOTE : - * RETURN : RET_NORMAL : Normal completion - * : RET_ERRNOTRDY : Destination process is not wakeup - * : RET_ERRMSGFULL : Message queue overflows - * : RET_ERRPARAM : Buffer size error - ******************************************************************************/ -static VEHICLEDEBUG_RET_API VehicleDebugSndMsg(PNO pno_src, - PNO pno_dest, CID cid, u_int16 msg_len, const void *msg_data) { - VEHICLEDEBUG_MSG_BUF msg_buf; - RET_API ret_api; - - if (msg_data != NULL) { - /* Initialization message buffe */ - (void)memset(reinterpret_cast(&msg_buf), 0, sizeof(VEHICLEDEBUG_MSG_BUF)); - - /*--------------------------------------------------------------* - * Create a message header * - *--------------------------------------------------------------*/ - msg_buf.hdr.hdr.sndpno = pno_src; /* source PNO */ - msg_buf.hdr.hdr.cid = cid; /* Command ID */ - msg_buf.hdr.hdr.msgbodysize = msg_len; /* Data size */ - - /*--------------------------------------------------------------* - * Create a message data * - *--------------------------------------------------------------*/ - if (msg_len != 0) { - (void)memcpy(reinterpret_cast(&msg_buf.data) , msg_data, sizeof(msg_buf.data)); - } - /*--------------------------------------------------------------* - * Send messages * - *--------------------------------------------------------------*/ - ret_api = _pb_SndMsg(pno_dest, /* destination PNO */ - static_cast(sizeof(T_APIMSG_MSGBUF_HEADER) + msg_len),/* message size */ - reinterpret_cast<&msg_buf>, /* message buffer */ - 0); /* Unused Argument */ - } else { - /* Argument error(Pointer to the data buffer) */ - ret_api = VEHICLEDEBUG_RET_ERROR_PARAM; - } - - return ret_api; -} diff --git a/positioning/client/src/Vehicle_API/common/Vehicle_API.cpp b/positioning/client/src/Vehicle_API/common/Vehicle_API.cpp deleted file mode 100644 index 27487d15..00000000 --- a/positioning/client/src/Vehicle_API/common/Vehicle_API.cpp +++ /dev/null @@ -1,292 +0,0 @@ -/* - * @copyright Copyright (c) 2016-2019 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. - */ - -/******************************************************************************* - * File name :Vehicle_API.cpp - * System name :GPF - * Subsystem name :Vehicle I/F library - * Program name :Vehicle I/F API - * Module configuration :POS_RegisterListenerSensData() Vehicle sensor information delivery registration - ******************************************************************************/ -#include -#include -#include -#include "Sensor_API_private.h" -#include "Vehicle_API_Dummy.h" -#include "Vehicle_API_private.h" -#include "POS_private.h" - -/*************************************************/ -/* Global variable */ -/*************************************************/ - -/******************************************************************************* - * initialize -******************************************************************************/ -VEHICLE_RET_API VehicleInitialize(u_int32 (*sighand)()) { // LCOV_EXCL_START 8:dead code // NOLINT(readability/nolint) - AGL_ASSERT_NOT_TESTED(); // LCOV_EXCL_LINE 200: test assert - RET_API _CWORD64_api_ret; - VEHICLE_RET_API ret; - - _CWORD64_api_ret = _pb_Setup_CWORD64_API(NULL); - - if (_CWORD64_api_ret == RET_NORMAL) { - ret = RET_NORMAL; - } else { - ret = RET_ERROR; - } - return ret; -} -// LCOV_EXCL_STOP - -/** - * @brief - * Vehicle sensor information delivery registration - * Register delivery of vehicle sensor information - * - * @param[in] hApp Application handle - * @param[in] notifyName Destination thread name - * @param[in] ulDid Pointer to an array of data IDs for vehicle information - * @param[in] ucCtrlFlg Delivery control
- * Delivery registration: SENSOR_DELIVERY_REGIST
- * Delivery stop: SENSOR_DELIVERY_STOP (Note: Not mounted)
- * Resume delivery: SENSOR_DELIVERY_RESTART (Note: Not mounted) - * @param[in] ucDeliveryTiming Delivery timing
- * Updating : SENSOR_DELIVERY_TIMING_UPDATE
- * Changing : SENSOR_DELIVERY_TIMING_CHANGE - * - * @return SENSOR_RET_NORMAL Successful registration
- * SENSOR_RET_ERROR_CREATE_EVENT Event generation failure
- * SENSOR_RET_ERROR_PARAM Parameter error
- * SENSOR_RET_ERROR_DID Unregistered ID
- * SENSOR_RET_ERROR_BUFFULL FULL of delivery registers
- * SENSOR_RET_ERROR_NOSUPPORT Unsupported environment - * - */ -SENSOR_RET_API POS_RegisterListenerSensData(HANDLE hApp, - PCSTR notifyName, DID ulDid, u_int8 ucCtrlFlg, u_int8 ucDeliveryTiming) { - SENSOR_RET_API ret; /* Return value */ - UNIT_TYPE type; /* Supported HW Configuration Type */ - BOOL ret_b; - - /* Internal debug log output */ - FRAMEWORKUNIFIEDLOG(ZONE_INFO, __FUNCTION__, "+"); - - /* Check Delivery Control Designation */ - ret = SENSOR_RET_NORMAL; - /* Arguments & Support Configuration Check */ - if ((ucDeliveryTiming != SENSOR_DELIVERY_TIMING_CHANGE) && - (ucDeliveryTiming != SENSOR_DELIVERY_TIMING_UPDATE)) { - /* Change delivery timing,Terminate as a parameter error except update */ - ret = SENSOR_RET_ERROR_PARAM; - } else if (SENSOR_DELIVERY_REGIST != ucCtrlFlg) { - /* Parameters other than delivery registration terminated abnormally. */ - ret = SENSOR_RET_ERROR_PARAM; - } else if (hApp == NULL) { - /* Check Handle */ - /* NULL terminates with an abnormal parameter */ - ret = SENSOR_RET_ERROR_PARAM; - } else if (notifyName == NULL) { - /* Check Thread Name */ - /* NULL terminates with an abnormal parameter */ - ret = SENSOR_RET_ERROR_PARAM; - } else { - /* Positioning Base API initialization */ - _pb_Setup_CWORD64_API(hApp); - - /* Supported HW Configuration Check */ - type = GetEnvSupportInfo(); - if (UNIT_TYPE_GRADE1 == type) { - /* GRADE1 */ - ret = SENSOR_RET_NORMAL; - } else if (UNIT_TYPE_GRADE2 == type) { - /* - * Note. - * This feature branches processing depending on the unit type. - */ - ret = SENSOR_RET_ERROR_NOSUPPORT; - } else { - /* Environment error */ - ret = SENSOR_RET_ERROR_NOSUPPORT; - } - } - - if (SENSOR_RET_NORMAL == ret) { - /* Judge DID */ - ret_b = SENSOR_DID_JUDGE_REGLIS(ulDid); - if (ret_b == FALSE) { - /* An unacceptable ID is regarded as a parameter error. */ - ret = SENSOR_RET_ERROR_PARAM; - } else { - /* Delivery registration process */ - ret = PosRegisterListenerProc(notifyName, ulDid, ucCtrlFlg, ucDeliveryTiming); - } - } - - /* Internal debug log output */ - FRAMEWORKUNIFIEDLOG(ZONE_INFO, __FUNCTION__, "- [ret = %d]", ret); - - return ret; -} - -/******************************************************************************* - * MODULE : PosSetShareData - * ABSTRACT : Write processing to shared memory - * FUNCTION : Write shared memory - * ARGUMENT : *share_top : Start address of shared memory - * : offset : Offsets to shared memory write destination - * : *data_src : Data - * : size_src : Size - * NOTE : - * RETURN : void - ******************************************************************************/ -void PosSetShareData(void *share_top, u_int16 offset, const void *data_src, u_int16 size_src) { - VEHICLE_SHARE_BLOCK_DAT *share_dat; - /* Calculate Shared Memory Write Address */ - share_dat = reinterpret_cast(reinterpret_cast(share_top) + offset); - - /* _CWORD71_ processing speed(Memset modification) */ - /* Clear Shared Memory(Unused area) */ - share_dat->reserve[0] = 0; - share_dat->reserve[1] = 0; - - /* Set write size to shared memory */ - share_dat->size = size_src; - - /* Set specified data in shared memory */ - memcpy(reinterpret_cast(share_dat->data), data_src, (size_t)size_src); -} - -/******************************************************************************* -* MODULE : VehicleGetDrData -* ABSTRACT : DR information acquisition -* FUNCTION : Retrieves DR information (optional data) by returning to completion. -* ARGUMENT : pno : Thread ID -* : did : Data ID for DR information -* : *dest_data : Pointer to the storage destination of DR information -* : dest_size : Storage destination size of DR information(byte) -* NOTE : -* RETURN : Zero or more : Stored data size -* : VEHICLE_RET_ERROR_CREATE_EVENT : Event generation failure -* : VEHICLE_RET_ERROR_OUTOF_MEMORY : Shared memory allocation failed -* : VEHICLE_RET_ERROR_SIZE : Storage destination size error -* : VEHICLE_RET_ERROR_DID : Unregistered ID -******************************************************************************/ -int32 VehicleGetDrData(PNO pno, DID did, void *dest_data, u_int16 dest_size) { // LCOV_EXCL_START 8:dead code - AGL_ASSERT_NOT_TESTED(); // LCOV_EXCL_LINE 200: test assert - VEHICLE_RET_API ret; /* Return value */ - RET_API ret_api; /* System API return value */ - EventID event_id; /* Event ID */ - int32 event_val; /* Event value */ - void *share_top; /* Start address of shared memory */ - u_int32 share_size; /* Size of shared memory area */ - u_int16 offset; /* Offset to free shared memory area */ - VEHICLE_SHARE_BLOCK_DAT *share_dat; /* Address of free shared memory area */ - VEHICLE_MSG_GET_VEHICLE_DATA_DAT data; /* Message data */ - - /* Initialization */ - event_id = 0; - event_val = 0; - memset(reinterpret_cast(&data), 0, sizeof(VEHICLE_MSG_GET_VEHICLE_DATA_DAT)); - - /* Event Generation */ - event_id = VehicleCreateEvent(pno); - - if (0 != event_id) { - /* Successful event generation */ - /* Allocate shared memory */ - ret_api = VehicleLinkShareData(reinterpret_cast(&share_top), &share_size, &offset); - if (RET_NORMAL != ret_api) { - /* Failed to allocate shared memory */ - ret = VEHICLE_RET_ERROR_OUTOF_MEMORY; - } else { - /* When the shared memory is allocated successfully */ - - /* Calculate start address of free shared memory area */ - share_dat = reinterpret_cast(reinterpret_cast(share_top) + offset); - - /* Send vehicle sensor information acquisition message */ - data.did = did; - data.pno = pno; - data.offset = offset; - data.size = VEHICLE_SHARE_BLOCK_DSIZE; - data.event_id = event_id; - /* Messaging */ - - ret_api = VehicleSndMsg(pno, - PNO_VEHICLE_SENSOR, - CID_VEHICLEIF_GET_DR_DATA, - sizeof(VEHICLE_MSG_GET_VEHICLE_DATA_DAT), - (const void *)&data); - - if (RET_NORMAL == ret_api) { - /* Message transmission processing is successful */ - /* Wait for completion event from vehicle sensor thread */ - ret_api = _pb_WaitEvent(event_id, - SAPI_EVWAIT_VAL, - VEHICLE_RET_ERROR_MIN, VEHICLE_RET_NORMAL, &event_val, INFINITE); - if (RET_NORMAL != ret_api) { - /* When not put in event wait state */ - /* Return an event generation failure */ - ret = VEHICLE_RET_ERROR_CREATE_EVENT; - } else { - /* Return from Event Wait */ - - /* Link to shared memory */ - ret_api = _pb_LinkShareData(const_cast(VEHICLE_SHARE_NAME), &share_top, &share_size); - - /* Calculate the address of the shared memory storage area. */ - share_dat = reinterpret_cast(reinterpret_cast(share_top) - + offset); - - if (event_val < 0) { - /* Vehicle sensor information acquisition failure */ - ret = (VEHICLE_RET_API)event_val; - } else if (RET_NORMAL != ret_api) { - /* Shared memory error */ - ret = VEHICLE_RET_ERROR_OUTOF_MEMORY; - } else if (dest_size < share_dat->size) { - /* Storage destination size error */ - ret = VEHICLE_RET_ERROR_SIZE; - } else { - /* Vehicle sensor information acquisition success */ - - /* Copy from shared memory to user memory */ - memcpy(dest_data, share_dat->data, (size_t)share_dat->size); - - /* Set Write Size to Return Value */ - ret = static_cast(share_dat->size); - } - } - } else { - /* Message transmission processing failed */ - /* Return an event generation failure */ - ret = VEHICLE_RET_ERROR_CREATE_EVENT; - } - /* Free shared memory */ - (void)VehicleUnLinkShareData(reinterpret_cast(share_top), offset); - } - - /* Event deletion */ - ret_api = VehicleDeleteEvent(event_id); - - } else { - /* Event generation failure */ - ret = VEHICLE_RET_ERROR_CREATE_EVENT; - } - return ret; -} -// LCOV_EXCL_STOP diff --git a/positioning/server/Makefile b/positioning/server/Makefile index 226a8a54..6ef1082d 100644 --- a/positioning/server/Makefile +++ b/positioning/server/Makefile @@ -1,5 +1,5 @@ # -# @copyright Copyright (c) 2016-2019 TOYOTA MOTOR CORPORATION. +# @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. diff --git a/positioning/server/include/Sensor/ClockDataMng.h b/positioning/server/include/Sensor/ClockDataMng.h index a46c05bb..69a96c20 100644 --- a/positioning/server/include/Sensor/ClockDataMng.h +++ b/positioning/server/include/Sensor/ClockDataMng.h @@ -1,5 +1,5 @@ /* - * @copyright Copyright (c) 2016-2019 TOYOTA MOTOR CORPORATION. + * @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. @@ -25,7 +25,7 @@ #include -//#include "positioning_hal.h" +#include "positioning_hal.h" #include "CanInput_API.h" #include "Sensor_API.h" @@ -81,7 +81,7 @@ extern "C" { BOOL ClockDataMngInitialize(void); void ClockDataMngSetLastTimeDiff(int32 time_diff); -// void ClockDataMngSetGpsTime(const SENSOR_MSG_GPSDATA_DAT *gps_time_data); + void ClockDataMngSetGpsTime(const SENSOR_MSG_GPSDATA_DAT *gps_time_data); void ClockDataMngGetGpsTime(CLOCKDATAMNG_GPS_TIME *gps_time_data); BOOL ClockDataMngGetLocalTime(const CANINPUT_MSG_LOCALTIMEINFO_DAT *can_local_time, LOCALTIME *vehicle_local_time); diff --git a/positioning/server/include/Sensor/ClockGPS_Process_Proto.h b/positioning/server/include/Sensor/ClockGPS_Process_Proto.h index 1251e492..5f20c338 100644 --- a/positioning/server/include/Sensor/ClockGPS_Process_Proto.h +++ b/positioning/server/include/Sensor/ClockGPS_Process_Proto.h @@ -1,5 +1,5 @@ /* - * @copyright Copyright (c) 2016-2019 TOYOTA MOTOR CORPORATION. + * @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. diff --git a/positioning/server/include/Sensor/ClockUtility.h b/positioning/server/include/Sensor/ClockUtility.h index c380de71..8924975c 100644 --- a/positioning/server/include/Sensor/ClockUtility.h +++ b/positioning/server/include/Sensor/ClockUtility.h @@ -1,5 +1,5 @@ /* - * @copyright Copyright (c) 2016-2019 TOYOTA MOTOR CORPORATION. + * @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. @@ -22,7 +22,7 @@ #define POSITIONING_SERVER_INCLUDE_SENSOR_CLOCKUTILITY_H_ #include -#include "include/Clock_API.h" +#include "Clock_API.h" #ifdef __cplusplus extern "C" { diff --git a/positioning/server/include/Sensor/ClockUtility_private.h b/positioning/server/include/Sensor/ClockUtility_private.h index f8f01721..8c322ae0 100644 --- a/positioning/server/include/Sensor/ClockUtility_private.h +++ b/positioning/server/include/Sensor/ClockUtility_private.h @@ -1,5 +1,5 @@ /* - * @copyright Copyright (c) 2016-2019 TOYOTA MOTOR CORPORATION. + * @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. diff --git a/positioning/server/include/Sensor/DeadReckoning_Common.h b/positioning/server/include/Sensor/DeadReckoning_Common.h index 7b065153..1c6e0604 100644 --- a/positioning/server/include/Sensor/DeadReckoning_Common.h +++ b/positioning/server/include/Sensor/DeadReckoning_Common.h @@ -1,5 +1,5 @@ /* - * @copyright Copyright (c) 2016-2019 TOYOTA MOTOR CORPORATION. + * @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. diff --git a/positioning/server/include/Sensor/DeadReckoning_DataMaster.h b/positioning/server/include/Sensor/DeadReckoning_DataMaster.h index f1f23009..00c056af 100644 --- a/positioning/server/include/Sensor/DeadReckoning_DataMaster.h +++ b/positioning/server/include/Sensor/DeadReckoning_DataMaster.h @@ -1,5 +1,5 @@ /* - * @copyright Copyright (c) 2016-2019 TOYOTA MOTOR CORPORATION. + * @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. diff --git a/positioning/server/include/Sensor/DeadReckoning_DeliveryCtrl.h b/positioning/server/include/Sensor/DeadReckoning_DeliveryCtrl.h index e276a1fb..a555a475 100644 --- a/positioning/server/include/Sensor/DeadReckoning_DeliveryCtrl.h +++ b/positioning/server/include/Sensor/DeadReckoning_DeliveryCtrl.h @@ -1,5 +1,5 @@ /* - * @copyright Copyright (c) 2016-2019 TOYOTA MOTOR CORPORATION. + * @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. diff --git a/positioning/server/include/Sensor/DeadReckoning_main.h b/positioning/server/include/Sensor/DeadReckoning_main.h index 9277525a..3e2e9d48 100644 --- a/positioning/server/include/Sensor/DeadReckoning_main.h +++ b/positioning/server/include/Sensor/DeadReckoning_main.h @@ -1,5 +1,5 @@ /* - * @copyright Copyright (c) 2016-2019 TOYOTA MOTOR CORPORATION. + * @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. @@ -101,13 +101,17 @@ typedef struct { * ABSTRACT : LineSensor Vehicle Signal-Storage Message Structures ***********************************************************************/ typedef struct { - u_int16 gyro_data[DEAD_RECKONING_SENSOR_FIRST_NUM * NUM_OF_100msData]; /* Data content */ + u_int16 gyro_x_data[DEAD_RECKONING_SENSOR_FIRST_NUM * NUM_OF_100msData]; /* Data content */ + u_int16 gyro_y_data[DEAD_RECKONING_SENSOR_FIRST_NUM * NUM_OF_100msData]; /* Data content */ + u_int16 gyro_z_data[DEAD_RECKONING_SENSOR_FIRST_NUM * NUM_OF_100msData]; /* Data content */ u_int16 spd_pulse_data[DEAD_RECKONING_SENSOR_FIRST_NUM]; /* Data content */ u_int8 spd_pulse_check_data[DEAD_RECKONING_SENSOR_FIRST_NUM]; /* Data content */ u_int8 rev_data[DEAD_RECKONING_SENSOR_FIRST_NUM]; /* Data content */ u_int8 data_num; /* Number of data */ u_int8 reserve[3]; /* reserve */ - u_int16 gyro_rcv_size; /* Receiving Size */ + u_int16 gyro_x_rcv_size; /* Receiving Size */ + u_int16 gyro_y_rcv_size; /* Receiving Size */ + u_int16 gyro_z_rcv_size; /* Receiving Size */ u_int16 spd_pulse_rcv_size; /* Receiving Size */ u_int16 spd_pulse_check_rcv_size; /* Receiving Size */ u_int16 rev_rcv_size; /* Receiving Size */ @@ -129,9 +133,9 @@ typedef struct { ************************************************************************/ void DeadReckoningRcvMsg(const DEAD_RECKONING_RCVDATA *msg, DEAD_RECKONING_LONLAT_INFO *location_info); -//void DeadReckoningRcvMsgFstSens(const DEAD_RECKONING_RCVDATA *msg, DEAD_RECKONING_LONLAT_INFO *location_info, -// const SENSOR_MSG_GPSDATA_DAT *rcv_gps_msg, Struct_GpsData* send_gps_msg, -// Struct_SensData* send_sensor_msg); +void DeadReckoningRcvMsgFstSens(const DEAD_RECKONING_RCVDATA *msg, DEAD_RECKONING_LONLAT_INFO *location_info, + const SENSOR_MSG_GPSDATA_DAT *rcv_gps_msg, Struct_GpsData* send_gps_msg, + Struct_SensData* send_sensor_msg); int32 DeadReckoningInit(void); void DeadReckoningGetDRData(const DEADRECKONING_MSG_GET_DR_DATA *msg); void DeadReckoningSetMapMatchingData(const DR_MSG_MAP_MATCHING_DATA *msg); diff --git a/positioning/server/include/Sensor/GpsInt.h b/positioning/server/include/Sensor/GpsInt.h index 0d28aab6..fbb69de6 100644 --- a/positioning/server/include/Sensor/GpsInt.h +++ b/positioning/server/include/Sensor/GpsInt.h @@ -1,5 +1,5 @@ /* - * @copyright Copyright (c) 2016-2019 TOYOTA MOTOR CORPORATION. + * @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. diff --git a/positioning/server/include/Sensor/SensorLog.h b/positioning/server/include/Sensor/SensorLog.h index 0b32236b..9b6a49aa 100644 --- a/positioning/server/include/Sensor/SensorLog.h +++ b/positioning/server/include/Sensor/SensorLog.h @@ -1,5 +1,5 @@ /* - * @copyright Copyright (c) 2016-2019 TOYOTA MOTOR CORPORATION. + * @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. diff --git a/positioning/server/include/Sensor/VehicleSens_Common.h b/positioning/server/include/Sensor/VehicleSens_Common.h index d3f0b457..7b472684 100644 --- a/positioning/server/include/Sensor/VehicleSens_Common.h +++ b/positioning/server/include/Sensor/VehicleSens_Common.h @@ -1,5 +1,5 @@ /* - * @copyright Copyright (c) 2016-2019 TOYOTA MOTOR CORPORATION. + * @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. @@ -25,7 +25,7 @@ #include "Vehicle_API_Dummy.h" #include "Vehicle_API_private.h" -//#include "positioning_hal.h" +#include "positioning_hal.h" /************************************************************************ * Macro definitions * @@ -126,6 +126,6 @@ u_int16 VehicleSensGetDataMasterOffset(DID); #if CONFIG_SENSOR_EXT_VALID /* Initial Sensor Support */ u_int16 VehicleSensGetDataMasterExtOffset(DID); #endif -//void VehicleSensSetGpsVersion(const SENSOR_MSG_GPSDATA_DAT *pstData); +void VehicleSensSetGpsVersion(const SENSOR_MSG_GPSDATA_DAT *pstData); void VehicleSensGetDebugPosDate(void* pBuf, u_int8 uc_get_method); #endif // POSITIONING_SERVER_INCLUDE_SENSOR_VEHICLESENS_COMMON_H_ diff --git a/positioning/server/include/Sensor/VehicleSens_DataMaster.h b/positioning/server/include/Sensor/VehicleSens_DataMaster.h index 805d94f4..a1807642 100644 --- a/positioning/server/include/Sensor/VehicleSens_DataMaster.h +++ b/positioning/server/include/Sensor/VehicleSens_DataMaster.h @@ -1,5 +1,5 @@ /* - * @copyright Copyright (c) 2016-2019 TOYOTA MOTOR CORPORATION. + * @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. @@ -25,9 +25,8 @@ #include "Vehicle_API_Dummy.h" #include "Vehicle_API_private.h" -//#include "positioning_hal.h" +#include "positioning_hal.h" #include "VehicleSens_Common.h" -#include "VehicleSens_FromMng.h" #include "VehicleSens_SelectionItemList.h" #include "CommonDefine.h" #include @@ -190,9 +189,13 @@ #define VEHICLE_DINIT_SYSTEMP 0x0000 #define VEHICLE_DINIT_SPEED_PULSE 0x0000 #define VEHICLE_DINIT_SPEED_KMPH 0x0000 -#define VEHICLE_DINIT_GYRO 0x0000 +#define VEHICLE_DINIT_GYRO_X 0x0000 +#define VEHICLE_DINIT_GYRO_Y 0x0000 +#define VEHICLE_DINIT_GYRO_Z 0x0000 +#define VEHICLE_DINIT_GYRO VEHICLE_DINIT_GYRO_X #define VEHICLE_DINIT_GSNS_X 0x0000 #define VEHICLE_DINIT_GSNS_Y 0x0000 +#define VEHICLE_DINIT_GSNS_Z 0x0000 #define VEHICLE_DINIT_REV 0x00 #define VEHICLE_DINIT_VSC1S03_4 0x00 #define VEHICLE_DINIT_VSC1S03_5 0x00 @@ -302,143 +305,152 @@ /* -- PastModel002 support */ /* Size of the data(byte) */ -#define VEHICLE_DSIZE_DESTINATION 0x00 -#define VEHICLE_DSIZE_HV 0x00 -#define VEHICLE_DSIZE_2WD4WD 0x00 -#define VEHICLE_DSIZE_STEERING_WHEEL 0x00 -#define VEHICLE_DSIZE_VB 0x00 -#define VEHICLE_DSIZE_IG 0x00 -#define VEHICLE_DSIZE_MIC 0x00 -#define VEHICLE_DSIZE_TEST 0x00 -#define VEHICLE_DSIZE_VTRADAPTER 0x00 -#define VEHICLE_DSIZE_AUXADAPTER 0x00 -#define VEHICLE_DSIZE_BACKDOOR 0x00 -#define VEHICLE_DSIZE_PKB 0x00 -#define VEHICLE_DSIZE_ADIM 0x00 -#define VEHICLE_DSIZE_ILL 0x00 -#define VEHICLE_DSIZE_RHEOSTAT 0x00 -#define VEHICLE_DSIZE_PANELTEMP 0x00 -#define VEHICLE_DSIZE_SYSTEMP 0x00 -#define VEHICLE_DSIZE_SPEED_PULSE 0x00 -#define VEHICLE_DSIZE_SPEED_KMPH 0x00 -#define VEHICLE_DSIZE_GYRO 0x00 -#define VEHICLE_DSIZE_GYRO_TEMP 0x00 -#define VEHICLE_DSIZE_PULSE_TIME 0x00 -#define VEHICLE_DSIZE_GSNS_X 0x00 -#define VEHICLE_DSIZE_GSNS_Y 0x00 -#define VEHICLE_DSIZE_REV 0x00 -#define VEHICLE_DSIZE_VSC1S03 0x00 /* Internal extensions */ -#define VEHICLE_DSIZE_ECO1S01 0x00 -#define VEHICLE_DSIZE_ENG1F07 0x00 -#define VEHICLE_DSIZE_ENG1S03 0x00 -#define VEHICLE_DSIZE_ACN1S04 0x00 -#define VEHICLE_DSIZE_ACN1S05 0x00 -#define VEHICLE_DSIZE_ACN1S06 0x00 -#define VEHICLE_DSIZE_ACN1S08 0x00 -#define VEHICLE_DSIZE_ACN1S07 0x00 -#define VEHICLE_DSIZE_EHV1S90 0x00 -#define VEHICLE_DSIZE_ECT1S92 0x00 -#define VEHICLE_DSIZE_ENG1S28 0x00 -#define VEHICLE_DSIZE_BGM1S01 0x00 -#define VEHICLE_DSIZE_ENG1F03 0x00 -#define VEHICLE_DSIZE_CAA1N01 0x00 -#define VEHICLE_DSIZE_MET1S01 0x00 -#define VEHICLE_DSIZE_MET1S03 0x00 -#define VEHICLE_DSIZE_MET1S04 0x00 -#define VEHICLE_DSIZE_MET1S05 0x00 -#define VEHICLE_DSIZE_MET1S07 0x00 -#define VEHICLE_DSIZE_BDB1S01 0x00 -#define VEHICLE_DSIZE_BDB1S03 0x00 -#define VEHICLE_DSIZE_BDB1S08 0x00 -#define VEHICLE_DSIZE_BDB1F03 0x00 -#define VEHICLE_DSIZE_TPM1S02 0x00 -#define VEHICLE_DSIZE_TPM1S03 0x00 -#define VEHICLE_DSIZE_ENG1S92 0x00 -#define VEHICLE_DSIZE_MMT1S52 0x00 -#define VEHICLE_DSIZE_EPB1S01 0x00 -#define VEHICLE_DSIZE_MINIJACK 0x00 -#define VEHICLE_DSIZE_GPS_ANTENNA 0x00 -#define VEHICLE_DSIZE_SNS_COUNTER 0x00 -#define VEHICLE_DSIZE_GPS_COUNTER 0x00 -#define VEHICLE_DSIZE_SIRF_BINARY 0 -#define VEHICLE_DSIZE_RTC 0x00 -#define VEHICLE_DSIZE_GPS_VERSION 0x00 -#define VEHICLE_DSIZE_SATELLITE_STATUS 0x00 -#define VEHICLE_DSIZE_LOCATION 0x00 +#define VEHICLE_DSIZE_DESTINATION 0x03 +#define VEHICLE_DSIZE_HV 0x01 +#define VEHICLE_DSIZE_2WD4WD 0x01 +#define VEHICLE_DSIZE_STEERING_WHEEL 0x01 +#define VEHICLE_DSIZE_VB 0x01 +#define VEHICLE_DSIZE_IG 0x01 +#define VEHICLE_DSIZE_MIC 0x01 +#define VEHICLE_DSIZE_TEST 0x01 +#define VEHICLE_DSIZE_VTRADAPTER 0x01 +#define VEHICLE_DSIZE_AUXADAPTER 0x01 +#define VEHICLE_DSIZE_BACKDOOR 0x01 +#define VEHICLE_DSIZE_PKB 0x01 +#define VEHICLE_DSIZE_ADIM 0x01 +#define VEHICLE_DSIZE_ILL 0x01 +#define VEHICLE_DSIZE_RHEOSTAT 0x01 +#define VEHICLE_DSIZE_PANELTEMP 0x01 +#define VEHICLE_DSIZE_SYSTEMP 0x02 +#define VEHICLE_DSIZE_SPEED_PULSE 0x14 +#define VEHICLE_DSIZE_SPEED_KMPH 0x02 +#define VEHICLE_DSIZE_GYRO_X 0x14 +#define VEHICLE_DSIZE_GYRO_Y 0x14 +#define VEHICLE_DSIZE_GYRO_Z 0x14 +#define VEHICLE_DSIZE_GYRO VEHICLE_DSIZE_GYRO_X +#define VEHICLE_DSIZE_GYRO_TEMP 0x02 +#define VEHICLE_DSIZE_PULSE_TIME 0x84 +#define VEHICLE_DSIZE_GSNS_X 0x06 +#define VEHICLE_DSIZE_GSNS_Y 0x06 +#define VEHICLE_DSIZE_GSNS_Z 0x06 +#define VEHICLE_DSIZE_REV 0x01 +#define VEHICLE_DSIZE_VSC1S03 0x09 /* Internal extensions */ +#define VEHICLE_DSIZE_ECO1S01 0x05 +#define VEHICLE_DSIZE_ENG1F07 0x08 +#define VEHICLE_DSIZE_ENG1S03 0x08 +#define VEHICLE_DSIZE_ACN1S04 0x08 +#define VEHICLE_DSIZE_ACN1S05 0x02 +#define VEHICLE_DSIZE_ACN1S06 0x08 +#define VEHICLE_DSIZE_ACN1S08 0x08 +#define VEHICLE_DSIZE_ACN1S07 0x06 +#define VEHICLE_DSIZE_EHV1S90 0x08 +#define VEHICLE_DSIZE_ECT1S92 0x08 +#define VEHICLE_DSIZE_ENG1S28 0x02 +#define VEHICLE_DSIZE_BGM1S01 0x01 +#define VEHICLE_DSIZE_ENG1F03 0x08 +#define VEHICLE_DSIZE_CAA1N01 0x08 +#define VEHICLE_DSIZE_MET1S01 0x08 +#define VEHICLE_DSIZE_MET1S03 0x08 +#define VEHICLE_DSIZE_MET1S04 0x08 +#define VEHICLE_DSIZE_MET1S05 0x08 +#define VEHICLE_DSIZE_MET1S07 0x08 +#define VEHICLE_DSIZE_BDB1S01 0x08 +#define VEHICLE_DSIZE_BDB1S03 0x08 +#define VEHICLE_DSIZE_BDB1S08 0x08 +#define VEHICLE_DSIZE_BDB1F03 0x08 +#define VEHICLE_DSIZE_TPM1S02 0x08 +#define VEHICLE_DSIZE_TPM1S03 0x08 +#define VEHICLE_DSIZE_ENG1S92 0x08 +#define VEHICLE_DSIZE_MMT1S52 0x08 +#define VEHICLE_DSIZE_EPB1S01 0x03 +#define VEHICLE_DSIZE_MINIJACK 0x01 +#define VEHICLE_DSIZE_GPS_ANTENNA 0x01 +#define VEHICLE_DSIZE_SNS_COUNTER 0x01 +#define VEHICLE_DSIZE_GPS_COUNTER 0x01 +#define VEHICLE_DSIZE_SIRF_BINARY 360 +#define VEHICLE_DSIZE_RTC VEHICLE_DSIZE_GPS_FORMAT +#define VEHICLE_DSIZE_GPS_VERSION VEHICLE_DSIZE_GPS_FORMAT +#define VEHICLE_DSIZE_SATELLITE_STATUS VEHICLE_DSIZE_GPS_FORMAT +#define VEHICLE_DSIZE_LOCATION VEHICLE_DSIZE_GPS_FORMAT /* ++ GPS _CWORD82_ support */ -#define VEHICLE_DSIZE_GPS__CWORD82___CWORD44_GP4 0x00 -#define VEHICLE_DSIZE_GPS__CWORD82__NMEA 0x00 -#define VEHICLE_DSIZE_GPS__CWORD82__FULLBINARY 0x00 +#define VEHICLE_DSIZE_GPS__CWORD82___CWORD44_GP4 VEHICLE_DSIZE_GPS_FORMAT +#define VEHICLE_DSIZE_GPS__CWORD82__NMEA 424 +#define VEHICLE_DSIZE_GPS__CWORD82__FULLBINARY VEHICLE_DSIZE_GPS_FORMAT /* -- GPS _CWORD82_ support */ #if CONFIG_SENSOR_EXT_VALID /* Initial Sensor Support */ -#define VEHICLE_DSIZE_DATA_MASTER_FST 0x00 - -//#define VEHICLE_DSIZE_GYRO_FST 0x00 -//#define VEHICLE_DSIZE_SPEED_PULSE_FST 0x00 -#define VEHICLE_DSIZE_GSNSX_FST 0x00 -#define VEHICLE_DSIZE_GSNSY_FST 0x00 -#define VEHICLE_DSIZE_GYROTEMP_FST 0x00 -#define VEHICLE_DSIZE_SPEED_PULSE_FLAG_FST 0x00 -#define VEHICLE_DSIZE_REV_FST 0x00 - -#define VEHICLE_DSIZE_GYRO_EXT 0x00 -#define VEHICLE_DSIZE_SPEED_PULSE_EXT 0x00 -#define VEHICLE_DSIZE_GSNS_X_EXT 0x00 -#define VEHICLE_DSIZE_GSNS_Y_EXT 0x00 -#define VEHICLE_DSIZE_SNS_COUNTER_EXT 0x00 -#define VEHICLE_DSIZE_GYRO_TEMP_EXT 0x00 -#define VEHICLE_DSIZE_REV_EXT 0x00 -#define VEHICLE_DSIZE_PULSE_TIME_EXT 0x00 +#define VEHICLE_DSIZE_DATA_MASTER_FST 0x1200 + +#define VEHICLE_DSIZE_GYRO_X_FST LSDRV_FSTSNS_DSIZE_GYRO_X +#define VEHICLE_DSIZE_GYRO_Y_FST LSDRV_FSTSNS_DSIZE_GYRO_Y +#define VEHICLE_DSIZE_GYRO_Z_FST LSDRV_FSTSNS_DSIZE_GYRO_Z +#define VEHICLE_DSIZE_SPEED_PULSE_FST LSDRV_FSTSNS_DSIZE_SPEED +#define VEHICLE_DSIZE_GSNSX_FST LSDRV_FSTSNS_DSIZE_GSENSOR_X +#define VEHICLE_DSIZE_GSNSY_FST LSDRV_FSTSNS_DSIZE_GSENSOR_Y +#define VEHICLE_DSIZE_GSNSZ_FST LSDRV_FSTSNS_DSIZE_GSENSOR_Z +#define VEHICLE_DSIZE_GYROTEMP_FST LSDRV_FSTSNS_DSIZE_GYRO_TEMP +#define VEHICLE_DSIZE_SPEED_PULSE_FLAG_FST LSDRV_FSTSNS_DSIZE_SPEED_FLG +#define VEHICLE_DSIZE_REV_FST LSDRV_FSTSNS_DSIZE_REV + +#define VEHICLE_DSIZE_GYRO_EXT 0x500 +#define VEHICLE_DSIZE_SPEED_PULSE_EXT 0x500 +#define VEHICLE_DSIZE_GSNS_X_EXT 0x500 +#define VEHICLE_DSIZE_GSNS_Y_EXT 0x500 +#define VEHICLE_DSIZE_GSNS_Z_EXT 0x500 +#define VEHICLE_DSIZE_SNS_COUNTER_EXT 0x40 +#define VEHICLE_DSIZE_GYRO_TEMP_EXT 0x80 +#define VEHICLE_DSIZE_REV_EXT 0x40 +#define VEHICLE_DSIZE_PULSE_TIME_EXT 0x2100 #define VEHICLE_DSIZE_GYRO_EXT_INIT 0x00 /* Gyro output extended data master registration number initial value */ #define VEHICLE_DSIZE_SPEED_PULSE_EXT_INIT 0x00 /* Vehicle speed expansion data master registration number initial value */ #define VEHICLE_DSIZE_GSNS_X_EXT_INIT 0x00 /* Initial value of G sensor (X-axis) extended data master registration number */ #define VEHICLE_DSIZE_GSNS_Y_EXT_INIT 0x00 /* Initial value of G sensor (Y-axis) expansion data master registration number */ +#define VEHICLE_DSIZE_GSNS_Z_EXT_INIT 0x00 /* Initial value of G sensor (Z-axis) expansion data master registration number */ #define VEHICLE_DSIZE_SNS_COUNTER_EXT_INIT 0x00 /* Initial value of register number of sensor counter extended data master */ #define VEHICLE_DSIZE_REV_EXT_INIT 0x00 /* REV extended data master registration number initial value */ #define VEHICLE_DSIZE_GYRO_TEMP_EXT_INIT 0x00 /* Gyro Temperature Extended Data Master Registration Number Initial Value */ #define VEHICLE_DSIZE_PULSE_TIME_EXT_INIT 0x00 /* Extended data master registration number initial value between pulse time */ -#define VEHICLE_DSIZE_GYRO_TROUBLE 0x00 -#define VEHICLE_DSIZE_MAIN_GPS_INTERRUPT_SIGNAL 0x00 -#define VEHICLE_DSIZE_SYS_GPS_INTERRUPT_SIGNAL 0x00 -#define VEHICLE_DSIZE_GYRO_CONNECT_STATUS 0x00 +#define VEHICLE_DSIZE_GYRO_TROUBLE 0x01 +#define VEHICLE_DSIZE_MAIN_GPS_INTERRUPT_SIGNAL 0x01 +#define VEHICLE_DSIZE_SYS_GPS_INTERRUPT_SIGNAL 0x01 +#define VEHICLE_DSIZE_GYRO_CONNECT_STATUS 0x01 -#define VEHICLE_DKEEP_MAX 0 /* Internal data retention count */ +#define VEHICLE_DKEEP_MAX 64 /* Internal data retention count */ /* Data storage location */ #define VEHICLE_DATA_POS_00 0x00 /* Data storage position 0 */ -#define VEHICLE_DATA_POS_01 0x00 /* Data storage position 1 */ +#define VEHICLE_DATA_POS_01 0x01 /* Data storage position 1 */ #endif -#define VEHICLE_DSIZE_GPS_FORMAT 0 +#define VEHICLE_DSIZE_GPS_FORMAT 1904 /* ++ PastModel002 support */ /* GPS_u-blox data size(Up to 208 bytes + 1 byte of sensor counter) */ -#define VEHICLE_DSIZE_GPS_UBLOX_FORMAT 0 +#define VEHICLE_DSIZE_GPS_UBLOX_FORMAT 212 /* ++ PastModel002 support */ /* NMEA data size */ -#define VEHICLE_DSIZE_GPS_NMEA_GGA 0 /* Positioning information(Fixed-length sentence 71 Byte) */ -#define VEHICLE_DSIZE_GPS_NMEA_DGGA 0 /* Double precision GGA - Positioning information(Fixed-length sentence 75 Byte) */ -#define VEHICLE_DSIZE_GPS_NMEA_VTG 0 /* Progress Direction,Velocity information(Fixed-length sentence 37 Byte) */ -#define VEHICLE_DSIZE_GPS_NMEA_RMC 0 /* RMC - Minimal information(Fixed-length sentence 61 Byte) */ -#define VEHICLE_DSIZE_GPS_NMEA_DRMC 0 /* Double RMC - Minimal information(Fixed-length sentence 67 Byte) */ -#define VEHICLE_DSIZE_GPS_NMEA_GLL 0 /* GLL - Geographical locality information(Fixed-length sentence 44 Byte) */ -#define VEHICLE_DSIZE_GPS_NMEA_DGLL 0 /* Double-precision GLL - Geographical locality information(Fixed-length sentence 50 Byte) */ +#define VEHICLE_DSIZE_GPS_NMEA_GGA 71 /* Positioning information(Fixed-length sentence 71 Byte) */ +#define VEHICLE_DSIZE_GPS_NMEA_DGGA 75 /* Double precision GGA - Positioning information(Fixed-length sentence 75 Byte) */ +#define VEHICLE_DSIZE_GPS_NMEA_VTG 37 /* Progress Direction,Velocity information(Fixed-length sentence 37 Byte) */ +#define VEHICLE_DSIZE_GPS_NMEA_RMC 61 /* RMC - Minimal information(Fixed-length sentence 61 Byte) */ +#define VEHICLE_DSIZE_GPS_NMEA_DRMC 67 /* Double RMC - Minimal information(Fixed-length sentence 67 Byte) */ +#define VEHICLE_DSIZE_GPS_NMEA_GLL 44 /* GLL - Geographical locality information(Fixed-length sentence 44 Byte) */ +#define VEHICLE_DSIZE_GPS_NMEA_DGLL 50 /* Double-precision GLL - Geographical locality information(Fixed-length sentence 50 Byte) */ /* GSA - DOP information and positioning satellite information(Fixed-length sentence 66 Byte) */ -#define VEHICLE_DSIZE_GPS_NMEA_GSA 0 -#define VEHICLE_DSIZE_GPS_NMEA_GSV_1 0 /* GSV - Visual satellite information(Fixed-length sentence 70 Byte) */ -#define VEHICLE_DSIZE_GPS_NMEA_GSV_2 0 /* GSV - Visual satellite information(Fixed-length sentence 70 Byte) */ -#define VEHICLE_DSIZE_GPS_NMEA_GSV_3 0 /* GSV - Visual satellite information(Fixed-length sentence 70 Byte) */ +#define VEHICLE_DSIZE_GPS_NMEA_GSA 66 +#define VEHICLE_DSIZE_GPS_NMEA_GSV_1 70 /* GSV - Visual satellite information(Fixed-length sentence 70 Byte) */ +#define VEHICLE_DSIZE_GPS_NMEA_GSV_2 70 /* GSV - Visual satellite information(Fixed-length sentence 70 Byte) */ +#define VEHICLE_DSIZE_GPS_NMEA_GSV_3 70 /* GSV - Visual satellite information(Fixed-length sentence 70 Byte) */ /* _CWORD44_,GP,3 - Visual satellite reception information */ -#define VEHICLE_DSIZE_GPS_NMEA_PJRDC_GP_3 0 +#define VEHICLE_DSIZE_GPS_NMEA_PJRDC_GP_3 78 /* _CWORD44_,GP,4 - Receiver-specific information */ -#define VEHICLE_DSIZE_GPS_NMEA_PJRDC_GP_4 0 +#define VEHICLE_DSIZE_GPS_NMEA_PJRDC_GP_4 25 /* FULLBINARY data size */ /* Fully customized output */ -#define VEHICLE_DSIZE_GPS_FULLBINARY 0 +#define VEHICLE_DSIZE_GPS_FULLBINARY GPS_CMD_FULLBIN_SZ #if CONFIG_HW_PORTSET_TYPE_C #define VEHICLE_DSIZE_NMEA 0 @@ -611,11 +623,26 @@ typedef struct { u_int8 uc_reserve[3]; /* reserve */ } VEHICLESENS_PKG_DELIVERY_TEMP_TBL; +// for VEHICLESENS_PKG_DELIVERY_TEMP_EXT.start_point index +enum VEHICLESENS_PKG_INDEX { + SNSCounter = 0, + SpeedPulse, + GyroExt, + GsnsX, + GsnsY, + Rev, + GyroTemp, + PulseTime, + GyroY, + GyroZ, + GsnsZ, + MAX +}; typedef struct { - u_int16 start_point[8]; /* Sequence reference start position */ - u_int16 end_point; /* Array registration completion position */ - u_int16 data_break; /* All data undelivered flag */ + uint16_t start_point[8]; /* Sequence reference start position */ + uint16_t end_point; /* Array registration completion position */ + uint16_t data_break; /* All data undelivered flag */ } VEHICLESENS_PKG_DELIVERY_TEMP_EXT; /************************************************************************ @@ -628,31 +655,31 @@ extern VEHICLESENS_PKG_DELIVERY_TEMP_EXT gstPkgTempExt; // NOLINT(readability * Function prototype * ************************************************************************/ void VehicleSensInitDataMaster(void); -//void VehicleSensSetDataMasterLineSens(const LSDRV_LSDATA *, PFUNC_DMASTER_SET_N func, BOOL); -//void VehicleSensSetDataMasterLineSensG(const LSDRV_LSDATA_G *, PFUNC_DMASTER_SET_N func, BOOL); -//void VehicleSensSetDataMasterGps(SENSOR_MSG_GPSDATA_DAT *, PFUNC_DMASTER_SET_N func); +void VehicleSensSetDataMasterLineSens(const LSDRV_LSDATA *, PFUNC_DMASTER_SET_N func, BOOL); +void VehicleSensSetDataMasterLineSensG(const LSDRV_LSDATA_G *, PFUNC_DMASTER_SET_N func, BOOL); +void VehicleSensSetDataMasterGps(SENSOR_MSG_GPSDATA_DAT *, PFUNC_DMASTER_SET_N func); void VehicleSensGetDataMaster(DID ul_did, u_int8, VEHICLESENS_DATA_MASTER *); -//void VehicleSensGetGpsDataMaster(DID ul_did, u_int8, SENSOR_MSG_GPSDATA_DAT *); -//void VehicleSensSetDataMasterData(const POS_MSGINFO *, PFUNC_DMASTER_SET_N func); +void VehicleSensGetGpsDataMaster(DID ul_did, u_int8, SENSOR_MSG_GPSDATA_DAT *); +void VehicleSensSetDataMasterData(const POS_MSGINFO *, PFUNC_DMASTER_SET_N func); #if CONFIG_SENSOR_EXT_VALID /* Initial Sensor Support */ -//void VehicleSensSetDataMasterLineSensFst(const LSDRV_LSDATA_FST *pst_data, PFUNC_DMASTER_SET_N p_data_master_set_n); -//void VehicleSensSetDataMasterLineSensFstG(const LSDRV_MSG_LSDATA_DAT_FST *pst_data, -// PFUNC_DMASTER_SET_N p_data_master_set_n); +void VehicleSensSetDataMasterLineSensFst(const LSDRV_LSDATA_FST *pst_data, PFUNC_DMASTER_SET_N p_data_master_set_n); +void VehicleSensSetDataMasterLineSensFstG(const LSDRV_MSG_LSDATA_DAT_FST *pst_data, + PFUNC_DMASTER_SET_N p_data_master_set_n); void VehicleSensGetDataMasterFst(DID ul_did, u_int8, VEHICLESENS_DATA_MASTER_FST *); void VehicleSensGetDataMasterExt(DID ul_did, u_int8, VEHICLESENS_DATA_MASTER_EXT *); #endif -//void VehicleSensSetDataMasterGyroTrouble(const LSDRV_MSG_LSDATA_DAT_GYRO_TROUBLE *pst_data, -// PFUNC_DMASTER_SET_N p_data_master_set_n); -//void VehicleSensSetDataMasterSysGpsInterruptSignal(const LSDRV_MSG_LSDATA_DAT_GPS_INTERRUPT_SIGNAL *pst_data, -// PFUNC_DMASTER_SET_SHARED_MEMORY p_data_master_set_shared_memory); -//void VehicleSensSetDataMasterMainGpsInterruptSignal(const SENSOR_MSG_GPSDATA_DAT *pst_data, -// PFUNC_DMASTER_SET_SHARED_MEMORY p_data_master_set_shared_memory); -//void VehicleSensSetDataMasterGyroConnectStatus(const LSDRV_MSG_LSDATA_DAT_GYRO_CONNECT_STATUS *pst_data, -// PFUNC_DMASTER_SET_SHARED_MEMORY p_data_master_set_shared_memory); -//void VehicleSensSetDataMasterGpsAntennaStatus(const LSDRV_MSG_LSDATA_DAT_GPS_ANTENNA_STATUS *pst_data, -// PFUNC_DMASTER_SET_N p_data_master_set_n); +void VehicleSensSetDataMasterGyroTrouble(const LSDRV_MSG_LSDATA_DAT_GYRO_TROUBLE *pst_data, + PFUNC_DMASTER_SET_N p_data_master_set_n); +void VehicleSensSetDataMasterSysGpsInterruptSignal(const LSDRV_MSG_LSDATA_DAT_GPS_INTERRUPT_SIGNAL *pst_data, + PFUNC_DMASTER_SET_SHARED_MEMORY p_data_master_set_shared_memory); +void VehicleSensSetDataMasterMainGpsInterruptSignal(const SENSOR_MSG_GPSDATA_DAT *pst_data, + PFUNC_DMASTER_SET_SHARED_MEMORY p_data_master_set_shared_memory); +void VehicleSensSetDataMasterGyroConnectStatus(const LSDRV_MSG_LSDATA_DAT_GYRO_CONNECT_STATUS *pst_data, + PFUNC_DMASTER_SET_SHARED_MEMORY p_data_master_set_shared_memory); +void VehicleSensSetDataMasterGpsAntennaStatus(const LSDRV_MSG_LSDATA_DAT_GPS_ANTENNA_STATUS *pst_data, + PFUNC_DMASTER_SET_N p_data_master_set_n); void VehicleSensGetDataMasterGyroTrouble(DID ul_did, u_int8 uc_get_method, VEHICLESENS_DATA_MASTER_GYRO_TROUBLE *pst_data); @@ -667,342 +694,392 @@ void VehicleSensGetDataMasterGpsAntennaStatus(DID ul_did, u_int8 uc_get_method, void VehicleSensGetGsnsX(VEHICLESENS_DATA_MASTER *, u_int8); void VehicleSensInitGsnsXl(void); -//u_int8 VehicleSensSetGsnsXl(const LSDRV_LSDATA *); +u_int8 VehicleSensSetGsnsXl(const LSDRV_LSDATA *); void VehicleSensGetGsnsXl(VEHICLESENS_DATA_MASTER *); -//u_int8 VehicleSensSetGsnsXlG(const LSDRV_LSDATA_G *); -//void VehicleSensGetGsnsXFst(VEHICLESENS_DATA_MASTER_FST *, u_int8); +u_int8 VehicleSensSetGsnsXlG(const LSDRV_LSDATA_G *); +void VehicleSensGetGsnsXFst(VEHICLESENS_DATA_MASTER_FST *, u_int8); void VehicleSensInitGsnsXFstl(void); -//u_int8 VehicleSensSetGsnsXFstG(const LSDRV_LSDATA_FST_GSENSOR_X *pst_data); -//void VehicleSensGetGsnsXFstl(VEHICLESENS_DATA_MASTER_FST *pst_data); +u_int8 VehicleSensSetGsnsXFstG(const LSDRV_LSDATA_FST_GSENSOR_X *pst_data); +void VehicleSensGetGsnsXFstl(VEHICLESENS_DATA_MASTER_FST *pst_data); void VehicleSensGetGsnsY(VEHICLESENS_DATA_MASTER *, u_int8); void VehicleSensInitGsnsYl(void); -//u_int8 VehicleSensSetGsnsYl(const LSDRV_LSDATA *); +u_int8 VehicleSensSetGsnsYl(const LSDRV_LSDATA *); void VehicleSensGetGsnsYl(VEHICLESENS_DATA_MASTER *); -//u_int8 VehicleSensSetGsnsYlG(const LSDRV_LSDATA_G *); -//void VehicleSensGetGsnsYFst(VEHICLESENS_DATA_MASTER_FST *, u_int8); +u_int8 VehicleSensSetGsnsYlG(const LSDRV_LSDATA_G *); +void VehicleSensGetGsnsYFst(VEHICLESENS_DATA_MASTER_FST *, u_int8); void VehicleSensInitGsnsYFstl(void); -//u_int8 VehicleSensSetGsnsYFstG(const LSDRV_LSDATA_FST_GSENSOR_Y *pst_data); -//void VehicleSensGetGsnsYFstl(VEHICLESENS_DATA_MASTER_FST *pst_data); - -void VehicleSensGetGyro(VEHICLESENS_DATA_MASTER *, u_int8); -void VehicleSensInitGyrol(void); -//u_int8 VehicleSensSetGyrol(const LSDRV_LSDATA *); -//u_int8 VehicleSensSetGyrolG(const LSDRV_LSDATA_G *); -void VehicleSensGetGyrol(VEHICLESENS_DATA_MASTER *); +u_int8 VehicleSensSetGsnsYFstG(const LSDRV_LSDATA_FST_GSENSOR_Y *pst_data); +void VehicleSensGetGsnsYFstl(VEHICLESENS_DATA_MASTER_FST *pst_data); + +void VehicleSensGetGsnsZ(VEHICLESENS_DATA_MASTER *, u_int8); +void VehicleSensInitGsnsZl(void); +u_int8 VehicleSensSetGsnsZl(const LSDRV_LSDATA *); +void VehicleSensGetGsnsZl(VEHICLESENS_DATA_MASTER *); +u_int8 VehicleSensSetGsnsZlG(const LSDRV_LSDATA_G *); +void VehicleSensGetGsnsZFst(VEHICLESENS_DATA_MASTER_FST *, u_int8); +void VehicleSensInitGsnsZFstl(void); +u_int8 VehicleSensSetGsnsZFstG(const LSDRV_LSDATA_FST_GSENSOR_Z *pst_data); +void VehicleSensGetGsnsZFstl(VEHICLESENS_DATA_MASTER_FST *pst_data); + +void VehicleSensGetGyroX(VEHICLESENS_DATA_MASTER *, u_int8); +void VehicleSensInitGyroXl(void); +u_int8 VehicleSensSetGyroXl(const LSDRV_LSDATA *); +u_int8 VehicleSensSetGyroXlG(const LSDRV_LSDATA_G *); +void VehicleSensGetGyroXl(VEHICLESENS_DATA_MASTER *); + +void VehicleSensGetGyroY(VEHICLESENS_DATA_MASTER *, u_int8); +void VehicleSensInitGyroYl(void); +u_int8 VehicleSensSetGyroYl(const LSDRV_LSDATA *); +u_int8 VehicleSensSetGyroYlG(const LSDRV_LSDATA_G *); +void VehicleSensGetGyroYl(VEHICLESENS_DATA_MASTER *); + +void VehicleSensGetGyroZ(VEHICLESENS_DATA_MASTER *, u_int8); +void VehicleSensInitGyroZl(void); +u_int8 VehicleSensSetGyroZl(const LSDRV_LSDATA *); +u_int8 VehicleSensSetGyroZlG(const LSDRV_LSDATA_G *); +void VehicleSensGetGyroZl(VEHICLESENS_DATA_MASTER *); #if CONFIG_SENSOR_EXT_VALID /* Initial Sensor Support */ void VehicleSensGetSpeedPulseFst(VEHICLESENS_DATA_MASTER_FST *, u_int8); void VehicleSensInitSpeedPulseFstl(void); -//u_int8 VehicleSensSetSpeedPulseFstl(const LSDRV_LSDATA_FST *); -//u_int8 VehicleSensSetSpeedPulseFstG(const LSDRV_LSDATA_FST_SPEED *); +u_int8 VehicleSensSetSpeedPulseFstl(const LSDRV_LSDATA_FST *); +u_int8 VehicleSensSetSpeedPulseFstG(const LSDRV_LSDATA_FST_SPEED *); void VehicleSensGetSpeedPulseFstl(VEHICLESENS_DATA_MASTER_FST *); -void VehicleSensGetGyroFst(VEHICLESENS_DATA_MASTER_FST *, u_int8); -void VehicleSensInitGyroFstl(void); -//u_int8 VehicleSensSetGyroFstl(const LSDRV_LSDATA_FST *); -//u_int8 VehicleSensSetGyroFstG(const LSDRV_LSDATA_FST_GYRO *); -void VehicleSensGetGyroFstl(VEHICLESENS_DATA_MASTER_FST *); +void VehicleSensGetGyroXFst(VEHICLESENS_DATA_MASTER_FST *, u_int8); +void VehicleSensInitGyroXFstl(void); +u_int8 VehicleSensSetGyroXFstl(const LSDRV_LSDATA_FST *); +u_int8 VehicleSensSetGyroXFstG(const LSDRV_LSDATA_FST_GYRO_X *); +void VehicleSensGetGyroXFstl(VEHICLESENS_DATA_MASTER_FST *); + +void VehicleSensGetGyroYFst(VEHICLESENS_DATA_MASTER_FST *, u_int8); +void VehicleSensInitGyroYFstl(void); +u_int8 VehicleSensSetGyroYFstl(const LSDRV_LSDATA_FST *); +u_int8 VehicleSensSetGyroYFstG(const LSDRV_LSDATA_FST_GYRO_Y *); +void VehicleSensGetGyroYFstl(VEHICLESENS_DATA_MASTER_FST *); + +void VehicleSensGetGyroYExt(VEHICLESENS_DATA_MASTER_EXT *, u_int8); +void VehicleSensInitGyroYExtl(void); +void VehicleSensSetGyroYExtlG(const LSDRV_LSDATA_G *); +void VehicleSensGetGyroYExtl(VEHICLESENS_DATA_MASTER_EXT *); + +void VehicleSensGetGyroZFst(VEHICLESENS_DATA_MASTER_FST *, u_int8); +void VehicleSensInitGyroZFstl(void); +u_int8 VehicleSensSetGyroZFstl(const LSDRV_LSDATA_FST *); +u_int8 VehicleSensSetGyroZFstG(const LSDRV_LSDATA_FST_GYRO_Z *); +void VehicleSensGetGyroZFstl(VEHICLESENS_DATA_MASTER_FST *); + +void VehicleSensGetGyroZExt(VEHICLESENS_DATA_MASTER_EXT *, u_int8); +void VehicleSensInitGyroZExtl(void); +void VehicleSensSetGyroZExtlG(const LSDRV_LSDATA_G *); +void VehicleSensGetGyroZExtl(VEHICLESENS_DATA_MASTER_EXT *); void VehicleSensGetSpeedPulseFlagFst(VEHICLESENS_DATA_MASTER_FST *, u_int8); void VehicleSensInitSpeedPulseFlagFstl(void); -//u_int8 VehicleSensSetSpeedPulseFlagFstl(const LSDRV_LSDATA_FST *); -//u_int8 VehicleSensSetSpeedPulseFlagFstG(const LSDRV_LSDATA_FST_SPEED_PULSE_FLAG *); +u_int8 VehicleSensSetSpeedPulseFlagFstl(const LSDRV_LSDATA_FST *); +u_int8 VehicleSensSetSpeedPulseFlagFstG(const LSDRV_LSDATA_FST_SPEED_PULSE_FLAG *); void VehicleSensGetSpeedPulseFlagFstl(VEHICLESENS_DATA_MASTER_FST *); void VehicleSensGetRevFst(VEHICLESENS_DATA_MASTER_FST *, u_int8); void VehicleSensInitRevFstl(void); -//u_int8 VehicleSensSetRevFstl(const LSDRV_LSDATA_FST *); -//u_int8 VehicleSensSetRevFstG(const LSDRV_LSDATA_FST_REV *); +u_int8 VehicleSensSetRevFstl(const LSDRV_LSDATA_FST *); +u_int8 VehicleSensSetRevFstG(const LSDRV_LSDATA_FST_REV *); void VehicleSensGetRevFstl(VEHICLESENS_DATA_MASTER_FST *); void VehicleSensGetGsnsXExt(VEHICLESENS_DATA_MASTER_EXT *, u_int8); void VehicleSensInitGsnsXExtl(void); -//void VehicleSensSetGsnsXExtl(const LSDRV_LSDATA *); -//void VehicleSensSetGsnsXExtlG(const LSDRV_LSDATA_G *); +void VehicleSensSetGsnsXExtl(const LSDRV_LSDATA *); +void VehicleSensSetGsnsXExtlG(const LSDRV_LSDATA_G *); void VehicleSensGetGsnsXExtl(VEHICLESENS_DATA_MASTER_EXT *); void VehicleSensGetGsnsYExt(VEHICLESENS_DATA_MASTER_EXT *, u_int8); void VehicleSensInitGsnsYExtl(void); -//void VehicleSensSetGsnsYExtl(const LSDRV_LSDATA *); -//void VehicleSensSetGsnsYExtlG(const LSDRV_LSDATA_G *); +void VehicleSensSetGsnsYExtl(const LSDRV_LSDATA *); +void VehicleSensSetGsnsYExtlG(const LSDRV_LSDATA_G *); void VehicleSensGetGsnsYExtl(VEHICLESENS_DATA_MASTER_EXT *); +void VehicleSensGetGsnsZExt(VEHICLESENS_DATA_MASTER_EXT *, u_int8); +void VehicleSensInitGsnsZExtl(void); +void VehicleSensSetGsnsZExtl(const LSDRV_LSDATA *); +void VehicleSensSetGsnsZExtlG(const LSDRV_LSDATA_G *); +void VehicleSensGetGsnsZExtl(VEHICLESENS_DATA_MASTER_EXT *); + void VehicleSensGetGyroExt(VEHICLESENS_DATA_MASTER_EXT *, u_int8); void VehicleSensInitGyroExtl(void); -//void VehicleSensSetGyroExtl(const LSDRV_LSDATA *); -//void VehicleSensSetGyroExtlG(const LSDRV_LSDATA_G *); +void VehicleSensSetGyroExtl(const LSDRV_LSDATA *); +void VehicleSensSetGyroExtlG(const LSDRV_LSDATA_G *); void VehicleSensGetGyroExtl(VEHICLESENS_DATA_MASTER_EXT *); void VehicleSensGetGyroRev(VEHICLESENS_DATA_MASTER *, u_int8); void VehicleSensInitGyroRevl(void); -//u_int8 VehicleSensSetGyroRevl(const LSDRV_LSDATA *); -//u_int8 VehicleSensSetGyroRevlG(const LSDRV_LSDATA_G *); +u_int8 VehicleSensSetGyroRevl(const LSDRV_LSDATA *); +u_int8 VehicleSensSetGyroRevlG(const LSDRV_LSDATA_G *); void VehicleSensGetGyroRevl(VEHICLESENS_DATA_MASTER *); void VehicleSensGetSpeedPulseExt(VEHICLESENS_DATA_MASTER_EXT *, u_int8); void VehicleSensInitSpeedPulseExtl(void); -//void VehicleSensSetSpeedPulseExtl(const LSDRV_LSDATA *); -//void VehicleSensSetSpeedPulseExtlG(const LSDRV_LSDATA_G *); +void VehicleSensSetSpeedPulseExtl(const LSDRV_LSDATA *); +void VehicleSensSetSpeedPulseExtlG(const LSDRV_LSDATA_G *); void VehicleSensGetSpeedPulseExtl(VEHICLESENS_DATA_MASTER_EXT *); void VehicleSensGetSnsCounterExt(VEHICLESENS_DATA_MASTER_EXT *, u_int8); void VehicleSensInitSnsCounterExtl(void); -//void VehicleSensSetSnsCounterExtl(const LSDRV_LSDATA *); -//void VehicleSensSetSnsCounterExtlG(const LSDRV_LSDATA_G *); +void VehicleSensSetSnsCounterExtl(const LSDRV_LSDATA *); +void VehicleSensSetSnsCounterExtlG(const LSDRV_LSDATA_G *); void VehicleSensGetSnsCounterExtl(VEHICLESENS_DATA_MASTER_EXT *); void VehicleSensGetRevExt(VEHICLESENS_DATA_MASTER_EXT *pst_data, u_int8 uc_get_method); void VehicleSensGetRevExtl(VEHICLESENS_DATA_MASTER_EXT *pst_data); void VehicleSensInitRevExtl(void); -//void VehicleSensSetRevExtlG(const LSDRV_LSDATA_G *pst_data); +void VehicleSensSetRevExtlG(const LSDRV_LSDATA_G *pst_data); #endif void VehicleSensGetSpeedKmph(VEHICLESENS_DATA_MASTER *, u_int8); void VehicleSensInitSpeedKmphl(void); -//u_int8 VehicleSensSetSpeedKmphl(const LSDRV_LSDATA *); -//u_int8 VehicleSensSetSpeedKmphlG(const LSDRV_LSDATA_G *); +u_int8 VehicleSensSetSpeedKmphl(const LSDRV_LSDATA *); +u_int8 VehicleSensSetSpeedKmphlG(const LSDRV_LSDATA_G *); void VehicleSensGetSpeedKmphl(VEHICLESENS_DATA_MASTER *); void VehicleSensGetGyroTemp(VEHICLESENS_DATA_MASTER *pst_data, u_int8 uc_get_method); void VehicleSensInitGyroTempl(void); -//u_int8 VehicleSensSetGyroTemplG(const LSDRV_LSDATA_G *pst_data); +u_int8 VehicleSensSetGyroTemplG(const LSDRV_LSDATA_G *pst_data); void VehicleSensGetGyroTempl(VEHICLESENS_DATA_MASTER *pst_data); -//void VehicleSensGetGyroTempFst(VEHICLESENS_DATA_MASTER_FST *pst_data, u_int8 uc_get_method); +void VehicleSensGetGyroTempFst(VEHICLESENS_DATA_MASTER_FST *pst_data, u_int8 uc_get_method); void VehicleSensInitGyroTempFstl(void); -//u_int8 VehicleSensSetGyroTempFstG(const LSDRV_LSDATA_FST_GYRO_TEMP *pst_data); -//void VehicleSensGetGyroTempFstl(VEHICLESENS_DATA_MASTER_FST *pst_data); +u_int8 VehicleSensSetGyroTempFstG(const LSDRV_LSDATA_FST_GYRO_TEMP *pst_data); +void VehicleSensGetGyroTempFstl(VEHICLESENS_DATA_MASTER_FST *pst_data); -//void VehicleSensGetGyroTempExt(VEHICLESENS_DATA_MASTER_EXT *pst_data, u_int8 uc_get_method); +void VehicleSensGetGyroTempExt(VEHICLESENS_DATA_MASTER_EXT *pst_data, u_int8 uc_get_method); void VehicleSensInitGyroTempExtl(void); -//void VehicleSensSetGyroTempExtlG(const LSDRV_LSDATA_G *pst_data); -//void VehicleSensGetGyroTempExtl(VEHICLESENS_DATA_MASTER_EXT *pst_data); +void VehicleSensSetGyroTempExtlG(const LSDRV_LSDATA_G *pst_data); +void VehicleSensGetGyroTempExtl(VEHICLESENS_DATA_MASTER_EXT *pst_data); void VehicleSensGetPulseTime(VEHICLESENS_DATA_MASTER *pst_data, u_int8 uc_get_method); void VehicleSensInitPulseTimel(void); -//u_int8 VehicleSensSetPulseTimelG(const LSDRV_LSDATA_G *pst_data); +u_int8 VehicleSensSetPulseTimelG(const LSDRV_LSDATA_G *pst_data); void VehicleSensGetPulseTimel(VEHICLESENS_DATA_MASTER *pst_data); -//void VehicleSensGetPulseTimeExt(VEHICLESENS_DATA_MASTER_EXT *pst_data, u_int8 uc_get_method); +void VehicleSensGetPulseTimeExt(VEHICLESENS_DATA_MASTER_EXT *pst_data, u_int8 uc_get_method); void VehicleSensInitPulseTimeExtl(void); -//void VehicleSensSetPulseTimeExtlG(const LSDRV_LSDATA_G *pst_data); -//void VehicleSensGetPulseTimeExtl(VEHICLESENS_DATA_MASTER_EXT *pst_data); +void VehicleSensSetPulseTimeExtlG(const LSDRV_LSDATA_G *pst_data); +void VehicleSensGetPulseTimeExtl(VEHICLESENS_DATA_MASTER_EXT *pst_data); void VehicleSensGetRev(VEHICLESENS_DATA_MASTER *, u_int8); void VehicleSensInitRevl(void); -//u_int8 VehicleSensSetRevl(const LSDRV_LSDATA *); +u_int8 VehicleSensSetRevl(const LSDRV_LSDATA *); void VehicleSensGetRevl(VEHICLESENS_DATA_MASTER *); -//u_int8 VehicleSensSetRevlG(const LSDRV_LSDATA_G *pst_data); +u_int8 VehicleSensSetRevlG(const LSDRV_LSDATA_G *pst_data); void VehicleSensGetRevline(VEHICLESENS_DATA_MASTER *); void VehicleSensGetSpeedPulse(VEHICLESENS_DATA_MASTER *, u_int8); void VehicleSensInitSpeedPulsel(void); -//u_int8 VehicleSensSetSpeedPulsel(const LSDRV_LSDATA *); -//u_int8 VehicleSensSetSpeedPulselG(const LSDRV_LSDATA_G *); +u_int8 VehicleSensSetSpeedPulsel(const LSDRV_LSDATA *); +u_int8 VehicleSensSetSpeedPulselG(const LSDRV_LSDATA_G *); void VehicleSensGetSpeedPulsel(VEHICLESENS_DATA_MASTER *); void VehicleSensGetGpsAntenna(VEHICLESENS_DATA_MASTER *, u_int8); void VehicleSensInitGpsAntennal(void); -//u_int8 VehicleSensSetGpsAntennal(const LSDRV_LSDATA *); +u_int8 VehicleSensSetGpsAntennal(const LSDRV_LSDATA *); void VehicleSensGetGpsAntennal(VEHICLESENS_DATA_MASTER *); void VehicleSensGetSnsCounter(VEHICLESENS_DATA_MASTER *, u_int8); void VehicleSensInitSnsCounterl(void); -//u_int8 VehicleSensSetSnsCounterl(const LSDRV_LSDATA *); -//u_int8 VehicleSensSetSnsCounterlG(const LSDRV_LSDATA_G *); +u_int8 VehicleSensSetSnsCounterl(const LSDRV_LSDATA *); +u_int8 VehicleSensSetSnsCounterlG(const LSDRV_LSDATA_G *); void VehicleSensGetSnsCounterl(VEHICLESENS_DATA_MASTER *); void VehicleSensInitGpsCounterg(void); -//u_int8 VehicleSensSetGpsCounterg(const SENSOR_MSG_GPSDATA_DAT *); -//void VehicleSensGetGpsCounterg(SENSOR_MSG_GPSDATA_DAT *); +u_int8 VehicleSensSetGpsCounterg(const SENSOR_MSG_GPSDATA_DAT *); +void VehicleSensGetGpsCounterg(SENSOR_MSG_GPSDATA_DAT *); /* ++ PastModel002 support */ /* U-BLOX_GPS MON-HW */ void VehicleSensInitMonHwG(void); -//u_int8 VehicleSensSetMonHwG(const SENSOR_MSG_GPSDATA_DAT *pst_data); -//void VehicleSensGetMonHwG(SENSOR_MSG_GPSDATA_DAT *pst_data); +u_int8 VehicleSensSetMonHwG(const SENSOR_MSG_GPSDATA_DAT *pst_data); +void VehicleSensGetMonHwG(SENSOR_MSG_GPSDATA_DAT *pst_data); /* U-BLOX_GPS NAV-CLOCK */ void VehicleSensInitNavClockG(void); -//u_int8 VehicleSensSetNavClockG(const SENSOR_MSG_GPSDATA_DAT *pst_data); -//void VehicleSensGetNavClockG(SENSOR_MSG_GPSDATA_DAT *pst_data); +u_int8 VehicleSensSetNavClockG(const SENSOR_MSG_GPSDATA_DAT *pst_data); +void VehicleSensGetNavClockG(SENSOR_MSG_GPSDATA_DAT *pst_data); /* U-BLOX_GPS NAV-DOP */ void VehicleSensInitNavDopG(void); -//u_int8 VehicleSensSetNavDopG(const SENSOR_MSG_GPSDATA_DAT *pst_data); -//void VehicleSensGetNavDopG(SENSOR_MSG_GPSDATA_DAT *pst_data); +u_int8 VehicleSensSetNavDopG(const SENSOR_MSG_GPSDATA_DAT *pst_data); +void VehicleSensGetNavDopG(SENSOR_MSG_GPSDATA_DAT *pst_data); /* U-BLOX_GPS NAV-POSLLH */ void VehicleSensInitNavPosllhG(void); -//u_int8 VehicleSensSetNavPosllhG(const SENSOR_MSG_GPSDATA_DAT *pst_data); -//void VehicleSensGetNavPosllhG(SENSOR_MSG_GPSDATA_DAT *pst_data); +u_int8 VehicleSensSetNavPosllhG(const SENSOR_MSG_GPSDATA_DAT *pst_data); +void VehicleSensGetNavPosllhG(SENSOR_MSG_GPSDATA_DAT *pst_data); /* U-BLOX_GPS NAV-STATUS */ void VehicleSensInitNavStatusG(void); -//u_int8 VehicleSensSetNavStatusG(const SENSOR_MSG_GPSDATA_DAT *pst_data); -//void VehicleSensGetNavStatusG(SENSOR_MSG_GPSDATA_DAT *pst_data); +u_int8 VehicleSensSetNavStatusG(const SENSOR_MSG_GPSDATA_DAT *pst_data); +void VehicleSensGetNavStatusG(SENSOR_MSG_GPSDATA_DAT *pst_data); /* U-BLOX_GPS NAV-SVINFO */ void VehicleSensInitNavSvInfoG(void); -//u_int8 VehicleSensSetNavSvInfoG(const SENSOR_MSG_GPSDATA_DAT *pst_data); -//void VehicleSensGetNavSvInfoG(SENSOR_MSG_GPSDATA_DAT *pst_data); +u_int8 VehicleSensSetNavSvInfoG(const SENSOR_MSG_GPSDATA_DAT *pst_data); +void VehicleSensGetNavSvInfoG(SENSOR_MSG_GPSDATA_DAT *pst_data); /* U-BLOX_GPS NAV-TIMEGPS */ void VehicleSensInitNavTimeGpsG(void); -//u_int8 VehicleSensSetNavTimeGpsG(const SENSOR_MSG_GPSDATA_DAT *pst_data); -//void VehicleSensGetNavTimeGpsG(SENSOR_MSG_GPSDATA_DAT *pst_data); +u_int8 VehicleSensSetNavTimeGpsG(const SENSOR_MSG_GPSDATA_DAT *pst_data); +void VehicleSensGetNavTimeGpsG(SENSOR_MSG_GPSDATA_DAT *pst_data); /* U-BLOX_GPS NAV-TIMEUTC */ void VehicleSensInitNavTimeUtcG(void); -//u_int8 VehicleSensSetNavTimeUtcG(const SENSOR_MSG_GPSDATA_DAT *pst_data); -//void VehicleSensGetNavTimeUtcG(SENSOR_MSG_GPSDATA_DAT *pst_data); +u_int8 VehicleSensSetNavTimeUtcG(const SENSOR_MSG_GPSDATA_DAT *pst_data); +void VehicleSensGetNavTimeUtcG(SENSOR_MSG_GPSDATA_DAT *pst_data); /* U-BLOX_GPS NAV-VELNED */ void VehicleSensInitNavVelnedG(void); -//u_int8 VehicleSensSetNavVelnedG(const SENSOR_MSG_GPSDATA_DAT *pst_data); -//void VehicleSensGetNavVelnedG(SENSOR_MSG_GPSDATA_DAT *pst_data); +u_int8 VehicleSensSetNavVelnedG(const SENSOR_MSG_GPSDATA_DAT *pst_data); +void VehicleSensGetNavVelnedG(SENSOR_MSG_GPSDATA_DAT *pst_data); /* DR SPEED_PULSE_FLAG */ void VehicleSensInitSpeedPulseFlag(void); -//u_int8 VehicleSensSetSpeedPulseFlag(const LSDRV_LSDATA_G *pst_data); +u_int8 VehicleSensSetSpeedPulseFlag(const LSDRV_LSDATA_G *pst_data); void VehicleSensGetSpeedPulseFlag(VEHICLESENS_DATA_MASTER *); /* DR GPS_INTERRUPT_FLAG */ void VehicleSensInitGpsInterruptFlag(void); -//u_int8 VehicleSensSetGpsInterruptFlag(const LSDRV_LSDATA_G *pst_data); +u_int8 VehicleSensSetGpsInterruptFlag(const LSDRV_LSDATA_G *pst_data); void VehicleSensGetGpsInterruptFlag(VEHICLESENS_DATA_MASTER *); /* GYRO_TROUBLE */ void VehicleSensInitGyroTrouble(void); -//u_int8 VehicleSensSetGyroTrouble(const LSDRV_MSG_LSDATA_DAT_GYRO_TROUBLE *pst_data); +u_int8 VehicleSensSetGyroTrouble(const LSDRV_MSG_LSDATA_DAT_GYRO_TROUBLE *pst_data); void VehicleSensGetGyroTrouble(VEHICLESENS_DATA_MASTER_GYRO_TROUBLE *pst_data); /* MAIN_GPS_INTERRUPT_SIGNAL */ void VehicleSensInitMainGpsInterruptSignal(void); -//u_int8 VehicleSensSetMainGpsInterruptSignal(const SENSOR_MSG_GPSDATA_DAT *pst_data); +u_int8 VehicleSensSetMainGpsInterruptSignal(const SENSOR_MSG_GPSDATA_DAT *pst_data); void VehicleSensGetMainGpsInterruptSignal(VEHICLESENS_DATA_MASTER_GPS_INTERRUPT_SIGNAL *pst_data); /* SYS_GPS_INTERRUPT_SIGNAL */ void VehicleSensInitSysGpsInterruptSignal(void); -//u_int8 VehicleSensSetSysGpsInterruptSignal(const LSDRV_MSG_LSDATA_DAT_GPS_INTERRUPT_SIGNAL *pst_data); +u_int8 VehicleSensSetSysGpsInterruptSignal(const LSDRV_MSG_LSDATA_DAT_GPS_INTERRUPT_SIGNAL *pst_data); void VehicleSensGetSysGpsInterruptSignal(VEHICLESENS_DATA_MASTER_GPS_INTERRUPT_SIGNAL *pst_data); /* GYRO_CONNECT_STATUS */ void VehicleSensInitGyroConnectStatus(void); -//u_int8 VehicleSensSetGyroConnectStatus(const LSDRV_MSG_LSDATA_DAT_GYRO_CONNECT_STATUS *pst_data); +u_int8 VehicleSensSetGyroConnectStatus(const LSDRV_MSG_LSDATA_DAT_GYRO_CONNECT_STATUS *pst_data); void VehicleSensGetGyroConnectStatus(VEHICLESENS_DATA_MASTER_GYRO_CONNECT_STATUS *pst_data); /* GPS_ANTENNA_STATUS */ void VehicleSensInitGpsAntennaStatus(void); -//u_int8 VehicleSensSetGpsAntennaStatus(const LSDRV_MSG_LSDATA_DAT_GPS_ANTENNA_STATUS *pst_data); +u_int8 VehicleSensSetGpsAntennaStatus(const LSDRV_MSG_LSDATA_DAT_GPS_ANTENNA_STATUS *pst_data); void VehicleSensGetGpsAntennaStatus(VEHICLESENS_DATA_MASTER_GPS_ANTENNA_STATUS *pst_data); /* -- PastModel002 support */ /* GPS__CWORD82__FULLBINARY */ void VehicleSensInitGps_CWORD82_FullBinaryG(void); -//u_int8 VehicleSensSetGps_CWORD82_FullBinaryG(const SENSOR_MSG_GPSDATA_DAT *pst_data); -//void VehicleSensGetGps_CWORD82_FullBinaryG(SENSOR_MSG_GPSDATA_DAT *pst_data); +u_int8 VehicleSensSetGps_CWORD82_FullBinaryG(const SENSOR_MSG_GPSDATA_DAT *pst_data); +void VehicleSensGetGps_CWORD82_FullBinaryG(SENSOR_MSG_GPSDATA_DAT *pst_data); /* GPS__CWORD82__FULLBINARY */ void VehicleSensInitGps_CWORD82__CWORD44_Gp4G(void); -//u_int8 VehicleSensSetGps_CWORD82__CWORD44_Gp4G(const SENSOR_MSG_GPSDATA_DAT *pst_data); -//void VehicleSensGetGps_CWORD82__CWORD44_Gp4G(SENSOR_MSG_GPSDATA_DAT *pst_data); +u_int8 VehicleSensSetGps_CWORD82__CWORD44_Gp4G(const SENSOR_MSG_GPSDATA_DAT *pst_data); +void VehicleSensGetGps_CWORD82__CWORD44_Gp4G(SENSOR_MSG_GPSDATA_DAT *pst_data); /* GPS__CWORD82__NMEA */ void VehicleSensInitGps_CWORD82_NmeaG(void); -//u_int8 VehicleSensSetGps_CWORD82_NmeaG(const SENSOR_MSG_GPSDATA_DAT *pst_data); -//void VehicleSensGetGps_CWORD82_NmeaG(SENSOR_MSG_GPSDATA_DAT *pst_data); +u_int8 VehicleSensSetGps_CWORD82_NmeaG(const SENSOR_MSG_GPSDATA_DAT *pst_data); +void VehicleSensGetGps_CWORD82_NmeaG(SENSOR_MSG_GPSDATA_DAT *pst_data); /* GPS_NMEA */ void VehicleSensInitGpsNmeaG(void); -//u_int8 VehicleSensSetGpsNmeaG(const SENSOR_MSG_GPSDATA_DAT *pst_data); -//void VehicleSensGetGpsNmeaG(SENSOR_MSG_GPSDATA_DAT *pst_data); +u_int8 VehicleSensSetGpsNmeaG(const SENSOR_MSG_GPSDATA_DAT *pst_data); +void VehicleSensGetGpsNmeaG(SENSOR_MSG_GPSDATA_DAT *pst_data); /* LOCATION_LONLAT */ void VehicleSensGetLocationLonLat(VEHICLESENS_DATA_MASTER *pst_data, u_int8); void VehicleSensInitLocationLonLatG(void); -//u_int8 VehicleSensSetLocationLonLatG(const SENSORLOCATION_LONLATINFO_DAT*); +u_int8 VehicleSensSetLocationLonLatG(const SENSORLOCATION_LONLATINFO_DAT*); void VehicleSensGetLocationLonLatG(VEHICLESENS_DATA_MASTER*); void VehicleSensInitLocationLonLatN(void); -//u_int8 VehicleSensSetLocationLonLatN(const SENSORLOCATION_LONLATINFO_DAT*); +u_int8 VehicleSensSetLocationLonLatN(const SENSORLOCATION_LONLATINFO_DAT*); void VehicleSensGetLocationLonLatN(VEHICLESENS_DATA_MASTER*); void VehicleSensGetLocationLonLatnUnitCnv(VEHICLESENS_DATA_MASTER*); /* LOCATION_ALTITUDE */ void VehicleSensGetLocationAltitude(VEHICLESENS_DATA_MASTER *pst_data, u_int8); void VehicleSensInitLocationAltitudeG(void); -//u_int8 VehicleSensSetLocationAltitudeG(const SENSORLOCATION_ALTITUDEINFO_DAT*); +u_int8 VehicleSensSetLocationAltitudeG(const SENSORLOCATION_ALTITUDEINFO_DAT*); void VehicleSensGetLocationAltitudeG(VEHICLESENS_DATA_MASTER*); void VehicleSensInitLocationAltitudeN(void); -//u_int8 VehicleSensSetLocationAltitudeN(const SENSORLOCATION_ALTITUDEINFO_DAT*); +u_int8 VehicleSensSetLocationAltitudeN(const SENSORLOCATION_ALTITUDEINFO_DAT*); void VehicleSensGetLocationAltitudeN(VEHICLESENS_DATA_MASTER*); /* MOTION_SPEED */ void VehicleSensGetMotionSpeed(VEHICLESENS_DATA_MASTER *pst_data, u_int8); void VehicleSensInitMotionSpeedG(void); -//u_int8 VehicleSensSetMotionSpeedG(const SENSORMOTION_SPEEDINFO_DAT*); +u_int8 VehicleSensSetMotionSpeedG(const SENSORMOTION_SPEEDINFO_DAT*); void VehicleSensGetMotionSpeedG(VEHICLESENS_DATA_MASTER*); void VehicleSensInitMotionSpeedN(void); -//u_int8 VehicleSensSetMotionSpeedN(const SENSORMOTION_SPEEDINFO_DAT*); +u_int8 VehicleSensSetMotionSpeedN(const SENSORMOTION_SPEEDINFO_DAT*); void VehicleSensGetMotionSpeedN(VEHICLESENS_DATA_MASTER*); void VehicleSensInitMotionSpeedI(void); -//u_int8 VehicleSensSetMotionSpeedI(const SENSORMOTION_SPEEDINFO_DAT*); +u_int8 VehicleSensSetMotionSpeedI(const SENSORMOTION_SPEEDINFO_DAT*); void VehicleSensGetMotionSpeedI(VEHICLESENS_DATA_MASTER*); /* MOTION_HEADING */ void VehicleSensGetMotionHeading(VEHICLESENS_DATA_MASTER *pst_data, u_int8); void VehicleSensInitMotionHeadingG(void); -//u_int8 VehicleSensSetMotionHeadingG(const SENSORMOTION_HEADINGINFO_DAT*); +u_int8 VehicleSensSetMotionHeadingG(const SENSORMOTION_HEADINGINFO_DAT*); void VehicleSensGetMotionHeadingG(VEHICLESENS_DATA_MASTER*); void VehicleSensInitMotionHeadingN(void); -//u_int8 VehicleSensSetMotionHeadingN(const SENSORMOTION_HEADINGINFO_DAT*); +u_int8 VehicleSensSetMotionHeadingN(const SENSORMOTION_HEADINGINFO_DAT*); void VehicleSensGetMotionHeadingN(VEHICLESENS_DATA_MASTER*); void VehicleSensGetMotionHeadingnCnvData(VEHICLESENS_DATA_MASTER*); /* GPS_TIME */ -//void VehicleSensGetGpsTime(SENSOR_MSG_GPSDATA_DAT*, u_int8); +void VehicleSensGetGpsTime(SENSOR_MSG_GPSDATA_DAT*, u_int8); void VehicleSensInitGpsTimeG(void); -//u_int8 VehicleSensSetGpsTimeG(const SENSOR_MSG_GPSTIME*); -//void VehicleSensGetGpsTimeG(SENSOR_MSG_GPSDATA_DAT*); +u_int8 VehicleSensSetGpsTimeG(const SENSOR_MSG_GPSTIME*); +void VehicleSensGetGpsTimeG(SENSOR_MSG_GPSDATA_DAT*); /* GPS_TIME_RAW */ -//void VehicleSensGetGpsTimeRaw(SENSOR_MSG_GPSDATA_DAT*, u_int8); +void VehicleSensGetGpsTimeRaw(SENSOR_MSG_GPSDATA_DAT*, u_int8); void VehicleSensInitGpsTimeRawG(void); -//u_int8 VehicleSensSetGpsTimeRawG(const SENSOR_GPSTIME_RAW*); -//void VehicleSensGetGpsTimeRawG(SENSOR_MSG_GPSDATA_DAT*); +u_int8 VehicleSensSetGpsTimeRawG(const SENSOR_GPSTIME_RAW*); +void VehicleSensGetGpsTimeRawG(SENSOR_MSG_GPSDATA_DAT*); /* GPS_WKNROLLOVER */ void VehicleSensGetWknRollover(VEHICLESENS_DATA_MASTER*, u_int8); void VehicleSensInitWknRolloverG(void); u_int8 VehicleSensSetWknRolloverG(const SENSOR_WKNROLLOVER*); -//void VehicleSensGetWknRolloverG(SENSOR_MSG_GPSDATA_DAT*); +void VehicleSensGetWknRolloverG(SENSOR_MSG_GPSDATA_DAT*); /* DIAG_GPS */ void VehicleSensInitNaviinfoDiagGPSg(void); -//u_int8 VehicleSensSetNaviinfoDiagGPSg(const NAVIINFO_DIAG_GPS*); -//void VehicleSensGetNaviinfoDiagGPSg(SENSOR_MSG_GPSDATA_DAT*); +u_int8 VehicleSensSetNaviinfoDiagGPSg(const NAVIINFO_DIAG_GPS*); +void VehicleSensGetNaviinfoDiagGPSg(SENSOR_MSG_GPSDATA_DAT*); /* SETTINGTIME */ void VehicleSensGetSettingTime(VEHICLESENS_DATA_MASTER *, u_int8); void VehicleSensInitSettingTimeclock(void); -//u_int8 VehicleSensSetSettingTimeclock(const POS_DATETIME*); +u_int8 VehicleSensSetSettingTimeclock(const POS_DATETIME*); void VehicleSensGetSettingTimeclock(VEHICLESENS_DATA_MASTER*); /* GPS_CLOCK_DRIFT */ -//void VehicleSensGetGpsClockDrift(SENSOR_MSG_GPSDATA_DAT *, u_int8); +void VehicleSensGetGpsClockDrift(SENSOR_MSG_GPSDATA_DAT *, u_int8); void VehicleSensInitGpsClockDriftG(void); u_int8 VehicleSensSetGpsClockDriftG(const int32_t*); -//void VehicleSensGetGpsClockDriftG(SENSOR_MSG_GPSDATA_DAT*); +void VehicleSensGetGpsClockDriftG(SENSOR_MSG_GPSDATA_DAT*); /* GPS_CLOCK_FREQ */ -//void VehicleSensGetGpsClockFreq(SENSOR_MSG_GPSDATA_DAT *, u_int8); +void VehicleSensGetGpsClockFreq(SENSOR_MSG_GPSDATA_DAT *, u_int8); void VehicleSensInitGpsClockFreqG(void); u_int8 VehicleSensSetGpsClockFreqG(const uint32_t*); -//void VehicleSensGetGpsClockFreqG(SENSOR_MSG_GPSDATA_DAT*); +void VehicleSensGetGpsClockFreqG(SENSOR_MSG_GPSDATA_DAT*); /* LOCATION INFORMATION (NMEA) */ void VehicleSens_GetLocationInfoNmea(VEHICLESENS_DATA_MASTER_GPS_FORMAT *, u_int8 ); diff --git a/positioning/server/include/Sensor/VehicleSens_DeliveryCtrl.h b/positioning/server/include/Sensor/VehicleSens_DeliveryCtrl.h index b46c7451..3fb7056b 100644 --- a/positioning/server/include/Sensor/VehicleSens_DeliveryCtrl.h +++ b/positioning/server/include/Sensor/VehicleSens_DeliveryCtrl.h @@ -1,5 +1,5 @@ /* - * @copyright Copyright (c) 2016-2019 TOYOTA MOTOR CORPORATION. + * @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. @@ -214,9 +214,9 @@ u_int8 VehicleSensDeliveryOther(DID ul_did, u_int8 uc_current_get_method, int32 VEHICLESENS_DATA_MASTER* stmaster, const VEHICLESENS_DELIVERY_PNO_TBL *pst_pno_tbl); void VehicleSensDeliveryProc(DID ul_did, u_int8 uc_chg_type, u_int8 uc_get_method); -//u_int8 VehicleSensFirstDeliverySens(PNO us_pno, DID ul_did, u_int8 uc_get_method, -// VEHICLESENS_DATA_MASTER_FST* stmaster_fst, -// VEHICLESENS_DATA_MASTER_FST* stmaster_fst_temp); +u_int8 VehicleSensFirstDeliverySens(PNO us_pno, DID ul_did, u_int8 uc_get_method, + VEHICLESENS_DATA_MASTER_FST* stmaster_fst, + VEHICLESENS_DATA_MASTER_FST* stmaster_fst_temp); u_int8 VehicleSensFirstDeliveryOther(PNO us_pno, DID ul_did, u_int8 uc_get_method, u_int32* cid, VEHICLESENS_DATA_MASTER* stmaster); diff --git a/positioning/server/include/Sensor/VehicleSens_FromAccess.h b/positioning/server/include/Sensor/VehicleSens_FromAccess.h index 3b4e890d..e58b0590 100644 --- a/positioning/server/include/Sensor/VehicleSens_FromAccess.h +++ b/positioning/server/include/Sensor/VehicleSens_FromAccess.h @@ -1,5 +1,5 @@ /* - * @copyright Copyright (c) 2016-2019 TOYOTA MOTOR CORPORATION. + * @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. diff --git a/positioning/server/include/Sensor/VehicleSens_FromMng.h b/positioning/server/include/Sensor/VehicleSens_FromMng.h deleted file mode 100644 index a4357779..00000000 --- a/positioning/server/include/Sensor/VehicleSens_FromMng.h +++ /dev/null @@ -1,85 +0,0 @@ -/* - * @copyright Copyright (c) 2016-2019 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_SERVER_INCLUDE_SENSOR_VEHICLESENS_FROMMNG_H_ -#define POSITIONING_SERVER_INCLUDE_SENSOR_VEHICLESENS_FROMMNG_H_ -/**************************************************************************** - * File name :VehicleSens_FromMng.h - * System name :_CWORD107_ - * Subsystem name :Vehicle process - ****************************************************************************/ - -#include "Vehicle_API_Dummy.h" -#include "Vehicle_API_private.h" -//#include "positioning_hal.h" -#include "VehicleSens_DataMaster.h" -#include "VehicleSens_Common.h" -#include "VehicleSens_SelectionItemList.h" -#include "INI_API.h" -#include "VehicleIf.h" - -/************************************************************************ -* Macro definitions * -************************************************************************/ -#define VEHICLESENS_FROM_NOT_WRITE 0x00 /* Necessity of writing */ -#define VEHICLESENS_FROM_WRITE 0x01 /* No need to write */ - -#define VEHICLESENS_FROM_STATUS_NOT_DECISION 0x00 /* FROM Statuses: Undetermined */ -#define VEHICLESENS_FROM_STATUS_DECISION 0x01 /* FROM Statuses: Confirm */ - -/* Processing result */ -#define SRAM_CHK_OK (int)0 /* Successful completion of SRAM checking(No value change) */ -#define SRAM_CHK_CHG (int)1 /* Successful completion of SRAM checking(With value change. Including initialization) */ -#define SRAM_CHK_NG (int)(-1) /* SRAM checking error */ - -/************************************************************************ -* Struct definitions * -************************************************************************/ -/********************************************************************* -* TAG : VEHICLESENS_NON_VOLATILE_DATA -* ABSTRACT : Vehicle type non-volatile data -***********************************************************************/ -typedef struct { - u_int8 uc_hv; /* hv */ - u_int8 uc_hv_status; /* Hv status */ - u_int8 uc_reserve[14]; /* Reserved */ -} VEHICLESENS_NON_VOLATILE_DATA; - -/********************************************************************* -* TAG : VEHICLESENS_FROM_INFO -* ABSTRACT : Structures for acquiring vehicle sensor FROM -***********************************************************************/ -typedef struct { - u_int8 uc_from_value; /* FROM values */ - u_int8 uc_from_status; /* FROM Status Values */ - u_int8 uc_reserve[2]; /* Reserved */ -} VEHICLESENS_FROM_INFO; - -/********************************************************************* -* TAG : -* ABSTRACT : -***********************************************************************/ - -/************************************************************************ -* Function prototype * -************************************************************************/ -int32 VehicleSensBackUpDataInit(int32); -int32 VehicleSensBackupInit(void); -int32 VehicleSensBackupChk(void); -void VehicleSensFromSetProc(DID ul_did); -void VehicleSensFromGetProc(DID ul_did, VEHICLESENS_FROM_INFO *p_st_from_data); - -#endif // POSITIONING_SERVER_INCLUDE_SENSOR_VEHICLESENS_FROMMNG_H_ diff --git a/positioning/server/include/Sensor/VehicleSens_SelectionItemList.h b/positioning/server/include/Sensor/VehicleSens_SelectionItemList.h index 85e5cc85..15004e83 100644 --- a/positioning/server/include/Sensor/VehicleSens_SelectionItemList.h +++ b/positioning/server/include/Sensor/VehicleSens_SelectionItemList.h @@ -1,5 +1,5 @@ /* - * @copyright Copyright (c) 2016-2019 TOYOTA MOTOR CORPORATION. + * @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. @@ -33,10 +33,10 @@ #if CONFIG_SENSOR_EXT_VALID /* Initial Sensor Support */ /* ++ Addition of DID9 related to PastModel002 supported_UBX commands */ /* ++ GPS _CWORD82_ support (To add the target DID 3) */ -#define VEHICLESENS_SELECTION_ITEM_LIST_LEN (81) /* Number of data in Vehicle Sensor Selection Item List */ +#define VEHICLESENS_SELECTION_ITEM_LIST_LEN (87) /* Number of data in Vehicle Sensor Selection Item List */ /* -- GPS _CWORD82_ support */ #else -#define VEHICLESENS_SELECTION_ITEM_LIST_LEN (50 + 10) /* Number of data in Vehicle Sensor Selection Item List */ +#define VEHICLESENS_SELECTION_ITEM_LIST_LEN (63) /* Number of data in Vehicle Sensor Selection Item List */ /* -- PastModel002 support */ #endif /* Sum of bits 29 through 31*/ diff --git a/positioning/server/include/Sensor/VehicleSens_SharedMemory.h b/positioning/server/include/Sensor/VehicleSens_SharedMemory.h index cd269676..54878ec9 100644 --- a/positioning/server/include/Sensor/VehicleSens_SharedMemory.h +++ b/positioning/server/include/Sensor/VehicleSens_SharedMemory.h @@ -1,5 +1,5 @@ /* - * @copyright Copyright (c) 2016-2019 TOYOTA MOTOR CORPORATION. + * @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. diff --git a/positioning/server/include/Sensor/VehicleSens_Thread.h b/positioning/server/include/Sensor/VehicleSens_Thread.h index 52605cfc..17a342d8 100644 --- a/positioning/server/include/Sensor/VehicleSens_Thread.h +++ b/positioning/server/include/Sensor/VehicleSens_Thread.h @@ -1,5 +1,5 @@ /* - * @copyright Copyright (c) 2016-2019 TOYOTA MOTOR CORPORATION. + * @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. @@ -27,7 +27,6 @@ #include "Vehicle_API_private.h" #include "Sensor_API_private.h" #include "VehicleSens_Common.h" -#include "VehicleSens_FromMng.h" #include "VehicleSens_SelectionItemList.h" #include "VehicleSens_DataMaster.h" #include "VehicleSens_DeliveryCtrl.h" @@ -37,8 +36,8 @@ #include "VehicleDebug_API.h" #include "VehicleSens_FromAccess.h" #include "ClockDataMng.h" -//#include "gps_hal.h" -//#include "positioning_hal.h" +#include "gps_hal.h" +#include "positioning_hal.h" #include "CommonDefine.h" /* ++ DR support */ @@ -143,27 +142,27 @@ void VehicleSensGetVehicleData(const VEHICLE_MSG_GET_VEHICLE_DATA *); void VehicleSensWatchStopPage(const VEHICLE_MSG_WATCH_STOPPAGE *); void VehicleSensPkgDeliveryEntry(const SENSOR_MSG_DELIVERY_ENTRY *); void VehicleSensGetVehiclePkgData(const SENSOR_MSG_GET_SENSOR_DATA *); -//void VehicleSensLineSensDataDelivery(const LSDRV_MSG_LSDATA *, PFUNC_DMASTER_SET_N); -//void VehicleSensLineSensDataDeliveryG(const LSDRV_MSG_LSDATA_G *, PFUNC_DMASTER_SET_N); -//void VehicleSensLineSensDataDeliveryGyroTrouble(const LSDRV_MSG_LSDATA_GYRO_TROUBLE *msg, -// PFUNC_DMASTER_SET_N p_datamaster_set_n); -//void VehicleSensLineSensDataDeliverySysGpsInterruptSignal(const LSDRV_MSG_LSDATA_GPS_INTERRUPT_SIGNAL *msg, -// PFUNC_DMASTER_SET_SHARED_MEMORY p_datamaster_set_sharedmemory); -//void VehicleSensLineSensDataDeliveryGyroConnectStatus(const LSDRV_MSG_LSDATA_GYRO_CONNECT_STATUS *msg, -// PFUNC_DMASTER_SET_SHARED_MEMORY p_datamaster_set_sharedmemory); -//void VehicleSensLineSensDataDeliveryGpsAntennaStatus(const LSDRV_MSG_LSDATA_GPS_ANTENNA_STATUS *msg, -// PFUNC_DMASTER_SET_N p_datamaster_set_n); +void VehicleSensLineSensDataDelivery(const LSDRV_MSG_LSDATA *, PFUNC_DMASTER_SET_N); +void VehicleSensLineSensDataDeliveryG(const LSDRV_MSG_LSDATA_G *, PFUNC_DMASTER_SET_N); +void VehicleSensLineSensDataDeliveryGyroTrouble(const LSDRV_MSG_LSDATA_GYRO_TROUBLE *msg, + PFUNC_DMASTER_SET_N p_datamaster_set_n); +void VehicleSensLineSensDataDeliverySysGpsInterruptSignal(const LSDRV_MSG_LSDATA_GPS_INTERRUPT_SIGNAL *msg, + PFUNC_DMASTER_SET_SHARED_MEMORY p_datamaster_set_sharedmemory); +void VehicleSensLineSensDataDeliveryGyroConnectStatus(const LSDRV_MSG_LSDATA_GYRO_CONNECT_STATUS *msg, + PFUNC_DMASTER_SET_SHARED_MEMORY p_datamaster_set_sharedmemory); +void VehicleSensLineSensDataDeliveryGpsAntennaStatus(const LSDRV_MSG_LSDATA_GPS_ANTENNA_STATUS *msg, + PFUNC_DMASTER_SET_N p_datamaster_set_n); #if CONFIG_SENSOR_EXT_VALID /* Initial Sensor Support */ void VehicleSensPkgDeliveryEntryExt(const SENSOR_MSG_DELIVERY_ENTRY *msg); -//void VehicleSensLineSensDataDeliveryFst(const LSDRV_MSG_LSDATA_FST *, PFUNC_DMASTER_SET_N); -//void VehicleSensLineSensDataDeliveryFstG(const LSDRV_MSG_LSDATA_FST *msg, PFUNC_DMASTER_SET_N p_datamaster_set_n); +void VehicleSensLineSensDataDeliveryFst(const LSDRV_MSG_LSDATA_FST *, PFUNC_DMASTER_SET_N); +void VehicleSensLineSensDataDeliveryFstG(const LSDRV_MSG_LSDATA_FST *msg, PFUNC_DMASTER_SET_N p_datamaster_set_n); #else void VehicleSensPkgDeliveryEntryError(const SENSOR_MSG_DELIVERY_ENTRY *msg); #endif -//void VehicleSensGpsDataDelivery(SENSOR_MSG_GPSDATA *msg, -// PFUNC_DMASTER_SET_N p_datamaster_set_n, -// PFUNC_DMASTER_SET_SHARED_MEMORY p_datamaster_set_sharedmemory); +void VehicleSensGpsDataDelivery(SENSOR_MSG_GPSDATA *msg, + PFUNC_DMASTER_SET_N p_datamaster_set_n, + PFUNC_DMASTER_SET_SHARED_MEMORY p_datamaster_set_sharedmemory); void VehicleSensDataMasterSetN(DID did, u_int8 chg_type, u_int8 get_method); void VehicleSensDataMasterSetSharedMemory(DID did, u_int8 chg_type); @@ -175,11 +174,11 @@ void VehicleSensDrDeliveryEntry(const VEHICLE_MSG_DELIVERY_ENTRY *); void VehicleSensGetLog(const VEHICLEDEBUG_MSG_BUF* msg); void VehicleSensSetLog(const VEHICLEDEBUG_MSG_BUF* msg); void VehicleSensWriteLocalTime(const CANINPUT_MSG_INFO *msg); -//void VehicleSensSetEphNumSharedMemory(const SENSOR_MSG_GPSDATA *msg); +void VehicleSensSetEphNumSharedMemory(const SENSOR_MSG_GPSDATA *msg); void VehicleSensDrRcvMsg(const DEAD_RECKONING_RCVDATA *msg); void VehicleSensCommonDataDelivery(const VEHICLE_MSG_BUF *msg, PFUNC_DMASTER_SET_N p_datamaster_set_n); -//void VehicleSensGpsTimeSndMsg(const POS_MSGINFO *pos_msg); +void VehicleSensGpsTimeSndMsg(const POS_MSGINFO *pos_msg); void VehicleSensGpsTimeDelivery(const VEHICLE_MSG_BUF *msg); RET_API VehicleSensSendEvent(uint16_t snd_pno, int32_t event_val); void VehicleSensThreadStopProcess(void); diff --git a/positioning/server/include/Sensor/VehicleSensor_Thread.h b/positioning/server/include/Sensor/VehicleSensor_Thread.h index e63f2d9c..f40f2a71 100644 --- a/positioning/server/include/Sensor/VehicleSensor_Thread.h +++ b/positioning/server/include/Sensor/VehicleSensor_Thread.h @@ -1,5 +1,5 @@ /* - * @copyright Copyright (c) 2016-2019 TOYOTA MOTOR CORPORATION. + * @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. diff --git a/positioning/server/include/Sensor/VehicleUtility.h b/positioning/server/include/Sensor/VehicleUtility.h index 3fe73a19..e7ebef04 100644 --- a/positioning/server/include/Sensor/VehicleUtility.h +++ b/positioning/server/include/Sensor/VehicleUtility.h @@ -1,5 +1,5 @@ /* - * @copyright Copyright (c) 2016-2019 TOYOTA MOTOR CORPORATION. + * @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. diff --git a/positioning/server/include/ServiceInterface/BackupMgrIf.h b/positioning/server/include/ServiceInterface/BackupMgrIf.h index c6c3bdc1..3e2e5e5c 100644 --- a/positioning/server/include/ServiceInterface/BackupMgrIf.h +++ b/positioning/server/include/ServiceInterface/BackupMgrIf.h @@ -1,5 +1,5 @@ /* - * @copyright Copyright (c) 2016-2019 TOYOTA MOTOR CORPORATION. + * @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. diff --git a/positioning/server/include/ServiceInterface/ClockIf.h b/positioning/server/include/ServiceInterface/ClockIf.h index 34ec0861..5a2e976a 100644 --- a/positioning/server/include/ServiceInterface/ClockIf.h +++ b/positioning/server/include/ServiceInterface/ClockIf.h @@ -1,5 +1,5 @@ /* - * @copyright Copyright (c) 2016-2019 TOYOTA MOTOR CORPORATION. + * @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. @@ -29,7 +29,7 @@ #include #include -//#include +#include #include #include @@ -53,7 +53,7 @@ extern "C" { #endif EFrameworkunifiedStatus ClockIfNotifyOnClockAvailability(CbFuncPtr fp_on_cmd); void ClockIfSetAvailability(BOOL b_is_available); -//EFrameworkunifiedStatus ClockIfDtimeSetGpsTime(const SENSOR_MSG_GPSTIME *pst_gps_time, BOOL* pb_is_available); +EFrameworkunifiedStatus ClockIfDtimeSetGpsTime(const SENSOR_MSG_GPSTIME *pst_gps_time, BOOL* pb_is_available); #ifdef __cplusplus } #endif diff --git a/positioning/server/include/ServiceInterface/CommUsbIf.h b/positioning/server/include/ServiceInterface/CommUsbIf.h index 4d02060a..cbc947c3 100644 --- a/positioning/server/include/ServiceInterface/CommUsbIf.h +++ b/positioning/server/include/ServiceInterface/CommUsbIf.h @@ -1,5 +1,5 @@ /* - * @copyright Copyright (c) 2016-2019 TOYOTA MOTOR CORPORATION. + * @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. @@ -28,8 +28,8 @@ *---------------------------------------------------------------------------------*/ #include #include -//#include -//#include +#include +#include #include diff --git a/positioning/server/include/ServiceInterface/DevDetectSrvIf.h b/positioning/server/include/ServiceInterface/DevDetectSrvIf.h index 3aa0a8a3..88291231 100644 --- a/positioning/server/include/ServiceInterface/DevDetectSrvIf.h +++ b/positioning/server/include/ServiceInterface/DevDetectSrvIf.h @@ -1,5 +1,5 @@ /* - * @copyright Copyright (c) 2016-2019 TOYOTA MOTOR CORPORATION. + * @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. diff --git a/positioning/server/include/ServiceInterface/DiagSrvIf.h b/positioning/server/include/ServiceInterface/DiagSrvIf.h index ceb7fd43..a6bcd777 100644 --- a/positioning/server/include/ServiceInterface/DiagSrvIf.h +++ b/positioning/server/include/ServiceInterface/DiagSrvIf.h @@ -1,5 +1,5 @@ /* - * @copyright Copyright (c) 2016-2019 TOYOTA MOTOR CORPORATION. + * @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. @@ -27,7 +27,6 @@ * Incluce * *---------------------------------------------------------------------------------*/ #include -//#include #include /*---------------------------------------------------------------------------------* @@ -49,8 +48,6 @@ extern "C" { #endif void DiagSrvIfSetRegistrationPermission(BOOL b_is_true); -EFrameworkunifiedStatus DiagSrvIfDiagPutDiagCode(uint64_t err_id, uint16_t positioning_code); -EFrameworkunifiedStatus DiagSrvIfDiagDeleteDiagCode(uint64_t err_id, uint16_t positioning_code); #ifdef __cplusplus } #endif diff --git a/positioning/server/include/ServiceInterface/PSMShadowIf.h b/positioning/server/include/ServiceInterface/PSMShadowIf.h index 7f973d70..8cdb1f81 100644 --- a/positioning/server/include/ServiceInterface/PSMShadowIf.h +++ b/positioning/server/include/ServiceInterface/PSMShadowIf.h @@ -1,5 +1,5 @@ /* - * @copyright Copyright (c) 2016-2019 TOYOTA MOTOR CORPORATION. + * @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. diff --git a/positioning/server/include/ServiceInterface/VehicleIf.h b/positioning/server/include/ServiceInterface/VehicleIf.h index c8caa7a6..28c05fb8 100644 --- a/positioning/server/include/ServiceInterface/VehicleIf.h +++ b/positioning/server/include/ServiceInterface/VehicleIf.h @@ -1,5 +1,5 @@ /* - * @copyright Copyright (c) 2016-2019 TOYOTA MOTOR CORPORATION. + * @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. @@ -24,8 +24,8 @@ #include #include -//#include -//#include +#include +#include /*---------------------------------------------------------------------------------* * Definition * diff --git a/positioning/server/include/ServiceInterface/ps_psmshadow_notifications.h b/positioning/server/include/ServiceInterface/ps_psmshadow_notifications.h index f6d7d849..24a513aa 100644 --- a/positioning/server/include/ServiceInterface/ps_psmshadow_notifications.h +++ b/positioning/server/include/ServiceInterface/ps_psmshadow_notifications.h @@ -1,5 +1,5 @@ /* - * @copyright Copyright (c) 2016-2019 TOYOTA MOTOR CORPORATION. + * @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. diff --git a/positioning/server/include/ServiceInterface/ps_version.h b/positioning/server/include/ServiceInterface/ps_version.h index a5c21fd1..f28982f8 100644 --- a/positioning/server/include/ServiceInterface/ps_version.h +++ b/positioning/server/include/ServiceInterface/ps_version.h @@ -1,5 +1,5 @@ /* - * @copyright Copyright (c) 2016-2019 TOYOTA MOTOR CORPORATION. + * @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. diff --git a/positioning/server/include/common/com/com_message_header.h b/positioning/server/include/common/com/com_message_header.h deleted file mode 100644 index 9db43817..00000000 --- a/positioning/server/include/common/com/com_message_header.h +++ /dev/null @@ -1,68 +0,0 @@ -/* - * @copyright Copyright (c) 2016-2019 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_SERVER_INCLUDE_COMMON_COM_COM_MESSAGE_HEADER_H_ -#define POSITIONING_SERVER_INCLUDE_COMMON_COM_COM_MESSAGE_HEADER_H_ - -/** - * @file com_message_header.h - */ - - -#ifndef _POS_MESSAGE_HEADER_ - -#include -#include - -/** - * @struct T_APIMSG_HEADER - * \~english _CWORD64_API message header structure - */ -typedef struct { - uint16_t replyid; //!< \~english message send result notify dest ID - uint16_t sndpno; //!< \~english message send source process No - uint16_t respno; //!< \~english message response process No - uint16_t cid; //!< \~english message command ID - uint16_t msgbodysize; //!< \~english message body size - uint8_t rid; //!< \~english message resourceID */ - uint8_t reserve; //!< \~english reserve - uint8_t filler[2]; //!< \~english filter -} T_APIMSG_HEADER; - -/** - * @struct T_APIMSG_MSGBUF_HEADER - * \~english _CWORD64_API message buffer header structure - */ -typedef struct { - uint32_t signo; - //!< \~english signal No, _pb_SndMsg to set 0 - T_APIMSG_HEADER hdr; //!< \~english message header -} T_APIMSG_MSGBUF_HEADER; - -/** - * @struct _CWORD64_MSG_LOG_HDR - * \~english _CWORD64_API message log header structure - */ -typedef struct { - uint32_t kick_time; //!< \~english kick time - uint32_t sr_cid; //!< \~english message command ID - uint32_t pno; //!< \~english process No - uint32_t data_bytes; //!< \~english data size -} _CWORD64_MSG_LOG_HDR; - -#endif - -#endif // POSITIONING_SERVER_INCLUDE_COMMON_COM_COM_MESSAGE_HEADER_H_ */ diff --git a/positioning/server/include/nsfw/positioning_common.h b/positioning/server/include/nsfw/positioning_common.h index c603e12d..538630d1 100644 --- a/positioning/server/include/nsfw/positioning_common.h +++ b/positioning/server/include/nsfw/positioning_common.h @@ -1,5 +1,5 @@ /* - * @copyright Copyright (c) 2016-2019 TOYOTA MOTOR CORPORATION. + * @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. @@ -23,14 +23,12 @@ #ifndef POSITIONING_SERVER_INCLUDE_NSFW_POSITIONING_COMMON_H_ #define POSITIONING_SERVER_INCLUDE_NSFW_POSITIONING_COMMON_H_ +#include + /*---------------------------------------------------------------------------------* * Definition * *---------------------------------------------------------------------------------*/ /* Thread control command ID */ -#define CID_THREAD_CREATE_COMP (0x0001) /* Thread start completion notification */ -#define CID_THREAD_STOP_REQ (0x0002) /* Thread termination request */ -#define CID_THREAD_STOP_COMP (0x0003) /* Thread termination notice */ - #define CID_EXTTERM_REQ (0x0011) /* External pin status request */ /* Internal thread activation status determination */ @@ -44,18 +42,6 @@ /*---------------------------------------------------------------------------------* * ENUMERATION * *---------------------------------------------------------------------------------*/ -/*! - @brief Thread ID -*/ -typedef enum { - ETID_POS_MAIN = 0, - ETID_POS_SENS, - ETID_POS_GPS, - ETID_POS_GPS_RECV, - ETID_POS_GPS_ROLLOVER, - ETID_POS_MAX -} EnumTID_POS; - /*! @brief Positioning operating status definitions */ @@ -83,30 +69,6 @@ typedef struct { EnumSetupMode_POS e_mode; /* Thread activation mode */ } ST_THREAD_SETUP_INFO; - -// Duplicate/Confrict countermeasure -/* NMEA commands ****************************/ -#define GPS_NMEA_NUM_SENTENCE 16 - -/*! - @brief GPS NMEA sentence information -*/ -typedef struct GpsNmeaSentenceInfo { - u_int8 uc_size; /* Size of the sentence */ - u_int8 reserve; /* Reserved */ - u_int16 us_offset; /* Beginning of the sentence */ -} TG_GPS_NMEA_SENTENCE_INFO; - -/*! - @brief GPS NMEA information -*/ -typedef struct GpsNmeaInfo { - u_int32 ul_rcvsts; /* NMEA received data */ - u_int8 reserve[4]; /* Reserved */ - TG_GPS_NMEA_SENTENCE_INFO st_nmea_sentence_info[GPS_NMEA_NUM_SENTENCE]; /* Sentence information */ -} TG_GPS_NMEA_INFO; - - /*---------------------------------------------------------------------------------* * Prototype * *---------------------------------------------------------------------------------*/ diff --git a/positioning/server/include/nsfw/vehicle_version.h b/positioning/server/include/nsfw/vehicle_version.h index 20d32dd8..b397b686 100644 --- a/positioning/server/include/nsfw/vehicle_version.h +++ b/positioning/server/include/nsfw/vehicle_version.h @@ -1,5 +1,5 @@ /* - * @copyright Copyright (c) 2016-2019 TOYOTA MOTOR CORPORATION. + * @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. diff --git a/positioning/server/src/Sensor/ClockUtility.cpp b/positioning/server/src/Sensor/ClockUtility.cpp index c3fc39ce..2e9639a1 100644 --- a/positioning/server/src/Sensor/ClockUtility.cpp +++ b/positioning/server/src/Sensor/ClockUtility.cpp @@ -1,5 +1,5 @@ /* - * @copyright Copyright (c) 2016-2019 TOYOTA MOTOR CORPORATION. + * @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. diff --git a/positioning/server/src/Sensor/DeadReckoning_Common.cpp b/positioning/server/src/Sensor/DeadReckoning_Common.cpp index d59bb49d..9503b343 100644 --- a/positioning/server/src/Sensor/DeadReckoning_Common.cpp +++ b/positioning/server/src/Sensor/DeadReckoning_Common.cpp @@ -1,5 +1,5 @@ /* - * @copyright Copyright (c) 2016-2019 TOYOTA MOTOR CORPORATION. + * @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. diff --git a/positioning/server/src/Sensor/DeadReckoning_DataMasterMain.cpp b/positioning/server/src/Sensor/DeadReckoning_DataMasterMain.cpp index fcd8c6d4..93adda0d 100644 --- a/positioning/server/src/Sensor/DeadReckoning_DataMasterMain.cpp +++ b/positioning/server/src/Sensor/DeadReckoning_DataMasterMain.cpp @@ -1,5 +1,5 @@ /* - * @copyright Copyright (c) 2016-2019 TOYOTA MOTOR CORPORATION. + * @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. diff --git a/positioning/server/src/Sensor/DeadReckoning_DeliveryCtrl.cpp b/positioning/server/src/Sensor/DeadReckoning_DeliveryCtrl.cpp index 781c11d6..0a08f5fa 100644 --- a/positioning/server/src/Sensor/DeadReckoning_DeliveryCtrl.cpp +++ b/positioning/server/src/Sensor/DeadReckoning_DeliveryCtrl.cpp @@ -1,5 +1,5 @@ /* - * @copyright Copyright (c) 2016-2019 TOYOTA MOTOR CORPORATION. + * @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. diff --git a/positioning/server/src/Sensor/DeadReckoning_Did_Altitude_dr.cpp b/positioning/server/src/Sensor/DeadReckoning_Did_Altitude_dr.cpp index fefb362d..acd5f6d3 100644 --- a/positioning/server/src/Sensor/DeadReckoning_Did_Altitude_dr.cpp +++ b/positioning/server/src/Sensor/DeadReckoning_Did_Altitude_dr.cpp @@ -1,5 +1,5 @@ /* - * @copyright Copyright (c) 2016-2019 TOYOTA MOTOR CORPORATION. + * @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. diff --git a/positioning/server/src/Sensor/DeadReckoning_Did_GyroOffset_dr.cpp b/positioning/server/src/Sensor/DeadReckoning_Did_GyroOffset_dr.cpp index a0ddb298..f295f8d4 100644 --- a/positioning/server/src/Sensor/DeadReckoning_Did_GyroOffset_dr.cpp +++ b/positioning/server/src/Sensor/DeadReckoning_Did_GyroOffset_dr.cpp @@ -1,5 +1,5 @@ /* - * @copyright Copyright (c) 2016-2019 TOYOTA MOTOR CORPORATION. + * @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. diff --git a/positioning/server/src/Sensor/DeadReckoning_Did_GyroScaleFactorLevel_dr.cpp b/positioning/server/src/Sensor/DeadReckoning_Did_GyroScaleFactorLevel_dr.cpp index 18f657aa..dff0913f 100644 --- a/positioning/server/src/Sensor/DeadReckoning_Did_GyroScaleFactorLevel_dr.cpp +++ b/positioning/server/src/Sensor/DeadReckoning_Did_GyroScaleFactorLevel_dr.cpp @@ -1,5 +1,5 @@ /* - * @copyright Copyright (c) 2016-2019 TOYOTA MOTOR CORPORATION. + * @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. diff --git a/positioning/server/src/Sensor/DeadReckoning_Did_GyroScaleFactor_dr.cpp b/positioning/server/src/Sensor/DeadReckoning_Did_GyroScaleFactor_dr.cpp index 899467c3..d05ef5cb 100644 --- a/positioning/server/src/Sensor/DeadReckoning_Did_GyroScaleFactor_dr.cpp +++ b/positioning/server/src/Sensor/DeadReckoning_Did_GyroScaleFactor_dr.cpp @@ -1,5 +1,5 @@ /* - * @copyright Copyright (c) 2016-2019 TOYOTA MOTOR CORPORATION. + * @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. diff --git a/positioning/server/src/Sensor/DeadReckoning_Did_Heading_dr.cpp b/positioning/server/src/Sensor/DeadReckoning_Did_Heading_dr.cpp index c82c1c5c..451b1333 100644 --- a/positioning/server/src/Sensor/DeadReckoning_Did_Heading_dr.cpp +++ b/positioning/server/src/Sensor/DeadReckoning_Did_Heading_dr.cpp @@ -1,5 +1,5 @@ /* - * @copyright Copyright (c) 2016-2019 TOYOTA MOTOR CORPORATION. + * @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. diff --git a/positioning/server/src/Sensor/DeadReckoning_Did_Latitude_dr.cpp b/positioning/server/src/Sensor/DeadReckoning_Did_Latitude_dr.cpp index ee6d320a..9d06e7af 100644 --- a/positioning/server/src/Sensor/DeadReckoning_Did_Latitude_dr.cpp +++ b/positioning/server/src/Sensor/DeadReckoning_Did_Latitude_dr.cpp @@ -1,5 +1,5 @@ /* - * @copyright Copyright (c) 2016-2019 TOYOTA MOTOR CORPORATION. + * @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. diff --git a/positioning/server/src/Sensor/DeadReckoning_Did_Longitude_dr.cpp b/positioning/server/src/Sensor/DeadReckoning_Did_Longitude_dr.cpp index bdbcbc14..38a6351a 100644 --- a/positioning/server/src/Sensor/DeadReckoning_Did_Longitude_dr.cpp +++ b/positioning/server/src/Sensor/DeadReckoning_Did_Longitude_dr.cpp @@ -1,5 +1,5 @@ /* - * @copyright Copyright (c) 2016-2019 TOYOTA MOTOR CORPORATION. + * @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. diff --git a/positioning/server/src/Sensor/DeadReckoning_Did_SnsCounter.cpp b/positioning/server/src/Sensor/DeadReckoning_Did_SnsCounter.cpp index bcb1a72c..6bf3ed71 100644 --- a/positioning/server/src/Sensor/DeadReckoning_Did_SnsCounter.cpp +++ b/positioning/server/src/Sensor/DeadReckoning_Did_SnsCounter.cpp @@ -1,5 +1,5 @@ /* - * @copyright Copyright (c) 2016-2019 TOYOTA MOTOR CORPORATION. + * @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. diff --git a/positioning/server/src/Sensor/DeadReckoning_Did_SpeedPulseScaleFactorLevel_dr.cpp b/positioning/server/src/Sensor/DeadReckoning_Did_SpeedPulseScaleFactorLevel_dr.cpp index 3cffa79b..dc7022f2 100644 --- a/positioning/server/src/Sensor/DeadReckoning_Did_SpeedPulseScaleFactorLevel_dr.cpp +++ b/positioning/server/src/Sensor/DeadReckoning_Did_SpeedPulseScaleFactorLevel_dr.cpp @@ -1,5 +1,5 @@ /* - * @copyright Copyright (c) 2016-2019 TOYOTA MOTOR CORPORATION. + * @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. diff --git a/positioning/server/src/Sensor/DeadReckoning_Did_SpeedPulseScaleFactor_dr.cpp b/positioning/server/src/Sensor/DeadReckoning_Did_SpeedPulseScaleFactor_dr.cpp index d30f8869..cd271414 100644 --- a/positioning/server/src/Sensor/DeadReckoning_Did_SpeedPulseScaleFactor_dr.cpp +++ b/positioning/server/src/Sensor/DeadReckoning_Did_SpeedPulseScaleFactor_dr.cpp @@ -1,5 +1,5 @@ /* - * @copyright Copyright (c) 2016-2019 TOYOTA MOTOR CORPORATION. + * @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. diff --git a/positioning/server/src/Sensor/DeadReckoning_Did_Speed_dr.cpp b/positioning/server/src/Sensor/DeadReckoning_Did_Speed_dr.cpp index 3926768f..b2b1f885 100644 --- a/positioning/server/src/Sensor/DeadReckoning_Did_Speed_dr.cpp +++ b/positioning/server/src/Sensor/DeadReckoning_Did_Speed_dr.cpp @@ -1,5 +1,5 @@ /* - * @copyright Copyright (c) 2016-2019 TOYOTA MOTOR CORPORATION. + * @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. diff --git a/positioning/server/src/Sensor/DeadReckoning_main.cpp b/positioning/server/src/Sensor/DeadReckoning_main.cpp index 4d7187ac..1d956b72 100644 --- a/positioning/server/src/Sensor/DeadReckoning_main.cpp +++ b/positioning/server/src/Sensor/DeadReckoning_main.cpp @@ -1,5 +1,5 @@ /* - * @copyright Copyright (c) 2016-2019 TOYOTA MOTOR CORPORATION. + * @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. @@ -23,7 +23,7 @@ * :DeadReckoningRcvMsg() DR Component MSG Receive Processing ******************************************************************************/ -//#include +#include #include "DeadReckoning_main.h" @@ -47,7 +47,7 @@ static void DeadReckoningLinkSharedMemory(char *shared_memory_name, void **share /* Constant */ /*************************************************/ -#define DEAD_RECKONING_BUF_SIZE 5 +#define DEAD_RECKONING_BUF_SIZE 7 #define DR_MASK_WORD_L 0x00FF #define DR_MASK_WORD_U 0xFF00 @@ -62,18 +62,22 @@ BOOL g_fst_sens_data_get_flg = FALSE; /* Reception flag for each data */ BOOL g_sens_data_get_sns_cnt_flg = FALSE; -BOOL g_sens_data_get_gyro_flg = FALSE; +BOOL g_sens_data_get_gyro_x_flg = FALSE; +BOOL g_sens_data_get_gyro_y_flg = FALSE; +BOOL g_sens_data_get_gyro_z_flg = FALSE; BOOL g_sens_data_get_rev_flg = FALSE; BOOL g_sens_data_get_spdpulse_flg = FALSE; BOOL g_sens_data_get_spdpulse_chk_flg = FALSE; -BOOL g_sens_data_get_gyro_fst_flg = FALSE; +BOOL g_sens_data_get_gyro_x_fst_flg = FALSE; +BOOL g_sens_data_get_gyro_y_fst_flg = FALSE; +BOOL g_sens_data_get_gyro_z_fst_flg = FALSE; BOOL g_sens_data_get_rev_fst_flg = FALSE; BOOL g_sens_data_get_spdpulse_fst_flg = FALSE; BOOL g_sens_data_get_spdpulse_chk_fst_flg = FALSE; /* Receive data storage buffer */ -/* [0]:SNS_COUNTER [1]:REV [2]:SPEED_PULSE_FLAG [3]:SPEED_PULSE [4]:GYRO */ +/* [0]:SNS_COUNTER [1]:REV [2]:SPEED_PULSE_FLAG [3]:SPEED_PULSE [4]:GYRO_X [5]:GYRO_Y [6]:GYRO_Z */ DEAD_RECKONING_RCVDATA_SENSOR g_sns_buf[DEAD_RECKONING_BUF_SIZE]; DEAD_RECKONING_SAVEDATA_SENSOR_FIRST g_fst_sns_buf; @@ -101,442 +105,524 @@ int32 DeadReckoningInit(void) { // LCOV_EXCL_START 8: dead code. ******************************************************************************/ void DeadReckoningRcvMsg(const DEAD_RECKONING_RCVDATA *msg, DEAD_RECKONING_LONLAT_INFO *location_info) { AGL_ASSERT_NOT_TESTED(); // LCOV_EXCL_LINE 200: test assert -// if ((msg == NULL) || (location_info == NULL)) { -// FRAMEWORKUNIFIEDLOG(ZONE_INFO, __FUNCTION__, "msg == NULL\r\n"); -// } else { -// const SENSOR_MSG_GPSDATA_DAT *rcv_gps_msg = NULL; -// const VEHICLESENS_DATA_MASTER *rcv_sensor_msg = NULL; -// const VEHICLESENS_DATA_MASTER_FST *rcv_sensor_msg_fst = NULL; -// -// Struct_GpsData send_gps_msg; -// Struct_SensData send_sensor_msg; -// -// /* Initialization */ -// (void)memset(reinterpret_cast(&send_gps_msg), 0, sizeof(Struct_GpsData)); -// (void)memset(reinterpret_cast(&send_sensor_msg), 0, sizeof(Struct_SensData)); -// -// /* Flag is set to FALSE */ -// location_info->calc_called = static_cast(FALSE); -// location_info->available = static_cast(FALSE); -// -// if (CID_DEAD_RECKONING_GPS_DATA == msg->hdr.hdr.cid) { -// rcv_gps_msg = (const SENSOR_MSG_GPSDATA_DAT *)(&(msg->data[0])); -// /* #QAC confirmation Rule11.4 Use structure for member reference(Cast according to shared memory link IF) */ -// -// /* Receiving GPS Data for DR */ -// switch (rcv_gps_msg->ul_did) { -// case VEHICLE_DID_GPS_UBLOX_NAV_POSLLH : -// case VEHICLE_DID_GPS_UBLOX_NAV_STATUS : -// case VEHICLE_DID_GPS_UBLOX_NAV_TIMEUTC : -// case VEHICLE_DID_GPS_UBLOX_NAV_VELNED : -// case VEHICLE_DID_GPS_UBLOX_NAV_DOP : -// case VEHICLE_DID_GPS_UBLOX_NAV_SVINFO : -// case VEHICLE_DID_GPS_UBLOX_NAV_CLOCK : -// { -// g_gps_data_get_flg = TRUE; -// break; -// } -// default: -// break; -// } -// } else if (CID_DEAD_RECKONING_SENS_DATA == msg->hdr.hdr.cid) { -// rcv_sensor_msg = (const VEHICLESENS_DATA_MASTER *)(&(msg->data[0])); -// /* #QAC confirmation Rule11.4 Use structure for member reference(Cast according to shared memory link IF) */ -// -// /* Sensor data reception for DR */ -// switch (rcv_sensor_msg->ul_did) { -// case POSHAL_DID_SNS_COUNTER : -// { -// g_sns_buf[0].did = rcv_sensor_msg->ul_did; -// g_sns_buf[0].size = static_cast(rcv_sensor_msg->us_size); -// g_sns_buf[0].data[0] = rcv_sensor_msg->uc_data[0]; -// g_sens_data_get_sns_cnt_flg = TRUE; -// break; -// } -// case POSHAL_DID_REV : -// { -// g_sns_buf[1].did = rcv_sensor_msg->ul_did; -// g_sns_buf[1].size = static_cast(rcv_sensor_msg->us_size); -// (void)memcpy(reinterpret_cast(&(g_sns_buf[1].data[0])), -// (const void *)(&(rcv_sensor_msg->uc_data[0])), (size_t)rcv_sensor_msg->us_size); -// g_sens_data_get_rev_flg = TRUE; -// break; -// } -// case POSHAL_DID_SPEED_PULSE_FLAG : -// { -// g_sns_buf[2].did = rcv_sensor_msg->ul_did; -// g_sns_buf[2].size = static_cast(rcv_sensor_msg->us_size); -// (void)memcpy(reinterpret_cast(&(g_sns_buf[2].data[0])), -// (const void *)(&(rcv_sensor_msg->uc_data[0])), (size_t)rcv_sensor_msg->us_size); -// g_sens_data_get_spdpulse_chk_flg = TRUE; -// break; -// } -// case POSHAL_DID_SPEED_PULSE : -// { -// g_sns_buf[3].did = rcv_sensor_msg->ul_did; -// g_sns_buf[3].size = static_cast(rcv_sensor_msg->us_size); -// (void)memcpy(reinterpret_cast(&(g_sns_buf[3].data[0])), -// (const void *)(&(rcv_sensor_msg->uc_data[0])), (size_t)rcv_sensor_msg->us_size); -// g_sens_data_get_spdpulse_flg = TRUE; -// break; -// } -// case POSHAL_DID_GYRO : -// { -// g_sns_buf[4].did = rcv_sensor_msg->ul_did; -// g_sns_buf[4].size = static_cast(rcv_sensor_msg->us_size); -// (void)memcpy(reinterpret_cast(&(g_sns_buf[4].data[0])), -// (const void *)(&(rcv_sensor_msg->uc_data[0])), (size_t)rcv_sensor_msg->us_size); -// g_sens_data_get_gyro_flg = TRUE; -// break; -// } -// default: -// break; -// } -// } else if (CID_DEAD_RECKONING_SENS_FST_DATA == msg->hdr.hdr.cid) { -// u_int16 rev_data_size; -// -// rcv_sensor_msg_fst = (const VEHICLESENS_DATA_MASTER_FST *)(&(msg->data[0])); -// /* #QAC confirmation Rule11.4 Use structure for member reference(Cast according to shared memory link IF) */ -// rev_data_size = static_cast(msg->hdr.hdr.msgbodysize - VEHICLESENS_DELIVERY_FSTSNS_HDR_SIZE); -// -//#if DEAD_RECKONING_MAIN_DEBUG -// FRAMEWORKUNIFIEDLOG(ZONE_INFO, __FUNCTION__, " DID = %08X, rev_data_size = %d ", -// rcv_sensor_msg_fst->ul_did, rev_data_size); -//#endif -// -// /* Sensor data reception for DR */ -// switch (rcv_sensor_msg_fst->ul_did) { -// case POSHAL_DID_REV_FST : -// { -// (void)memcpy( -// reinterpret_cast(&(g_fst_sns_buf.rev_data[g_fst_sns_buf.rev_rcv_size -// / sizeof(g_fst_sns_buf.rev_data[0])])), -// (const void *)(&(rcv_sensor_msg_fst->uc_data[0])), -// (size_t)(rev_data_size)); -// -// g_fst_sns_buf.rev_rcv_size = static_cast( -// g_fst_sns_buf.rev_rcv_size + rev_data_size); -// -// if (g_fst_sns_buf.rev_rcv_size == rcv_sensor_msg_fst->us_size) { -// g_sens_data_get_rev_fst_flg = TRUE; -//#if DEAD_RECKONING_MAIN_DEBUG -// FRAMEWORKUNIFIEDLOG(ZONE_INFO, __FUNCTION__, " REV receive flag = TRUE "); -//#endif -// } -// break; -// } -// case POSHAL_DID_SPEED_PULSE_FLAG_FST : -// { -// (void)memcpy( -// reinterpret_cast(&(g_fst_sns_buf.spd_pulse_check_data[g_fst_sns_buf.spd_pulse_check_rcv_size -// / sizeof(g_fst_sns_buf.spd_pulse_check_data[0])])), -// (const void *)(&(rcv_sensor_msg_fst->uc_data[0])), -// (size_t)(rev_data_size)); -// -// g_fst_sns_buf.spd_pulse_check_rcv_size = static_cast( -// g_fst_sns_buf.spd_pulse_check_rcv_size + rev_data_size); -// -// if (g_fst_sns_buf.spd_pulse_check_rcv_size == rcv_sensor_msg_fst->us_size) { -// g_sens_data_get_spdpulse_chk_fst_flg = TRUE; -//#if DEAD_RECKONING_MAIN_DEBUG -// FRAMEWORKUNIFIEDLOG(ZONE_INFO, __FUNCTION__, " SPF receive flag = TRUE "); -//#endif -// } -// break; -// } -// case POSHAL_DID_SPEED_PULSE_FST : -// { -// (void)memcpy( -// reinterpret_cast(&(g_fst_sns_buf.spd_pulse_data[g_fst_sns_buf.spd_pulse_rcv_size -// / sizeof(g_fst_sns_buf.spd_pulse_data[0])])), -// (const void *)(&(rcv_sensor_msg_fst->uc_data[0])), -// (size_t)(rev_data_size)); -// -// g_fst_sns_buf.spd_pulse_rcv_size = static_cast(g_fst_sns_buf.spd_pulse_rcv_size + \ -// rev_data_size); -// -// if (g_fst_sns_buf.spd_pulse_rcv_size == rcv_sensor_msg_fst->us_size) { -// g_sens_data_get_spdpulse_fst_flg = TRUE; -//#if DEAD_RECKONING_MAIN_DEBUG -// FRAMEWORKUNIFIEDLOG(ZONE_INFO, __FUNCTION__, " SP receive flag = TRUE "); -//#endif -// } -// break; -// } -// case POSHAL_DID_GYRO_FST : -// { -// (void)memcpy( -// reinterpret_cast(&(g_fst_sns_buf.gyro_data[g_fst_sns_buf.gyro_rcv_size -// / sizeof(g_fst_sns_buf.gyro_data[0])])), -// (const void *)(&(rcv_sensor_msg_fst->uc_data[0])), -// (size_t)(rev_data_size)); -// -// g_fst_sns_buf.gyro_rcv_size = static_cast(g_fst_sns_buf.gyro_rcv_size + rev_data_size); -// -//#if DEAD_RECKONING_MAIN_DEBUG -// FRAMEWORKUNIFIEDLOG(ZONE_INFO, __FUNCTION__, -// " g_fst_sns_buf.gyro_rcv_size = %d, rcv_sensor_msg_fst->us_size = %d ", -// g_fst_sns_buf.gyro_rcv_size, rcv_sensor_msg_fst->us_size); -//#endif -// if (g_fst_sns_buf.gyro_rcv_size == rcv_sensor_msg_fst->us_size) { -// g_sens_data_get_gyro_fst_flg = TRUE; -//#if DEAD_RECKONING_MAIN_DEBUG -// FRAMEWORKUNIFIEDLOG(ZONE_INFO, __FUNCTION__, " GYRO receive flag = TRUE "); -//#endif -// } -// break; -// } -// default: -// break; -// } -// } else { -// /* nop */ -// } -// -// /* 4 data received? */ -// if ((g_sens_data_get_sns_cnt_flg == TRUE) && -// (g_sens_data_get_rev_flg == TRUE) && -// (g_sens_data_get_gyro_flg == TRUE) && -// (g_sens_data_get_spdpulse_flg == TRUE) && -// (g_sens_data_get_spdpulse_chk_flg == TRUE)) { -// /* Sensor data acquisition flag ON */ -// g_sens_data_get_flg = TRUE; -// -// /* Set all flags to FALSE */ -// g_sens_data_get_sns_cnt_flg = FALSE; -// g_sens_data_get_gyro_flg = FALSE; -// g_sens_data_get_rev_flg = FALSE; -// g_sens_data_get_spdpulse_flg = FALSE; -// g_sens_data_get_spdpulse_chk_flg = FALSE; -// } -// -// /* 4 data received? */ -// if ((g_sens_data_get_rev_fst_flg == TRUE) && -// (g_sens_data_get_gyro_fst_flg == TRUE) && -// (g_sens_data_get_spdpulse_fst_flg == TRUE) && -// (g_sens_data_get_spdpulse_chk_fst_flg == TRUE)) { -// /* Initial sensor data acquisition flag ON */ -// g_fst_sens_data_get_flg = TRUE; -// -// /* Set all flags to FALSE */ -// g_sens_data_get_gyro_fst_flg = FALSE; -// g_sens_data_get_rev_fst_flg = FALSE; -// g_sens_data_get_spdpulse_fst_flg = FALSE; -// g_sens_data_get_spdpulse_chk_fst_flg = FALSE; -// } -// -// DeadReckoningRcvMsgFstSens(msg, location_info, rcv_gps_msg, &send_gps_msg, &send_sensor_msg); -// } + if ((msg == NULL) || (location_info == NULL)) { + FRAMEWORKUNIFIEDLOG(ZONE_INFO, __FUNCTION__, "msg == NULL\r\n"); + } else { + const SENSOR_MSG_GPSDATA_DAT *rcv_gps_msg = NULL; + const VEHICLESENS_DATA_MASTER *rcv_sensor_msg = NULL; + const VEHICLESENS_DATA_MASTER_FST *rcv_sensor_msg_fst = NULL; + + Struct_GpsData send_gps_msg; + Struct_SensData send_sensor_msg; + + /* Initialization */ + (void)memset(reinterpret_cast(&send_gps_msg), 0, sizeof(Struct_GpsData)); + (void)memset(reinterpret_cast(&send_sensor_msg), 0, sizeof(Struct_SensData)); + + /* Flag is set to FALSE */ + location_info->calc_called = static_cast(FALSE); + location_info->available = static_cast(FALSE); + + if (CID_DEAD_RECKONING_GPS_DATA == msg->hdr.hdr.cid) { + rcv_gps_msg = (const SENSOR_MSG_GPSDATA_DAT *)(&(msg->data[0])); + /* #QAC confirmation Rule11.4 Use structure for member reference(Cast according to shared memory link IF) */ + + /* Receiving GPS Data for DR */ + switch (rcv_gps_msg->ul_did) { + case VEHICLE_DID_GPS_UBLOX_NAV_POSLLH : + case VEHICLE_DID_GPS_UBLOX_NAV_STATUS : + case VEHICLE_DID_GPS_UBLOX_NAV_TIMEUTC : + case VEHICLE_DID_GPS_UBLOX_NAV_VELNED : + case VEHICLE_DID_GPS_UBLOX_NAV_DOP : + case VEHICLE_DID_GPS_UBLOX_NAV_SVINFO : + case VEHICLE_DID_GPS_UBLOX_NAV_CLOCK : + { + g_gps_data_get_flg = TRUE; + break; + } + default: + break; + } + } else if (CID_DEAD_RECKONING_SENS_DATA == msg->hdr.hdr.cid) { + rcv_sensor_msg = (const VEHICLESENS_DATA_MASTER *)(&(msg->data[0])); + /* #QAC confirmation Rule11.4 Use structure for member reference(Cast according to shared memory link IF) */ + + /* Sensor data reception for DR */ + switch (rcv_sensor_msg->ul_did) { + case POSHAL_DID_SNS_COUNTER : + { + g_sns_buf[0].did = rcv_sensor_msg->ul_did; + g_sns_buf[0].size = static_cast(rcv_sensor_msg->us_size); + g_sns_buf[0].data[0] = rcv_sensor_msg->uc_data[0]; + g_sens_data_get_sns_cnt_flg = TRUE; + break; + } + case POSHAL_DID_REV : + { + g_sns_buf[1].did = rcv_sensor_msg->ul_did; + g_sns_buf[1].size = static_cast(rcv_sensor_msg->us_size); + (void)memcpy(reinterpret_cast(&(g_sns_buf[1].data[0])), + (const void *)(&(rcv_sensor_msg->uc_data[0])), (size_t)rcv_sensor_msg->us_size); + g_sens_data_get_rev_flg = TRUE; + break; + } + case POSHAL_DID_SPEED_PULSE_FLAG : + { + g_sns_buf[2].did = rcv_sensor_msg->ul_did; + g_sns_buf[2].size = static_cast(rcv_sensor_msg->us_size); + (void)memcpy(reinterpret_cast(&(g_sns_buf[2].data[0])), + (const void *)(&(rcv_sensor_msg->uc_data[0])), (size_t)rcv_sensor_msg->us_size); + g_sens_data_get_spdpulse_chk_flg = TRUE; + break; + } + case POSHAL_DID_SPEED_PULSE : + { + g_sns_buf[3].did = rcv_sensor_msg->ul_did; + g_sns_buf[3].size = static_cast(rcv_sensor_msg->us_size); + (void)memcpy(reinterpret_cast(&(g_sns_buf[3].data[0])), + (const void *)(&(rcv_sensor_msg->uc_data[0])), (size_t)rcv_sensor_msg->us_size); + g_sens_data_get_spdpulse_flg = TRUE; + break; + } + case POSHAL_DID_GYRO_X : + { + g_sns_buf[4].did = rcv_sensor_msg->ul_did; + g_sns_buf[4].size = static_cast(rcv_sensor_msg->us_size); + (void)memcpy(reinterpret_cast(&(g_sns_buf[4].data[0])), + (const void *)(&(rcv_sensor_msg->uc_data[0])), (size_t)rcv_sensor_msg->us_size); + g_sens_data_get_gyro_x_flg = TRUE; + break; + } + case POSHAL_DID_GYRO_Y : + { + g_sns_buf[5].did = rcv_sensor_msg->ul_did; + g_sns_buf[5].size = static_cast(rcv_sensor_msg->us_size); + (void)memcpy(reinterpret_cast(&(g_sns_buf[5].data[0])), + (const void *)(&(rcv_sensor_msg->uc_data[0])), (size_t)rcv_sensor_msg->us_size); + g_sens_data_get_gyro_y_flg = TRUE; + break; + } + case POSHAL_DID_GYRO_Z : + { + g_sns_buf[6].did = rcv_sensor_msg->ul_did; + g_sns_buf[6].size = static_cast(rcv_sensor_msg->us_size); + (void)memcpy(reinterpret_cast(&(g_sns_buf[6].data[0])), + (const void *)(&(rcv_sensor_msg->uc_data[0])), (size_t)rcv_sensor_msg->us_size); + g_sens_data_get_gyro_z_flg = TRUE; + break; + } + default: + break; + } + } else if (CID_DEAD_RECKONING_SENS_FST_DATA == msg->hdr.hdr.cid) { + u_int16 rev_data_size; + + rcv_sensor_msg_fst = (const VEHICLESENS_DATA_MASTER_FST *)(&(msg->data[0])); + /* #QAC confirmation Rule11.4 Use structure for member reference(Cast according to shared memory link IF) */ + rev_data_size = static_cast(msg->hdr.hdr.msgbodysize - VEHICLESENS_DELIVERY_FSTSNS_HDR_SIZE); + +#if DEAD_RECKONING_MAIN_DEBUG + FRAMEWORKUNIFIEDLOG(ZONE_INFO, __FUNCTION__, " DID = %08X, rev_data_size = %d ", + rcv_sensor_msg_fst->ul_did, rev_data_size); +#endif + + /* Sensor data reception for DR */ + switch (rcv_sensor_msg_fst->ul_did) { + case POSHAL_DID_REV_FST : + { + (void)memcpy( + reinterpret_cast(&(g_fst_sns_buf.rev_data[g_fst_sns_buf.rev_rcv_size + / sizeof(g_fst_sns_buf.rev_data[0])])), + (const void *)(&(rcv_sensor_msg_fst->uc_data[0])), + (size_t)(rev_data_size)); + + g_fst_sns_buf.rev_rcv_size = static_cast( + g_fst_sns_buf.rev_rcv_size + rev_data_size); + + if (g_fst_sns_buf.rev_rcv_size == rcv_sensor_msg_fst->us_size) { + g_sens_data_get_rev_fst_flg = TRUE; +#if DEAD_RECKONING_MAIN_DEBUG + FRAMEWORKUNIFIEDLOG(ZONE_INFO, __FUNCTION__, " REV receive flag = TRUE "); +#endif + } + break; + } + case POSHAL_DID_SPEED_PULSE_FLAG_FST : + { + (void)memcpy( + reinterpret_cast(&(g_fst_sns_buf.spd_pulse_check_data[g_fst_sns_buf.spd_pulse_check_rcv_size + / sizeof(g_fst_sns_buf.spd_pulse_check_data[0])])), + (const void *)(&(rcv_sensor_msg_fst->uc_data[0])), + (size_t)(rev_data_size)); + + g_fst_sns_buf.spd_pulse_check_rcv_size = static_cast( + g_fst_sns_buf.spd_pulse_check_rcv_size + rev_data_size); + + if (g_fst_sns_buf.spd_pulse_check_rcv_size == rcv_sensor_msg_fst->us_size) { + g_sens_data_get_spdpulse_chk_fst_flg = TRUE; +#if DEAD_RECKONING_MAIN_DEBUG + FRAMEWORKUNIFIEDLOG(ZONE_INFO, __FUNCTION__, " SPF receive flag = TRUE "); +#endif + } + break; + } + case POSHAL_DID_SPEED_PULSE_FST : + { + (void)memcpy( + reinterpret_cast(&(g_fst_sns_buf.spd_pulse_data[g_fst_sns_buf.spd_pulse_rcv_size + / sizeof(g_fst_sns_buf.spd_pulse_data[0])])), + (const void *)(&(rcv_sensor_msg_fst->uc_data[0])), + (size_t)(rev_data_size)); + + g_fst_sns_buf.spd_pulse_rcv_size = static_cast(g_fst_sns_buf.spd_pulse_rcv_size + \ + rev_data_size); + + if (g_fst_sns_buf.spd_pulse_rcv_size == rcv_sensor_msg_fst->us_size) { + g_sens_data_get_spdpulse_fst_flg = TRUE; +#if DEAD_RECKONING_MAIN_DEBUG + FRAMEWORKUNIFIEDLOG(ZONE_INFO, __FUNCTION__, " SP receive flag = TRUE "); +#endif + } + break; + } + case POSHAL_DID_GYRO_X_FST : + { + (void)memcpy( + reinterpret_cast(&(g_fst_sns_buf.gyro_x_data[g_fst_sns_buf.gyro_x_rcv_size + / sizeof(g_fst_sns_buf.gyro_x_data[0])])), + (const void *)(&(rcv_sensor_msg_fst->uc_data[0])), + (size_t)(rev_data_size)); + + g_fst_sns_buf.gyro_x_rcv_size = static_cast(g_fst_sns_buf.gyro_x_rcv_size + rev_data_size); + +#if DEAD_RECKONING_MAIN_DEBUG + FRAMEWORKUNIFIEDLOG(ZONE_INFO, __FUNCTION__, + " g_fst_sns_buf.gyro_x_rcv_size = %d, rcv_sensor_msg_fst->us_size = %d ", + g_fst_sns_buf.gyro_x_rcv_size, rcv_sensor_msg_fst->us_size); +#endif + if (g_fst_sns_buf.gyro_x_rcv_size == rcv_sensor_msg_fst->us_size) { + g_sens_data_get_gyro_x_fst_flg = TRUE; +#if DEAD_RECKONING_MAIN_DEBUG + FRAMEWORKUNIFIEDLOG(ZONE_INFO, __FUNCTION__, " GYRO_X receive flag = TRUE "); +#endif + } + break; + } + case POSHAL_DID_GYRO_Y_FST : + { + (void)memcpy( + reinterpret_cast(&(g_fst_sns_buf.gyro_y_data[g_fst_sns_buf.gyro_y_rcv_size + / sizeof(g_fst_sns_buf.gyro_y_data[0])])), + (const void *)(&(rcv_sensor_msg_fst->uc_data[0])), + (size_t)(rev_data_size)); + + g_fst_sns_buf.gyro_y_rcv_size = static_cast(g_fst_sns_buf.gyro_y_rcv_size + rev_data_size); + +#if DEAD_RECKONING_MAIN_DEBUG + FRAMEWORKUNIFIEDLOG(ZONE_INFO, __FUNCTION__, + " g_fst_sns_buf.gyro_y_rcv_size = %d, rcv_sensor_msg_fst->us_size = %d ", + g_fst_sns_buf.gyro_y_rcv_size, rcv_sensor_msg_fst->us_size); +#endif + if (g_fst_sns_buf.gyro_y_rcv_size == rcv_sensor_msg_fst->us_size) { + g_sens_data_get_gyro_y_fst_flg = TRUE; +#if DEAD_RECKONING_MAIN_DEBUG + FRAMEWORKUNIFIEDLOG(ZONE_INFO, __FUNCTION__, " GYRO_Y receive flag = TRUE "); +#endif + } + break; + } + case POSHAL_DID_GYRO_Z_FST : + { + (void)memcpy( + reinterpret_cast(&(g_fst_sns_buf.gyro_z_data[g_fst_sns_buf.gyro_z_rcv_size + / sizeof(g_fst_sns_buf.gyro_z_data[0])])), + (const void *)(&(rcv_sensor_msg_fst->uc_data[0])), + (size_t)(rev_data_size)); + + g_fst_sns_buf.gyro_z_rcv_size = static_cast(g_fst_sns_buf.gyro_z_rcv_size + rev_data_size); + +#if DEAD_RECKONING_MAIN_DEBUG + FRAMEWORKUNIFIEDLOG(ZONE_INFO, __FUNCTION__, + " g_fst_sns_buf.gyro_z_rcv_size = %d, rcv_sensor_msg_fst->us_size = %d ", + g_fst_sns_buf.gyro_z_rcv_size, rcv_sensor_msg_fst->us_size); +#endif + if (g_fst_sns_buf.gyro_z_rcv_size == rcv_sensor_msg_fst->us_size) { + g_sens_data_get_gyro_z_fst_flg = TRUE; +#if DEAD_RECKONING_MAIN_DEBUG + FRAMEWORKUNIFIEDLOG(ZONE_INFO, __FUNCTION__, " GYRO_Z receive flag = TRUE "); +#endif + } + break; + } + default: + break; + } + } else { + /* nop */ + } + + /* 4 data received? */ + if ((g_sens_data_get_sns_cnt_flg == TRUE) && + (g_sens_data_get_rev_flg == TRUE) && + (g_sens_data_get_gyro_x_flg == TRUE) && + (g_sens_data_get_gyro_y_flg == TRUE) && + (g_sens_data_get_gyro_z_flg == TRUE) && + (g_sens_data_get_spdpulse_flg == TRUE) && + (g_sens_data_get_spdpulse_chk_flg == TRUE)) { + /* Sensor data acquisition flag ON */ + g_sens_data_get_flg = TRUE; + + /* Set all flags to FALSE */ + g_sens_data_get_sns_cnt_flg = FALSE; + g_sens_data_get_gyro_x_flg = FALSE; + g_sens_data_get_gyro_y_flg = FALSE; + g_sens_data_get_gyro_z_flg = FALSE; + g_sens_data_get_rev_flg = FALSE; + g_sens_data_get_spdpulse_flg = FALSE; + g_sens_data_get_spdpulse_chk_flg = FALSE; + } + + /* 4 data received? */ + if ((g_sens_data_get_rev_fst_flg == TRUE) && + (g_sens_data_get_gyro_x_fst_flg == TRUE) && + (g_sens_data_get_gyro_y_fst_flg == TRUE) && + (g_sens_data_get_gyro_z_fst_flg == TRUE) && + (g_sens_data_get_spdpulse_fst_flg == TRUE) && + (g_sens_data_get_spdpulse_chk_fst_flg == TRUE)) { + /* Initial sensor data acquisition flag ON */ + g_fst_sens_data_get_flg = TRUE; + + /* Set all flags to FALSE */ + g_sens_data_get_gyro_x_fst_flg = FALSE; + g_sens_data_get_gyro_y_fst_flg = FALSE; + g_sens_data_get_gyro_z_fst_flg = FALSE; + g_sens_data_get_rev_fst_flg = FALSE; + g_sens_data_get_spdpulse_fst_flg = FALSE; + g_sens_data_get_spdpulse_chk_fst_flg = FALSE; + } + + DeadReckoningRcvMsgFstSens(msg, location_info, rcv_gps_msg, &send_gps_msg, &send_sensor_msg); + } } -//void DeadReckoningRcvMsgFstSens(const DEAD_RECKONING_RCVDATA *msg, DEAD_RECKONING_LONLAT_INFO *location_info, -// const SENSOR_MSG_GPSDATA_DAT *rcv_gps_msg, Struct_GpsData* send_gps_msg, -// Struct_SensData* send_sensor_msg) { -// AGL_ASSERT_NOT_TESTED(); // LCOV_EXCL_LINE 200: test assert -// /* Verifying Debug Log Simulator Mode -// Perform packet reading here to match some timing. -// However,,Differ between GPS and SENSOR. -// */ -// u_int8 fst_sens_send_num = 0U; -// /* For GPS data */ -// if (g_gps_data_get_flg == TRUE) { -//#if (DR_DEBUG == 1) /* PastModel002_DR_VEHICLE */ -// FRAMEWORKUNIFIEDLOG(ZONE_INFO, __FUNCTION__, -// "DeadReckoningRcvMsg SEND GPS_DATA: DID[0x%08X] DSIZE[%d] MSG_SIZE[%d] SNS_CNT[%d] \r\n", -// rcv_gps_msg.ulDid, rcv_gps_msg.ucData[4], msg->hdr.hdr.msgbodysize, rcv_gps_msg.ucSnsCnt); -//#endif -// -// if (1) { -// rcv_gps_msg = (const SENSOR_MSG_GPSDATA_DAT *)(&(msg->data[0])); -// /* #QAC confirmation Rule11.4 Use structure for member reference(Cast according to shared memory link IF) */ -// -// /* Set and pass the data part except header/footer */ -// send_gps_msg->sens_cnt = rcv_gps_msg->uc_sns_cnt; -// send_gps_msg->sens_cnt_flag = rcv_gps_msg->uc_gps_cnt_flag; -// send_gps_msg->gps_data_size = rcv_gps_msg->us_size; -// send_gps_msg->did = rcv_gps_msg->ul_did; -// send_gps_msg->gps_data = (const void *)(&rcv_gps_msg->uc_data[0]); -// } -// -// /* Providing GPS data to DR_Lib */ -// -// g_gps_data_get_flg = FALSE; -// -// } else if (g_sens_data_get_flg == TRUE) { -// Struct_DR_DATA rcv_dr_data; -// DR_CALC_INFO rcv_dr_calc_info; -// DEADRECKONING_DATA_MASTER send_data_master; -// -// if (1) { -// /* Each data is stored in the data format for transmission. */ -// send_sensor_msg->sens_cnt_flag = 1U; -// send_sensor_msg->sens_cnt = g_sns_buf[0].data[0]; -// send_sensor_msg->pulse_rev_tbl.reverse_flag = g_sns_buf[1].data[0]; -// send_sensor_msg->pulse_rev_tbl.pulse_flag = g_sns_buf[2].data[0]; -// send_sensor_msg->pulse_rev_tbl.pulse_sum_cyclic = static_cast( -// ((((u_int16)g_sns_buf[3].data[0] << 0) & DR_MASK_WORD_L) | -// (((u_int16)g_sns_buf[3].data[1] << 8) & DR_MASK_WORD_U))); -// /* ToDo */ -// (void)memcpy(reinterpret_cast(&(send_sensor_msg->gyro_tbl.gyro_data[0])), -// (const void *)(&(g_sns_buf[4].data[0])), sizeof(u_int16) * NUM_OF_100msData); -// } -// -//#if (DR_DEBUG == 1) /* PastModel002_DR_VEHICLE */ -// FRAMEWORKUNIFIEDLOG(ZONE_INFO, __FUNCTION__, "DeadReckoningRcvMsg SEND SENSOR_COUNTER %d \r\n", -// send_sensor_msg->sens_cnt); -//#endif -// -// /* When the sensor data are ready, Call the DR-calculation process. */ -// memset(&rcv_dr_data, 0x00, sizeof(rcv_dr_data)); /* Coverity CID:18805 compliant */ -// memset(&rcv_dr_calc_info, 0x00, sizeof(rcv_dr_calc_info)); /* Coverity CID:18806 compliant */ -// -// location_info->calc_called = static_cast(TRUE); -// location_info->lonlat.latitude = static_cast(rcv_dr_data.latitude); -// location_info->lonlat.longitude = static_cast(rcv_dr_data.longitude); -// -// if (rcv_dr_data.dr_status != static_cast(SENSORLOCATION_DRSTATUS_INVALID)) { -// location_info->available = static_cast(TRUE); -// } else { -// location_info->available = static_cast(FALSE); -// } -// -// /* Changing the order of registration and delivery of the out structure to the data master for DR */ -// -// send_data_master.ul_did = VEHICLE_DID_DR_SNS_COUNTER; -// send_data_master.us_size = VEHICLE_DSIZE_DR_SNS_COUNTER; -// send_data_master.uc_rcv_flag = 1; -// send_data_master.dr_status = rcv_dr_data.dr_status; -// (void)memcpy(reinterpret_cast(&(send_data_master.uc_data[0])), -// (const void *)(&(rcv_dr_data.positioning_time)), (size_t)VEHICLE_DSIZE_DR_SNS_COUNTER); -// DeadReckoningSetDataMaster(&send_data_master, (PFUNC_DR_DMASTER_SET_N)DeadReckoningDeliveryProc); -// -// send_data_master.ul_did = VEHICLE_DID_DR_LONGITUDE; -// send_data_master.us_size = VEHICLE_DSIZE_LONGITUDE; -// send_data_master.uc_rcv_flag = 1; -// send_data_master.dr_status = rcv_dr_data.dr_status; -// (void)memcpy(reinterpret_cast(&(send_data_master.uc_data[0])), -// (const void *)(&(rcv_dr_data.longitude)), (size_t)VEHICLE_DSIZE_LONGITUDE); -// DeadReckoningSetDataMaster(&send_data_master, (PFUNC_DR_DMASTER_SET_N)DeadReckoningDeliveryProc); -// -// send_data_master.ul_did = VEHICLE_DID_DR_LATITUDE; -// send_data_master.us_size = VEHICLE_DSIZE_LATITUDE; -// send_data_master.uc_rcv_flag = 1; -// send_data_master.dr_status = rcv_dr_data.dr_status; -// (void)memcpy(reinterpret_cast(&(send_data_master.uc_data[0])), -// (const void *)(&(rcv_dr_data.latitude)), (size_t)VEHICLE_DSIZE_LATITUDE); -// DeadReckoningSetDataMaster(&send_data_master, (PFUNC_DR_DMASTER_SET_N)DeadReckoningDeliveryProc); -// -// send_data_master.ul_did = VEHICLE_DID_DR_ALTITUDE; -// send_data_master.us_size = VEHICLE_DSIZE_ALTITUDE; -// send_data_master.uc_rcv_flag = 1; -// send_data_master.dr_status = rcv_dr_data.dr_status; -// (void)memcpy(reinterpret_cast(&(send_data_master.uc_data[0])), -// (const void *)(&(rcv_dr_data.altitude)), (size_t)VEHICLE_DSIZE_ALTITUDE); -// DeadReckoningSetDataMaster(&send_data_master, (PFUNC_DR_DMASTER_SET_N)DeadReckoningDeliveryProc); -// -// send_data_master.ul_did = VEHICLE_DID_DR_SPEED; -// send_data_master.us_size = VEHICLE_DSIZE_SPEED; -// send_data_master.uc_rcv_flag = 1; -// send_data_master.dr_status = rcv_dr_data.dr_status; -// (void)memcpy(reinterpret_cast(&(send_data_master.uc_data[0])), -// (const void *)(&(rcv_dr_data.rate)), (size_t)VEHICLE_DSIZE_SPEED); -// DeadReckoningSetDataMaster(&send_data_master, (PFUNC_DR_DMASTER_SET_N)DeadReckoningDeliveryProc); -// -// send_data_master.ul_did = VEHICLE_DID_DR_HEADING; -// send_data_master.us_size = VEHICLE_DSIZE_HEADING; -// send_data_master.uc_rcv_flag = 1; -// send_data_master.dr_status = rcv_dr_data.dr_status; -// (void)memcpy(reinterpret_cast(&(send_data_master.uc_data[0])), -// (const void *)(&(rcv_dr_data.heading)), (size_t)VEHICLE_DSIZE_HEADING); -// DeadReckoningSetDataMaster(&send_data_master, (PFUNC_DR_DMASTER_SET_N)DeadReckoningDeliveryProc); -// -// /* Data master setting,Data delivery(GyroParameter) */ -// /* As it is registered for delivery with DID = VEHICLE_DID_DR_GYRO_SCALE_FACTOR_LEVEL */ -// /* Process in GyroOffset-> GyroScaleFactor-> GyroScelFactorLevel order(Processing order cannot be changed.) */ -// send_data_master.ul_did = VEHICLE_DID_DR_GYRO_OFFSET; -// send_data_master.us_size = VEHICLE_DSIZE_GYRO_OFFSET; -// send_data_master.uc_rcv_flag = DEADRECKONING_RCVFLAG_ON; -// send_data_master.dr_status = 0U; /* Not used */ -// (void)memcpy(reinterpret_cast(&(send_data_master.uc_data[0])), -// reinterpret_cast(&(rcv_dr_calc_info.gyro_offset)), (size_t)send_data_master.us_size); -// DeadReckoningSetDataMaster(&send_data_master, (PFUNC_DR_DMASTER_SET_N)DeadReckoningDeliveryProc); -// -// send_data_master.ul_did = VEHICLE_DID_DR_GYRO_SCALE_FACTOR; -// send_data_master.us_size = VEHICLE_DSIZE_GYRO_SCALE_FACTOR; -// send_data_master.uc_rcv_flag = DEADRECKONING_RCVFLAG_ON; -// send_data_master.dr_status = 0U; /* Not used */ -// (void)memcpy(reinterpret_cast(&(send_data_master.uc_data[0])), -// reinterpret_cast(&(rcv_dr_calc_info.gyro_scale_factor)), -// (size_t)send_data_master.us_size); -// DeadReckoningSetDataMaster(&send_data_master, (PFUNC_DR_DMASTER_SET_N)DeadReckoningDeliveryProc); -// -// send_data_master.ul_did = VEHICLE_DID_DR_GYRO_SCALE_FACTOR_LEVEL; -// send_data_master.us_size = VEHICLE_DSIZE_GYRO_SCALE_FACTOR_LEVEL; -// send_data_master.uc_rcv_flag = DEADRECKONING_RCVFLAG_ON; -// send_data_master.dr_status = 0U; /* Not used */ -// (void)memcpy(reinterpret_cast(&(send_data_master.uc_data[0])), -// reinterpret_cast(&(rcv_dr_calc_info.gyro_scale_factor_level)), -// (size_t)(send_data_master.us_size)); -// DeadReckoningSetDataMaster(&send_data_master, (PFUNC_DR_DMASTER_SET_N)DeadReckoningDeliveryProc); -// -// /* Data master setting,Data delivery(SpeedPulseParameter) */ -// /* As it is registered for delivery with DID = VEHICLE_DID_DR_SPEED_PULSE_SCALE_FACTOR_LEVEL */ -// /* Process in SpeedPulseScaleFactor-> SpeedPulseScaleFactorLevel order(Processing order cannot be changed.) */ -// send_data_master.ul_did = VEHICLE_DID_DR_SPEED_PULSE_SCALE_FACTOR; -// send_data_master.us_size = VEHICLE_DSIZE_SPEED_PULSE_SCALE_FACTOR; -// send_data_master.uc_rcv_flag = DEADRECKONING_RCVFLAG_ON; -// send_data_master.dr_status = 0U; /* Not used */ -// (void)memcpy(reinterpret_cast(&(send_data_master.uc_data[0])), -// reinterpret_cast(&(rcv_dr_calc_info.speed_pulse_scale_factor)), -// (size_t)(send_data_master.us_size)); -// DeadReckoningSetDataMaster(&send_data_master, (PFUNC_DR_DMASTER_SET_N)DeadReckoningDeliveryProc); -// -// send_data_master.ul_did = VEHICLE_DID_DR_SPEED_PULSE_SCALE_FACTOR_LEVEL; -// send_data_master.us_size = VEHICLE_DSIZE_SPEED_PULSE_SCALE_FACTOR_LEVEL; -// send_data_master.uc_rcv_flag = DEADRECKONING_RCVFLAG_ON; -// send_data_master.dr_status = 0U; /* Not used */ -// (void)memcpy(reinterpret_cast(&(send_data_master.uc_data[0])), -// reinterpret_cast(&(rcv_dr_calc_info.speed_pulse_scale_factor_level)), -// (size_t)(send_data_master.us_size)); -// DeadReckoningSetDataMaster(&send_data_master, (PFUNC_DR_DMASTER_SET_N)DeadReckoningDeliveryProc); -// -// g_sens_data_get_flg = FALSE; -// } else if (g_fst_sens_data_get_flg == TRUE) { -//#if (DR_DEBUG == 1) /* PastModel002_DR_VEHICLE */ -// FRAMEWORKUNIFIEDLOG(ZONE_INFO, __FUNCTION__, "DeadReckoningRcvMsg FstSnsData -> DeadReckoningLibrary. \r\n"); -//#endif -// for (fst_sens_send_num = 0; fst_sens_send_num < g_fst_sns_buf.data_num; fst_sens_send_num++) { -// /* Each data is stored in the data format for transmission. */ -// send_sensor_msg->sens_cnt_flag = 0U; -// send_sensor_msg->sens_cnt = 0U; -// send_sensor_msg->pulse_rev_tbl.reverse_flag = g_fst_sns_buf.rev_data[fst_sens_send_num]; -// send_sensor_msg->pulse_rev_tbl.pulse_flag = g_fst_sns_buf.spd_pulse_check_data[fst_sens_send_num]; -// send_sensor_msg->pulse_rev_tbl.pulse_sum_cyclic = g_fst_sns_buf.spd_pulse_data[fst_sens_send_num]; -// (void)memcpy(reinterpret_cast(&(send_sensor_msg->gyro_tbl.gyro_data[0])), -// (const void *)(&(g_fst_sns_buf.gyro_data[fst_sens_send_num * NUM_OF_100msData])), -// (size_t)((sizeof(g_fst_sns_buf.gyro_data[fst_sens_send_num])) * NUM_OF_100msData)); -// -//#if (DR_DEBUG == 1) /* PastModel002_DR_VEHICLE */ -// FRAMEWORKUNIFIEDLOG(ZONE_INFO, __FUNCTION__, "DeadReckoningRcvMsg send_sensor_msg.sens_cnt_flag %d \r\n", -// send_sensor_msg->sens_cnt_flag); -// FRAMEWORKUNIFIEDLOG(ZONE_INFO, __FUNCTION__, "DeadReckoningRcvMsg SEND SENSOR_COUNTER %d \r\n", -// send_sensor_msg->sens_cnt); -//#endif -// -// /* Sleep to reduce CPU load */ -// MilliSecSleep(DR_FST_SENS_CALC_SLEEP_TIME); -// -// /* When the sensor data are ready, Call the DR-calculation process. */ -// } -// -// g_sens_data_get_flg = FALSE; -// -// g_fst_sens_data_get_flg = FALSE; -// -// } else { -// /* nop */ -// } -//} +void DeadReckoningRcvMsgFstSens(const DEAD_RECKONING_RCVDATA *msg, DEAD_RECKONING_LONLAT_INFO *location_info, + const SENSOR_MSG_GPSDATA_DAT *rcv_gps_msg, Struct_GpsData* send_gps_msg, + Struct_SensData* send_sensor_msg) { + AGL_ASSERT_NOT_TESTED(); // LCOV_EXCL_LINE 200: test assert + /* Verifying Debug Log Simulator Mode + Perform packet reading here to match some timing. + However,,Differ between GPS and SENSOR. + */ + u_int8 fst_sens_send_num = 0U; + /* For GPS data */ + if (g_gps_data_get_flg == TRUE) { +#if (DR_DEBUG == 1) /* PastModel002_DR_VEHICLE */ + FRAMEWORKUNIFIEDLOG(ZONE_INFO, __FUNCTION__, + "DeadReckoningRcvMsg SEND GPS_DATA: DID[0x%08X] DSIZE[%d] MSG_SIZE[%d] SNS_CNT[%d] \r\n", + rcv_gps_msg.ulDid, rcv_gps_msg.ucData[4], msg->hdr.hdr.msgbodysize, rcv_gps_msg.ucSnsCnt); +#endif + + if (1) { + rcv_gps_msg = (const SENSOR_MSG_GPSDATA_DAT *)(&(msg->data[0])); + /* #QAC confirmation Rule11.4 Use structure for member reference(Cast according to shared memory link IF) */ + + /* Set and pass the data part except header/footer */ + send_gps_msg->sens_cnt = rcv_gps_msg->uc_sns_cnt; + send_gps_msg->sens_cnt_flag = rcv_gps_msg->uc_gps_cnt_flag; + send_gps_msg->gps_data_size = rcv_gps_msg->us_size; + send_gps_msg->did = rcv_gps_msg->ul_did; + send_gps_msg->gps_data = (const void *)(&rcv_gps_msg->uc_data[0]); + } + + /* Providing GPS data to DR_Lib */ + + g_gps_data_get_flg = FALSE; + + } else if (g_sens_data_get_flg == TRUE) { + Struct_DR_DATA rcv_dr_data; + DR_CALC_INFO rcv_dr_calc_info; + DEADRECKONING_DATA_MASTER send_data_master; + + if (1) { + /* Each data is stored in the data format for transmission. */ + send_sensor_msg->sens_cnt_flag = 1U; + send_sensor_msg->sens_cnt = g_sns_buf[0].data[0]; + send_sensor_msg->pulse_rev_tbl.reverse_flag = g_sns_buf[1].data[0]; + send_sensor_msg->pulse_rev_tbl.pulse_flag = g_sns_buf[2].data[0]; + send_sensor_msg->pulse_rev_tbl.pulse_sum_cyclic = static_cast( + ((((u_int16)g_sns_buf[3].data[0] << 0) & DR_MASK_WORD_L) | + (((u_int16)g_sns_buf[3].data[1] << 8) & DR_MASK_WORD_U))); + /* ToDo */ + (void)memcpy(reinterpret_cast(&(send_sensor_msg->gyro_x_tbl.gyro_data[0])), + (const void *)(&(g_sns_buf[4].data[0])), sizeof(u_int16) * NUM_OF_100msData); + (void)memcpy(reinterpret_cast(&(send_sensor_msg->gyro_y_tbl.gyro_data[0])), + (const void *)(&(g_sns_buf[5].data[0])), sizeof(u_int16) * NUM_OF_100msData); + (void)memcpy(reinterpret_cast(&(send_sensor_msg->gyro_z_tbl.gyro_data[0])), + (const void *)(&(g_sns_buf[6].data[0])), sizeof(u_int16) * NUM_OF_100msData); + } + +#if (DR_DEBUG == 1) /* PastModel002_DR_VEHICLE */ + FRAMEWORKUNIFIEDLOG(ZONE_INFO, __FUNCTION__, "DeadReckoningRcvMsg SEND SENSOR_COUNTER %d \r\n", + send_sensor_msg->sens_cnt); +#endif + + /* When the sensor data are ready, Call the DR-calculation process. */ + memset(&rcv_dr_data, 0x00, sizeof(rcv_dr_data)); /* Coverity CID:18805 compliant */ + memset(&rcv_dr_calc_info, 0x00, sizeof(rcv_dr_calc_info)); /* Coverity CID:18806 compliant */ + + location_info->calc_called = static_cast(TRUE); + location_info->lonlat.latitude = static_cast(rcv_dr_data.latitude); + location_info->lonlat.longitude = static_cast(rcv_dr_data.longitude); + + if (rcv_dr_data.dr_status != static_cast(SENSORLOCATION_DRSTATUS_INVALID)) { + location_info->available = static_cast(TRUE); + } else { + location_info->available = static_cast(FALSE); + } + + /* Changing the order of registration and delivery of the out structure to the data master for DR */ + + send_data_master.ul_did = VEHICLE_DID_DR_SNS_COUNTER; + send_data_master.us_size = VEHICLE_DSIZE_DR_SNS_COUNTER; + send_data_master.uc_rcv_flag = 1; + send_data_master.dr_status = rcv_dr_data.dr_status; + (void)memcpy(reinterpret_cast(&(send_data_master.uc_data[0])), + (const void *)(&(rcv_dr_data.positioning_time)), (size_t)VEHICLE_DSIZE_DR_SNS_COUNTER); + DeadReckoningSetDataMaster(&send_data_master, (PFUNC_DR_DMASTER_SET_N)DeadReckoningDeliveryProc); + + send_data_master.ul_did = VEHICLE_DID_DR_LONGITUDE; + send_data_master.us_size = VEHICLE_DSIZE_LONGITUDE; + send_data_master.uc_rcv_flag = 1; + send_data_master.dr_status = rcv_dr_data.dr_status; + (void)memcpy(reinterpret_cast(&(send_data_master.uc_data[0])), + (const void *)(&(rcv_dr_data.longitude)), (size_t)VEHICLE_DSIZE_LONGITUDE); + DeadReckoningSetDataMaster(&send_data_master, (PFUNC_DR_DMASTER_SET_N)DeadReckoningDeliveryProc); + + send_data_master.ul_did = VEHICLE_DID_DR_LATITUDE; + send_data_master.us_size = VEHICLE_DSIZE_LATITUDE; + send_data_master.uc_rcv_flag = 1; + send_data_master.dr_status = rcv_dr_data.dr_status; + (void)memcpy(reinterpret_cast(&(send_data_master.uc_data[0])), + (const void *)(&(rcv_dr_data.latitude)), (size_t)VEHICLE_DSIZE_LATITUDE); + DeadReckoningSetDataMaster(&send_data_master, (PFUNC_DR_DMASTER_SET_N)DeadReckoningDeliveryProc); + + send_data_master.ul_did = VEHICLE_DID_DR_ALTITUDE; + send_data_master.us_size = VEHICLE_DSIZE_ALTITUDE; + send_data_master.uc_rcv_flag = 1; + send_data_master.dr_status = rcv_dr_data.dr_status; + (void)memcpy(reinterpret_cast(&(send_data_master.uc_data[0])), + (const void *)(&(rcv_dr_data.altitude)), (size_t)VEHICLE_DSIZE_ALTITUDE); + DeadReckoningSetDataMaster(&send_data_master, (PFUNC_DR_DMASTER_SET_N)DeadReckoningDeliveryProc); + + send_data_master.ul_did = VEHICLE_DID_DR_SPEED; + send_data_master.us_size = VEHICLE_DSIZE_SPEED; + send_data_master.uc_rcv_flag = 1; + send_data_master.dr_status = rcv_dr_data.dr_status; + (void)memcpy(reinterpret_cast(&(send_data_master.uc_data[0])), + (const void *)(&(rcv_dr_data.rate)), (size_t)VEHICLE_DSIZE_SPEED); + DeadReckoningSetDataMaster(&send_data_master, (PFUNC_DR_DMASTER_SET_N)DeadReckoningDeliveryProc); + + send_data_master.ul_did = VEHICLE_DID_DR_HEADING; + send_data_master.us_size = VEHICLE_DSIZE_HEADING; + send_data_master.uc_rcv_flag = 1; + send_data_master.dr_status = rcv_dr_data.dr_status; + (void)memcpy(reinterpret_cast(&(send_data_master.uc_data[0])), + (const void *)(&(rcv_dr_data.heading)), (size_t)VEHICLE_DSIZE_HEADING); + DeadReckoningSetDataMaster(&send_data_master, (PFUNC_DR_DMASTER_SET_N)DeadReckoningDeliveryProc); + + /* Data master setting,Data delivery(GyroParameter) */ + /* As it is registered for delivery with DID = VEHICLE_DID_DR_GYRO_SCALE_FACTOR_LEVEL */ + /* Process in GyroOffset-> GyroScaleFactor-> GyroScelFactorLevel order(Processing order cannot be changed.) */ + send_data_master.ul_did = VEHICLE_DID_DR_GYRO_OFFSET; + send_data_master.us_size = VEHICLE_DSIZE_GYRO_OFFSET; + send_data_master.uc_rcv_flag = DEADRECKONING_RCVFLAG_ON; + send_data_master.dr_status = 0U; /* Not used */ + (void)memcpy(reinterpret_cast(&(send_data_master.uc_data[0])), + reinterpret_cast(&(rcv_dr_calc_info.gyro_offset)), (size_t)send_data_master.us_size); + DeadReckoningSetDataMaster(&send_data_master, (PFUNC_DR_DMASTER_SET_N)DeadReckoningDeliveryProc); + + send_data_master.ul_did = VEHICLE_DID_DR_GYRO_SCALE_FACTOR; + send_data_master.us_size = VEHICLE_DSIZE_GYRO_SCALE_FACTOR; + send_data_master.uc_rcv_flag = DEADRECKONING_RCVFLAG_ON; + send_data_master.dr_status = 0U; /* Not used */ + (void)memcpy(reinterpret_cast(&(send_data_master.uc_data[0])), + reinterpret_cast(&(rcv_dr_calc_info.gyro_scale_factor)), + (size_t)send_data_master.us_size); + DeadReckoningSetDataMaster(&send_data_master, (PFUNC_DR_DMASTER_SET_N)DeadReckoningDeliveryProc); + + send_data_master.ul_did = VEHICLE_DID_DR_GYRO_SCALE_FACTOR_LEVEL; + send_data_master.us_size = VEHICLE_DSIZE_GYRO_SCALE_FACTOR_LEVEL; + send_data_master.uc_rcv_flag = DEADRECKONING_RCVFLAG_ON; + send_data_master.dr_status = 0U; /* Not used */ + (void)memcpy(reinterpret_cast(&(send_data_master.uc_data[0])), + reinterpret_cast(&(rcv_dr_calc_info.gyro_scale_factor_level)), + (size_t)(send_data_master.us_size)); + DeadReckoningSetDataMaster(&send_data_master, (PFUNC_DR_DMASTER_SET_N)DeadReckoningDeliveryProc); + + /* Data master setting,Data delivery(SpeedPulseParameter) */ + /* As it is registered for delivery with DID = VEHICLE_DID_DR_SPEED_PULSE_SCALE_FACTOR_LEVEL */ + /* Process in SpeedPulseScaleFactor-> SpeedPulseScaleFactorLevel order(Processing order cannot be changed.) */ + send_data_master.ul_did = VEHICLE_DID_DR_SPEED_PULSE_SCALE_FACTOR; + send_data_master.us_size = VEHICLE_DSIZE_SPEED_PULSE_SCALE_FACTOR; + send_data_master.uc_rcv_flag = DEADRECKONING_RCVFLAG_ON; + send_data_master.dr_status = 0U; /* Not used */ + (void)memcpy(reinterpret_cast(&(send_data_master.uc_data[0])), + reinterpret_cast(&(rcv_dr_calc_info.speed_pulse_scale_factor)), + (size_t)(send_data_master.us_size)); + DeadReckoningSetDataMaster(&send_data_master, (PFUNC_DR_DMASTER_SET_N)DeadReckoningDeliveryProc); + + send_data_master.ul_did = VEHICLE_DID_DR_SPEED_PULSE_SCALE_FACTOR_LEVEL; + send_data_master.us_size = VEHICLE_DSIZE_SPEED_PULSE_SCALE_FACTOR_LEVEL; + send_data_master.uc_rcv_flag = DEADRECKONING_RCVFLAG_ON; + send_data_master.dr_status = 0U; /* Not used */ + (void)memcpy(reinterpret_cast(&(send_data_master.uc_data[0])), + reinterpret_cast(&(rcv_dr_calc_info.speed_pulse_scale_factor_level)), + (size_t)(send_data_master.us_size)); + DeadReckoningSetDataMaster(&send_data_master, (PFUNC_DR_DMASTER_SET_N)DeadReckoningDeliveryProc); + + g_sens_data_get_flg = FALSE; + } else if (g_fst_sens_data_get_flg == TRUE) { +#if (DR_DEBUG == 1) /* PastModel002_DR_VEHICLE */ + FRAMEWORKUNIFIEDLOG(ZONE_INFO, __FUNCTION__, "DeadReckoningRcvMsg FstSnsData -> DeadReckoningLibrary. \r\n"); +#endif + for (fst_sens_send_num = 0; fst_sens_send_num < g_fst_sns_buf.data_num; fst_sens_send_num++) { + /* Each data is stored in the data format for transmission. */ + send_sensor_msg->sens_cnt_flag = 0U; + send_sensor_msg->sens_cnt = 0U; + send_sensor_msg->pulse_rev_tbl.reverse_flag = g_fst_sns_buf.rev_data[fst_sens_send_num]; + send_sensor_msg->pulse_rev_tbl.pulse_flag = g_fst_sns_buf.spd_pulse_check_data[fst_sens_send_num]; + send_sensor_msg->pulse_rev_tbl.pulse_sum_cyclic = g_fst_sns_buf.spd_pulse_data[fst_sens_send_num]; + (void)memcpy(reinterpret_cast(&(send_sensor_msg->gyro_x_tbl.gyro_data[0])), + (const void *)(&(g_fst_sns_buf.gyro_x_data[fst_sens_send_num * NUM_OF_100msData])), + (size_t)((sizeof(g_fst_sns_buf.gyro_x_data[fst_sens_send_num])) * NUM_OF_100msData)); + (void)memcpy(reinterpret_cast(&(send_sensor_msg->gyro_y_tbl.gyro_data[0])), + (const void *)(&(g_fst_sns_buf.gyro_y_data[fst_sens_send_num * NUM_OF_100msData])), + (size_t)((sizeof(g_fst_sns_buf.gyro_y_data[fst_sens_send_num])) * NUM_OF_100msData)); + (void)memcpy(reinterpret_cast(&(send_sensor_msg->gyro_z_tbl.gyro_data[0])), + (const void *)(&(g_fst_sns_buf.gyro_z_data[fst_sens_send_num * NUM_OF_100msData])), + (size_t)((sizeof(g_fst_sns_buf.gyro_z_data[fst_sens_send_num])) * NUM_OF_100msData)); + +#if (DR_DEBUG == 1) /* PastModel002_DR_VEHICLE */ + FRAMEWORKUNIFIEDLOG(ZONE_INFO, __FUNCTION__, "DeadReckoningRcvMsg send_sensor_msg.sens_cnt_flag %d \r\n", + send_sensor_msg->sens_cnt_flag); + FRAMEWORKUNIFIEDLOG(ZONE_INFO, __FUNCTION__, "DeadReckoningRcvMsg SEND SENSOR_COUNTER %d \r\n", + send_sensor_msg->sens_cnt); +#endif + + /* Sleep to reduce CPU load */ + MilliSecSleep(DR_FST_SENS_CALC_SLEEP_TIME); + + /* When the sensor data are ready, Call the DR-calculation process. */ + } + + g_sens_data_get_flg = FALSE; + + g_fst_sens_data_get_flg = FALSE; + + } else { + /* nop */ + } +} /******************************************************************************* * MODULE : DeadReckoningGetDRData diff --git a/positioning/server/src/Sensor/GpsInt.cpp b/positioning/server/src/Sensor/GpsInt.cpp index a23cc3eb..75fb8903 100644 --- a/positioning/server/src/Sensor/GpsInt.cpp +++ b/positioning/server/src/Sensor/GpsInt.cpp @@ -1,5 +1,5 @@ /* - * @copyright Copyright (c) 2016-2019 TOYOTA MOTOR CORPORATION. + * @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. diff --git a/positioning/server/src/Sensor/Makefile b/positioning/server/src/Sensor/Makefile index eecc8189..bb702293 100644 --- a/positioning/server/src/Sensor/Makefile +++ b/positioning/server/src/Sensor/Makefile @@ -1,5 +1,5 @@ # -# @copyright Copyright (c) 2016-2019 TOYOTA MOTOR CORPORATION. +# @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. @@ -38,7 +38,6 @@ libPOS_Sensor_SRCS += VehicleUtility.cpp libPOS_Sensor_SRCS += GpsInt.cpp libPOS_Sensor_SRCS += VehicleSens_Thread.cpp libPOS_Sensor_SRCS += VehicleSens_FromAccess.cpp -libPOS_Sensor_SRCS += VehicleSens_FromMng.cpp libPOS_Sensor_SRCS += VehicleSens_Common.cpp libPOS_Sensor_SRCS += VehicleSens_SelectionItemList.cpp libPOS_Sensor_SRCS += VehicleSens_SharedMemory.cpp @@ -54,12 +53,18 @@ libPOS_Sensor_SRCS += VehicleSens_Did_Nav_Clock_g.cpp libPOS_Sensor_SRCS += VehicleSens_Did_SysGpsInterruptSignal.cpp libPOS_Sensor_SRCS += VehicleSens_Did_SnsCounter_l.cpp libPOS_Sensor_SRCS += VehicleSens_Did_GyroExt_l.cpp -libPOS_Sensor_SRCS += VehicleSens_Did_Gyro.cpp +libPOS_Sensor_SRCS += VehicleSens_Did_GyroYExt_l.cpp +libPOS_Sensor_SRCS += VehicleSens_Did_GyroZExt_l.cpp +libPOS_Sensor_SRCS += VehicleSens_Did_GyroX.cpp +libPOS_Sensor_SRCS += VehicleSens_Did_GyroY.cpp +libPOS_Sensor_SRCS += VehicleSens_Did_GyroZ.cpp libPOS_Sensor_SRCS += VehicleSens_Did_Nav_Dop_g.cpp libPOS_Sensor_SRCS += VehicleSens_Did_GyroTrouble.cpp libPOS_Sensor_SRCS += VehicleSens_Did_SnsCounterExt_l.cpp libPOS_Sensor_SRCS += VehicleSens_Did_Gps_CWORD82__CWORD44_Gp4_g.cpp -libPOS_Sensor_SRCS += VehicleSens_Did_Gyro_l.cpp +libPOS_Sensor_SRCS += VehicleSens_Did_GyroX_l.cpp +libPOS_Sensor_SRCS += VehicleSens_Did_GyroY_l.cpp +libPOS_Sensor_SRCS += VehicleSens_Did_GyroZ_l.cpp libPOS_Sensor_SRCS += VehicleSens_Did_GyroConnectStatus.cpp libPOS_Sensor_SRCS += VehicleSens_Did_RevFst_l.cpp libPOS_Sensor_SRCS += VehicleSens_Did_RevExt_l.cpp @@ -72,7 +77,9 @@ libPOS_Sensor_SRCS += VehicleSens_Did_Nav_TimeUtc_g.cpp libPOS_Sensor_SRCS += VehicleSens_Did_SpeedPulseFlagFst_l.cpp libPOS_Sensor_SRCS += VehicleSens_Did_SnsCounter.cpp libPOS_Sensor_SRCS += VehicleSens_Did_SpeedPulseFst_l.cpp -libPOS_Sensor_SRCS += VehicleSens_Did_GyroFst_l.cpp +libPOS_Sensor_SRCS += VehicleSens_Did_GyroXFst_l.cpp +libPOS_Sensor_SRCS += VehicleSens_Did_GyroYFst_l.cpp +libPOS_Sensor_SRCS += VehicleSens_Did_GyroZFst_l.cpp libPOS_Sensor_SRCS += VehicleSens_Did_Nav_Status_g.cpp libPOS_Sensor_SRCS += VehicleSens_Did_Gps_CWORD82_Nmea_g.cpp libPOS_Sensor_SRCS += VehicleSens_Did_SpeedPulse.cpp @@ -106,6 +113,10 @@ libPOS_Sensor_SRCS += VehicleSens_Did_GsnsY.cpp libPOS_Sensor_SRCS += VehicleSens_Did_GsnsY_l.cpp libPOS_Sensor_SRCS += VehicleSens_Did_GsnsYExt_l.cpp libPOS_Sensor_SRCS += VehicleSens_Did_GsnsYFst_l.cpp +libPOS_Sensor_SRCS += VehicleSens_Did_GsnsZ.cpp +libPOS_Sensor_SRCS += VehicleSens_Did_GsnsZ_l.cpp +libPOS_Sensor_SRCS += VehicleSens_Did_GsnsZExt_l.cpp +libPOS_Sensor_SRCS += VehicleSens_Did_GsnsZFst_l.cpp libPOS_Sensor_SRCS += VehicleSens_Did_GyroTemp.cpp libPOS_Sensor_SRCS += VehicleSens_Did_GyroTemp_l.cpp libPOS_Sensor_SRCS += VehicleSens_Did_GyroTempExt_l.cpp @@ -135,26 +146,10 @@ libPOS_Sensor_SRCS += VehicleSens_DeliveryCtrl.cpp libPOS_Sensor_SRCS += SensorLog.cpp ######### add include path ############# -CPPFLAGS += -I./ CPPFLAGS += -I../../include/Sensor CPPFLAGS += -I../../include/nsfw -CPPFLAGS += -I../../include/common CPPFLAGS += -I../../include/ServiceInterface -CPPFLAGS += -I../../../client/ CPPFLAGS += -I../../../client/include -CPPFLAGS += -I../../../client/src/Vehicle_API/common -CPPFLAGS += -I../../../client/src/POS_sensor_API/common -CPPFLAGS += -I../../../client/src/POS_gps_API -CPPFLAGS += -I../../../client/src/POS_naviinfo_API/common -CPPFLAGS += -I../../../client/src/CanInput_API/common -CPPFLAGS += -I../../../client/src/SensorLocation_API/common -CPPFLAGS += -I../ServiceInterface/BackupMgrIf -CPPFLAGS += -I../ServiceInterface/ClockIf -CPPFLAGS += -I../ServiceInterface/CommunicationIf -CPPFLAGS += -I../ServiceInterface/CommUsbIf -CPPFLAGS += -I../ServiceInterface/DevDetectSrvIf -CPPFLAGS += -I../ServiceInterface/PSMShadowIf -CPPFLAGS += -I../ServiceInterface/DiagSrvIf CPPFLAGS += -I../ServiceInterface/VehicleIf CPPFLAGS += -I../nsfw/include @@ -164,7 +159,6 @@ CPPFLAGS += -I$(SDKTARGETSYSROOT)/usr/agl/include/vehicle_service ######### add compile option ############# CPPFLAGS += -DLINUX -CPPFLAGS += -DCONFIG_SENSOR_EXT_VALID=1 LDFLAGS += -Wl,--no-undefined LDFLAGS += -Wl,--no-as-needed @@ -178,5 +172,10 @@ CPPFLAGS += -Wformat ######### add library path ############# LDFLAGS += +INSTALL = install +CREATE_DIR = $(DESTDIR)/nv/BS/vs/positioning/rwdata +install-data: + $(INSTALL) -d -m 775 $(CREATE_DIR) + include ../../../../vehicle_service.mk diff --git a/positioning/server/src/Sensor/SensorLog.cpp b/positioning/server/src/Sensor/SensorLog.cpp index 7f22b150..eed514fd 100644 --- a/positioning/server/src/Sensor/SensorLog.cpp +++ b/positioning/server/src/Sensor/SensorLog.cpp @@ -1,5 +1,5 @@ /* - * @copyright Copyright (c) 2016-2019 TOYOTA MOTOR CORPORATION. + * @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. @@ -33,7 +33,7 @@ extern "C" { } #endif -//#include +#include #include #include "SensorLog.h" #include "Sensor_Common_API.h" @@ -78,7 +78,7 @@ typedef enum { #define SENSLOG_SEMAPHO_NAME ("SENSLOG_SEMAPHO") /* Semaphore name(MAX 32Byte) */ -#define SENSLOG_CONFIG_FILE_PATH_1 "/nv/log/frameworkunifiedlog/" /* Sensor log-Config filepath-1 */ +#define SENSLOG_CONFIG_FILE_PATH_1 "/nv/BS/vs/positioning/rwdata/" /* Sensor log-Config filepath-1 */ #define SENSLOG_CONFIG_FILE_PATH_2 "/mnt/sda1/" /* Sensor log-Config filepath-2 */ #define SENSLOG_CONFIG_FILE_NAME_SYS "POS_sys_log.cfg" /* Sensor log-Config filename-SYS */ #define SENSLOG_CONFIG_FILE_NAME_GPS "POS_gps_log.cfg" /* Sensor log-Config filename-GPS */ @@ -192,61 +192,67 @@ SemID g_sem_id = 0; /* Lock semaphore ID */ /* Sensor log type definition table */ const SENSLOG_ID_TBL kSensLogInputTbl[] = { /* Data type DID Sensor Log Type FRAMEWORKUNIFIEDLOG Output Type */ -// {SENSLOG_DATA_I_SYS, 0, SENSLOG_TYPE_SYS_INPUT, POS_SENSLOG_TYPE_SYS }, -// {SENSLOG_DATA_I_SYS_STS, 0, SENSLOG_TYPE_SYS_INPUT, POS_SENSLOG_TYPE_SYS }, -// {SENSLOG_DATA_I_GPS, 0, SENSLOG_TYPE_GPS_INPUT, POS_SENSLOG_TYPE_GPS }, -// {SENSLOG_DATA_I_LOC, POSHAL_DID_GPS_CUSTOMDATA_NAVI, SENSLOG_TYPE_NAVI_INPUT, POS_SENSLOG_TYPE_NAV }, -// {SENSLOG_DATA_I_SPEED, VEHICLE_DID_MOTION_SPEED_NAVI, SENSLOG_TYPE_NAVI_INPUT, POS_SENSLOG_TYPE_NAV }, -// {SENSLOG_DATA_I_TIME, VEHICLE_DID_SETTINGTIME, SENSLOG_TYPE_NAVI_INPUT, POS_SENSLOG_TYPE_NAV }, -// {SENSLOG_DATA_I_TIME, POSHAL_DID_GPS_TIME, SENSLOG_TYPE_GPS_INPUT, POS_SENSLOG_TYPE_GPS }, -// {SENSLOG_DATA_I_GPSINF, 0, SENSLOG_TYPE_NAVI_INPUT, POS_SENSLOG_TYPE_NAV }, -// {SENSLOG_DATA_I_GPSRST, 0, SENSLOG_TYPE_CMD_INPUT, POS_SENSLOG_TYPE_CMD }, -// {SENSLOG_DATA_I_GPSSET, 0, SENSLOG_TYPE_CMD_INPUT, POS_SENSLOG_TYPE_CMD }, -// {SENSLOG_DATA_I_NAVSVINFO, 0, SENSLOG_TYPE_GPS_INPUT, POS_SENSLOG_TYPE_GPS }, -// {SENSLOG_DATA_I_SYS_ABNORMAL, 0, SENSLOG_TYPE_SYS_INPUT, POS_SENSLOG_TYPE_SYS }, -// {SENSLOG_DATA_I_UNSPECIFIED, 0, SENSLOG_TYPE_COUNT, POS_SENSLOG_TYPE_NONE } + {SENSLOG_DATA_I_SYS, 0, SENSLOG_TYPE_SYS_INPUT, POS_SENSLOG_TYPE_SYS }, + {SENSLOG_DATA_I_SYS_STS, 0, SENSLOG_TYPE_SYS_INPUT, POS_SENSLOG_TYPE_SYS }, + {SENSLOG_DATA_I_GPS, 0, SENSLOG_TYPE_GPS_INPUT, POS_SENSLOG_TYPE_GPS }, + {SENSLOG_DATA_I_LOC, POSHAL_DID_GPS_CUSTOMDATA_NAVI, SENSLOG_TYPE_NAVI_INPUT, POS_SENSLOG_TYPE_NAV }, + {SENSLOG_DATA_I_SPEED, VEHICLE_DID_MOTION_SPEED_NAVI, SENSLOG_TYPE_NAVI_INPUT, POS_SENSLOG_TYPE_NAV }, + {SENSLOG_DATA_I_TIME, VEHICLE_DID_SETTINGTIME, SENSLOG_TYPE_NAVI_INPUT, POS_SENSLOG_TYPE_NAV }, + {SENSLOG_DATA_I_TIME, POSHAL_DID_GPS_TIME, SENSLOG_TYPE_GPS_INPUT, POS_SENSLOG_TYPE_GPS }, + {SENSLOG_DATA_I_GPSINF, 0, SENSLOG_TYPE_NAVI_INPUT, POS_SENSLOG_TYPE_NAV }, + {SENSLOG_DATA_I_GPSRST, 0, SENSLOG_TYPE_CMD_INPUT, POS_SENSLOG_TYPE_CMD }, + {SENSLOG_DATA_I_GPSSET, 0, SENSLOG_TYPE_CMD_INPUT, POS_SENSLOG_TYPE_CMD }, + {SENSLOG_DATA_I_NAVSVINFO, 0, SENSLOG_TYPE_GPS_INPUT, POS_SENSLOG_TYPE_GPS }, + {SENSLOG_DATA_I_SYS_ABNORMAL, 0, SENSLOG_TYPE_SYS_INPUT, POS_SENSLOG_TYPE_SYS }, + {SENSLOG_DATA_I_UNSPECIFIED, 0, SENSLOG_TYPE_COUNT, POS_SENSLOG_TYPE_NONE } }; const SENSLOG_ID_TBL kSensLogOutputTbl[] = { /* Data type DID Sensor Log Type FRAMEWORKUNIFIEDLOG Output Type */ -// {SENSLOG_DATA_O_SYS, POSHAL_DID_SPEED_PULSE, SENSLOG_TYPE_SYS_OUTPUT, POS_SENSLOG_TYPE_NONE }, -// {SENSLOG_DATA_O_SYS, POSHAL_DID_SPEED_KMPH, SENSLOG_TYPE_SYS_OUTPUT, POS_SENSLOG_TYPE_NONE }, -// {SENSLOG_DATA_O_SYS, POSHAL_DID_GYRO, SENSLOG_TYPE_SYS_OUTPUT, POS_SENSLOG_TYPE_NONE }, -// {SENSLOG_DATA_O_SYS, POSHAL_DID_GSNS_X, SENSLOG_TYPE_SYS_OUTPUT, POS_SENSLOG_TYPE_NONE }, -// {SENSLOG_DATA_O_SYS, POSHAL_DID_GSNS_Y, SENSLOG_TYPE_SYS_OUTPUT, POS_SENSLOG_TYPE_NONE }, -// {SENSLOG_DATA_O_SYS, POSHAL_DID_GPS_ANTENNA, SENSLOG_TYPE_SYS_OUTPUT, POS_SENSLOG_TYPE_NONE }, -// {SENSLOG_DATA_O_SYS, POSHAL_DID_SNS_COUNTER, SENSLOG_TYPE_SYS_OUTPUT, POS_SENSLOG_TYPE_NONE }, -// {SENSLOG_DATA_O_SYS, POSHAL_DID_SPEED_PULSE_FST, SENSLOG_TYPE_SYS_OUTPUT, POS_SENSLOG_TYPE_NONE }, -// {SENSLOG_DATA_O_SYS, POSHAL_DID_GYRO_FST, SENSLOG_TYPE_SYS_OUTPUT, POS_SENSLOG_TYPE_NONE }, -// {SENSLOG_DATA_O_SYS, VEHICLE_DID_GPS__CWORD82__NMEA, SENSLOG_TYPE_GPS_OUTPUT, POS_SENSLOG_TYPE_NONE }, -// {SENSLOG_DATA_O_SYS, POSHAL_DID_GPS__CWORD82___CWORD44_GP4, SENSLOG_TYPE_GPS_OUTPUT, POS_SENSLOG_TYPE_NONE }, -// {SENSLOG_DATA_O_SYS, POSHAL_DID_GPS__CWORD82__FULLBINARY, SENSLOG_TYPE_GPS_OUTPUT, POS_SENSLOG_TYPE_NONE }, -// {SENSLOG_DATA_O_SYS, POSHAL_DID_GPS_NMEA, SENSLOG_TYPE_GPS_OUTPUT, POS_SENSLOG_TYPE_NONE }, -// {SENSLOG_DATA_O_SYS, POSHAL_DID_REV, SENSLOG_TYPE_SYS_OUTPUT, POS_SENSLOG_TYPE_NONE }, -// {SENSLOG_DATA_O_SYS, POSHAL_DID_REV_FST, SENSLOG_TYPE_SYS_OUTPUT, POS_SENSLOG_TYPE_NONE }, -// {SENSLOG_DATA_O_SYS, POSHAL_DID_GYRO_TEMP, SENSLOG_TYPE_SYS_OUTPUT, POS_SENSLOG_TYPE_NONE }, -// {SENSLOG_DATA_O_SYS, POSHAL_DID_GYRO_TEMP_FST, SENSLOG_TYPE_SYS_OUTPUT, POS_SENSLOG_TYPE_NONE }, -// {SENSLOG_DATA_O_SYS, POSHAL_DID_GSNS_X_FST, SENSLOG_TYPE_SYS_OUTPUT, POS_SENSLOG_TYPE_NONE }, -// {SENSLOG_DATA_O_SYS, POSHAL_DID_GSNS_Y_FST, SENSLOG_TYPE_SYS_OUTPUT, POS_SENSLOG_TYPE_NONE }, -// {SENSLOG_DATA_O_SYS, POSHAL_DID_PULSE_TIME, SENSLOG_TYPE_SYS_OUTPUT, POS_SENSLOG_TYPE_NONE }, -// {SENSLOG_DATA_O_SYS, POSHAL_DID_GPS_CLOCK_DRIFT, SENSLOG_TYPE_GPS_OUTPUT, POS_SENSLOG_TYPE_NONE }, -// {SENSLOG_DATA_O_SYS, POSHAL_DID_GPS_CLOCK_FREQ, SENSLOG_TYPE_GPS_OUTPUT, POS_SENSLOG_TYPE_NONE }, -// {SENSLOG_DATA_O_SYS_PKG, 0, SENSLOG_TYPE_SYS_OUTPUT, POS_SENSLOG_TYPE_NONE }, -// {SENSLOG_DATA_O_GPS, 0, SENSLOG_TYPE_CMD_OUTPUT, POS_SENSLOG_TYPE_NONE }, -// {SENSLOG_DATA_O_LONLAT_N, VEHICLE_DID_LOCATION_LONLAT_NAVI, SENSLOG_TYPE_NAVI_OUTPUT, POS_SENSLOG_TYPE_NONE }, -// {SENSLOG_DATA_O_LONLAT_G, VEHICLE_DID_LOCATION_LONLAT, SENSLOG_TYPE_GPS_OUTPUT, POS_SENSLOG_TYPE_NONE }, -// {SENSLOG_DATA_O_ALT, VEHICLE_DID_LOCATION_ALTITUDE, SENSLOG_TYPE_GPS_OUTPUT, POS_SENSLOG_TYPE_NONE }, -// {SENSLOG_DATA_O_SPEED_N, VEHICLE_DID_MOTION_SPEED_NAVI, SENSLOG_TYPE_NAVI_OUTPUT, POS_SENSLOG_TYPE_NONE }, -// {SENSLOG_DATA_O_SPEED_P, VEHICLE_DID_MOTION_SPEED_INTERNAL, SENSLOG_TYPE_POS_OUTPUT, POS_SENSLOG_TYPE_NONE }, -// {SENSLOG_DATA_O_HEAD_N, VEHICLE_DID_MOTION_HEADING_NAVI, SENSLOG_TYPE_NAVI_OUTPUT, POS_SENSLOG_TYPE_NONE }, -// {SENSLOG_DATA_O_HEAD_G, VEHICLE_DID_MOTION_HEADING, SENSLOG_TYPE_GPS_OUTPUT, POS_SENSLOG_TYPE_NONE }, -// {SENSLOG_DATA_O_TIME_SETREQ, VEHICLE_DID_SETTINGTIME, SENSLOG_TYPE_GPS_OUTPUT, POS_SENSLOG_TYPE_NONE }, -// {SENSLOG_DATA_O_TIME, POSHAL_DID_GPS_TIME, SENSLOG_TYPE_GPS_OUTPUT, POS_SENSLOG_TYPE_NONE }, -// {SENSLOG_DATA_O_GPSINF, VEHICLE_DID_NAVIINFO_DIAG_GPS, SENSLOG_TYPE_NAVI_OUTPUT, POS_SENSLOG_TYPE_NONE }, -// {SENSLOG_DATA_O_TIME_CS, 0, SENSLOG_TYPE_GPS_OUTPUT, POS_SENSLOG_TYPE_NONE }, -// {SENSLOG_DATA_O_GPSRST, 0, SENSLOG_TYPE_GPS_OUTPUT, POS_SENSLOG_TYPE_NONE }, -// -// {SENSLOG_DATA_O_UNSPECIFIED, 0, SENSLOG_TYPE_COUNT, POS_SENSLOG_TYPE_NONE } + {SENSLOG_DATA_O_SYS, POSHAL_DID_SPEED_PULSE, SENSLOG_TYPE_SYS_OUTPUT, POS_SENSLOG_TYPE_NONE }, + {SENSLOG_DATA_O_SYS, POSHAL_DID_SPEED_KMPH, SENSLOG_TYPE_SYS_OUTPUT, POS_SENSLOG_TYPE_NONE }, + {SENSLOG_DATA_O_SYS, POSHAL_DID_GYRO_X, SENSLOG_TYPE_SYS_OUTPUT, POS_SENSLOG_TYPE_NONE }, + {SENSLOG_DATA_O_SYS, POSHAL_DID_GYRO_Y, SENSLOG_TYPE_SYS_OUTPUT, POS_SENSLOG_TYPE_NONE }, + {SENSLOG_DATA_O_SYS, POSHAL_DID_GYRO_Z, SENSLOG_TYPE_SYS_OUTPUT, POS_SENSLOG_TYPE_NONE }, + {SENSLOG_DATA_O_SYS, POSHAL_DID_GSNS_X, SENSLOG_TYPE_SYS_OUTPUT, POS_SENSLOG_TYPE_NONE }, + {SENSLOG_DATA_O_SYS, POSHAL_DID_GSNS_Y, SENSLOG_TYPE_SYS_OUTPUT, POS_SENSLOG_TYPE_NONE }, + {SENSLOG_DATA_O_SYS, POSHAL_DID_GSNS_Z, SENSLOG_TYPE_SYS_OUTPUT, POS_SENSLOG_TYPE_NONE }, + {SENSLOG_DATA_O_SYS, POSHAL_DID_GPS_ANTENNA, SENSLOG_TYPE_SYS_OUTPUT, POS_SENSLOG_TYPE_NONE }, + {SENSLOG_DATA_O_SYS, POSHAL_DID_SNS_COUNTER, SENSLOG_TYPE_SYS_OUTPUT, POS_SENSLOG_TYPE_NONE }, + {SENSLOG_DATA_O_SYS, POSHAL_DID_SPEED_PULSE_FST, SENSLOG_TYPE_SYS_OUTPUT, POS_SENSLOG_TYPE_NONE }, + {SENSLOG_DATA_O_SYS, POSHAL_DID_GYRO_X_FST, SENSLOG_TYPE_SYS_OUTPUT, POS_SENSLOG_TYPE_NONE }, + {SENSLOG_DATA_O_SYS, POSHAL_DID_GYRO_Y_FST, SENSLOG_TYPE_SYS_OUTPUT, POS_SENSLOG_TYPE_NONE }, + {SENSLOG_DATA_O_SYS, POSHAL_DID_GYRO_Z_FST, SENSLOG_TYPE_SYS_OUTPUT, POS_SENSLOG_TYPE_NONE }, + {SENSLOG_DATA_O_SYS, VEHICLE_DID_GPS__CWORD82__NMEA, SENSLOG_TYPE_GPS_OUTPUT, POS_SENSLOG_TYPE_NONE }, + {SENSLOG_DATA_O_SYS, POSHAL_DID_GPS__CWORD82___CWORD44_GP4, SENSLOG_TYPE_GPS_OUTPUT, POS_SENSLOG_TYPE_NONE }, + {SENSLOG_DATA_O_SYS, POSHAL_DID_GPS__CWORD82__FULLBINARY, SENSLOG_TYPE_GPS_OUTPUT, POS_SENSLOG_TYPE_NONE }, + {SENSLOG_DATA_O_SYS, POSHAL_DID_GPS_NMEA, SENSLOG_TYPE_GPS_OUTPUT, POS_SENSLOG_TYPE_NONE }, + {SENSLOG_DATA_O_SYS, POSHAL_DID_REV, SENSLOG_TYPE_SYS_OUTPUT, POS_SENSLOG_TYPE_NONE }, + {SENSLOG_DATA_O_SYS, POSHAL_DID_REV_FST, SENSLOG_TYPE_SYS_OUTPUT, POS_SENSLOG_TYPE_NONE }, + {SENSLOG_DATA_O_SYS, POSHAL_DID_GYRO_TEMP, SENSLOG_TYPE_SYS_OUTPUT, POS_SENSLOG_TYPE_NONE }, + {SENSLOG_DATA_O_SYS, POSHAL_DID_GYRO_TEMP_FST, SENSLOG_TYPE_SYS_OUTPUT, POS_SENSLOG_TYPE_NONE }, + {SENSLOG_DATA_O_SYS, POSHAL_DID_GSNS_X_FST, SENSLOG_TYPE_SYS_OUTPUT, POS_SENSLOG_TYPE_NONE }, + {SENSLOG_DATA_O_SYS, POSHAL_DID_GSNS_Y_FST, SENSLOG_TYPE_SYS_OUTPUT, POS_SENSLOG_TYPE_NONE }, + {SENSLOG_DATA_O_SYS, POSHAL_DID_GSNS_Z_FST, SENSLOG_TYPE_SYS_OUTPUT, POS_SENSLOG_TYPE_NONE }, + {SENSLOG_DATA_O_SYS, POSHAL_DID_PULSE_TIME, SENSLOG_TYPE_SYS_OUTPUT, POS_SENSLOG_TYPE_NONE }, + {SENSLOG_DATA_O_SYS, POSHAL_DID_GPS_CLOCK_DRIFT, SENSLOG_TYPE_GPS_OUTPUT, POS_SENSLOG_TYPE_NONE }, + {SENSLOG_DATA_O_SYS, POSHAL_DID_GPS_CLOCK_FREQ, SENSLOG_TYPE_GPS_OUTPUT, POS_SENSLOG_TYPE_NONE }, + {SENSLOG_DATA_O_SYS_PKG, 0, SENSLOG_TYPE_SYS_OUTPUT, POS_SENSLOG_TYPE_NONE }, + {SENSLOG_DATA_O_GPS, 0, SENSLOG_TYPE_CMD_OUTPUT, POS_SENSLOG_TYPE_NONE }, + {SENSLOG_DATA_O_LONLAT_N, VEHICLE_DID_LOCATION_LONLAT_NAVI, SENSLOG_TYPE_NAVI_OUTPUT, POS_SENSLOG_TYPE_NONE }, + {SENSLOG_DATA_O_LONLAT_G, VEHICLE_DID_LOCATION_LONLAT, SENSLOG_TYPE_GPS_OUTPUT, POS_SENSLOG_TYPE_NONE }, + {SENSLOG_DATA_O_ALT, VEHICLE_DID_LOCATION_ALTITUDE, SENSLOG_TYPE_GPS_OUTPUT, POS_SENSLOG_TYPE_NONE }, + {SENSLOG_DATA_O_SPEED_N, VEHICLE_DID_MOTION_SPEED_NAVI, SENSLOG_TYPE_NAVI_OUTPUT, POS_SENSLOG_TYPE_NONE }, + {SENSLOG_DATA_O_SPEED_P, VEHICLE_DID_MOTION_SPEED_INTERNAL, SENSLOG_TYPE_POS_OUTPUT, POS_SENSLOG_TYPE_NONE }, + {SENSLOG_DATA_O_HEAD_N, VEHICLE_DID_MOTION_HEADING_NAVI, SENSLOG_TYPE_NAVI_OUTPUT, POS_SENSLOG_TYPE_NONE }, + {SENSLOG_DATA_O_HEAD_G, VEHICLE_DID_MOTION_HEADING, SENSLOG_TYPE_GPS_OUTPUT, POS_SENSLOG_TYPE_NONE }, + {SENSLOG_DATA_O_TIME_SETREQ, VEHICLE_DID_SETTINGTIME, SENSLOG_TYPE_GPS_OUTPUT, POS_SENSLOG_TYPE_NONE }, + {SENSLOG_DATA_O_TIME, POSHAL_DID_GPS_TIME, SENSLOG_TYPE_GPS_OUTPUT, POS_SENSLOG_TYPE_NONE }, + {SENSLOG_DATA_O_GPSINF, VEHICLE_DID_NAVIINFO_DIAG_GPS, SENSLOG_TYPE_NAVI_OUTPUT, POS_SENSLOG_TYPE_NONE }, + {SENSLOG_DATA_O_TIME_CS, 0, SENSLOG_TYPE_GPS_OUTPUT, POS_SENSLOG_TYPE_NONE }, + {SENSLOG_DATA_O_GPSRST, 0, SENSLOG_TYPE_GPS_OUTPUT, POS_SENSLOG_TYPE_NONE }, + + {SENSLOG_DATA_O_UNSPECIFIED, 0, SENSLOG_TYPE_COUNT, POS_SENSLOG_TYPE_NONE } }; /*---------------------------------------------------------------------------------* diff --git a/positioning/server/src/Sensor/VehicleSens_CanDeliveryEntry.cpp b/positioning/server/src/Sensor/VehicleSens_CanDeliveryEntry.cpp index db5d6e84..f1cd6953 100644 --- a/positioning/server/src/Sensor/VehicleSens_CanDeliveryEntry.cpp +++ b/positioning/server/src/Sensor/VehicleSens_CanDeliveryEntry.cpp @@ -1,5 +1,5 @@ /* - * @copyright Copyright (c) 2016-2019 TOYOTA MOTOR CORPORATION. + * @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. diff --git a/positioning/server/src/Sensor/VehicleSens_Common.cpp b/positioning/server/src/Sensor/VehicleSens_Common.cpp index 882807da..aeb180e1 100644 --- a/positioning/server/src/Sensor/VehicleSens_Common.cpp +++ b/positioning/server/src/Sensor/VehicleSens_Common.cpp @@ -1,5 +1,5 @@ /* - * @copyright Copyright (c) 2016-2019 TOYOTA MOTOR CORPORATION. + * @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. @@ -29,7 +29,7 @@ #include "POS_private.h" #include #include -//#include "gps_hal.h" +#include "gps_hal.h" #include "VehicleSens_DataMaster.h" @@ -41,131 +41,88 @@ /*************************************************/ static const VEHICLESENS_DID_OFFSET_TBL kGstDidList[] = { /* Data ID Offset size Reserved */ -// { VEHICLE_DID_DESTINATION, VEHICLESENS_OFFSET_NORMAL, {0, 0} }, -// { VEHICLE_DID_HV, VEHICLESENS_OFFSET_NORMAL, {0, 0} }, -// { VEHICLE_DID_STEERING_WHEEL, VEHICLESENS_OFFSET_NORMAL, {0, 0} }, -// { VEHICLE_DID_VB, VEHICLESENS_OFFSET_NORMAL, {0, 0} }, -// { VEHICLE_DID_IG, VEHICLESENS_OFFSET_NORMAL, {0, 0} }, -// { VEHICLE_DID_MIC, VEHICLESENS_OFFSET_NORMAL, {0, 0} }, -// { VEHICLE_DID_TEST, VEHICLESENS_OFFSET_NORMAL, {0, 0} }, -// { VEHICLE_DID_VTRADAPTER, VEHICLESENS_OFFSET_NORMAL, {0, 0} }, -// { VEHICLE_DID_AUXADAPTER, VEHICLESENS_OFFSET_NORMAL, {0, 0} }, -// { VEHICLE_DID_BACKDOOR, VEHICLESENS_OFFSET_NORMAL, {0, 0} }, -// { VEHICLE_DID_PKB, VEHICLESENS_OFFSET_NORMAL, {0, 0} }, -// { VEHICLE_DID_ADIM, VEHICLESENS_OFFSET_NORMAL, {0, 0} }, -// { VEHICLE_DID_ILL, VEHICLESENS_OFFSET_NORMAL, {0, 0} }, -// { VEHICLE_DID_RHEOSTAT, VEHICLESENS_OFFSET_NORMAL, {0, 0} }, -// { VEHICLE_DID_PANELTEMP, VEHICLESENS_OFFSET_NORMAL, {0, 0} }, -// { VEHICLE_DID_SYSTEMP, VEHICLESENS_OFFSET_NORMAL, {0, 0} }, -// { POSHAL_DID_SPEED_PULSE, VEHICLESENS_OFFSET_20WORD, {0, 0} }, -// { POSHAL_DID_SPEED_PULSE_FLAG, VEHICLESENS_OFFSET_20WORD, {0, 0} }, -// { POSHAL_DID_SPEED_KMPH, VEHICLESENS_OFFSET_NORMAL, {0, 0} }, -// { POSHAL_DID_GYRO, VEHICLESENS_OFFSET_20WORD, {0, 0} }, -// { POSHAL_DID_GSNS_X, VEHICLESENS_OFFSET_NORMAL, {0, 0} }, -// { POSHAL_DID_GSNS_Y, VEHICLESENS_OFFSET_NORMAL, {0, 0} }, -// { POSHAL_DID_REV, VEHICLESENS_OFFSET_NORMAL, {0, 0} }, -// { VEHICLE_DID_MINIJACK, VEHICLESENS_OFFSET_NORMAL, {0, 0} }, -// { POSHAL_DID_GPS_ANTENNA, VEHICLESENS_OFFSET_NORMAL, {0, 0} }, -// { POSHAL_DID_SNS_COUNTER, VEHICLESENS_OFFSET_NORMAL, {0, 0} }, -// { VEHICLE_DID_GPS_COUNTER, VEHICLESENS_OFFSET_NORMAL, {0, 0} }, -// { VEHICLE_DID_SIRF_BINARY, VEHICLESENS_OFFSET_GPS_BINARY, {0, 0} }, -// { VEHICLE_DID_RTC, VEHICLESENS_OFFSET_GPS_FORMAT, {0, 0} }, -// { POSHAL_DID_GPS_VERSION, VEHICLESENS_OFFSET_GPS_FORMAT, {0, 0} }, -// { VEHICLE_DID_SATELLITE_STATUS, VEHICLESENS_OFFSET_GPS_FORMAT, {0, 0} }, -// { VEHICLE_DID_LOCATION, VEHICLESENS_OFFSET_GPS_FORMAT, {0, 0} }, -// /* ++GPS _CWORD82_ support */ -// { POSHAL_DID_GPS__CWORD82___CWORD44_GP4, VEHICLESENS_OFFSET_GPS_FORMAT, {0, 0} }, -// { VEHICLE_DID_GPS__CWORD82__NMEA, VEHICLESENS_OFFSET_GPS_NMEA, {0, 0} }, -// { POSHAL_DID_GPS_NMEA, VEHICLESENS_OFFSET_GPS_NMEA, {0, 0} }, -// { POSHAL_DID_GPS__CWORD82__FULLBINARY, VEHICLESENS_OFFSET_GPS_FORMAT, {0, 0} }, -// /* --GPS _CWORD82_ support */ -// { VEHICLE_DID_BACKDOOR_LINE, VEHICLESENS_OFFSET_NORMAL, {0, 0} }, -// { VEHICLE_DID_ADIM_LINE, VEHICLESENS_OFFSET_NORMAL, {0, 0} }, -// { VEHICLE_DID_REV_LINE, VEHICLESENS_OFFSET_NORMAL, {0, 0} }, -// { VEHICLE_DID_BACKDOOR_CAN, VEHICLESENS_OFFSET_NORMAL, {0, 0} }, -// { VEHICLE_DID_ADIM_CAN, VEHICLESENS_OFFSET_NORMAL, {0, 0} }, -// { VEHICLE_DID_REV_CAN, VEHICLESENS_OFFSET_NORMAL, {0, 0} }, -//#if CONFIG_SENSOR_EXT_VALID /* Initial Sensor Support */ -// { POSHAL_DID_GYRO_EXT, VEHICLESENS_OFFSET_20WORD, {0, 0} }, -// { POSHAL_DID_SPEED_PULSE_FST, VEHICLESENS_OFFSET_NORMAL, {0, 0} }, -// { POSHAL_DID_GYRO_FST, VEHICLESENS_OFFSET_NORMAL, {0, 0} }, -// { POSHAL_DID_SPEED_PULSE_FLAG_FST, VEHICLESENS_OFFSET_20WORD_FST, {0, 0} }, -// { POSHAL_DID_REV_FST, VEHICLESENS_OFFSET_20WORD_FST, {0, 0} }, -//#endif -//#if CONFIG_HW_PORTSET_TYPE_C -// { VEHICLE_DID_GGA, VEHICLESENS_OFFSET_GPS_NMEA, {0, 0} }, -// { VEHICLE_DID_GLL, VEHICLESENS_OFFSET_GPS_NMEA, {0, 0} }, -// { VEHICLE_DID_GSA, VEHICLESENS_OFFSET_GPS_NMEA, {0, 0} }, -// { VEHICLE_DID_GSV, VEHICLESENS_OFFSET_GPS_NMEA, {0, 0} }, -// { VEHICLE_DID_RMC, VEHICLESENS_OFFSET_GPS_NMEA, {0, 0} }, -// { VEHICLE_DID_VTG, VEHICLESENS_OFFSET_GPS_NMEA, {0, 0} }, -//#endif -// /* ++ PastModel002 support */ -// { VEHICLE_DID_GPS_UBLOX_NAV_POSLLH, VEHICLESENS_OFFSET_GPS_UBLOX, {0, 0} }, -// { VEHICLE_DID_GPS_UBLOX_NAV_STATUS, VEHICLESENS_OFFSET_GPS_UBLOX, {0, 0} }, -// { VEHICLE_DID_GPS_UBLOX_NAV_TIMEUTC, VEHICLESENS_OFFSET_GPS_UBLOX, {0, 0} }, -// { VEHICLE_DID_GPS_UBLOX_NAV_VELNED, VEHICLESENS_OFFSET_GPS_UBLOX, {0, 0} }, -// { VEHICLE_DID_GPS_UBLOX_NAV_DOP, VEHICLESENS_OFFSET_GPS_UBLOX, {0, 0} }, -// { VEHICLE_DID_GPS_UBLOX_NAV_TIMEGPS, VEHICLESENS_OFFSET_GPS_UBLOX, {0, 0} }, -// { VEHICLE_DID_GPS_UBLOX_NAV_SVINFO, VEHICLESENS_OFFSET_GPS_UBLOX, {0, 0} }, -// { VEHICLE_DID_GPS_UBLOX_NAV_CLOCK, VEHICLESENS_OFFSET_GPS_UBLOX, {0, 0} }, -// { VEHICLE_DID_GPS_UBLOX_MON_HW, VEHICLESENS_OFFSET_GPS_UBLOX, {0, 0} }, -// { VEHICLE_DID_GYRO_TROUBLE, VEHICLESENS_OFFSET_NORMAL, {0, 0} }, -// { VEHICLE_DID_MAIN_GPS_INTERRUPT_SIGNAL, VEHICLESENS_OFFSET_NORMAL, {0, 0} }, -// { VEHICLE_DID_SYS_GPS_INTERRUPT_SIGNAL, VEHICLESENS_OFFSET_NORMAL, {0, 0} }, -// { VEHICLE_DID_GYRO_CONNECT_STATUS, VEHICLESENS_OFFSET_NORMAL, {0, 0} }, -// /* -- PastModel002 support */ -// { VEHICLE_DID_VSC1S03, VEHICLESENS_OFFSET_NORMAL, {0, 0} }, -// { VEHICLE_DID_ECO1S01, VEHICLESENS_OFFSET_NORMAL, {0, 0} }, -// { VEHICLE_DID_ENG1F07, VEHICLESENS_OFFSET_NORMAL, {0, 0} }, -// { VEHICLE_DID_ENG1S03, VEHICLESENS_OFFSET_NORMAL, {0, 0} }, -// { VEHICLE_DID_ACN1S04, VEHICLESENS_OFFSET_NORMAL, {0, 0} }, -// { VEHICLE_DID_ACN1S05, VEHICLESENS_OFFSET_NORMAL, {0, 0} }, -// { VEHICLE_DID_ACN1S06, VEHICLESENS_OFFSET_NORMAL, {0, 0} }, -// { VEHICLE_DID_ACN1S08, VEHICLESENS_OFFSET_NORMAL, {0, 0} }, -// { VEHICLE_DID_ACN1S07, VEHICLESENS_OFFSET_NORMAL, {0, 0} }, -// { VEHICLE_DID_EHV1S90, VEHICLESENS_OFFSET_NORMAL, {0, 0} }, -// { VEHICLE_DID_ECT1S92, VEHICLESENS_OFFSET_NORMAL, {0, 0} }, -// { VEHICLE_DID_ENG1S28, VEHICLESENS_OFFSET_NORMAL, {0, 0} }, -// { VEHICLE_DID_BGM1S01, VEHICLESENS_OFFSET_NORMAL, {0, 0} }, -// { VEHICLE_DID_ENG1F03, VEHICLESENS_OFFSET_NORMAL, {0, 0} }, -// { VEHICLE_DID_CAA1N01, VEHICLESENS_OFFSET_NORMAL, {0, 0} }, -// { VEHICLE_DID_MET1S01, VEHICLESENS_OFFSET_NORMAL, {0, 0} }, -// { VEHICLE_DID_MET1S03, VEHICLESENS_OFFSET_NORMAL, {0, 0} }, -// { VEHICLE_DID_MET1S04, VEHICLESENS_OFFSET_NORMAL, {0, 0} }, -// { VEHICLE_DID_MET1S05, VEHICLESENS_OFFSET_NORMAL, {0, 0} }, -// { VEHICLE_DID_MET1S07, VEHICLESENS_OFFSET_NORMAL, {0, 0} }, -// { VEHICLE_DID_BDB1S01, VEHICLESENS_OFFSET_NORMAL, {0, 0} }, -// { VEHICLE_DID_BDB1S03, VEHICLESENS_OFFSET_NORMAL, {0, 0} }, -// { VEHICLE_DID_BDB1S08, VEHICLESENS_OFFSET_NORMAL, {0, 0} }, -// { VEHICLE_DID_BDB1F03, VEHICLESENS_OFFSET_NORMAL, {0, 0} }, -// { VEHICLE_DID_TPM1S02, VEHICLESENS_OFFSET_NORMAL, {0, 0} }, -// { VEHICLE_DID_TPM1S03, VEHICLESENS_OFFSET_NORMAL, {0, 0} }, -// { VEHICLE_DID_ENG1S92, VEHICLESENS_OFFSET_NORMAL, {0, 0} }, -// { VEHICLE_DID_MMT1S52, VEHICLESENS_OFFSET_NORMAL, {0, 0} }, -// { VEHICLE_DID_EPB1S01, VEHICLESENS_OFFSET_NORMAL, {0, 0} }, -// { POSHAL_DID_GPS_TIME, VEHICLESENS_OFFSET_NORMAL, {0, 0} }, -// { POSHAL_DID_GPS_TIME_RAW, VEHICLESENS_OFFSET_NORMAL, {0, 0} }, -// { POSHAL_DID_GPS_WKNROLLOVER, VEHICLESENS_OFFSET_NORMAL, {0, 0} }, -// { VEHICLE_DID_NAVIINFO_DIAG_GPS, VEHICLESENS_OFFSET_NORMAL, {0, 0} }, -// { POSHAL_DID_GYRO_TEMP, VEHICLESENS_OFFSET_NORMAL, {0, 0} }, -// { POSHAL_DID_GYRO_TEMP_FST, VEHICLESENS_OFFSET_NORMAL, {0, 0} }, -// { POSHAL_DID_GSNS_X_FST, VEHICLESENS_OFFSET_NORMAL, {0, 0} }, -// { POSHAL_DID_GSNS_Y_FST, VEHICLESENS_OFFSET_NORMAL, {0, 0} }, -// { POSHAL_DID_PULSE_TIME, VEHICLESENS_OFFSET_NORMAL, {0, 0} }, -// { VEHICLE_DID_LOCATION_LONLAT, VEHICLESENS_OFFSET_NORMAL, {0, 0} }, -// { VEHICLE_DID_LOCATION_ALTITUDE, VEHICLESENS_OFFSET_NORMAL, {0, 0} }, -// { VEHICLE_DID_MOTION_SPEED, VEHICLESENS_OFFSET_NORMAL, {0, 0} }, -// { VEHICLE_DID_MOTION_HEADING, VEHICLESENS_OFFSET_NORMAL, {0, 0} }, -// { VEHICLE_DID_LOCATION_LONLAT_NAVI, VEHICLESENS_OFFSET_NORMAL, {0, 0} }, -// { VEHICLE_DID_LOCATION_ALTITUDE_NAVI, VEHICLESENS_OFFSET_NORMAL, {0, 0} }, -// { VEHICLE_DID_MOTION_SPEED_NAVI, VEHICLESENS_OFFSET_NORMAL, {0, 0} }, -// { VEHICLE_DID_MOTION_HEADING_NAVI, VEHICLESENS_OFFSET_NORMAL, {0, 0} }, -// { VEHICLE_DID_SETTINGTIME, VEHICLESENS_OFFSET_NORMAL, {0, 0} }, -// { VEHICLE_DID_MOTION_SPEED_INTERNAL, VEHICLESENS_OFFSET_NORMAL, {0, 0} }, -// { POSHAL_DID_GPS_CLOCK_DRIFT, VEHICLESENS_OFFSET_NORMAL, {0, 0} }, -// { POSHAL_DID_GPS_CLOCK_FREQ, VEHICLESENS_OFFSET_NORMAL, {0, 0} }, -// { 0, 0, {0, 0} } /* Termination code */ + { VEHICLE_DID_DESTINATION, VEHICLESENS_OFFSET_NORMAL, {0, 0} }, + { VEHICLE_DID_HV, VEHICLESENS_OFFSET_NORMAL, {0, 0} }, + { VEHICLE_DID_STEERING_WHEEL, VEHICLESENS_OFFSET_NORMAL, {0, 0} }, + { VEHICLE_DID_VB, VEHICLESENS_OFFSET_NORMAL, {0, 0} }, + { VEHICLE_DID_IG, VEHICLESENS_OFFSET_NORMAL, {0, 0} }, + { VEHICLE_DID_MIC, VEHICLESENS_OFFSET_NORMAL, {0, 0} }, + { VEHICLE_DID_BACKDOOR, VEHICLESENS_OFFSET_NORMAL, {0, 0} }, + { VEHICLE_DID_PKB, VEHICLESENS_OFFSET_NORMAL, {0, 0} }, + { VEHICLE_DID_ADIM, VEHICLESENS_OFFSET_NORMAL, {0, 0} }, + { VEHICLE_DID_ILL, VEHICLESENS_OFFSET_NORMAL, {0, 0} }, + { VEHICLE_DID_RHEOSTAT, VEHICLESENS_OFFSET_NORMAL, {0, 0} }, + { VEHICLE_DID_SYSTEMP, VEHICLESENS_OFFSET_NORMAL, {0, 0} }, + { POSHAL_DID_SPEED_PULSE, VEHICLESENS_OFFSET_20WORD, {0, 0} }, + { POSHAL_DID_SPEED_PULSE_FLAG, VEHICLESENS_OFFSET_20WORD, {0, 0} }, + { POSHAL_DID_SPEED_KMPH, VEHICLESENS_OFFSET_NORMAL, {0, 0} }, + { POSHAL_DID_GYRO_X, VEHICLESENS_OFFSET_20WORD, {0, 0} }, + { POSHAL_DID_GYRO_Y, VEHICLESENS_OFFSET_20WORD, {0, 0} }, + { POSHAL_DID_GYRO_Z, VEHICLESENS_OFFSET_20WORD, {0, 0} }, + { POSHAL_DID_GSNS_X, VEHICLESENS_OFFSET_NORMAL, {0, 0} }, + { POSHAL_DID_GSNS_Y, VEHICLESENS_OFFSET_NORMAL, {0, 0} }, + { POSHAL_DID_GSNS_Z, VEHICLESENS_OFFSET_NORMAL, {0, 0} }, + { POSHAL_DID_REV, VEHICLESENS_OFFSET_NORMAL, {0, 0} }, + { POSHAL_DID_GPS_ANTENNA, VEHICLESENS_OFFSET_NORMAL, {0, 0} }, + { POSHAL_DID_SNS_COUNTER, VEHICLESENS_OFFSET_NORMAL, {0, 0} }, + { VEHICLE_DID_GPS_COUNTER, VEHICLESENS_OFFSET_NORMAL, {0, 0} }, + { POSHAL_DID_GPS_VERSION, VEHICLESENS_OFFSET_GPS_FORMAT, {0, 0} }, + { VEHICLE_DID_LOCATION, VEHICLESENS_OFFSET_GPS_FORMAT, {0, 0} }, + /* ++GPS _CWORD82_ support */ + { POSHAL_DID_GPS__CWORD82___CWORD44_GP4, VEHICLESENS_OFFSET_GPS_FORMAT, {0, 0} }, + { VEHICLE_DID_GPS__CWORD82__NMEA, VEHICLESENS_OFFSET_GPS_NMEA, {0, 0} }, + { POSHAL_DID_GPS_NMEA, VEHICLESENS_OFFSET_GPS_NMEA, {0, 0} }, + { POSHAL_DID_GPS__CWORD82__FULLBINARY, VEHICLESENS_OFFSET_GPS_FORMAT, {0, 0} }, + /* --GPS _CWORD82_ support */ + { VEHICLE_DID_REV_LINE, VEHICLESENS_OFFSET_NORMAL, {0, 0} }, + { VEHICLE_DID_REV_CAN, VEHICLESENS_OFFSET_NORMAL, {0, 0} }, +#if CONFIG_SENSOR_EXT_VALID /* Initial Sensor Support */ + { POSHAL_DID_GYRO_EXT, VEHICLESENS_OFFSET_20WORD, {0, 0} }, + { POSHAL_DID_SPEED_PULSE_FST, VEHICLESENS_OFFSET_NORMAL, {0, 0} }, + { POSHAL_DID_GYRO_X_FST, VEHICLESENS_OFFSET_NORMAL, {0, 0} }, + { POSHAL_DID_GYRO_Y_FST, VEHICLESENS_OFFSET_NORMAL, {0, 0} }, + { POSHAL_DID_GYRO_Z_FST, VEHICLESENS_OFFSET_NORMAL, {0, 0} }, + { POSHAL_DID_SPEED_PULSE_FLAG_FST, VEHICLESENS_OFFSET_20WORD_FST, {0, 0} }, + { POSHAL_DID_REV_FST, VEHICLESENS_OFFSET_20WORD_FST, {0, 0} }, +#endif + /* ++ PastModel002 support */ + { VEHICLE_DID_GPS_UBLOX_NAV_POSLLH, VEHICLESENS_OFFSET_GPS_UBLOX, {0, 0} }, + { VEHICLE_DID_GPS_UBLOX_NAV_STATUS, VEHICLESENS_OFFSET_GPS_UBLOX, {0, 0} }, + { VEHICLE_DID_GPS_UBLOX_NAV_TIMEUTC, VEHICLESENS_OFFSET_GPS_UBLOX, {0, 0} }, + { VEHICLE_DID_GPS_UBLOX_NAV_VELNED, VEHICLESENS_OFFSET_GPS_UBLOX, {0, 0} }, + { VEHICLE_DID_GPS_UBLOX_NAV_DOP, VEHICLESENS_OFFSET_GPS_UBLOX, {0, 0} }, + { VEHICLE_DID_GPS_UBLOX_NAV_TIMEGPS, VEHICLESENS_OFFSET_GPS_UBLOX, {0, 0} }, + { VEHICLE_DID_GPS_UBLOX_NAV_SVINFO, VEHICLESENS_OFFSET_GPS_UBLOX, {0, 0} }, + { VEHICLE_DID_GPS_UBLOX_NAV_CLOCK, VEHICLESENS_OFFSET_GPS_UBLOX, {0, 0} }, + { VEHICLE_DID_GPS_UBLOX_MON_HW, VEHICLESENS_OFFSET_GPS_UBLOX, {0, 0} }, + { VEHICLE_DID_GYRO_TROUBLE, VEHICLESENS_OFFSET_NORMAL, {0, 0} }, + { VEHICLE_DID_MAIN_GPS_INTERRUPT_SIGNAL, VEHICLESENS_OFFSET_NORMAL, {0, 0} }, + { VEHICLE_DID_SYS_GPS_INTERRUPT_SIGNAL, VEHICLESENS_OFFSET_NORMAL, {0, 0} }, + { VEHICLE_DID_GYRO_CONNECT_STATUS, VEHICLESENS_OFFSET_NORMAL, {0, 0} }, + /* -- PastModel002 support */ + { POSHAL_DID_GPS_TIME, VEHICLESENS_OFFSET_NORMAL, {0, 0} }, + { POSHAL_DID_GPS_TIME_RAW, VEHICLESENS_OFFSET_NORMAL, {0, 0} }, + { POSHAL_DID_GPS_WKNROLLOVER, VEHICLESENS_OFFSET_NORMAL, {0, 0} }, + { VEHICLE_DID_NAVIINFO_DIAG_GPS, VEHICLESENS_OFFSET_NORMAL, {0, 0} }, + { POSHAL_DID_GYRO_TEMP, VEHICLESENS_OFFSET_NORMAL, {0, 0} }, + { POSHAL_DID_GYRO_TEMP_FST, VEHICLESENS_OFFSET_NORMAL, {0, 0} }, + { POSHAL_DID_GSNS_X_FST, VEHICLESENS_OFFSET_NORMAL, {0, 0} }, + { POSHAL_DID_GSNS_Y_FST, VEHICLESENS_OFFSET_NORMAL, {0, 0} }, + { POSHAL_DID_GSNS_Z_FST, VEHICLESENS_OFFSET_NORMAL, {0, 0} }, + { POSHAL_DID_PULSE_TIME, VEHICLESENS_OFFSET_NORMAL, {0, 0} }, + { VEHICLE_DID_LOCATION_LONLAT, VEHICLESENS_OFFSET_NORMAL, {0, 0} }, + { VEHICLE_DID_LOCATION_ALTITUDE, VEHICLESENS_OFFSET_NORMAL, {0, 0} }, + { VEHICLE_DID_MOTION_SPEED, VEHICLESENS_OFFSET_NORMAL, {0, 0} }, + { VEHICLE_DID_MOTION_HEADING, VEHICLESENS_OFFSET_NORMAL, {0, 0} }, + { VEHICLE_DID_LOCATION_LONLAT_NAVI, VEHICLESENS_OFFSET_NORMAL, {0, 0} }, + { VEHICLE_DID_LOCATION_ALTITUDE_NAVI, VEHICLESENS_OFFSET_NORMAL, {0, 0} }, + { VEHICLE_DID_MOTION_SPEED_NAVI, VEHICLESENS_OFFSET_NORMAL, {0, 0} }, + { VEHICLE_DID_MOTION_HEADING_NAVI, VEHICLESENS_OFFSET_NORMAL, {0, 0} }, + { VEHICLE_DID_SETTINGTIME, VEHICLESENS_OFFSET_NORMAL, {0, 0} }, + { VEHICLE_DID_MOTION_SPEED_INTERNAL, VEHICLESENS_OFFSET_NORMAL, {0, 0} }, + { POSHAL_DID_GPS_CLOCK_DRIFT, VEHICLESENS_OFFSET_NORMAL, {0, 0} }, + { POSHAL_DID_GPS_CLOCK_FREQ, VEHICLESENS_OFFSET_NORMAL, {0, 0} }, + { 0, 0, {0, 0} } /* Termination code */ }; /******************************************************************************* @@ -258,39 +215,42 @@ u_int16 VehicleSensGetDataMasterOffset(DID ul_did) { u_int16 VehicleSensGetDataMasterExtOffset(DID ul_did) { u_int16 usRet = 0; /* Return value of this function */ -// switch (ul_did) { -// case POSHAL_DID_GYRO_EXT: -// case POSHAL_DID_GSNS_X: /* Ignore->MISRA-C++:2008 Rule 2-7-2 */ -// case POSHAL_DID_GSNS_Y: /* Ignore->MISRA-C++:2008 Rule 2-7-2 */ -// case POSHAL_DID_SPEED_PULSE: -// { -// /* Returns the extended package size (one data 2byte) at the time of initial delivery */ -// usRet = VEHICLESENS_OFFSET_10WORD_PKG_EXT; -// break; -// } -// case POSHAL_DID_SNS_COUNTER: -// -// case POSHAL_DID_REV: -// { -// /* Returns the extended package size (one data 1byte) at the time of initial delivery */ -// usRet = VEHICLESENS_OFFSET_BYTE_PKG_EXT; -// break; -// } -// case POSHAL_DID_GYRO_TEMP: -// { -// /* Returns the extended package size (one data 2byte) at the time of initial delivery */ -// usRet = VEHICLESENS_OFFSET_WORD_PKG_EXT; -// break; -// } -// case POSHAL_DID_PULSE_TIME: -// { -// /* Returns the expansion package size (132 bytes per data) at the time of initial delivery */ -// usRet = VEHICLESENS_OFFSET_32LONG_PKG_EXT; -// break; -// } -// default: /* Other than the above */ /* Ignore->MISRA-C++:2008 Rule 6-3-1, 6-4-1 */ -// break; -// } + switch (ul_did) { + case POSHAL_DID_GYRO_EXT: + case POSHAL_DID_GYRO_X: + case POSHAL_DID_GYRO_Y: + case POSHAL_DID_GYRO_Z: + case POSHAL_DID_GSNS_X: /* Ignore->MISRA-C++:2008 Rule 2-7-2 */ + case POSHAL_DID_GSNS_Y: /* Ignore->MISRA-C++:2008 Rule 2-7-2 */ + case POSHAL_DID_GSNS_Z: + case POSHAL_DID_SPEED_PULSE: + { + /* Returns the extended package size (one data 2byte) at the time of initial delivery */ + usRet = VEHICLESENS_OFFSET_10WORD_PKG_EXT; + break; + } + case POSHAL_DID_SNS_COUNTER: + case POSHAL_DID_REV: + { + /* Returns the extended package size (one data 1byte) at the time of initial delivery */ + usRet = VEHICLESENS_OFFSET_BYTE_PKG_EXT; + break; + } + case POSHAL_DID_GYRO_TEMP: + { + /* Returns the extended package size (one data 2byte) at the time of initial delivery */ + usRet = VEHICLESENS_OFFSET_WORD_PKG_EXT; + break; + } + case POSHAL_DID_PULSE_TIME: + { + /* Returns the expansion package size (132 bytes per data) at the time of initial delivery */ + usRet = VEHICLESENS_OFFSET_32LONG_PKG_EXT; + break; + } + default: /* Other than the above */ /* Ignore->MISRA-C++:2008 Rule 6-3-1, 6-4-1 */ + break; + } return( usRet ); } #endif @@ -304,48 +264,48 @@ u_int16 VehicleSensGetDataMasterExtOffset(DID ul_did) { * * @param[in] pstData Pointer to received message data */ -//void VehicleSensSetGpsVersion(const SENSOR_MSG_GPSDATA_DAT *pstData) { -// static BOOL isExistGpsVersion = FALSE; -// SSVER_PkgInfo info; -// CSSVer cssVer; -// UNIT_TYPE eType = UNIT_TYPE_NONE; /* Supported HW Configuration Type */ -// EFrameworkunifiedStatus ret; -// -// if (isExistGpsVersion == FALSE) { -// memset(&info, 0x00, sizeof(info)); -// /* Supported HW Configuration Check */ -// eType = GetEnvSupportInfo(); -// if (UNIT_TYPE_GRADE1 == eType) { // LCOV_EXCL_BR_LINE 6:cannot be this env -// // LCOV_EXCL_START 8 : dead code -// AGL_ASSERT_NOT_TESTED(); // LCOV_EXCL_LINE 200: test assert -// /* GRADE1 */ -// memcpy(info.version, pstData->uc_data, sizeof(info.version)); -// -// /* Calling setPkgInfo() */ -// FRAMEWORKUNIFIEDLOG(ZONE_INFO, __FUNCTION__, -// "--- VehicleUtility_SetGpsVersion setPkgInfo -->"); -// ret = cssVer.setPkgInfo(SS_PKG_NAVI_GPS, info); -// if (ret == eFrameworkunifiedStatusOK) { -// FRAMEWORKUNIFIEDLOG(ZONE_INFO, __FUNCTION__, -// "--- VehicleUtility_SetGpsVersion setPkgInfo <-- GPSVersion = %s", info.version); -// isExistGpsVersion = TRUE; /* Update Flag */ -// } else { -// /* Error log */ -// FRAMEWORKUNIFIEDLOG(ZONE_ERR, __FUNCTION__, -// "Failed to set PkgInfo EpositioningStatus = %d", ret); -// } -// // LCOV_EXCL_STOP -// } else if ( UNIT_TYPE_GRADE2 == eType ) { -// /* -// * Note. -// * This feature branches processing depending on the unit type. -// */ -// } else { -// /* nop */ -// } -// } -// return; -//} +void VehicleSensSetGpsVersion(const SENSOR_MSG_GPSDATA_DAT *pstData) { + static BOOL isExistGpsVersion = FALSE; + SSVER_PkgInfo info; + CSSVer cssVer; + UNIT_TYPE eType = UNIT_TYPE_NONE; /* Supported HW Configuration Type */ + EFrameworkunifiedStatus ret; + + if (isExistGpsVersion == FALSE) { + memset(&info, 0x00, sizeof(info)); + /* Supported HW Configuration Check */ + eType = GetEnvSupportInfo(); + if (UNIT_TYPE_GRADE1 == eType) { // LCOV_EXCL_BR_LINE 6:cannot be this env + // LCOV_EXCL_START 8 : dead code + AGL_ASSERT_NOT_TESTED(); // LCOV_EXCL_LINE 200: test assert + /* GRADE1 */ + memcpy(info.version, pstData->uc_data, sizeof(info.version)); + + /* Calling setPkgInfo() */ + FRAMEWORKUNIFIEDLOG(ZONE_INFO, __FUNCTION__, + "--- VehicleUtility_SetGpsVersion setPkgInfo -->"); + ret = cssVer.setPkgInfo(SS_PKG_NAVI_GPS, info); + if (ret == eFrameworkunifiedStatusOK) { + FRAMEWORKUNIFIEDLOG(ZONE_INFO, __FUNCTION__, + "--- VehicleUtility_SetGpsVersion setPkgInfo <-- GPSVersion = %s", info.version); + isExistGpsVersion = TRUE; /* Update Flag */ + } else { + /* Error log */ + FRAMEWORKUNIFIEDLOG(ZONE_ERR, __FUNCTION__, + "Failed to set PkgInfo EpositioningStatus = %d", ret); + } + // LCOV_EXCL_STOP + } else if ( UNIT_TYPE_GRADE2 == eType ) { + /* + * Note. + * This feature branches processing depending on the unit type. + */ + } else { + /* nop */ + } + } + return; +} /** * @brief @@ -355,115 +315,115 @@ u_int16 VehicleSensGetDataMasterExtOffset(DID ul_did) { * @param[in] Uc_get_method Retrieval method */ void VehicleSensGetDebugPosDate(void* pBuf, u_int8 uc_get_method) { // LCOV_EXCL_START 7: uesd only in FrameworkunifiedOnDebugDump -// AGL_ASSERT_NOT_TESTED(); // LCOV_EXCL_LINE 200: test assert -// static uint8_t buf[DEBUG_DUMP_MAX_SIZE]; -// static uint8_t bufTmp[256]; -// VEHICLESENS_DATA_MASTER stSnsData; -// SENSORLOCATION_LONLATINFO_DAT *pstLonLat; -// SENSORLOCATION_ALTITUDEINFO_DAT *pstAltitude; -// SENSORMOTION_HEADINGINFO_DAT *pstHeading; -// SENSOR_MSG_GPSDATA_DAT stGpsData; -// SENSOR_MSG_GPSTIME *pstDateTimeGps; -// NAVIINFO_DIAG_GPS *pstDiagGps; -// uint8_t i; -// -// memset(&buf, 0x00, sizeof(buf)); -// /* Title */ -// switch ( uc_get_method ) { -// case VEHICLESENS_GETMETHOD_GPS: -// snprintf(reinterpret_cast(&buf), sizeof(buf), "GPS Info"); -// break; -// case VEHICLESENS_GETMETHOD_NAVI: -// snprintf(reinterpret_cast(&buf), sizeof(buf), "Navi Info"); -// break; -// default: -// /* nop */ -// break; -// } -// -// /* Latitude,Longitude */ -// VehicleSensGetLocationLonLat(&stSnsData, uc_get_method); -// pstLonLat = reinterpret_cast(stSnsData.uc_data); -// memset(&bufTmp[0], 0x00, sizeof(bufTmp)); -// snprintf( reinterpret_cast(&bufTmp[0]), sizeof(bufTmp), -// "\n [LonLat] sync:%3d, Enable:%01d, Lon:%10d, Lat:%10d, PosSts:0x%02x, PosAcc:0x%04x", -// pstLonLat->SyncCnt, -// pstLonLat->isEnable, -// pstLonLat->Longitude, -// pstLonLat->Latitude, -// pstLonLat->posSts, -// pstLonLat->posAcc); -// _pb_strcat(reinterpret_cast(&buf[0]), reinterpret_cast(&bufTmp[0]), sizeof(bufTmp)); -// -// /* Altitude */ -// VehicleSensGetLocationAltitude(&stSnsData, uc_get_method); -// pstAltitude = reinterpret_cast(stSnsData.uc_data); -// memset(&bufTmp[0], 0x00, sizeof(bufTmp)); -// snprintf(reinterpret_cast(&bufTmp[0]), sizeof(bufTmp), -// "\n [Alt] sync:%3d, Enable:%01d, Alt:%10d", -// pstAltitude->SyncCnt, -// pstAltitude->isEnable, -// pstAltitude->Altitude); -// _pb_strcat(reinterpret_cast(&buf[0]), reinterpret_cast(&bufTmp[0]), sizeof(bufTmp)); -// -// /* Orientation */ -// VehicleSensGetMotionHeading(&stSnsData, uc_get_method); -// pstHeading = reinterpret_cast(stSnsData.uc_data); -// memset(&bufTmp[0], 0x00, sizeof(bufTmp)); -// snprintf(reinterpret_cast(&bufTmp[0]), sizeof(bufTmp), -// "\n [Head] sync:%3d, Enable:%01d, Head:%5d, PosSts:0x%02x", -// pstHeading->SyncCnt, -// pstHeading->isEnable, -// pstHeading->Heading, -// pstHeading->posSts); -// _pb_strcat(reinterpret_cast(&buf[0]), reinterpret_cast(&bufTmp[0]), sizeof(bufTmp)); -// -// switch ( uc_get_method ) { -// case VEHICLESENS_GETMETHOD_GPS: -// /* Satellite information */ -// VehicleSensGetNaviinfoDiagGPSg(&stGpsData); -// pstDiagGps = reinterpret_cast(stGpsData.uc_data); -// memset(&bufTmp[0], 0x00, sizeof(bufTmp)); -// snprintf(reinterpret_cast(&bufTmp[0]), sizeof(bufTmp), -// "\n [Diag]\n FixSts:0x%02x", -// pstDiagGps->stFix.ucFixSts); -// _pb_strcat(reinterpret_cast(&buf[0]), reinterpret_cast(&bufTmp[0]), sizeof(bufTmp)); -// for (i = 0; i < 12; i++) { -// memset(&bufTmp[0], 0x00, sizeof(bufTmp)); -// snprintf(reinterpret_cast(&bufTmp[0]), sizeof(bufTmp), -// "\n [%02d] RcvSts:0x%02x, prn:0x%02x, elv:0x%02x, Lv:0x%02x, azm:0x%04x", -// i, -// pstDiagGps->stSat.stPrn[i].ucRcvSts, -// pstDiagGps->stSat.stPrn[i].ucPrn, -// pstDiagGps->stSat.stPrn[i].ucelv, -// pstDiagGps->stSat.stPrn[i].ucLv, -// pstDiagGps->stSat.stPrn[i].usAzm); -// _pb_strcat(reinterpret_cast(&buf[0]), reinterpret_cast(&bufTmp[0]), sizeof(bufTmp)); -// } -// -// /* Time */ -// VehicleSensGetGpsTime(&stGpsData, VEHICLESENS_GETMETHOD_GPS); -// pstDateTimeGps = reinterpret_cast(stGpsData.uc_data); -// memset(&bufTmp[0], 0x00, sizeof(bufTmp)); -// snprintf(reinterpret_cast(&bufTmp[0]), sizeof(bufTmp), -// "\n [Time] %04d/%02d/%02d %02d:%02d:%02d, sts:%d", -// pstDateTimeGps->utc.year, -// pstDateTimeGps->utc.month, -// pstDateTimeGps->utc.date, -// pstDateTimeGps->utc.hour, -// pstDateTimeGps->utc.minute, -// pstDateTimeGps->utc.second, -// pstDateTimeGps->tdsts); -// _pb_strcat(reinterpret_cast(&buf[0]), reinterpret_cast(&bufTmp[0]), sizeof(bufTmp)); -// break; -// case VEHICLESENS_GETMETHOD_NAVI: -// /* nop */ -// break; -// default: -// /* nop */ -// break; -// } -// memcpy(pBuf, &buf[0], sizeof(buf)); + AGL_ASSERT_NOT_TESTED(); // LCOV_EXCL_LINE 200: test assert + static uint8_t buf[DEBUG_DUMP_MAX_SIZE]; + static uint8_t bufTmp[256]; + VEHICLESENS_DATA_MASTER stSnsData; + SENSORLOCATION_LONLATINFO_DAT *pstLonLat; + SENSORLOCATION_ALTITUDEINFO_DAT *pstAltitude; + SENSORMOTION_HEADINGINFO_DAT *pstHeading; + SENSOR_MSG_GPSDATA_DAT stGpsData; + SENSOR_MSG_GPSTIME *pstDateTimeGps; + NAVIINFO_DIAG_GPS *pstDiagGps; + uint8_t i; + + memset(&buf, 0x00, sizeof(buf)); + /* Title */ + switch ( uc_get_method ) { + case VEHICLESENS_GETMETHOD_GPS: + snprintf(reinterpret_cast(&buf), sizeof(buf), "GPS Info"); + break; + case VEHICLESENS_GETMETHOD_NAVI: + snprintf(reinterpret_cast(&buf), sizeof(buf), "Navi Info"); + break; + default: + /* nop */ + break; + } + + /* Latitude,Longitude */ + VehicleSensGetLocationLonLat(&stSnsData, uc_get_method); + pstLonLat = reinterpret_cast(stSnsData.uc_data); + memset(&bufTmp[0], 0x00, sizeof(bufTmp)); + snprintf( reinterpret_cast(&bufTmp[0]), sizeof(bufTmp), + "\n [LonLat] sync:%3d, Enable:%01d, Lon:%10d, Lat:%10d, PosSts:0x%02x, PosAcc:0x%04x", + pstLonLat->SyncCnt, + pstLonLat->isEnable, + pstLonLat->Longitude, + pstLonLat->Latitude, + pstLonLat->posSts, + pstLonLat->posAcc); + _pb_strcat(reinterpret_cast(&buf[0]), reinterpret_cast(&bufTmp[0]), sizeof(bufTmp)); + + /* Altitude */ + VehicleSensGetLocationAltitude(&stSnsData, uc_get_method); + pstAltitude = reinterpret_cast(stSnsData.uc_data); + memset(&bufTmp[0], 0x00, sizeof(bufTmp)); + snprintf(reinterpret_cast(&bufTmp[0]), sizeof(bufTmp), + "\n [Alt] sync:%3d, Enable:%01d, Alt:%10d", + pstAltitude->SyncCnt, + pstAltitude->isEnable, + pstAltitude->Altitude); + _pb_strcat(reinterpret_cast(&buf[0]), reinterpret_cast(&bufTmp[0]), sizeof(bufTmp)); + + /* Orientation */ + VehicleSensGetMotionHeading(&stSnsData, uc_get_method); + pstHeading = reinterpret_cast(stSnsData.uc_data); + memset(&bufTmp[0], 0x00, sizeof(bufTmp)); + snprintf(reinterpret_cast(&bufTmp[0]), sizeof(bufTmp), + "\n [Head] sync:%3d, Enable:%01d, Head:%5d, PosSts:0x%02x", + pstHeading->SyncCnt, + pstHeading->isEnable, + pstHeading->Heading, + pstHeading->posSts); + _pb_strcat(reinterpret_cast(&buf[0]), reinterpret_cast(&bufTmp[0]), sizeof(bufTmp)); + + switch ( uc_get_method ) { + case VEHICLESENS_GETMETHOD_GPS: + /* Satellite information */ + VehicleSensGetNaviinfoDiagGPSg(&stGpsData); + pstDiagGps = reinterpret_cast(stGpsData.uc_data); + memset(&bufTmp[0], 0x00, sizeof(bufTmp)); + snprintf(reinterpret_cast(&bufTmp[0]), sizeof(bufTmp), + "\n [Diag]\n FixSts:0x%02x", + pstDiagGps->stFix.ucFixSts); + _pb_strcat(reinterpret_cast(&buf[0]), reinterpret_cast(&bufTmp[0]), sizeof(bufTmp)); + for (i = 0; i < 12; i++) { + memset(&bufTmp[0], 0x00, sizeof(bufTmp)); + snprintf(reinterpret_cast(&bufTmp[0]), sizeof(bufTmp), + "\n [%02d] RcvSts:0x%02x, prn:0x%02x, elv:0x%02x, Lv:0x%02x, azm:0x%04x", + i, + pstDiagGps->stSat.stPrn[i].ucRcvSts, + pstDiagGps->stSat.stPrn[i].ucPrn, + pstDiagGps->stSat.stPrn[i].ucelv, + pstDiagGps->stSat.stPrn[i].ucLv, + pstDiagGps->stSat.stPrn[i].usAzm); + _pb_strcat(reinterpret_cast(&buf[0]), reinterpret_cast(&bufTmp[0]), sizeof(bufTmp)); + } + + /* Time */ + VehicleSensGetGpsTime(&stGpsData, VEHICLESENS_GETMETHOD_GPS); + pstDateTimeGps = reinterpret_cast(stGpsData.uc_data); + memset(&bufTmp[0], 0x00, sizeof(bufTmp)); + snprintf(reinterpret_cast(&bufTmp[0]), sizeof(bufTmp), + "\n [Time] %04d/%02d/%02d %02d:%02d:%02d, sts:%d", + pstDateTimeGps->utc.year, + pstDateTimeGps->utc.month, + pstDateTimeGps->utc.date, + pstDateTimeGps->utc.hour, + pstDateTimeGps->utc.minute, + pstDateTimeGps->utc.second, + pstDateTimeGps->tdsts); + _pb_strcat(reinterpret_cast(&buf[0]), reinterpret_cast(&bufTmp[0]), sizeof(bufTmp)); + break; + case VEHICLESENS_GETMETHOD_NAVI: + /* nop */ + break; + default: + /* nop */ + break; + } + memcpy(pBuf, &buf[0], sizeof(buf)); return; } // LCOV_EXCL_STOP diff --git a/positioning/server/src/Sensor/VehicleSens_DataMasterMain.cpp b/positioning/server/src/Sensor/VehicleSens_DataMasterMain.cpp index 4aa58c31..7bf40d1d 100644 --- a/positioning/server/src/Sensor/VehicleSens_DataMasterMain.cpp +++ b/positioning/server/src/Sensor/VehicleSens_DataMasterMain.cpp @@ -1,5 +1,5 @@ /* - * @copyright Copyright (c) 2016-2019 TOYOTA MOTOR CORPORATION. + * @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. @@ -31,7 +31,7 @@ #include #include "VehicleSens_DataMaster.h" -//#include "gps_hal.h" +#include "gps_hal.h" #include "POS_private.h" #include "DeadReckoning_main.h" #include "VehicleSens_DeliveryCtrl.h" @@ -56,7 +56,7 @@ VEHICLESENS_PKG_DELIVERY_TEMP_EXT gstPkgTempExt; // NOLINT(readability/nolint) /*************************************************/ /* Function prototype */ /*************************************************/ -//static uint8_t VehicleSensGetSensorCnt(void); +static uint8_t VehicleSensGetSensorCnt(void); /******************************************************************************* @@ -72,9 +72,12 @@ void VehicleSensInitDataMaster(void) { VehicleSensInitSpeedPulsel(); VehicleSensInitSpeedKmphl(); - VehicleSensInitGyrol(); + VehicleSensInitGyroXl(); + VehicleSensInitGyroYl(); + VehicleSensInitGyroZl(); VehicleSensInitGsnsXl(); VehicleSensInitGsnsYl(); + VehicleSensInitGsnsZl(); VehicleSensInitRevl(); VehicleSensInitGpsAntennal(); VehicleSensInitSnsCounterl(); @@ -83,13 +86,19 @@ void VehicleSensInitDataMaster(void) { VehicleSensInitGyroRevl(); VehicleSensInitSnsCounterExtl(); VehicleSensInitGyroExtl(); + VehicleSensInitGyroYExtl(); + VehicleSensInitGyroZExtl(); VehicleSensInitSpeedPulseExtl(); VehicleSensInitRevExtl(); VehicleSensInitGsnsXExtl(); VehicleSensInitGsnsYExtl(); + VehicleSensInitGsnsZExtl(); VehicleSensInitGsnsXFstl(); VehicleSensInitGsnsYFstl(); - VehicleSensInitGyroFstl(); + VehicleSensInitGsnsZFstl(); + VehicleSensInitGyroXFstl(); + VehicleSensInitGyroYFstl(); + VehicleSensInitGyroZFstl(); VehicleSensInitSpeedPulseFstl(); VehicleSensInitSpeedPulseFlagFstl(); VehicleSensInitRevFstl(); @@ -157,51 +166,73 @@ void VehicleSensInitDataMaster(void) { * NOTE : * RETURN : void ******************************************************************************/ -//void VehicleSensSetDataMasterLineSens(const LSDRV_LSDATA *pst_data, -// PFUNC_DMASTER_SET_N p_data_master_set_n, -// BOOL b_sens_ext) { -// u_int8 uc_chg_type; -// -// /*------------------------------------------------------*/ -// /* Call the data set processing associated with the DID */ -// /* Call the data master set notification process */ -// /*------------------------------------------------------*/ -// switch (pst_data->ul_did) { -// case POSHAL_DID_SPEED_PULSE: -// { -// uc_chg_type = VehicleSensSetSpeedPulsel(pst_data); -// (*p_data_master_set_n)(pst_data->ul_did, uc_chg_type, VEHICLESENS_GETMETHOD_LINE); -// -// break; -// } -// case POSHAL_DID_GYRO: -// { -// uc_chg_type = VehicleSensSetGyrol(pst_data); -// (*p_data_master_set_n)(pst_data->ul_did, uc_chg_type, VEHICLESENS_GETMETHOD_LINE); -// break; -// } -// case POSHAL_DID_REV: -// { -// uc_chg_type = VehicleSensSetRevl(pst_data); -//#if (DR_DEBUG == 1) /* PastModel002_DR_VEHICLE */ -// FRAMEWORKUNIFIEDLOG(ZONE_INFO, __FUNCTION__, "VehicleSens_SetDataMaster POSHAL_DID_REV \r\n"); -//#endif -// (*p_data_master_set_n)(pst_data->ul_did, uc_chg_type, VEHICLESENS_GETMETHOD_LINE); -// /* ++ PastModel002 support DR */ -// VehicleSensDeliveryProcDR(pst_data->ul_did, uc_chg_type, VEHICLESENS_GETMETHOD_LINE); -// /* -- PastModel002 support DR */ -// break; -// } -// case POSHAL_DID_GPS_ANTENNA: +void VehicleSensSetDataMasterLineSens(const LSDRV_LSDATA *pst_data, + PFUNC_DMASTER_SET_N p_data_master_set_n, + BOOL b_sens_ext) { + u_int8 uc_chg_type; + + /*------------------------------------------------------*/ + /* Call the data set processing associated with the DID */ + /* Call the data master set notification process */ + /*------------------------------------------------------*/ + switch (pst_data->ul_did) { + case POSHAL_DID_SPEED_PULSE: + { + uc_chg_type = VehicleSensSetSpeedPulsel(pst_data); + (*p_data_master_set_n)(pst_data->ul_did, uc_chg_type, VEHICLESENS_GETMETHOD_LINE); + + break; + } +// case POSHAL_DID_GYRO_X: // { -// uc_chg_type = VehicleSensSetGpsAntennal(pst_data); +// uc_chg_type = VehicleSensSetGyroXl(pst_data); // (*p_data_master_set_n)(pst_data->ul_did, uc_chg_type, VEHICLESENS_GETMETHOD_LINE); // break; // } -// default: -// break; -// } -//} + case POSHAL_DID_GYRO_Y: + { + uc_chg_type = VehicleSensSetGyroYl(pst_data); + (*p_data_master_set_n)(pst_data->ul_did, uc_chg_type, VEHICLESENS_GETMETHOD_LINE); + break; + } + case POSHAL_DID_GYRO_Z: + { + uc_chg_type = VehicleSensSetGyroZl(pst_data); + (*p_data_master_set_n)(pst_data->ul_did, uc_chg_type, VEHICLESENS_GETMETHOD_LINE); + break; + } + case POSHAL_DID_REV: + { + uc_chg_type = VehicleSensSetRevl(pst_data); +#if (DR_DEBUG == 1) /* PastModel002_DR_VEHICLE */ + FRAMEWORKUNIFIEDLOG(ZONE_INFO, __FUNCTION__, "VehicleSens_SetDataMaster POSHAL_DID_REV \r\n"); +#endif + (*p_data_master_set_n)(pst_data->ul_did, uc_chg_type, VEHICLESENS_GETMETHOD_LINE); + /* ++ PastModel002 support DR */ + VehicleSensDeliveryProcDR(pst_data->ul_did, uc_chg_type, VEHICLESENS_GETMETHOD_LINE); + /* -- PastModel002 support DR */ + break; + } + case POSHAL_DID_GPS_ANTENNA: + { + uc_chg_type = VehicleSensSetGpsAntennal(pst_data); + (*p_data_master_set_n)(pst_data->ul_did, uc_chg_type, VEHICLESENS_GETMETHOD_LINE); + break; + } + case POSHAL_DID_GYRO_X: + case POSHAL_DID_GYRO_EXT: /* 3 to 14bit A/D value,0bit:REV */ + { + uc_chg_type = VehicleSensSetGyroRevl(pst_data); +// if (b_sens_ext == TRUE) { +// VehicleSensSetGyroExtl(pst_data); +// } + (*p_data_master_set_n)(pst_data->ul_did, uc_chg_type, VEHICLESENS_GETMETHOD_LINE); + break; + } + default: + break; + } +} /******************************************************************************* * MODULE : VehicleSensSetDataMasterLineSensG @@ -212,165 +243,200 @@ void VehicleSensInitDataMaster(void) { * NOTE : * RETURN : void ******************************************************************************/ -//void VehicleSensSetDataMasterLineSensG(const LSDRV_LSDATA_G *pst_data, -// PFUNC_DMASTER_SET_N p_data_master_set_n, -// BOOL b_sens_ext) { -// u_int8 uc_chg_type; -// SENSORMOTION_SPEEDINFO_DAT stSpeed; -// const VEHICLESENS_DATA_MASTER* pst_master; -// u_int16 usSP_KMPH = 0; /* Vehicle speed(km/h) */ -// -// /*------------------------------------------------------*/ -// /* Call the data set processing associated with the DID */ -// /* Call the data master set notification process */ -// /*------------------------------------------------------*/ -// switch (pst_data->ul_did) { -// case POSHAL_DID_SPEED_PULSE: -// { -// uc_chg_type = VehicleSensSetSpeedPulselG(pst_data); -//#if (DR_DEBUG == 1) /* PastModel002_DR_VEHICLE */ -// FRAMEWORKUNIFIEDLOG(ZONE_INFO, __FUNCTION__, "VehicleSens_SetDataMaster POSHAL_DID_SPEED_PULSE \r\n"); -//#endif -// if (b_sens_ext == TRUE) { -// VehicleSensSetSpeedPulseExtlG(pst_data); -// } -// (*p_data_master_set_n)(pst_data->ul_did, uc_chg_type, VEHICLESENS_GETMETHOD_LINE); -// /* ++ PastModel002 support DR */ -// VehicleSensDeliveryProcDR(pst_data->ul_did, uc_chg_type, VEHICLESENS_GETMETHOD_LINE); -// /* -- PastModel002 support DR */ -// break; -// } -// case POSHAL_DID_SPEED_KMPH: -// { -// uc_chg_type = VehicleSensSetSpeedKmphlG(pst_data); -// (*p_data_master_set_n)(pst_data->ul_did, uc_chg_type, VEHICLESENS_GETMETHOD_LINE); -// -// /* Set the data master of Motion Seepd (Internal) */ -// pst_master = (const VEHICLESENS_DATA_MASTER*)pst_data; -// memset(&stSpeed, 0x00, sizeof(SENSORMOTION_SPEEDINFO_DAT)); -// /* When the notified size is ""0"",The vehicle speed cannot be calculated with the line sensor. */ -// if (pst_master->us_size == 0) { -// stSpeed.isEnable = FALSE; -// } else { -// stSpeed.isEnable = TRUE; -// memcpy(&usSP_KMPH, pst_master->uc_data, sizeof(u_int16)); -// } -// stSpeed.getMethod = SENSOR_GET_METHOD_POS; -// /* Unit conversion [0.01km/h] -> [0.01m/s] */ -// stSpeed.Speed = static_cast((1000 * usSP_KMPH) / 3600); -// -// uc_chg_type = VehicleSensSetMotionSpeedI(&stSpeed); -// (*p_data_master_set_n)(VEHICLE_DID_MOTION_SPEED_INTERNAL, uc_chg_type, VEHICLESENS_GETMETHOD_INTERNAL); -// break; -// } -// -// case POSHAL_DID_GYRO: -// { -// uc_chg_type = VehicleSensSetGyrolG(pst_data); -//#if (DR_DEBUG == 1) /* PastModel002_DR_VEHICLE */ -// FRAMEWORKUNIFIEDLOG(ZONE_INFO, __FUNCTION__, "VehicleSens_SetDataMaster POSHAL_DID_GYRO \r\n"); -//#endif -// (*p_data_master_set_n)(pst_data->ul_did, uc_chg_type, VEHICLESENS_GETMETHOD_LINE); -// /* ++ PastModel002 support DR */ -// VehicleSensDeliveryProcDR(pst_data->ul_did, uc_chg_type, VEHICLESENS_GETMETHOD_LINE); -// /* -- PastModel002 support DR */ -// break; -// } -// case POSHAL_DID_SNS_COUNTER: +void VehicleSensSetDataMasterLineSensG(const LSDRV_LSDATA_G *pst_data, + PFUNC_DMASTER_SET_N p_data_master_set_n, + BOOL b_sens_ext) { + u_int8 uc_chg_type; + SENSORMOTION_SPEEDINFO_DAT stSpeed; + const VEHICLESENS_DATA_MASTER* pst_master; + u_int16 usSP_KMPH = 0; /* Vehicle speed(km/h) */ + + /*------------------------------------------------------*/ + /* Call the data set processing associated with the DID */ + /* Call the data master set notification process */ + /*------------------------------------------------------*/ + switch (pst_data->ul_did) { + case POSHAL_DID_SPEED_PULSE: + { + uc_chg_type = VehicleSensSetSpeedPulselG(pst_data); +#if (DR_DEBUG == 1) /* PastModel002_DR_VEHICLE */ + FRAMEWORKUNIFIEDLOG(ZONE_INFO, __FUNCTION__, "VehicleSens_SetDataMaster POSHAL_DID_SPEED_PULSE \r\n"); +#endif + if (b_sens_ext == TRUE) { + VehicleSensSetSpeedPulseExtlG(pst_data); + } + (*p_data_master_set_n)(pst_data->ul_did, uc_chg_type, VEHICLESENS_GETMETHOD_LINE); + /* ++ PastModel002 support DR */ + VehicleSensDeliveryProcDR(pst_data->ul_did, uc_chg_type, VEHICLESENS_GETMETHOD_LINE); + /* -- PastModel002 support DR */ + break; + } + case POSHAL_DID_SPEED_KMPH: + { + uc_chg_type = VehicleSensSetSpeedKmphlG(pst_data); + (*p_data_master_set_n)(pst_data->ul_did, uc_chg_type, VEHICLESENS_GETMETHOD_LINE); + + /* Set the data master of Motion Seepd (Internal) */ + pst_master = (const VEHICLESENS_DATA_MASTER*)pst_data; + memset(&stSpeed, 0x00, sizeof(SENSORMOTION_SPEEDINFO_DAT)); + /* When the notified size is ""0"",The vehicle speed cannot be calculated with the line sensor. */ + if (pst_master->us_size == 0) { + stSpeed.isEnable = FALSE; + } else { + stSpeed.isEnable = TRUE; + memcpy(&usSP_KMPH, pst_master->uc_data, sizeof(u_int16)); + } + stSpeed.getMethod = SENSOR_GET_METHOD_POS; + /* Unit conversion [0.01km/h] -> [0.01m/s] */ + stSpeed.Speed = static_cast((1000 * usSP_KMPH) / 3600); + + uc_chg_type = VehicleSensSetMotionSpeedI(&stSpeed); + (*p_data_master_set_n)(VEHICLE_DID_MOTION_SPEED_INTERNAL, uc_chg_type, VEHICLESENS_GETMETHOD_INTERNAL); + break; + } +// case POSHAL_DID_GYRO_X: // { +// uc_chg_type = VehicleSensSetGyroXlG(pst_data); //#if (DR_DEBUG == 1) /* PastModel002_DR_VEHICLE */ -// FRAMEWORKUNIFIEDLOG(ZONE_INFO, __FUNCTION__, "VehicleSens_SetDataMaster POSHAL_DID_SNS_COUNTER \r\n"); +// FRAMEWORKUNIFIEDLOG(ZONE_INFO, __FUNCTION__, "VehicleSens_SetDataMaster POSHAL_DID_GYRO_X \r\n"); //#endif -// uc_chg_type = VehicleSensSetSnsCounterlG(pst_data); -// if (b_sens_ext == TRUE) { -// VehicleSensSetSnsCounterExtlG(pst_data); -// } // (*p_data_master_set_n)(pst_data->ul_did, uc_chg_type, VEHICLESENS_GETMETHOD_LINE); // /* ++ PastModel002 support DR */ // VehicleSensDeliveryProcDR(pst_data->ul_did, uc_chg_type, VEHICLESENS_GETMETHOD_LINE); // /* -- PastModel002 support DR */ // break; // } -// case POSHAL_DID_GYRO_EXT: /* 3 to 14bit A/D value,0bit:REV */ -// { -// uc_chg_type = VehicleSensSetGyroRevlG(pst_data); -// -// if (b_sens_ext == TRUE) { -// VehicleSensSetGyroExtlG(pst_data); -// } -// (*p_data_master_set_n)(pst_data->ul_did, uc_chg_type, VEHICLESENS_GETMETHOD_LINE); -// -// break; -// } -// -// case POSHAL_DID_SPEED_PULSE_FLAG: -// { -// uc_chg_type = VehicleSensSetSpeedPulseFlag((const LSDRV_LSDATA_G *)pst_data); -// -// (*p_data_master_set_n)(pst_data->ul_did, uc_chg_type, VEHICLESENS_GETMETHOD_LINE); -// /* ++ PastModel002 support DR */ -// VehicleSensDeliveryProcDR(pst_data->ul_did, uc_chg_type, VEHICLESENS_GETMETHOD_LINE); -// /* -- PastModel002 support DR */ -// -// break; -// } -// case POSHAL_DID_GPS_INTERRUPT_FLAG: -// { -// uc_chg_type = VehicleSensSetGpsInterruptFlag((const LSDRV_LSDATA_G *)pst_data); -// -// (*p_data_master_set_n)(pst_data->ul_did, uc_chg_type, VEHICLESENS_GETMETHOD_LINE); -// -// break; -// } -// case POSHAL_DID_REV: -// { -// uc_chg_type = VehicleSensSetRevlG(pst_data); -// if (b_sens_ext == TRUE) { -// VehicleSensSetRevExtlG(pst_data); -// } -// (*p_data_master_set_n)(pst_data->ul_did, uc_chg_type, VEHICLESENS_GETMETHOD_LINE); -// break; -// } -// case POSHAL_DID_GYRO_TEMP: -// { -// uc_chg_type = VehicleSensSetGyroTemplG(pst_data); -// if (b_sens_ext == TRUE) { -// VehicleSensSetGyroTempExtlG(pst_data); -// } -// (*p_data_master_set_n)(pst_data->ul_did, uc_chg_type, VEHICLESENS_GETMETHOD_LINE); -// break; -// } -// case POSHAL_DID_GSNS_X: -// { -// uc_chg_type = VehicleSensSetGsnsXlG(pst_data); -// if (b_sens_ext == TRUE) { -// VehicleSensSetGsnsXExtlG(pst_data); -// } -// (*p_data_master_set_n)(pst_data->ul_did, uc_chg_type, VEHICLESENS_GETMETHOD_LINE); -// break; -// } -// case POSHAL_DID_GSNS_Y: -// { -// uc_chg_type = VehicleSensSetGsnsYlG(pst_data); -// if (b_sens_ext == TRUE) { -// VehicleSensSetGsnsYExtlG(pst_data); -// } -// (*p_data_master_set_n)(pst_data->ul_did, uc_chg_type, VEHICLESENS_GETMETHOD_LINE); -// break; -// } -// case POSHAL_DID_PULSE_TIME: -// { -// uc_chg_type = VehicleSensSetPulseTimelG(pst_data); -// if (b_sens_ext == TRUE) { -// VehicleSensSetPulseTimeExtlG(pst_data); -// } -// (*p_data_master_set_n)(pst_data->ul_did, uc_chg_type, VEHICLESENS_GETMETHOD_LINE); -// break; -// } -// default: -// break; -// } -//} + case POSHAL_DID_GYRO_Y: + { + uc_chg_type = VehicleSensSetGyroYlG(pst_data); + if (b_sens_ext == TRUE) { + VehicleSensSetGyroYExtlG(pst_data); + } +#if (DR_DEBUG == 1) + FRAMEWORKUNIFIEDLOG(ZONE_INFO, __FUNCTION__, "VehicleSens_SetDataMaster POSHAL_DID_GYRO_Y \r\n"); +#endif + (*p_data_master_set_n)(pst_data->ul_did, uc_chg_type, VEHICLESENS_GETMETHOD_LINE); + VehicleSensDeliveryProcDR(pst_data->ul_did, uc_chg_type, VEHICLESENS_GETMETHOD_LINE); + break; + } + case POSHAL_DID_GYRO_Z: + { + uc_chg_type = VehicleSensSetGyroZlG(pst_data); + if (b_sens_ext == TRUE) { + VehicleSensSetGyroZExtlG(pst_data); + } +#if (DR_DEBUG == 1) + FRAMEWORKUNIFIEDLOG(ZONE_INFO, __FUNCTION__, "VehicleSens_SetDataMaster POSHAL_DID_GYRO_Z \r\n"); +#endif + (*p_data_master_set_n)(pst_data->ul_did, uc_chg_type, VEHICLESENS_GETMETHOD_LINE); + VehicleSensDeliveryProcDR(pst_data->ul_did, uc_chg_type, VEHICLESENS_GETMETHOD_LINE); + break; + } + case POSHAL_DID_SNS_COUNTER: + { +#if (DR_DEBUG == 1) /* PastModel002_DR_VEHICLE */ + FRAMEWORKUNIFIEDLOG(ZONE_INFO, __FUNCTION__, "VehicleSens_SetDataMaster POSHAL_DID_SNS_COUNTER \r\n"); +#endif + uc_chg_type = VehicleSensSetSnsCounterlG(pst_data); + if (b_sens_ext == TRUE) { + VehicleSensSetSnsCounterExtlG(pst_data); + } + (*p_data_master_set_n)(pst_data->ul_did, uc_chg_type, VEHICLESENS_GETMETHOD_LINE); + /* ++ PastModel002 support DR */ + VehicleSensDeliveryProcDR(pst_data->ul_did, uc_chg_type, VEHICLESENS_GETMETHOD_LINE); + /* -- PastModel002 support DR */ + break; + } + case POSHAL_DID_GYRO_X: + case POSHAL_DID_GYRO_EXT: /* 3 to 14bit A/D value,0bit:REV */ + { + uc_chg_type = VehicleSensSetGyroRevlG(pst_data); + + if (b_sens_ext == TRUE) { + VehicleSensSetGyroExtlG(pst_data); + } + (*p_data_master_set_n)(pst_data->ul_did, uc_chg_type, VEHICLESENS_GETMETHOD_LINE); + + break; + } + + case POSHAL_DID_SPEED_PULSE_FLAG: + { + uc_chg_type = VehicleSensSetSpeedPulseFlag((const LSDRV_LSDATA_G *)pst_data); + + (*p_data_master_set_n)(pst_data->ul_did, uc_chg_type, VEHICLESENS_GETMETHOD_LINE); + /* ++ PastModel002 support DR */ + VehicleSensDeliveryProcDR(pst_data->ul_did, uc_chg_type, VEHICLESENS_GETMETHOD_LINE); + /* -- PastModel002 support DR */ + + break; + } + case POSHAL_DID_GPS_INTERRUPT_FLAG: + { + uc_chg_type = VehicleSensSetGpsInterruptFlag((const LSDRV_LSDATA_G *)pst_data); + + (*p_data_master_set_n)(pst_data->ul_did, uc_chg_type, VEHICLESENS_GETMETHOD_LINE); + + break; + } + case POSHAL_DID_REV: + { + uc_chg_type = VehicleSensSetRevlG(pst_data); + if (b_sens_ext == TRUE) { + VehicleSensSetRevExtlG(pst_data); + } + (*p_data_master_set_n)(pst_data->ul_did, uc_chg_type, VEHICLESENS_GETMETHOD_LINE); + break; + } + case POSHAL_DID_GYRO_TEMP: + { + uc_chg_type = VehicleSensSetGyroTemplG(pst_data); + if (b_sens_ext == TRUE) { + VehicleSensSetGyroTempExtlG(pst_data); + } + (*p_data_master_set_n)(pst_data->ul_did, uc_chg_type, VEHICLESENS_GETMETHOD_LINE); + break; + } + case POSHAL_DID_GSNS_X: + { + uc_chg_type = VehicleSensSetGsnsXlG(pst_data); + if (b_sens_ext == TRUE) { + VehicleSensSetGsnsXExtlG(pst_data); + } + (*p_data_master_set_n)(pst_data->ul_did, uc_chg_type, VEHICLESENS_GETMETHOD_LINE); + break; + } + case POSHAL_DID_GSNS_Y: + { + uc_chg_type = VehicleSensSetGsnsYlG(pst_data); + if (b_sens_ext == TRUE) { + VehicleSensSetGsnsYExtlG(pst_data); + } + (*p_data_master_set_n)(pst_data->ul_did, uc_chg_type, VEHICLESENS_GETMETHOD_LINE); + break; + } + case POSHAL_DID_GSNS_Z: + { + uc_chg_type = VehicleSensSetGsnsZlG(pst_data); + if (b_sens_ext == TRUE) { + VehicleSensSetGsnsZExtlG(pst_data); + } + (*p_data_master_set_n)(pst_data->ul_did, uc_chg_type, VEHICLESENS_GETMETHOD_LINE); + break; + } + case POSHAL_DID_PULSE_TIME: + { + uc_chg_type = VehicleSensSetPulseTimelG(pst_data); + if (b_sens_ext == TRUE) { + VehicleSensSetPulseTimeExtlG(pst_data); + } + (*p_data_master_set_n)(pst_data->ul_did, uc_chg_type, VEHICLESENS_GETMETHOD_LINE); + break; + } + default: + break; + } +} #if CONFIG_SENSOR_EXT_VALID /* Initial Sensor Support */ /******************************************************************************* @@ -382,31 +448,43 @@ void VehicleSensInitDataMaster(void) { * NOTE : * RETURN : void ******************************************************************************/ -//void VehicleSensSetDataMasterLineSensFst(const LSDRV_LSDATA_FST *pst_data, PFUNC_DMASTER_SET_N p_data_master_set_n) { // LCOV_EXCL_START 8: dead code // // NOLINT(whitespace/line_length) -// AGL_ASSERT_NOT_TESTED(); // LCOV_EXCL_LINE 200: test assert -// u_int8 uc_chg_type; -// -// /*------------------------------------------------------*/ -// /* Call the data set processing associated with the DID */ -// /* Call the data master set notification process */ -// /*------------------------------------------------------*/ -// switch (pst_data->ul_did) { -// case POSHAL_DID_GYRO_FST: /* 3 to 14bit A/D value,0bit:REV */ -// { -// uc_chg_type = VehicleSensSetGyroFstl(pst_data); -// (*p_data_master_set_n)(pst_data->ul_did, uc_chg_type, VEHICLESENS_GETMETHOD_LINE); -// break; -// } -// case POSHAL_DID_SPEED_PULSE_FST: -// { -// uc_chg_type = VehicleSensSetSpeedPulseFstl(pst_data); -// (*p_data_master_set_n)(pst_data->ul_did, uc_chg_type, VEHICLESENS_GETMETHOD_LINE); -// break; -// } -// default: -// break; -// } -//} +void VehicleSensSetDataMasterLineSensFst(const LSDRV_LSDATA_FST *pst_data, PFUNC_DMASTER_SET_N p_data_master_set_n) { // LCOV_EXCL_START 8: dead code // // NOLINT(whitespace/line_length) + AGL_ASSERT_NOT_TESTED(); // LCOV_EXCL_LINE 200: test assert + u_int8 uc_chg_type; + + /*------------------------------------------------------*/ + /* Call the data set processing associated with the DID */ + /* Call the data master set notification process */ + /*------------------------------------------------------*/ + switch (pst_data->ul_did) { + case POSHAL_DID_GYRO_X_FST: /* 3 to 14bit A/D value,0bit:REV */ + { + uc_chg_type = VehicleSensSetGyroXFstl(pst_data); + (*p_data_master_set_n)(pst_data->ul_did, uc_chg_type, VEHICLESENS_GETMETHOD_LINE); + break; + } + case POSHAL_DID_GYRO_Y_FST: /* 3 to 14bit A/D value,0bit:REV */ + { + uc_chg_type = VehicleSensSetGyroYFstl(pst_data); + (*p_data_master_set_n)(pst_data->ul_did, uc_chg_type, VEHICLESENS_GETMETHOD_LINE); + break; + } + case POSHAL_DID_GYRO_Z_FST: /* 3 to 14bit A/D value,0bit:REV */ + { + uc_chg_type = VehicleSensSetGyroZFstl(pst_data); + (*p_data_master_set_n)(pst_data->ul_did, uc_chg_type, VEHICLESENS_GETMETHOD_LINE); + break; + } + case POSHAL_DID_SPEED_PULSE_FST: + { + uc_chg_type = VehicleSensSetSpeedPulseFstl(pst_data); + (*p_data_master_set_n)(pst_data->ul_did, uc_chg_type, VEHICLESENS_GETMETHOD_LINE); + break; + } + default: + break; + } +} // LCOV_EXCL_STOP /******************************************************************************* * MODULE : VehicleSensSetDataMasterLineSensFstG @@ -417,118 +495,158 @@ void VehicleSensInitDataMaster(void) { * NOTE : * RETURN : void ******************************************************************************/ -//void VehicleSensSetDataMasterLineSensFstG(const LSDRV_MSG_LSDATA_DAT_FST *pst_data, -// PFUNC_DMASTER_SET_N p_data_master_set_n) { -// u_int8 uc_chg_type; -// -// /* Internal debug log output */ -// FRAMEWORKUNIFIEDLOG(ZONE_26, __FUNCTION__, "+"); -// -// /*------------------------------------------------------*/ -// /* Call the data set processing associated with the DID */ -// /* Call the data master set notification process */ -// /*------------------------------------------------------*/ -// switch (pst_data->st_gyro.ul_did) { -// case POSHAL_DID_GYRO_FST: -// { -// uc_chg_type = VehicleSensSetGyroFstG(&(pst_data->st_gyro)); -// if (pst_data->st_gyro.uc_partition_max == pst_data->st_gyro.uc_partition_num) -// { -// (*p_data_master_set_n)(pst_data->st_gyro.ul_did, uc_chg_type, VEHICLESENS_GETMETHOD_LINE); -// } -// break; -// } -// default: -// break; -// } -// -// switch (pst_data->st_speed.ul_did) { -// case POSHAL_DID_SPEED_PULSE_FST: -// { -// uc_chg_type = VehicleSensSetSpeedPulseFstG(&(pst_data->st_speed)); -// if (pst_data->st_speed.uc_partition_max == pst_data->st_speed.uc_partition_num) -// { -// (*p_data_master_set_n)(pst_data->st_speed.ul_did, uc_chg_type, VEHICLESENS_GETMETHOD_LINE); -// } -// break; -// } -// default: -// break; -// } -// -// switch (pst_data->st_spd_pulse_flg.ul_did) { -// case POSHAL_DID_SPEED_PULSE_FLAG_FST: -// { -// uc_chg_type = VehicleSensSetSpeedPulseFlagFstG(&(pst_data->st_spd_pulse_flg)); -// if (pst_data->st_spd_pulse_flg.uc_partition_max == pst_data->st_spd_pulse_flg.uc_partition_num) -// { -// (*p_data_master_set_n)(pst_data->st_spd_pulse_flg.ul_did, uc_chg_type, VEHICLESENS_GETMETHOD_LINE); -// } -// break; -// } -// default: -// break; -// } -// -// switch (pst_data->st_rev.ul_did) { -// case POSHAL_DID_REV_FST: -// { -// uc_chg_type = VehicleSensSetRevFstG(&(pst_data->st_rev)); -// if (pst_data->st_rev.uc_partition_max == pst_data->st_rev.uc_partition_num) -// { -// (*p_data_master_set_n)(pst_data->st_rev.ul_did, uc_chg_type, VEHICLESENS_GETMETHOD_LINE); -// } -// break; -// } -// default: -// break; -// } -// -// switch (pst_data->st_gyro_temp.ul_did) { -// case POSHAL_DID_GYRO_TEMP_FST: -// { -// uc_chg_type = VehicleSensSetGyroTempFstG(&(pst_data->st_gyro_temp)); -// -// if (pst_data->st_gyro_temp.uc_partition_max == pst_data->st_gyro_temp.uc_partition_num) { -// (*p_data_master_set_n)(pst_data->st_gyro_temp.ul_did, uc_chg_type, VEHICLESENS_GETMETHOD_LINE); -// } -// break; -// } -// default: -// break; -// } -// -// switch (pst_data->st_gsns_x.ul_did) { -// case POSHAL_DID_GSNS_X_FST: -// { -// uc_chg_type = VehicleSensSetGsnsXFstG(&(pst_data->st_gsns_x)); -// -// if (pst_data->st_gsns_x.uc_partition_max == pst_data->st_gsns_x.uc_partition_num) { -// (*p_data_master_set_n)(pst_data->st_gsns_x.ul_did, uc_chg_type, VEHICLESENS_GETMETHOD_LINE); -// } -// break; -// } -// default: -// break; -// } -// -// switch (pst_data->st_gsns_y.ul_did) { -// case POSHAL_DID_GSNS_Y_FST: -// { -// uc_chg_type = VehicleSensSetGsnsYFstG(&(pst_data->st_gsns_y)); -// -// if (pst_data->st_gsns_y.uc_partition_max == pst_data->st_gsns_y.uc_partition_num) { -// (*p_data_master_set_n)(pst_data->st_gsns_y.ul_did, uc_chg_type, VEHICLESENS_GETMETHOD_LINE); -// } -// break; -// } -// default: -// break; -// } -// -// /* Internal debug log output */ -// FRAMEWORKUNIFIEDLOG(ZONE_26, __FUNCTION__, "-"); -//} +void VehicleSensSetDataMasterLineSensFstG(const LSDRV_MSG_LSDATA_DAT_FST *pst_data, + PFUNC_DMASTER_SET_N p_data_master_set_n) { + u_int8 uc_chg_type; + + /* Internal debug log output */ + FRAMEWORKUNIFIEDLOG(ZONE_26, __FUNCTION__, "+"); + + /*------------------------------------------------------*/ + /* Call the data set processing associated with the DID */ + /* Call the data master set notification process */ + /*------------------------------------------------------*/ + switch (pst_data->st_gyro_x.ul_did) { + case POSHAL_DID_GYRO_X_FST: + { + uc_chg_type = VehicleSensSetGyroXFstG(&(pst_data->st_gyro_x)); + if (pst_data->st_gyro_x.uc_partition_max == pst_data->st_gyro_x.uc_partition_num) + { + (*p_data_master_set_n)(pst_data->st_gyro_x.ul_did, uc_chg_type, VEHICLESENS_GETMETHOD_LINE); + } + break; + } + default: + break; + } + + switch (pst_data->st_gyro_y.ul_did) { + case POSHAL_DID_GYRO_Y_FST: + { + uc_chg_type = VehicleSensSetGyroYFstG(&(pst_data->st_gyro_y)); + if (pst_data->st_gyro_y.uc_partition_max == pst_data->st_gyro_y.uc_partition_num) { + (*p_data_master_set_n)(pst_data->st_gyro_y.ul_did, uc_chg_type, VEHICLESENS_GETMETHOD_LINE); + } + break; + } + default: + break; + } + + switch (pst_data->st_gyro_z.ul_did) { + case POSHAL_DID_GYRO_Z_FST: + { + uc_chg_type = VehicleSensSetGyroZFstG(&(pst_data->st_gyro_z)); + if (pst_data->st_gyro_z.uc_partition_max == pst_data->st_gyro_z.uc_partition_num) { + (*p_data_master_set_n)(pst_data->st_gyro_z.ul_did, uc_chg_type, VEHICLESENS_GETMETHOD_LINE); + } + break; + } + default: + break; + } + + switch (pst_data->st_speed.ul_did) { + case POSHAL_DID_SPEED_PULSE_FST: + { + uc_chg_type = VehicleSensSetSpeedPulseFstG(&(pst_data->st_speed)); + if (pst_data->st_speed.uc_partition_max == pst_data->st_speed.uc_partition_num) + { + (*p_data_master_set_n)(pst_data->st_speed.ul_did, uc_chg_type, VEHICLESENS_GETMETHOD_LINE); + } + break; + } + default: + break; + } + + switch (pst_data->st_spd_pulse_flg.ul_did) { + case POSHAL_DID_SPEED_PULSE_FLAG_FST: + { + uc_chg_type = VehicleSensSetSpeedPulseFlagFstG(&(pst_data->st_spd_pulse_flg)); + if (pst_data->st_spd_pulse_flg.uc_partition_max == pst_data->st_spd_pulse_flg.uc_partition_num) + { + (*p_data_master_set_n)(pst_data->st_spd_pulse_flg.ul_did, uc_chg_type, VEHICLESENS_GETMETHOD_LINE); + } + break; + } + default: + break; + } + + switch (pst_data->st_rev.ul_did) { + case POSHAL_DID_REV_FST: + { + uc_chg_type = VehicleSensSetRevFstG(&(pst_data->st_rev)); + if (pst_data->st_rev.uc_partition_max == pst_data->st_rev.uc_partition_num) + { + (*p_data_master_set_n)(pst_data->st_rev.ul_did, uc_chg_type, VEHICLESENS_GETMETHOD_LINE); + } + break; + } + default: + break; + } + + switch (pst_data->st_gyro_temp.ul_did) { + case POSHAL_DID_GYRO_TEMP_FST: + { + uc_chg_type = VehicleSensSetGyroTempFstG(&(pst_data->st_gyro_temp)); + + if (pst_data->st_gyro_temp.uc_partition_max == pst_data->st_gyro_temp.uc_partition_num) { + (*p_data_master_set_n)(pst_data->st_gyro_temp.ul_did, uc_chg_type, VEHICLESENS_GETMETHOD_LINE); + } + break; + } + default: + break; + } + + switch (pst_data->st_gsns_x.ul_did) { + case POSHAL_DID_GSNS_X_FST: + { + uc_chg_type = VehicleSensSetGsnsXFstG(&(pst_data->st_gsns_x)); + + if (pst_data->st_gsns_x.uc_partition_max == pst_data->st_gsns_x.uc_partition_num) { + (*p_data_master_set_n)(pst_data->st_gsns_x.ul_did, uc_chg_type, VEHICLESENS_GETMETHOD_LINE); + } + break; + } + default: + break; + } + + switch (pst_data->st_gsns_y.ul_did) { + case POSHAL_DID_GSNS_Y_FST: + { + uc_chg_type = VehicleSensSetGsnsYFstG(&(pst_data->st_gsns_y)); + + if (pst_data->st_gsns_y.uc_partition_max == pst_data->st_gsns_y.uc_partition_num) { + (*p_data_master_set_n)(pst_data->st_gsns_y.ul_did, uc_chg_type, VEHICLESENS_GETMETHOD_LINE); + } + break; + } + default: + break; + } + + switch (pst_data->st_gsns_z.ul_did) { + case POSHAL_DID_GSNS_Z_FST: + { + uc_chg_type = VehicleSensSetGsnsZFstG(&(pst_data->st_gsns_z)); + + if (pst_data->st_gsns_z.uc_partition_max == pst_data->st_gsns_z.uc_partition_num) { + (*p_data_master_set_n)(pst_data->st_gsns_z.ul_did, uc_chg_type, VEHICLESENS_GETMETHOD_LINE); + } + break; + } + default: + break; + } + + /* Internal debug log output */ + FRAMEWORKUNIFIEDLOG(ZONE_26, __FUNCTION__, "-"); +} #endif /******************************************************************************* @@ -540,329 +658,330 @@ void VehicleSensInitDataMaster(void) { * NOTE : * RETURN : void ******************************************************************************/ -//void VehicleSensSetDataMasterGps(SENSOR_MSG_GPSDATA_DAT *pst_data, -// PFUNC_DMASTER_SET_N p_data_master_set_n) { -// u_int8 uc_chg_type; -// SENSORLOCATION_LONLATINFO_DAT lstLonLat; -// SENSORLOCATION_ALTITUDEINFO_DAT lstAltitude; -// SENSORMOTION_HEADINGINFO_DAT lstHeading; -// MDEV_GPS_CUSTOMDATA *pstCustomData; -// -//// RET_API ret; -// -//// char* pEnvPositioning_CWORD86_ = NULL; -//// BOOL sndFlg; -// -// VEHICLESENS_DATA_MASTER st_data; -// u_int8 antennaState = 0; -// u_int8 sensCount = 0; -// u_int8 ucResult = SENSLOG_RES_SUCCESS; -// -// EFrameworkunifiedStatus eStatus = eFrameworkunifiedStatusFail; -// BOOL bIsAvailable; -// PNO us_pno; -// -// /* Antenna Connection Information */ -// (void)memset(reinterpret_cast(&st_data), 0, sizeof(st_data)); -// VehicleSensGetGpsAntennal(&st_data); -// antennaState = st_data.uc_data[0]; -// -// /* Sensor Counter */ -// (void)memset(reinterpret_cast(&st_data), 0, sizeof(st_data)); -// VehicleSensGetSnsCounterl(&st_data); -// /** Sensor Counter Value Calculation */ -// /** Subtract sensor counter according to data amount from sensor counter.(Rounded off) */ -// /** Communication speed9600bps = 1200byte/s,Sensor counter is 1 count at 100ms. */ -// sensCount = st_data.uc_data[0]; -// -// FRAMEWORKUNIFIEDLOG(ZONE_27, __FUNCTION__, -// "antennaState = %d, sensCount = %d", antennaState, sensCount); -// -// /*------------------------------------------------------*/ -// /* Call the data set processing associated with the DID */ -// /* Call the data master set notification process */ -// /*------------------------------------------------------*/ -// switch (pst_data->ul_did) { // LCOV_EXCL_BR_LINE 6:some DID is not used -// case VEHICLE_DID_GPS_UBLOX_NAV_VELNED: -// { -// // LCOV_EXCL_START 8 : dead code -// AGL_ASSERT_NOT_TESTED(); // LCOV_EXCL_LINE 200: test assert -//#if (GPS_DEBUG == 1) /* PastModel002_DR_VEHICLE */ -// FRAMEWORKUNIFIEDLOG(ZONE_INFO, __FUNCTION__, -// "VehicleSens_SetDataMaster VEHICLE_DID_GPS_UBLOX_NAV_VELNED \r\n"); -//#endif -// uc_chg_type = VehicleSensSetNavVelnedG(pst_data); -// (*p_data_master_set_n)(pst_data->ul_did, uc_chg_type, VEHICLESENS_GETMETHOD_GPS); -// /* ++ PastModel002 support DR */ -// VehicleSensDeliveryProcDR(pst_data->ul_did, uc_chg_type, VEHICLESENS_GETMETHOD_GPS); -// /* -- PastModel002 support DR */ -// break; -// // LCOV_EXCL_STOP -// } -// case VEHICLE_DID_GPS_UBLOX_NAV_TIMEUTC: -// { -// // LCOV_EXCL_START 8 : dead code -// AGL_ASSERT_NOT_TESTED(); // LCOV_EXCL_LINE 200: test assert -//#if (GPS_DEBUG == 1) /* PastModel002_DR_VEHICLE */ -// FRAMEWORKUNIFIEDLOG(ZONE_INFO, __FUNCTION__, -// "VehicleSens_SetDataMaster VEHICLE_DID_GPS_UBLOX_NAV_TIMEUTC \r\n"); -//#endif -// uc_chg_type = VehicleSensSetNavTimeUtcG(pst_data); -// (*p_data_master_set_n)(pst_data->ul_did, uc_chg_type, VEHICLESENS_GETMETHOD_GPS); -// /* ++ PastModel002 support DR */ -// VehicleSensDeliveryProcDR(pst_data->ul_did, uc_chg_type, VEHICLESENS_GETMETHOD_GPS); -// /* -- PastModel002 support DR */ -// break; -// // LCOV_EXCL_STOP -// } -// case VEHICLE_DID_GPS_UBLOX_NAV_TIMEGPS: -// { -// // LCOV_EXCL_START 8 : dead code -// AGL_ASSERT_NOT_TESTED(); // LCOV_EXCL_LINE 200: test assert -//#if (GPS_DEBUG == 1) /* PastModel002_DR_VEHICLE */ -// FRAMEWORKUNIFIEDLOG(ZONE_INFO, __FUNCTION__, -// "VehicleSens_SetDataMaster VEHICLE_DID_GPS_UBLOX_NAV_TIMEGPS \r\n"); -//#endif -// uc_chg_type = VehicleSensSetNavTimeGpsG(pst_data); -// (*p_data_master_set_n)(pst_data->ul_did, uc_chg_type, VEHICLESENS_GETMETHOD_GPS); -// break; -// // LCOV_EXCL_STOP -// } -// case VEHICLE_DID_GPS_UBLOX_NAV_SVINFO: -// { -// // LCOV_EXCL_START 8 : dead code -// AGL_ASSERT_NOT_TESTED(); // LCOV_EXCL_LINE 200: test assert -//#if (GPS_DEBUG == 1) /* PastModel002_DR_VEHICLE */ -// FRAMEWORKUNIFIEDLOG(ZONE_INFO, __FUNCTION__, -// "VehicleSens_SetDataMaster VEHICLE_DID_GPS_UBLOX_NAV_SVINFO \r\n"); -//#endif -// uc_chg_type = VehicleSensSetNavSvInfoG(pst_data); -// (*p_data_master_set_n)(pst_data->ul_did, uc_chg_type, VEHICLESENS_GETMETHOD_GPS); -// /* ++ PastModel002 support DR */ -// VehicleSensDeliveryProcDR(pst_data->ul_did, uc_chg_type, VEHICLESENS_GETMETHOD_GPS); -// /* -- PastModel002 support DR */ -// break; -// // LCOV_EXCL_STOP -// } -// case VEHICLE_DID_GPS_UBLOX_NAV_STATUS: -// { -// // LCOV_EXCL_START 8 : dead code -// AGL_ASSERT_NOT_TESTED(); // LCOV_EXCL_LINE 200: test assert -//#if (GPS_DEBUG == 1) /* PastModel002_DR_VEHICLE */ -// FRAMEWORKUNIFIEDLOG(ZONE_INFO, __FUNCTION__, -// "VehicleSens_SetDataMaster VEHICLE_DID_GPS_UBLOX_NAV_STATUS \r\n"); -//#endif -// uc_chg_type = VehicleSensSetNavStatusG(pst_data); -// (*p_data_master_set_n)(pst_data->ul_did, uc_chg_type, VEHICLESENS_GETMETHOD_GPS); -// /* ++ PastModel002 support DR */ -// VehicleSensDeliveryProcDR(pst_data->ul_did, uc_chg_type, VEHICLESENS_GETMETHOD_GPS); -// /* -- PastModel002 support DR */ -// break; -// // LCOV_EXCL_STOP -// } -// case VEHICLE_DID_GPS_UBLOX_NAV_POSLLH: -// { -// // LCOV_EXCL_START 8 : dead code -// AGL_ASSERT_NOT_TESTED(); // LCOV_EXCL_LINE 200: test assert -//#if (GPS_DEBUG == 1) /* PastModel002_DR_VEHICLE */ -// FRAMEWORKUNIFIEDLOG(ZONE_INFO, __FUNCTION__, -// "VehicleSens_SetDataMaster VEHICLE_DID_GPS_UBLOX_NAV_POSLLH \r\n"); -//#endif -// uc_chg_type = VehicleSensSetNavPosllhG(pst_data); -// (*p_data_master_set_n)(pst_data->ul_did, uc_chg_type, VEHICLESENS_GETMETHOD_GPS); -// /* ++ PastModel002 support DR */ -// VehicleSensDeliveryProcDR(pst_data->ul_did, uc_chg_type, VEHICLESENS_GETMETHOD_GPS); -// /* -- PastModel002 support DR */ -// break; -// // LCOV_EXCL_STOP -// } -// case VEHICLE_DID_GPS_UBLOX_NAV_CLOCK: -// { -// // LCOV_EXCL_START 8 : dead code -// AGL_ASSERT_NOT_TESTED(); // LCOV_EXCL_LINE 200: test assert -//#if (GPS_DEBUG == 1) /* PastModel002_DR_VEHICLE */ -// FRAMEWORKUNIFIEDLOG(ZONE_INFO, __FUNCTION__, -// "VehicleSens_SetDataMaster VEHICLE_DID_GPS_UBLOX_NAV_CLOCK \r\n"); -//#endif -// uc_chg_type = VehicleSensSetNavClockG(pst_data); -// (*p_data_master_set_n)(pst_data->ul_did, uc_chg_type, VEHICLESENS_GETMETHOD_GPS); -// /* ++ PastModel002 support DR */ -// VehicleSensDeliveryProcDR(pst_data->ul_did, uc_chg_type, VEHICLESENS_GETMETHOD_GPS); -// /* -- PastModel002 support DR */ -// break; -// // LCOV_EXCL_STOP -// } -// case VEHICLE_DID_GPS_UBLOX_NAV_DOP: -// { -// // LCOV_EXCL_START 8 : dead code -// AGL_ASSERT_NOT_TESTED(); // LCOV_EXCL_LINE 200: test assert -//#if (GPS_DEBUG == 1) /* PastModel002_DR_VEHICLE */ -// FRAMEWORKUNIFIEDLOG(ZONE_INFO, __FUNCTION__, -// "VehicleSens_SetDataMaster VEHICLE_DID_GPS_UBLOX_NAV_DOP \r\n"); -//#endif -// uc_chg_type = VehicleSensSetNavDopG(pst_data); -// (*p_data_master_set_n)(pst_data->ul_did, uc_chg_type, VEHICLESENS_GETMETHOD_GPS); -// /* ++ PastModel002 support DR */ -// VehicleSensDeliveryProcDR(pst_data->ul_did, uc_chg_type, VEHICLESENS_GETMETHOD_GPS); -// /* -- PastModel002 support DR */ -// break; -// // LCOV_EXCL_STOP -// } -// case VEHICLE_DID_GPS_UBLOX_MON_HW: -// { -// // LCOV_EXCL_START 8 : dead code -// AGL_ASSERT_NOT_TESTED(); // LCOV_EXCL_LINE 200: test assert -//#if (GPS_DEBUG == 1) /* PastModel002_DR_VEHICLE */ -// FRAMEWORKUNIFIEDLOG(ZONE_INFO, __FUNCTION__, "VehicleSens_SetDataMaster VEHICLE_DID_GPS_UBLOX_MON_HW \r\n"); -//#endif -// uc_chg_type = VehicleSensSetMonHwG(pst_data); -// (*p_data_master_set_n)(pst_data->ul_did, uc_chg_type, VEHICLESENS_GETMETHOD_GPS); -// break; -// // LCOV_EXCL_STOP -// } -// case VEHICLE_DID_GPS_COUNTER: -// { -// // LCOV_EXCL_START 8 : dead code -// AGL_ASSERT_NOT_TESTED(); // LCOV_EXCL_LINE 200: test assert -// uc_chg_type = VehicleSensSetGpsCounterg(pst_data); -// (*p_data_master_set_n)(pst_data->ul_did, uc_chg_type, VEHICLESENS_GETMETHOD_GPS); -// break; -// // LCOV_EXCL_STOP -// } -// /* GPS raw data(_CWORD82_ NMEA) */ -// case VEHICLE_DID_GPS__CWORD82__NMEA: -// { -// /* NMEA data */ -// FRAMEWORKUNIFIEDLOG(ZONE_27, __FUNCTION__, -// "VehicleSens_GpsDataDelivery VEHICLE_DID_GPS__CWORD82__NMEA -->"); -// -// /* Insert Antenna Connection Status and Sensor Counter */ -// pst_data->uc_data[1] = antennaState; /* Insert Antennas into 2byte Eyes */ -// /* Place counters at 3byte */ -// pst_data->uc_data[2] = static_cast(sensCount - (u_int8)(((GPS_NMEA_SZ * 10) / 1200) + 1)); -// -// uc_chg_type = VehicleSensSetGps_CWORD82_NmeaG(pst_data); /* Ignore->MISRA-C++:2008 Rule 5-2-5 */ -// (*p_data_master_set_n)(pst_data->ul_did, uc_chg_type, VEHICLESENS_GETMETHOD_GPS); -// FRAMEWORKUNIFIEDLOG(ZONE_27, __FUNCTION__, -// "VehicleSens_GpsDataDelivery VEHICLE_DID_GPS__CWORD82__NMEA <--"); -// break; -// } -// /* GPS raw data(FullBinary) */ -// case POSHAL_DID_GPS__CWORD82__FULLBINARY: -// { -// /* FullBin data */ -// FRAMEWORKUNIFIEDLOG(ZONE_27, __FUNCTION__, -// "VehicleSens_GpsDataDelivery POSHAL_DID_GPS__CWORD82__FULLBINARY -->"); -// -// /* Insert Antenna Connection Status and Sensor Counter */ -// pst_data->uc_data[0] = antennaState; /* Insert Antennas into 1byte Eyes */ -// /* Place counters at 2byte */ -// pst_data->uc_data[1] = static_cast(sensCount - (u_int8)(((GPS_CMD_FULLBIN_SZ * 10) / 1200) + 1)); -// -// uc_chg_type = VehicleSensSetGps_CWORD82_FullBinaryG(pst_data); -// (*p_data_master_set_n)(pst_data->ul_did, uc_chg_type, VEHICLESENS_GETMETHOD_GPS); -// FRAMEWORKUNIFIEDLOG(ZONE_27, __FUNCTION__, -// "VehicleSens_GpsDataDelivery POSHAL_DID_GPS__CWORD82__FULLBINARY <--"); -// break; -// } -// /* GPS raw data(Specific information) */ -// case POSHAL_DID_GPS__CWORD82___CWORD44_GP4: -// { -// /* GPS-specific information */ -// uc_chg_type = VehicleSensSetGps_CWORD82__CWORD44_Gp4G(pst_data); /* Ignore->MISRA-C++:2008 Rule 5-2-5 */ -// (*p_data_master_set_n)(pst_data->ul_did, uc_chg_type, VEHICLESENS_GETMETHOD_GPS); -// break; -// } -// case POSHAL_DID_GPS_CUSTOMDATA: -// { -// pstCustomData = reinterpret_cast(pst_data->uc_data); -// /* Latitude/LongitudeInformation */ -// (void)memcpy(&lstLonLat, &(pstCustomData->st_lonlat), sizeof(SENSORLOCATION_LONLATINFO_DAT)); -// lstLonLat.SyncCnt = VehicleSensGetSensorCnt(); /* Synchronization counter setting */ -// uc_chg_type = VehicleSensSetLocationLonLatG(&lstLonLat); -// (*p_data_master_set_n)(VEHICLE_DID_LOCATION_LONLAT, uc_chg_type, VEHICLESENS_GETMETHOD_GPS); -// -// /* Altitude information */ -// (void)memcpy(&lstAltitude, &(pstCustomData->st_altitude), sizeof(SENSORLOCATION_ALTITUDEINFO_DAT)); -// lstAltitude.SyncCnt = VehicleSensGetSensorCnt(); /* Synchronization counter setting */ -// uc_chg_type = VehicleSensSetLocationAltitudeG(&lstAltitude); -// (*p_data_master_set_n)(VEHICLE_DID_LOCATION_ALTITUDE, uc_chg_type, VEHICLESENS_GETMETHOD_GPS); -// -// /* Bearing information */ -// (void)memcpy(&lstHeading, &(pstCustomData->st_heading), sizeof(SENSORMOTION_HEADINGINFO_DAT)); -// lstHeading.SyncCnt = VehicleSensGetSensorCnt(); /* Synchronization counter setting */ -// uc_chg_type = VehicleSensSetMotionHeadingG(&lstHeading); -// (*p_data_master_set_n)(VEHICLE_DID_MOTION_HEADING, uc_chg_type, VEHICLESENS_GETMETHOD_GPS); -// -// /* GPS time information */ -// uc_chg_type = VehicleSensSetGpsTimeG(&(pstCustomData->st_gps_time)); -// (*p_data_master_set_n)(POSHAL_DID_GPS_TIME, uc_chg_type, VEHICLESENS_GETMETHOD_GPS); -// -// /* Set GPS time to CLOCK */ -// eStatus = ClockIfDtimeSetGpsTime(&(pstCustomData->st_gps_time), &bIsAvailable); -// if ((bIsAvailable == TRUE) && (eStatus != eFrameworkunifiedStatusOK)) { -// ucResult = SENSLOG_RES_FAIL; -// FRAMEWORKUNIFIEDLOG(ZONE_ERR, __FUNCTION__, -// "ClockIfDtimeSetGpsTime ERROR!! [ret=%d, y=%d, m=%d, d=%d, h=%d, n=%d, s=%d, sts=%d]", -// eStatus, pstCustomData->st_gps_time.utc.year, pstCustomData->st_gps_time.utc.month, -// pstCustomData->st_gps_time.utc.date, -// pstCustomData->st_gps_time.utc.hour, pstCustomData->st_gps_time.utc.minute, -// pstCustomData->st_gps_time.utc.second, pstCustomData->st_gps_time.tdsts); -// } -// us_pno = _pb_CnvName2Pno(SENSLOG_PNAME_CLOCK); -// SensLogWriteOutputData(SENSLOG_DATA_O_TIME_CS, 0, us_pno, -// reinterpret_cast(&(pstCustomData->st_gps_time)), -// sizeof(pstCustomData->st_gps_time), ucResult); -// -// /* Diag Info */ -// uc_chg_type = VehicleSensSetNaviinfoDiagGPSg(&(pstCustomData->st_diag_gps)); -// (*p_data_master_set_n)(VEHICLE_DID_NAVIINFO_DIAG_GPS, uc_chg_type, VEHICLESENS_GETMETHOD_GPS); -// break; -// } -// /* GPS raw data(NMEA except _CWORD82_) */ -// case POSHAL_DID_GPS_NMEA: -// { -// /* NMEA data */ -// uc_chg_type = VehicleSensSetGpsNmeaG(pst_data); -// (*p_data_master_set_n)(pst_data->ul_did, uc_chg_type, VEHICLESENS_GETMETHOD_GPS); -// break; -// } -// /* GPS version(except _CWORD82_) */ -// case POSHAL_DID_GPS_VERSION: -// { -// VehicleSensSetGpsVersion(pst_data); -// break; -// } -// /* Raw GPS time data */ -// case POSHAL_DID_GPS_TIME_RAW: -// { -// (void)VehicleSensSetGpsTimeRawG(reinterpret_cast(pst_data->uc_data)); -// break; -// } -// case POSHAL_DID_GPS_WKNROLLOVER: -// { -// (void)VehicleSensSetWknRolloverG(reinterpret_cast(pst_data->uc_data)); -// break; -// } -// /* GPS clock drift */ -// case POSHAL_DID_GPS_CLOCK_DRIFT: -// { -// uc_chg_type = VehicleSensSetGpsClockDriftG(reinterpret_cast(pst_data->uc_data)); -// (*p_data_master_set_n)(pst_data->ul_did, uc_chg_type, VEHICLESENS_GETMETHOD_GPS); -// break; -// } -// /* GPS clock frequency */ -// case POSHAL_DID_GPS_CLOCK_FREQ: -// { -// uc_chg_type = VehicleSensSetGpsClockFreqG(reinterpret_cast(pst_data->uc_data)); -// (*p_data_master_set_n)(pst_data->ul_did, uc_chg_type, VEHICLESENS_GETMETHOD_GPS); -// break; -// } -// -// default: -// break; -// } -//} +void VehicleSensSetDataMasterGps(SENSOR_MSG_GPSDATA_DAT *pst_data, + PFUNC_DMASTER_SET_N p_data_master_set_n) { + u_int8 uc_chg_type; + SENSORLOCATION_LONLATINFO_DAT lstLonLat; + SENSORLOCATION_ALTITUDEINFO_DAT lstAltitude; + SENSORMOTION_HEADINGINFO_DAT lstHeading; + MDEV_GPS_CUSTOMDATA *pstCustomData; + + VEHICLESENS_DATA_MASTER st_data; + u_int8 antennaState = 0; + u_int8 sensCount = 0; + u_int8 ucResult = SENSLOG_RES_SUCCESS; + + EFrameworkunifiedStatus eStatus = eFrameworkunifiedStatusFail; + BOOL bIsAvailable; + PNO us_pno; + + /* Antenna Connection Information */ + (void)memset(reinterpret_cast(&st_data), 0, sizeof(st_data)); + VehicleSensGetGpsAntennal(&st_data); + antennaState = st_data.uc_data[0]; + + /* Sensor Counter */ + (void)memset(reinterpret_cast(&st_data), 0, sizeof(st_data)); + VehicleSensGetSnsCounterl(&st_data); + /** Sensor Counter Value Calculation */ + /** Subtract sensor counter according to data amount from sensor counter.(Rounded off) */ + /** Communication speed9600bps = 1200byte/s,Sensor counter is 1 count at 100ms. */ + sensCount = st_data.uc_data[0]; + + FRAMEWORKUNIFIEDLOG(ZONE_27, __FUNCTION__, + "antennaState = %d, sensCount = %d", antennaState, sensCount); + + /*------------------------------------------------------*/ + /* Call the data set processing associated with the DID */ + /* Call the data master set notification process */ + /*------------------------------------------------------*/ + switch (pst_data->ul_did) { // LCOV_EXCL_BR_LINE 6:some DID is not used + case VEHICLE_DID_GPS_UBLOX_NAV_VELNED: + { + // LCOV_EXCL_START 8 : dead code + AGL_ASSERT_NOT_TESTED(); // LCOV_EXCL_LINE 200: test assert +#if (GPS_DEBUG == 1) /* PastModel002_DR_VEHICLE */ + FRAMEWORKUNIFIEDLOG(ZONE_INFO, __FUNCTION__, + "VehicleSens_SetDataMaster VEHICLE_DID_GPS_UBLOX_NAV_VELNED \r\n"); +#endif + uc_chg_type = VehicleSensSetNavVelnedG(pst_data); + (*p_data_master_set_n)(pst_data->ul_did, uc_chg_type, VEHICLESENS_GETMETHOD_GPS); + /* ++ PastModel002 support DR */ + VehicleSensDeliveryProcDR(pst_data->ul_did, uc_chg_type, VEHICLESENS_GETMETHOD_GPS); + /* -- PastModel002 support DR */ + break; + // LCOV_EXCL_STOP + } + case VEHICLE_DID_GPS_UBLOX_NAV_TIMEUTC: + { + // LCOV_EXCL_START 8 : dead code + AGL_ASSERT_NOT_TESTED(); // LCOV_EXCL_LINE 200: test assert +#if (GPS_DEBUG == 1) /* PastModel002_DR_VEHICLE */ + FRAMEWORKUNIFIEDLOG(ZONE_INFO, __FUNCTION__, + "VehicleSens_SetDataMaster VEHICLE_DID_GPS_UBLOX_NAV_TIMEUTC \r\n"); +#endif + uc_chg_type = VehicleSensSetNavTimeUtcG(pst_data); + (*p_data_master_set_n)(pst_data->ul_did, uc_chg_type, VEHICLESENS_GETMETHOD_GPS); + /* ++ PastModel002 support DR */ + VehicleSensDeliveryProcDR(pst_data->ul_did, uc_chg_type, VEHICLESENS_GETMETHOD_GPS); + /* -- PastModel002 support DR */ + break; + // LCOV_EXCL_STOP + } + case VEHICLE_DID_GPS_UBLOX_NAV_TIMEGPS: + { + // LCOV_EXCL_START 8 : dead code + AGL_ASSERT_NOT_TESTED(); // LCOV_EXCL_LINE 200: test assert +#if (GPS_DEBUG == 1) /* PastModel002_DR_VEHICLE */ + FRAMEWORKUNIFIEDLOG(ZONE_INFO, __FUNCTION__, + "VehicleSens_SetDataMaster VEHICLE_DID_GPS_UBLOX_NAV_TIMEGPS \r\n"); +#endif + uc_chg_type = VehicleSensSetNavTimeGpsG(pst_data); + (*p_data_master_set_n)(pst_data->ul_did, uc_chg_type, VEHICLESENS_GETMETHOD_GPS); + break; + // LCOV_EXCL_STOP + } + case VEHICLE_DID_GPS_UBLOX_NAV_SVINFO: + { + // LCOV_EXCL_START 8 : dead code + AGL_ASSERT_NOT_TESTED(); // LCOV_EXCL_LINE 200: test assert +#if (GPS_DEBUG == 1) /* PastModel002_DR_VEHICLE */ + FRAMEWORKUNIFIEDLOG(ZONE_INFO, __FUNCTION__, + "VehicleSens_SetDataMaster VEHICLE_DID_GPS_UBLOX_NAV_SVINFO \r\n"); +#endif + uc_chg_type = VehicleSensSetNavSvInfoG(pst_data); + (*p_data_master_set_n)(pst_data->ul_did, uc_chg_type, VEHICLESENS_GETMETHOD_GPS); + /* ++ PastModel002 support DR */ + VehicleSensDeliveryProcDR(pst_data->ul_did, uc_chg_type, VEHICLESENS_GETMETHOD_GPS); + /* -- PastModel002 support DR */ + break; + // LCOV_EXCL_STOP + } + case VEHICLE_DID_GPS_UBLOX_NAV_STATUS: + { + // LCOV_EXCL_START 8 : dead code + AGL_ASSERT_NOT_TESTED(); // LCOV_EXCL_LINE 200: test assert +#if (GPS_DEBUG == 1) /* PastModel002_DR_VEHICLE */ + FRAMEWORKUNIFIEDLOG(ZONE_INFO, __FUNCTION__, + "VehicleSens_SetDataMaster VEHICLE_DID_GPS_UBLOX_NAV_STATUS \r\n"); +#endif + uc_chg_type = VehicleSensSetNavStatusG(pst_data); + (*p_data_master_set_n)(pst_data->ul_did, uc_chg_type, VEHICLESENS_GETMETHOD_GPS); + /* ++ PastModel002 support DR */ + VehicleSensDeliveryProcDR(pst_data->ul_did, uc_chg_type, VEHICLESENS_GETMETHOD_GPS); + /* -- PastModel002 support DR */ + break; + // LCOV_EXCL_STOP + } + case VEHICLE_DID_GPS_UBLOX_NAV_POSLLH: + { + // LCOV_EXCL_START 8 : dead code + AGL_ASSERT_NOT_TESTED(); // LCOV_EXCL_LINE 200: test assert +#if (GPS_DEBUG == 1) /* PastModel002_DR_VEHICLE */ + FRAMEWORKUNIFIEDLOG(ZONE_INFO, __FUNCTION__, + "VehicleSens_SetDataMaster VEHICLE_DID_GPS_UBLOX_NAV_POSLLH \r\n"); +#endif + uc_chg_type = VehicleSensSetNavPosllhG(pst_data); + (*p_data_master_set_n)(pst_data->ul_did, uc_chg_type, VEHICLESENS_GETMETHOD_GPS); + /* ++ PastModel002 support DR */ + VehicleSensDeliveryProcDR(pst_data->ul_did, uc_chg_type, VEHICLESENS_GETMETHOD_GPS); + /* -- PastModel002 support DR */ + break; + // LCOV_EXCL_STOP + } + case VEHICLE_DID_GPS_UBLOX_NAV_CLOCK: + { + // LCOV_EXCL_START 8 : dead code + AGL_ASSERT_NOT_TESTED(); // LCOV_EXCL_LINE 200: test assert +#if (GPS_DEBUG == 1) /* PastModel002_DR_VEHICLE */ + FRAMEWORKUNIFIEDLOG(ZONE_INFO, __FUNCTION__, + "VehicleSens_SetDataMaster VEHICLE_DID_GPS_UBLOX_NAV_CLOCK \r\n"); +#endif + uc_chg_type = VehicleSensSetNavClockG(pst_data); + (*p_data_master_set_n)(pst_data->ul_did, uc_chg_type, VEHICLESENS_GETMETHOD_GPS); + /* ++ PastModel002 support DR */ + VehicleSensDeliveryProcDR(pst_data->ul_did, uc_chg_type, VEHICLESENS_GETMETHOD_GPS); + /* -- PastModel002 support DR */ + break; + // LCOV_EXCL_STOP + } + case VEHICLE_DID_GPS_UBLOX_NAV_DOP: + { + // LCOV_EXCL_START 8 : dead code + AGL_ASSERT_NOT_TESTED(); // LCOV_EXCL_LINE 200: test assert +#if (GPS_DEBUG == 1) /* PastModel002_DR_VEHICLE */ + FRAMEWORKUNIFIEDLOG(ZONE_INFO, __FUNCTION__, + "VehicleSens_SetDataMaster VEHICLE_DID_GPS_UBLOX_NAV_DOP \r\n"); +#endif + uc_chg_type = VehicleSensSetNavDopG(pst_data); + (*p_data_master_set_n)(pst_data->ul_did, uc_chg_type, VEHICLESENS_GETMETHOD_GPS); + /* ++ PastModel002 support DR */ + VehicleSensDeliveryProcDR(pst_data->ul_did, uc_chg_type, VEHICLESENS_GETMETHOD_GPS); + /* -- PastModel002 support DR */ + break; + // LCOV_EXCL_STOP + } + case VEHICLE_DID_GPS_UBLOX_MON_HW: + { + // LCOV_EXCL_START 8 : dead code + AGL_ASSERT_NOT_TESTED(); // LCOV_EXCL_LINE 200: test assert +#if (GPS_DEBUG == 1) /* PastModel002_DR_VEHICLE */ + FRAMEWORKUNIFIEDLOG(ZONE_INFO, __FUNCTION__, "VehicleSens_SetDataMaster VEHICLE_DID_GPS_UBLOX_MON_HW \r\n"); +#endif + uc_chg_type = VehicleSensSetMonHwG(pst_data); + (*p_data_master_set_n)(pst_data->ul_did, uc_chg_type, VEHICLESENS_GETMETHOD_GPS); + break; + // LCOV_EXCL_STOP + } + case VEHICLE_DID_GPS_COUNTER: + { + // LCOV_EXCL_START 8 : dead code + AGL_ASSERT_NOT_TESTED(); // LCOV_EXCL_LINE 200: test assert + uc_chg_type = VehicleSensSetGpsCounterg(pst_data); + (*p_data_master_set_n)(pst_data->ul_did, uc_chg_type, VEHICLESENS_GETMETHOD_GPS); + break; + // LCOV_EXCL_STOP + } + /* GPS raw data(_CWORD82_ NMEA) */ + case VEHICLE_DID_GPS__CWORD82__NMEA: + { + /* NMEA data */ + FRAMEWORKUNIFIEDLOG(ZONE_27, __FUNCTION__, + "VehicleSens_GpsDataDelivery VEHICLE_DID_GPS__CWORD82__NMEA -->"); + + /* Insert Antenna Connection Status and Sensor Counter */ + pst_data->uc_data[1] = antennaState; /* Insert Antennas into 2byte Eyes */ + /* Place counters at 3byte */ + pst_data->uc_data[2] = static_cast(sensCount - (u_int8)(((GPS_NMEA_SZ * 10) / 1200) + 1)); + + uc_chg_type = VehicleSensSetGps_CWORD82_NmeaG(pst_data); /* Ignore->MISRA-C++:2008 Rule 5-2-5 */ + (*p_data_master_set_n)(pst_data->ul_did, uc_chg_type, VEHICLESENS_GETMETHOD_GPS); + FRAMEWORKUNIFIEDLOG(ZONE_27, __FUNCTION__, + "VehicleSens_GpsDataDelivery VEHICLE_DID_GPS__CWORD82__NMEA <--"); + break; + } + /* GPS raw data(FullBinary) */ + case POSHAL_DID_GPS__CWORD82__FULLBINARY: + { + /* FullBin data */ + FRAMEWORKUNIFIEDLOG(ZONE_27, __FUNCTION__, + "VehicleSens_GpsDataDelivery POSHAL_DID_GPS__CWORD82__FULLBINARY -->"); + + /* Insert Antenna Connection Status and Sensor Counter */ + pst_data->uc_data[0] = antennaState; /* Insert Antennas into 1byte Eyes */ + /* Place counters at 2byte */ + pst_data->uc_data[1] = static_cast(sensCount - (u_int8)(((GPS_CMD_FULLBIN_SZ * 10) / 1200) + 1)); + + uc_chg_type = VehicleSensSetGps_CWORD82_FullBinaryG(pst_data); + (*p_data_master_set_n)(pst_data->ul_did, uc_chg_type, VEHICLESENS_GETMETHOD_GPS); + FRAMEWORKUNIFIEDLOG(ZONE_27, __FUNCTION__, + "VehicleSens_GpsDataDelivery POSHAL_DID_GPS__CWORD82__FULLBINARY <--"); + break; + } + /* GPS raw data(Specific information) */ + case POSHAL_DID_GPS__CWORD82___CWORD44_GP4: + { + /* GPS-specific information */ + uc_chg_type = VehicleSensSetGps_CWORD82__CWORD44_Gp4G(pst_data); /* Ignore->MISRA-C++:2008 Rule 5-2-5 */ + (*p_data_master_set_n)(pst_data->ul_did, uc_chg_type, VEHICLESENS_GETMETHOD_GPS); + break; + } + case POSHAL_DID_GPS_CUSTOMDATA: + { + pstCustomData = reinterpret_cast(pst_data->uc_data); + /* Latitude/LongitudeInformation */ + (void)memcpy(&lstLonLat, &(pstCustomData->st_lonlat), sizeof(SENSORLOCATION_LONLATINFO_DAT)); + lstLonLat.SyncCnt = VehicleSensGetSensorCnt(); /* Synchronization counter setting */ + uc_chg_type = VehicleSensSetLocationLonLatG(&lstLonLat); + (*p_data_master_set_n)(VEHICLE_DID_LOCATION_LONLAT, uc_chg_type, VEHICLESENS_GETMETHOD_GPS); + + /* Altitude information */ + (void)memcpy(&lstAltitude, &(pstCustomData->st_altitude), sizeof(SENSORLOCATION_ALTITUDEINFO_DAT)); + lstAltitude.SyncCnt = VehicleSensGetSensorCnt(); /* Synchronization counter setting */ + uc_chg_type = VehicleSensSetLocationAltitudeG(&lstAltitude); + (*p_data_master_set_n)(VEHICLE_DID_LOCATION_ALTITUDE, uc_chg_type, VEHICLESENS_GETMETHOD_GPS); + + /* Bearing information */ + (void)memcpy(&lstHeading, &(pstCustomData->st_heading), sizeof(SENSORMOTION_HEADINGINFO_DAT)); + lstHeading.SyncCnt = VehicleSensGetSensorCnt(); /* Synchronization counter setting */ + uc_chg_type = VehicleSensSetMotionHeadingG(&lstHeading); + (*p_data_master_set_n)(VEHICLE_DID_MOTION_HEADING, uc_chg_type, VEHICLESENS_GETMETHOD_GPS); + + /* GPS time information */ + uc_chg_type = VehicleSensSetGpsTimeG(&(pstCustomData->st_gps_time)); + (*p_data_master_set_n)(POSHAL_DID_GPS_TIME, uc_chg_type, VEHICLESENS_GETMETHOD_GPS); + + /* Set GPS time to CLOCK */ + eStatus = ClockIfDtimeSetGpsTime(&(pstCustomData->st_gps_time), &bIsAvailable); + if ((bIsAvailable == TRUE) && (eStatus != eFrameworkunifiedStatusOK)) { + ucResult = SENSLOG_RES_FAIL; + FRAMEWORKUNIFIEDLOG(ZONE_ERR, __FUNCTION__, + "ClockIfDtimeSetGpsTime ERROR!! [ret=%d, y=%d, m=%d, d=%d, h=%d, n=%d, s=%d, sts=%d]", + eStatus, pstCustomData->st_gps_time.utc.year, pstCustomData->st_gps_time.utc.month, + pstCustomData->st_gps_time.utc.date, + pstCustomData->st_gps_time.utc.hour, pstCustomData->st_gps_time.utc.minute, + pstCustomData->st_gps_time.utc.second, pstCustomData->st_gps_time.tdsts); + } + us_pno = _pb_CnvName2Pno(SENSLOG_PNAME_CLOCK); + SensLogWriteOutputData(SENSLOG_DATA_O_TIME_CS, 0, us_pno, + reinterpret_cast(&(pstCustomData->st_gps_time)), + sizeof(pstCustomData->st_gps_time), ucResult); + + /* Diag Info */ + uc_chg_type = VehicleSensSetNaviinfoDiagGPSg(&(pstCustomData->st_diag_gps)); + (*p_data_master_set_n)(VEHICLE_DID_NAVIINFO_DIAG_GPS, uc_chg_type, VEHICLESENS_GETMETHOD_GPS); + break; + } + /* GPS raw data(NMEA except _CWORD82_) */ + case POSHAL_DID_GPS_NMEA: + { + /* NMEA data */ + uc_chg_type = VehicleSensSetGpsNmeaG(pst_data); + (*p_data_master_set_n)(pst_data->ul_did, uc_chg_type, VEHICLESENS_GETMETHOD_GPS); + break; + } + /* GPS version(except _CWORD82_) */ + case POSHAL_DID_GPS_VERSION: + { + VehicleSensSetGpsVersion(pst_data); + break; + } + /* Raw GPS time data */ + case POSHAL_DID_GPS_TIME_RAW: + { + (void)VehicleSensSetGpsTimeRawG(reinterpret_cast(pst_data->uc_data)); + break; + } + case POSHAL_DID_GPS_TIME: + { + uc_chg_type = VehicleSensSetGpsTimeG(reinterpret_cast(pst_data->uc_data)); + (*p_data_master_set_n)(pst_data->ul_did, uc_chg_type, VEHICLESENS_GETMETHOD_GPS); + break; + } + case POSHAL_DID_GPS_WKNROLLOVER: + { + (void)VehicleSensSetWknRolloverG(reinterpret_cast(pst_data->uc_data)); + break; + } + /* GPS clock drift */ + case POSHAL_DID_GPS_CLOCK_DRIFT: + { + uc_chg_type = VehicleSensSetGpsClockDriftG(reinterpret_cast(pst_data->uc_data)); + (*p_data_master_set_n)(pst_data->ul_did, uc_chg_type, VEHICLESENS_GETMETHOD_GPS); + break; + } + /* GPS clock frequency */ + case POSHAL_DID_GPS_CLOCK_FREQ: + { + uc_chg_type = VehicleSensSetGpsClockFreqG(reinterpret_cast(pst_data->uc_data)); + (*p_data_master_set_n)(pst_data->ul_did, uc_chg_type, VEHICLESENS_GETMETHOD_GPS); + break; + } + + default: + break; + } +} /******************************************************************************* * MODULE : VehicleSensSetDataMasterData @@ -873,142 +992,134 @@ void VehicleSensInitDataMaster(void) { * NOTE : * RETURN : void ******************************************************************************/ -//void VehicleSensSetDataMasterData(const POS_MSGINFO *pstMsg, -// PFUNC_DMASTER_SET_N p_data_master_set_n) { -// u_int8 uc_chg_type = 0; -// const POS_POSDATA *pstPosData = NULL; -// const u_int16 *pucSpeed = 0; -// SENSORLOCATION_LONLATINFO_DAT stLonLat; -// SENSORLOCATION_ALTITUDEINFO_DAT stAltitude; -// SENSORMOTION_SPEEDINFO_DAT stSpeed; -// SENSORMOTION_HEADINGINFO_DAT stHeading; -// const SENSOR_MSG_GPSTIME *pstGpsTime; -// -//// RET_API ret; -// -//// char* pEnvPositioning_CWORD86_ = NULL; -//// BOOL sndFlg; -// -// -// EFrameworkunifiedStatus eStatus = eFrameworkunifiedStatusFail; -// BOOL bIsAvailable; -// u_int8 ucResult = SENSLOG_RES_SUCCESS; -// PNO us_pno; -// -// /*------------------------------------------------------*/ -// /* Call the data set processing associated with the DID */ -// /* Call the data master set notification process */ -// /*------------------------------------------------------*/ -// switch (pstMsg->did) { -// case POSHAL_DID_GPS_CUSTOMDATA_NAVI: -// { -// pstPosData = (const POS_POSDATA *) & (pstMsg->data); -// -// /* Latitude/LongitudeInformation */ -// if (((pstPosData->status & POS_LOC_INFO_LAT) == POS_LOC_INFO_LAT) || -// ((pstPosData->status & POS_LOC_INFO_LON) == POS_LOC_INFO_LON)) { -// memset(&stLonLat, 0x00, sizeof(stLonLat)); -// stLonLat.getMethod = SENSOR_GET_METHOD_NAVI; -// stLonLat.SyncCnt = VehicleSensGetSensorCnt(); -// stLonLat.isEnable = SENSORLOCATION_STATUS_ENABLE; -// stLonLat.isExistDR = 0x00; -// stLonLat.DRStatus = SENSORLOCATION_DRSTATUS_INVALID; -// stLonLat.posSts = pstPosData->posSts; -// stLonLat.posAcc = pstPosData->posAcc; -// stLonLat.Longitude = pstPosData->longitude; -// stLonLat.Latitude = pstPosData->latitude; -// uc_chg_type = VehicleSensSetLocationLonLatN((const SENSORLOCATION_LONLATINFO_DAT *)&stLonLat); -// (*p_data_master_set_n)(VEHICLE_DID_LOCATION_LONLAT_NAVI, uc_chg_type, VEHICLESENS_GETMETHOD_NAVI); -// } -// -// /* Altitude information */ -// if ((pstPosData->status & POS_LOC_INFO_ALT) == POS_LOC_INFO_ALT) { -// memset(&stAltitude, 0x00, sizeof(stAltitude)); -// stAltitude.getMethod = SENSOR_GET_METHOD_NAVI; -// stAltitude.SyncCnt = VehicleSensGetSensorCnt(); -// stAltitude.isEnable = SENSORLOCATION_STATUS_ENABLE; -// stAltitude.isExistDR = 0x00; -// stAltitude.DRStatus = SENSORLOCATION_DRSTATUS_INVALID; -// stAltitude.Altitude = pstPosData->altitude; -// uc_chg_type = VehicleSensSetLocationAltitudeN((const SENSORLOCATION_ALTITUDEINFO_DAT *)&stAltitude); -// (*p_data_master_set_n)(VEHICLE_DID_LOCATION_ALTITUDE_NAVI, uc_chg_type, VEHICLESENS_GETMETHOD_NAVI); -// } -// -// /* Bearing information */ -// if ((pstPosData->status & POS_LOC_INFO_HEAD) == POS_LOC_INFO_HEAD) { -// memset(&stHeading, 0x00, sizeof(stHeading)); -// stHeading.getMethod = SENSOR_GET_METHOD_NAVI; -// stHeading.SyncCnt = VehicleSensGetSensorCnt(); -// stHeading.isEnable = SENSORMOTION_STATUS_ENABLE; -// stHeading.isExistDR = 0x00; -// stHeading.DRStatus = SENSORMOTION_DRSTATUS_INVALID; -// stHeading.posSts = pstPosData->posSts; -// stHeading.Heading = pstPosData->heading; -// uc_chg_type = VehicleSensSetMotionHeadingN((const SENSORMOTION_HEADINGINFO_DAT *)&stHeading); -// (*p_data_master_set_n)(VEHICLE_DID_MOTION_HEADING_NAVI, uc_chg_type, VEHICLESENS_GETMETHOD_NAVI); -// } -// -// ( *p_data_master_set_n )( POSHAL_DID_GPS_CUSTOMDATA_NAVI, VEHICLESENS_NEQ, VEHICLESENS_GETMETHOD_NAVI ); -// -// break; -// } -// case VEHICLE_DID_MOTION_SPEED_NAVI: -// { -// pucSpeed = (const u_int16 *) & (pstMsg->data); -// -// /* Vehicle speed information */ -// memset(&stSpeed, 0x00, sizeof(stSpeed)); -// stSpeed.getMethod = SENSOR_GET_METHOD_NAVI; -// stSpeed.SyncCnt = VehicleSensGetSensorCnt(); -// stSpeed.isEnable = SENSORMOTION_STATUS_ENABLE; -// stSpeed.isExistDR = 0x00; -// stSpeed.DRStatus = SENSORMOTION_DRSTATUS_INVALID; -// stSpeed.Speed = *pucSpeed; -// uc_chg_type = VehicleSensSetMotionSpeedN((const SENSORMOTION_SPEEDINFO_DAT *)&stSpeed); -// (*p_data_master_set_n)(VEHICLE_DID_MOTION_SPEED_NAVI, uc_chg_type, VEHICLESENS_GETMETHOD_NAVI); -// break; -// } -// case POSHAL_DID_GPS_TIME: -// { -// pstGpsTime = (const SENSOR_MSG_GPSTIME*)(pstMsg->data); -// uc_chg_type = VehicleSensSetGpsTimeG((const SENSOR_MSG_GPSTIME *)pstGpsTime); -// (*p_data_master_set_n)(POSHAL_DID_GPS_TIME, uc_chg_type, VEHICLESENS_GETMETHOD_GPS); -// -// /* Set GPS time to CLOCK */ -// eStatus = ClockIfDtimeSetGpsTime(pstGpsTime, &bIsAvailable); -// if ((bIsAvailable == TRUE) && (eStatus != eFrameworkunifiedStatusOK)) { -// ucResult = SENSLOG_RES_FAIL; -// FRAMEWORKUNIFIEDLOG(ZONE_ERR, __FUNCTION__, -// "ClockIfDtimeSetGpsTime ERROR!! [ret=%d, y=%d, m=%d, d=%d, h=%d, n=%d, s=%d, sts=%d]", -// eStatus, pstGpsTime->utc.year, pstGpsTime->utc.month, pstGpsTime->utc.date, -// pstGpsTime->utc.hour, pstGpsTime->utc.minute, pstGpsTime->utc.second, pstGpsTime->tdsts); -// } -// us_pno = _pb_CnvName2Pno(SENSLOG_PNAME_CLOCK); -// SensLogWriteOutputData(SENSLOG_DATA_O_TIME_CS, 0, us_pno, -// (uint8_t *)(pstGpsTime), // NOLINT(readability/casting) -// sizeof(SENSOR_MSG_GPSTIME), ucResult); -// break; -// } -// case VEHICLE_DID_SETTINGTIME: -// { -// /* GPS time information */ -// uc_chg_type = VehicleSensSetSettingTimeclock((const POS_DATETIME *) & (pstMsg->data)); -// (*p_data_master_set_n)(VEHICLE_DID_SETTINGTIME, uc_chg_type, VEHICLESENS_GETMETHOD_OTHER); -// break; -// } -// -// case VEHICLE_DID_LOCATIONINFO_NMEA_NAVI: -// { -// uc_chg_type = VehicleSens_SetLocationInfoNmea_n((const POS_LOCATIONINFO_NMEA*)&(pstMsg->data)); -// (*p_data_master_set_n)(VEHICLE_DID_LOCATIONINFO_NMEA_NAVI, uc_chg_type, VEHICLESENS_GETMETHOD_NAVI ); -// break; -// } -// -// default: -// break; -// } -// return; -//} +void VehicleSensSetDataMasterData(const POS_MSGINFO *pstMsg, + PFUNC_DMASTER_SET_N p_data_master_set_n) { + u_int8 uc_chg_type = 0; + const POS_POSDATA *pstPosData = NULL; + const u_int16 *pucSpeed = 0; + SENSORLOCATION_LONLATINFO_DAT stLonLat; + SENSORLOCATION_ALTITUDEINFO_DAT stAltitude; + SENSORMOTION_SPEEDINFO_DAT stSpeed; + SENSORMOTION_HEADINGINFO_DAT stHeading; + const SENSOR_MSG_GPSTIME *pstGpsTime; + +// RET_API ret; + +// char* pEnvPositioning_CWORD86_ = NULL; +// BOOL sndFlg; + + + EFrameworkunifiedStatus eStatus = eFrameworkunifiedStatusFail; + BOOL bIsAvailable; + u_int8 ucResult = SENSLOG_RES_SUCCESS; + PNO us_pno; + + /*------------------------------------------------------*/ + /* Call the data set processing associated with the DID */ + /* Call the data master set notification process */ + /*------------------------------------------------------*/ + switch (pstMsg->did) { + case POSHAL_DID_GPS_CUSTOMDATA_NAVI: + { + pstPosData = (const POS_POSDATA *) & (pstMsg->data); + + /* Latitude/LongitudeInformation */ + if (((pstPosData->status & POS_LOC_INFO_LAT) == POS_LOC_INFO_LAT) || + ((pstPosData->status & POS_LOC_INFO_LON) == POS_LOC_INFO_LON)) { + memset(&stLonLat, 0x00, sizeof(stLonLat)); + stLonLat.getMethod = SENSOR_GET_METHOD_NAVI; + stLonLat.SyncCnt = VehicleSensGetSensorCnt(); + stLonLat.isEnable = SENSORLOCATION_STATUS_ENABLE; + stLonLat.posSts = pstPosData->posSts; + stLonLat.posAcc = pstPosData->posAcc; + stLonLat.Longitude = pstPosData->longitude; + stLonLat.Latitude = pstPosData->latitude; + uc_chg_type = VehicleSensSetLocationLonLatN((const SENSORLOCATION_LONLATINFO_DAT *)&stLonLat); + (*p_data_master_set_n)(VEHICLE_DID_LOCATION_LONLAT_NAVI, uc_chg_type, VEHICLESENS_GETMETHOD_NAVI); + } + + /* Altitude information */ + if ((pstPosData->status & POS_LOC_INFO_ALT) == POS_LOC_INFO_ALT) { + memset(&stAltitude, 0x00, sizeof(stAltitude)); + stAltitude.getMethod = SENSOR_GET_METHOD_NAVI; + stAltitude.SyncCnt = VehicleSensGetSensorCnt(); + stAltitude.isEnable = SENSORLOCATION_STATUS_ENABLE; + stAltitude.Altitude = pstPosData->altitude; + uc_chg_type = VehicleSensSetLocationAltitudeN((const SENSORLOCATION_ALTITUDEINFO_DAT *)&stAltitude); + (*p_data_master_set_n)(VEHICLE_DID_LOCATION_ALTITUDE_NAVI, uc_chg_type, VEHICLESENS_GETMETHOD_NAVI); + } + + /* Bearing information */ + if ((pstPosData->status & POS_LOC_INFO_HEAD) == POS_LOC_INFO_HEAD) { + memset(&stHeading, 0x00, sizeof(stHeading)); + stHeading.getMethod = SENSOR_GET_METHOD_NAVI; + stHeading.SyncCnt = VehicleSensGetSensorCnt(); + stHeading.isEnable = SENSORMOTION_STATUS_ENABLE; + stHeading.posSts = pstPosData->posSts; + stHeading.Heading = pstPosData->heading; + uc_chg_type = VehicleSensSetMotionHeadingN((const SENSORMOTION_HEADINGINFO_DAT *)&stHeading); + (*p_data_master_set_n)(VEHICLE_DID_MOTION_HEADING_NAVI, uc_chg_type, VEHICLESENS_GETMETHOD_NAVI); + } + + ( *p_data_master_set_n )( POSHAL_DID_GPS_CUSTOMDATA_NAVI, VEHICLESENS_NEQ, VEHICLESENS_GETMETHOD_NAVI ); + + break; + } + case VEHICLE_DID_MOTION_SPEED_NAVI: + { + pucSpeed = (const u_int16 *) & (pstMsg->data); + + /* Vehicle speed information */ + memset(&stSpeed, 0x00, sizeof(stSpeed)); + stSpeed.getMethod = SENSOR_GET_METHOD_NAVI; + stSpeed.SyncCnt = VehicleSensGetSensorCnt(); + stSpeed.isEnable = SENSORMOTION_STATUS_ENABLE; + stSpeed.Speed = *pucSpeed; + uc_chg_type = VehicleSensSetMotionSpeedN((const SENSORMOTION_SPEEDINFO_DAT *)&stSpeed); + (*p_data_master_set_n)(VEHICLE_DID_MOTION_SPEED_NAVI, uc_chg_type, VEHICLESENS_GETMETHOD_NAVI); + break; + } + case POSHAL_DID_GPS_TIME: + { + pstGpsTime = (const SENSOR_MSG_GPSTIME*)(pstMsg->data); + uc_chg_type = VehicleSensSetGpsTimeG((const SENSOR_MSG_GPSTIME *)pstGpsTime); + (*p_data_master_set_n)(POSHAL_DID_GPS_TIME, uc_chg_type, VEHICLESENS_GETMETHOD_GPS); + + /* Set GPS time to CLOCK */ + eStatus = ClockIfDtimeSetGpsTime(pstGpsTime, &bIsAvailable); + if ((bIsAvailable == TRUE) && (eStatus != eFrameworkunifiedStatusOK)) { + ucResult = SENSLOG_RES_FAIL; + FRAMEWORKUNIFIEDLOG(ZONE_ERR, __FUNCTION__, + "ClockIfDtimeSetGpsTime ERROR!! [ret=%d, y=%d, m=%d, d=%d, h=%d, n=%d, s=%d, sts=%d]", + eStatus, pstGpsTime->utc.year, pstGpsTime->utc.month, pstGpsTime->utc.date, + pstGpsTime->utc.hour, pstGpsTime->utc.minute, pstGpsTime->utc.second, pstGpsTime->tdsts); + } + us_pno = _pb_CnvName2Pno(SENSLOG_PNAME_CLOCK); + SensLogWriteOutputData(SENSLOG_DATA_O_TIME_CS, 0, us_pno, + (uint8_t *)(pstGpsTime), // NOLINT(readability/casting) + sizeof(SENSOR_MSG_GPSTIME), ucResult); + break; + } + case VEHICLE_DID_SETTINGTIME: + { + /* GPS time information */ + uc_chg_type = VehicleSensSetSettingTimeclock((const POS_DATETIME *) & (pstMsg->data)); + (*p_data_master_set_n)(VEHICLE_DID_SETTINGTIME, uc_chg_type, VEHICLESENS_GETMETHOD_OTHER); + break; + } + + case VEHICLE_DID_LOCATIONINFO_NMEA_NAVI: + { + uc_chg_type = VehicleSens_SetLocationInfoNmea_n((const POS_LOCATIONINFO_NMEA*)&(pstMsg->data)); + (*p_data_master_set_n)(VEHICLE_DID_LOCATIONINFO_NMEA_NAVI, uc_chg_type, VEHICLESENS_GETMETHOD_NAVI ); + break; + } + + default: + break; + } + return; +} /******************************************************************************* * MODULE : VehicleSensSetDataMasterGyroTrouble @@ -1019,21 +1130,21 @@ void VehicleSensInitDataMaster(void) { * NOTE : * RETURN : void ******************************************************************************/ -//void VehicleSensSetDataMasterGyroTrouble(const LSDRV_MSG_LSDATA_DAT_GYRO_TROUBLE *pst_data, PFUNC_DMASTER_SET_N p_data_master_set_n) { // LCOV_EXCL_START 8: dead code. // NOLINT(whitespace/line_length) -// AGL_ASSERT_NOT_TESTED(); // LCOV_EXCL_LINE 200: test assert -// u_int8 uc_chg_type; -// -// if ((pst_data != NULL) && (p_data_master_set_n != NULL)) { -// if (pst_data->ul_did == VEHICLE_DID_GYRO_TROUBLE) { -// uc_chg_type = VehicleSensSetGyroTrouble(pst_data); -// (*p_data_master_set_n)(pst_data->ul_did, uc_chg_type, VEHICLESENS_GETMETHOD_LINE); -// } else { -// FRAMEWORKUNIFIEDLOG(ZONE_ERR, __FUNCTION__, "UNKNOWN DID(%x) \r\n", pst_data->ul_did); -// } -// } else { -// FRAMEWORKUNIFIEDLOG(ZONE_ERR, __FUNCTION__, "ARGUMENT is NULL\r\n"); -// } -//} +void VehicleSensSetDataMasterGyroTrouble(const LSDRV_MSG_LSDATA_DAT_GYRO_TROUBLE *pst_data, PFUNC_DMASTER_SET_N p_data_master_set_n) { // LCOV_EXCL_START 8: dead code. // NOLINT(whitespace/line_length) + AGL_ASSERT_NOT_TESTED(); // LCOV_EXCL_LINE 200: test assert + u_int8 uc_chg_type; + + if ((pst_data != NULL) && (p_data_master_set_n != NULL)) { + if (pst_data->ul_did == VEHICLE_DID_GYRO_TROUBLE) { + uc_chg_type = VehicleSensSetGyroTrouble(pst_data); + (*p_data_master_set_n)(pst_data->ul_did, uc_chg_type, VEHICLESENS_GETMETHOD_LINE); + } else { + FRAMEWORKUNIFIEDLOG(ZONE_ERR, __FUNCTION__, "UNKNOWN DID(%x) \r\n", pst_data->ul_did); + } + } else { + FRAMEWORKUNIFIEDLOG(ZONE_ERR, __FUNCTION__, "ARGUMENT is NULL\r\n"); + } +} // LCOV_EXCL_STOP /******************************************************************************* * MODULE : VehicleSensSetDataMasterSysGpsInterruptSignal @@ -1044,22 +1155,22 @@ void VehicleSensInitDataMaster(void) { * NOTE : * RETURN : void ******************************************************************************/ -//void VehicleSensSetDataMasterSysGpsInterruptSignal(const LSDRV_MSG_LSDATA_DAT_GPS_INTERRUPT_SIGNAL *pst_data, PFUNC_DMASTER_SET_SHARED_MEMORY p_data_master_set_shared_memory) { // LCOV_EXCL_START 8: dead code. // NOLINT(whitespace/line_length) -// AGL_ASSERT_NOT_TESTED(); // LCOV_EXCL_LINE 200: test assert -// u_int8 uc_chg_type; -// if ((pst_data != NULL) && (p_data_master_set_shared_memory != NULL)) { -// if (pst_data->ul_did == VEHICLE_DID_SYS_GPS_INTERRUPT_SIGNAL) { -// uc_chg_type = VehicleSensSetSysGpsInterruptSignal(pst_data); -// /* As SYS GPS interrupt signals are not registered for delivery, */ -// /* Disposal quantity,To avoid risks,DeliveryProc shall not be called. */ -// (*p_data_master_set_shared_memory)(pst_data->ul_did, uc_chg_type); -// } else { -// FRAMEWORKUNIFIEDLOG(ZONE_ERR, __FUNCTION__, "UNKNOWN DID(%x) \r\n", pst_data->ul_did); -// } -// } else { -// FRAMEWORKUNIFIEDLOG(ZONE_ERR, __FUNCTION__, "ARGUMENT is NULL\r\n"); -// } -//} +void VehicleSensSetDataMasterSysGpsInterruptSignal(const LSDRV_MSG_LSDATA_DAT_GPS_INTERRUPT_SIGNAL *pst_data, PFUNC_DMASTER_SET_SHARED_MEMORY p_data_master_set_shared_memory) { // LCOV_EXCL_START 8: dead code. // NOLINT(whitespace/line_length) + AGL_ASSERT_NOT_TESTED(); // LCOV_EXCL_LINE 200: test assert + u_int8 uc_chg_type; + if ((pst_data != NULL) && (p_data_master_set_shared_memory != NULL)) { + if (pst_data->ul_did == VEHICLE_DID_SYS_GPS_INTERRUPT_SIGNAL) { + uc_chg_type = VehicleSensSetSysGpsInterruptSignal(pst_data); + /* As SYS GPS interrupt signals are not registered for delivery, */ + /* Disposal quantity,To avoid risks,DeliveryProc shall not be called. */ + (*p_data_master_set_shared_memory)(pst_data->ul_did, uc_chg_type); + } else { + FRAMEWORKUNIFIEDLOG(ZONE_ERR, __FUNCTION__, "UNKNOWN DID(%x) \r\n", pst_data->ul_did); + } + } else { + FRAMEWORKUNIFIEDLOG(ZONE_ERR, __FUNCTION__, "ARGUMENT is NULL\r\n"); + } +} // LCOV_EXCL_STOP /******************************************************************************* @@ -1071,24 +1182,24 @@ void VehicleSensInitDataMaster(void) { * NOTE : * RETURN : void ******************************************************************************/ -//void VehicleSensSetDataMasterMainGpsInterruptSignal(const SENSOR_MSG_GPSDATA_DAT *pst_data, PFUNC_DMASTER_SET_SHARED_MEMORY p_data_master_set_shared_memory) { // LCOV_EXCL_START 8: dead code. // NOLINT(whitespace/line_length) -// AGL_ASSERT_NOT_TESTED(); // LCOV_EXCL_LINE 200: test assert -// u_int8 uc_chg_type; -// -// if ((pst_data != NULL) && -// (p_data_master_set_shared_memory != NULL)) { -// if (pst_data->ul_did == VEHICLE_DID_MAIN_GPS_INTERRUPT_SIGNAL) { -// uc_chg_type = VehicleSensSetMainGpsInterruptSignal(pst_data); -// /* As MAIN GPS interrupt signals are not registered for delivery, */ -// /* Disposal quantity,To avoid risks,DeliveryProc shall not be called. */ -// (*p_data_master_set_shared_memory)(pst_data->ul_did, uc_chg_type); -// } else { -// FRAMEWORKUNIFIEDLOG(ZONE_ERR, __FUNCTION__, "UNKNOWN DID(%x) \r\n", pst_data->ul_did); -// } -// } else { -// FRAMEWORKUNIFIEDLOG(ZONE_ERR, __FUNCTION__, "ARGUMENT is NULL\r\n"); -// } -//} +void VehicleSensSetDataMasterMainGpsInterruptSignal(const SENSOR_MSG_GPSDATA_DAT *pst_data, PFUNC_DMASTER_SET_SHARED_MEMORY p_data_master_set_shared_memory) { // LCOV_EXCL_START 8: dead code. // NOLINT(whitespace/line_length) + AGL_ASSERT_NOT_TESTED(); // LCOV_EXCL_LINE 200: test assert + u_int8 uc_chg_type; + + if ((pst_data != NULL) && + (p_data_master_set_shared_memory != NULL)) { + if (pst_data->ul_did == VEHICLE_DID_MAIN_GPS_INTERRUPT_SIGNAL) { + uc_chg_type = VehicleSensSetMainGpsInterruptSignal(pst_data); + /* As MAIN GPS interrupt signals are not registered for delivery, */ + /* Disposal quantity,To avoid risks,DeliveryProc shall not be called. */ + (*p_data_master_set_shared_memory)(pst_data->ul_did, uc_chg_type); + } else { + FRAMEWORKUNIFIEDLOG(ZONE_ERR, __FUNCTION__, "UNKNOWN DID(%x) \r\n", pst_data->ul_did); + } + } else { + FRAMEWORKUNIFIEDLOG(ZONE_ERR, __FUNCTION__, "ARGUMENT is NULL\r\n"); + } +} // LCOV_EXCL_STOP /******************************************************************************* @@ -1100,24 +1211,24 @@ void VehicleSensInitDataMaster(void) { * NOTE : * RETURN : void ******************************************************************************/ -//void VehicleSensSetDataMasterGyroConnectStatus(const LSDRV_MSG_LSDATA_DAT_GYRO_CONNECT_STATUS *pst_data, PFUNC_DMASTER_SET_SHARED_MEMORY p_data_master_set_shared_memory) { // LCOV_EXCL_START 8: dead code. // NOLINT(whitespace/line_length) -// AGL_ASSERT_NOT_TESTED(); // LCOV_EXCL_LINE 200: test assert -// u_int8 uc_chg_type; -// -// if ((pst_data != NULL) && -// (p_data_master_set_shared_memory != NULL)) { -// if (pst_data->ul_did == VEHICLE_DID_GYRO_CONNECT_STATUS) { -// uc_chg_type = VehicleSensSetGyroConnectStatus(pst_data); -// /* As MAIN GPS interrupt signals are not registered for delivery, */ -// /* Disposal quantity,To avoid risks,DeliveryProc shall not be called. */ -// (*p_data_master_set_shared_memory)(pst_data->ul_did, uc_chg_type); -// } else { -// FRAMEWORKUNIFIEDLOG(ZONE_ERR, __FUNCTION__, "UNKNOWN DID(%x) \r\n", pst_data->ul_did); -// } -// } else { -// FRAMEWORKUNIFIEDLOG(ZONE_ERR, __FUNCTION__, "ARGUMENT is NULL\r\n"); -// } -//} +void VehicleSensSetDataMasterGyroConnectStatus(const LSDRV_MSG_LSDATA_DAT_GYRO_CONNECT_STATUS *pst_data, PFUNC_DMASTER_SET_SHARED_MEMORY p_data_master_set_shared_memory) { // LCOV_EXCL_START 8: dead code. // NOLINT(whitespace/line_length) + AGL_ASSERT_NOT_TESTED(); // LCOV_EXCL_LINE 200: test assert + u_int8 uc_chg_type; + + if ((pst_data != NULL) && + (p_data_master_set_shared_memory != NULL)) { + if (pst_data->ul_did == VEHICLE_DID_GYRO_CONNECT_STATUS) { + uc_chg_type = VehicleSensSetGyroConnectStatus(pst_data); + /* As MAIN GPS interrupt signals are not registered for delivery, */ + /* Disposal quantity,To avoid risks,DeliveryProc shall not be called. */ + (*p_data_master_set_shared_memory)(pst_data->ul_did, uc_chg_type); + } else { + FRAMEWORKUNIFIEDLOG(ZONE_ERR, __FUNCTION__, "UNKNOWN DID(%x) \r\n", pst_data->ul_did); + } + } else { + FRAMEWORKUNIFIEDLOG(ZONE_ERR, __FUNCTION__, "ARGUMENT is NULL\r\n"); + } +} // LCOV_EXCL_STOP /******************************************************************************* @@ -1129,21 +1240,21 @@ void VehicleSensInitDataMaster(void) { * NOTE : * RETURN : void ******************************************************************************/ -//void VehicleSensSetDataMasterGpsAntennaStatus(const LSDRV_MSG_LSDATA_DAT_GPS_ANTENNA_STATUS *pst_data, PFUNC_DMASTER_SET_N p_data_master_set_n) { // LCOV_EXCL_START 8: dead code. // NOLINT(whitespace/line_length) -// AGL_ASSERT_NOT_TESTED(); // LCOV_EXCL_LINE 200: test assert -// u_int8 uc_chg_type; -// -// if ((pst_data != NULL) && (p_data_master_set_n != NULL)) { -// if (pst_data->ul_did == POSHAL_DID_GPS_ANTENNA) { -// uc_chg_type = VehicleSensSetGpsAntennaStatus(pst_data); -// (*p_data_master_set_n)(pst_data->ul_did, uc_chg_type, VEHICLESENS_GETMETHOD_LINE); -// } else { -// FRAMEWORKUNIFIEDLOG(ZONE_ERR, __FUNCTION__, "UNKNOWN DID(%x) \r\n", pst_data->ul_did); -// } -// } else { -// FRAMEWORKUNIFIEDLOG(ZONE_ERR, __FUNCTION__, "ARGUMENT is NULL\r\n"); -// } -//} +void VehicleSensSetDataMasterGpsAntennaStatus(const LSDRV_MSG_LSDATA_DAT_GPS_ANTENNA_STATUS *pst_data, PFUNC_DMASTER_SET_N p_data_master_set_n) { // LCOV_EXCL_START 8: dead code. // NOLINT(whitespace/line_length) + AGL_ASSERT_NOT_TESTED(); // LCOV_EXCL_LINE 200: test assert + u_int8 uc_chg_type; + + if ((pst_data != NULL) && (p_data_master_set_n != NULL)) { + if (pst_data->ul_did == POSHAL_DID_GPS_ANTENNA) { + uc_chg_type = VehicleSensSetGpsAntennaStatus(pst_data); + (*p_data_master_set_n)(pst_data->ul_did, uc_chg_type, VEHICLESENS_GETMETHOD_LINE); + } else { + FRAMEWORKUNIFIEDLOG(ZONE_ERR, __FUNCTION__, "UNKNOWN DID(%x) \r\n", pst_data->ul_did); + } + } else { + FRAMEWORKUNIFIEDLOG(ZONE_ERR, __FUNCTION__, "ARGUMENT is NULL\r\n"); + } +} // LCOV_EXCL_STOP /******************************************************************************* @@ -1161,116 +1272,132 @@ void VehicleSensInitDataMaster(void) { void VehicleSensGetDataMaster(DID ul_did, u_int8 uc_get_method, VEHICLESENS_DATA_MASTER *pst_data) { -// /*------------------------------------------------------*/ -// /* Call the data Get processing associated with the DID */ -// /*------------------------------------------------------*/ -// switch (ul_did) { // LCOV_EXCL_BR_LINE 6:some DID is not used -// /*------------------------------------------------------*/ -// /* Vehicle sensor data group */ -// /*------------------------------------------------------*/ -// case POSHAL_DID_SPEED_PULSE: -// { -// VehicleSensGetSpeedPulse(pst_data, uc_get_method); -// break; -// } -// case POSHAL_DID_GYRO: -// { -// VehicleSensGetGyro(pst_data, uc_get_method); -// break; -// } -// case POSHAL_DID_GYRO_EXT: /* 3 to 14bit A/D value,0bit:REV */ -// { -// VehicleSensGetGyroRev(pst_data, uc_get_method); -// break; -// } -// case POSHAL_DID_GSNS_X: -// { -// VehicleSensGetGsnsX(pst_data, uc_get_method); -// break; -// } -// case POSHAL_DID_GSNS_Y: -// { -// VehicleSensGetGsnsY(pst_data, uc_get_method); -// break; -// } -// case POSHAL_DID_REV: -// { -// VehicleSensGetRev(pst_data, uc_get_method); -// break; -// } -// case POSHAL_DID_SPEED_PULSE_FLAG: -// { -// /* Data acquisition not selected */ -// VehicleSensGetSpeedPulseFlag(pst_data); -// break; -// } -// case POSHAL_DID_GPS_ANTENNA: -// { -// VehicleSensGetGpsAntenna(pst_data, uc_get_method); -// break; -// } -// case POSHAL_DID_SNS_COUNTER: -// { -// VehicleSensGetSnsCounter(pst_data, uc_get_method); -// break; -// } -// case POSHAL_DID_GPS_INTERRUPT_FLAG: -// { -// // LCOV_EXCL_START 8 : dead code -// AGL_ASSERT_NOT_TESTED(); // LCOV_EXCL_LINE 200: test assert -// /* Data acquisition not selected */ -// VehicleSensGetGpsInterruptFlag(pst_data); -// break; -// // LCOV_EXCL_STOP -// } -// case POSHAL_DID_SPEED_KMPH: -// { -// VehicleSensGetSpeedKmph(pst_data, uc_get_method); -// break; -// } -// case POSHAL_DID_GYRO_TEMP: -// { -// VehicleSensGetGyroTemp(pst_data, uc_get_method); -// break; -// } -// case POSHAL_DID_PULSE_TIME: -// { -// VehicleSensGetPulseTime(pst_data, uc_get_method); -// break; -// } -// case VEHICLE_DID_LOCATION_LONLAT: -// case VEHICLE_DID_LOCATION_LONLAT_NAVI: -// { -// VehicleSensGetLocationLonLat(pst_data, uc_get_method); -// break; -// } -// case VEHICLE_DID_LOCATION_ALTITUDE: -// case VEHICLE_DID_LOCATION_ALTITUDE_NAVI: -// { -// VehicleSensGetLocationAltitude(pst_data, uc_get_method); -// break; -// } -// case VEHICLE_DID_MOTION_SPEED_NAVI: -// case VEHICLE_DID_MOTION_SPEED_INTERNAL: -// { -// VehicleSensGetMotionSpeed(pst_data, uc_get_method); -// break; -// } -// case VEHICLE_DID_MOTION_HEADING: -// case VEHICLE_DID_MOTION_HEADING_NAVI: -// { -// VehicleSensGetMotionHeading(pst_data, uc_get_method); -// break; -// } -// case VEHICLE_DID_SETTINGTIME: + /*------------------------------------------------------*/ + /* Call the data Get processing associated with the DID */ + /*------------------------------------------------------*/ + switch (ul_did) { // LCOV_EXCL_BR_LINE 6:some DID is not used + /*------------------------------------------------------*/ + /* Vehicle sensor data group */ + /*------------------------------------------------------*/ + case POSHAL_DID_SPEED_PULSE: + { + VehicleSensGetSpeedPulse(pst_data, uc_get_method); + break; + } +// case POSHAL_DID_GYRO_X: // { -// VehicleSensGetSettingTime(pst_data, uc_get_method); +// VehicleSensGetGyroX(pst_data, uc_get_method); // break; // } -// -// default: -// break; -// } + case POSHAL_DID_GYRO_Y: + { + VehicleSensGetGyroY(pst_data, uc_get_method); + break; + } + case POSHAL_DID_GYRO_Z: + { + VehicleSensGetGyroZ(pst_data, uc_get_method); + break; + } + case POSHAL_DID_GYRO_X: + case POSHAL_DID_GYRO_EXT: /* 3 to 14bit A/D value,0bit:REV */ + { + VehicleSensGetGyroRev(pst_data, uc_get_method); + break; + } + case POSHAL_DID_GSNS_X: + { + VehicleSensGetGsnsX(pst_data, uc_get_method); + break; + } + case POSHAL_DID_GSNS_Y: + { + VehicleSensGetGsnsY(pst_data, uc_get_method); + break; + } + case POSHAL_DID_GSNS_Z: + { + VehicleSensGetGsnsZ(pst_data, uc_get_method); + break; + } + case POSHAL_DID_REV: + { + VehicleSensGetRev(pst_data, uc_get_method); + break; + } + case POSHAL_DID_SPEED_PULSE_FLAG: + { + /* Data acquisition not selected */ + VehicleSensGetSpeedPulseFlag(pst_data); + break; + } + case POSHAL_DID_GPS_ANTENNA: + { + VehicleSensGetGpsAntenna(pst_data, uc_get_method); + break; + } + case POSHAL_DID_SNS_COUNTER: + { + VehicleSensGetSnsCounter(pst_data, uc_get_method); + break; + } + case POSHAL_DID_GPS_INTERRUPT_FLAG: + { + // LCOV_EXCL_START 8 : dead code + AGL_ASSERT_NOT_TESTED(); // LCOV_EXCL_LINE 200: test assert + /* Data acquisition not selected */ + VehicleSensGetGpsInterruptFlag(pst_data); + break; + // LCOV_EXCL_STOP + } + case POSHAL_DID_SPEED_KMPH: + { + VehicleSensGetSpeedKmph(pst_data, uc_get_method); + break; + } + case POSHAL_DID_GYRO_TEMP: + { + VehicleSensGetGyroTemp(pst_data, uc_get_method); + break; + } + case POSHAL_DID_PULSE_TIME: + { + VehicleSensGetPulseTime(pst_data, uc_get_method); + break; + } + case VEHICLE_DID_LOCATION_LONLAT: + case VEHICLE_DID_LOCATION_LONLAT_NAVI: + { + VehicleSensGetLocationLonLat(pst_data, uc_get_method); + break; + } + case VEHICLE_DID_LOCATION_ALTITUDE: + case VEHICLE_DID_LOCATION_ALTITUDE_NAVI: + { + VehicleSensGetLocationAltitude(pst_data, uc_get_method); + break; + } + case VEHICLE_DID_MOTION_SPEED_NAVI: + case VEHICLE_DID_MOTION_SPEED_INTERNAL: + { + VehicleSensGetMotionSpeed(pst_data, uc_get_method); + break; + } + case VEHICLE_DID_MOTION_HEADING: + case VEHICLE_DID_MOTION_HEADING_NAVI: + { + VehicleSensGetMotionHeading(pst_data, uc_get_method); + break; + } + case VEHICLE_DID_SETTINGTIME: + { + VehicleSensGetSettingTime(pst_data, uc_get_method); + break; + } + + default: + break; + } } #if CONFIG_SENSOR_EXT_VALID /* Initial Sensor Support */ @@ -1294,53 +1421,69 @@ void VehicleSensGetDataMasterExt(DID ul_did, /*------------------------------------------------------*/ /* Call the data Get processing associated with the DID */ /*------------------------------------------------------*/ -// switch (ul_did) { -// /*------------------------------------------------------*/ -// /* Vehicle sensor data group */ -// /*------------------------------------------------------*/ -// case POSHAL_DID_SPEED_PULSE: -// { -// VehicleSensGetSpeedPulseExt(pst_data, uc_get_method); -// break; -// } -// case POSHAL_DID_GSNS_X: -// { -// VehicleSensGetGsnsXExt(pst_data, uc_get_method); -// break; -// } -// case POSHAL_DID_GSNS_Y: -// { -// VehicleSensGetGsnsYExt(pst_data, uc_get_method); -// break; -// } -// case POSHAL_DID_SNS_COUNTER: -// { -// VehicleSensGetSnsCounterExt(pst_data, uc_get_method); -// break; -// } -// case POSHAL_DID_GYRO_EXT: /* 3 to 14bit A/D value,0bit:REV */ -// { -// VehicleSensGetGyroExt(pst_data, uc_get_method); -// break; -// } -// case POSHAL_DID_REV: -// { -// VehicleSensGetRevExt(pst_data, uc_get_method); -// break; -// } -// case POSHAL_DID_GYRO_TEMP: -// { -// VehicleSensGetGyroTempExt(pst_data, uc_get_method); -// break; -// } -// case POSHAL_DID_PULSE_TIME: -// { -// VehicleSensGetPulseTimeExt(pst_data, uc_get_method); -// break; -// } -// default: /* Ignore->MISRA-C++:2008 Rule 6-3-1, 6-4-1 */ -// break; -// } + switch (ul_did) { + /*------------------------------------------------------*/ + /* Vehicle sensor data group */ + /*------------------------------------------------------*/ + case POSHAL_DID_SPEED_PULSE: + { + VehicleSensGetSpeedPulseExt(pst_data, uc_get_method); + break; + } + case POSHAL_DID_GSNS_X: + { + VehicleSensGetGsnsXExt(pst_data, uc_get_method); + break; + } + case POSHAL_DID_GSNS_Y: + { + VehicleSensGetGsnsYExt(pst_data, uc_get_method); + break; + } + case POSHAL_DID_GSNS_Z: + { + VehicleSensGetGsnsZExt(pst_data, uc_get_method); + break; + } + case POSHAL_DID_SNS_COUNTER: + { + VehicleSensGetSnsCounterExt(pst_data, uc_get_method); + break; + } + case POSHAL_DID_GYRO_X: + case POSHAL_DID_GYRO_EXT: /* 3 to 14bit A/D value,0bit:REV */ + { + VehicleSensGetGyroExt(pst_data, uc_get_method); + break; + } + case POSHAL_DID_GYRO_Y: + { + VehicleSensGetGyroYExt(pst_data, uc_get_method); + break; + } + case POSHAL_DID_GYRO_Z: + { + VehicleSensGetGyroZExt(pst_data, uc_get_method); + break; + } + case POSHAL_DID_REV: + { + VehicleSensGetRevExt(pst_data, uc_get_method); + break; + } + case POSHAL_DID_GYRO_TEMP: + { + VehicleSensGetGyroTempExt(pst_data, uc_get_method); + break; + } + case POSHAL_DID_PULSE_TIME: + { + VehicleSensGetPulseTimeExt(pst_data, uc_get_method); + break; + } + default: /* Ignore->MISRA-C++:2008 Rule 6-3-1, 6-4-1 */ + break; + } } /******************************************************************************* @@ -1361,48 +1504,63 @@ void VehicleSensGetDataMasterFst(DID ul_did, /*------------------------------------------------------*/ /* Call the data Get processing associated with the DID */ /*------------------------------------------------------*/ -// switch (ul_did) { -// /*------------------------------------------------------*/ -// /* Vehicle sensor data group */ -// /*------------------------------------------------------*/ -// case POSHAL_DID_GYRO_FST: /* 3 to 14bit A/D value,0bit:REV */ -// { -// VehicleSensGetGyroFst(pst_data, uc_get_method); -// break; -// } -// case POSHAL_DID_SPEED_PULSE_FST: -// { -// VehicleSensGetSpeedPulseFst(pst_data, uc_get_method); -// break; -// } -// case POSHAL_DID_SPEED_PULSE_FLAG_FST: -// { -// VehicleSensGetSpeedPulseFlagFst(pst_data, uc_get_method); -// break; -// } -// case POSHAL_DID_REV_FST: -// { -// VehicleSensGetRevFst(pst_data, uc_get_method); -// break; -// } -// case POSHAL_DID_GYRO_TEMP_FST: -// { -// VehicleSensGetGyroTempFst(pst_data, uc_get_method); -// break; -// } -// case POSHAL_DID_GSNS_X_FST: -// { -// VehicleSensGetGsnsXFst(pst_data, uc_get_method); -// break; -// } -// case POSHAL_DID_GSNS_Y_FST: -// { -// VehicleSensGetGsnsYFst(pst_data, uc_get_method); -// break; -// } -// default: -// break; -// } + switch (ul_did) { + /*------------------------------------------------------*/ + /* Vehicle sensor data group */ + /*------------------------------------------------------*/ + case POSHAL_DID_GYRO_X_FST: /* 3 to 14bit A/D value,0bit:REV */ + { + VehicleSensGetGyroXFst(pst_data, uc_get_method); + break; + } + case POSHAL_DID_GYRO_Y_FST: /* 3 to 14bit A/D value,0bit:REV */ + { + VehicleSensGetGyroYFst(pst_data, uc_get_method); + break; + } + case POSHAL_DID_GYRO_Z_FST: /* 3 to 14bit A/D value,0bit:REV */ + { + VehicleSensGetGyroZFst(pst_data, uc_get_method); + break; + } + case POSHAL_DID_SPEED_PULSE_FST: + { + VehicleSensGetSpeedPulseFst(pst_data, uc_get_method); + break; + } + case POSHAL_DID_SPEED_PULSE_FLAG_FST: + { + VehicleSensGetSpeedPulseFlagFst(pst_data, uc_get_method); + break; + } + case POSHAL_DID_REV_FST: + { + VehicleSensGetRevFst(pst_data, uc_get_method); + break; + } + case POSHAL_DID_GYRO_TEMP_FST: + { + VehicleSensGetGyroTempFst(pst_data, uc_get_method); + break; + } + case POSHAL_DID_GSNS_X_FST: + { + VehicleSensGetGsnsXFst(pst_data, uc_get_method); + break; + } + case POSHAL_DID_GSNS_Y_FST: + { + VehicleSensGetGsnsYFst(pst_data, uc_get_method); + break; + } + case POSHAL_DID_GSNS_Z_FST: + { + VehicleSensGetGsnsZFst(pst_data, uc_get_method); + break; + } + default: + break; + } } #endif @@ -1417,151 +1575,151 @@ void VehicleSensGetDataMasterFst(DID ul_did, * NOTE : * RETURN : void ******************************************************************************/ -//void VehicleSensGetGpsDataMaster(DID ul_did, -// u_int8 uc_get_method, -// SENSOR_MSG_GPSDATA_DAT *pst_data) { -// /*------------------------------------------------------*/ -// /* Call the data Get processing associated with the DID */ -// /*------------------------------------------------------*/ -// switch (ul_did) { // LCOV_EXCL_BR_LINE 6:some DID is not used -// /*------------------------------------------------------*/ -// /* GPS data group */ -// /*------------------------------------------------------*/ -// -// case VEHICLE_DID_GPS_UBLOX_NAV_VELNED: -// { -// // LCOV_EXCL_START 8 : dead code -// AGL_ASSERT_NOT_TESTED(); // LCOV_EXCL_LINE 200: test assert -// VehicleSensGetNavVelnedG(pst_data); -// break; -// // LCOV_EXCL_STOP -// } -// case VEHICLE_DID_GPS_UBLOX_NAV_TIMEUTC: -// { -// // LCOV_EXCL_START 8 : dead code -// AGL_ASSERT_NOT_TESTED(); // LCOV_EXCL_LINE 200: test assert -// VehicleSensGetNavTimeUtcG(pst_data); -// break; -// // LCOV_EXCL_STOP -// } -// case VEHICLE_DID_GPS_UBLOX_NAV_TIMEGPS: -// { -// // LCOV_EXCL_START 8 : dead code -// AGL_ASSERT_NOT_TESTED(); // LCOV_EXCL_LINE 200: test assert -// VehicleSensGetNavTimeGpsG(pst_data); -// break; -// // LCOV_EXCL_STOP -// } -// case VEHICLE_DID_GPS_UBLOX_NAV_SVINFO: -// { -// // LCOV_EXCL_START 8 : dead code -// AGL_ASSERT_NOT_TESTED(); // LCOV_EXCL_LINE 200: test assert -// VehicleSensGetNavSvInfoG(pst_data); -// break; -// // LCOV_EXCL_STOP -// } -// case VEHICLE_DID_GPS_UBLOX_NAV_STATUS: -// { -// // LCOV_EXCL_START 8 : dead code -// AGL_ASSERT_NOT_TESTED(); // LCOV_EXCL_LINE 200: test assert -// VehicleSensGetNavStatusG(pst_data); -// break; -// // LCOV_EXCL_STOP -// } -// case VEHICLE_DID_GPS_UBLOX_NAV_POSLLH: -// { -// // LCOV_EXCL_START 8 : dead code -// AGL_ASSERT_NOT_TESTED(); // LCOV_EXCL_LINE 200: test assert -// VehicleSensGetNavPosllhG(pst_data); -// break; -// // LCOV_EXCL_STOP -// } -// case VEHICLE_DID_GPS_UBLOX_NAV_CLOCK: -// { -// // LCOV_EXCL_START 8 : dead code -// AGL_ASSERT_NOT_TESTED(); // LCOV_EXCL_LINE 200: test assert -// VehicleSensGetNavClockG(pst_data); -// break; -// // LCOV_EXCL_STOP -// } -// case VEHICLE_DID_GPS_UBLOX_NAV_DOP: -// { -// // LCOV_EXCL_START 8 : dead code -// AGL_ASSERT_NOT_TESTED(); -// VehicleSensGetNavDopG(pst_data); -// break; -// // LCOV_EXCL_STOP -// } -// case VEHICLE_DID_GPS_UBLOX_MON_HW: -// { -// // LCOV_EXCL_START 8 : dead code -// AGL_ASSERT_NOT_TESTED(); -// VehicleSensGetMonHwG(pst_data); -// break; -// // LCOV_EXCL_STOP -// } -// case VEHICLE_DID_GPS_COUNTER: -// { -// // LCOV_EXCL_START 8 : dead code -// AGL_ASSERT_NOT_TESTED(); // LCOV_EXCL_LINE 200: test assert -// VehicleSensGetGpsCounterg(pst_data); -// break; -// // LCOV_EXCL_STOP -// } -// case VEHICLE_DID_GPS__CWORD82__NMEA: -// { -// VehicleSensGetGps_CWORD82_NmeaG(pst_data); -// break; -// } -// case POSHAL_DID_GPS__CWORD82__FULLBINARY: -// { -// VehicleSensGetGps_CWORD82_FullBinaryG(pst_data); -// break; -// } -// case POSHAL_DID_GPS__CWORD82___CWORD44_GP4: -// { -// VehicleSensGetGps_CWORD82__CWORD44_Gp4G(pst_data); -// break; -// } -// case VEHICLE_DID_NAVIINFO_DIAG_GPS: -// { -// VehicleSensGetNaviinfoDiagGPSg(pst_data); -// break; -// } -// case POSHAL_DID_GPS_TIME: -// { -// VehicleSensGetGpsTimeG(pst_data); -// break; -// } -// case POSHAL_DID_GPS_TIME_RAW: -// { -// VehicleSensGetGpsTimeRawG(pst_data); -// break; -// } -// case POSHAL_DID_GPS_NMEA: -// { -// VehicleSensGetGpsNmeaG(pst_data); -// break; -// } -// case POSHAL_DID_GPS_WKNROLLOVER: -// { -// VehicleSensGetWknRolloverG(pst_data); -// break; -// } -// case POSHAL_DID_GPS_CLOCK_DRIFT: -// { -// VehicleSensGetGpsClockDriftG(pst_data); -// break; -// } -// case POSHAL_DID_GPS_CLOCK_FREQ: -// { -// VehicleSensGetGpsClockFreqG(pst_data); -// break; -// } -// default: -// break; -// } -//} +void VehicleSensGetGpsDataMaster(DID ul_did, + u_int8 uc_get_method, + SENSOR_MSG_GPSDATA_DAT *pst_data) { + /*------------------------------------------------------*/ + /* Call the data Get processing associated with the DID */ + /*------------------------------------------------------*/ + switch (ul_did) { // LCOV_EXCL_BR_LINE 6:some DID is not used + /*------------------------------------------------------*/ + /* GPS data group */ + /*------------------------------------------------------*/ + + case VEHICLE_DID_GPS_UBLOX_NAV_VELNED: + { + // LCOV_EXCL_START 8 : dead code + AGL_ASSERT_NOT_TESTED(); // LCOV_EXCL_LINE 200: test assert + VehicleSensGetNavVelnedG(pst_data); + break; + // LCOV_EXCL_STOP + } + case VEHICLE_DID_GPS_UBLOX_NAV_TIMEUTC: + { + // LCOV_EXCL_START 8 : dead code + AGL_ASSERT_NOT_TESTED(); // LCOV_EXCL_LINE 200: test assert + VehicleSensGetNavTimeUtcG(pst_data); + break; + // LCOV_EXCL_STOP + } + case VEHICLE_DID_GPS_UBLOX_NAV_TIMEGPS: + { + // LCOV_EXCL_START 8 : dead code + AGL_ASSERT_NOT_TESTED(); // LCOV_EXCL_LINE 200: test assert + VehicleSensGetNavTimeGpsG(pst_data); + break; + // LCOV_EXCL_STOP + } + case VEHICLE_DID_GPS_UBLOX_NAV_SVINFO: + { + // LCOV_EXCL_START 8 : dead code + AGL_ASSERT_NOT_TESTED(); // LCOV_EXCL_LINE 200: test assert + VehicleSensGetNavSvInfoG(pst_data); + break; + // LCOV_EXCL_STOP + } + case VEHICLE_DID_GPS_UBLOX_NAV_STATUS: + { + // LCOV_EXCL_START 8 : dead code + AGL_ASSERT_NOT_TESTED(); // LCOV_EXCL_LINE 200: test assert + VehicleSensGetNavStatusG(pst_data); + break; + // LCOV_EXCL_STOP + } + case VEHICLE_DID_GPS_UBLOX_NAV_POSLLH: + { + // LCOV_EXCL_START 8 : dead code + AGL_ASSERT_NOT_TESTED(); // LCOV_EXCL_LINE 200: test assert + VehicleSensGetNavPosllhG(pst_data); + break; + // LCOV_EXCL_STOP + } + case VEHICLE_DID_GPS_UBLOX_NAV_CLOCK: + { + // LCOV_EXCL_START 8 : dead code + AGL_ASSERT_NOT_TESTED(); // LCOV_EXCL_LINE 200: test assert + VehicleSensGetNavClockG(pst_data); + break; + // LCOV_EXCL_STOP + } + case VEHICLE_DID_GPS_UBLOX_NAV_DOP: + { + // LCOV_EXCL_START 8 : dead code + AGL_ASSERT_NOT_TESTED(); + VehicleSensGetNavDopG(pst_data); + break; + // LCOV_EXCL_STOP + } + case VEHICLE_DID_GPS_UBLOX_MON_HW: + { + // LCOV_EXCL_START 8 : dead code + AGL_ASSERT_NOT_TESTED(); + VehicleSensGetMonHwG(pst_data); + break; + // LCOV_EXCL_STOP + } + case VEHICLE_DID_GPS_COUNTER: + { + // LCOV_EXCL_START 8 : dead code + AGL_ASSERT_NOT_TESTED(); // LCOV_EXCL_LINE 200: test assert + VehicleSensGetGpsCounterg(pst_data); + break; + // LCOV_EXCL_STOP + } + case VEHICLE_DID_GPS__CWORD82__NMEA: + { + VehicleSensGetGps_CWORD82_NmeaG(pst_data); + break; + } + case POSHAL_DID_GPS__CWORD82__FULLBINARY: + { + VehicleSensGetGps_CWORD82_FullBinaryG(pst_data); + break; + } + case POSHAL_DID_GPS__CWORD82___CWORD44_GP4: + { + VehicleSensGetGps_CWORD82__CWORD44_Gp4G(pst_data); + break; + } + case VEHICLE_DID_NAVIINFO_DIAG_GPS: + { + VehicleSensGetNaviinfoDiagGPSg(pst_data); + break; + } + case POSHAL_DID_GPS_TIME: + { + VehicleSensGetGpsTimeG(pst_data); + break; + } + case POSHAL_DID_GPS_TIME_RAW: + { + VehicleSensGetGpsTimeRawG(pst_data); + break; + } + case POSHAL_DID_GPS_NMEA: + { + VehicleSensGetGpsNmeaG(pst_data); + break; + } + case POSHAL_DID_GPS_WKNROLLOVER: + { + VehicleSensGetWknRolloverG(pst_data); + break; + } + case POSHAL_DID_GPS_CLOCK_DRIFT: + { + VehicleSensGetGpsClockDriftG(pst_data); + break; + } + case POSHAL_DID_GPS_CLOCK_FREQ: + { + VehicleSensGetGpsClockFreqG(pst_data); + break; + } + default: + break; + } +} /******************************************************************************* * MODULE : VehicleSensGetDataMasterGyroTrouble @@ -1691,11 +1849,11 @@ void VehicleSensGetDataMasterGpsAntennaStatus(DID ul_did, VEHICLESENS_DATA_MASTER_GPS_ANTENNA_STATUS *pst_data) { AGL_ASSERT_NOT_TESTED(); // LCOV_EXCL_LINE 200: test assert if (pst_data != NULL) { -// if (ul_did == POSHAL_DID_GPS_ANTENNA) { -// VehicleSensGetGpsAntennaStatus(pst_data); -// } else { -// FRAMEWORKUNIFIEDLOG(ZONE_ERR, __FUNCTION__, "UNKNOWN DID(%x) \r\n", ul_did); -// } + if (ul_did == POSHAL_DID_GPS_ANTENNA) { + VehicleSensGetGpsAntennaStatus(pst_data); + } else { + FRAMEWORKUNIFIEDLOG(ZONE_ERR, __FUNCTION__, "UNKNOWN DID(%x) \r\n", ul_did); + } } else { FRAMEWORKUNIFIEDLOG(ZONE_ERR, __FUNCTION__, "pst_data == NULL\r\n"); } @@ -1709,14 +1867,14 @@ void VehicleSensGetDataMasterGpsAntennaStatus(DID ul_did, * @return Sensor Counter * */ -//static uint8_t VehicleSensGetSensorCnt(void) { -// VEHICLESENS_DATA_MASTER st_data; -// uint8_t sensCnt; -// -// /* Synchronous counter acquisition */ -// VehicleSensGetSnsCounterl(&st_data); -// -// sensCnt = st_data.uc_data[0]; -// -// return sensCnt; -//} +static uint8_t VehicleSensGetSensorCnt(void) { + VEHICLESENS_DATA_MASTER st_data; + uint8_t sensCnt; + + /* Synchronous counter acquisition */ + VehicleSensGetSnsCounterl(&st_data); + + sensCnt = st_data.uc_data[0]; + + return sensCnt; +} diff --git a/positioning/server/src/Sensor/VehicleSens_DeliveryCtrl.cpp b/positioning/server/src/Sensor/VehicleSens_DeliveryCtrl.cpp index 5bf70b24..15aabffe 100644 --- a/positioning/server/src/Sensor/VehicleSens_DeliveryCtrl.cpp +++ b/positioning/server/src/Sensor/VehicleSens_DeliveryCtrl.cpp @@ -1,5 +1,5 @@ /* - * @copyright Copyright (c) 2016-2019 TOYOTA MOTOR CORPORATION. + * @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. @@ -578,276 +578,279 @@ u_int8 VehicleSensDeliveryGPS(DID ul_did, u_int8 uc_get_method, u_int8 uc_curren SENSORMOTION_MSG_HEADINGINFO *pheading_msg; #endif -// SENSOR_MSG_GPSDATA_DAT gps_master; -// VEHICLESENS_DELIVERY_FORMAT delivery_data; -// u_int16 length; -// u_int16 senslog_len; -// RET_API ret = RET_NORMAL; /* API return value */ + SENSOR_MSG_GPSDATA_DAT gps_master; + VEHICLESENS_DELIVERY_FORMAT delivery_data; + u_int16 length; + u_int16 senslog_len; + RET_API ret = RET_NORMAL; /* API return value */ u_int8 uc_result = SENSLOG_RES_SUCCESS; /* Send/Receive result */ -// VehicleSensGetGpsDataMaster(ul_did, uc_current_get_method, &gps_master); -// -// if (ul_did == POSHAL_DID_GPS_TIME) { -// /* GPS time,Because there is no header in the message to be delivered, -// Padding deliveryData headers */ -// (void)memcpy(reinterpret_cast(&delivery_data), -// reinterpret_cast(&gps_master.uc_data[0]), gps_master.us_size); -// length = gps_master.us_size; -// senslog_len = length; -// *cid = CID_VEHICLESENS_VEHICLE_INFO_GPS_TIME; -// } else if (ul_did == VEHICLE_DID_LOCATION_LONLAT) { -// plonlat_msg = reinterpret_cast(&delivery_data); -// /* Acquire the applicable data information from the data master..*/ -// VehicleSensGetDataMaster(ul_did, uc_current_get_method, stmaster); -// (void)memcpy(reinterpret_cast(&(plonlat_msg->data)), -// reinterpret_cast(&(stmaster->uc_data[0])), stmaster->us_size); -// length = (u_int16)(stmaster->us_size); -// senslog_len = length; -// *cid = CID_POSIF_REGISTER_LISTENER_LONLAT; -// } else if (ul_did == VEHICLE_DID_LOCATION_ALTITUDE) { -// paltitude_msg = reinterpret_cast(&delivery_data); -// /* Acquire the applicable data information from the data master..*/ -// VehicleSensGetDataMaster(ul_did, uc_get_method, stmaster); -// (void)memcpy(reinterpret_cast(&(paltitude_msg->data)), -// reinterpret_cast(&stmaster->uc_data[0]), stmaster->us_size); -// length = (u_int16)(stmaster->us_size); -// senslog_len = length; -// *cid = CID_POSIF_REGISTER_LISTENER_ALTITUDE; -// } else if (ul_did == VEHICLE_DID_MOTION_HEADING) { -// pheading_msg = reinterpret_cast(&delivery_data); -// /* Acquire the applicable data information from the data master..*/ -// VehicleSensGetDataMaster(ul_did, uc_get_method, stmaster); -// (void)memcpy(reinterpret_cast(&(pheading_msg->data)), -// reinterpret_cast(&stmaster->uc_data[0]), stmaster->us_size); -// length = (u_int16)(stmaster->us_size); -// senslog_len = length; -// *cid = CID_POSIF_REGISTER_LISTENER_HEADING; -// } else { -// delivery_data.header.did = gps_master.ul_did; -// delivery_data.header.size = gps_master.us_size; -// delivery_data.header.rcv_flag = gps_master.uc_rcv_flag; -// delivery_data.header.sensor_cnt = gps_master.uc_sns_cnt; -// (void)memcpy(reinterpret_cast(&delivery_data.data[0]), -// reinterpret_cast(&gps_master.uc_data[0]), -// (size_t)delivery_data.header.size); -// -// length = static_cast((u_int16)sizeof(delivery_data.header) + \ -// delivery_data.header.size); -// senslog_len = delivery_data.header.size; -// *cid = CID_VEHICLESENS_VEHICLE_INFO; -// } -// -// /* Call Vehicle Sensor Information Notification Transmission Process.*/ -// ret = VehicleSndMsg(PNO_VEHICLE_SENSOR, -// pst_pno_tbl->st_pno_data[pno_index].us_pno, -// static_cast(*cid), -// length, -// (const void *)&delivery_data); -// uc_result = SENSLOG_RES_SUCCESS; -// if (ret != RET_NORMAL) { -// uc_result = SENSLOG_RES_FAIL; -// } -// if (*cid != CID_VEHICLESENS_VEHICLE_INFO) { -// SensLogWriteOutputData(SENSLOG_DATA_O_UNSPECIFIED, ul_did, -// pst_pno_tbl->st_pno_data[pno_index].us_pno, -// reinterpret_cast(&delivery_data), -// senslog_len, uc_result); -// } else { -// SensLogWriteOutputData(SENSLOG_DATA_O_UNSPECIFIED, ul_did, -// pst_pno_tbl->st_pno_data[pno_index].us_pno, -// reinterpret_cast(&(delivery_data.data[0])), -// senslog_len, uc_result); -// } + VehicleSensGetGpsDataMaster(ul_did, uc_current_get_method, &gps_master); + + if (ul_did == POSHAL_DID_GPS_TIME) { + /* GPS time,Because there is no header in the message to be delivered, + Padding deliveryData headers */ + (void)memcpy(reinterpret_cast(&delivery_data), + reinterpret_cast(&gps_master.uc_data[0]), gps_master.us_size); + length = gps_master.us_size; + senslog_len = length; + *cid = CID_VEHICLESENS_VEHICLE_INFO_GPS_TIME; + } else if (ul_did == VEHICLE_DID_LOCATION_LONLAT) { + plonlat_msg = reinterpret_cast(&delivery_data); + /* Acquire the applicable data information from the data master..*/ + VehicleSensGetDataMaster(ul_did, uc_current_get_method, stmaster); + (void)memcpy(reinterpret_cast(&(plonlat_msg->data)), + reinterpret_cast(&(stmaster->uc_data[0])), stmaster->us_size); + length = (u_int16)(stmaster->us_size); + senslog_len = length; + *cid = CID_POSIF_REGISTER_LISTENER_LONLAT; + } else if (ul_did == VEHICLE_DID_LOCATION_ALTITUDE) { + paltitude_msg = reinterpret_cast(&delivery_data); + /* Acquire the applicable data information from the data master..*/ + VehicleSensGetDataMaster(ul_did, uc_get_method, stmaster); + (void)memcpy(reinterpret_cast(&(paltitude_msg->data)), + reinterpret_cast(&stmaster->uc_data[0]), stmaster->us_size); + length = (u_int16)(stmaster->us_size); + senslog_len = length; + *cid = CID_POSIF_REGISTER_LISTENER_ALTITUDE; + } else if (ul_did == VEHICLE_DID_MOTION_HEADING) { + pheading_msg = reinterpret_cast(&delivery_data); + /* Acquire the applicable data information from the data master..*/ + VehicleSensGetDataMaster(ul_did, uc_get_method, stmaster); + (void)memcpy(reinterpret_cast(&(pheading_msg->data)), + reinterpret_cast(&stmaster->uc_data[0]), stmaster->us_size); + length = (u_int16)(stmaster->us_size); + senslog_len = length; + *cid = CID_POSIF_REGISTER_LISTENER_HEADING; + } else { + delivery_data.header.did = gps_master.ul_did; + delivery_data.header.size = gps_master.us_size; + delivery_data.header.rcv_flag = gps_master.uc_rcv_flag; + delivery_data.header.sensor_cnt = gps_master.uc_sns_cnt; + (void)memcpy(reinterpret_cast(&delivery_data.data[0]), + reinterpret_cast(&gps_master.uc_data[0]), + (size_t)delivery_data.header.size); + + length = static_cast((u_int16)sizeof(delivery_data.header) + \ + delivery_data.header.size); + senslog_len = delivery_data.header.size; + *cid = CID_VEHICLESENS_VEHICLE_INFO; + } + + /* Call Vehicle Sensor Information Notification Transmission Process.*/ + ret = VehicleSndMsg(PNO_VEHICLE_SENSOR, + pst_pno_tbl->st_pno_data[pno_index].us_pno, + static_cast(*cid), + length, + (const void *)&delivery_data); + uc_result = SENSLOG_RES_SUCCESS; + if (ret != RET_NORMAL) { + uc_result = SENSLOG_RES_FAIL; + } + if (*cid != CID_VEHICLESENS_VEHICLE_INFO) { + SensLogWriteOutputData(SENSLOG_DATA_O_UNSPECIFIED, ul_did, + pst_pno_tbl->st_pno_data[pno_index].us_pno, + reinterpret_cast(&delivery_data), + senslog_len, uc_result); + } else { + SensLogWriteOutputData(SENSLOG_DATA_O_UNSPECIFIED, ul_did, + pst_pno_tbl->st_pno_data[pno_index].us_pno, + reinterpret_cast(&(delivery_data.data[0])), + senslog_len, uc_result); + } return uc_result; } u_int8 VehicleSensDeliveryFst(DID ul_did, u_int8 uc_get_method, int32 pno_index, const VEHICLESENS_DELIVERY_PNO_TBL *pst_pno_tbl) { -// VEHICLESENS_DATA_MASTER_FST st_master_fst; /* Master of initial sensor data */ -// VEHICLESENS_DATA_MASTER_FST st_master_fst_temp; /* For temporary storage */ + VEHICLESENS_DATA_MASTER_FST st_master_fst; /* Master of initial sensor data */ + VEHICLESENS_DATA_MASTER_FST st_master_fst_temp; /* For temporary storage */ RET_API ret = RET_NORMAL; /* API return value */ u_int8 uc_result = SENSLOG_RES_SUCCESS; /* Send/Receive result */ -// (void)memset(reinterpret_cast(&st_master_fst), -// 0, -// sizeof(VEHICLESENS_DATA_MASTER_FST)); -// (void)memset(reinterpret_cast(&st_master_fst_temp), -// 0, -// sizeof(VEHICLESENS_DATA_MASTER_FST)); -// VehicleSensGetDataMasterFst(ul_did, uc_get_method, &st_master_fst); -// if (st_master_fst.partition_flg == 1) { -// /* When the partitioning flag is enabled,Or exceeds the size that can be sent,Perform split transmission */ -// memcpy(&st_master_fst_temp, &st_master_fst, sizeof(VEHICLESENS_DATA_MASTER_FST)); -// if ((ul_did == POSHAL_DID_GYRO_FST) || /* Ignore->MISRA-C++:2008 Rule 5-0-5 */ -// (ul_did == POSHAL_DID_GSNS_X_FST) || -// (ul_did == POSHAL_DID_GSNS_Y_FST)) { -// /* 1st session */ -// /* Call Vehicle Sensor Information Notification Transmission Process.*/ -// /* Size of data that can be transmitted in one division(Same size definition used)*/ -// st_master_fst_temp.us_size = LSDRV_FSTSNS_DSIZE_GYRO; -// ret = VehicleSndMsg(PNO_VEHICLE_SENSOR, -// pst_pno_tbl->st_pno_data[pno_index].us_pno, -// CID_VEHICLESENS_VEHICLE_INFO, -// /* Data size + data information Ignore->MISRA-C++:2008 Rule 5-0-5 */ -// static_cast(st_master_fst_temp.us_size + 8), -// (const void *)&st_master_fst_temp); -// uc_result = SENSLOG_RES_SUCCESS; -// if (ret != RET_NORMAL) { -// uc_result = SENSLOG_RES_FAIL; -// } -// SensLogWriteOutputData(SENSLOG_DATA_O_SYS, -// ul_did, -// pst_pno_tbl->st_pno_data[pno_index].us_pno, -// reinterpret_cast(&(st_master_fst_temp.uc_data[0])), -// st_master_fst_temp.us_size, -// uc_result); -// -// /* Second time */ -// /* Call Vehicle Sensor Information Notification Transmission Process.*/ -// (void)memset(reinterpret_cast(&st_master_fst_temp.uc_data[0]), -// 0, -// sizeof(u_int8) * VEHICLE_DSIZE_DATA_MASTER_FST); -// /* Size of the data - Transmission size(Same size definition used)Ignore->MISRA-C++:2008 Rule 5-0-5 */ -// st_master_fst_temp.us_size = static_cast(st_master_fst.us_size - \ -// LSDRV_FSTSNS_DSIZE_GYRO); -// memcpy(&st_master_fst_temp.uc_data[0], -// &st_master_fst.uc_data[LSDRV_FSTSNS_DSIZE_GYRO], -// st_master_fst_temp.us_size); -// /* Ignore->MISRA-C++:2008 Rule 5-0-5 #Coverity_19347 */ -// ret = VehicleSndMsg(PNO_VEHICLE_SENSOR, -// pst_pno_tbl->st_pno_data[pno_index].us_pno, -// CID_VEHICLESENS_VEHICLE_INFO, -// /* Data size + data information Ignore->MISRA-C++:2008 Rule 5-0-5 */ -// static_cast(st_master_fst_temp.us_size + 8), -// (const void *)&st_master_fst_temp); -// uc_result = SENSLOG_RES_SUCCESS; -// if (ret != RET_NORMAL) { -// uc_result = SENSLOG_RES_FAIL; -// } -// SensLogWriteOutputData(SENSLOG_DATA_O_SYS, -// ul_did, -// pst_pno_tbl->st_pno_data[pno_index].us_pno, -// reinterpret_cast(&(st_master_fst_temp.uc_data[0])), -// st_master_fst_temp.us_size, -// uc_result); -// } else if (ul_did == POSHAL_DID_REV_FST) { /* Ignore->MISRA-C++:2008 Rule 5-0-5 */ -// /* 1st session */ -// /* Call Vehicle Sensor Information Notification Transmission Process.*/ -// /* Size of data that can be transmitted in one division */ -// st_master_fst_temp.us_size = LSDRV_FSTSNS_DSIZE_REV; -// ret = VehicleSndMsg(PNO_VEHICLE_SENSOR, -// pst_pno_tbl->st_pno_data[pno_index].us_pno, -// CID_VEHICLESENS_VEHICLE_INFO, -// /* Data size + data information Ignore->MISRA-C++:2008 Rule 5-0-5 */ -// static_cast(st_master_fst_temp.us_size + 8), -// (const void *)&st_master_fst_temp); -// uc_result = SENSLOG_RES_SUCCESS; -// if (ret != RET_NORMAL) { -// uc_result = SENSLOG_RES_FAIL; -// } -// SensLogWriteOutputData(SENSLOG_DATA_O_SYS, -// ul_did, -// pst_pno_tbl->st_pno_data[pno_index].us_pno, -// reinterpret_cast(&(st_master_fst_temp.uc_data[0])), -// st_master_fst_temp.us_size, -// uc_result); -// -// /* Second time */ -// /* Call Vehicle Sensor Information Notification Transmission Process.*/ -// (void)memset(reinterpret_cast(&st_master_fst_temp.uc_data[0]), -// 0, -// sizeof(u_int8) * VEHICLE_DSIZE_DATA_MASTER_FST); -// /* Size of the data - Transmission size Ignore->MISRA-C++:2008 Rule 5-0-5 */ -// st_master_fst_temp.us_size = static_cast(st_master_fst.us_size - \ -// LSDRV_FSTSNS_DSIZE_REV); -// /* Ignore->MISRA-C++:2008 Rule 5-0-5 #Coverity_19347 */ -// memcpy(&st_master_fst_temp.uc_data[0], -// &st_master_fst.uc_data[LSDRV_FSTSNS_DSIZE_REV], -// st_master_fst_temp.us_size); -// ret = VehicleSndMsg(PNO_VEHICLE_SENSOR, -// pst_pno_tbl->st_pno_data[pno_index].us_pno, -// CID_VEHICLESENS_VEHICLE_INFO, -// /* Data size + data information Ignore->MISRA-C++:2008 Rule 5-0-5 */ -// static_cast(st_master_fst_temp.us_size + 8), -// (const void *)&st_master_fst_temp); -// uc_result = SENSLOG_RES_SUCCESS; -// if (ret != RET_NORMAL) { -// uc_result = SENSLOG_RES_FAIL; -// } -// SensLogWriteOutputData(SENSLOG_DATA_O_SYS, -// ul_did, -// pst_pno_tbl->st_pno_data[pno_index].us_pno, -// reinterpret_cast(&(st_master_fst_temp.uc_data[0])), -// st_master_fst_temp.us_size, -// uc_result); -// } else { -// /* 1st session */ -// /* Call Vehicle Sensor Information Notification Transmission Process.*/ -// /* Size of data that can be transmitted in one division(Same size definition used)*/ -// st_master_fst_temp.us_size = LSDRV_FSTSNS_DSIZE_GYRO_TEMP; -// ret = VehicleSndMsg(PNO_VEHICLE_SENSOR, -// pst_pno_tbl->st_pno_data[pno_index].us_pno, -// CID_VEHICLESENS_VEHICLE_INFO, -// /* Data size + data information Ignore->MISRA-C++:2008 Rule 5-0-5 */ -// static_cast(st_master_fst_temp.us_size + 8), -// (const void *)&st_master_fst_temp); -// uc_result = SENSLOG_RES_SUCCESS; -// if (ret != RET_NORMAL) { -// uc_result = SENSLOG_RES_FAIL; -// } -// SensLogWriteOutputData(SENSLOG_DATA_O_SYS, -// ul_did, -// pst_pno_tbl->st_pno_data[pno_index].us_pno, -// reinterpret_cast(&(st_master_fst_temp.uc_data[0])), -// st_master_fst_temp.us_size, -// uc_result); -// /* Second time */ -// /* Call Vehicle Sensor Information Notification Transmission Process.*/ -// (void)memset(reinterpret_cast(&st_master_fst_temp.uc_data[0]), -// 0, -// sizeof(u_int8) * VEHICLE_DSIZE_DATA_MASTER_FST); -// /* Size of the data - Transmission size(Same size definition used)Ignore->MISRA-C++:2008 Rule 5-0-5 */ -// st_master_fst_temp.us_size = static_cast(st_master_fst.us_size - \ -// LSDRV_FSTSNS_DSIZE_GYRO_TEMP); -// memcpy(&st_master_fst_temp.uc_data[0], -// &st_master_fst.uc_data[LSDRV_FSTSNS_DSIZE_GYRO_TEMP], -// st_master_fst_temp.us_size); /* Ignore->MISRA-C++:2008 Rule 5-0-5 #Coverity_19347*/ -// ret = VehicleSndMsg(PNO_VEHICLE_SENSOR, -// pst_pno_tbl->st_pno_data[pno_index].us_pno, -// CID_VEHICLESENS_VEHICLE_INFO, -// /* Data size + data information Ignore->MISRA-C++:2008 Rule 5-0-5 */ -// static_cast(st_master_fst_temp.us_size + 8), -// (const void *)&st_master_fst_temp); -// uc_result = SENSLOG_RES_SUCCESS; -// if (ret != RET_NORMAL) { -// uc_result = SENSLOG_RES_FAIL; -// } -// SensLogWriteOutputData(SENSLOG_DATA_O_SYS, -// ul_did, -// pst_pno_tbl->st_pno_data[pno_index].us_pno, -// reinterpret_cast(&(st_master_fst_temp.uc_data[0])), -// st_master_fst_temp.us_size, -// uc_result); -// } -// } else { -// /* Call Vehicle Sensor Information Notification Transmission Process.*/ -// ret = VehicleSndMsg(PNO_VEHICLE_SENSOR, -// pst_pno_tbl->st_pno_data[pno_index].us_pno, -// CID_VEHICLESENS_VEHICLE_INFO, -// /* Data size + data information Ignore->MISRA-C++:2008 Rule 5-0-5 */ -// static_cast(st_master_fst.us_size + 8), -// (const void *)&st_master_fst); -// uc_result = SENSLOG_RES_SUCCESS; -// if (ret != RET_NORMAL) { -// uc_result = SENSLOG_RES_FAIL; -// } -// SensLogWriteOutputData(SENSLOG_DATA_O_SYS, -// ul_did, -// pst_pno_tbl->st_pno_data[pno_index].us_pno, -// reinterpret_cast(&(st_master_fst.uc_data[0])), -// st_master_fst.us_size, -// uc_result); -// } + (void)memset(reinterpret_cast(&st_master_fst), + 0, + sizeof(VEHICLESENS_DATA_MASTER_FST)); + (void)memset(reinterpret_cast(&st_master_fst_temp), + 0, + sizeof(VEHICLESENS_DATA_MASTER_FST)); + VehicleSensGetDataMasterFst(ul_did, uc_get_method, &st_master_fst); + if (st_master_fst.partition_flg == 1) { + /* When the partitioning flag is enabled,Or exceeds the size that can be sent,Perform split transmission */ + memcpy(&st_master_fst_temp, &st_master_fst, sizeof(VEHICLESENS_DATA_MASTER_FST)); + if ((ul_did == POSHAL_DID_GYRO_X_FST) || /* Ignore->MISRA-C++:2008 Rule 5-0-5 */ + (ul_did == POSHAL_DID_GYRO_Y_FST) || + (ul_did == POSHAL_DID_GYRO_Z_FST) || + (ul_did == POSHAL_DID_GSNS_X_FST) || + (ul_did == POSHAL_DID_GSNS_Y_FST) || + (ul_did == POSHAL_DID_GSNS_Z_FST)) { + /* 1st session */ + /* Call Vehicle Sensor Information Notification Transmission Process.*/ + /* Size of data that can be transmitted in one division(Same size definition used)*/ + st_master_fst_temp.us_size = LSDRV_FSTSNS_DSIZE_GYRO_X; + ret = VehicleSndMsg(PNO_VEHICLE_SENSOR, + pst_pno_tbl->st_pno_data[pno_index].us_pno, + CID_VEHICLESENS_VEHICLE_INFO, + /* Data size + data information Ignore->MISRA-C++:2008 Rule 5-0-5 */ + static_cast(st_master_fst_temp.us_size + 8), + (const void *)&st_master_fst_temp); + uc_result = SENSLOG_RES_SUCCESS; + if (ret != RET_NORMAL) { + uc_result = SENSLOG_RES_FAIL; + } + SensLogWriteOutputData(SENSLOG_DATA_O_SYS, + ul_did, + pst_pno_tbl->st_pno_data[pno_index].us_pno, + reinterpret_cast(&(st_master_fst_temp.uc_data[0])), + st_master_fst_temp.us_size, + uc_result); + + /* Second time */ + /* Call Vehicle Sensor Information Notification Transmission Process.*/ + (void)memset(reinterpret_cast(&st_master_fst_temp.uc_data[0]), + 0, + sizeof(u_int8) * VEHICLE_DSIZE_DATA_MASTER_FST); + /* Size of the data - Transmission size(Same size definition used)Ignore->MISRA-C++:2008 Rule 5-0-5 */ + st_master_fst_temp.us_size = static_cast(st_master_fst.us_size - \ + LSDRV_FSTSNS_DSIZE_GYRO_X); + memcpy(&st_master_fst_temp.uc_data[0], + &st_master_fst.uc_data[LSDRV_FSTSNS_DSIZE_GYRO_X], + st_master_fst_temp.us_size); + /* Ignore->MISRA-C++:2008 Rule 5-0-5 #Coverity_19347 */ + ret = VehicleSndMsg(PNO_VEHICLE_SENSOR, + pst_pno_tbl->st_pno_data[pno_index].us_pno, + CID_VEHICLESENS_VEHICLE_INFO, + /* Data size + data information Ignore->MISRA-C++:2008 Rule 5-0-5 */ + static_cast(st_master_fst_temp.us_size + 8), + (const void *)&st_master_fst_temp); + uc_result = SENSLOG_RES_SUCCESS; + if (ret != RET_NORMAL) { + uc_result = SENSLOG_RES_FAIL; + } + SensLogWriteOutputData(SENSLOG_DATA_O_SYS, + ul_did, + pst_pno_tbl->st_pno_data[pno_index].us_pno, + reinterpret_cast(&(st_master_fst_temp.uc_data[0])), + st_master_fst_temp.us_size, + uc_result); + } else if (ul_did == POSHAL_DID_REV_FST) { /* Ignore->MISRA-C++:2008 Rule 5-0-5 */ + /* 1st session */ + /* Call Vehicle Sensor Information Notification Transmission Process.*/ + /* Size of data that can be transmitted in one division */ + st_master_fst_temp.us_size = LSDRV_FSTSNS_DSIZE_REV; + ret = VehicleSndMsg(PNO_VEHICLE_SENSOR, + pst_pno_tbl->st_pno_data[pno_index].us_pno, + CID_VEHICLESENS_VEHICLE_INFO, + /* Data size + data information Ignore->MISRA-C++:2008 Rule 5-0-5 */ + static_cast(st_master_fst_temp.us_size + 8), + (const void *)&st_master_fst_temp); + uc_result = SENSLOG_RES_SUCCESS; + if (ret != RET_NORMAL) { + uc_result = SENSLOG_RES_FAIL; + } + SensLogWriteOutputData(SENSLOG_DATA_O_SYS, + ul_did, + pst_pno_tbl->st_pno_data[pno_index].us_pno, + reinterpret_cast(&(st_master_fst_temp.uc_data[0])), + st_master_fst_temp.us_size, + uc_result); + + /* Second time */ + /* Call Vehicle Sensor Information Notification Transmission Process.*/ + (void)memset(reinterpret_cast(&st_master_fst_temp.uc_data[0]), + 0, + sizeof(u_int8) * VEHICLE_DSIZE_DATA_MASTER_FST); + /* Size of the data - Transmission size Ignore->MISRA-C++:2008 Rule 5-0-5 */ + st_master_fst_temp.us_size = static_cast(st_master_fst.us_size - \ + LSDRV_FSTSNS_DSIZE_REV); + /* Ignore->MISRA-C++:2008 Rule 5-0-5 #Coverity_19347 */ + memcpy(&st_master_fst_temp.uc_data[0], + &st_master_fst.uc_data[LSDRV_FSTSNS_DSIZE_REV], + st_master_fst_temp.us_size); + ret = VehicleSndMsg(PNO_VEHICLE_SENSOR, + pst_pno_tbl->st_pno_data[pno_index].us_pno, + CID_VEHICLESENS_VEHICLE_INFO, + /* Data size + data information Ignore->MISRA-C++:2008 Rule 5-0-5 */ + static_cast(st_master_fst_temp.us_size + 8), + (const void *)&st_master_fst_temp); + uc_result = SENSLOG_RES_SUCCESS; + if (ret != RET_NORMAL) { + uc_result = SENSLOG_RES_FAIL; + } + SensLogWriteOutputData(SENSLOG_DATA_O_SYS, + ul_did, + pst_pno_tbl->st_pno_data[pno_index].us_pno, + reinterpret_cast(&(st_master_fst_temp.uc_data[0])), + st_master_fst_temp.us_size, + uc_result); + } else { + /* 1st session */ + /* Call Vehicle Sensor Information Notification Transmission Process.*/ + /* Size of data that can be transmitted in one division(Same size definition used)*/ + st_master_fst_temp.us_size = LSDRV_FSTSNS_DSIZE_GYRO_TEMP; + ret = VehicleSndMsg(PNO_VEHICLE_SENSOR, + pst_pno_tbl->st_pno_data[pno_index].us_pno, + CID_VEHICLESENS_VEHICLE_INFO, + /* Data size + data information Ignore->MISRA-C++:2008 Rule 5-0-5 */ + static_cast(st_master_fst_temp.us_size + 8), + (const void *)&st_master_fst_temp); + uc_result = SENSLOG_RES_SUCCESS; + if (ret != RET_NORMAL) { + uc_result = SENSLOG_RES_FAIL; + } + SensLogWriteOutputData(SENSLOG_DATA_O_SYS, + ul_did, + pst_pno_tbl->st_pno_data[pno_index].us_pno, + reinterpret_cast(&(st_master_fst_temp.uc_data[0])), + st_master_fst_temp.us_size, + uc_result); + /* Second time */ + /* Call Vehicle Sensor Information Notification Transmission Process.*/ + (void)memset(reinterpret_cast(&st_master_fst_temp.uc_data[0]), + 0, + sizeof(u_int8) * VEHICLE_DSIZE_DATA_MASTER_FST); + /* Size of the data - Transmission size(Same size definition used)Ignore->MISRA-C++:2008 Rule 5-0-5 */ + st_master_fst_temp.us_size = static_cast(st_master_fst.us_size - \ + LSDRV_FSTSNS_DSIZE_GYRO_TEMP); + memcpy(&st_master_fst_temp.uc_data[0], + &st_master_fst.uc_data[LSDRV_FSTSNS_DSIZE_GYRO_TEMP], + st_master_fst_temp.us_size); /* Ignore->MISRA-C++:2008 Rule 5-0-5 #Coverity_19347*/ + ret = VehicleSndMsg(PNO_VEHICLE_SENSOR, + pst_pno_tbl->st_pno_data[pno_index].us_pno, + CID_VEHICLESENS_VEHICLE_INFO, + /* Data size + data information Ignore->MISRA-C++:2008 Rule 5-0-5 */ + static_cast(st_master_fst_temp.us_size + 8), + (const void *)&st_master_fst_temp); + uc_result = SENSLOG_RES_SUCCESS; + if (ret != RET_NORMAL) { + uc_result = SENSLOG_RES_FAIL; + } + SensLogWriteOutputData(SENSLOG_DATA_O_SYS, + ul_did, + pst_pno_tbl->st_pno_data[pno_index].us_pno, + reinterpret_cast(&(st_master_fst_temp.uc_data[0])), + st_master_fst_temp.us_size, + uc_result); + } + } else { + /* Call Vehicle Sensor Information Notification Transmission Process.*/ + ret = VehicleSndMsg(PNO_VEHICLE_SENSOR, + pst_pno_tbl->st_pno_data[pno_index].us_pno, + CID_VEHICLESENS_VEHICLE_INFO, + /* Data size + data information Ignore->MISRA-C++:2008 Rule 5-0-5 */ + static_cast(st_master_fst.us_size + 8), + (const void *)&st_master_fst); + uc_result = SENSLOG_RES_SUCCESS; + if (ret != RET_NORMAL) { + uc_result = SENSLOG_RES_FAIL; + } + SensLogWriteOutputData(SENSLOG_DATA_O_SYS, + ul_did, + pst_pno_tbl->st_pno_data[pno_index].us_pno, + reinterpret_cast(&(st_master_fst.uc_data[0])), + st_master_fst.us_size, + uc_result); + } return uc_result; } @@ -990,335 +993,318 @@ u_int8 VehicleSensDeliveryOther(DID ul_did, u_int8 uc_current_get_method, int32 return uc_result; } -void VehicleSensDeliveryProc(DID ul_did, u_int8 uc_chg_type, u_int8 uc_get_method) { - u_int8 uc_current_get_method; /* Data collection way */ - int32 i; /* Generic counters */ - int32 j; /* Generic counters */ - VEHICLESENS_DATA_MASTER stmaster; /* Data master of normal data */ - const VEHICLESENS_DELIVERY_PNO_TBL *pst_pno_tbl; /* Vehicle Sensor Destination PNO Table Pointer */ - SENSOR_PKG_MSG_VSINFO st_pkg_master; /* Data master for package delivery */ - u_int8 uc_data_cnt; /* Counter for the number of data */ - u_int16 us_index; /* Package delivery management table reference */ - DID ul_pkg_did; /* DID for package data acquisition */ - u_int16 us_offset; /* For offset calculation */ - u_int16 us_next_offset; /* Next offset value */ - u_int16 us_boundary_adj; /* For boundary adjustment */ -#if CONFIG_SENSOR_EXT_VALID /* Initial Sensor Support */ - u_int32 cid; - RET_API ret = RET_NORMAL; /* API return value */ - u_int8 uc_result = SENSLOG_RES_SUCCESS; /* Send/Receive result */ -#endif - /* Obtain the data acquisition method from the Vehicle Selection Item List */ - uc_current_get_method = VehicleSensGetSelectionItemList(ul_did); - - if (uc_current_get_method == uc_get_method) { - /* When the data acquisition methods match (= delivery target) */ - - /* Obtain the shipping destination PNO */ - pst_pno_tbl = (const VEHICLESENS_DELIVERY_PNO_TBL *)VehicleSensMakeDeliveryPnoTbl(ul_did, uc_chg_type); - - if ((pst_pno_tbl->us_dnum) > 0) { - /* When there is a shipping destination PNO registration */ - /* For boundary adjustment */ - us_boundary_adj = (u_int16)VEHICLESENS_BIT1 | (u_int16)VEHICLESENS_BIT0; - /* Vehicle sensor information notification transmission process */ - for (i = 0; i < (pst_pno_tbl->us_dnum); i++) { - if (VEHICLESENS_DELIVERY_METHOD_PACKAGE == pst_pno_tbl->st_pno_data[i].uc_method) { - /* When the delivery method is the package method */ - (void)memset(reinterpret_cast(&st_pkg_master), 0, sizeof(SENSOR_PKG_MSG_VSINFO)); - - us_index = pst_pno_tbl->st_pno_data[i].us_pkg_start_idx; - uc_data_cnt = 0U; - us_offset = 0U; - for (j = 0; j < SENSOR_PKG_DELIVERY_MAX; j++) { - ul_pkg_did = g_stpkgdelivery_tbl_mng.st_pkg_data[us_index].ul_did; /* Get DID */ - st_pkg_master.usOffset[uc_data_cnt] = us_offset; /* Offset setting */ - uc_current_get_method = VehicleSensGetSelectionItemList(ul_pkg_did); /* Data collection way */ - if (VEHICLESENS_GETMETHOD_GPS == uc_current_get_method) { -// VehicleSensGetGpsDataMaster(ul_pkg_did, -// uc_current_get_method, -// reinterpret_cast(&st_pkg_master.ucData[us_offset])); - } else { - VehicleSensGetDataMaster(ul_pkg_did, - uc_current_get_method, - reinterpret_cast(&st_pkg_master.ucData[us_offset])); - } - uc_data_cnt++; /* Data count increment */ - if ((us_index == pst_pno_tbl->st_pno_data[i].us_pkg_end_idx) || - (VEHICLESENS_LINK_INDEX_END == g_stpkgdelivery_tbl_mng.st_pkg_data[us_index].usdlvry_idx)) { - st_pkg_master.ucDNum = uc_data_cnt; /* To save the number of data */ - break; - } else { - /* By creating the following processing contents,Need to obtain an offset value */ - us_next_offset = VehicleSensGetDataMasterOffset(ul_pkg_did); /* Next offset calculation */ - /* Boundary adjustment of data size */ - if ((us_next_offset & us_boundary_adj) != 0) { - /* If you need to adjust */ - /* Mask Lower Bit */ - us_next_offset = static_cast(us_next_offset & ~us_boundary_adj); - /* Add numbers */ - us_next_offset = static_cast(us_next_offset + (u_int16)VEHICLESENS_BIT2); - } - us_offset = static_cast(us_offset +us_next_offset); - /* Get next index */ - us_index = g_stpkgdelivery_tbl_mng.st_pkg_data[us_index].usdlvry_idx; - } - } -// ret = PosSndMsg(PNO_VEHICLE_SENSOR, -// pst_pno_tbl->st_pno_data[i].us_pno, -// CID_SENSOR_PKG_INFO, -// (u_int16)sizeof(SENSOR_PKG_MSG_VSINFO), -// (const void *)&st_pkg_master); -// uc_result = SENSLOG_RES_SUCCESS; -// if (ret != RET_NORMAL) { -// uc_result = SENSLOG_RES_FAIL; -// } -// SensLogWriteOutputData(SENSLOG_DATA_O_SYS_PKG, 0, pst_pno_tbl->st_pno_data[i].us_pno, -// reinterpret_cast(&st_pkg_master), -// sizeof(SENSOR_PKG_MSG_VSINFO), uc_result); - } else { - /* When the delivery system is normal */ - /* Acquire the applicable data information from the data master..*/ - if (VEHICLESENS_GETMETHOD_GPS == uc_current_get_method) { -// uc_result = VehicleSensDeliveryGPS(ul_did, uc_get_method, uc_current_get_method, i, -// &cid, &stmaster, pst_pno_tbl); - } - else if ((VEHICLESENS_GETMETHOD_NAVI == uc_get_method) || // NOLINT(readability/braces) - (VEHICLESENS_GETMETHOD_OTHER == uc_get_method) || - (VEHICLESENS_GETMETHOD_INTERNAL == uc_get_method)) { -// uc_result = VehicleSensDeliveryOther(ul_did, uc_current_get_method, i, -// &cid, &stmaster, pst_pno_tbl); - } +void VehicleSensDeliveryProc(DID ul_did, u_int8 uc_chg_type, u_int8 uc_get_method) { + VEHICLESENS_DATA_MASTER stmaster; /* Data master of normal data */ + const VEHICLESENS_DELIVERY_PNO_TBL *pst_pno_tbl; /* Vehicle Sensor Destination PNO Table Pointer */ + SENSOR_PKG_MSG_VSINFO st_pkg_master; /* Data master for package delivery */ + uint32_t cid; + uint8_t uc_result = SENSLOG_RES_SUCCESS; /* Send/Receive result */ + + /* Obtain the data acquisition method from the Vehicle Selection Item List */ + uint8_t uc_current_get_method = VehicleSensGetSelectionItemList(ul_did); + + if (uc_current_get_method == uc_get_method) { + /* When the data acquisition methods match (= delivery target) */ + + /* Obtain the shipping destination PNO */ + pst_pno_tbl = (const VEHICLESENS_DELIVERY_PNO_TBL *) VehicleSensMakeDeliveryPnoTbl(ul_did, uc_chg_type); + + if ((pst_pno_tbl->us_dnum) > 0) { + /* When there is a shipping destination PNO registration */ + /* For boundary adjustment */ + uint16_t us_boundary_adj = (u_int16) VEHICLESENS_BIT1 | (u_int16) VEHICLESENS_BIT0; /* #012 */ + /* Vehicle sensor information notification transmission process */ + for (uint32_t i = 0; i < (pst_pno_tbl->us_dnum); i++) { + if (VEHICLESENS_DELIVERY_METHOD_PACKAGE == pst_pno_tbl->st_pno_data[i].uc_method) { + /* When the delivery method is the package method */ + (void) memset(reinterpret_cast(&st_pkg_master), 0, sizeof(SENSOR_PKG_MSG_VSINFO)); + + uint16_t us_index = pst_pno_tbl->st_pno_data[i].us_pkg_start_idx; + uint8_t uc_data_cnt = 0U; + uint16_t us_offset = 0U; + for (uint32_t j = 0; j < SENSOR_PKG_DELIVERY_MAX; j++) { + DID ul_pkg_did = g_stpkgdelivery_tbl_mng.st_pkg_data[us_index].ul_did; /* Get DID */ + st_pkg_master.usOffset[uc_data_cnt] = us_offset; /* Offset setting */ + uc_current_get_method = VehicleSensGetSelectionItemList(ul_pkg_did); /* Data collection way */ + if (VEHICLESENS_GETMETHOD_GPS == uc_current_get_method) { + VehicleSensGetGpsDataMaster(ul_pkg_did, uc_current_get_method, + reinterpret_cast(&st_pkg_master.ucData[us_offset])); + } + else { + VehicleSensGetDataMaster(ul_pkg_did, uc_current_get_method, + reinterpret_cast(&st_pkg_master.ucData[us_offset])); + } + uc_data_cnt++; /* Data count increment */ + if ((us_index == pst_pno_tbl->st_pno_data[i].us_pkg_end_idx) + || (VEHICLESENS_LINK_INDEX_END == g_stpkgdelivery_tbl_mng.st_pkg_data[us_index].usdlvry_idx)) { + st_pkg_master.ucDNum = uc_data_cnt; /* To save the number of data */ + break; + } + else { + /* By creating the following processing contents,Need to obtain an offset value */ + uint16_t us_next_offset = VehicleSensGetDataMasterOffset(ul_pkg_did); /* Next offset calculation */ + /* Boundary adjustment of data size */ + if ((us_next_offset & us_boundary_adj) != 0) { + /* If you need to adjust */ + /* Mask Lower Bit */ + us_next_offset = static_cast(us_next_offset & ~us_boundary_adj); + /* Add numbers */ + us_next_offset = static_cast(us_next_offset + (u_int16) VEHICLESENS_BIT2); + } + us_offset = static_cast(us_offset + us_next_offset); + /* Get next index */ + us_index = g_stpkgdelivery_tbl_mng.st_pkg_data[us_index].usdlvry_idx; + } + } + RET_API ret = PosSndMsg(PNO_VEHICLE_SENSOR, pst_pno_tbl->st_pno_data[i].us_pno, + CID_SENSOR_PKG_INFO, (u_int16) sizeof(SENSOR_PKG_MSG_VSINFO), (const void *) &st_pkg_master); + uc_result = SENSLOG_RES_SUCCESS; + if (ret != RET_NORMAL) { + uc_result = SENSLOG_RES_FAIL; + } + SensLogWriteOutputData(SENSLOG_DATA_O_SYS_PKG, 0, pst_pno_tbl->st_pno_data[i].us_pno, + reinterpret_cast(&st_pkg_master), sizeof(SENSOR_PKG_MSG_VSINFO), uc_result); + } + else { + /* When the delivery system is normal */ + /* Acquire the applicable data information from the data master..*/ + if (VEHICLESENS_GETMETHOD_GPS == uc_current_get_method) { + uc_result = VehicleSensDeliveryGPS(ul_did, uc_get_method, uc_current_get_method, i, &cid, &stmaster, + pst_pno_tbl); + } + else if ((VEHICLESENS_GETMETHOD_NAVI == uc_get_method) || // NOLINT(readability/braces) + (VEHICLESENS_GETMETHOD_OTHER == uc_get_method) || (VEHICLESENS_GETMETHOD_INTERNAL == uc_get_method)) { + uc_result = VehicleSensDeliveryOther(ul_did, uc_current_get_method, i, &cid, &stmaster, pst_pno_tbl); + } -#if CONFIG_SENSOR_EXT_VALID /* Initial Sensor Support */ - /* Ignore->MISRA-C++:2008 Rule 5-0-5 */ -// else if ((ul_did == POSHAL_DID_GYRO_FST) || // NOLINT(readability/braces) -// (ul_did == POSHAL_DID_REV_FST) || -// (ul_did == POSHAL_DID_GYRO_TEMP_FST) || -// (ul_did == POSHAL_DID_GSNS_X_FST) || -// (ul_did == POSHAL_DID_GSNS_Y_FST) || -// (ul_did == POSHAL_DID_SPEED_PULSE_FST)) { /* Ignore->MISRA-C++:2008 Rule 5-0-5 */ -// /* Acquire the applicable data information from the data master for the initial sensor..*/ -// uc_result = VehicleSensDeliveryFst(ul_did, uc_get_method, i, pst_pno_tbl); -// } +#if CONFIG_SENSOR_EXT_VALID /* Initial Sensor Support */ + /* Ignore->MISRA-C++:2008 Rule 5-0-5 */ + else if ((ul_did == POSHAL_DID_GYRO_X_FST) || // NOLINT(readability/braces) + (ul_did == POSHAL_DID_GYRO_Y_FST) || // NOLINT(readability/braces) + (ul_did == POSHAL_DID_GYRO_Z_FST) || // NOLINT(readability/braces) + (ul_did == POSHAL_DID_REV_FST) || + (ul_did == POSHAL_DID_GYRO_TEMP_FST) || + (ul_did == POSHAL_DID_GSNS_X_FST) || + (ul_did == POSHAL_DID_GSNS_Y_FST) || + (ul_did == POSHAL_DID_GSNS_Z_FST) || + (ul_did == POSHAL_DID_SPEED_PULSE_FST)) { /* Ignore->MISRA-C++:2008 Rule 5-0-5 */ + /* Acquire the applicable data information from the data master for the initial sensor..*/ + uc_result = VehicleSensDeliveryFst(ul_did, uc_get_method, i, pst_pno_tbl); + } #endif - else if (ul_did == VEHICLE_DID_GYRO_TROUBLE) { // LCOV_EXCL_BR_LINE 6:DID is not used - AGL_ASSERT_NOT_TESTED(); // LCOV_EXCL_LINE 200: test assert -// uc_result = VehicleSensDeliveryGyro(ul_did, uc_current_get_method, i, pst_pno_tbl); // LCOV_EXCL_LINE 8: dead code // NOLINT(whitespace/line_length) - } - else { // NOLINT(readability/braces) - (void)memset(reinterpret_cast(&stmaster), 0x00, sizeof(stmaster)); - VehicleSensGetDataMaster(ul_did, uc_current_get_method, &stmaster); - - /* Call Vehicle Sensor Information Notification Transmission Process.*/ -// ret = VehicleSndMsg(PNO_VEHICLE_SENSOR, -// pst_pno_tbl->st_pno_data[i].us_pno, -// CID_VEHICLESENS_VEHICLE_INFO, -// (u_int16)sizeof(VEHICLESENS_DATA_MASTER), -// (const void *)&stmaster); -// uc_result = SENSLOG_RES_SUCCESS; -// if (ret != RET_NORMAL) { -// uc_result = SENSLOG_RES_FAIL; -// } -// SensLogWriteOutputData(SENSLOG_DATA_O_SYS, -// ul_did, -// pst_pno_tbl->st_pno_data[i].us_pno, -// reinterpret_cast(&(stmaster.uc_data[0])), -// stmaster.us_size, -// uc_result); - } - } + else if (ul_did == VEHICLE_DID_GYRO_TROUBLE) { // LCOV_EXCL_BR_LINE 6:DID is not used + AGL_ASSERT_NOT_TESTED(); // LCOV_EXCL_LINE 200: test assert + uc_result = VehicleSensDeliveryGyro(ul_did, uc_current_get_method, i, pst_pno_tbl); // LCOV_EXCL_LINE 8: dead code // NOLINT(whitespace/line_length) + } + else { // NOLINT(readability/braces) + (void) memset(reinterpret_cast(&stmaster), 0x00, sizeof(stmaster)); + VehicleSensGetDataMaster(ul_did, uc_current_get_method, &stmaster); + + /* Call Vehicle Sensor Information Notification Transmission Process.*/ + RET_API ret = VehicleSndMsg(PNO_VEHICLE_SENSOR, pst_pno_tbl->st_pno_data[i].us_pno, + CID_VEHICLESENS_VEHICLE_INFO, (u_int16) sizeof(VEHICLESENS_DATA_MASTER), (const void *) &stmaster); + uc_result = SENSLOG_RES_SUCCESS; + if (ret != RET_NORMAL) { + uc_result = SENSLOG_RES_FAIL; } + SensLogWriteOutputData(SENSLOG_DATA_O_SYS, ul_did, pst_pno_tbl->st_pno_data[i].us_pno, + reinterpret_cast(&(stmaster.uc_data[0])), stmaster.us_size, uc_result); + } } + } } + } } -//u_int8 VehicleSensFirstDeliverySens(PNO us_pno, DID ul_did, u_int8 uc_get_method, -// VEHICLESENS_DATA_MASTER_FST* stmaster_fst, -// VEHICLESENS_DATA_MASTER_FST* stmaster_fst_temp) { -// RET_API ret = RET_NORMAL; /* API return value */ -// u_int8 uc_result = SENSLOG_RES_SUCCESS; /* Send/Receive result */ -// /* Acquire the applicable data information from the data master for the initial sensor..*/ -// (void)memset(reinterpret_cast(stmaster_fst), 0, sizeof(VEHICLESENS_DATA_MASTER_FST)); -// (void)memset(reinterpret_cast(stmaster_fst_temp), 0, sizeof(VEHICLESENS_DATA_MASTER_FST)); -// VehicleSensGetDataMasterFst(ul_did, uc_get_method, stmaster_fst); -// -// /* Internal debug log output */ -// FRAMEWORKUNIFIEDLOG(ZONE_26, __FUNCTION__, -// "[LOG:POSHAL_DID_GYRO_FST,POSHAL_DID_SPEED_PULSE_FST]"); -// -// if (stmaster_fst->partition_flg == 1) { -// /* When the partitioning flag is enabled,Or exceeds the size that can be sent,Perform split transmission */ -// memcpy(stmaster_fst_temp, stmaster_fst, sizeof(VEHICLESENS_DATA_MASTER_FST)); -// if ((ul_did == POSHAL_DID_GYRO_FST) || /* Ignore->MISRA-C++:2008 Rule 5-0-5 */ -// (ul_did == POSHAL_DID_GSNS_X_FST) || -// (ul_did == POSHAL_DID_GSNS_Y_FST)) { -// /* Internal debug log output */ -// FRAMEWORKUNIFIEDLOG(ZONE_26, __FUNCTION__, -// "[CALL:VehicleSndMsg:INPOSHAL_DID_GYRO_FST Partition]"); -// -// /* 1st session */ -// /* Call Vehicle Sensor Information Notification Transmission Process.*/ -// /* Size of data that can be transmitted in one division(Same size definition used) */ -// stmaster_fst_temp->us_size = LSDRV_FSTSNS_DSIZE_GYRO; -// ret = VehicleSndMsg(PNO_VEHICLE_SENSOR, -// us_pno, -// CID_VEHICLESENS_VEHICLE_INFO, -// /* Data size + data information Ignore->MISRA-C++:2008 Rule 5-0-5 */ -// static_cast(stmaster_fst_temp->us_size + 8), -// (const void *)stmaster_fst_temp); -// uc_result = SENSLOG_RES_SUCCESS; -// if (ret != RET_NORMAL) { -// uc_result = SENSLOG_RES_FAIL; -// } -// SensLogWriteOutputData(SENSLOG_DATA_O_SYS, -// ul_did, -// us_pno, -// reinterpret_cast(&(stmaster_fst_temp->uc_data[0])), -// stmaster_fst_temp->us_size, -// uc_result); -// -// /* Second time */ -// /* Call Vehicle Sensor Information Notification Transmission Process.*/ -// (void)memset(reinterpret_cast(&stmaster_fst_temp->uc_data[0]), -// 0, -// sizeof(u_int8) * VEHICLE_DSIZE_DATA_MASTER_FST); -// /* Size of the data - Transmission size(Same size definition used) Ignore->MISRA-C++:2008 Rule 5-0-5 */ -// stmaster_fst_temp->us_size = static_cast(stmaster_fst->us_size - LSDRV_FSTSNS_DSIZE_GYRO); -// /* Ignore->MISRA-C++:2008 Rule 5-0-5 */ -// memcpy(&stmaster_fst_temp->uc_data[0], -// &stmaster_fst->uc_data[LSDRV_FSTSNS_DSIZE_GYRO], -// stmaster_fst_temp->us_size); -// ret = VehicleSndMsg(PNO_VEHICLE_SENSOR, -// us_pno, -// CID_VEHICLESENS_VEHICLE_INFO, -// /* Data size + data information Ignore->MISRA-C++:2008 Rule 5-0-5 */ -// static_cast(stmaster_fst_temp->us_size + 8), -// (const void *)stmaster_fst_temp); -// uc_result = SENSLOG_RES_SUCCESS; -// if (ret != RET_NORMAL) { -// uc_result = SENSLOG_RES_FAIL; -// } -// SensLogWriteOutputData(SENSLOG_DATA_O_SYS, ul_did, us_pno, -// reinterpret_cast(&(stmaster_fst_temp->uc_data[0])), -// stmaster_fst_temp->us_size, uc_result); -// } else if (ul_did == POSHAL_DID_REV_FST) { /* Ignore->MISRA-C++:2008 Rule 5-0-5 */ -// /* Internal debug log output */ -// FRAMEWORKUNIFIEDLOG(ZONE_26, __FUNCTION__, -// "[CALL:VehicleSndMsg:INPOSHAL_DID_REV_FST Partition]"); -// -// /* 1st session */ -// /* Call Vehicle Sensor Information Notification Transmission Process.*/ -// stmaster_fst_temp->us_size = LSDRV_FSTSNS_DSIZE_REV; /* Size of data that can be transmitted in one division */ -// ret = VehicleSndMsg(PNO_VEHICLE_SENSOR, -// us_pno, -// CID_VEHICLESENS_VEHICLE_INFO, -// /* Data size + data information Ignore->MISRA-C++:2008 Rule 5-0-5 */ -// static_cast(stmaster_fst_temp->us_size + 8), -// (const void *)stmaster_fst_temp); -// uc_result = SENSLOG_RES_SUCCESS; -// if (ret != RET_NORMAL) { -// uc_result = SENSLOG_RES_FAIL; -// } -// SensLogWriteOutputData(SENSLOG_DATA_O_SYS, ul_did, us_pno, -// reinterpret_cast(&(stmaster_fst_temp->uc_data[0])), -// stmaster_fst_temp->us_size, uc_result); -// -// /* Second time */ -// /* Call Vehicle Sensor Information Notification Transmission Process.*/ -// (void)memset(reinterpret_cast(&stmaster_fst_temp->uc_data[0]), -// 0, -// sizeof(u_int8) * VEHICLE_DSIZE_DATA_MASTER_FST); -// /* Size of the data - Transmission size Ignore->MISRA-C++:2008 Rule 5-0-5 */ -// stmaster_fst_temp->us_size = static_cast(stmaster_fst->us_size - LSDRV_FSTSNS_DSIZE_REV); -// /* Ignore->MISRA-C++:2008 Rule 5-0-5 */ -// memcpy(&stmaster_fst_temp->uc_data[0], -// &stmaster_fst->uc_data[LSDRV_FSTSNS_DSIZE_REV], -// stmaster_fst_temp->us_size); -// ret = VehicleSndMsg(PNO_VEHICLE_SENSOR, -// us_pno, -// CID_VEHICLESENS_VEHICLE_INFO, -// /* Data size + data information Ignore->MISRA-C++:2008 Rule 5-0-5 */ -// static_cast(stmaster_fst_temp->us_size + 8), -// (const void *)stmaster_fst_temp); -// uc_result = SENSLOG_RES_SUCCESS; -// if (ret != RET_NORMAL) { -// uc_result = SENSLOG_RES_FAIL; -// } -// SensLogWriteOutputData(SENSLOG_DATA_O_SYS, ul_did, us_pno, -// reinterpret_cast(&(stmaster_fst_temp->uc_data[0])), -// stmaster_fst_temp->us_size, uc_result); -// } else { -// /* Internal debug log output */ -// FRAMEWORKUNIFIEDLOG(ZONE_26, __FUNCTION__, -// "[CALL:Vehicle_SndMsg:POSHAL_DID_SPEED_PULSE_FST Partition]"); -// -// /* 1st session */ -// /* Call Vehicle Sensor Information Notification Transmission Process.*/ -// /* Size of data that can be transmitted in one division(Same size definition used) */ -// stmaster_fst_temp->us_size = LSDRV_FSTSNS_DSIZE_GYRO_TEMP; -// ret = VehicleSndMsg(PNO_VEHICLE_SENSOR, -// us_pno, -// CID_VEHICLESENS_VEHICLE_INFO, -// /* Data size + data information Ignore->MISRA-C++:2008 Rule 5-0-5 */ -// static_cast(stmaster_fst_temp->us_size + 8), -// (const void *)stmaster_fst_temp); -// uc_result = SENSLOG_RES_SUCCESS; -// if (ret != RET_NORMAL) { -// uc_result = SENSLOG_RES_FAIL; -// } -// SensLogWriteOutputData(SENSLOG_DATA_O_SYS, ul_did, us_pno, -// reinterpret_cast(&(stmaster_fst_temp->uc_data[0])), -// stmaster_fst_temp->us_size, uc_result); -// -// /* Second time */ -// /* Call Vehicle Sensor Information Notification Transmission Process.*/ -// (void)memset(reinterpret_cast(&stmaster_fst_temp->uc_data[0]), -// 0, -// sizeof(u_int8) * VEHICLE_DSIZE_DATA_MASTER_FST); -// /* Size of the data - Transmission size(Same size definition used) Ignore->MISRA-C++:2008 Rule 5-0-5 */ -// stmaster_fst_temp->us_size = static_cast(stmaster_fst->us_size - LSDRV_FSTSNS_DSIZE_GYRO_TEMP); -// /* Ignore->MISRA-C++:2008 Rule 5-0-5 */ -// memcpy(&stmaster_fst_temp->uc_data[0], -// &stmaster_fst->uc_data[LSDRV_FSTSNS_DSIZE_GYRO_TEMP], -// stmaster_fst_temp->us_size); -// ret = VehicleSndMsg(PNO_VEHICLE_SENSOR, -// us_pno, -// CID_VEHICLESENS_VEHICLE_INFO, -// /* Data size + data information Ignore->MISRA-C++:2008 Rule 5-0-5 */ -// static_cast(stmaster_fst_temp->us_size + 8), -// (const void *)stmaster_fst_temp); -// uc_result = SENSLOG_RES_SUCCESS; -// if (ret != RET_NORMAL) { -// uc_result = SENSLOG_RES_FAIL; -// } -// SensLogWriteOutputData(SENSLOG_DATA_O_SYS, ul_did, us_pno, -// reinterpret_cast(&(stmaster_fst_temp->uc_data[0])), -// stmaster_fst_temp->us_size, uc_result); -// } -// } else { -// /* Internal debug log output */ -// FRAMEWORKUNIFIEDLOG(ZONE_26, __FUNCTION__, "[CALL:VehicleSndMsg]"); -// -// /* Call Vehicle Sensor Information Notification Transmission Process.*/ -// ret = VehicleSndMsg(PNO_VEHICLE_SENSOR, -// us_pno, -// CID_VEHICLESENS_VEHICLE_INFO, -// /* Data size + data information Ignore->MISRA-C++:2008 Rule 5-0-5 */ -// static_cast(stmaster_fst->us_size + 8), -// (const void *)stmaster_fst); -// uc_result = SENSLOG_RES_SUCCESS; -// if (ret != RET_NORMAL) { -// uc_result = SENSLOG_RES_FAIL; -// } -// SensLogWriteOutputData(SENSLOG_DATA_O_SYS, ul_did, us_pno, -// reinterpret_cast(&(stmaster_fst->uc_data[0])), -// stmaster_fst->us_size, uc_result); -// } -// -// return uc_result; -//} +u_int8 VehicleSensFirstDeliverySens(PNO us_pno, DID ul_did, u_int8 uc_get_method, + VEHICLESENS_DATA_MASTER_FST* stmaster_fst, + VEHICLESENS_DATA_MASTER_FST* stmaster_fst_temp) { + RET_API ret = RET_NORMAL; /* API return value */ + u_int8 uc_result = SENSLOG_RES_SUCCESS; /* Send/Receive result */ + /* Acquire the applicable data information from the data master for the initial sensor..*/ + (void)memset(reinterpret_cast(stmaster_fst), 0, sizeof(VEHICLESENS_DATA_MASTER_FST)); + (void)memset(reinterpret_cast(stmaster_fst_temp), 0, sizeof(VEHICLESENS_DATA_MASTER_FST)); + VehicleSensGetDataMasterFst(ul_did, uc_get_method, stmaster_fst); + + /* Internal debug log output */ + FRAMEWORKUNIFIEDLOG(ZONE_26, __FUNCTION__, + "[LOG:POSHAL_DID_GYRO_FST,POSHAL_DID_SPEED_PULSE_FST]"); + + if (stmaster_fst->partition_flg == 1) { + /* When the partitioning flag is enabled,Or exceeds the size that can be sent,Perform split transmission */ + memcpy(stmaster_fst_temp, stmaster_fst, sizeof(VEHICLESENS_DATA_MASTER_FST)); + if ((ul_did == POSHAL_DID_GYRO_X_FST) || /* Ignore->MISRA-C++:2008 Rule 5-0-5 */ + (ul_did == POSHAL_DID_GYRO_Y_FST) || + (ul_did == POSHAL_DID_GYRO_Z_FST) || + (ul_did == POSHAL_DID_GSNS_X_FST) || + (ul_did == POSHAL_DID_GSNS_Y_FST) || + (ul_did == POSHAL_DID_GSNS_Z_FST)) { + /* Internal debug log output */ + FRAMEWORKUNIFIEDLOG(ZONE_26, __FUNCTION__, + "[CALL:VehicleSndMsg:INPOSHAL_DID_GYRO_FST Partition]"); + + /* 1st session */ + /* Call Vehicle Sensor Information Notification Transmission Process.*/ + /* Size of data that can be transmitted in one division(Same size definition used) */ + stmaster_fst_temp->us_size = LSDRV_FSTSNS_DSIZE_GYRO_X; + ret = VehicleSndMsg(PNO_VEHICLE_SENSOR, + us_pno, + CID_VEHICLESENS_VEHICLE_INFO, + /* Data size + data information Ignore->MISRA-C++:2008 Rule 5-0-5 */ + static_cast(stmaster_fst_temp->us_size + 8), + (const void *)stmaster_fst_temp); + uc_result = SENSLOG_RES_SUCCESS; + if (ret != RET_NORMAL) { + uc_result = SENSLOG_RES_FAIL; + } + SensLogWriteOutputData(SENSLOG_DATA_O_SYS, + ul_did, + us_pno, + reinterpret_cast(&(stmaster_fst_temp->uc_data[0])), + stmaster_fst_temp->us_size, + uc_result); + + /* Second time */ + /* Call Vehicle Sensor Information Notification Transmission Process.*/ + (void)memset(reinterpret_cast(&stmaster_fst_temp->uc_data[0]), + 0, + sizeof(u_int8) * VEHICLE_DSIZE_DATA_MASTER_FST); + /* Size of the data - Transmission size(Same size definition used) Ignore->MISRA-C++:2008 Rule 5-0-5 */ + stmaster_fst_temp->us_size = static_cast(stmaster_fst->us_size - LSDRV_FSTSNS_DSIZE_GYRO_X); + /* Ignore->MISRA-C++:2008 Rule 5-0-5 */ + memcpy(&stmaster_fst_temp->uc_data[0], + &stmaster_fst->uc_data[LSDRV_FSTSNS_DSIZE_GYRO_X], + stmaster_fst_temp->us_size); + ret = VehicleSndMsg(PNO_VEHICLE_SENSOR, + us_pno, + CID_VEHICLESENS_VEHICLE_INFO, + /* Data size + data information Ignore->MISRA-C++:2008 Rule 5-0-5 */ + static_cast(stmaster_fst_temp->us_size + 8), + (const void *)stmaster_fst_temp); + uc_result = SENSLOG_RES_SUCCESS; + if (ret != RET_NORMAL) { + uc_result = SENSLOG_RES_FAIL; + } + SensLogWriteOutputData(SENSLOG_DATA_O_SYS, ul_did, us_pno, + reinterpret_cast(&(stmaster_fst_temp->uc_data[0])), + stmaster_fst_temp->us_size, uc_result); + } else if (ul_did == POSHAL_DID_REV_FST) { /* Ignore->MISRA-C++:2008 Rule 5-0-5 */ + /* Internal debug log output */ + FRAMEWORKUNIFIEDLOG(ZONE_26, __FUNCTION__, + "[CALL:VehicleSndMsg:INPOSHAL_DID_REV_FST Partition]"); + + /* 1st session */ + /* Call Vehicle Sensor Information Notification Transmission Process.*/ + stmaster_fst_temp->us_size = LSDRV_FSTSNS_DSIZE_REV; /* Size of data that can be transmitted in one division */ + ret = VehicleSndMsg(PNO_VEHICLE_SENSOR, + us_pno, + CID_VEHICLESENS_VEHICLE_INFO, + /* Data size + data information Ignore->MISRA-C++:2008 Rule 5-0-5 */ + static_cast(stmaster_fst_temp->us_size + 8), + (const void *)stmaster_fst_temp); + uc_result = SENSLOG_RES_SUCCESS; + if (ret != RET_NORMAL) { + uc_result = SENSLOG_RES_FAIL; + } + SensLogWriteOutputData(SENSLOG_DATA_O_SYS, ul_did, us_pno, + reinterpret_cast(&(stmaster_fst_temp->uc_data[0])), + stmaster_fst_temp->us_size, uc_result); + + /* Second time */ + /* Call Vehicle Sensor Information Notification Transmission Process.*/ + (void)memset(reinterpret_cast(&stmaster_fst_temp->uc_data[0]), + 0, + sizeof(u_int8) * VEHICLE_DSIZE_DATA_MASTER_FST); + /* Size of the data - Transmission size Ignore->MISRA-C++:2008 Rule 5-0-5 */ + stmaster_fst_temp->us_size = static_cast(stmaster_fst->us_size - LSDRV_FSTSNS_DSIZE_REV); + /* Ignore->MISRA-C++:2008 Rule 5-0-5 */ + memcpy(&stmaster_fst_temp->uc_data[0], + &stmaster_fst->uc_data[LSDRV_FSTSNS_DSIZE_REV], + stmaster_fst_temp->us_size); + ret = VehicleSndMsg(PNO_VEHICLE_SENSOR, + us_pno, + CID_VEHICLESENS_VEHICLE_INFO, + /* Data size + data information Ignore->MISRA-C++:2008 Rule 5-0-5 */ + static_cast(stmaster_fst_temp->us_size + 8), + (const void *)stmaster_fst_temp); + uc_result = SENSLOG_RES_SUCCESS; + if (ret != RET_NORMAL) { + uc_result = SENSLOG_RES_FAIL; + } + SensLogWriteOutputData(SENSLOG_DATA_O_SYS, ul_did, us_pno, + reinterpret_cast(&(stmaster_fst_temp->uc_data[0])), + stmaster_fst_temp->us_size, uc_result); + } else { + /* Internal debug log output */ + FRAMEWORKUNIFIEDLOG(ZONE_26, __FUNCTION__, + "[CALL:Vehicle_SndMsg:POSHAL_DID_SPEED_PULSE_FST Partition]"); + + /* 1st session */ + /* Call Vehicle Sensor Information Notification Transmission Process.*/ + /* Size of data that can be transmitted in one division(Same size definition used) */ + stmaster_fst_temp->us_size = LSDRV_FSTSNS_DSIZE_GYRO_TEMP; + ret = VehicleSndMsg(PNO_VEHICLE_SENSOR, + us_pno, + CID_VEHICLESENS_VEHICLE_INFO, + /* Data size + data information Ignore->MISRA-C++:2008 Rule 5-0-5 */ + static_cast(stmaster_fst_temp->us_size + 8), + (const void *)stmaster_fst_temp); + uc_result = SENSLOG_RES_SUCCESS; + if (ret != RET_NORMAL) { + uc_result = SENSLOG_RES_FAIL; + } + SensLogWriteOutputData(SENSLOG_DATA_O_SYS, ul_did, us_pno, + reinterpret_cast(&(stmaster_fst_temp->uc_data[0])), + stmaster_fst_temp->us_size, uc_result); + + /* Second time */ + /* Call Vehicle Sensor Information Notification Transmission Process.*/ + (void)memset(reinterpret_cast(&stmaster_fst_temp->uc_data[0]), + 0, + sizeof(u_int8) * VEHICLE_DSIZE_DATA_MASTER_FST); + /* Size of the data - Transmission size(Same size definition used) Ignore->MISRA-C++:2008 Rule 5-0-5 */ + stmaster_fst_temp->us_size = static_cast(stmaster_fst->us_size - LSDRV_FSTSNS_DSIZE_GYRO_TEMP); + /* Ignore->MISRA-C++:2008 Rule 5-0-5 */ + memcpy(&stmaster_fst_temp->uc_data[0], + &stmaster_fst->uc_data[LSDRV_FSTSNS_DSIZE_GYRO_TEMP], + stmaster_fst_temp->us_size); + ret = VehicleSndMsg(PNO_VEHICLE_SENSOR, + us_pno, + CID_VEHICLESENS_VEHICLE_INFO, + /* Data size + data information Ignore->MISRA-C++:2008 Rule 5-0-5 */ + static_cast(stmaster_fst_temp->us_size + 8), + (const void *)stmaster_fst_temp); + uc_result = SENSLOG_RES_SUCCESS; + if (ret != RET_NORMAL) { + uc_result = SENSLOG_RES_FAIL; + } + SensLogWriteOutputData(SENSLOG_DATA_O_SYS, ul_did, us_pno, + reinterpret_cast(&(stmaster_fst_temp->uc_data[0])), + stmaster_fst_temp->us_size, uc_result); + } + } else { + /* Internal debug log output */ + FRAMEWORKUNIFIEDLOG(ZONE_26, __FUNCTION__, "[CALL:VehicleSndMsg]"); + + /* Call Vehicle Sensor Information Notification Transmission Process.*/ + ret = VehicleSndMsg(PNO_VEHICLE_SENSOR, + us_pno, + CID_VEHICLESENS_VEHICLE_INFO, + /* Data size + data information Ignore->MISRA-C++:2008 Rule 5-0-5 */ + static_cast(stmaster_fst->us_size + 8), + (const void *)stmaster_fst); + uc_result = SENSLOG_RES_SUCCESS; + if (ret != RET_NORMAL) { + uc_result = SENSLOG_RES_FAIL; + } + SensLogWriteOutputData(SENSLOG_DATA_O_SYS, ul_did, us_pno, + reinterpret_cast(&(stmaster_fst->uc_data[0])), + stmaster_fst->us_size, uc_result); + } + + return uc_result; +} u_int8 VehicleSensFirstDeliveryOther(PNO us_pno, DID ul_did, u_int8 uc_get_method, u_int32* cid, @@ -1403,79 +1389,79 @@ void VehicleSensFirstDelivery(PNO us_pno, DID ul_did) { uc_get_method = VehicleSensGetSelectionItemList(ul_did); if (VEHICLESENS_GETMETHOD_GPS == uc_get_method) { -// SENSOR_MSG_GPSDATA_DAT gps_master; + SENSOR_MSG_GPSDATA_DAT gps_master; VEHICLESENS_DELIVERY_FORMAT delivery_data; u_int16 length; u_int16 senslog_len; -// VehicleSensGetGpsDataMaster(ul_did, uc_get_method, &gps_master); - -// if (ul_did == POSHAL_DID_GPS_TIME) { -// /* GPS time,Because there is no header in the message to be delivered,Padding deliveryData headers */ -// (void)memcpy(reinterpret_cast(&delivery_data), -// reinterpret_cast(&gps_master.uc_data[0]), gps_master.us_size); -// length = gps_master.us_size; -// senslog_len = length; -// cid = CID_VEHICLESENS_VEHICLE_INFO_GPS_TIME; -// } else if (ul_did == VEHICLE_DID_LOCATION_LONLAT) { -// pLonLatMsg = reinterpret_cast(&delivery_data); -// /* Acquire the applicable data information from the data master..*/ -// VehicleSensGetDataMaster(ul_did, uc_get_method, &stmaster); -// (void)memcpy(reinterpret_cast(&(pLonLatMsg->data)), -// reinterpret_cast(&(stmaster.uc_data[0])), stmaster.us_size); -// length = (u_int16)stmaster.us_size; -// senslog_len = length; -// cid = CID_POSIF_REGISTER_LISTENER_LONLAT; -// } else if (ul_did == VEHICLE_DID_LOCATION_ALTITUDE) { -// pAltitudeMsg = reinterpret_cast(&delivery_data); -// /* Acquire the applicable data information from the data master..*/ -// VehicleSensGetDataMaster(ul_did, uc_get_method, &stmaster); -// (void)memcpy(reinterpret_cast(&(pAltitudeMsg->data)), -// reinterpret_cast(&stmaster.uc_data[0]), stmaster.us_size); -// length = (u_int16)stmaster.us_size; -// senslog_len = length; -// cid = CID_POSIF_REGISTER_LISTENER_ALTITUDE; -// } else if (ul_did == VEHICLE_DID_MOTION_HEADING) { -// pHeadingMsg = reinterpret_cast(&delivery_data); -// /* Acquire the applicable data information from the data master..*/ -// VehicleSensGetDataMaster(ul_did, uc_get_method, &stmaster); -// (void)memcpy(reinterpret_cast(&(pHeadingMsg->data)), -// reinterpret_cast(&stmaster.uc_data[0]), stmaster.us_size); -// length = (u_int16)stmaster.us_size; -// senslog_len = length; -// cid = CID_POSIF_REGISTER_LISTENER_HEADING; -// } else { -// -// delivery_data.header.did = gps_master.ul_did; -// delivery_data.header.size = gps_master.us_size; -// delivery_data.header.rcv_flag = gps_master.uc_rcv_flag; -// delivery_data.header.sensor_cnt = gps_master.uc_sns_cnt; -// (void)memcpy(reinterpret_cast(&delivery_data.data[0]), -// reinterpret_cast(&gps_master.uc_data[0]), -// (size_t)delivery_data.header.size); -// -// length = static_cast((u_int16)sizeof(delivery_data.header) + delivery_data.header.size); -// senslog_len = delivery_data.header.size; -// cid = CID_VEHICLESENS_VEHICLE_INFO; -// } + VehicleSensGetGpsDataMaster(ul_did, uc_get_method, &gps_master); + + if (ul_did == POSHAL_DID_GPS_TIME) { + /* GPS time,Because there is no header in the message to be delivered,Padding deliveryData headers */ + (void)memcpy(reinterpret_cast(&delivery_data), + reinterpret_cast(&gps_master.uc_data[0]), gps_master.us_size); + length = gps_master.us_size; + senslog_len = length; + cid = CID_VEHICLESENS_VEHICLE_INFO_GPS_TIME; + } else if (ul_did == VEHICLE_DID_LOCATION_LONLAT) { + pLonLatMsg = reinterpret_cast(&delivery_data); + /* Acquire the applicable data information from the data master..*/ + VehicleSensGetDataMaster(ul_did, uc_get_method, &stmaster); + (void)memcpy(reinterpret_cast(&(pLonLatMsg->data)), + reinterpret_cast(&(stmaster.uc_data[0])), stmaster.us_size); + length = (u_int16)stmaster.us_size; + senslog_len = length; + cid = CID_POSIF_REGISTER_LISTENER_LONLAT; + } else if (ul_did == VEHICLE_DID_LOCATION_ALTITUDE) { + pAltitudeMsg = reinterpret_cast(&delivery_data); + /* Acquire the applicable data information from the data master..*/ + VehicleSensGetDataMaster(ul_did, uc_get_method, &stmaster); + (void)memcpy(reinterpret_cast(&(pAltitudeMsg->data)), + reinterpret_cast(&stmaster.uc_data[0]), stmaster.us_size); + length = (u_int16)stmaster.us_size; + senslog_len = length; + cid = CID_POSIF_REGISTER_LISTENER_ALTITUDE; + } else if (ul_did == VEHICLE_DID_MOTION_HEADING) { + pHeadingMsg = reinterpret_cast(&delivery_data); + /* Acquire the applicable data information from the data master..*/ + VehicleSensGetDataMaster(ul_did, uc_get_method, &stmaster); + (void)memcpy(reinterpret_cast(&(pHeadingMsg->data)), + reinterpret_cast(&stmaster.uc_data[0]), stmaster.us_size); + length = (u_int16)stmaster.us_size; + senslog_len = length; + cid = CID_POSIF_REGISTER_LISTENER_HEADING; + } else { + + delivery_data.header.did = gps_master.ul_did; + delivery_data.header.size = gps_master.us_size; + delivery_data.header.rcv_flag = gps_master.uc_rcv_flag; + delivery_data.header.sensor_cnt = gps_master.uc_sns_cnt; + (void)memcpy(reinterpret_cast(&delivery_data.data[0]), + reinterpret_cast(&gps_master.uc_data[0]), + (size_t)delivery_data.header.size); + + length = static_cast((u_int16)sizeof(delivery_data.header) + delivery_data.header.size); + senslog_len = delivery_data.header.size; + cid = CID_VEHICLESENS_VEHICLE_INFO; + } /* Call Vehicle Sensor Information Notification Transmission Process.*/ -// ret = VehicleSndMsg(PNO_VEHICLE_SENSOR, -// us_pno, -// static_cast(cid), -// length, -// (const void *)&delivery_data); -// uc_result = SENSLOG_RES_SUCCESS; -// if (ret != RET_NORMAL) { -// uc_result = SENSLOG_RES_FAIL; -// } -// if (cid != CID_VEHICLESENS_VEHICLE_INFO) { -// SensLogWriteOutputData(SENSLOG_DATA_O_UNSPECIFIED, ul_did, us_pno, -// reinterpret_cast(&delivery_data), senslog_len, uc_result); -// } else { -// SensLogWriteOutputData(SENSLOG_DATA_O_UNSPECIFIED, ul_did, us_pno, -// reinterpret_cast(&(delivery_data.data[0])), senslog_len, uc_result); -// } + ret = VehicleSndMsg(PNO_VEHICLE_SENSOR, + us_pno, + static_cast(cid), + length, + (const void *)&delivery_data); + uc_result = SENSLOG_RES_SUCCESS; + if (ret != RET_NORMAL) { + uc_result = SENSLOG_RES_FAIL; + } + if (cid != CID_VEHICLESENS_VEHICLE_INFO) { + SensLogWriteOutputData(SENSLOG_DATA_O_UNSPECIFIED, ul_did, us_pno, + reinterpret_cast(&delivery_data), senslog_len, uc_result); + } else { + SensLogWriteOutputData(SENSLOG_DATA_O_UNSPECIFIED, ul_did, us_pno, + reinterpret_cast(&(delivery_data.data[0])), senslog_len, uc_result); + } } else if ((VEHICLESENS_GETMETHOD_NAVI == uc_get_method) || // NOLINT(readability/braces) (VEHICLESENS_GETMETHOD_OTHER == uc_get_method) || @@ -1484,15 +1470,18 @@ void VehicleSensFirstDelivery(PNO us_pno, DID ul_did) { } #if CONFIG_SENSOR_EXT_VALID /* Initial Sensor Support */ /* Ignore->MISRA-C++:2008 Rule 5-0-5 */ -// else if ((ul_did == POSHAL_DID_GYRO_FST) || // NOLINT(readability/braces) -// (ul_did == POSHAL_DID_REV_FST) || -// (ul_did == POSHAL_DID_GYRO_TEMP_FST) || -// (ul_did == POSHAL_DID_GSNS_X_FST) || -// (ul_did == POSHAL_DID_GSNS_Y_FST) || -// (ul_did == POSHAL_DID_SPEED_PULSE_FST)) { /* Ignore->MISRA-C++:2008 Rule 5-0-5 */ -// /* Acquire the applicable data information from the data master for the initial sensor..*/ -// uc_result = VehicleSensFirstDeliverySens(us_pno, ul_did, uc_get_method, &stMasterFst, &stMasterFst_temp); -// } + else if ((ul_did == POSHAL_DID_GYRO_X_FST) || // NOLINT(readability/braces) + (ul_did == POSHAL_DID_GYRO_Y_FST) || // NOLINT(readability/braces) + (ul_did == POSHAL_DID_GYRO_Z_FST) || // NOLINT(readability/braces) + (ul_did == POSHAL_DID_REV_FST) || + (ul_did == POSHAL_DID_GYRO_TEMP_FST) || + (ul_did == POSHAL_DID_GSNS_X_FST) || + (ul_did == POSHAL_DID_GSNS_Y_FST) || + (ul_did == POSHAL_DID_GSNS_Z_FST) || + (ul_did == POSHAL_DID_SPEED_PULSE_FST)) { /* Ignore->MISRA-C++:2008 Rule 5-0-5 */ + /* Acquire the applicable data information from the data master for the initial sensor..*/ + uc_result = VehicleSensFirstDeliverySens(us_pno, ul_did, uc_get_method, &stMasterFst, &stMasterFst_temp); + } #endif else if (ul_did == VEHICLE_DID_GYRO_TROUBLE) { // LCOV_EXCL_BR_LINE 8 : DID in not used // LCOV_EXCL_START 8: DID is not used @@ -1598,9 +1587,9 @@ void VehicleSensFirstPkgDelivery(const SENSOR_MSG_DELIVERY_ENTRY_DAT *pst_data) /* Data collection way */ uc_get_method = VehicleSensGetSelectionItemList(ul_pkg_did); if (VEHICLESENS_GETMETHOD_GPS == uc_get_method) { -// VehicleSensGetGpsDataMaster(ul_pkg_did, -// uc_get_method, -// reinterpret_cast(&st_pkg_master.ucData[us_offset])); + VehicleSensGetGpsDataMaster(ul_pkg_did, + uc_get_method, + reinterpret_cast(&st_pkg_master.ucData[us_offset])); } else { VehicleSensGetDataMaster(ul_pkg_did, uc_get_method, @@ -1652,12 +1641,12 @@ void VehicleSensFirstPkgDeliveryExt(const SENSOR_MSG_DELIVERY_ENTRY_DAT *pst_dat u_int16 usOffset = 0; /* For offset calculation */ u_int16 usNextOffset; /* Next offset value */ u_int16 usBoundaryAdj; /* For boundary adjustment */ - static VEHICLESENS_DATA_MASTER_EXT stExtDataTemp[8];/* Extended data master temporary storage area */ - u_int16 usDataCnt[8] = {0}; /* For storing the number of data items */ + static VEHICLESENS_DATA_MASTER_EXT stExtDataTemp[11];/* Extended data master temporary storage area */ + u_int16 usDataCnt[11] = {0}; /* For storing the number of data items */ u_int8 ucDivideCnt; /* Total number of partitions */ u_int8 ucDivide100Cnt = 0; /* Total number of 100 partitions */ u_int8 ucDivideSendCnt; /* Number of divided transmissions */ - u_int16 usDivideSendSize[8] = {0}; /* Split Send Size */ + u_int16 usDivideSendSize[11] = {0}; /* Split Send Size */ u_int16 ucDivideSendPoint; /* Split transmission data acquisition position */ u_int8 ucDataBreak; /* Storage area of all data undelivered flag */ RET_API ret = RET_NORMAL; /* API return value */ @@ -1678,45 +1667,49 @@ void VehicleSensFirstPkgDeliveryExt(const SENSOR_MSG_DELIVERY_ENTRY_DAT *pst_dat "VEHICLESENS_DELIVERYCTRL: VehicleSensGetSelectionItemList error :%d\r\n", ucGetMethod); } -// if ((ulPkgDid == POSHAL_DID_GYRO_EXT) || /* Ignore->MISRA-C++:2008 Rule 5-0-5 */ -// (ulPkgDid == POSHAL_DID_GSNS_X) || /* Ignore->MISRA-C++:2008 Rule 2-7-2 */ -// (ulPkgDid == POSHAL_DID_GSNS_Y) || /* Ignore->MISRA-C++:2008 Rule 2-7-2 */ -// (ulPkgDid == POSHAL_DID_SPEED_PULSE) || /* Ignore->MISRA-C++:2008 Rule 5-0-5 */ -// (ulPkgDid == POSHAL_DID_REV) || -// (ulPkgDid == POSHAL_DID_GYRO_TEMP) || -// (ulPkgDid == POSHAL_DID_PULSE_TIME) || -// (ulPkgDid == POSHAL_DID_SNS_COUNTER)) { /* Ignore->MISRA-C++:2008 Rule 5-0-5 */ -// /* Store in the extended data master information buffer */ -// VehicleSensGetDataMasterExt(ulPkgDid, ucGetMethod, &stExtDataTemp[i]); -// /* Obtain the number of data items */ -// if ((ulPkgDid == POSHAL_DID_SNS_COUNTER) || -// (ulPkgDid == POSHAL_DID_REV)) { -// usDataCnt[i] = stExtDataTemp[i].us_size; /* 1data 1byte */ -// /* Store the transmission size for 10 items */ -// usDivideSendSize[i] = 10; -// } else if (ulPkgDid == POSHAL_DID_GYRO_TEMP) { -// usDataCnt[i] = stExtDataTemp[i].us_size / 2; /* 1data 2byte */ -// /* Store the transmission size for 10 items */ -// usDivideSendSize[i] = 20; -// } -// else if (ulPkgDid == POSHAL_DID_PULSE_TIME) { // NOLINT(readability/braces) -// usDataCnt[i] = stExtDataTemp[i].us_size / 132; /* 1data 132byte */ -// /* Store the transmission size for 10 items */ -// usDivideSendSize[i] = 1320; -// } -// else { // NOLINT(readability/braces) -// usDataCnt[i] = stExtDataTemp[i].us_size / 2; /* 1data 2byte Ignore->MISRA-C++:2008 Rule 5-0-5 */ -// /* Store the transmission size for 100 items */ -// usDivideSendSize[i] = 200; -// -// // divide cnt is 100 -// if (((usDataCnt[i] % VEHICLESENS_PKG_EXT_SEND_MAX_10DATA) > 0) || (usDataCnt[i] == 0)) { -// ucDivide100Cnt = static_cast((usDataCnt[i] / VEHICLESENS_PKG_EXT_SEND_MAX_10DATA) + 1); -// } else { -// ucDivide100Cnt = static_cast(usDataCnt[i] / VEHICLESENS_PKG_EXT_SEND_MAX_10DATA); -// } -// } -// } + if ((ulPkgDid == POSHAL_DID_GYRO_EXT) || + (ulPkgDid == POSHAL_DID_GYRO_X) || + (ulPkgDid == POSHAL_DID_GYRO_Y) || + (ulPkgDid == POSHAL_DID_GYRO_Z) || + (ulPkgDid == POSHAL_DID_GSNS_X) || + (ulPkgDid == POSHAL_DID_GSNS_Y) || + (ulPkgDid == POSHAL_DID_GSNS_Z) || + (ulPkgDid == POSHAL_DID_SPEED_PULSE) || + (ulPkgDid == POSHAL_DID_REV) || + (ulPkgDid == POSHAL_DID_GYRO_TEMP) || + (ulPkgDid == POSHAL_DID_PULSE_TIME) || + (ulPkgDid == POSHAL_DID_SNS_COUNTER)) { + /* Store in the extended data master information buffer */ + VehicleSensGetDataMasterExt(ulPkgDid, ucGetMethod, &stExtDataTemp[i]); + /* Obtain the number of data items */ + if ((ulPkgDid == POSHAL_DID_SNS_COUNTER) || + (ulPkgDid == POSHAL_DID_REV)) { + usDataCnt[i] = stExtDataTemp[i].us_size; /* 1data 1byte */ + /* Store the transmission size for 10 items */ + usDivideSendSize[i] = 10; + } else if (ulPkgDid == POSHAL_DID_GYRO_TEMP) { + usDataCnt[i] = stExtDataTemp[i].us_size / 2; /* 1data 2byte */ + /* Store the transmission size for 10 items */ + usDivideSendSize[i] = 20; + } + else if (ulPkgDid == POSHAL_DID_PULSE_TIME) { // NOLINT(readability/braces) + usDataCnt[i] = stExtDataTemp[i].us_size / 132; /* 1data 132byte */ + /* Store the transmission size for 10 items */ + usDivideSendSize[i] = 1320; + } + else { // NOLINT(readability/braces) + usDataCnt[i] = stExtDataTemp[i].us_size / 2; /* 1data 2byte Ignore->MISRA-C++:2008 Rule 5-0-5 */ + /* Store the transmission size for 100 items */ + usDivideSendSize[i] = 200; + + // divide cnt is 100 + if (((usDataCnt[i] % VEHICLESENS_PKG_EXT_SEND_MAX_10DATA) > 0) || (usDataCnt[i] == 0)) { + ucDivide100Cnt = static_cast((usDataCnt[i] / VEHICLESENS_PKG_EXT_SEND_MAX_10DATA) + 1); + } else { + ucDivide100Cnt = static_cast(usDataCnt[i] / VEHICLESENS_PKG_EXT_SEND_MAX_10DATA); + } + } + } } /* All-data undelivered flag holding Ignore->MISRA-C ++: 2008 Rule 5-0-5 */ ucDataBreak = static_cast(gstPkgTempExt.data_break); @@ -1746,80 +1739,80 @@ void VehicleSensFirstPkgDeliveryExt(const SENSOR_MSG_DELIVERY_ENTRY_DAT *pst_dat stPkgMaster.usOffset[i] = usOffset; /* Offset setting */ /* copy Data ID of extended data master structure,Size of the data,Receive flag,Reserved */ memcpy(reinterpret_cast(&stPkgMaster.ucData[usOffset]), - reinterpret_cast(&stExtDataTemp[i]), 8); -// if ((ulPkgDid == POSHAL_DID_SNS_COUNTER) || -// (ulPkgDid == POSHAL_DID_REV) || -// (ulPkgDid == POSHAL_DID_PULSE_TIME) || -// (ulPkgDid == POSHAL_DID_GYRO_TEMP)) { -// if (usDataCnt[i] > VEHICLESENS_PKG_EXT_SEND_MAX) { /* Ignore->MISRA-C++:2008 Rule 5-0-5 */ -// /* Calculate the data acquisition position */ -// /* Ignore->MISRA-C++:2008 Rule 5-0-5 */ -// ucDivideSendPoint = static_cast((u_int16)ucDivideSendCnt * usDivideSendSize[i]); -// /* Update the data size*/ -// /* Ignore->MISRA-C++:2008 Rule 5-0-5 */ -// stPkgMaster.ucData[usOffset + 4] = (u_int8)usDivideSendSize[i]; -// /* Ignore->MISRA-C++:2008 Rule 5-0-5 */ -// stPkgMaster.ucData[usOffset + 5] = (u_int8)(usDivideSendSize[i] >> 8); -// /* Create 10 divided transmission data of sensor counters of extended data master structure */ -// memcpy(reinterpret_cast(&stPkgMaster.ucData[usOffset + 8]), -// reinterpret_cast(&stExtDataTemp[i].uc_data[ucDivideSendPoint]), -// usDivideSendSize[i]); /* Ignore->MISRA-C++:2008 Rule 5-0-5 */ -// /* Subtract the number of created transmission data */ -// /* Ignore->MISRA-C++:2008 Rule 5-0-5 */ -// usDataCnt[i] = static_cast(usDataCnt[i] - VEHICLESENS_PKG_EXT_SEND_MAX); -// } else { -// /* Calculate the data acquisition position */ -// /* Ignore->MISRA-C++:2008 Rule 5-0-5 */ -// ucDivideSendPoint = static_cast((u_int16)ucDivideSendCnt * usDivideSendSize[i]); -// /* Update the data size*/ -// /* Ignore->MISRA-C++:2008 Rule 5-0-5 */ -// stPkgMaster.ucData[usOffset + 4] = (u_int8)(stExtDataTemp[i].us_size - (u_int16)ucDivideSendPoint); -// /* Ignore->MISRA-C++:2008 Rule 5-0-5 Ignore->MISRA-C++:2008 Rule 5-0-21 */ -// stPkgMaster.ucData[usOffset + 5] = \ -// (u_int8)((stExtDataTemp[i].us_size - (u_int16)ucDivideSendPoint) >> 8); -// /* Create the remaining divided send data of sensor counter of extended data master structure */ -// memcpy(reinterpret_cast(&stPkgMaster.ucData[usOffset + 8]), -// reinterpret_cast(&stExtDataTemp[i].uc_data[ucDivideSendPoint]), -// stExtDataTemp[i].us_size - ucDivideSendPoint); /* Ignore->MISRA-C++:2008 Rule 5-0-5 */ -// /* Since all buffers have been created, the number of data is set to 0. */ -// usDataCnt[i] = 0; -// } -// } else { -// if (usDataCnt[i] > VEHICLESENS_PKG_EXT_SEND_MAX_10DATA) { /* Ignore->MISRA-C++:2008 Rule 5-0-5 */ -// /* Calculate the data acquisition position */ -// /* Ignore->MISRA-C++:2008 Rule 5-0-5 */ -// ucDivideSendPoint = static_cast((u_int16)ucDivideSendCnt * usDivideSendSize[i]); -// /* Update the data size*/ -// /* Ignore->MISRA-C++:2008 Rule 5-0-5 */ -// stPkgMaster.ucData[usOffset + 4] = (u_int8)usDivideSendSize[i]; -// /* Ignore->MISRA-C++:2008 Rule 5-0-5 */ -// stPkgMaster.ucData[usOffset + 5] = (u_int8)(usDivideSendSize[i] >> 8); -// /* Create 100 divided transmission data of vehicle sensor data of extended data master structure */ -// memcpy(reinterpret_cast(&stPkgMaster.ucData[usOffset + 8]), -// reinterpret_cast(&stExtDataTemp[i].uc_data[ucDivideSendPoint]), -// usDivideSendSize[i]); /* Ignore->MISRA-C++:2008 Rule 5-0-5 */ -// /* Subtract the number of created transmission data */ -// /* Ignore->MISRA-C++:2008 Rule 5-0-5 */ -// usDataCnt[i] = static_cast(usDataCnt[i] - VEHICLESENS_PKG_EXT_SEND_MAX_10DATA); -// } else { -// /* Calculate the data acquisition position */ -// /* Ignore->MISRA-C++:2008 Rule 5-0-5 */ -// ucDivideSendPoint = static_cast((u_int16)ucDivideSendCnt * usDivideSendSize[i]); -// /* Update the data size*/ -// /* Ignore->MISRA-C++:2008 Rule 5-0-5 */ -// stPkgMaster.ucData[usOffset + 4] = \ -// (u_int8)(stExtDataTemp[i].us_size - (u_int16)ucDivideSendPoint); -// /* Ignore->MISRA-C++:2008 Rule 5-0-5 Ignore->MISRA-C++:2008 Rule 5-0-21 */ -// stPkgMaster.ucData[usOffset + 5] = \ -// (u_int8)((stExtDataTemp[i].us_size - (u_int16)ucDivideSendPoint) >> 8); -// /* Create the remaining divided transmission data of the vehicle sensor data of the extended data master structure. */ -// memcpy(reinterpret_cast(&stPkgMaster.ucData[usOffset + 8]), -// reinterpret_cast(&stExtDataTemp[i].uc_data[ucDivideSendPoint]), -// stExtDataTemp[i].us_size - ucDivideSendPoint); /* Ignore->MISRA-C++:2008 Rule 5-0-5 */ -// /* Since all buffers have been created, the number of data is set to 0. */ -// usDataCnt[i] = 0; -// } -// } + reinterpret_cast(&stExtDataTemp[i]), 11); + if ((ulPkgDid == POSHAL_DID_SNS_COUNTER) || + (ulPkgDid == POSHAL_DID_REV) || + (ulPkgDid == POSHAL_DID_PULSE_TIME) || + (ulPkgDid == POSHAL_DID_GYRO_TEMP)) { + if (usDataCnt[i] > VEHICLESENS_PKG_EXT_SEND_MAX) { /* Ignore->MISRA-C++:2008 Rule 5-0-5 */ + /* Calculate the data acquisition position */ + /* Ignore->MISRA-C++:2008 Rule 5-0-5 */ + ucDivideSendPoint = static_cast((u_int16)ucDivideSendCnt * usDivideSendSize[i]); + /* Update the data size*/ + /* Ignore->MISRA-C++:2008 Rule 5-0-5 */ + stPkgMaster.ucData[usOffset + 4] = (u_int8)usDivideSendSize[i]; + /* Ignore->MISRA-C++:2008 Rule 5-0-5 */ + stPkgMaster.ucData[usOffset + 5] = (u_int8)(usDivideSendSize[i] >> 8); + /* Create 10 divided transmission data of sensor counters of extended data master structure */ + memcpy(reinterpret_cast(&stPkgMaster.ucData[usOffset + 8]), + reinterpret_cast(&stExtDataTemp[i].uc_data[ucDivideSendPoint]), + usDivideSendSize[i]); /* Ignore->MISRA-C++:2008 Rule 5-0-5 */ + /* Subtract the number of created transmission data */ + /* Ignore->MISRA-C++:2008 Rule 5-0-5 */ + usDataCnt[i] = static_cast(usDataCnt[i] - VEHICLESENS_PKG_EXT_SEND_MAX); + } else { + /* Calculate the data acquisition position */ + /* Ignore->MISRA-C++:2008 Rule 5-0-5 */ + ucDivideSendPoint = static_cast((u_int16)ucDivideSendCnt * usDivideSendSize[i]); + /* Update the data size*/ + /* Ignore->MISRA-C++:2008 Rule 5-0-5 */ + stPkgMaster.ucData[usOffset + 4] = (u_int8)(stExtDataTemp[i].us_size - (u_int16)ucDivideSendPoint); + /* Ignore->MISRA-C++:2008 Rule 5-0-5 Ignore->MISRA-C++:2008 Rule 5-0-21 */ + stPkgMaster.ucData[usOffset + 5] = \ + (u_int8)((stExtDataTemp[i].us_size - (u_int16)ucDivideSendPoint) >> 8); + /* Create the remaining divided send data of sensor counter of extended data master structure */ + memcpy(reinterpret_cast(&stPkgMaster.ucData[usOffset + 8]), + reinterpret_cast(&stExtDataTemp[i].uc_data[ucDivideSendPoint]), + stExtDataTemp[i].us_size - ucDivideSendPoint); /* Ignore->MISRA-C++:2008 Rule 5-0-5 */ + /* Since all buffers have been created, the number of data is set to 0. */ + usDataCnt[i] = 0; + } + } else { + if (usDataCnt[i] > VEHICLESENS_PKG_EXT_SEND_MAX_10DATA) { /* Ignore->MISRA-C++:2008 Rule 5-0-5 */ + /* Calculate the data acquisition position */ + /* Ignore->MISRA-C++:2008 Rule 5-0-5 */ + ucDivideSendPoint = static_cast((u_int16)ucDivideSendCnt * usDivideSendSize[i]); + /* Update the data size*/ + /* Ignore->MISRA-C++:2008 Rule 5-0-5 */ + stPkgMaster.ucData[usOffset + 4] = (u_int8)usDivideSendSize[i]; + /* Ignore->MISRA-C++:2008 Rule 5-0-5 */ + stPkgMaster.ucData[usOffset + 5] = (u_int8)(usDivideSendSize[i] >> 8); + /* Create 100 divided transmission data of vehicle sensor data of extended data master structure */ + memcpy(reinterpret_cast(&stPkgMaster.ucData[usOffset + 8]), + reinterpret_cast(&stExtDataTemp[i].uc_data[ucDivideSendPoint]), + usDivideSendSize[i]); /* Ignore->MISRA-C++:2008 Rule 5-0-5 */ + /* Subtract the number of created transmission data */ + /* Ignore->MISRA-C++:2008 Rule 5-0-5 */ + usDataCnt[i] = static_cast(usDataCnt[i] - VEHICLESENS_PKG_EXT_SEND_MAX_10DATA); + } else { + /* Calculate the data acquisition position */ + /* Ignore->MISRA-C++:2008 Rule 5-0-5 */ + ucDivideSendPoint = static_cast((u_int16)ucDivideSendCnt * usDivideSendSize[i]); + /* Update the data size*/ + /* Ignore->MISRA-C++:2008 Rule 5-0-5 */ + stPkgMaster.ucData[usOffset + 4] = \ + (u_int8)(stExtDataTemp[i].us_size - (u_int16)ucDivideSendPoint); + /* Ignore->MISRA-C++:2008 Rule 5-0-5 Ignore->MISRA-C++:2008 Rule 5-0-21 */ + stPkgMaster.ucData[usOffset + 5] = \ + (u_int8)((stExtDataTemp[i].us_size - (u_int16)ucDivideSendPoint) >> 8); + /* Create the remaining divided transmission data of the vehicle sensor data of the extended data master structure. */ + memcpy(reinterpret_cast(&stPkgMaster.ucData[usOffset + 8]), + reinterpret_cast(&stExtDataTemp[i].uc_data[ucDivideSendPoint]), + stExtDataTemp[i].us_size - ucDivideSendPoint); /* Ignore->MISRA-C++:2008 Rule 5-0-5 */ + /* Since all buffers have been created, the number of data is set to 0. */ + usDataCnt[i] = 0; + } + } /* Next offset calculation */ /* Boundary adjustment of data size */ usNextOffset = VehicleSensGetDataMasterExtOffset(ulPkgDid); diff --git a/positioning/server/src/Sensor/VehicleSens_Did_GPSInterruptFlag.cpp b/positioning/server/src/Sensor/VehicleSens_Did_GPSInterruptFlag.cpp index 53563c8b..eefbc516 100644 --- a/positioning/server/src/Sensor/VehicleSens_Did_GPSInterruptFlag.cpp +++ b/positioning/server/src/Sensor/VehicleSens_Did_GPSInterruptFlag.cpp @@ -1,5 +1,5 @@ /* - * @copyright Copyright (c) 2016-2019 TOYOTA MOTOR CORPORATION. + * @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. @@ -40,7 +40,7 @@ static VEHICLESENS_DATA_MASTER gstGpsInterruptFlag; // NOLINT(readability/n *****************************************************************************/ void VehicleSensInitGpsInterruptFlag(void) { memset(&gstGpsInterruptFlag, 0x00, sizeof(VEHICLESENS_DATA_MASTER)); -// gstGpsInterruptFlag.ul_did = POSHAL_DID_GPS_INTERRUPT_FLAG; + gstGpsInterruptFlag.ul_did = POSHAL_DID_GPS_INTERRUPT_FLAG; gstGpsInterruptFlag.us_size = VEHICLE_DSIZE_GPS_INTERRUPT_FLAG; gstGpsInterruptFlag.uc_data[0] = VEHICLE_DINIT_GPS_INTERRUPT_FLAG; @@ -57,26 +57,26 @@ void VehicleSensInitGpsInterruptFlag(void) { @retval VEHICLESENS_NEQ : With data changes @trace *****************************************************************************/ -//u_int8 VehicleSensSetGpsInterruptFlag(const LSDRV_LSDATA_G *pst_data) { // LCOV_EXCL_START 8: dead code. -// AGL_ASSERT_NOT_TESTED(); // LCOV_EXCL_LINE 200: test assert -// u_int8 uc_ret; -// VEHICLESENS_DATA_MASTER *pst_master; -// -// pst_master = &gstGpsInterruptFlag; -// -// /** Compare data master and received data */ -// uc_ret = VehicleSensmemcmp(pst_master->uc_data, pst_data->uc_data, pst_data->uc_size); -// -// /** Received data is set in the data master. */ -// pst_master->ul_did = pst_data->ul_did; -// pst_master->us_size = pst_data->uc_size; -// pst_master->uc_rcvflag = VEHICLE_RCVFLAG_ON; -// pst_master->uc_snscnt = pst_data->uc_sns_cnt; -// (void)memcpy(reinterpret_cast(pst_master->uc_data), -// (const void *)(pst_data->uc_data), (size_t)(pst_data->uc_size)); -// -// return(uc_ret); -//} +u_int8 VehicleSensSetGpsInterruptFlag(const LSDRV_LSDATA_G *pst_data) { // LCOV_EXCL_START 8: dead code. + AGL_ASSERT_NOT_TESTED(); // LCOV_EXCL_LINE 200: test assert + u_int8 uc_ret; + VEHICLESENS_DATA_MASTER *pst_master; + + pst_master = &gstGpsInterruptFlag; + + /** Compare data master and received data */ + uc_ret = VehicleSensmemcmp(pst_master->uc_data, pst_data->uc_data, pst_data->uc_size); + + /** Received data is set in the data master. */ + pst_master->ul_did = pst_data->ul_did; + pst_master->us_size = pst_data->uc_size; + pst_master->uc_rcvflag = VEHICLE_RCVFLAG_ON; + pst_master->uc_snscnt = pst_data->uc_sns_cnt; + (void)memcpy(reinterpret_cast(pst_master->uc_data), + (const void *)(pst_data->uc_data), (size_t)(pst_data->uc_size)); + + return(uc_ret); +} /*************************************************************************** @brief Vehicle sensor function NAV-CLOCK GET diff --git a/positioning/server/src/Sensor/VehicleSens_Did_GpsAntenna.cpp b/positioning/server/src/Sensor/VehicleSens_Did_GpsAntenna.cpp index c3d1ed6c..bbf4965f 100644 --- a/positioning/server/src/Sensor/VehicleSens_Did_GpsAntenna.cpp +++ b/positioning/server/src/Sensor/VehicleSens_Did_GpsAntenna.cpp @@ -1,5 +1,5 @@ /* - * @copyright Copyright (c) 2016-2019 TOYOTA MOTOR CORPORATION. + * @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. diff --git a/positioning/server/src/Sensor/VehicleSens_Did_GpsAntennaStatus.cpp b/positioning/server/src/Sensor/VehicleSens_Did_GpsAntennaStatus.cpp index 93609302..dc950ccb 100644 --- a/positioning/server/src/Sensor/VehicleSens_Did_GpsAntennaStatus.cpp +++ b/positioning/server/src/Sensor/VehicleSens_Did_GpsAntennaStatus.cpp @@ -1,5 +1,5 @@ /* - * @copyright Copyright (c) 2016-2019 TOYOTA MOTOR CORPORATION. + * @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. @@ -42,7 +42,7 @@ static VEHICLESENS_DATA_MASTER_GPS_ANTENNA_STATUS gstGpsAntennaStatus; // N ******************************************************************************/ void VehicleSensInitGpsAntennaStatus(void) { (void)memset(reinterpret_cast(&gstGpsAntennaStatus), 0, sizeof(gstGpsAntennaStatus)); -// gstGpsAntennaStatus.ul_did = POSHAL_DID_GPS_ANTENNA; + gstGpsAntennaStatus.ul_did = POSHAL_DID_GPS_ANTENNA; gstGpsAntennaStatus.us_size = VEHICLE_DSIZE_GPS_ANTENNA; gstGpsAntennaStatus.uc_rcvflag = VEHICLE_RCVFLAG_OFF; gstGpsAntennaStatus.uc_sensor_cnt = 0U; @@ -58,30 +58,30 @@ void VehicleSensInitGpsAntennaStatus(void) { * RETURN : VEHICLESENS_EQ : No data change * : VEHICLESENS_NEQ : Data change ******************************************************************************/ -//u_int8 VehicleSensSetGpsAntennaStatus(const LSDRV_MSG_LSDATA_DAT_GPS_ANTENNA_STATUS *pst_data) { // LCOV_EXCL_START 8: dead code // NOLINT(whitespace/line_length) -// AGL_ASSERT_NOT_TESTED(); // LCOV_EXCL_LINE 200: test assert -// u_int8 uc_ret = VEHICLESENS_EQ; -// VEHICLESENS_DATA_MASTER_GPS_ANTENNA_STATUS *pst_master; -// -// if (pst_data == NULL) { -// FRAMEWORKUNIFIEDLOG(ZONE_INFO, __FUNCTION__, "pst_data == NULL\r\n"); -// } else { -// pst_master = &gstGpsAntennaStatus; -// -// /* Compare data master and received data */ -// uc_ret = VehicleSensmemcmp(reinterpret_cast(&(pst_master->uc_data)), -// (const void *)(&(pst_data->uc_data)), (size_t)(pst_data->uc_size)); -// -// /* Received data is set in the data master. */ -// pst_master->ul_did = pst_data->ul_did; -// pst_master->us_size = (u_int16)pst_data->uc_size; -// pst_master->uc_rcvflag = VEHICLE_RCVFLAG_ON; -// pst_master->uc_sensor_cnt = pst_data->uc_sns_cnt; -// (void)memcpy(reinterpret_cast(&(pst_master->uc_data)), -// (const void *)(&(pst_data->uc_data)), sizeof(pst_master->uc_data)); -// } -// return(uc_ret); -//} +u_int8 VehicleSensSetGpsAntennaStatus(const LSDRV_MSG_LSDATA_DAT_GPS_ANTENNA_STATUS *pst_data) { // LCOV_EXCL_START 8: dead code // NOLINT(whitespace/line_length) + AGL_ASSERT_NOT_TESTED(); // LCOV_EXCL_LINE 200: test assert + u_int8 uc_ret = VEHICLESENS_EQ; + VEHICLESENS_DATA_MASTER_GPS_ANTENNA_STATUS *pst_master; + + if (pst_data == NULL) { + FRAMEWORKUNIFIEDLOG(ZONE_INFO, __FUNCTION__, "pst_data == NULL\r\n"); + } else { + pst_master = &gstGpsAntennaStatus; + + /* Compare data master and received data */ + uc_ret = VehicleSensmemcmp(reinterpret_cast(&(pst_master->uc_data)), + (const void *)(&(pst_data->uc_data)), (size_t)(pst_data->uc_size)); + + /* Received data is set in the data master. */ + pst_master->ul_did = pst_data->ul_did; + pst_master->us_size = (u_int16)pst_data->uc_size; + pst_master->uc_rcvflag = VEHICLE_RCVFLAG_ON; + pst_master->uc_sensor_cnt = pst_data->uc_sns_cnt; + (void)memcpy(reinterpret_cast(&(pst_master->uc_data)), + (const void *)(&(pst_data->uc_data)), sizeof(pst_master->uc_data)); + } + return(uc_ret); +} // LCOV_EXCL_STOP /******************************************************************************* diff --git a/positioning/server/src/Sensor/VehicleSens_Did_GpsAntenna_l.cpp b/positioning/server/src/Sensor/VehicleSens_Did_GpsAntenna_l.cpp index 78662567..00db1593 100644 --- a/positioning/server/src/Sensor/VehicleSens_Did_GpsAntenna_l.cpp +++ b/positioning/server/src/Sensor/VehicleSens_Did_GpsAntenna_l.cpp @@ -1,5 +1,5 @@ /* - * @copyright Copyright (c) 2016-2019 TOYOTA MOTOR CORPORATION. + * @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. @@ -42,7 +42,7 @@ static VEHICLESENS_DATA_MASTER gstGpsAntenna_l; // NOLINT(readability/nolin ******************************************************************************/ void VehicleSensInitGpsAntennal(void) { memset(&gstGpsAntenna_l, 0x00, sizeof(VEHICLESENS_DATA_MASTER)); -// gstGpsAntenna_l.ul_did = POSHAL_DID_GPS_ANTENNA; + gstGpsAntenna_l.ul_did = POSHAL_DID_GPS_ANTENNA; gstGpsAntenna_l.us_size = VEHICLE_DSIZE_GPS_ANTENNA; gstGpsAntenna_l.uc_data[0] = VEHICLE_DINIT_GPS_ANTENNA; } @@ -56,25 +56,25 @@ void VehicleSensInitGpsAntennal(void) { * RETURN : VEHICLESENS_EQ : No data change * VEHICLESENS_NEQ : Data change ******************************************************************************/ -//u_int8 VehicleSensSetGpsAntennal(const LSDRV_LSDATA *pst_data) { -// u_int8 uc_ret; -// VEHICLESENS_DATA_MASTER *pst_master; -// -// pst_master = &gstGpsAntenna_l; -// -// /* Compare data master and received data */ -// /* Ignore->MISRA-C++:2008 Rule 5-0-5 */ -// uc_ret = VehicleSensmemcmp(pst_master->uc_data, pst_data->uc_data, pst_data->uc_size); -// -// /* Received data is set in the data master. */ -// pst_master->ul_did = pst_data->ul_did; -// pst_master->us_size = pst_data->uc_size; /* Ignore->MISRA-C++:2008 Rule 5-0-5 */ -// pst_master->uc_rcvflag = VEHICLE_RCVFLAG_ON; -// memset(pst_master->uc_data, 0x00, sizeof(pst_master->uc_data)); -// memcpy(pst_master->uc_data, pst_data->uc_data, pst_data->uc_size); /* Ignore->MISRA-C++:2008 Rule 5-0-5 */ -// -// return(uc_ret); -//} +u_int8 VehicleSensSetGpsAntennal(const LSDRV_LSDATA *pst_data) { + u_int8 uc_ret; + VEHICLESENS_DATA_MASTER *pst_master; + + pst_master = &gstGpsAntenna_l; + + /* Compare data master and received data */ + /* Ignore->MISRA-C++:2008 Rule 5-0-5 */ + uc_ret = VehicleSensmemcmp(pst_master->uc_data, pst_data->uc_data, pst_data->uc_size); + + /* Received data is set in the data master. */ + pst_master->ul_did = pst_data->ul_did; + pst_master->us_size = pst_data->uc_size; /* Ignore->MISRA-C++:2008 Rule 5-0-5 */ + pst_master->uc_rcvflag = VEHICLE_RCVFLAG_ON; + memset(pst_master->uc_data, 0x00, sizeof(pst_master->uc_data)); + memcpy(pst_master->uc_data, pst_data->uc_data, pst_data->uc_size); /* Ignore->MISRA-C++:2008 Rule 5-0-5 */ + + return(uc_ret); +} /******************************************************************************* * MODULE : VehicleSensGetGpsAntennal diff --git a/positioning/server/src/Sensor/VehicleSens_Did_GpsClockDrift.cpp b/positioning/server/src/Sensor/VehicleSens_Did_GpsClockDrift.cpp index 4ec5e4d0..955e1610 100644 --- a/positioning/server/src/Sensor/VehicleSens_Did_GpsClockDrift.cpp +++ b/positioning/server/src/Sensor/VehicleSens_Did_GpsClockDrift.cpp @@ -1,5 +1,5 @@ /* - * @copyright Copyright (c) 2016-2019 TOYOTA MOTOR CORPORATION. + * @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. @@ -36,16 +36,16 @@ * @param[out] SENSOR_MSG_GPSDATA_DAT* * @param[in] u_int8 */ -//void VehicleSensGetGpsClockDrift(SENSOR_MSG_GPSDATA_DAT *pst_data, u_int8 uc_get_method) { -// switch (uc_get_method) { -// case VEHICLESENS_GETMETHOD_GPS: -// { -// /** To acquire from GPS */ -// VehicleSensGetGpsClockDriftG(pst_data); -// break; -// } -// -// default: /* Ignore->MISRA-C++:2008 Rule 6-3-1, 6-4-1 */ -// break; -// } -//} +void VehicleSensGetGpsClockDrift(SENSOR_MSG_GPSDATA_DAT *pst_data, u_int8 uc_get_method) { + switch (uc_get_method) { + case VEHICLESENS_GETMETHOD_GPS: + { + /** To acquire from GPS */ + VehicleSensGetGpsClockDriftG(pst_data); + break; + } + + default: /* Ignore->MISRA-C++:2008 Rule 6-3-1, 6-4-1 */ + break; + } +} diff --git a/positioning/server/src/Sensor/VehicleSens_Did_GpsClockDrift_g.cpp b/positioning/server/src/Sensor/VehicleSens_Did_GpsClockDrift_g.cpp index bf71d0f9..ecfbb4f6 100644 --- a/positioning/server/src/Sensor/VehicleSens_Did_GpsClockDrift_g.cpp +++ b/positioning/server/src/Sensor/VehicleSens_Did_GpsClockDrift_g.cpp @@ -1,5 +1,5 @@ /* - * @copyright Copyright (c) 2016-2019 TOYOTA MOTOR CORPORATION. + * @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. @@ -44,7 +44,7 @@ void VehicleSensInitGpsClockDriftG(void) { memset(&gGpsClockDrift_g, 0x00, sizeof(VEHICLESENS_DATA_MASTER)); /** Data ID setting */ -// gGpsClockDrift_g.ul_did = POSHAL_DID_GPS_CLOCK_DRIFT; + gGpsClockDrift_g.ul_did = POSHAL_DID_GPS_CLOCK_DRIFT; /** Data size setting */ gGpsClockDrift_g.us_size = sizeof(int32_t); /** Data content setting */ @@ -72,7 +72,7 @@ u_int8 VehicleSensSetGpsClockDriftG(const int32_t *p_data) { uc_ret = VehicleSensmemcmp(pst_master->uc_data, p_data, sizeof(int32_t)); /** Received data is set in the data master. */ -// pst_master->ul_did = POSHAL_DID_GPS_CLOCK_DRIFT; + pst_master->ul_did = POSHAL_DID_GPS_CLOCK_DRIFT; pst_master->us_size = sizeof(int32_t); pst_master->uc_rcvflag = VEHICLE_RCVFLAG_ON; memset(pst_master->uc_data, 0x00, sizeof(pst_master->uc_data)); @@ -87,16 +87,16 @@ u_int8 VehicleSensSetGpsClockDriftG(const int32_t *p_data) { * * @param[out] SENSOR_MSG_GPSDATA_DAT* */ -//void VehicleSensGetGpsClockDriftG(SENSOR_MSG_GPSDATA_DAT *pst_data) { -// const VEHICLESENS_DATA_MASTER *pst_master; -// -// pst_master = &gGpsClockDrift_g; -// -// /* Store the data master in the specified destination. */ -// pst_data->ul_did = pst_master->ul_did; -// pst_data->us_size = pst_master->us_size; -// pst_data->uc_rcv_flag = pst_master->uc_rcvflag; -// memcpy(pst_data->uc_data, pst_master->uc_data, pst_master->us_size); -// -// return; -//} +void VehicleSensGetGpsClockDriftG(SENSOR_MSG_GPSDATA_DAT *pst_data) { + const VEHICLESENS_DATA_MASTER *pst_master; + + pst_master = &gGpsClockDrift_g; + + /* Store the data master in the specified destination. */ + pst_data->ul_did = pst_master->ul_did; + pst_data->us_size = pst_master->us_size; + pst_data->uc_rcv_flag = pst_master->uc_rcvflag; + memcpy(pst_data->uc_data, pst_master->uc_data, pst_master->us_size); + + return; +} diff --git a/positioning/server/src/Sensor/VehicleSens_Did_GpsClockFreq.cpp b/positioning/server/src/Sensor/VehicleSens_Did_GpsClockFreq.cpp index 82ebeb98..39fac421 100644 --- a/positioning/server/src/Sensor/VehicleSens_Did_GpsClockFreq.cpp +++ b/positioning/server/src/Sensor/VehicleSens_Did_GpsClockFreq.cpp @@ -1,5 +1,5 @@ /* - * @copyright Copyright (c) 2016-2019 TOYOTA MOTOR CORPORATION. + * @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. @@ -36,16 +36,16 @@ * @param[out] SENSOR_MSG_GPSDATA_DAT* * @param[in] u_int8 */ -//void VehicleSensGetGpsClockFreq(SENSOR_MSG_GPSDATA_DAT *pst_data, u_int8 uc_get_method) { -// switch (uc_get_method) { -// case VEHICLESENS_GETMETHOD_GPS: -// { -// /** To acquire from GPS */ -// VehicleSensGetGpsClockFreqG(pst_data); -// break; -// } -// -// default: /* Ignore->MISRA-C++:2008 Rule 6-3-1, 6-4-1 */ -// break; -// } -//} +void VehicleSensGetGpsClockFreq(SENSOR_MSG_GPSDATA_DAT *pst_data, u_int8 uc_get_method) { + switch (uc_get_method) { + case VEHICLESENS_GETMETHOD_GPS: + { + /** To acquire from GPS */ + VehicleSensGetGpsClockFreqG(pst_data); + break; + } + + default: /* Ignore->MISRA-C++:2008 Rule 6-3-1, 6-4-1 */ + break; + } +} diff --git a/positioning/server/src/Sensor/VehicleSens_Did_GpsClockFreq_g.cpp b/positioning/server/src/Sensor/VehicleSens_Did_GpsClockFreq_g.cpp index e511f0b7..85cbdd6b 100644 --- a/positioning/server/src/Sensor/VehicleSens_Did_GpsClockFreq_g.cpp +++ b/positioning/server/src/Sensor/VehicleSens_Did_GpsClockFreq_g.cpp @@ -1,5 +1,5 @@ /* - * @copyright Copyright (c) 2016-2019 TOYOTA MOTOR CORPORATION. + * @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. @@ -44,7 +44,7 @@ void VehicleSensInitGpsClockFreqG(void) { memset(&gGpsClockFreq_g, 0x00, sizeof(VEHICLESENS_DATA_MASTER)); /** Data ID setting */ -// gGpsClockFreq_g.ul_did = POSHAL_DID_GPS_CLOCK_FREQ; + gGpsClockFreq_g.ul_did = POSHAL_DID_GPS_CLOCK_FREQ; /** Data size setting */ gGpsClockFreq_g.us_size = sizeof(uint32_t); /** Data content setting */ @@ -72,7 +72,7 @@ u_int8 VehicleSensSetGpsClockFreqG(const uint32_t *p_data) { uc_ret = VehicleSensmemcmp(pst_master->uc_data, p_data, sizeof(uint32_t)); /** Received data is set in the data master. */ -// pst_master->ul_did = POSHAL_DID_GPS_CLOCK_FREQ; + pst_master->ul_did = POSHAL_DID_GPS_CLOCK_FREQ; pst_master->us_size = sizeof(uint32_t); pst_master->uc_rcvflag = VEHICLE_RCVFLAG_ON; memset(pst_master->uc_data, 0x00, sizeof(pst_master->uc_data)); @@ -87,16 +87,16 @@ u_int8 VehicleSensSetGpsClockFreqG(const uint32_t *p_data) { * * @param[out] SENSOR_MSG_GPSDATA_DAT* */ -//void VehicleSensGetGpsClockFreqG(SENSOR_MSG_GPSDATA_DAT *pst_data) { -// const VEHICLESENS_DATA_MASTER *pst_master; -// -// pst_master = &gGpsClockFreq_g; -// -// /* Store the data master in the specified destination. */ -// pst_data->ul_did = pst_master->ul_did; -// pst_data->us_size = pst_master->us_size; -// pst_data->uc_rcv_flag = pst_master->uc_rcvflag; -// memcpy(pst_data->uc_data, pst_master->uc_data, pst_master->us_size); -// -// return; -//} +void VehicleSensGetGpsClockFreqG(SENSOR_MSG_GPSDATA_DAT *pst_data) { + const VEHICLESENS_DATA_MASTER *pst_master; + + pst_master = &gGpsClockFreq_g; + + /* Store the data master in the specified destination. */ + pst_data->ul_did = pst_master->ul_did; + pst_data->us_size = pst_master->us_size; + pst_data->uc_rcv_flag = pst_master->uc_rcvflag; + memcpy(pst_data->uc_data, pst_master->uc_data, pst_master->us_size); + + return; +} diff --git a/positioning/server/src/Sensor/VehicleSens_Did_GpsCounter_g.cpp b/positioning/server/src/Sensor/VehicleSens_Did_GpsCounter_g.cpp index 2acf754f..d4aba14b 100644 --- a/positioning/server/src/Sensor/VehicleSens_Did_GpsCounter_g.cpp +++ b/positioning/server/src/Sensor/VehicleSens_Did_GpsCounter_g.cpp @@ -1,5 +1,5 @@ /* - * @copyright Copyright (c) 2016-2019 TOYOTA MOTOR CORPORATION. + * @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. @@ -56,24 +56,24 @@ void VehicleSensInitGpsCounterg(void) { * RETURN : VEHICLESENS_EQ : No data change * VEHICLESENS_NEQ : Data change ******************************************************************************/ -//u_int8 VehicleSensSetGpsCounterg(const SENSOR_MSG_GPSDATA_DAT *pst_data) { // LCOV_EXCL_START 8: dead code -// AGL_ASSERT_NOT_TESTED(); // LCOV_EXCL_LINE 200: test assert -// u_int8 uc_ret; -// VEHICLESENS_DATA_MASTER *pst_master; -// -// pst_master = &gstGpsCounter_g; -// -// /* Compare data master and received data */ -// uc_ret = VehicleSensmemcmp(pst_master->uc_data, pst_data->uc_data, pst_data->us_size); -// -// /* Received data is set in the data master. */ -// pst_master->ul_did = pst_data->ul_did; -// pst_master->us_size = (u_int8)pst_data->us_size; -// pst_master->uc_rcvflag = VEHICLE_RCVFLAG_ON; -// memcpy(pst_master->uc_data, pst_data->uc_data, pst_data->us_size); -// -// return(uc_ret); -//} +u_int8 VehicleSensSetGpsCounterg(const SENSOR_MSG_GPSDATA_DAT *pst_data) { // LCOV_EXCL_START 8: dead code + AGL_ASSERT_NOT_TESTED(); // LCOV_EXCL_LINE 200: test assert + u_int8 uc_ret; + VEHICLESENS_DATA_MASTER *pst_master; + + pst_master = &gstGpsCounter_g; + + /* Compare data master and received data */ + uc_ret = VehicleSensmemcmp(pst_master->uc_data, pst_data->uc_data, pst_data->us_size); + + /* Received data is set in the data master. */ + pst_master->ul_did = pst_data->ul_did; + pst_master->us_size = (u_int8)pst_data->us_size; + pst_master->uc_rcvflag = VEHICLE_RCVFLAG_ON; + memcpy(pst_master->uc_data, pst_data->uc_data, pst_data->us_size); + + return(uc_ret); +} /******************************************************************************* * MODULE : VehicleSensGetGpsCounterg @@ -83,16 +83,16 @@ void VehicleSensInitGpsCounterg(void) { * NOTE : * RETURN : void ******************************************************************************/ -//void VehicleSensGetGpsCounterg(SENSOR_MSG_GPSDATA_DAT *pst_data) { -// AGL_ASSERT_NOT_TESTED(); // LCOV_EXCL_LINE 200: test assert -// const VEHICLESENS_DATA_MASTER *pst_master; -// -// pst_master = &gstGpsCounter_g; -// -// /* Store the data master in the specified destination. */ -// pst_data->ul_did = pst_master->ul_did; -// pst_data->us_size = pst_master->us_size; -// pst_data->uc_rcv_flag = pst_master->uc_rcvflag; -// memcpy(pst_data->uc_data, pst_master->uc_data, pst_master->us_size); -//} +void VehicleSensGetGpsCounterg(SENSOR_MSG_GPSDATA_DAT *pst_data) { + AGL_ASSERT_NOT_TESTED(); // LCOV_EXCL_LINE 200: test assert + const VEHICLESENS_DATA_MASTER *pst_master; + + pst_master = &gstGpsCounter_g; + + /* Store the data master in the specified destination. */ + pst_data->ul_did = pst_master->ul_did; + pst_data->us_size = pst_master->us_size; + pst_data->uc_rcv_flag = pst_master->uc_rcvflag; + memcpy(pst_data->uc_data, pst_master->uc_data, pst_master->us_size); +} // LCOV_EXCL_STOP diff --git a/positioning/server/src/Sensor/VehicleSens_Did_GpsNmea_g.cpp b/positioning/server/src/Sensor/VehicleSens_Did_GpsNmea_g.cpp index ebee7810..a7b733e1 100644 --- a/positioning/server/src/Sensor/VehicleSens_Did_GpsNmea_g.cpp +++ b/positioning/server/src/Sensor/VehicleSens_Did_GpsNmea_g.cpp @@ -1,5 +1,5 @@ /* - * @copyright Copyright (c) 2016-2019 TOYOTA MOTOR CORPORATION. + * @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. @@ -26,7 +26,7 @@ #include #include "VehicleSens_DataMaster.h" -//#include "gps_hal.h" +#include "gps_hal.h" /*---------------------------------------------------------------------------------* * Global Value @@ -39,7 +39,7 @@ static VEHICLESENS_DATA_MASTER_GPS_FORMAT gstGpsNmea_g; // NOLINT(readabili */ void VehicleSensInitGpsNmeaG(void) { memset(&gstGpsNmea_g, 0x00, sizeof(VEHICLESENS_DATA_MASTER_GPS_FORMAT)); -// gstGpsNmea_g.ul_did = POSHAL_DID_GPS_NMEA; + gstGpsNmea_g.ul_did = POSHAL_DID_GPS_NMEA; gstGpsNmea_g.us_size = VEHICLE_DSIZE_GPS_FORMAT; } @@ -52,23 +52,23 @@ void VehicleSensInitGpsNmeaG(void) { * @return VEHICLESENS_EQ No data change
* VEHICLESENS_NEQ Data change */ -//u_int8 VehicleSensSetGpsNmeaG(const SENSOR_MSG_GPSDATA_DAT *pst_data) { -// u_int8 uc_ret; -// VEHICLESENS_DATA_MASTER_GPS_FORMAT *pst_master; -// -// pst_master = &gstGpsNmea_g; -// -// /* Compare data master and received data */ -// uc_ret = VehicleSensmemcmp(pst_master->uc_data, pst_data->uc_data, pst_data->us_size); -// -// /* Received data is set in the data master. */ -// pst_master->ul_did = pst_data->ul_did; -// pst_master->us_size = pst_data->us_size; -// pst_master->uc_rcvflag = VEHICLE_RCVFLAG_ON; -// memcpy(pst_master->uc_data, pst_data->uc_data, pst_data->us_size); -// -// return(uc_ret); -//} +u_int8 VehicleSensSetGpsNmeaG(const SENSOR_MSG_GPSDATA_DAT *pst_data) { + u_int8 uc_ret; + VEHICLESENS_DATA_MASTER_GPS_FORMAT *pst_master; + + pst_master = &gstGpsNmea_g; + + /* Compare data master and received data */ + uc_ret = VehicleSensmemcmp(pst_master->uc_data, pst_data->uc_data, pst_data->us_size); + + /* Received data is set in the data master. */ + pst_master->ul_did = pst_data->ul_did; + pst_master->us_size = pst_data->us_size; + pst_master->uc_rcvflag = VEHICLE_RCVFLAG_ON; + memcpy(pst_master->uc_data, pst_data->uc_data, pst_data->us_size); + + return(uc_ret); +} /** * @brief @@ -76,14 +76,14 @@ void VehicleSensInitGpsNmeaG(void) { * * @param[out] pst_data Pointer to the data master acquisition destination */ -//void VehicleSensGetGpsNmeaG(SENSOR_MSG_GPSDATA_DAT *pst_data) { -// const VEHICLESENS_DATA_MASTER_GPS_FORMAT *pst_master; -// -// pst_master = &gstGpsNmea_g; -// -// /* Store the data master in the specified destination. */ -// pst_data->ul_did = pst_master->ul_did; -// pst_data->us_size = pst_master->us_size; -// pst_data->uc_rcv_flag = pst_master->uc_rcvflag; -// memcpy(pst_data->uc_data, pst_master->uc_data, pst_master->us_size); /* Ignore->MISRA-C++:2008 Rule 5-0-5 */ -//} +void VehicleSensGetGpsNmeaG(SENSOR_MSG_GPSDATA_DAT *pst_data) { + const VEHICLESENS_DATA_MASTER_GPS_FORMAT *pst_master; + + pst_master = &gstGpsNmea_g; + + /* Store the data master in the specified destination. */ + pst_data->ul_did = pst_master->ul_did; + pst_data->us_size = pst_master->us_size; + pst_data->uc_rcv_flag = pst_master->uc_rcvflag; + memcpy(pst_data->uc_data, pst_master->uc_data, pst_master->us_size); /* Ignore->MISRA-C++:2008 Rule 5-0-5 */ +} diff --git a/positioning/server/src/Sensor/VehicleSens_Did_GpsTime.cpp b/positioning/server/src/Sensor/VehicleSens_Did_GpsTime.cpp index 202e485e..8c23e3e1 100644 --- a/positioning/server/src/Sensor/VehicleSens_Did_GpsTime.cpp +++ b/positioning/server/src/Sensor/VehicleSens_Did_GpsTime.cpp @@ -1,5 +1,5 @@ /* - * @copyright Copyright (c) 2016-2019 TOYOTA MOTOR CORPORATION. + * @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. @@ -36,18 +36,18 @@ * @param[out] VEHICLESENS_DATA_MASTER* * @param[in] u_int8 */ -//void VehicleSensGetGpsTime(SENSOR_MSG_GPSDATA_DAT *pst_data, u_int8 uc_get_method) { // LCOV_EXCL_START 7: uesd only in FrameworkunifiedOnDebugDump // NOLINT(whitespace/line_length) -// AGL_ASSERT_NOT_TESTED(); // LCOV_EXCL_LINE 200: test assert -// switch (uc_get_method) { -// case VEHICLESENS_GETMETHOD_GPS: -// { -// /** To acquire from GPSorNAVI */ -// VehicleSensGetGpsTimeG(pst_data); -// break; -// } -// -// default: /* Ignore->MISRA-C++:2008 Rule 6-3-1, 6-4-1 */ -// break; -// } -//} +void VehicleSensGetGpsTime(SENSOR_MSG_GPSDATA_DAT *pst_data, u_int8 uc_get_method) { // LCOV_EXCL_START 7: uesd only in FrameworkunifiedOnDebugDump // NOLINT(whitespace/line_length) + AGL_ASSERT_NOT_TESTED(); // LCOV_EXCL_LINE 200: test assert + switch (uc_get_method) { + case VEHICLESENS_GETMETHOD_GPS: + { + /** To acquire from GPSorNAVI */ + VehicleSensGetGpsTimeG(pst_data); + break; + } + + default: /* Ignore->MISRA-C++:2008 Rule 6-3-1, 6-4-1 */ + break; + } +} // LCOV_EXCL_STOP diff --git a/positioning/server/src/Sensor/VehicleSens_Did_GpsTimeRaw.cpp b/positioning/server/src/Sensor/VehicleSens_Did_GpsTimeRaw.cpp index a0de8e9e..9637b727 100644 --- a/positioning/server/src/Sensor/VehicleSens_Did_GpsTimeRaw.cpp +++ b/positioning/server/src/Sensor/VehicleSens_Did_GpsTimeRaw.cpp @@ -1,5 +1,5 @@ /* - * @copyright Copyright (c) 2016-2019 TOYOTA MOTOR CORPORATION. + * @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. @@ -36,16 +36,16 @@ * @param[out] VEHICLESENS_DATA_MASTER* * @param[in] u_int8 */ -//void VehicleSensGetGpsTimeRaw(SENSOR_MSG_GPSDATA_DAT *pst_data, u_int8 uc_get_method) { -// switch (uc_get_method) { -// case VEHICLESENS_GETMETHOD_GPS: -// { -// /** To acquire from GPS */ -// VehicleSensGetGpsTimeRawG(pst_data); -// break; -// } -// -// default: /* Ignore->MISRA-C++:2008 Rule 6-3-1, 6-4-1 */ -// break; -// } -//} +void VehicleSensGetGpsTimeRaw(SENSOR_MSG_GPSDATA_DAT *pst_data, u_int8 uc_get_method) { + switch (uc_get_method) { + case VEHICLESENS_GETMETHOD_GPS: + { + /** To acquire from GPS */ + VehicleSensGetGpsTimeRawG(pst_data); + break; + } + + default: /* Ignore->MISRA-C++:2008 Rule 6-3-1, 6-4-1 */ + break; + } +} diff --git a/positioning/server/src/Sensor/VehicleSens_Did_GpsTimeRaw_g.cpp b/positioning/server/src/Sensor/VehicleSens_Did_GpsTimeRaw_g.cpp index da597e68..52cda83c 100644 --- a/positioning/server/src/Sensor/VehicleSens_Did_GpsTimeRaw_g.cpp +++ b/positioning/server/src/Sensor/VehicleSens_Did_GpsTimeRaw_g.cpp @@ -1,5 +1,5 @@ /* - * @copyright Copyright (c) 2016-2019 TOYOTA MOTOR CORPORATION. + * @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. @@ -39,17 +39,17 @@ static VEHICLESENS_DATA_MASTER gstGpsTimeRaw_g; // NOLINT(readability/nolin * GPS time information data master initialization processing */ void VehicleSensInitGpsTimeRawG(void) { -// SENSOR_GPSTIME_RAW st_gps_time_raw; + SENSOR_GPSTIME_RAW st_gps_time_raw; memset(&gstGpsTimeRaw_g, 0x00, sizeof(VEHICLESENS_DATA_MASTER)); /** Data ID setting */ -// gstGpsTimeRaw_g.ul_did = POSHAL_DID_GPS_TIME_RAW; + gstGpsTimeRaw_g.ul_did = POSHAL_DID_GPS_TIME_RAW; /** Data size setting */ -// gstGpsTimeRaw_g.us_size = sizeof(SENSOR_GPSTIME_RAW); + gstGpsTimeRaw_g.us_size = sizeof(SENSOR_GPSTIME_RAW); /** Data content setting */ -// memset(&st_gps_time_raw, 0x00, sizeof(st_gps_time_raw)); -// memcpy(&gstGpsTimeRaw_g.uc_data[0], &st_gps_time_raw, sizeof(st_gps_time_raw)); + memset(&st_gps_time_raw, 0x00, sizeof(st_gps_time_raw)); + memcpy(&gstGpsTimeRaw_g.uc_data[0], &st_gps_time_raw, sizeof(st_gps_time_raw)); return; } @@ -62,29 +62,29 @@ void VehicleSensInitGpsTimeRawG(void) { * * @return u_int8 */ -//u_int8 VehicleSensSetGpsTimeRawG(const SENSOR_GPSTIME_RAW *pst_gps_time_raw) { -// u_int8 uc_ret; -// VEHICLESENS_DATA_MASTER *pst_master; -// -// pst_master = &gstGpsTimeRaw_g; -// -// /** With the contents of the current data master,Compare received data */ -// uc_ret = VehicleSensmemcmp(pst_master->uc_data, pst_gps_time_raw, sizeof(SENSOR_GPSTIME_RAW)); -// -// /** Received data is set in the data master. */ -// pst_master->ul_did = POSHAL_DID_GPS_TIME_RAW; -// pst_master->us_size = sizeof(SENSOR_GPSTIME_RAW); -// pst_master->uc_rcvflag = VEHICLE_RCVFLAG_ON; -// memset(pst_master->uc_data, 0x00, sizeof(pst_master->uc_data)); -// memcpy(pst_master->uc_data, pst_gps_time_raw, sizeof(SENSOR_GPSTIME_RAW)); -// -// FRAMEWORKUNIFIEDLOG(ZONE_27, __FUNCTION__, -// "year=%04d, month=%02d, date=%02d, hour=%02d, minute=%02d, second=%02d, tdsts=%d", -// pst_gps_time_raw->utc.year, pst_gps_time_raw->utc.month, pst_gps_time_raw->utc.date, -// pst_gps_time_raw->utc.hour, pst_gps_time_raw->utc.minute, -// pst_gps_time_raw->utc.second, pst_gps_time_raw->tdsts); -// return(uc_ret); -//} +u_int8 VehicleSensSetGpsTimeRawG(const SENSOR_GPSTIME_RAW *pst_gps_time_raw) { + u_int8 uc_ret; + VEHICLESENS_DATA_MASTER *pst_master; + + pst_master = &gstGpsTimeRaw_g; + + /** With the contents of the current data master,Compare received data */ + uc_ret = VehicleSensmemcmp(pst_master->uc_data, pst_gps_time_raw, sizeof(SENSOR_GPSTIME_RAW)); + + /** Received data is set in the data master. */ + pst_master->ul_did = POSHAL_DID_GPS_TIME_RAW; + pst_master->us_size = sizeof(SENSOR_GPSTIME_RAW); + pst_master->uc_rcvflag = VEHICLE_RCVFLAG_ON; + memset(pst_master->uc_data, 0x00, sizeof(pst_master->uc_data)); + memcpy(pst_master->uc_data, pst_gps_time_raw, sizeof(SENSOR_GPSTIME_RAW)); + + FRAMEWORKUNIFIEDLOG(ZONE_27, __FUNCTION__, + "year=%04d, month=%02d, date=%02d, hour=%02d, minute=%02d, second=%02d, tdsts=%d", + pst_gps_time_raw->utc.year, pst_gps_time_raw->utc.month, pst_gps_time_raw->utc.date, + pst_gps_time_raw->utc.hour, pst_gps_time_raw->utc.minute, + pst_gps_time_raw->utc.second, pst_gps_time_raw->tdsts); + return(uc_ret); +} /** * @brief @@ -92,16 +92,16 @@ void VehicleSensInitGpsTimeRawG(void) { * * @param[out] SENSOR_MSG_GPSDATA_DAT* */ -//void VehicleSensGetGpsTimeRawG(SENSOR_MSG_GPSDATA_DAT *pst_data) { -// const VEHICLESENS_DATA_MASTER *pst_master; -// -// pst_master = &gstGpsTimeRaw_g; -// -// /* Store the data master in the specified destination. */ -// pst_data->ul_did = pst_master->ul_did; -// pst_data->us_size = pst_master->us_size; -// pst_data->uc_rcv_flag = pst_master->uc_rcvflag; -// memcpy(pst_data->uc_data, pst_master->uc_data, pst_master->us_size); -// -// return; -//} +void VehicleSensGetGpsTimeRawG(SENSOR_MSG_GPSDATA_DAT *pst_data) { + const VEHICLESENS_DATA_MASTER *pst_master; + + pst_master = &gstGpsTimeRaw_g; + + /* Store the data master in the specified destination. */ + pst_data->ul_did = pst_master->ul_did; + pst_data->us_size = pst_master->us_size; + pst_data->uc_rcv_flag = pst_master->uc_rcvflag; + memcpy(pst_data->uc_data, pst_master->uc_data, pst_master->us_size); + + return; +} diff --git a/positioning/server/src/Sensor/VehicleSens_Did_GpsTime_g.cpp b/positioning/server/src/Sensor/VehicleSens_Did_GpsTime_g.cpp index eeed707f..404e60e4 100644 --- a/positioning/server/src/Sensor/VehicleSens_Did_GpsTime_g.cpp +++ b/positioning/server/src/Sensor/VehicleSens_Did_GpsTime_g.cpp @@ -1,5 +1,5 @@ /* - * @copyright Copyright (c) 2016-2019 TOYOTA MOTOR CORPORATION. + * @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. @@ -39,17 +39,17 @@ static VEHICLESENS_DATA_MASTER gstGpsTime_g; // NOLINT(readability/nolint) * GPS time information data master initialization processing */ void VehicleSensInitGpsTimeG(void) { -// SENSOR_MSG_GPSTIME st_gps_time; + SENSOR_MSG_GPSTIME st_gps_time; memset(&gstGpsTime_g, 0x00, sizeof(VEHICLESENS_DATA_MASTER)); /** Data ID setting */ -// gstGpsTime_g.ul_did = POSHAL_DID_GPS_TIME; + gstGpsTime_g.ul_did = POSHAL_DID_GPS_TIME; /** Data size setting */ -// gstGpsTime_g.us_size = sizeof(SENSOR_MSG_GPSTIME); + gstGpsTime_g.us_size = sizeof(SENSOR_MSG_GPSTIME); /** Data content setting */ -// memset(&st_gps_time, 0x00, sizeof(st_gps_time)); -// memcpy(&gstGpsTime_g.uc_data[0], &st_gps_time, sizeof(st_gps_time)); + memset(&st_gps_time, 0x00, sizeof(st_gps_time)); + memcpy(&gstGpsTime_g.uc_data[0], &st_gps_time, sizeof(st_gps_time)); return; } @@ -62,24 +62,24 @@ void VehicleSensInitGpsTimeG(void) { * * @return u_int8 */ -//u_int8 VehicleSensSetGpsTimeG(const SENSOR_MSG_GPSTIME *pst_gps_time) { -// u_int8 uc_ret; -// VEHICLESENS_DATA_MASTER *pst_master; -// -// pst_master = &gstGpsTime_g; -// -// /** With the contents of the current data master,Compare received data */ -// uc_ret = VehicleSensmemcmp(pst_master->uc_data, pst_gps_time, sizeof(SENSOR_MSG_GPSTIME)); -// -// /** Received data is set in the data master. */ -// pst_master->ul_did = POSHAL_DID_GPS_TIME; -// pst_master->us_size = sizeof(SENSOR_MSG_GPSTIME); -// pst_master->uc_rcvflag = VEHICLE_RCVFLAG_ON; -// memset(pst_master->uc_data, 0x00, sizeof(pst_master->uc_data)); -// memcpy(pst_master->uc_data, pst_gps_time, sizeof(SENSOR_MSG_GPSTIME)); -// -// return(uc_ret); -//} +u_int8 VehicleSensSetGpsTimeG(const SENSOR_MSG_GPSTIME *pst_gps_time) { + u_int8 uc_ret; + VEHICLESENS_DATA_MASTER *pst_master; + + pst_master = &gstGpsTime_g; + + /** With the contents of the current data master,Compare received data */ + uc_ret = VehicleSensmemcmp(pst_master->uc_data, pst_gps_time, sizeof(SENSOR_MSG_GPSTIME)); + + /** Received data is set in the data master. */ + pst_master->ul_did = POSHAL_DID_GPS_TIME; + pst_master->us_size = sizeof(SENSOR_MSG_GPSTIME); + pst_master->uc_rcvflag = VEHICLE_RCVFLAG_ON; + memset(pst_master->uc_data, 0x00, sizeof(pst_master->uc_data)); + memcpy(pst_master->uc_data, pst_gps_time, sizeof(SENSOR_MSG_GPSTIME)); + + return(uc_ret); +} /** * @brief @@ -87,16 +87,16 @@ void VehicleSensInitGpsTimeG(void) { * * @param[out] SENSOR_MSG_GPS* */ -//void VehicleSensGetGpsTimeG(SENSOR_MSG_GPSDATA_DAT *pst_data) { -// const VEHICLESENS_DATA_MASTER *pst_master; -// -// pst_master = &gstGpsTime_g; -// -// /* Store the data master in the specified destination. */ -// pst_data->ul_did = pst_master->ul_did; -// pst_data->us_size = pst_master->us_size; -// pst_data->uc_rcv_flag = pst_master->uc_rcvflag; -// memcpy(pst_data->uc_data, pst_master->uc_data, pst_master->us_size); -// -// return; -//} +void VehicleSensGetGpsTimeG(SENSOR_MSG_GPSDATA_DAT *pst_data) { + const VEHICLESENS_DATA_MASTER *pst_master; + + pst_master = &gstGpsTime_g; + + /* Store the data master in the specified destination. */ + pst_data->ul_did = pst_master->ul_did; + pst_data->us_size = pst_master->us_size; + pst_data->uc_rcv_flag = pst_master->uc_rcvflag; + memcpy(pst_data->uc_data, pst_master->uc_data, pst_master->us_size); + + return; +} diff --git a/positioning/server/src/Sensor/VehicleSens_Did_Gps_CWORD82_FullBinary_g.cpp b/positioning/server/src/Sensor/VehicleSens_Did_Gps_CWORD82_FullBinary_g.cpp index 0a1676f4..8f842001 100644 --- a/positioning/server/src/Sensor/VehicleSens_Did_Gps_CWORD82_FullBinary_g.cpp +++ b/positioning/server/src/Sensor/VehicleSens_Did_Gps_CWORD82_FullBinary_g.cpp @@ -1,5 +1,5 @@ /* - * @copyright Copyright (c) 2016-2019 TOYOTA MOTOR CORPORATION. + * @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. @@ -27,7 +27,7 @@ #include #include "VehicleSens_DataMaster.h" #include "VehicleSens_Common.h" -//#include "gps_hal.h" +#include "gps_hal.h" /*************************************************/ /* Global variable */ @@ -44,10 +44,10 @@ static VEHICLESENS_DATA_MASTER_GPS_FORMAT gstGps_CWORD82_FullBinary_g; // N ******************************************************************************/ void VehicleSensInitGps_CWORD82_FullBinaryG(void) { memset(&gstGps_CWORD82_FullBinary_g, 0x00, sizeof(VEHICLESENS_DATA_MASTER_GPS_FORMAT)); -// gstGps_CWORD82_FullBinary_g.ul_did = POSHAL_DID_GPS__CWORD82__FULLBINARY; + gstGps_CWORD82_FullBinary_g.ul_did = POSHAL_DID_GPS__CWORD82__FULLBINARY; /* _CWORD82_-only format with a fixed magic number */ /* GPS antenna connection information(1byte) + Sensor Counter(1byte) + 191 */ -// gstGps_CWORD82_FullBinary_g.us_size = (VEHICLE_DSIZE_GPS_ANTENNA + VEHICLE_DSIZE_SNS_COUNTER + GPS_CMD_FULLBIN_SZ); + gstGps_CWORD82_FullBinary_g.us_size = (VEHICLE_DSIZE_GPS_ANTENNA + VEHICLE_DSIZE_SNS_COUNTER + GPS_CMD_FULLBIN_SZ); } /******************************************************************************* @@ -59,24 +59,24 @@ void VehicleSensInitGps_CWORD82_FullBinaryG(void) { * RETURN : VEHICLESENS_EQ : No data change * VEHICLESENS_NEQ : Data change ******************************************************************************/ -//u_int8 VehicleSensSetGps_CWORD82_FullBinaryG(const SENSOR_MSG_GPSDATA_DAT *pst_data) { -// u_int8 uc_ret; -// VEHICLESENS_DATA_MASTER_GPS_FORMAT *pst_master; -// VehicleSensSetGpsVersion(pst_data); /* Pass the _CWORD82_ binary */ -// -// pst_master = &gstGps_CWORD82_FullBinary_g; -// -// /* Compare data master and received data */ -// uc_ret = VehicleSensmemcmp(pst_master->uc_data, pst_data->uc_data, pst_data->us_size); -// -// /* Received data is set in the data master. */ -// pst_master->ul_did = pst_data->ul_did; -// pst_master->us_size = pst_data->us_size; -// pst_master->uc_rcvflag = VEHICLE_RCVFLAG_ON; -// memcpy(pst_master->uc_data, pst_data->uc_data, pst_data->us_size); -// -// return(uc_ret); -//} +u_int8 VehicleSensSetGps_CWORD82_FullBinaryG(const SENSOR_MSG_GPSDATA_DAT *pst_data) { + u_int8 uc_ret; + VEHICLESENS_DATA_MASTER_GPS_FORMAT *pst_master; + VehicleSensSetGpsVersion(pst_data); /* Pass the _CWORD82_ binary */ + + pst_master = &gstGps_CWORD82_FullBinary_g; + + /* Compare data master and received data */ + uc_ret = VehicleSensmemcmp(pst_master->uc_data, pst_data->uc_data, pst_data->us_size); + + /* Received data is set in the data master. */ + pst_master->ul_did = pst_data->ul_did; + pst_master->us_size = pst_data->us_size; + pst_master->uc_rcvflag = VEHICLE_RCVFLAG_ON; + memcpy(pst_master->uc_data, pst_data->uc_data, pst_data->us_size); + + return(uc_ret); +} /******************************************************************************* * MODULE : VehicleSensGetGps_CWORD82_FullBinaryG @@ -86,14 +86,14 @@ void VehicleSensInitGps_CWORD82_FullBinaryG(void) { * NOTE : * RETURN : void ******************************************************************************/ -//void VehicleSensGetGps_CWORD82_FullBinaryG(SENSOR_MSG_GPSDATA_DAT *pst_data) { -// const VEHICLESENS_DATA_MASTER_GPS_FORMAT *pst_master; -// -// pst_master = &gstGps_CWORD82_FullBinary_g; -// -// /* Store the data master in the specified destination. */ -// pst_data->ul_did = pst_master->ul_did; -// pst_data->us_size = pst_master->us_size; -// pst_data->uc_rcv_flag = pst_master->uc_rcvflag; -// memcpy(pst_data->uc_data, pst_master->uc_data, pst_master->us_size); /* Ignore->MISRA-C++:2008 Rule 5-0-5 */ -//} +void VehicleSensGetGps_CWORD82_FullBinaryG(SENSOR_MSG_GPSDATA_DAT *pst_data) { + const VEHICLESENS_DATA_MASTER_GPS_FORMAT *pst_master; + + pst_master = &gstGps_CWORD82_FullBinary_g; + + /* Store the data master in the specified destination. */ + pst_data->ul_did = pst_master->ul_did; + pst_data->us_size = pst_master->us_size; + pst_data->uc_rcv_flag = pst_master->uc_rcvflag; + memcpy(pst_data->uc_data, pst_master->uc_data, pst_master->us_size); /* Ignore->MISRA-C++:2008 Rule 5-0-5 */ +} diff --git a/positioning/server/src/Sensor/VehicleSens_Did_Gps_CWORD82_Nmea_g.cpp b/positioning/server/src/Sensor/VehicleSens_Did_Gps_CWORD82_Nmea_g.cpp index 33752445..9f690543 100644 --- a/positioning/server/src/Sensor/VehicleSens_Did_Gps_CWORD82_Nmea_g.cpp +++ b/positioning/server/src/Sensor/VehicleSens_Did_Gps_CWORD82_Nmea_g.cpp @@ -1,5 +1,5 @@ /* - * @copyright Copyright (c) 2016-2019 TOYOTA MOTOR CORPORATION. + * @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. @@ -26,7 +26,7 @@ #include #include "VehicleSens_DataMaster.h" -//#include "gps_hal.h" +#include "gps_hal.h" /*************************************************/ /* Global variable */ @@ -63,23 +63,23 @@ void VehicleSensInitGps_CWORD82_NmeaG(void) { * RETURN : VEHICLESENS_EQ : No data change * VEHICLESENS_NEQ : Data change *******************************************************************************/ -//u_int8 VehicleSensSetGps_CWORD82_NmeaG(const SENSOR_MSG_GPSDATA_DAT *pst_data) { -// u_int8 uc_ret; -// VEHICLESENS_DATA_MASTER_GPS_FORMAT *pst_master; -// -// pst_master = &gstGps_CWORD82_Nmea_g; -// -// /* Compare data master and received data */ -// uc_ret = VehicleSensmemcmp(pst_master->uc_data, pst_data->uc_data, pst_data->us_size); -// -// /* Received data is set in the data master. */ -// pst_master->ul_did = pst_data->ul_did; -// pst_master->us_size = pst_data->us_size; -// pst_master->uc_rcvflag = VEHICLE_RCVFLAG_ON; -// memcpy(pst_master->uc_data, pst_data->uc_data, pst_data->us_size); -// -// return(uc_ret); -//} +u_int8 VehicleSensSetGps_CWORD82_NmeaG(const SENSOR_MSG_GPSDATA_DAT *pst_data) { + u_int8 uc_ret; + VEHICLESENS_DATA_MASTER_GPS_FORMAT *pst_master; + + pst_master = &gstGps_CWORD82_Nmea_g; + + /* Compare data master and received data */ + uc_ret = VehicleSensmemcmp(pst_master->uc_data, pst_data->uc_data, pst_data->us_size); + + /* Received data is set in the data master. */ + pst_master->ul_did = pst_data->ul_did; + pst_master->us_size = pst_data->us_size; + pst_master->uc_rcvflag = VEHICLE_RCVFLAG_ON; + memcpy(pst_master->uc_data, pst_data->uc_data, pst_data->us_size); + + return(uc_ret); +} /******************************************************************************* * MODULE : VehicleSensGetGps_CWORD82_NmeaG @@ -89,14 +89,14 @@ void VehicleSensInitGps_CWORD82_NmeaG(void) { * NOTE : * RETURN : void ******************************************************************************/ -//void VehicleSensGetGps_CWORD82_NmeaG(SENSOR_MSG_GPSDATA_DAT *pst_data) { -// const VEHICLESENS_DATA_MASTER_GPS_FORMAT *pst_master; -// -// pst_master = &gstGps_CWORD82_Nmea_g; -// -// /* Store the data master in the specified destination. */ -// pst_data->ul_did = pst_master->ul_did; -// pst_data->us_size = pst_master->us_size; -// pst_data->uc_rcv_flag = pst_master->uc_rcvflag; -// memcpy(pst_data->uc_data, pst_master->uc_data, pst_master->us_size); /* Ignore->MISRA-C++:2008 Rule 5-0-5 */ -//} +void VehicleSensGetGps_CWORD82_NmeaG(SENSOR_MSG_GPSDATA_DAT *pst_data) { + const VEHICLESENS_DATA_MASTER_GPS_FORMAT *pst_master; + + pst_master = &gstGps_CWORD82_Nmea_g; + + /* Store the data master in the specified destination. */ + pst_data->ul_did = pst_master->ul_did; + pst_data->us_size = pst_master->us_size; + pst_data->uc_rcv_flag = pst_master->uc_rcvflag; + memcpy(pst_data->uc_data, pst_master->uc_data, pst_master->us_size); /* Ignore->MISRA-C++:2008 Rule 5-0-5 */ +} diff --git a/positioning/server/src/Sensor/VehicleSens_Did_Gps_CWORD82__CWORD44_Gp4_g.cpp b/positioning/server/src/Sensor/VehicleSens_Did_Gps_CWORD82__CWORD44_Gp4_g.cpp index 5120479e..4ce86782 100644 --- a/positioning/server/src/Sensor/VehicleSens_Did_Gps_CWORD82__CWORD44_Gp4_g.cpp +++ b/positioning/server/src/Sensor/VehicleSens_Did_Gps_CWORD82__CWORD44_Gp4_g.cpp @@ -1,5 +1,5 @@ /* - * @copyright Copyright (c) 2016-2019 TOYOTA MOTOR CORPORATION. + * @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. @@ -26,7 +26,7 @@ #include #include "VehicleSens_DataMaster.h" -//#include "gps_hal.h" +#include "gps_hal.h" /*************************************************/ /* Global variable */ @@ -43,7 +43,7 @@ static VEHICLESENS_DATA_MASTER_GPS_FORMAT gstGps_CWORD82__CWORD44_Gp4_g; // ******************************************************************************/ void VehicleSensInitGps_CWORD82__CWORD44_Gp4G(void) { memset(&gstGps_CWORD82__CWORD44_Gp4_g, 0x00, sizeof(VEHICLESENS_DATA_MASTER_GPS_FORMAT)); -// gstGps_CWORD82__CWORD44_Gp4_g.ul_did = POSHAL_DID_GPS__CWORD82___CWORD44_GP4; + gstGps_CWORD82__CWORD44_Gp4_g.ul_did = POSHAL_DID_GPS__CWORD82___CWORD44_GP4; /* Initialize with _CWORD82_ only and size fixed VEHICLE_DSIZE_GPS_NMEA_PJRDC_GP_4 */ /* GPS antenna connection information(1byte) + Sensor Counter(1byte) + VEHICLE_DSIZE_GPS_NMEA_PJRDC_GP_4 */ gstGps_CWORD82__CWORD44_Gp4_g.us_size = (VEHICLE_DSIZE_GPS_ANTENNA + VEHICLE_DSIZE_SNS_COUNTER) \ @@ -59,24 +59,24 @@ void VehicleSensInitGps_CWORD82__CWORD44_Gp4G(void) { * RETURN : VEHICLESENS_EQ : No data change * VEHICLESENS_NEQ : Data change *******************************************************************************/ -//u_int8 VehicleSensSetGps_CWORD82__CWORD44_Gp4G(const SENSOR_MSG_GPSDATA_DAT *pst_data) { // LCOV_EXCL_START 8: dead code -// AGL_ASSERT_NOT_TESTED(); // LCOV_EXCL_LINE 200: test assert -// u_int8 uc_ret; -// VEHICLESENS_DATA_MASTER_GPS_FORMAT *pst_master; -// -// pst_master = &gstGps_CWORD82__CWORD44_Gp4_g; -// -// /* Compare data master and received data */ -// uc_ret = VehicleSensmemcmp(pst_master->uc_data, pst_data->uc_data, pst_data->us_size); -// -// /* Received data is set in the data master. */ -// pst_master->ul_did = pst_data->ul_did; -// pst_master->us_size = (u_int8)pst_data->us_size; -// pst_master->uc_rcvflag = VEHICLE_RCVFLAG_ON; -// memcpy(pst_master->uc_data, pst_data->uc_data, pst_data->us_size); -// -// return(uc_ret); -//} +u_int8 VehicleSensSetGps_CWORD82__CWORD44_Gp4G(const SENSOR_MSG_GPSDATA_DAT *pst_data) { // LCOV_EXCL_START 8: dead code + AGL_ASSERT_NOT_TESTED(); // LCOV_EXCL_LINE 200: test assert + u_int8 uc_ret; + VEHICLESENS_DATA_MASTER_GPS_FORMAT *pst_master; + + pst_master = &gstGps_CWORD82__CWORD44_Gp4_g; + + /* Compare data master and received data */ + uc_ret = VehicleSensmemcmp(pst_master->uc_data, pst_data->uc_data, pst_data->us_size); + + /* Received data is set in the data master. */ + pst_master->ul_did = pst_data->ul_did; + pst_master->us_size = (u_int8)pst_data->us_size; + pst_master->uc_rcvflag = VEHICLE_RCVFLAG_ON; + memcpy(pst_master->uc_data, pst_data->uc_data, pst_data->us_size); + + return(uc_ret); +} /******************************************************************************* * MODULE : VehicleSensGetGps_CWORD82__CWORD44_Gp4G @@ -86,16 +86,16 @@ void VehicleSensInitGps_CWORD82__CWORD44_Gp4G(void) { * NOTE : * RETURN : void ******************************************************************************/ -//void VehicleSensGetGps_CWORD82__CWORD44_Gp4G(SENSOR_MSG_GPSDATA_DAT *pst_data) { -// AGL_ASSERT_NOT_TESTED(); // LCOV_EXCL_LINE 200: test assert -// const VEHICLESENS_DATA_MASTER_GPS_FORMAT *pst_master; -// -// pst_master = &gstGps_CWORD82__CWORD44_Gp4_g; -// -// /* Store the data master in the specified destination. */ -// pst_data->ul_did = pst_master->ul_did; -// pst_data->us_size = pst_master->us_size; -// pst_data->uc_rcv_flag = pst_master->uc_rcvflag; -// memcpy(pst_data->uc_data, pst_master->uc_data, pst_master->us_size); /* Ignore->MISRA-C++:2008 Rule 5-0-5 */ -//} +void VehicleSensGetGps_CWORD82__CWORD44_Gp4G(SENSOR_MSG_GPSDATA_DAT *pst_data) { + AGL_ASSERT_NOT_TESTED(); // LCOV_EXCL_LINE 200: test assert + const VEHICLESENS_DATA_MASTER_GPS_FORMAT *pst_master; + + pst_master = &gstGps_CWORD82__CWORD44_Gp4_g; + + /* Store the data master in the specified destination. */ + pst_data->ul_did = pst_master->ul_did; + pst_data->us_size = pst_master->us_size; + pst_data->uc_rcv_flag = pst_master->uc_rcvflag; + memcpy(pst_data->uc_data, pst_master->uc_data, pst_master->us_size); /* Ignore->MISRA-C++:2008 Rule 5-0-5 */ +} // LCOV_EXCL_STOP diff --git a/positioning/server/src/Sensor/VehicleSens_Did_GsnsX.cpp b/positioning/server/src/Sensor/VehicleSens_Did_GsnsX.cpp index c7323de8..e68edc68 100644 --- a/positioning/server/src/Sensor/VehicleSens_Did_GsnsX.cpp +++ b/positioning/server/src/Sensor/VehicleSens_Did_GsnsX.cpp @@ -1,5 +1,5 @@ /* - * @copyright Copyright (c) 2016-2019 TOYOTA MOTOR CORPORATION. + * @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. @@ -98,22 +98,22 @@ void VehicleSensGetGsnsXExt(VEHICLESENS_DATA_MASTER_EXT *pst_data, u_int8 uc_get * @param[in] *pst_data: Pointer to the data master acquisition destination * @param[in] uc_get_method: Acquisition method(Direct Line or CAN) */ -//void VehicleSensGetGsnsXFst(VEHICLESENS_DATA_MASTER_FST *pst_data, u_int8 uc_get_method) { -// switch (uc_get_method) { // LCOV_EXCL_BR_LINE 6:VEHICLESENS_GETMETHOD_CAN cannot to pass in -// case VEHICLESENS_GETMETHOD_CAN: -// { -// /* When acquiring from CAN data */ -// AGL_ASSERT_NOT_TESTED(); // LCOV_EXCL_LINE 200: test assert -// break; // LCOV_EXCL_LINE 8: dead code -// } -// case VEHICLESENS_GETMETHOD_LINE: -// { -// /* To acquire from LineSensor */ -// VehicleSensGetGsnsXFstl(pst_data); -// break; -// } -// default: -// break; -// } -//} +void VehicleSensGetGsnsXFst(VEHICLESENS_DATA_MASTER_FST *pst_data, u_int8 uc_get_method) { + switch (uc_get_method) { // LCOV_EXCL_BR_LINE 6:VEHICLESENS_GETMETHOD_CAN cannot to pass in + case VEHICLESENS_GETMETHOD_CAN: + { + /* When acquiring from CAN data */ + AGL_ASSERT_NOT_TESTED(); // LCOV_EXCL_LINE 200: test assert + break; // LCOV_EXCL_LINE 8: dead code + } + case VEHICLESENS_GETMETHOD_LINE: + { + /* To acquire from LineSensor */ + VehicleSensGetGsnsXFstl(pst_data); + break; + } + default: + break; + } +} diff --git a/positioning/server/src/Sensor/VehicleSens_Did_GsnsXExt_l.cpp b/positioning/server/src/Sensor/VehicleSens_Did_GsnsXExt_l.cpp index 4fc8e9cd..4a481bb5 100644 --- a/positioning/server/src/Sensor/VehicleSens_Did_GsnsXExt_l.cpp +++ b/positioning/server/src/Sensor/VehicleSens_Did_GsnsXExt_l.cpp @@ -1,5 +1,5 @@ /* - * @copyright Copyright (c) 2016-2019 TOYOTA MOTOR CORPORATION. + * @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. @@ -44,7 +44,7 @@ static VEHICLESENS_DATA_MASTER_EXT gstGsnsXExt_l; // NOLINT(readability/nol ******************************************************************************/ void VehicleSensInitGsnsXExtl(void) { memset(&gstGsnsXExt_l, 0x00, sizeof(VEHICLESENS_DATA_MASTER_EXT)); -// gstGsnsXExt_l.ul_did = POSHAL_DID_GSNS_X; + gstGsnsXExt_l.ul_did = POSHAL_DID_GSNS_X; gstGsnsXExt_l.us_size = VEHICLE_DSIZE_GSNS_X_EXT_INIT; gstGsnsXExt_l.uc_rcvflag = VEHICLE_RCVFLAG_OFF; } @@ -57,43 +57,43 @@ void VehicleSensInitGsnsXExtl(void) { * * @param[in] *pst_data : Pointer to the message data received by the direct line */ -//void VehicleSensSetGsnsXExtlG(const LSDRV_LSDATA_G *pst_data) { -// VEHICLESENS_DATA_MASTER_EXT *pst_master; -// u_int16 us_start = 0; -// u_int16 us_size = 0; -// u_int16 us_cnt = 0; -// -// pst_master = &gstGsnsXExt_l; -// us_size = static_cast(sizeof(u_int16) * 10); /* Size of one data item: 2byte * 10 data items */ -// -// /* Store the latest one in the internal data structure */ -// us_start = gstPkgTempExt.start_point[3]; /* Location to store one received message */ -// /* Stored in data master(Order of reception)*/ -// if (us_start >= VEHICLE_DKEEP_MAX) { -// /* Store the latest one at position 0 */ -// us_start = VEHICLE_DATA_POS_00; -// /* If you are discarding old data,,Set a flag */ -// gstPkgTempExt.data_break = VEHICLE_SNS_BREAK; -// } -// pst_master->ul_did = pst_data->ul_did; -// pst_master->uc_rcvflag = VEHICLE_RCVFLAG_ON; -// for (us_cnt = 0; us_cnt < us_size; us_cnt++) { -// pst_master->uc_data[us_start * us_size + us_cnt] = (u_int8)(pst_data->uc_data[us_cnt]); -// } -// -// /* Update next storage start position and latest data storage position */ -// us_start++; -// gstPkgTempExt.start_point[3] = us_start; -// -// /* Update data master size */ -// if (gstPkgTempExt.data_break == VEHICLE_SNS_BREAK) { -// /* Make the size of all extended data masters */ -// pst_master->us_size = VEHICLE_DSIZE_GSNS_X_EXT; -// } else { -// /* Add the size of one received data item */ -// pst_master->us_size = static_cast(pst_master->us_size + us_size); -// } -//} +void VehicleSensSetGsnsXExtlG(const LSDRV_LSDATA_G *pst_data) { + VEHICLESENS_DATA_MASTER_EXT *pst_master; + u_int16 us_start = 0; + u_int16 us_size = 0; + u_int16 us_cnt = 0; + + pst_master = &gstGsnsXExt_l; + us_size = static_cast(sizeof(u_int16) * 10); /* Size of one data item: 2byte * 10 data items */ + + /* Store the latest one in the internal data structure */ + us_start = gstPkgTempExt.start_point[GsnsX]; /* Location to store one received message */ + /* Stored in data master(Order of reception)*/ + if (us_start >= VEHICLE_DKEEP_MAX) { + /* Store the latest one at position 0 */ + us_start = VEHICLE_DATA_POS_00; + /* If you are discarding old data,,Set a flag */ + gstPkgTempExt.data_break = VEHICLE_SNS_BREAK; + } + pst_master->ul_did = pst_data->ul_did; + pst_master->uc_rcvflag = VEHICLE_RCVFLAG_ON; + for (us_cnt = 0; us_cnt < us_size; us_cnt++) { + pst_master->uc_data[us_start * us_size + us_cnt] = (u_int8)(pst_data->uc_data[us_cnt]); + } + + /* Update next storage start position and latest data storage position */ + us_start++; + gstPkgTempExt.start_point[GsnsX] = us_start; + + /* Update data master size */ + if (gstPkgTempExt.data_break == VEHICLE_SNS_BREAK) { + /* Make the size of all extended data masters */ + pst_master->us_size = VEHICLE_DSIZE_GSNS_X_EXT; + } else { + /* Add the size of one received data item */ + pst_master->us_size = static_cast(pst_master->us_size + us_size); + } +} /******************************************************************************* * MODULE : VehicleSensGetGsnsXExtl @@ -104,46 +104,42 @@ void VehicleSensInitGsnsXExtl(void) { * RETURN : void ******************************************************************************/ void VehicleSensGetGsnsXExtl(VEHICLESENS_DATA_MASTER_EXT *pst_data) { - const VEHICLESENS_DATA_MASTER_EXT *pst_master; - u_int16 us_size = 0; - u_int16 us_data_cnt = 0; - u_int16 us_cnt = 0; - u_int16 us_loop_cnt = 0; + const VEHICLESENS_DATA_MASTER_EXT *pst_master; + uint16_t us_size = 0; + uint16_t us_data_cnt = 0; // Number of data contained + uint16_t us_loop_cnt = 0; // 64 over index + + /* Store the data master in the specified destination. */ + pst_master = &gstGsnsXExt_l; + pst_data->ul_did = pst_master->ul_did; + pst_data->us_size = pst_master->us_size; + pst_data->uc_rcvflag = pst_master->uc_rcvflag; - /* Store the data master in the specified destination. */ - pst_master = &gstGsnsXExt_l; - pst_data->ul_did = pst_master->ul_did; - pst_data->us_size = pst_master->us_size; - pst_data->uc_rcvflag = pst_master->uc_rcvflag; + us_size = static_cast(sizeof(u_int16) * 10); /* Size of one data item: 2byte * 10 data items */ - us_size = static_cast(sizeof(u_int16) * 10); /* Size of one data item: 2byte * 10 data items */ + /* Checking whether the number of stored entries is looped */ + if (gstPkgTempExt.data_break == VEHICLE_SNS_BREAK) { + us_data_cnt = VEHICLE_DKEEP_MAX; + } else { + us_data_cnt = gstPkgTempExt.start_point[GsnsX]; + } - /* Checking whether the number of stored entries is looped */ + /* Acquire data from the oldest data master */ + for (uint16_t us_cnt = 0; us_cnt < us_data_cnt; us_cnt++) { if (gstPkgTempExt.data_break == VEHICLE_SNS_BREAK) { - us_data_cnt = VEHICLE_DKEEP_MAX; + /* Get information before loop */ + if (gstPkgTempExt.start_point[GsnsX] + us_cnt < VEHICLE_DKEEP_MAX) { + memcpy(&pst_data->uc_data[us_cnt * us_size], + &pst_master->uc_data[(gstPkgTempExt.start_point[GsnsX] + us_cnt) * us_size], us_size); + } else { + memcpy(&pst_data->uc_data[us_cnt * us_size], + &pst_master->uc_data[us_loop_cnt * us_size], us_size); + us_loop_cnt++; + } } else { - us_data_cnt = gstPkgTempExt.start_point[3]; - } - - /* Acquire data from the newest data master */ - us_loop_cnt = 0; - for (us_cnt = 0; us_cnt < us_data_cnt; us_cnt++) { - if (gstPkgTempExt.data_break == VEHICLE_SNS_BREAK) { - /* Get information after loop */ - if (gstPkgTempExt.start_point[3] > us_cnt) { - memcpy(&pst_data->uc_data[us_cnt * us_size], - &pst_master->uc_data[(gstPkgTempExt.start_point[3] - us_cnt - 1) * us_size], us_size); - us_loop_cnt++; - } else { - memcpy(&pst_data->uc_data[us_cnt * us_size], - &pst_master->uc_data[(us_data_cnt - us_cnt - 1 + us_loop_cnt) * us_size], us_size); - } - } else { - if ((u_int32)(us_data_cnt - us_cnt) <= (u_int32)VEHICLE_DKEEP_MAX) { // LCOV_EXCL_BR_LINE 6: always true - memcpy(&pst_data->uc_data[us_cnt * us_size], - &pst_master->uc_data[(us_data_cnt - us_cnt - 1) * us_size], us_size); - } - } + memcpy(&pst_data->uc_data[us_cnt * us_size], + &pst_master->uc_data[us_cnt * us_size], us_size); } + } } #endif diff --git a/positioning/server/src/Sensor/VehicleSens_Did_GsnsXFst_l.cpp b/positioning/server/src/Sensor/VehicleSens_Did_GsnsXFst_l.cpp index f7150cc9..61ee9909 100644 --- a/positioning/server/src/Sensor/VehicleSens_Did_GsnsXFst_l.cpp +++ b/positioning/server/src/Sensor/VehicleSens_Did_GsnsXFst_l.cpp @@ -1,5 +1,5 @@ /* - * @copyright Copyright (c) 2016-2019 TOYOTA MOTOR CORPORATION. + * @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. @@ -27,7 +27,7 @@ /*************************************************/ /* Global variable */ /*************************************************/ -//static VEHICLESENS_DATA_MASTER_FST g_st_gsnsx_fst_l; // NOLINT(readability/nolint) +static VEHICLESENS_DATA_MASTER_FST g_st_gsnsx_fst_l; // NOLINT(readability/nolint) /** * @brief @@ -36,11 +36,11 @@ * GSNS_X data master initialization processing */ void VehicleSensInitGsnsXFstl(void) { -// memset(&g_st_gsnsx_fst_l, 0x00, sizeof(VEHICLESENS_DATA_MASTER_FST)); -// g_st_gsnsx_fst_l.ul_did = POSHAL_DID_GSNS_X_FST; -// g_st_gsnsx_fst_l.us_size = VEHICLE_DSIZE_GSNS_X_EXT_INIT; -// g_st_gsnsx_fst_l.uc_rcvflag = VEHICLE_RCVFLAG_OFF; -// g_st_gsnsx_fst_l.partition_flg = 0; + memset(&g_st_gsnsx_fst_l, 0x00, sizeof(VEHICLESENS_DATA_MASTER_FST)); + g_st_gsnsx_fst_l.ul_did = POSHAL_DID_GSNS_X_FST; + g_st_gsnsx_fst_l.us_size = VEHICLE_DSIZE_GSNS_X_EXT_INIT; + g_st_gsnsx_fst_l.uc_rcvflag = VEHICLE_RCVFLAG_OFF; + g_st_gsnsx_fst_l.partition_flg = 0; } /** @@ -54,56 +54,56 @@ void VehicleSensInitGsnsXFstl(void) { * @return VEHICLESENS_EQ No data change
* VEHICLESENS_NEQ Data change */ -//u_int8 VehicleSensSetGsnsXFstG(const LSDRV_LSDATA_FST_GSENSOR_X *pst_data) { -// static u_int8 uc_ret = VEHICLESENS_EQ; -// VEHICLESENS_DATA_MASTER_FST *pst_master; -// -// u_int8 partition_max; /* Total number of partitions */ -// u_int8 partition_num; /* Data number */ -// -// pst_master = &g_st_gsnsx_fst_l; -// -// partition_max = pst_data->uc_partition_max; -// partition_num = pst_data->uc_partition_num; -// -// if (partition_max == 1) { -// /* Compare data master and received data */ -// uc_ret = VehicleSensmemcmp(pst_master->uc_data, pst_data->uc_data, pst_data->uc_size); -// -// /* Received data is set in the data master. */ -// pst_master->ul_did = pst_data->ul_did; -// pst_master->us_size = pst_data->uc_size; -// pst_master->uc_rcvflag = VEHICLE_RCVFLAG_ON; -// pst_master->partition_flg = 0; -// memset(pst_master->uc_data, 0x00, sizeof(pst_master->uc_data)); -// memcpy(pst_master->uc_data, pst_data->uc_data, pst_data->uc_size); -// } else if (partition_max == 2) { -// if (partition_num == 1) { -// /* Compare data master and received data */ -// uc_ret = VehicleSensmemcmp(pst_master->uc_data, pst_data->uc_data, pst_data->uc_size); -// -// /* Received data is set in the data master. */ -// pst_master->ul_did = pst_data->ul_did; -// pst_master->us_size = static_cast(pst_master->us_size + pst_data->uc_size); -// pst_master->partition_flg = 1; -// memcpy(pst_master->uc_data, pst_data->uc_data, pst_data->uc_size); -// } else if (partition_num == 2) { -// /* Compare data master and received data */ -// if (uc_ret == VEHICLESENS_EQ) { -// uc_ret = VehicleSensmemcmp(&pst_master->uc_data[VEHICLE_DSIZE_GSNSX_FST], -// pst_data->uc_data, pst_data->uc_size); -// } -// -// /* Received data is set in the data master. */ -// pst_master->ul_did = pst_data->ul_did; -// pst_master->us_size = static_cast(pst_master->us_size + pst_data->uc_size); -// pst_master->uc_rcvflag = VEHICLE_RCVFLAG_ON; -// pst_master->partition_flg = 1; -// memcpy(&pst_master->uc_data[VEHICLE_DSIZE_GSNSX_FST], pst_data->uc_data, pst_data->uc_size); -// } else { } -// } else { } -// return(uc_ret); -//} +u_int8 VehicleSensSetGsnsXFstG(const LSDRV_LSDATA_FST_GSENSOR_X *pst_data) { + static u_int8 uc_ret = VEHICLESENS_EQ; + VEHICLESENS_DATA_MASTER_FST *pst_master; + + u_int8 partition_max; /* Total number of partitions */ + u_int8 partition_num; /* Data number */ + + pst_master = &g_st_gsnsx_fst_l; + + partition_max = pst_data->uc_partition_max; + partition_num = pst_data->uc_partition_num; + + if (partition_max == 1) { + /* Compare data master and received data */ + uc_ret = VehicleSensmemcmp(pst_master->uc_data, pst_data->uc_data, pst_data->uc_size); + + /* Received data is set in the data master. */ + pst_master->ul_did = pst_data->ul_did; + pst_master->us_size = pst_data->uc_size; + pst_master->uc_rcvflag = VEHICLE_RCVFLAG_ON; + pst_master->partition_flg = 0; + memset(pst_master->uc_data, 0x00, sizeof(pst_master->uc_data)); + memcpy(pst_master->uc_data, pst_data->uc_data, pst_data->uc_size); + } else if (partition_max == 2) { + if (partition_num == 1) { + /* Compare data master and received data */ + uc_ret = VehicleSensmemcmp(pst_master->uc_data, pst_data->uc_data, pst_data->uc_size); + + /* Received data is set in the data master. */ + pst_master->ul_did = pst_data->ul_did; + pst_master->us_size = static_cast(pst_master->us_size + pst_data->uc_size); + pst_master->partition_flg = 1; + memcpy(pst_master->uc_data, pst_data->uc_data, pst_data->uc_size); + } else if (partition_num == 2) { + /* Compare data master and received data */ + if (uc_ret == VEHICLESENS_EQ) { + uc_ret = VehicleSensmemcmp(&pst_master->uc_data[VEHICLE_DSIZE_GSNSX_FST], + pst_data->uc_data, pst_data->uc_size); + } + + /* Received data is set in the data master. */ + pst_master->ul_did = pst_data->ul_did; + pst_master->us_size = static_cast(pst_master->us_size + pst_data->uc_size); + pst_master->uc_rcvflag = VEHICLE_RCVFLAG_ON; + pst_master->partition_flg = 1; + memcpy(&pst_master->uc_data[VEHICLE_DSIZE_GSNSX_FST], pst_data->uc_data, pst_data->uc_size); + } else { } + } else { } + return(uc_ret); +} /** * @brief @@ -113,15 +113,15 @@ void VehicleSensInitGsnsXFstl(void) { * * @param[in] Pointer to the data master acquisition destination */ -//void VehicleSensGetGsnsXFstl(VEHICLESENS_DATA_MASTER_FST *pst_data) { -// const VEHICLESENS_DATA_MASTER_FST *pst_master; -// -// pst_master = &g_st_gsnsx_fst_l; -// -// /* Store the data master in the specified destination. */ -// pst_data->ul_did = pst_master->ul_did; -// pst_data->us_size = pst_master->us_size; -// pst_data->uc_rcvflag = pst_master->uc_rcvflag; -// pst_data->partition_flg = pst_master->partition_flg; -// memcpy(pst_data->uc_data, pst_master->uc_data, pst_master->us_size); -//} +void VehicleSensGetGsnsXFstl(VEHICLESENS_DATA_MASTER_FST *pst_data) { + const VEHICLESENS_DATA_MASTER_FST *pst_master; + + pst_master = &g_st_gsnsx_fst_l; + + /* Store the data master in the specified destination. */ + pst_data->ul_did = pst_master->ul_did; + pst_data->us_size = pst_master->us_size; + pst_data->uc_rcvflag = pst_master->uc_rcvflag; + pst_data->partition_flg = pst_master->partition_flg; + memcpy(pst_data->uc_data, pst_master->uc_data, pst_master->us_size); +} diff --git a/positioning/server/src/Sensor/VehicleSens_Did_GsnsX_l.cpp b/positioning/server/src/Sensor/VehicleSens_Did_GsnsX_l.cpp index 4d1fb6b4..90d16ce8 100644 --- a/positioning/server/src/Sensor/VehicleSens_Did_GsnsX_l.cpp +++ b/positioning/server/src/Sensor/VehicleSens_Did_GsnsX_l.cpp @@ -1,5 +1,5 @@ /* - * @copyright Copyright (c) 2016-2019 TOYOTA MOTOR CORPORATION. + * @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. @@ -42,7 +42,7 @@ static VEHICLESENS_DATA_MASTER gstGsnsX_l; // NOLINT(readability/nolint) ******************************************************************************/ void VehicleSensInitGsnsXl(void) { memset(&gstGsnsX_l, 0x00, sizeof(VEHICLESENS_DATA_MASTER)); -// gstGsnsX_l.ul_did = POSHAL_DID_GSNS_X; + gstGsnsX_l.ul_did = POSHAL_DID_GSNS_X; gstGsnsX_l.us_size = VEHICLE_DSIZE_GSNS_X; gstGsnsX_l.uc_rcvflag = VEHICLE_RCVFLAG_OFF; } @@ -58,24 +58,24 @@ void VehicleSensInitGsnsXl(void) { * @return VEHICLESENS_EQ No data change
* VEHICLESENS_NEQ Data change */ -//u_int8 VehicleSensSetGsnsXlG(const LSDRV_LSDATA_G *pst_data) { -// u_int8 uc_ret; -// VEHICLESENS_DATA_MASTER *pst_master; -// -// pst_master = &gstGsnsX_l; -// -// /* Compare data master and received data */ -// uc_ret = VehicleSensmemcmp(pst_master->uc_data, pst_data->uc_data, pst_data->uc_size); -// -// /* Received data is set in the data master. */ -// pst_master->ul_did = pst_data->ul_did; -// pst_master->us_size = pst_data->uc_size; -// pst_master->uc_rcvflag = VEHICLE_RCVFLAG_ON; -// (void)memcpy(reinterpret_cast(pst_master->uc_data), -// (const void *)(pst_data->uc_data), (size_t)(pst_data->uc_size)); -// -// return(uc_ret); -//} +u_int8 VehicleSensSetGsnsXlG(const LSDRV_LSDATA_G *pst_data) { + u_int8 uc_ret; + VEHICLESENS_DATA_MASTER *pst_master; + + pst_master = &gstGsnsX_l; + + /* Compare data master and received data */ + uc_ret = VehicleSensmemcmp(pst_master->uc_data, pst_data->uc_data, pst_data->uc_size); + + /* Received data is set in the data master. */ + pst_master->ul_did = pst_data->ul_did; + pst_master->us_size = pst_data->uc_size; + pst_master->uc_rcvflag = VEHICLE_RCVFLAG_ON; + (void)memcpy(reinterpret_cast(pst_master->uc_data), + (const void *)(pst_data->uc_data), (size_t)(pst_data->uc_size)); + + return(uc_ret); +} /******************************************************************************* * MODULE : VehicleSensGetGsnsXl diff --git a/positioning/server/src/Sensor/VehicleSens_Did_GsnsY.cpp b/positioning/server/src/Sensor/VehicleSens_Did_GsnsY.cpp index 3070bc2f..0ab4b675 100644 --- a/positioning/server/src/Sensor/VehicleSens_Did_GsnsY.cpp +++ b/positioning/server/src/Sensor/VehicleSens_Did_GsnsY.cpp @@ -1,5 +1,5 @@ /* - * @copyright Copyright (c) 2016-2019 TOYOTA MOTOR CORPORATION. + * @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. @@ -98,24 +98,24 @@ void VehicleSensGetGsnsYExt(VEHICLESENS_DATA_MASTER_EXT *pst_data, u_int8 uc_get * @param[in] *pst_data: Pointer to the data master acquisition destination * @param[in] uc_get_method: Acquisition method(Direct Line or CAN) */ -//void VehicleSensGetGsnsYFst(VEHICLESENS_DATA_MASTER_FST *pst_data, u_int8 uc_get_method) { -// switch (uc_get_method) { // LCOV_EXCL_BR_LINE 6:VEHICLESENS_GETMETHOD_CAN cannot to pass in -// case VEHICLESENS_GETMETHOD_CAN: -// { -// /* When acquiring from CAN data */ -// AGL_ASSERT_NOT_TESTED(); // LCOV_EXCL_LINE 200: test assert -// break; // LCOV_EXCL_LINE 8: dead code -// } -// -// case VEHICLESENS_GETMETHOD_LINE: -// { -// /* To acquire from LineSensor */ -// VehicleSensGetGsnsYFstl(pst_data); -// break; -// } -// -// default: -// break; -// } -//} +void VehicleSensGetGsnsYFst(VEHICLESENS_DATA_MASTER_FST *pst_data, u_int8 uc_get_method) { + switch (uc_get_method) { // LCOV_EXCL_BR_LINE 6:VEHICLESENS_GETMETHOD_CAN cannot to pass in + case VEHICLESENS_GETMETHOD_CAN: + { + /* When acquiring from CAN data */ + AGL_ASSERT_NOT_TESTED(); // LCOV_EXCL_LINE 200: test assert + break; // LCOV_EXCL_LINE 8: dead code + } + + case VEHICLESENS_GETMETHOD_LINE: + { + /* To acquire from LineSensor */ + VehicleSensGetGsnsYFstl(pst_data); + break; + } + + default: + break; + } +} diff --git a/positioning/server/src/Sensor/VehicleSens_Did_GsnsYExt_l.cpp b/positioning/server/src/Sensor/VehicleSens_Did_GsnsYExt_l.cpp index 730b5ab2..947da7f0 100644 --- a/positioning/server/src/Sensor/VehicleSens_Did_GsnsYExt_l.cpp +++ b/positioning/server/src/Sensor/VehicleSens_Did_GsnsYExt_l.cpp @@ -1,5 +1,5 @@ /* - * @copyright Copyright (c) 2016-2019 TOYOTA MOTOR CORPORATION. + * @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. @@ -44,7 +44,7 @@ static VEHICLESENS_DATA_MASTER_EXT gstGsnsYExt_l; // NOLINT(readability/nolin ******************************************************************************/ void VehicleSensInitGsnsYExtl(void) { memset(&gstGsnsYExt_l, 0x00, sizeof(VEHICLESENS_DATA_MASTER_EXT)); -// gstGsnsYExt_l.ul_did = POSHAL_DID_GSNS_Y; + gstGsnsYExt_l.ul_did = POSHAL_DID_GSNS_Y; gstGsnsYExt_l.us_size = VEHICLE_DSIZE_GSNS_Y_EXT_INIT; gstGsnsYExt_l.uc_rcvflag = VEHICLE_RCVFLAG_OFF; } @@ -57,43 +57,43 @@ void VehicleSensInitGsnsYExtl(void) { * * @param[in] *pst_data : Pointer to the message data received by the direct line */ -//void VehicleSensSetGsnsYExtlG(const LSDRV_LSDATA_G *pst_data) { -// VEHICLESENS_DATA_MASTER_EXT *pst_master; -// u_int16 us_start = 0; -// u_int16 us_size = 0; -// u_int16 us_cnt = 0; -// -// pst_master = &gstGsnsYExt_l; -// us_size = static_cast(sizeof(u_int16) * 10); /* Size of one data item: 2byte * 10 data items */ -// -// /* Store the latest one in the internal data structure */ -// us_start = gstPkgTempExt.start_point[4]; /* Location to store one received message */ -// /* Stored in data master(Order of reception)*/ -// if (us_start >= VEHICLE_DKEEP_MAX) { -// /* Store the latest one at position 0 */ -// us_start = VEHICLE_DATA_POS_00; -// /* If you are discarding old data,,Set a flag */ -// gstPkgTempExt.data_break = VEHICLE_SNS_BREAK; -// } -// pst_master->ul_did = pst_data->ul_did; -// pst_master->uc_rcvflag = VEHICLE_RCVFLAG_ON; -// for (us_cnt = 0; us_cnt < us_size; us_cnt++) { -// pst_master->uc_data[us_start * us_size + us_cnt] = (u_int8)(pst_data->uc_data[us_cnt]); -// } -// -// /* Update next storage start position and latest data storage position */ -// us_start++; -// gstPkgTempExt.start_point[4] = us_start; -// -// /* Update data master size */ -// if (gstPkgTempExt.data_break == VEHICLE_SNS_BREAK) { -// /* Make the size of all extended data masters */ -// pst_master->us_size = VEHICLE_DSIZE_GSNS_Y_EXT; -// } else { -// /* Add the size of one received data item */ -// pst_master->us_size = static_cast(pst_master->us_size + us_size); -// } -//} +void VehicleSensSetGsnsYExtlG(const LSDRV_LSDATA_G *pst_data) { + VEHICLESENS_DATA_MASTER_EXT *pst_master; + u_int16 us_start = 0; + u_int16 us_size = 0; + u_int16 us_cnt = 0; + + pst_master = &gstGsnsYExt_l; + us_size = static_cast(sizeof(u_int16) * 10); /* Size of one data item: 2byte * 10 data items */ + + /* Store the latest one in the internal data structure */ + us_start = gstPkgTempExt.start_point[GsnsY]; /* Location to store one received message */ + /* Stored in data master(Order of reception)*/ + if (us_start >= VEHICLE_DKEEP_MAX) { + /* Store the latest one at position 0 */ + us_start = VEHICLE_DATA_POS_00; + /* If you are discarding old data,,Set a flag */ + gstPkgTempExt.data_break = VEHICLE_SNS_BREAK; + } + pst_master->ul_did = pst_data->ul_did; + pst_master->uc_rcvflag = VEHICLE_RCVFLAG_ON; + for (us_cnt = 0; us_cnt < us_size; us_cnt++) { + pst_master->uc_data[us_start * us_size + us_cnt] = (u_int8)(pst_data->uc_data[us_cnt]); + } + + /* Update next storage start position and latest data storage position */ + us_start++; + gstPkgTempExt.start_point[GsnsY] = us_start; + + /* Update data master size */ + if (gstPkgTempExt.data_break == VEHICLE_SNS_BREAK) { + /* Make the size of all extended data masters */ + pst_master->us_size = VEHICLE_DSIZE_GSNS_Y_EXT; + } else { + /* Add the size of one received data item */ + pst_master->us_size = static_cast(pst_master->us_size + us_size); + } +} /******************************************************************************* * MODULE : VehicleSensGetGsnsYExtl @@ -104,46 +104,42 @@ void VehicleSensInitGsnsYExtl(void) { * RETURN : void ******************************************************************************/ void VehicleSensGetGsnsYExtl(VEHICLESENS_DATA_MASTER_EXT *pst_data) { - const VEHICLESENS_DATA_MASTER_EXT *pst_master; - u_int16 us_size = 0; - u_int16 us_data_cnt = 0; - u_int16 us_cnt = 0; - u_int16 us_loop_cnt = 0; + const VEHICLESENS_DATA_MASTER_EXT *pst_master; + uint16_t us_size = 0; + uint16_t us_data_cnt = 0; // Number of data contained + uint16_t us_loop_cnt = 0; // 64 over index + + /* Store the data master in the specified destination. */ + pst_master = &gstGsnsYExt_l; + pst_data->ul_did = pst_master->ul_did; + pst_data->us_size = pst_master->us_size; + pst_data->uc_rcvflag = pst_master->uc_rcvflag; - /* Store the data master in the specified destination. */ - pst_master = &gstGsnsYExt_l; - pst_data->ul_did = pst_master->ul_did; - pst_data->us_size = pst_master->us_size; - pst_data->uc_rcvflag = pst_master->uc_rcvflag; + us_size = static_cast(sizeof(u_int16) * 10); /* Size of one data item: 2byte * 10 data items */ - us_size = static_cast(sizeof(u_int16) * 10); /* Size of one data item: 2byte * 10 data items */ + /* Checking whether the number of stored entries is looped */ + if (gstPkgTempExt.data_break == VEHICLE_SNS_BREAK) { + us_data_cnt = VEHICLE_DKEEP_MAX; + } else { + us_data_cnt = gstPkgTempExt.start_point[GsnsY]; + } - /* Checking whether the number of stored entries is looped */ + /* Acquire data from the oldest data master */ + for (uint16_t us_cnt = 0; us_cnt < us_data_cnt; us_cnt++) { if (gstPkgTempExt.data_break == VEHICLE_SNS_BREAK) { - us_data_cnt = VEHICLE_DKEEP_MAX; + /* Get information before loop */ + if (gstPkgTempExt.start_point[GsnsY] + us_cnt < VEHICLE_DKEEP_MAX) { + memcpy(&pst_data->uc_data[us_cnt * us_size], + &pst_master->uc_data[(gstPkgTempExt.start_point[GsnsY] + us_cnt) * us_size], us_size); + } else { + memcpy(&pst_data->uc_data[us_cnt * us_size], + &pst_master->uc_data[us_loop_cnt * us_size], us_size); + us_loop_cnt++; + } } else { - us_data_cnt = gstPkgTempExt.start_point[4]; - } - - /* Acquire data from the newest data master */ - us_loop_cnt = 0; - for (us_cnt = 0; us_cnt < us_data_cnt; us_cnt++) { - if (gstPkgTempExt.data_break == VEHICLE_SNS_BREAK) { - /* Get information after loop */ - if (gstPkgTempExt.start_point[4] > us_cnt) { - memcpy(&pst_data->uc_data[us_cnt * us_size], - &pst_master->uc_data[(gstPkgTempExt.start_point[4] - us_cnt - 1) * us_size], us_size); - us_loop_cnt++; - } else { - memcpy(&pst_data->uc_data[us_cnt * us_size], - &pst_master->uc_data[(us_data_cnt - us_cnt - 1 + us_loop_cnt) * us_size], us_size); - } - } else { - if ((u_int32)(us_data_cnt - us_cnt) <= (u_int32)VEHICLE_DKEEP_MAX) { // LCOV_EXCL_BR_LINE 6: always true - memcpy(&pst_data->uc_data[us_cnt * us_size], - &pst_master->uc_data[(us_data_cnt - us_cnt - 1) * us_size], us_size); - } - } + memcpy(&pst_data->uc_data[us_cnt * us_size], + &pst_master->uc_data[us_cnt * us_size], us_size); } + } } #endif diff --git a/positioning/server/src/Sensor/VehicleSens_Did_GsnsYFst_l.cpp b/positioning/server/src/Sensor/VehicleSens_Did_GsnsYFst_l.cpp index 8b9f272a..1fc1b920 100644 --- a/positioning/server/src/Sensor/VehicleSens_Did_GsnsYFst_l.cpp +++ b/positioning/server/src/Sensor/VehicleSens_Did_GsnsYFst_l.cpp @@ -1,5 +1,5 @@ /* - * @copyright Copyright (c) 2016-2019 TOYOTA MOTOR CORPORATION. + * @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. @@ -27,7 +27,7 @@ /*************************************************/ /* Global variable */ /*************************************************/ -//static VEHICLESENS_DATA_MASTER_FST g_st_gsnsy_fst_l; // NOLINT(readability/nolint) +static VEHICLESENS_DATA_MASTER_FST g_st_gsnsy_fst_l; // NOLINT(readability/nolint) /** * @brief @@ -36,11 +36,11 @@ * GSNS_Y data master initialization processing */ void VehicleSensInitGsnsYFstl(void) { -// memset(&g_st_gsnsy_fst_l, 0x00, sizeof(VEHICLESENS_DATA_MASTER_FST)); -// g_st_gsnsy_fst_l.ul_did = POSHAL_DID_GSNS_Y_FST; -// g_st_gsnsy_fst_l.us_size = VEHICLE_DSIZE_GSNS_Y_EXT_INIT; -// g_st_gsnsy_fst_l.uc_rcvflag = VEHICLE_RCVFLAG_OFF; -// g_st_gsnsy_fst_l.partition_flg = 0; + memset(&g_st_gsnsy_fst_l, 0x00, sizeof(VEHICLESENS_DATA_MASTER_FST)); + g_st_gsnsy_fst_l.ul_did = POSHAL_DID_GSNS_Y_FST; + g_st_gsnsy_fst_l.us_size = VEHICLE_DSIZE_GSNS_Y_EXT_INIT; + g_st_gsnsy_fst_l.uc_rcvflag = VEHICLE_RCVFLAG_OFF; + g_st_gsnsy_fst_l.partition_flg = 0; } /** @@ -54,57 +54,57 @@ void VehicleSensInitGsnsYFstl(void) { * @return VEHICLESENS_EQ No data change
* VEHICLESENS_NEQ Data change */ -//u_int8 VehicleSensSetGsnsYFstG(const LSDRV_LSDATA_FST_GSENSOR_Y *pst_data) { -// static u_int8 uc_ret = VEHICLESENS_EQ; -// VEHICLESENS_DATA_MASTER_FST *pst_master; -// -// u_int8 partition_max; /* Total number of partitions */ -// u_int8 partition_num; /* Data number */ -// -// pst_master = &g_st_gsnsy_fst_l; -// -// partition_max = pst_data->uc_partition_max; -// partition_num = pst_data->uc_partition_num; -// -// if (partition_max == 1) { -// /* Compare data master and received data */ -// uc_ret = VehicleSensmemcmp(pst_master->uc_data, pst_data->uc_data, pst_data->uc_size); -// -// /* Received data is set in the data master. */ -// pst_master->ul_did = pst_data->ul_did; -// pst_master->us_size = pst_data->uc_size; -// pst_master->uc_rcvflag = VEHICLE_RCVFLAG_ON; -// pst_master->partition_flg = 0; -// memset(pst_master->uc_data, 0x00, sizeof(pst_master->uc_data)); -// memcpy(pst_master->uc_data, pst_data->uc_data, pst_data->uc_size); -// } else if (partition_max == 2) { -// if (partition_num == 1) { -// /* Compare data master and received data */ -// uc_ret = VehicleSensmemcmp(pst_master->uc_data, pst_data->uc_data, pst_data->uc_size); -// -// /* Received data is set in the data master. */ -// pst_master->ul_did = pst_data->ul_did; -// pst_master->us_size = static_cast(pst_master->us_size + pst_data->uc_size); -// pst_master->partition_flg = 1; -// memcpy(pst_master->uc_data, pst_data->uc_data, pst_data->uc_size); -// } else if (partition_num == 2) { -// /* Compare data master and received data */ -// if (uc_ret == VEHICLESENS_EQ) { -// uc_ret = VehicleSensmemcmp(&pst_master->uc_data[VEHICLE_DSIZE_GSNSY_FST], -// pst_data->uc_data, pst_data->uc_size); -// } -// -// /* Received data is set in the data master. */ -// pst_master->ul_did = pst_data->ul_did; -// pst_master->us_size = static_cast(pst_master->us_size + pst_data->uc_size); -// pst_master->uc_rcvflag = VEHICLE_RCVFLAG_ON; -// pst_master->partition_flg = 1; -// memcpy(&pst_master->uc_data[VEHICLE_DSIZE_GSNSY_FST], pst_data->uc_data, pst_data->uc_size); -// } else {} -// } else {} -// -// return(uc_ret); -//} +u_int8 VehicleSensSetGsnsYFstG(const LSDRV_LSDATA_FST_GSENSOR_Y *pst_data) { + static u_int8 uc_ret = VEHICLESENS_EQ; + VEHICLESENS_DATA_MASTER_FST *pst_master; + + u_int8 partition_max; /* Total number of partitions */ + u_int8 partition_num; /* Data number */ + + pst_master = &g_st_gsnsy_fst_l; + + partition_max = pst_data->uc_partition_max; + partition_num = pst_data->uc_partition_num; + + if (partition_max == 1) { + /* Compare data master and received data */ + uc_ret = VehicleSensmemcmp(pst_master->uc_data, pst_data->uc_data, pst_data->uc_size); + + /* Received data is set in the data master. */ + pst_master->ul_did = pst_data->ul_did; + pst_master->us_size = pst_data->uc_size; + pst_master->uc_rcvflag = VEHICLE_RCVFLAG_ON; + pst_master->partition_flg = 0; + memset(pst_master->uc_data, 0x00, sizeof(pst_master->uc_data)); + memcpy(pst_master->uc_data, pst_data->uc_data, pst_data->uc_size); + } else if (partition_max == 2) { + if (partition_num == 1) { + /* Compare data master and received data */ + uc_ret = VehicleSensmemcmp(pst_master->uc_data, pst_data->uc_data, pst_data->uc_size); + + /* Received data is set in the data master. */ + pst_master->ul_did = pst_data->ul_did; + pst_master->us_size = static_cast(pst_master->us_size + pst_data->uc_size); + pst_master->partition_flg = 1; + memcpy(pst_master->uc_data, pst_data->uc_data, pst_data->uc_size); + } else if (partition_num == 2) { + /* Compare data master and received data */ + if (uc_ret == VEHICLESENS_EQ) { + uc_ret = VehicleSensmemcmp(&pst_master->uc_data[VEHICLE_DSIZE_GSNSY_FST], + pst_data->uc_data, pst_data->uc_size); + } + + /* Received data is set in the data master. */ + pst_master->ul_did = pst_data->ul_did; + pst_master->us_size = static_cast(pst_master->us_size + pst_data->uc_size); + pst_master->uc_rcvflag = VEHICLE_RCVFLAG_ON; + pst_master->partition_flg = 1; + memcpy(&pst_master->uc_data[VEHICLE_DSIZE_GSNSY_FST], pst_data->uc_data, pst_data->uc_size); + } else {} + } else {} + + return(uc_ret); +} /** * @brief @@ -114,15 +114,15 @@ void VehicleSensInitGsnsYFstl(void) { * * @param[in] Pointer to the data master acquisition destination */ -//void VehicleSensGetGsnsYFstl(VEHICLESENS_DATA_MASTER_FST *pst_data) { -// const VEHICLESENS_DATA_MASTER_FST *pst_master; -// -// pst_master = &g_st_gsnsy_fst_l; -// -// /* Store the data master in the specified destination. */ -// pst_data->ul_did = pst_master->ul_did; -// pst_data->us_size = pst_master->us_size; -// pst_data->uc_rcvflag = pst_master->uc_rcvflag; -// pst_data->partition_flg = pst_master->partition_flg; -// memcpy(pst_data->uc_data, pst_master->uc_data, pst_master->us_size); -//} +void VehicleSensGetGsnsYFstl(VEHICLESENS_DATA_MASTER_FST *pst_data) { + const VEHICLESENS_DATA_MASTER_FST *pst_master; + + pst_master = &g_st_gsnsy_fst_l; + + /* Store the data master in the specified destination. */ + pst_data->ul_did = pst_master->ul_did; + pst_data->us_size = pst_master->us_size; + pst_data->uc_rcvflag = pst_master->uc_rcvflag; + pst_data->partition_flg = pst_master->partition_flg; + memcpy(pst_data->uc_data, pst_master->uc_data, pst_master->us_size); +} diff --git a/positioning/server/src/Sensor/VehicleSens_Did_GsnsY_l.cpp b/positioning/server/src/Sensor/VehicleSens_Did_GsnsY_l.cpp index 020774de..1bf2e304 100644 --- a/positioning/server/src/Sensor/VehicleSens_Did_GsnsY_l.cpp +++ b/positioning/server/src/Sensor/VehicleSens_Did_GsnsY_l.cpp @@ -1,5 +1,5 @@ /* - * @copyright Copyright (c) 2016-2019 TOYOTA MOTOR CORPORATION. + * @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. @@ -42,7 +42,7 @@ static VEHICLESENS_DATA_MASTER gstGsnsY_l; // NOLINT(readability/nolint) ******************************************************************************/ void VehicleSensInitGsnsYl(void) { memset(&gstGsnsY_l, 0x00, sizeof(VEHICLESENS_DATA_MASTER)); -// gstGsnsY_l.ul_did = POSHAL_DID_GSNS_Y; + gstGsnsY_l.ul_did = POSHAL_DID_GSNS_Y; gstGsnsY_l.us_size = VEHICLE_DSIZE_GSNS_Y; gstGsnsY_l.uc_rcvflag = VEHICLE_RCVFLAG_OFF; } @@ -59,24 +59,24 @@ void VehicleSensInitGsnsYl(void) { * VEHICLESENS_NEQ Data change * */ -//u_int8 VehicleSensSetGsnsYlG(const LSDRV_LSDATA_G *pst_data) { -// u_int8 uc_ret; -// VEHICLESENS_DATA_MASTER *pst_master; -// -// pst_master = &gstGsnsY_l; -// -// /* Compare data master and received data */ -// uc_ret = VehicleSensmemcmp(pst_master->uc_data, pst_data->uc_data, pst_data->uc_size); -// -// /* Received data is set in the data master. */ -// pst_master->ul_did = pst_data->ul_did; -// pst_master->us_size = pst_data->uc_size; -// pst_master->uc_rcvflag = VEHICLE_RCVFLAG_ON; -// (void)memcpy(reinterpret_cast(pst_master->uc_data), -// (const void *)(pst_data->uc_data), (size_t)(pst_data->uc_size)); -// -// return(uc_ret); -//} +u_int8 VehicleSensSetGsnsYlG(const LSDRV_LSDATA_G *pst_data) { + u_int8 uc_ret; + VEHICLESENS_DATA_MASTER *pst_master; + + pst_master = &gstGsnsY_l; + + /* Compare data master and received data */ + uc_ret = VehicleSensmemcmp(pst_master->uc_data, pst_data->uc_data, pst_data->uc_size); + + /* Received data is set in the data master. */ + pst_master->ul_did = pst_data->ul_did; + pst_master->us_size = pst_data->uc_size; + pst_master->uc_rcvflag = VEHICLE_RCVFLAG_ON; + (void)memcpy(reinterpret_cast(pst_master->uc_data), + (const void *)(pst_data->uc_data), (size_t)(pst_data->uc_size)); + + return(uc_ret); +} /******************************************************************************* * MODULE : VehicleSensGetGsnsYl diff --git a/positioning/server/src/Sensor/VehicleSens_Did_GsnsZ.cpp b/positioning/server/src/Sensor/VehicleSens_Did_GsnsZ.cpp new file mode 100644 index 00000000..ec865c3e --- /dev/null +++ b/positioning/server/src/Sensor/VehicleSens_Did_GsnsZ.cpp @@ -0,0 +1,116 @@ +/* + * @copyright Copyright (c) 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. + */ + +/******************************************************************************* + * File name :VehicleSens_Did_GsnsY.cpp + * Subsystem name :Vehicle sensor process + * Program name :Vehicle sensor data master(VEHICLE_DID_GSNS_Z) + * Module configuration :VehicleSensGetGsnsZ() Vehicle sensor GSNS_Z GET function + ******************************************************************************/ + +#include "VehicleSens_DataMaster.h" + +/*************************************************/ +/* Global variable */ +/*************************************************/ + +/******************************************************************************* +* MODULE : VehicleSensGetGsnsZ +* ABSTRACT : Vehicle sensor GSNS_Z GET function +* FUNCTION : Provide the GSNS_Z data master +* ARGUMENT : *pst_data : Pointer to the data master acquisition destination +* uc_get_method : Acquisition method(Direct Line or CAN) +* NOTE : +* RETURN : void +******************************************************************************/ +void VehicleSensGetGsnsZ(VEHICLESENS_DATA_MASTER *pst_data, u_int8 uc_get_method) { + switch (uc_get_method) { // LCOV_EXCL_BR_LINE 6:VEHICLESENS_GETMETHOD_CAN cannot to pass in + case VEHICLESENS_GETMETHOD_CAN: + { + /* When acquiring from CAN data */ + AGL_ASSERT_NOT_TESTED(); // LCOV_EXCL_LINE 200: test assert + break; // LCOV_EXCL_LINE 8: dead code + } + case VEHICLESENS_GETMETHOD_LINE: + { + /* To acquire from LineSensor */ + VehicleSensGetGsnsZl(pst_data); + break; + } + default: + break; + } +} + +#if CONFIG_SENSOR_EXT_VALID /* Initial Sensor Support */ +/******************************************************************************* +* MODULE : VehicleSensGetGsnsZExt +* ABSTRACT : Vehicle sensor GSNS_Z GET function +* FUNCTION : Provide the GSNS_Z data master +* ARGUMENT : *pst_data : Pointer to the data master acquisition destination +* uc_get_method : Acquisition method(Direct Line or CAN) +* NOTE : +* RETURN : void +******************************************************************************/ +void VehicleSensGetGsnsZExt(VEHICLESENS_DATA_MASTER_EXT *pst_data, u_int8 uc_get_method) { + switch (uc_get_method) { // LCOV_EXCL_BR_LINE 6:VEHICLESENS_GETMETHOD_CAN cannot to pass in + case VEHICLESENS_GETMETHOD_CAN: + { + /* When acquiring from CAN data */ + AGL_ASSERT_NOT_TESTED(); // LCOV_EXCL_LINE 200: test assert + break; // LCOV_EXCL_LINE 8: dead code + } + case VEHICLESENS_GETMETHOD_LINE: + { + /* To acquire from LineSensor */ + VehicleSensGetGsnsZExtl(pst_data); + break; + } + default: + break; + } +} +#endif + +/** + * @brief + * Vehicle sensor GSNS_Z GET function + * + * Provide the GSNS_Z data master + * + * @param[in] *pst_data: Pointer to the data master acquisition destination + * @param[in] uc_get_method: Acquisition method(Direct Line or CAN) + */ +void VehicleSensGetGsnsZFst(VEHICLESENS_DATA_MASTER_FST *pst_data, u_int8 uc_get_method) { + switch (uc_get_method) { // LCOV_EXCL_BR_LINE 6:VEHICLESENS_GETMETHOD_CAN cannot to pass in + case VEHICLESENS_GETMETHOD_CAN: + { + /* When acquiring from CAN data */ + AGL_ASSERT_NOT_TESTED(); // LCOV_EXCL_LINE 200: test assert + break; // LCOV_EXCL_LINE 8: dead code + } + + case VEHICLESENS_GETMETHOD_LINE: + { + /* To acquire from LineSensor */ + VehicleSensGetGsnsZFstl(pst_data); + break; + } + + default: + break; + } +} diff --git a/positioning/server/src/Sensor/VehicleSens_Did_GsnsZExt_l.cpp b/positioning/server/src/Sensor/VehicleSens_Did_GsnsZExt_l.cpp new file mode 100644 index 00000000..9dc1e394 --- /dev/null +++ b/positioning/server/src/Sensor/VehicleSens_Did_GsnsZExt_l.cpp @@ -0,0 +1,142 @@ +/* + * @copyright Copyright (c) 2019-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. + */ + +/******************************************************************************* + * File name :VehicleSens_Did_GsnsZExt_l.cpp + * Subsystem name :Vehicle sensor process + * Program name :Vehicle sensor data master(POSHAL_DID_GSNS_Z) + * Module configuration :VehicleSensInitGsnsZExtl() Vehicle sensor GSNS_Z initialization function + * :VehicleSensSetGsnsZExtlG() Vehicle sensor GSNS_Z SET function + * :VehicleSensGetGsnsZExtl() Vehicle sensor GSNS_Z GET function + ******************************************************************************/ + +#include "VehicleSens_DataMaster.h" + +#if CONFIG_SENSOR_EXT_VALID /* Initial Sensor Support */ +/*************************************************/ +/* Global variable */ +/*************************************************/ +static VEHICLESENS_DATA_MASTER_EXT gstGsnsZExt_l; // NOLINT(readability/nolint) + +/******************************************************************************* +* MODULE : VehicleSensInitGsnsZExtl +* ABSTRACT : Vehicle sensor GSNS_Z initialization function +* FUNCTION : GSNS_Z data master initialization processing +* ARGUMENT : void +* NOTE : +* RETURN : void +******************************************************************************/ +void VehicleSensInitGsnsZExtl(void) { + memset(&gstGsnsZExt_l, 0x00, sizeof(VEHICLESENS_DATA_MASTER_EXT)); + gstGsnsZExt_l.ul_did = POSHAL_DID_GSNS_Z; + gstGsnsZExt_l.us_size = VEHICLE_DSIZE_GSNS_Z_EXT_INIT; + gstGsnsZExt_l.uc_rcvflag = VEHICLE_RCVFLAG_OFF; +} + +/** + * @brief + * Vehicle sensor GSNS_Z SET function + * + * Update the GSNS_Z data master + * + * @param[in] *pst_data : Pointer to the message data received by the direct line + */ +void VehicleSensSetGsnsZExtlG(const LSDRV_LSDATA_G *pst_data) { + VEHICLESENS_DATA_MASTER_EXT *pst_master; + u_int16 us_start = 0; + u_int16 us_size = 0; + u_int16 us_cnt = 0; + + pst_master = &gstGsnsZExt_l; + us_size = static_cast(sizeof(u_int16) * 10); /* Size of one data item: 2byte * 10 data items */ + + /* Store the latest one in the internal data structure */ + us_start = gstPkgTempExt.start_point[GsnsZ]; /* Location to store one received message */ + /* Stored in data master(Order of reception)*/ + if (us_start >= VEHICLE_DKEEP_MAX) { + /* Store the latest one at position 0 */ + us_start = VEHICLE_DATA_POS_00; + /* If you are discarding old data,,Set a flag */ + gstPkgTempExt.data_break = VEHICLE_SNS_BREAK; + } + pst_master->ul_did = pst_data->ul_did; + pst_master->uc_rcvflag = VEHICLE_RCVFLAG_ON; + for (us_cnt = 0; us_cnt < us_size; us_cnt++) { + pst_master->uc_data[us_start * us_size + us_cnt] = (u_int8)(pst_data->uc_data[us_cnt]); + } + + /* Update next storage start position and latest data storage position */ + us_start++; + gstPkgTempExt.start_point[GsnsZ] = us_start; + + /* Update data master size */ + if (gstPkgTempExt.data_break == VEHICLE_SNS_BREAK) { + /* Make the size of all extended data masters */ + pst_master->us_size = VEHICLE_DSIZE_GSNS_Z_EXT; + } else { + /* Add the size of one received data item */ + pst_master->us_size = static_cast(pst_master->us_size + us_size); + } +} + +/******************************************************************************* +* MODULE : VehicleSensGetGsnsZExtl +* ABSTRACT : Vehicle sensor GSNS_Z GET function +* FUNCTION : Provide the GSNS_Z data master +* ARGUMENT : *pst_data : Pointer to the data master acquisition destination +* NOTE : +* RETURN : void +******************************************************************************/ +void VehicleSensGetGsnsZExtl(VEHICLESENS_DATA_MASTER_EXT *pst_data) { + const VEHICLESENS_DATA_MASTER_EXT *pst_master; + uint16_t us_size = 0; + uint16_t us_data_cnt = 0; // Number of data contained + uint16_t us_loop_cnt = 0; // 64 over index + + /* Store the data master in the specified destination. */ + pst_master = &gstGsnsZExt_l; + pst_data->ul_did = pst_master->ul_did; + pst_data->us_size = pst_master->us_size; + pst_data->uc_rcvflag = pst_master->uc_rcvflag; + + us_size = static_cast(sizeof(u_int16) * 10); /* Size of one data item: 2byte * 10 data items */ + + /* Checking whether the number of stored entries is looped */ + if (gstPkgTempExt.data_break == VEHICLE_SNS_BREAK) { + us_data_cnt = VEHICLE_DKEEP_MAX; + } else { + us_data_cnt = gstPkgTempExt.start_point[GsnsZ]; + } + + /* Acquire data from the oldest data master */ + for (uint16_t us_cnt = 0; us_cnt < us_data_cnt; us_cnt++) { + if (gstPkgTempExt.data_break == VEHICLE_SNS_BREAK) { + /* Get information before loop */ + if (gstPkgTempExt.start_point[GsnsZ] + us_cnt < VEHICLE_DKEEP_MAX) { + memcpy(&pst_data->uc_data[us_cnt * us_size], + &pst_master->uc_data[(gstPkgTempExt.start_point[GsnsZ] + us_cnt) * us_size], us_size); + } else { + memcpy(&pst_data->uc_data[us_cnt * us_size], + &pst_master->uc_data[us_loop_cnt * us_size], us_size); + us_loop_cnt++; + } + } else { + memcpy(&pst_data->uc_data[us_cnt * us_size], + &pst_master->uc_data[us_cnt * us_size], us_size); + } + } +} +#endif diff --git a/positioning/server/src/Sensor/VehicleSens_Did_GsnsZFst_l.cpp b/positioning/server/src/Sensor/VehicleSens_Did_GsnsZFst_l.cpp new file mode 100644 index 00000000..a69bb87f --- /dev/null +++ b/positioning/server/src/Sensor/VehicleSens_Did_GsnsZFst_l.cpp @@ -0,0 +1,127 @@ +/* + * @copyright Copyright (c) 2019-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. + */ + +/** + * @file + * VehicleSens_Did_GsnsZFst_l.cpp + * @brief + * Vehicle sensor data master(POSHAL_DID_GSNS_Z_FST) + */ + +#include "VehicleSens_DataMaster.h" + +/*************************************************/ +/* Global variable */ +/*************************************************/ +static VEHICLESENS_DATA_MASTER_FST g_st_gsnsz_fst_l; // NOLINT(readability/nolint) + +/** + * @brief + * Vehicle sensor GSNS_Z initialization function + * + * GSNS_Z data master initialization processing + */ +void VehicleSensInitGsnsZFstl(void) { + memset(&g_st_gsnsz_fst_l, 0x00, sizeof(VEHICLESENS_DATA_MASTER_FST)); + g_st_gsnsz_fst_l.ul_did = POSHAL_DID_GSNS_Z_FST; + g_st_gsnsz_fst_l.us_size = VEHICLE_DSIZE_GSNS_Z_EXT_INIT; + g_st_gsnsz_fst_l.uc_rcvflag = VEHICLE_RCVFLAG_OFF; + g_st_gsnsz_fst_l.partition_flg = 0; +} + +/** + * @brief + * Vehicle sensor GSNS_Z SET function + * + * Update the GSNS_Z data master + * + * @param[in] *pst_data : Pointer to the message data received by the direct line + * + * @return VEHICLESENS_EQ No data change
+ * VEHICLESENS_NEQ Data change + */ +u_int8 VehicleSensSetGsnsZFstG(const LSDRV_LSDATA_FST_GSENSOR_Z *pst_data) { + static u_int8 uc_ret = VEHICLESENS_EQ; + VEHICLESENS_DATA_MASTER_FST *pst_master; + + u_int8 partition_max; /* Total number of partitions */ + u_int8 partition_num; /* Data number */ + + pst_master = &g_st_gsnsz_fst_l; + + partition_max = pst_data->uc_partition_max; + partition_num = pst_data->uc_partition_num; + + if (partition_max == 1) { + /* Compare data master and received data */ + uc_ret = VehicleSensmemcmp(pst_master->uc_data, pst_data->uc_data, pst_data->uc_size); + + /* Received data is set in the data master. */ + pst_master->ul_did = pst_data->ul_did; + pst_master->us_size = pst_data->uc_size; + pst_master->uc_rcvflag = VEHICLE_RCVFLAG_ON; + pst_master->partition_flg = 0; + memset(pst_master->uc_data, 0x00, sizeof(pst_master->uc_data)); + memcpy(pst_master->uc_data, pst_data->uc_data, pst_data->uc_size); + } else if (partition_max == 2) { + if (partition_num == 1) { + /* Compare data master and received data */ + uc_ret = VehicleSensmemcmp(pst_master->uc_data, pst_data->uc_data, pst_data->uc_size); + + /* Received data is set in the data master. */ + pst_master->ul_did = pst_data->ul_did; + pst_master->us_size = static_cast(pst_master->us_size + pst_data->uc_size); + pst_master->partition_flg = 1; + memcpy(pst_master->uc_data, pst_data->uc_data, pst_data->uc_size); + } else if (partition_num == 2) { + /* Compare data master and received data */ + if (uc_ret == VEHICLESENS_EQ) { + uc_ret = VehicleSensmemcmp(&pst_master->uc_data[VEHICLE_DSIZE_GSNSZ_FST], + pst_data->uc_data, pst_data->uc_size); + } + + /* Received data is set in the data master. */ + pst_master->ul_did = pst_data->ul_did; + pst_master->us_size = static_cast(pst_master->us_size + pst_data->uc_size); + pst_master->uc_rcvflag = VEHICLE_RCVFLAG_ON; + pst_master->partition_flg = 1; + memcpy(&pst_master->uc_data[VEHICLE_DSIZE_GSNSZ_FST], pst_data->uc_data, pst_data->uc_size); + } else {} + } else {} + + return(uc_ret); +} + +/** + * @brief + * Vehicle sensor GSNS_Z GET function + * + * Provide the GSNS_Z data master + * + * @param[in] Pointer to the data master acquisition destination + */ +void VehicleSensGetGsnsZFstl(VEHICLESENS_DATA_MASTER_FST *pst_data) { + const VEHICLESENS_DATA_MASTER_FST *pst_master; + + pst_master = &g_st_gsnsz_fst_l; + + /* Store the data master in the specified destination. */ + pst_data->ul_did = pst_master->ul_did; + pst_data->us_size = pst_master->us_size; + pst_data->uc_rcvflag = pst_master->uc_rcvflag; + pst_data->partition_flg = pst_master->partition_flg; + memcpy(pst_data->uc_data, pst_master->uc_data, pst_master->us_size); +} diff --git a/positioning/server/src/Sensor/VehicleSens_Did_GsnsZ_l.cpp b/positioning/server/src/Sensor/VehicleSens_Did_GsnsZ_l.cpp new file mode 100644 index 00000000..86145356 --- /dev/null +++ b/positioning/server/src/Sensor/VehicleSens_Did_GsnsZ_l.cpp @@ -0,0 +1,97 @@ +/* + * @copyright Copyright (c) 2019-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. + */ + +/******************************************************************************* + * File name :VehicleSens_Did_GsnsZ_l.cpp + * Subsystem name :Vehicle sensor process + * Program name :Vehicle sensor data master(POSHAL_DID_GSNS_Z) + * Module configuration :VehicleSensInitGsnsZl() Vehicle sensor GSNS_Z initialization function + * :VehicleSensSetGsnsZlG() Vehicle sensor GSNS_Z SET function + * :VehicleSensGetGsnsZl() Vehicle sensor GSNS_Z GET function + ******************************************************************************/ + +#include "VehicleSens_DataMaster.h" + +/*************************************************/ +/* Global variable */ +/*************************************************/ +static VEHICLESENS_DATA_MASTER gstGsnsZ_l; // NOLINT(readability/nolint) + +/******************************************************************************* +* MODULE : VehicleSensInitGsnsZl +* ABSTRACT : Vehicle sensor GSNS_Z initialization function +* FUNCTION : GSNS_Z data master initialization processing +* ARGUMENT : void +* NOTE : +* RETURN : void +******************************************************************************/ +void VehicleSensInitGsnsZl(void) { + memset(&gstGsnsZ_l, 0x00, sizeof(VEHICLESENS_DATA_MASTER)); + gstGsnsZ_l.ul_did = POSHAL_DID_GSNS_Z; + gstGsnsZ_l.us_size = VEHICLE_DSIZE_GSNS_Z; + gstGsnsZ_l.uc_rcvflag = VEHICLE_RCVFLAG_OFF; +} + +/** + * @brief + * Vehicle sensor GSNS_Z SET function + * + * Update the GSNS_Z data master + * + * @param[in] *pst_data : Pointer to the message data received by the direct line + * + * @return VEHICLESENS_EQ No data change
+ * VEHICLESENS_NEQ Data change + * + */ +u_int8 VehicleSensSetGsnsZlG(const LSDRV_LSDATA_G *pst_data) { + u_int8 uc_ret; + VEHICLESENS_DATA_MASTER *pst_master; + + pst_master = &gstGsnsZ_l; + + /* Compare data master and received data */ + uc_ret = VehicleSensmemcmp(pst_master->uc_data, pst_data->uc_data, pst_data->uc_size); + + /* Received data is set in the data master. */ + pst_master->ul_did = pst_data->ul_did; + pst_master->us_size = pst_data->uc_size; + pst_master->uc_rcvflag = VEHICLE_RCVFLAG_ON; + (void)memcpy(reinterpret_cast(pst_master->uc_data), + (const void *)(pst_data->uc_data), (size_t)(pst_data->uc_size)); + + return(uc_ret); +} + +/******************************************************************************* +* MODULE : VehicleSensGetGsnsZl +* ABSTRACT : Vehicle sensor GSNS_Z GET function +* FUNCTION : Provide the GSNS_Z data master +* ARGUMENT : *pst_data : Pointer to the data master acquisition destination +* NOTE : +* RETURN : void +******************************************************************************/ +void VehicleSensGetGsnsZl(VEHICLESENS_DATA_MASTER *pst_data) { + const VEHICLESENS_DATA_MASTER *pst_master; + + pst_master = &gstGsnsZ_l; + + /* Store the data master in the specified destination. */ + pst_data->ul_did = pst_master->ul_did; + pst_data->us_size = pst_master->us_size; + pst_data->uc_rcvflag = pst_master->uc_rcvflag; + memcpy(pst_data->uc_data, pst_master->uc_data, pst_master->us_size); +} diff --git a/positioning/server/src/Sensor/VehicleSens_Did_Gyro.cpp b/positioning/server/src/Sensor/VehicleSens_Did_Gyro.cpp deleted file mode 100644 index c3c8b81a..00000000 --- a/positioning/server/src/Sensor/VehicleSens_Did_Gyro.cpp +++ /dev/null @@ -1,145 +0,0 @@ -/* - * @copyright Copyright (c) 2016-2019 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. - */ - -/******************************************************************************* - * File name :VehicleSens_Did_Gyro.cpp - * System name :_CWORD107_ - * Subsystem name :Vehicle sensor process - * Program name :Vehicle sensor data master(VEHICLE_DID_GYRO) - * Module configuration :VehicleSensGetGyro() Vehicle Sensor GYRO GET Functions - ******************************************************************************/ - -#include -#include "VehicleSens_DataMaster.h" - -/*************************************************/ -/* Global variable */ -/*************************************************/ - -/******************************************************************************* -* MODULE : VehicleSensGetGyro -* ABSTRACT : Vehicle Sensor GYRO GET Functions -* FUNCTION : Provide a GYRO data master -* ARGUMENT : *pst_data : Pointer to the data master acquisition destination -* uc_get_method : Acquisition method(Direct Line or CAN) -* NOTE : -* RETURN : void -******************************************************************************/ -void VehicleSensGetGyro(VEHICLESENS_DATA_MASTER *pst_data, u_int8 uc_get_method) { - switch (uc_get_method) { // LCOV_EXCL_BR_LINE 6:VEHICLESENS_GETMETHOD_CAN cannot to pass in - case VEHICLESENS_GETMETHOD_CAN: - { - /* When acquiring from CAN data */ - AGL_ASSERT_NOT_TESTED(); // LCOV_EXCL_LINE 200: test assert - break; // LCOV_EXCL_LINE 8: dead code - } - case VEHICLESENS_GETMETHOD_LINE: - { - /* To acquire from LineSensor */ - VehicleSensGetGyrol(pst_data); - break; - } - default: - break; - } -} - -#if CONFIG_SENSOR_EXT_VALID /* Initial Sensor Support */ -/******************************************************************************* -* MODULE : VehicleSensGetGyroRev -* ABSTRACT : Vehicle Sensor GYRO GET Functions -* FUNCTION : Provide a GYRO data master -* ARGUMENT : *pst_data : Pointer to the data master acquisition destination -* uc_get_method : Acquisition method(Direct Line or CAN) -* NOTE : -* RETURN : void -******************************************************************************/ -void VehicleSensGetGyroRev(VEHICLESENS_DATA_MASTER *pst_data, u_int8 uc_get_method) { - switch (uc_get_method) { // LCOV_EXCL_BR_LINE 6:VEHICLESENS_GETMETHOD_CAN cannot to pass in - case VEHICLESENS_GETMETHOD_CAN: - { - /* When acquiring from CAN data */ - AGL_ASSERT_NOT_TESTED(); // LCOV_EXCL_LINE 200: test assert - break; // LCOV_EXCL_LINE 8: dead code - } - case VEHICLESENS_GETMETHOD_LINE: - { - /* To acquire from LineSensor */ - VehicleSensGetGyroRevl(pst_data); - break; - } - default: - break; - } -} - -/******************************************************************************* -* MODULE : VehicleSensGetGyroExt -* ABSTRACT : Vehicle Sensor GYRO GET Functions -* FUNCTION : Provide a GYRO data master -* ARGUMENT : *pst_data : Pointer to the data master acquisition destination -* uc_get_method : Acquisition method(Direct Line or CAN) -* NOTE : -* RETURN : void -******************************************************************************/ -void VehicleSensGetGyroExt(VEHICLESENS_DATA_MASTER_EXT *pst_data, u_int8 uc_get_method) { - switch (uc_get_method) { // LCOV_EXCL_BR_LINE 6:VEHICLESENS_GETMETHOD_CAN cannot to pass in - case VEHICLESENS_GETMETHOD_CAN: - { - /* When acquiring from CAN data */ - AGL_ASSERT_NOT_TESTED(); // LCOV_EXCL_LINE 200: test assert - break; // LCOV_EXCL_LINE 8: dead code - } - case VEHICLESENS_GETMETHOD_LINE: - { - /* To acquire from LineSensor */ - VehicleSensGetGyroExtl(pst_data); - break; - } - default: /* Ignore->MISRA-C++:2008 Rule 6-3-1, 6-4-1 */ - break; - } -} - -/******************************************************************************* -* MODULE : VehicleSensGetGyroFst -* ABSTRACT : Vehicle Sensor GYRO GET Functions -* FUNCTION : Provide a GYRO data master -* ARGUMENT : *pst_data : Pointer to the data master acquisition destination -* uc_get_method : Acquisition method(Direct Line or CAN) -* NOTE : -* RETURN : void -******************************************************************************/ -void VehicleSensGetGyroFst(VEHICLESENS_DATA_MASTER_FST *pst_data, u_int8 uc_get_method) { - switch (uc_get_method) { // LCOV_EXCL_BR_LINE 6:VEHICLESENS_GETMETHOD_CAN cannot to pass in - case VEHICLESENS_GETMETHOD_CAN: - { - /* When acquiring from CAN data */ - AGL_ASSERT_NOT_TESTED(); // LCOV_EXCL_LINE 200: test assert - break; // LCOV_EXCL_LINE 8: dead code - } - case VEHICLESENS_GETMETHOD_LINE: - { - /* To acquire from LineSensor */ - VehicleSensGetGyroFstl(pst_data); - break; - } - default: - break; - } -} -#endif - diff --git a/positioning/server/src/Sensor/VehicleSens_Did_GyroConnectStatus.cpp b/positioning/server/src/Sensor/VehicleSens_Did_GyroConnectStatus.cpp index 52945d85..d6fee306 100644 --- a/positioning/server/src/Sensor/VehicleSens_Did_GyroConnectStatus.cpp +++ b/positioning/server/src/Sensor/VehicleSens_Did_GyroConnectStatus.cpp @@ -1,5 +1,5 @@ /* - * @copyright Copyright (c) 2016-2019 TOYOTA MOTOR CORPORATION. + * @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. @@ -44,7 +44,7 @@ void VehicleSensInitGyroConnectStatus(void) { (void)memset(reinterpret_cast(&(gstGyroConnectStatus)), static_cast(0x00), sizeof(VEHICLESENS_DATA_MASTER_GYRO_CONNECT_STATUS)); gstGyroConnectStatus.ul_did = VEHICLE_DID_GYRO_CONNECT_STATUS; -// gstGyroConnectStatus.us_size = VEHICLE_DSIZE_GYRO_CONNECT_STATUS; + gstGyroConnectStatus.us_size = VEHICLE_DSIZE_GYRO_CONNECT_STATUS; gstGyroConnectStatus.uc_data = VEHICLE_DINIT_GYRO_CONNECT_STATUS; } @@ -57,30 +57,30 @@ void VehicleSensInitGyroConnectStatus(void) { * RETURN : VEHICLESENS_EQ : No data change * VEHICLESENS_NEQ : Data change ******************************************************************************/ -//u_int8 VehicleSensSetGyroConnectStatus(const LSDRV_MSG_LSDATA_DAT_GYRO_CONNECT_STATUS *pst_data) { // LCOV_EXCL_START 8: dead code. // NOLINT(whitespace/line_length) -// AGL_ASSERT_NOT_TESTED(); // LCOV_EXCL_LINE 200: test assert -// u_int8 uc_ret = VEHICLESENS_EQ; -// VEHICLESENS_DATA_MASTER_GYRO_CONNECT_STATUS *pst_master; -// -// if (pst_data == NULL) { -// FRAMEWORKUNIFIEDLOG(ZONE_INFO, __FUNCTION__, "pst_data == NULL\r\n"); -// } else { -// pst_master = &gstGyroConnectStatus; -// -// /* Compare data master and received data */ -// uc_ret = VehicleSensmemcmp(reinterpret_cast(&(pst_master->uc_data)), -// (const void *)(&(pst_data->uc_data)), (size_t)(pst_data->uc_size)); -// -// /* Received data is set in the data master. */ -// pst_master->ul_did = pst_data->ul_did; -// pst_master->us_size = (u_int16)pst_data->uc_size; -// pst_master->uc_rcvflag = VEHICLE_RCVFLAG_ON; -// (void)memcpy(reinterpret_cast(&(pst_master->uc_data)), -// (const void *)(&(pst_data->uc_data)), sizeof(pst_master->uc_data)); -// } -// -// return(uc_ret); -//} +u_int8 VehicleSensSetGyroConnectStatus(const LSDRV_MSG_LSDATA_DAT_GYRO_CONNECT_STATUS *pst_data) { // LCOV_EXCL_START 8: dead code. // NOLINT(whitespace/line_length) + AGL_ASSERT_NOT_TESTED(); // LCOV_EXCL_LINE 200: test assert + u_int8 uc_ret = VEHICLESENS_EQ; + VEHICLESENS_DATA_MASTER_GYRO_CONNECT_STATUS *pst_master; + + if (pst_data == NULL) { + FRAMEWORKUNIFIEDLOG(ZONE_INFO, __FUNCTION__, "pst_data == NULL\r\n"); + } else { + pst_master = &gstGyroConnectStatus; + + /* Compare data master and received data */ + uc_ret = VehicleSensmemcmp(reinterpret_cast(&(pst_master->uc_data)), + (const void *)(&(pst_data->uc_data)), (size_t)(pst_data->uc_size)); + + /* Received data is set in the data master. */ + pst_master->ul_did = pst_data->ul_did; + pst_master->us_size = (u_int16)pst_data->uc_size; + pst_master->uc_rcvflag = VEHICLE_RCVFLAG_ON; + (void)memcpy(reinterpret_cast(&(pst_master->uc_data)), + (const void *)(&(pst_data->uc_data)), sizeof(pst_master->uc_data)); + } + + return(uc_ret); +} /******************************************************************************* * MODULE : VehicleSensGetGyroConnectStatus diff --git a/positioning/server/src/Sensor/VehicleSens_Did_GyroExt_l.cpp b/positioning/server/src/Sensor/VehicleSens_Did_GyroExt_l.cpp index 3fa62210..0470c9f6 100644 --- a/positioning/server/src/Sensor/VehicleSens_Did_GyroExt_l.cpp +++ b/positioning/server/src/Sensor/VehicleSens_Did_GyroExt_l.cpp @@ -1,5 +1,5 @@ /* - * @copyright Copyright (c) 2016-2019 TOYOTA MOTOR CORPORATION. + * @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. @@ -47,8 +47,8 @@ void VehicleSensInitGyroRevl(void) { u_int16 *pus; memset(&gstGyroRev_l, 0x00, sizeof(VEHICLESENS_DATA_MASTER)); - /* POSHAL_DID_GYRO initialized by POSHAL_DID_GYRO because POSHAL_DID_GYRO is internally replaced by POSHAL_DID_GYRO_EXT */ -// gstGyroRev_l.ul_did = POSHAL_DID_GYRO; + /* POSHAL_DID_GYRO initialized by POSHAL_DID_GYRO_X because POSHAL_DID_GYRO is internally replaced by POSHAL_DID_GYRO_EXT */ + gstGyroRev_l.ul_did = POSHAL_DID_GYRO_X; gstGyroRev_l.us_size = VEHICLE_DSIZE_GYRO; pus = reinterpret_cast(gstGyroRev_l.uc_data); @@ -69,8 +69,8 @@ void VehicleSensInitGyroExtl(void) { u_int16 *pus; memset(&gstGyroExt_l, 0x00, sizeof(VEHICLESENS_DATA_MASTER_EXT)); - /* POSHAL_DID_GYRO initialized by POSHAL_DID_GYRO because POSHAL_DID_GYRO is internally replaced by POSHAL_DID_GYRO_EXT */ -// gstGyroExt_l.ul_did = POSHAL_DID_GYRO; + /* POSHAL_DID_GYRO initialized by POSHAL_DID_GYRO_X because POSHAL_DID_GYRO is internally replaced by POSHAL_DID_GYRO_EXT */ + gstGyroExt_l.ul_did = POSHAL_DID_GYRO_X; gstGyroExt_l.us_size = VEHICLE_DSIZE_GYRO_EXT_INIT; pus = reinterpret_cast(gstGyroExt_l.uc_data); @@ -86,25 +86,27 @@ void VehicleSensInitGyroExtl(void) { * RETURN : VEHICLESENS_EQ : No data change * VEHICLESENS_NEQ : Data change ******************************************************************************/ -//u_int8 VehicleSensSetGyroRevl(const LSDRV_LSDATA *pst_data) { // LCOV_EXCL_START 8 : dead code -// AGL_ASSERT_NOT_TESTED(); // LCOV_EXCL_LINE 200: test assert -// u_int8 uc_ret; -// VEHICLESENS_DATA_MASTER *pst_master; -// -// pst_master = &gstGyroRev_l; -// -// /* Compare data master and received data */ -// uc_ret = VehicleSensmemcmp(pst_master->uc_data, -// pst_data->uc_data, pst_data->uc_size); /* Ignore->MISRA-C++:2008 Rule 5-0-5 */ -// -// /* Received data is set in the data master. */ -// pst_master->us_size = pst_data->uc_size; /* Ignore->MISRA-C++:2008 Rule 5-0-5 */ -// pst_master->uc_rcvflag = VEHICLE_RCVFLAG_ON; -// memset(pst_master->uc_data, 0x00, sizeof(pst_master->uc_data)); -// memcpy(pst_master->uc_data, pst_data->uc_data, pst_data->uc_size); /* Ignore->MISRA-C++:2008 Rule 5-0-5 */ -// -// return(uc_ret); -//} +u_int8 VehicleSensSetGyroRevl(const LSDRV_LSDATA *pst_data) { // LCOV_EXCL_START 8 : dead code + AGL_ASSERT_NOT_TESTED(); // LCOV_EXCL_LINE 200: test assert + u_int8 uc_ret; + VEHICLESENS_DATA_MASTER *pst_master; + + pst_master = &gstGyroRev_l; + + /* Compare data master and received data */ + uc_ret = VehicleSensmemcmp(pst_master->uc_data, + pst_data->uc_data, pst_data->uc_size); /* Ignore->MISRA-C++:2008 Rule 5-0-5 */ + + /* Received data is set in the data master. */ + pst_master->ul_did = POSHAL_DID_GYRO_X; + pst_master->us_size = pst_data->uc_size; /* Ignore->MISRA-C++:2008 Rule 5-0-5 */ + pst_master->uc_rcvflag = VEHICLE_RCVFLAG_ON; + pst_master->uc_snscnt = pst_data->uc_sns_cnt; + memset(pst_master->uc_data, 0x00, sizeof(pst_master->uc_data)); + memcpy(pst_master->uc_data, pst_data->uc_data, pst_data->uc_size); /* Ignore->MISRA-C++:2008 Rule 5-0-5 */ + + return(uc_ret); +} // LCOV_EXCL_STOP /******************************************************************************* @@ -116,23 +118,25 @@ void VehicleSensInitGyroExtl(void) { * RETURN : VEHICLESENS_EQ : No data change * VEHICLESENS_NEQ : Data change ******************************************************************************/ -//u_int8 VehicleSensSetGyroRevlG(const LSDRV_LSDATA_G *pst_data) { -// u_int8 uc_ret; -// VEHICLESENS_DATA_MASTER *pst_master; -// -// pst_master = &gstGyroRev_l; -// -// /* Compare data master and received data */ -// /* Ignore->MISRA-C++:2008 Rule 5-0-5 */ -// uc_ret = VehicleSensmemcmp(pst_master->uc_data, pst_data->uc_data, pst_data->uc_size); -// -// /* Received data is set in the data master. */ -// pst_master->us_size = pst_data->uc_size; /* Ignore->MISRA-C++:2008 Rule 5-0-5 */ -// pst_master->uc_rcvflag = VEHICLE_RCVFLAG_ON; -// memcpy(pst_master->uc_data, pst_data->uc_data, pst_data->uc_size); /* Ignore->MISRA-C++:2008 Rule 5-0-5 */ -// -// return(uc_ret); -//} +u_int8 VehicleSensSetGyroRevlG(const LSDRV_LSDATA_G *pst_data) { + u_int8 uc_ret; + VEHICLESENS_DATA_MASTER *pst_master; + + pst_master = &gstGyroRev_l; + + /* Compare data master and received data */ + /* Ignore->MISRA-C++:2008 Rule 5-0-5 */ + uc_ret = VehicleSensmemcmp(pst_master->uc_data, pst_data->uc_data, pst_data->uc_size); + + /* Received data is set in the data master. */ + pst_master->ul_did = POSHAL_DID_GYRO_X; + pst_master->us_size = pst_data->uc_size; /* Ignore->MISRA-C++:2008 Rule 5-0-5 */ + pst_master->uc_rcvflag = VEHICLE_RCVFLAG_ON; + pst_master->uc_snscnt = pst_data->uc_sns_cnt; + memcpy(pst_master->uc_data, pst_data->uc_data, pst_data->uc_size); /* Ignore->MISRA-C++:2008 Rule 5-0-5 */ + + return(uc_ret); +} /******************************************************************************* * MODULE : VehicleSensSetGyroExtlG @@ -143,43 +147,44 @@ void VehicleSensInitGyroExtl(void) { * RETURN : VEHICLESENS_EQ : No data change * VEHICLESENS_NEQ : Data change ******************************************************************************/ -//void VehicleSensSetGyroExtlG(const LSDRV_LSDATA_G *pst_data) { -// VEHICLESENS_DATA_MASTER_EXT *pst_master; -// u_int16 us_start = 0; -// u_int16 us_size = 0; -// u_int16 us_cnt = 0; -// -// pst_master = &gstGyroExt_l; -// us_size = static_cast(sizeof(u_int16) * 10); /* Size of one data item: 2byte * 10 data items */ -// -// /* Retrieve the location where the received one is stored */ -// us_start = gstPkgTempExt.start_point[2]; -// -// /* Stored in data master(Order of reception)*/ -// if (us_start >= VEHICLE_DKEEP_MAX) { -// /* Store the latest one at position 0 */ -// us_start = VEHICLE_DATA_POS_00; -// /* If you are discarding old data,,Set a flag */ -// gstPkgTempExt.data_break = VEHICLE_SNS_BREAK; -// } -// pst_master->uc_rcvflag = VEHICLE_RCVFLAG_ON; -// for (us_cnt = 0; us_cnt < us_size; us_cnt++) { -// pst_master->uc_data[us_start * us_size + us_cnt] = (u_int8)(pst_data->uc_data[us_cnt]); -// } -// -// /* Update next storage start position and latest data storage position */ -// us_start++; -// gstPkgTempExt.start_point[2] = us_start; -// -// /* Update data master size */ -// if (gstPkgTempExt.data_break == VEHICLE_SNS_BREAK) { -// /* Make the size of all extended data masters */ -// pst_master->us_size = VEHICLE_DSIZE_GYRO_EXT; -// } else { -// /* Add the size of one received data item */ -// pst_master->us_size = static_cast(pst_master->us_size + us_size); -// } -//} +void VehicleSensSetGyroExtlG(const LSDRV_LSDATA_G *pst_data) { + VEHICLESENS_DATA_MASTER_EXT *pst_master; + u_int16 us_start = 0; + u_int16 us_size = 0; + u_int16 us_cnt = 0; + + pst_master = &gstGyroExt_l; + us_size = static_cast(sizeof(u_int16) * 10); /* Size of one data item: 2byte * 10 data items */ + + /* Retrieve the location where the received one is stored */ + us_start = gstPkgTempExt.start_point[GyroExt]; + + /* Stored in data master(Order of reception)*/ + if (us_start >= VEHICLE_DKEEP_MAX) { + /* Store the latest one at position 0 */ + us_start = VEHICLE_DATA_POS_00; + /* If you are discarding old data,,Set a flag */ + gstPkgTempExt.data_break = VEHICLE_SNS_BREAK; + } + pst_master->ul_did = POSHAL_DID_GYRO_X; + pst_master->uc_rcvflag = VEHICLE_RCVFLAG_ON; + for (us_cnt = 0; us_cnt < us_size; us_cnt++) { + pst_master->uc_data[us_start * us_size + us_cnt] = (u_int8)(pst_data->uc_data[us_cnt]); + } + + /* Update next storage start position and latest data storage position */ + us_start++; + gstPkgTempExt.start_point[GyroExt] = us_start; + + /* Update data master size */ + if (gstPkgTempExt.data_break == VEHICLE_SNS_BREAK) { + /* Make the size of all extended data masters */ + pst_master->us_size = VEHICLE_DSIZE_GYRO_EXT; + } else { + /* Add the size of one received data item */ + pst_master->us_size = static_cast(pst_master->us_size + us_size); + } +} /******************************************************************************* * MODULE : VehicleSensGetGyroExtl @@ -190,47 +195,43 @@ void VehicleSensInitGyroExtl(void) { * RETURN : void ******************************************************************************/ void VehicleSensGetGyroExtl(VEHICLESENS_DATA_MASTER_EXT *pst_data) { - const VEHICLESENS_DATA_MASTER_EXT *pst_master; - u_int16 us_size = 0; - u_int16 us_data_cnt = 0; - u_int16 us_cnt = 0; - u_int16 us_loop_cnt = 0; + const VEHICLESENS_DATA_MASTER_EXT *pst_master; + uint16_t us_size = 0; + uint16_t us_data_cnt = 0; // Number of data contained + uint16_t us_loop_cnt = 0; // 64 over index - /* Store the data master in the specified destination. */ - pst_master = &gstGyroExt_l; - pst_data->ul_did = pst_master->ul_did; - pst_data->us_size = pst_master->us_size; - pst_data->uc_rcvflag = pst_master->uc_rcvflag; + /* Store the data master in the specified destination. */ + pst_master = &gstGyroExt_l; + pst_data->ul_did = pst_master->ul_did; + pst_data->us_size = pst_master->us_size; + pst_data->uc_rcvflag = pst_master->uc_rcvflag; - us_size = static_cast(sizeof(u_int16) * 10); /* Size of one data item: 2byte * 10 data items */ + us_size = static_cast(sizeof(u_int16) * 10); /* Size of one data item: 2byte * 10 data items */ - /* Checking whether the number of stored entries is looped */ + /* Checking whether the number of stored entries is looped */ + if (gstPkgTempExt.data_break == VEHICLE_SNS_BREAK) { + us_data_cnt = VEHICLE_DKEEP_MAX; + } else { + us_data_cnt = gstPkgTempExt.start_point[GyroExt]; + } + + /* Acquire data from the oldest data master */ + for (uint16_t us_cnt = 0; us_cnt < us_data_cnt; us_cnt++) { if (gstPkgTempExt.data_break == VEHICLE_SNS_BREAK) { - us_data_cnt = VEHICLE_DKEEP_MAX; + /* Get information before loop */ + if (gstPkgTempExt.start_point[GyroExt] + us_cnt < VEHICLE_DKEEP_MAX) { + memcpy(&pst_data->uc_data[us_cnt * us_size], + &pst_master->uc_data[(gstPkgTempExt.start_point[GyroExt] + us_cnt) * us_size], us_size); + } else { + memcpy(&pst_data->uc_data[us_cnt * us_size], + &pst_master->uc_data[us_loop_cnt * us_size], us_size); + us_loop_cnt++; + } } else { - us_data_cnt = gstPkgTempExt.start_point[2]; - } - - /* Acquire data from the newest data master */ - us_loop_cnt = 0; - for (us_cnt = 0; us_cnt < us_data_cnt; us_cnt++) { - if (gstPkgTempExt.data_break == VEHICLE_SNS_BREAK) { - /* Get information after loop */ - if (gstPkgTempExt.start_point[2] > us_cnt) { - memcpy(&pst_data->uc_data[us_cnt * us_size], - &pst_master->uc_data[(gstPkgTempExt.start_point[2] - us_cnt - 1) * us_size], us_size); - us_loop_cnt++; - } else { - memcpy(&pst_data->uc_data[us_cnt * us_size], - &pst_master->uc_data[(us_data_cnt - us_cnt - 1 + us_loop_cnt) * us_size], us_size); - } - } else { - if ((u_int32)(us_data_cnt - us_cnt) <= (u_int32)VEHICLE_DKEEP_MAX) { // LCOV_EXCL_BR_LINE 6: always true - memcpy(&pst_data->uc_data[us_cnt * us_size], - &pst_master->uc_data[(us_data_cnt - us_cnt - 1) * us_size], us_size); - } - } + memcpy(&pst_data->uc_data[us_cnt * us_size], + &pst_master->uc_data[us_cnt * us_size], us_size); } + } } /******************************************************************************* @@ -250,6 +251,7 @@ void VehicleSensGetGyroRevl(VEHICLESENS_DATA_MASTER *pst_data) { pst_data->ul_did = pst_master->ul_did; pst_data->us_size = pst_master->us_size; pst_data->uc_rcvflag = pst_master->uc_rcvflag; + pst_data->uc_snscnt = pst_master->uc_snscnt; memcpy(pst_data->uc_data, pst_master->uc_data, pst_master->us_size); /* Ignore->MISRA-C++:2008 Rule 5-0-5 */ } #endif diff --git a/positioning/server/src/Sensor/VehicleSens_Did_GyroFst_l.cpp b/positioning/server/src/Sensor/VehicleSens_Did_GyroFst_l.cpp deleted file mode 100644 index 66b4128d..00000000 --- a/positioning/server/src/Sensor/VehicleSens_Did_GyroFst_l.cpp +++ /dev/null @@ -1,175 +0,0 @@ -/* - * @copyright Copyright (c) 2016-2019 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. - */ - -/******************************************************************************* - * File name :VehicleSens_Did_GyroFst_l.cpp - * System name :Polaris - * Subsystem name :Vehicle sensor process - * Program name :Vehicle sensor data master(POSHAL_DID_GYRO_FST) - * Module configuration :VehicleSensInitGyroFstl() Vehicle sensor GYRO (initial sensor) initialization functions - * :VehicleSensSetGyroFstl() Vehicle sensor GYRO (initial sensor) SET-function - * :VehicleSensSetGyroFstG() Vehicle sensor GYRO (initial sensor) SET-function - * :VehicleSensGetGyroFstl() Vehicle sensor GYRO (initial sensor) GET-function - ******************************************************************************/ - -#include -#include "VehicleSens_DataMaster.h" - -#if CONFIG_SENSOR_EXT_VALID /* Initial Sensor Support */ -/*************************************************/ -/* Global variable */ -/*************************************************/ -static VEHICLESENS_DATA_MASTER_FST gstGyroFst_l; // NOLINT(readability/nolint) - -/******************************************************************************* -* MODULE : VehicleSensInitGyroFstl -* ABSTRACT : Vehicle Sensor GYRO Initialization Functions -* FUNCTION : GYRO data master initialization process -* ARGUMENT : void -* NOTE : -* RETURN : void -******************************************************************************/ -void VehicleSensInitGyroFstl(void) { -// u_int16 *pus; - - memset(&gstGyroFst_l, 0x00, sizeof(VEHICLESENS_DATA_MASTER_FST)); -// gstGyroFst_l.ul_did = POSHAL_DID_GYRO_FST; - gstGyroFst_l.us_size = 0; - gstGyroFst_l.partition_flg = 0; - -// pus = reinterpret_cast(gstGyroFst_l.uc_data); -// memset(reinterpret_cast(pus), VEHICLE_DINIT_GYRO, VEHICLE_DSIZE_GYRO_FST); -} - -/******************************************************************************* -* MODULE : VehicleSensSetGyroFstl -* ABSTRACT : Vehicle Sensor GYRO SET Functions -* FUNCTION : Update the GYRO data master -* ARGUMENT : *pst_data : Pointer to the message data received by the direct line -* NOTE : -* RETURN : VEHICLESENS_EQ : No data change -* VEHICLESENS_NEQ : Data change -******************************************************************************/ -//u_int8 VehicleSensSetGyroFstl(const LSDRV_LSDATA_FST *pst_data) { // LCOV_EXCL_START 8: dead code. -// AGL_ASSERT_NOT_TESTED(); // LCOV_EXCL_LINE 200: test assert -// u_int8 uc_ret; -// VEHICLESENS_DATA_MASTER_FST *pst_master; -// -// pst_master = &gstGyroFst_l; -// -// /* Compare data master and received data */ -// uc_ret = VehicleSensmemcmp(pst_master->uc_data, -// pst_data->uc_data, pst_data->uc_size); /* Ignore->MISRA-C++:2008 Rule 5-0-5 */ -// -// /* Received data is set in the data master. */ -// pst_master->ul_did = pst_data->ul_did; -// pst_master->us_size = pst_data->uc_size; -// pst_master->partition_flg = 0; -// pst_master->uc_rcvflag = VEHICLE_RCVFLAG_ON; -// memset(pst_master->uc_data, 0x00, sizeof(pst_master->uc_data)); -// memcpy(pst_master->uc_data, pst_data->uc_data, pst_data->uc_size); /* Ignore->MISRA-C++:2008 Rule 5-0-5 */ -// -// return(uc_ret); -//} -// LCOV_EXCL_STOP - -/******************************************************************************* -* MODULE : VehicleSensSetGyroFstG -* ABSTRACT : Vehicle Sensor GYRO SET Functions -* FUNCTION : Update the GYRO data master -* ARGUMENT : *pst_data : Pointer to the message data received by the direct line -* NOTE : -* RETURN : VEHICLESENS_EQ : No data change -* VEHICLESENS_NEQ : Data change -******************************************************************************/ -//u_int8 VehicleSensSetGyroFstG(const LSDRV_LSDATA_FST_GYRO *pst_data) { -// static u_int8 uc_ret = VEHICLESENS_EQ; -// VEHICLESENS_DATA_MASTER_FST *pst_master; -// -// u_int8 partition_max; /* Total number of partitions */ -// u_int8 partition_num; /* Data number */ -// -// partition_max = pst_data->uc_partition_max; -// partition_num = pst_data->uc_partition_num; -// -// pst_master = &gstGyroFst_l; -// -// if (partition_max == 1) { /* Ignore->MISRA-C++:2008 Rule 5-0-5 */ -// /* Compare data master and received data */ -// uc_ret = VehicleSensmemcmp(pst_master->uc_data, -// pst_data->uc_data, pst_data->uc_size); /* Ignore->MISRA-C++:2008 Rule 5-0-5 */ -// -// /* Received data is set in the data master. */ -// pst_master->ul_did = pst_data->ul_did; -// pst_master->us_size = pst_data->uc_size; -// pst_master->uc_rcvflag = VEHICLE_RCVFLAG_ON; -// pst_master->partition_flg = 0; -// memset(pst_master->uc_data, 0x00, sizeof(pst_master->uc_data)); -// memcpy(pst_master->uc_data, pst_data->uc_data, pst_data->uc_size); /* Ignore->MISRA-C++:2008 Rule 5-0-5 */ -// } else if (partition_max == 2) { /* Ignore->MISRA-C++:2008 Rule 5-0-5 */ -// if (partition_num == 1) { /* Ignore->MISRA-C++:2008 Rule 5-0-5 */ -// /* Compare data master and received data */ -// /* Ignore->MISRA-C++:2008 Rule 5-0-5 */ -// uc_ret = VehicleSensmemcmp(pst_master->uc_data, pst_data->uc_data, pst_data->uc_size); -// -// /* Received data is set in the data master. */ -// pst_master->ul_did = pst_data->ul_did; -// /* Ignore->MISRA-C++:2008 Rule 5-0-5 */ -// pst_master->us_size = static_cast(pst_master->us_size + pst_data->uc_size); -// pst_master->partition_flg = 1; -// memcpy(pst_master->uc_data, pst_data->uc_data, pst_data->uc_size); /* Ignore->MISRA-C++:2008 Rule 5-0-5 */ -// } else if (partition_num == 2) { /* Ignore->MISRA-C++:2008 Rule 5-0-5 */ -// /* Compare data master and received data */ -// if (uc_ret == VEHICLESENS_EQ) { -// uc_ret = VehicleSensmemcmp(&pst_master->uc_data[VEHICLE_DSIZE_GYRO_FST], -// pst_data->uc_data, pst_data->uc_size); /* Ignore->MISRA-C++:2008 Rule 5-0-5 */ -// } -// -// /* Received data is set in the data master. */ -// pst_master->ul_did = pst_data->ul_did; -// /* Ignore->MISRA-C++:2008 Rule 5-0-5 */ -// pst_master->us_size = static_cast(pst_master->us_size + pst_data->uc_size); -// pst_master->uc_rcvflag = VEHICLE_RCVFLAG_ON; -// pst_master->partition_flg = 1; -// /* Ignore->MISRA-C++:2008 Rule 5-0-5 */ -// memcpy(&pst_master->uc_data[VEHICLE_DSIZE_GYRO_FST], pst_data->uc_data, pst_data->uc_size); -// } else {} -// } else {} -// -// return(uc_ret); -//} -/******************************************************************************* -* MODULE : VehicleSensGetGyroFstl -* ABSTRACT : Vehicle Sensor GYRO GET Functions -* FUNCTION : Provide a GYRO data master -* ARGUMENT : *pst_data : Pointer to the data master acquisition destination -* NOTE : -* RETURN : void -******************************************************************************/ -void VehicleSensGetGyroFstl(VEHICLESENS_DATA_MASTER_FST *pst_data) { - const VEHICLESENS_DATA_MASTER_FST *pst_master; - - pst_master = &gstGyroFst_l; - - /* Store the data master in the specified destination. */ - pst_data->ul_did = pst_master->ul_did; - pst_data->us_size = pst_master->us_size; - pst_data->uc_rcvflag = pst_master->uc_rcvflag; - pst_data->partition_flg = pst_master->partition_flg; - memcpy(pst_data->uc_data, pst_master->uc_data, pst_master->us_size); /* Ignore->MISRA-C++:2008 Rule 5-0-5 */ -} - -#endif diff --git a/positioning/server/src/Sensor/VehicleSens_Did_GyroTemp.cpp b/positioning/server/src/Sensor/VehicleSens_Did_GyroTemp.cpp index 4e3c9493..d6debe67 100644 --- a/positioning/server/src/Sensor/VehicleSens_Did_GyroTemp.cpp +++ b/positioning/server/src/Sensor/VehicleSens_Did_GyroTemp.cpp @@ -1,5 +1,5 @@ /* - * @copyright Copyright (c) 2016-2019 TOYOTA MOTOR CORPORATION. + * @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. @@ -65,24 +65,24 @@ void VehicleSensGetGyroTemp(VEHICLESENS_DATA_MASTER *pst_data, u_int8 uc_get_met * @param[in] *pst_data: Pointer to the data master acquisition destination * @param[in] uc_get_method: Acquisition method(Direct Line or CAN) */ -//void VehicleSensGetGyroTempExt(VEHICLESENS_DATA_MASTER_EXT *pst_data, u_int8 uc_get_method) { -// switch (uc_get_method) { // LCOV_EXCL_BR_LINE 6:VEHICLESENS_GETMETHOD_CAN cannot to pass in -// case VEHICLESENS_GETMETHOD_CAN: -// { -// /* When acquiring from CAN data */ -// AGL_ASSERT_NOT_TESTED(); // LCOV_EXCL_LINE 200: test assert -// break; // LCOV_EXCL_LINE 8: dead code -// } -// case VEHICLESENS_GETMETHOD_LINE: -// { -// /* To acquire from LineSensor */ -// VehicleSensGetGyroTempExtl(pst_data); -// break; -// } -// default: -// break; -// } -//} +void VehicleSensGetGyroTempExt(VEHICLESENS_DATA_MASTER_EXT *pst_data, u_int8 uc_get_method) { + switch (uc_get_method) { // LCOV_EXCL_BR_LINE 6:VEHICLESENS_GETMETHOD_CAN cannot to pass in + case VEHICLESENS_GETMETHOD_CAN: + { + /* When acquiring from CAN data */ + AGL_ASSERT_NOT_TESTED(); // LCOV_EXCL_LINE 200: test assert + break; // LCOV_EXCL_LINE 8: dead code + } + case VEHICLESENS_GETMETHOD_LINE: + { + /* To acquire from LineSensor */ + VehicleSensGetGyroTempExtl(pst_data); + break; + } + default: + break; + } +} /** * @brief @@ -93,22 +93,22 @@ void VehicleSensGetGyroTemp(VEHICLESENS_DATA_MASTER *pst_data, u_int8 uc_get_met * @param[in] *pst_data: Pointer to the data master acquisition destination * @param[in] uc_get_method: Acquisition method(Direct Line or CAN) */ -//void VehicleSensGetGyroTempFst(VEHICLESENS_DATA_MASTER_FST *pst_data, u_int8 uc_get_method) { -// switch (uc_get_method) { // LCOV_EXCL_BR_LINE 6:VEHICLESENS_GETMETHOD_CAN cannot to pass in -// case VEHICLESENS_GETMETHOD_CAN: -// { -// /* When acquiring from CAN data */ -// AGL_ASSERT_NOT_TESTED(); // LCOV_EXCL_LINE 200: test assert -// break; // LCOV_EXCL_LINE 8: dead code -// } -// case VEHICLESENS_GETMETHOD_LINE: -// { -// /* To acquire from LineSensor */ -// VehicleSensGetGyroTempFstl(pst_data); -// break; -// } -// default: -// break; -// } -//} +void VehicleSensGetGyroTempFst(VEHICLESENS_DATA_MASTER_FST *pst_data, u_int8 uc_get_method) { + switch (uc_get_method) { // LCOV_EXCL_BR_LINE 6:VEHICLESENS_GETMETHOD_CAN cannot to pass in + case VEHICLESENS_GETMETHOD_CAN: + { + /* When acquiring from CAN data */ + AGL_ASSERT_NOT_TESTED(); // LCOV_EXCL_LINE 200: test assert + break; // LCOV_EXCL_LINE 8: dead code + } + case VEHICLESENS_GETMETHOD_LINE: + { + /* To acquire from LineSensor */ + VehicleSensGetGyroTempFstl(pst_data); + break; + } + default: + break; + } +} diff --git a/positioning/server/src/Sensor/VehicleSens_Did_GyroTempExt_l.cpp b/positioning/server/src/Sensor/VehicleSens_Did_GyroTempExt_l.cpp index accddd42..aee750df 100644 --- a/positioning/server/src/Sensor/VehicleSens_Did_GyroTempExt_l.cpp +++ b/positioning/server/src/Sensor/VehicleSens_Did_GyroTempExt_l.cpp @@ -1,5 +1,5 @@ /* - * @copyright Copyright (c) 2016-2019 TOYOTA MOTOR CORPORATION. + * @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. @@ -27,7 +27,7 @@ /*************************************************/ /* Global variable */ /*************************************************/ -//static VEHICLESENS_DATA_MASTER_EXT g_stgyro_temp_ext_l; // NOLINT(readability/nolint) +static VEHICLESENS_DATA_MASTER_EXT g_stgyro_temp_ext_l; // NOLINT(readability/nolint) /** * @brief @@ -36,10 +36,10 @@ * Gyro Temperature Data Master Initialization Processing */ void VehicleSensInitGyroTempExtl(void) { -// (void)memset(reinterpret_cast(&g_stgyro_temp_ext_l), 0, sizeof(VEHICLESENS_DATA_MASTER_EXT)); -// g_stgyro_temp_ext_l.ul_did = POSHAL_DID_GYRO_TEMP; -// g_stgyro_temp_ext_l.us_size = VEHICLE_DSIZE_GYRO_TEMP_EXT_INIT; -// g_stgyro_temp_ext_l.uc_rcvflag = VEHICLE_RCVFLAG_OFF; + (void)memset(reinterpret_cast(&g_stgyro_temp_ext_l), 0, sizeof(VEHICLESENS_DATA_MASTER_EXT)); + g_stgyro_temp_ext_l.ul_did = POSHAL_DID_GYRO_TEMP; + g_stgyro_temp_ext_l.us_size = VEHICLE_DSIZE_GYRO_TEMP_EXT_INIT; + g_stgyro_temp_ext_l.uc_rcvflag = VEHICLE_RCVFLAG_OFF; } /** @@ -53,43 +53,43 @@ void VehicleSensInitGyroTempExtl(void) { * @return VEHICLESENS_EQ No data change
* VEHICLESENS_NEQ Data change */ -//void VehicleSensSetGyroTempExtlG(const LSDRV_LSDATA_G *pst_data) { -// VEHICLESENS_DATA_MASTER_EXT *pst_master; -// u_int16 us_start = 0; -// u_int16 us_size = 0; -// u_int16 us_cnt = 0; -// -// pst_master = &g_stgyro_temp_ext_l; -// us_size = sizeof(u_int16); /* Size of one data item: 2byte */ -// -// /* Store the latest one in the internal data structure */ -// us_start = gstPkgTempExt.start_point[6]; /* Location to store one received message */ -// /* Stored in data master(Order of reception)*/ -// if (us_start == VEHICLE_DKEEP_MAX) { -// /* Store the latest one at position 0 */ -// us_start = VEHICLE_DATA_POS_00; -// /* If you are discarding old data,,Set a flag */ -// gstPkgTempExt.data_break = VEHICLE_SNS_BREAK; -// } -// pst_master->ul_did = pst_data->ul_did; -// pst_master->uc_rcvflag = VEHICLE_RCVFLAG_ON; -// for (us_cnt = 0; us_cnt < us_size; us_cnt++) { -// pst_master->uc_data[us_start * us_size + us_cnt] = (u_int8)(pst_data->uc_data[us_cnt]); -// } -// -// /* Update next storage start position and latest data storage position. */ -// us_start++; -// gstPkgTempExt.start_point[6] = us_start; -// -// /* Update data master size */ -// if (gstPkgTempExt.data_break == VEHICLE_SNS_BREAK) { -// /* Make the size of all extended data masters */ -// pst_master->us_size = VEHICLE_DSIZE_GYRO_TEMP_EXT; -// } else { -// /* Add the size of one received data item */ -// pst_master->us_size = static_cast(pst_master->us_size + us_size); -// } -//} +void VehicleSensSetGyroTempExtlG(const LSDRV_LSDATA_G *pst_data) { + VEHICLESENS_DATA_MASTER_EXT *pst_master; + u_int16 us_start = 0; + u_int16 us_size = 0; + u_int16 us_cnt = 0; + + pst_master = &g_stgyro_temp_ext_l; + us_size = sizeof(u_int16); /* Size of one data item: 2byte */ + + /* Store the latest one in the internal data structure */ + us_start = gstPkgTempExt.start_point[GyroTemp]; /* Location to store one received message */ + /* Stored in data master(Order of reception)*/ + if (us_start == VEHICLE_DKEEP_MAX) { + /* Store the latest one at position 0 */ + us_start = VEHICLE_DATA_POS_00; + /* If you are discarding old data,,Set a flag */ + gstPkgTempExt.data_break = VEHICLE_SNS_BREAK; + } + pst_master->ul_did = pst_data->ul_did; + pst_master->uc_rcvflag = VEHICLE_RCVFLAG_ON; + for (us_cnt = 0; us_cnt < us_size; us_cnt++) { + pst_master->uc_data[us_start * us_size + us_cnt] = (u_int8)(pst_data->uc_data[us_cnt]); + } + + /* Update next storage start position and latest data storage position. */ + us_start++; + gstPkgTempExt.start_point[GyroTemp] = us_start; + + /* Update data master size */ + if (gstPkgTempExt.data_break == VEHICLE_SNS_BREAK) { + /* Make the size of all extended data masters */ + pst_master->us_size = VEHICLE_DSIZE_GYRO_TEMP_EXT; + } else { + /* Add the size of one received data item */ + pst_master->us_size = static_cast(pst_master->us_size + us_size); + } +} /** * @brief @@ -99,46 +99,42 @@ void VehicleSensInitGyroTempExtl(void) { * * @param[in] Pointer to the data master acquisition destination */ -//void VehicleSensGetGyroTempExtl(VEHICLESENS_DATA_MASTER_EXT *pst_data) { -// const VEHICLESENS_DATA_MASTER_EXT *pst_master; -// u_int16 us_size = 0; -// u_int16 us_data_cnt = 0; -// u_int16 us_cnt = 0; -// u_int16 us_loop_cnt = 0; -// -// /* Store the data master in the specified destination. */ -// pst_master = &g_stgyro_temp_ext_l; -// pst_data->ul_did = pst_master->ul_did; -// pst_data->us_size = pst_master->us_size; -// pst_data->uc_rcvflag = pst_master->uc_rcvflag; -// -// us_size = sizeof(u_int16); /* Size of one data item: 2byte */ -// -// /* Checking whether the number of stored entries is looped */ -// if (gstPkgTempExt.data_break == VEHICLE_SNS_BREAK) { -// us_data_cnt = VEHICLE_DKEEP_MAX; -// } else { -// us_data_cnt = gstPkgTempExt.start_point[6]; -// } -// -// /* Acquire data from the newest data master */ -// us_loop_cnt = 0; -// for (us_cnt = 0; us_cnt < us_data_cnt; us_cnt++) { -// if (gstPkgTempExt.data_break == VEHICLE_SNS_BREAK) { -// /* Get information after loop */ -// if (gstPkgTempExt.start_point[6] > us_cnt) { -// memcpy(&pst_data->uc_data[us_cnt * us_size], -// &pst_master->uc_data[(gstPkgTempExt.start_point[6] - us_cnt - 1) * us_size], us_size); -// us_loop_cnt++; -// } else { -// memcpy(&pst_data->uc_data[us_cnt * us_size], -// &pst_master->uc_data[(us_data_cnt - us_cnt - 1 + us_loop_cnt) * us_size], us_size); -// } -// } else { -// if ((u_int32)(us_data_cnt - us_cnt) <= (u_int32)VEHICLE_DKEEP_MAX) { // LCOV_EXCL_BR_LINE 6: always true -// memcpy(&pst_data->uc_data[us_cnt * us_size], -// &pst_master->uc_data[(us_data_cnt - us_cnt - 1) * us_size], us_size); -// } -// } -// } -//} +void VehicleSensGetGyroTempExtl(VEHICLESENS_DATA_MASTER_EXT *pst_data) { + const VEHICLESENS_DATA_MASTER_EXT *pst_master; + uint16_t us_size = 0; + uint16_t us_data_cnt = 0; // Number of data contained + uint16_t us_loop_cnt = 0; // 64 over index + + /* Store the data master in the specified destination. */ + pst_master = &g_stgyro_temp_ext_l; + pst_data->ul_did = pst_master->ul_did; + pst_data->us_size = pst_master->us_size; + pst_data->uc_rcvflag = pst_master->uc_rcvflag; + + us_size = sizeof(u_int16); /* Size of one data item: 2byte */ + + /* Checking whether the number of stored entries is looped */ + if (gstPkgTempExt.data_break == VEHICLE_SNS_BREAK) { + us_data_cnt = VEHICLE_DKEEP_MAX; + } else { + us_data_cnt = gstPkgTempExt.start_point[GyroTemp]; + } + + /* Acquire data from the oldest data master */ + for (uint16_t us_cnt = 0; us_cnt < us_data_cnt; us_cnt++) { + if (gstPkgTempExt.data_break == VEHICLE_SNS_BREAK) { + /* Get information before loop */ + if (gstPkgTempExt.start_point[GyroTemp] + us_cnt < VEHICLE_DKEEP_MAX) { + memcpy(&pst_data->uc_data[us_cnt * us_size], + &pst_master->uc_data[(gstPkgTempExt.start_point[GyroTemp] + us_cnt) * us_size], us_size); + } else { + memcpy(&pst_data->uc_data[us_cnt * us_size], + &pst_master->uc_data[us_loop_cnt * us_size], us_size); + us_loop_cnt++; + } + } else { + memcpy(&pst_data->uc_data[us_cnt * us_size], + &pst_master->uc_data[us_cnt * us_size], us_size); + } + } +} diff --git a/positioning/server/src/Sensor/VehicleSens_Did_GyroTempFst_l.cpp b/positioning/server/src/Sensor/VehicleSens_Did_GyroTempFst_l.cpp index d87315de..3c2906d9 100644 --- a/positioning/server/src/Sensor/VehicleSens_Did_GyroTempFst_l.cpp +++ b/positioning/server/src/Sensor/VehicleSens_Did_GyroTempFst_l.cpp @@ -1,5 +1,5 @@ /* - * @copyright Copyright (c) 2016-2019 TOYOTA MOTOR CORPORATION. + * @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. @@ -27,7 +27,7 @@ /*************************************************/ /* Global variable */ /*************************************************/ -//static VEHICLESENS_DATA_MASTER_FST g_st_gyro_tempfst_l; // NOLINT(readability/nolint) +static VEHICLESENS_DATA_MASTER_FST g_st_gyro_tempfst_l; // NOLINT(readability/nolint) /** * @brief @@ -36,11 +36,11 @@ * Gyro Temperature Data Master Initialization Processing */ void VehicleSensInitGyroTempFstl(void) { -// memset(&g_st_gyro_tempfst_l, 0x00, sizeof(VEHICLESENS_DATA_MASTER_FST)); -// g_st_gyro_tempfst_l.ul_did = POSHAL_DID_GYRO_TEMP_FST; -// g_st_gyro_tempfst_l.us_size = VEHICLE_DSIZE_GYRO_TEMP_EXT_INIT; -// g_st_gyro_tempfst_l.uc_rcvflag = VEHICLE_RCVFLAG_OFF; -// g_st_gyro_tempfst_l.partition_flg = 0; + memset(&g_st_gyro_tempfst_l, 0x00, sizeof(VEHICLESENS_DATA_MASTER_FST)); + g_st_gyro_tempfst_l.ul_did = POSHAL_DID_GYRO_TEMP_FST; + g_st_gyro_tempfst_l.us_size = VEHICLE_DSIZE_GYRO_TEMP_EXT_INIT; + g_st_gyro_tempfst_l.uc_rcvflag = VEHICLE_RCVFLAG_OFF; + g_st_gyro_tempfst_l.partition_flg = 0; } /** @@ -54,57 +54,57 @@ void VehicleSensInitGyroTempFstl(void) { * @return VEHICLESENS_EQ No data change
* VEHICLESENS_NEQ Data change */ -//u_int8 VehicleSensSetGyroTempFstG(const LSDRV_LSDATA_FST_GYRO_TEMP *pst_data) { -// static u_int8 uc_ret = VEHICLESENS_EQ; -// VEHICLESENS_DATA_MASTER_FST *pst_master; -// -// u_int8 partition_max; /* Total number of partitions */ -// u_int8 partition_num; /* Data number */ -// -// pst_master = &g_st_gyro_tempfst_l; -// -// partition_max = pst_data->uc_partition_max; -// partition_num = pst_data->uc_partition_num; -// -// if (partition_max == 1) { -// /* Compare data master and received data */ -// uc_ret = VehicleSensmemcmp(pst_master->uc_data, pst_data->uc_data, pst_data->uc_size); -// -// /* Received data is set in the data master. */ -// pst_master->ul_did = pst_data->ul_did; -// pst_master->us_size = pst_data->uc_size; -// pst_master->uc_rcvflag = VEHICLE_RCVFLAG_ON; -// pst_master->partition_flg = 0; -// memset(pst_master->uc_data, 0x00, sizeof(pst_master->uc_data)); -// memcpy(pst_master->uc_data, pst_data->uc_data, pst_data->uc_size); -// } else if (partition_max == 2) { -// if (partition_num == 1) { -// /* Compare data master and received data */ -// uc_ret = VehicleSensmemcmp(pst_master->uc_data, pst_data->uc_data, pst_data->uc_size); -// -// /* Received data is set in the data master. */ -// pst_master->ul_did = pst_data->ul_did; -// pst_master->us_size = static_cast(pst_master->us_size + pst_data->uc_size); -// pst_master->partition_flg = 1; -// memcpy(pst_master->uc_data, pst_data->uc_data, pst_data->uc_size); -// } else if (partition_num == 2) { -// /* Compare data master and received data */ -// if (uc_ret == VEHICLESENS_EQ) { -// uc_ret = VehicleSensmemcmp(&pst_master->uc_data[VEHICLE_DSIZE_GYROTEMP_FST], -// pst_data->uc_data, pst_data->uc_size); -// } -// -// /* Received data is set in the data master. */ -// pst_master->ul_did = pst_data->ul_did; -// pst_master->us_size = static_cast(pst_master->us_size + pst_data->uc_size); -// pst_master->uc_rcvflag = VEHICLE_RCVFLAG_ON; -// pst_master->partition_flg = 1; -// memcpy(&pst_master->uc_data[VEHICLE_DSIZE_GYROTEMP_FST], pst_data->uc_data, pst_data->uc_size); -// } else {} -// } else {} -// -// return(uc_ret); -//} +u_int8 VehicleSensSetGyroTempFstG(const LSDRV_LSDATA_FST_GYRO_TEMP *pst_data) { + static u_int8 uc_ret = VEHICLESENS_EQ; + VEHICLESENS_DATA_MASTER_FST *pst_master; + + u_int8 partition_max; /* Total number of partitions */ + u_int8 partition_num; /* Data number */ + + pst_master = &g_st_gyro_tempfst_l; + + partition_max = pst_data->uc_partition_max; + partition_num = pst_data->uc_partition_num; + + if (partition_max == 1) { + /* Compare data master and received data */ + uc_ret = VehicleSensmemcmp(pst_master->uc_data, pst_data->uc_data, pst_data->uc_size); + + /* Received data is set in the data master. */ + pst_master->ul_did = pst_data->ul_did; + pst_master->us_size = pst_data->uc_size; + pst_master->uc_rcvflag = VEHICLE_RCVFLAG_ON; + pst_master->partition_flg = 0; + memset(pst_master->uc_data, 0x00, sizeof(pst_master->uc_data)); + memcpy(pst_master->uc_data, pst_data->uc_data, pst_data->uc_size); + } else if (partition_max == 2) { + if (partition_num == 1) { + /* Compare data master and received data */ + uc_ret = VehicleSensmemcmp(pst_master->uc_data, pst_data->uc_data, pst_data->uc_size); + + /* Received data is set in the data master. */ + pst_master->ul_did = pst_data->ul_did; + pst_master->us_size = static_cast(pst_master->us_size + pst_data->uc_size); + pst_master->partition_flg = 1; + memcpy(pst_master->uc_data, pst_data->uc_data, pst_data->uc_size); + } else if (partition_num == 2) { + /* Compare data master and received data */ + if (uc_ret == VEHICLESENS_EQ) { + uc_ret = VehicleSensmemcmp(&pst_master->uc_data[VEHICLE_DSIZE_GYROTEMP_FST], + pst_data->uc_data, pst_data->uc_size); + } + + /* Received data is set in the data master. */ + pst_master->ul_did = pst_data->ul_did; + pst_master->us_size = static_cast(pst_master->us_size + pst_data->uc_size); + pst_master->uc_rcvflag = VEHICLE_RCVFLAG_ON; + pst_master->partition_flg = 1; + memcpy(&pst_master->uc_data[VEHICLE_DSIZE_GYROTEMP_FST], pst_data->uc_data, pst_data->uc_size); + } else {} + } else {} + + return(uc_ret); +} /** * @brief @@ -114,15 +114,15 @@ void VehicleSensInitGyroTempFstl(void) { * * @param[in] Pointer to the data master acquisition destination */ -//void VehicleSensGetGyroTempFstl(VEHICLESENS_DATA_MASTER_FST *pst_data) { -// const VEHICLESENS_DATA_MASTER_FST *pst_master; -// -// pst_master = &g_st_gyro_tempfst_l; -// -// /* Store the data master in the specified destination. */ -// pst_data->ul_did = pst_master->ul_did; -// pst_data->us_size = pst_master->us_size; -// pst_data->uc_rcvflag = pst_master->uc_rcvflag; -// pst_data->partition_flg = pst_master->partition_flg; -// memcpy(pst_data->uc_data, pst_master->uc_data, pst_master->us_size); -//} +void VehicleSensGetGyroTempFstl(VEHICLESENS_DATA_MASTER_FST *pst_data) { + const VEHICLESENS_DATA_MASTER_FST *pst_master; + + pst_master = &g_st_gyro_tempfst_l; + + /* Store the data master in the specified destination. */ + pst_data->ul_did = pst_master->ul_did; + pst_data->us_size = pst_master->us_size; + pst_data->uc_rcvflag = pst_master->uc_rcvflag; + pst_data->partition_flg = pst_master->partition_flg; + memcpy(pst_data->uc_data, pst_master->uc_data, pst_master->us_size); +} diff --git a/positioning/server/src/Sensor/VehicleSens_Did_GyroTemp_l.cpp b/positioning/server/src/Sensor/VehicleSens_Did_GyroTemp_l.cpp index 5baaa9de..002cf027 100644 --- a/positioning/server/src/Sensor/VehicleSens_Did_GyroTemp_l.cpp +++ b/positioning/server/src/Sensor/VehicleSens_Did_GyroTemp_l.cpp @@ -1,5 +1,5 @@ /* - * @copyright Copyright (c) 2016-2019 TOYOTA MOTOR CORPORATION. + * @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. @@ -37,7 +37,7 @@ static VEHICLESENS_DATA_MASTER gstGyroTemp_l; // NOLINT(readability/nolint */ void VehicleSensInitGyroTempl(void) { (void)memset(reinterpret_cast(&gstGyroTemp_l), 0, sizeof(VEHICLESENS_DATA_MASTER)); -// gstGyroTemp_l.ul_did = POSHAL_DID_GYRO_TEMP; + gstGyroTemp_l.ul_did = POSHAL_DID_GYRO_TEMP; gstGyroTemp_l.us_size = VEHICLE_DSIZE_GYRO_TEMP; gstGyroTemp_l.uc_rcvflag = VEHICLE_RCVFLAG_OFF; } @@ -53,24 +53,24 @@ void VehicleSensInitGyroTempl(void) { * @return VEHICLESENS_EQ No data change
* VEHICLESENS_NEQ Data change */ -//u_int8 VehicleSensSetGyroTemplG(const LSDRV_LSDATA_G *pst_data) { -// u_int8 uc_ret; -// VEHICLESENS_DATA_MASTER *pst_master; -// -// pst_master = &gstGyroTemp_l; -// -// /* Compare data master and received data */ -// uc_ret = VehicleSensmemcmp(pst_master->uc_data, pst_data->uc_data, pst_data->uc_size); -// -// /* Received data is set in the data master. */ -// pst_master->ul_did = pst_data->ul_did; -// pst_master->us_size = pst_data->uc_size; -// pst_master->uc_rcvflag = VEHICLE_RCVFLAG_ON; -// (void)memcpy(reinterpret_cast(pst_master->uc_data), -// (const void *)(pst_data->uc_data), (size_t)(pst_data->uc_size)); -// -// return(uc_ret); -//} +u_int8 VehicleSensSetGyroTemplG(const LSDRV_LSDATA_G *pst_data) { + u_int8 uc_ret; + VEHICLESENS_DATA_MASTER *pst_master; + + pst_master = &gstGyroTemp_l; + + /* Compare data master and received data */ + uc_ret = VehicleSensmemcmp(pst_master->uc_data, pst_data->uc_data, pst_data->uc_size); + + /* Received data is set in the data master. */ + pst_master->ul_did = pst_data->ul_did; + pst_master->us_size = pst_data->uc_size; + pst_master->uc_rcvflag = VEHICLE_RCVFLAG_ON; + (void)memcpy(reinterpret_cast(pst_master->uc_data), + (const void *)(pst_data->uc_data), (size_t)(pst_data->uc_size)); + + return(uc_ret); +} /** * @brief diff --git a/positioning/server/src/Sensor/VehicleSens_Did_GyroTrouble.cpp b/positioning/server/src/Sensor/VehicleSens_Did_GyroTrouble.cpp index b1f2d935..e588c392 100644 --- a/positioning/server/src/Sensor/VehicleSens_Did_GyroTrouble.cpp +++ b/positioning/server/src/Sensor/VehicleSens_Did_GyroTrouble.cpp @@ -1,5 +1,5 @@ /* - * @copyright Copyright (c) 2016-2019 TOYOTA MOTOR CORPORATION. + * @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. @@ -46,7 +46,7 @@ void VehicleSensInitGyroTrouble(void) { (void)memset(reinterpret_cast(&(gstGyroTrouble)), static_cast(0x00), sizeof(VEHICLESENS_DATA_MASTER_GYRO_TROUBLE)); gstGyroTrouble.ul_did = VEHICLE_DID_GYRO_TROUBLE; -// gstGyroTrouble.us_size = VEHICLE_DSIZE_GYRO_TROUBLE; + gstGyroTrouble.us_size = VEHICLE_DSIZE_GYRO_TROUBLE; gstGyroTrouble.uc_data = VEHICLE_DINIT_GYRO_TROUBLE; } @@ -59,39 +59,39 @@ void VehicleSensInitGyroTrouble(void) { * RETURN : VEHICLESENS_EQ : No data change * VEHICLESENS_NEQ : Data change ******************************************************************************/ -//u_int8 VehicleSensSetGyroTrouble(const LSDRV_MSG_LSDATA_DAT_GYRO_TROUBLE *pst_data) { // LCOV_EXCL_START 8: dead code. -// AGL_ASSERT_NOT_TESTED(); // LCOV_EXCL_LINE 200: test assert -// u_int8 uc_ret = VEHICLESENS_EQ; -// VEHICLESENS_DATA_MASTER_GYRO_TROUBLE *pst_master; -// -// if (pst_data == NULL) { -// FRAMEWORKUNIFIEDLOG(ZONE_INFO, __FUNCTION__, "pst_data == NULL\r\n"); -// } else { -// pst_master = &gstGyroTrouble; -// -// /* Compare data master and received data */ -// uc_ret = VehicleSensmemcmp(&(pst_master->uc_data), &(pst_data->uc_data), pst_data->uc_size); -// -// /* Received data is set in the data master. */ -// pst_master->ul_did = pst_data->ul_did; -// pst_master->us_size = (u_int16)pst_data->uc_size; -// pst_master->uc_rcvflag = VEHICLE_RCVFLAG_ON; -// pst_master->uc_data = pst_data->uc_data; -// (void)memcpy(reinterpret_cast(&(pst_master->uc_data)), -// (const void *)(&(pst_data->uc_data)), sizeof(pst_master->uc_data)); -// } -// -//#if VEHICLE_SENS_DID_GYRO_TROUBLE_DEBUG_FACTORY -// FRAMEWORKUNIFIEDLOG(ZONE_INFO, __FUNCTION__, "#[DIAG] pst_data->ul_did == 0x%x", pst_data->ul_did); -// FRAMEWORKUNIFIEDLOG(ZONE_INFO, __FUNCTION__, "#[DIAG] gstGyroTrouble.ul_did == 0x%x\r\n", gstGyroTrouble.ul_did); -// FRAMEWORKUNIFIEDLOG(ZONE_INFO, __FUNCTION__, "#[DIAG] (u_int8)pst_data->ucSize == 0x%x", (u_int8)pst_data->uc_size); -// FRAMEWORKUNIFIEDLOG(ZONE_INFO, __FUNCTION__, "#[DIAG] gstGyroTrouble.us_size == 0x%x\r\n", gstGyroTrouble.us_size); -// FRAMEWORKUNIFIEDLOG(ZONE_INFO, __FUNCTION__, "#[DIAG] pst_data->uc_data == 0x%x", pst_data->uc_data); -// FRAMEWORKUNIFIEDLOG(ZONE_INFO, __FUNCTION__, "#[DIAG] gstGyroTrouble.uc_data == 0x%x\r\n", gstGyroTrouble.uc_data); -//#endif -// -// return(uc_ret); -//} +u_int8 VehicleSensSetGyroTrouble(const LSDRV_MSG_LSDATA_DAT_GYRO_TROUBLE *pst_data) { // LCOV_EXCL_START 8: dead code. + AGL_ASSERT_NOT_TESTED(); // LCOV_EXCL_LINE 200: test assert + u_int8 uc_ret = VEHICLESENS_EQ; + VEHICLESENS_DATA_MASTER_GYRO_TROUBLE *pst_master; + + if (pst_data == NULL) { + FRAMEWORKUNIFIEDLOG(ZONE_INFO, __FUNCTION__, "pst_data == NULL\r\n"); + } else { + pst_master = &gstGyroTrouble; + + /* Compare data master and received data */ + uc_ret = VehicleSensmemcmp(&(pst_master->uc_data), &(pst_data->uc_data), pst_data->uc_size); + + /* Received data is set in the data master. */ + pst_master->ul_did = pst_data->ul_did; + pst_master->us_size = (u_int16)pst_data->uc_size; + pst_master->uc_rcvflag = VEHICLE_RCVFLAG_ON; + pst_master->uc_data = pst_data->uc_data; + (void)memcpy(reinterpret_cast(&(pst_master->uc_data)), + (const void *)(&(pst_data->uc_data)), sizeof(pst_master->uc_data)); + } + +#if VEHICLE_SENS_DID_GYRO_TROUBLE_DEBUG_FACTORY + FRAMEWORKUNIFIEDLOG(ZONE_INFO, __FUNCTION__, "#[DIAG] pst_data->ul_did == 0x%x", pst_data->ul_did); + FRAMEWORKUNIFIEDLOG(ZONE_INFO, __FUNCTION__, "#[DIAG] gstGyroTrouble.ul_did == 0x%x\r\n", gstGyroTrouble.ul_did); + FRAMEWORKUNIFIEDLOG(ZONE_INFO, __FUNCTION__, "#[DIAG] (u_int8)pst_data->ucSize == 0x%x", (u_int8)pst_data->uc_size); + FRAMEWORKUNIFIEDLOG(ZONE_INFO, __FUNCTION__, "#[DIAG] gstGyroTrouble.us_size == 0x%x\r\n", gstGyroTrouble.us_size); + FRAMEWORKUNIFIEDLOG(ZONE_INFO, __FUNCTION__, "#[DIAG] pst_data->uc_data == 0x%x", pst_data->uc_data); + FRAMEWORKUNIFIEDLOG(ZONE_INFO, __FUNCTION__, "#[DIAG] gstGyroTrouble.uc_data == 0x%x\r\n", gstGyroTrouble.uc_data); +#endif + + return(uc_ret); +} /******************************************************************************* * MODULE : VehicleSensGetGyroTrouble diff --git a/positioning/server/src/Sensor/VehicleSens_Did_GyroX.cpp b/positioning/server/src/Sensor/VehicleSens_Did_GyroX.cpp new file mode 100644 index 00000000..3cda53a4 --- /dev/null +++ b/positioning/server/src/Sensor/VehicleSens_Did_GyroX.cpp @@ -0,0 +1,145 @@ +/* + * @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. + */ + +/******************************************************************************* + * File name :VehicleSens_Did_GyroX.cpp + * System name :_CWORD107_ + * Subsystem name :Vehicle sensor process + * Program name :Vehicle sensor data master(VEHICLE_DID_GYRO_X) + * Module configuration :VehicleSensGetGyroX() Vehicle Sensor GYRO GET Functions + ******************************************************************************/ + +#include +#include "VehicleSens_DataMaster.h" + +/*************************************************/ +/* Global variable */ +/*************************************************/ + +/******************************************************************************* +* MODULE : VehicleSensGetGyroX +* ABSTRACT : Vehicle Sensor GYRO_X GET Functions +* FUNCTION : Provide a GYRO data master +* ARGUMENT : *pst_data : Pointer to the data master acquisition destination +* uc_get_method : Acquisition method(Direct Line or CAN) +* NOTE : +* RETURN : void +******************************************************************************/ +void VehicleSensGetGyroX(VEHICLESENS_DATA_MASTER *pst_data, u_int8 uc_get_method) { + switch (uc_get_method) { // LCOV_EXCL_BR_LINE 6:VEHICLESENS_GETMETHOD_CAN cannot to pass in + case VEHICLESENS_GETMETHOD_CAN: + { + /* When acquiring from CAN data */ + AGL_ASSERT_NOT_TESTED(); // LCOV_EXCL_LINE 200: test assert + break; // LCOV_EXCL_LINE 8: dead code + } + case VEHICLESENS_GETMETHOD_LINE: + { + /* To acquire from LineSensor */ + VehicleSensGetGyroXl(pst_data); + break; + } + default: + break; + } +} + +#if CONFIG_SENSOR_EXT_VALID /* Initial Sensor Support */ +/******************************************************************************* +* MODULE : VehicleSensGetGyroRev +* ABSTRACT : Vehicle Sensor GYRO GET Functions +* FUNCTION : Provide a GYRO data master +* ARGUMENT : *pst_data : Pointer to the data master acquisition destination +* uc_get_method : Acquisition method(Direct Line or CAN) +* NOTE : +* RETURN : void +******************************************************************************/ +void VehicleSensGetGyroRev(VEHICLESENS_DATA_MASTER *pst_data, u_int8 uc_get_method) { + switch (uc_get_method) { // LCOV_EXCL_BR_LINE 6:VEHICLESENS_GETMETHOD_CAN cannot to pass in + case VEHICLESENS_GETMETHOD_CAN: + { + /* When acquiring from CAN data */ + AGL_ASSERT_NOT_TESTED(); // LCOV_EXCL_LINE 200: test assert + break; // LCOV_EXCL_LINE 8: dead code + } + case VEHICLESENS_GETMETHOD_LINE: + { + /* To acquire from LineSensor */ + VehicleSensGetGyroRevl(pst_data); + break; + } + default: + break; + } +} + +/******************************************************************************* +* MODULE : VehicleSensGetGyroExt +* ABSTRACT : Vehicle Sensor GYRO GET Functions +* FUNCTION : Provide a GYRO data master +* ARGUMENT : *pst_data : Pointer to the data master acquisition destination +* uc_get_method : Acquisition method(Direct Line or CAN) +* NOTE : +* RETURN : void +******************************************************************************/ +void VehicleSensGetGyroExt(VEHICLESENS_DATA_MASTER_EXT *pst_data, u_int8 uc_get_method) { + switch (uc_get_method) { // LCOV_EXCL_BR_LINE 6:VEHICLESENS_GETMETHOD_CAN cannot to pass in + case VEHICLESENS_GETMETHOD_CAN: + { + /* When acquiring from CAN data */ + AGL_ASSERT_NOT_TESTED(); // LCOV_EXCL_LINE 200: test assert + break; // LCOV_EXCL_LINE 8: dead code + } + case VEHICLESENS_GETMETHOD_LINE: + { + /* To acquire from LineSensor */ + VehicleSensGetGyroExtl(pst_data); + break; + } + default: /* Ignore->MISRA-C++:2008 Rule 6-3-1, 6-4-1 */ + break; + } +} + +/******************************************************************************* +* MODULE : VehicleSensGetGyroXFst +* ABSTRACT : Vehicle Sensor GYRO_X GET Functions +* FUNCTION : Provide a GYRO data master +* ARGUMENT : *pst_data : Pointer to the data master acquisition destination +* uc_get_method : Acquisition method(Direct Line or CAN) +* NOTE : +* RETURN : void +******************************************************************************/ +void VehicleSensGetGyroXFst(VEHICLESENS_DATA_MASTER_FST *pst_data, u_int8 uc_get_method) { + switch (uc_get_method) { // LCOV_EXCL_BR_LINE 6:VEHICLESENS_GETMETHOD_CAN cannot to pass in + case VEHICLESENS_GETMETHOD_CAN: + { + /* When acquiring from CAN data */ + AGL_ASSERT_NOT_TESTED(); // LCOV_EXCL_LINE 200: test assert + break; // LCOV_EXCL_LINE 8: dead code + } + case VEHICLESENS_GETMETHOD_LINE: + { + /* To acquire from LineSensor */ + VehicleSensGetGyroXFstl(pst_data); + break; + } + default: + break; + } +} +#endif + diff --git a/positioning/server/src/Sensor/VehicleSens_Did_GyroXFst_l.cpp b/positioning/server/src/Sensor/VehicleSens_Did_GyroXFst_l.cpp new file mode 100644 index 00000000..e9997acc --- /dev/null +++ b/positioning/server/src/Sensor/VehicleSens_Did_GyroXFst_l.cpp @@ -0,0 +1,176 @@ +/* + * @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. + */ + +/******************************************************************************* + * File name :VehicleSens_Did_GyroXFst_l.cpp + * System name :Polaris + * Subsystem name :Vehicle sensor process + * Program name :Vehicle sensor data master(POSHAL_DID_GYRO_X_FST) + * Module configuration :VehicleSensInitGyroXFstl() Vehicle sensor GYRO (initial sensor) initialization functions + * :VehicleSensSetGyroXFstl() Vehicle sensor GYRO (initial sensor) SET-function + * :VehicleSensSetGyroXFstG() Vehicle sensor GYRO (initial sensor) SET-function + * :VehicleSensGetGyroXFstl() Vehicle sensor GYRO (initial sensor) GET-function + ******************************************************************************/ + +#include +#include "VehicleSens_DataMaster.h" + +#if CONFIG_SENSOR_EXT_VALID /* Initial Sensor Support */ +/*************************************************/ +/* Global variable */ +/*************************************************/ +static VEHICLESENS_DATA_MASTER_FST gstGyroXFst_l; // NOLINT(readability/nolint) + +/******************************************************************************* +* MODULE : VehicleSensInitGyroXFstl +* ABSTRACT : Vehicle Sensor GYRO_X Initialization Functions +* FUNCTION : GYRO data master initialization process +* ARGUMENT : void +* NOTE : +* RETURN : void +******************************************************************************/ +void VehicleSensInitGyroXFstl(void) { + u_int16 *pus; + + memset(&gstGyroXFst_l, 0x00, sizeof(VEHICLESENS_DATA_MASTER_FST)); + gstGyroXFst_l.ul_did = POSHAL_DID_GYRO_X_FST; + gstGyroXFst_l.us_size = 0; + gstGyroXFst_l.partition_flg = 0; + + pus = reinterpret_cast(gstGyroXFst_l.uc_data); + memset(reinterpret_cast(pus), VEHICLE_DINIT_GYRO_X, VEHICLE_DSIZE_GYRO_X_FST); +} + +/******************************************************************************* +* MODULE : VehicleSensSetGyroXFstl +* ABSTRACT : Vehicle Sensor GYRO_X SET Functions +* FUNCTION : Update the GYRO data master +* ARGUMENT : *pst_data : Pointer to the message data received by the direct line +* NOTE : +* RETURN : VEHICLESENS_EQ : No data change +* VEHICLESENS_NEQ : Data change +******************************************************************************/ +u_int8 VehicleSensSetGyroXFstl(const LSDRV_LSDATA_FST *pst_data) { // LCOV_EXCL_START 8: dead code. + AGL_ASSERT_NOT_TESTED(); // LCOV_EXCL_LINE 200: test assert + u_int8 uc_ret; + VEHICLESENS_DATA_MASTER_FST *pst_master; + + pst_master = &gstGyroXFst_l; + + /* Compare data master and received data */ + uc_ret = VehicleSensmemcmp(pst_master->uc_data, + pst_data->uc_data, pst_data->uc_size); /* Ignore->MISRA-C++:2008 Rule 5-0-5 */ + + /* Received data is set in the data master. */ + pst_master->ul_did = pst_data->ul_did; + pst_master->us_size = pst_data->uc_size; + pst_master->partition_flg = 0; + pst_master->uc_rcvflag = VEHICLE_RCVFLAG_ON; + memset(pst_master->uc_data, 0x00, sizeof(pst_master->uc_data)); + memcpy(pst_master->uc_data, pst_data->uc_data, pst_data->uc_size); /* Ignore->MISRA-C++:2008 Rule 5-0-5 */ + + return(uc_ret); +} +// LCOV_EXCL_STOP + +/******************************************************************************* +* MODULE : VehicleSensSetGyroXFstG +* ABSTRACT : Vehicle Sensor GYRO SET Functions +* FUNCTION : Update the GYRO data master +* ARGUMENT : *pst_data : Pointer to the message data received by the direct line +* NOTE : +* RETURN : VEHICLESENS_EQ : No data change +* VEHICLESENS_NEQ : Data change +******************************************************************************/ +u_int8 VehicleSensSetGyroXFstG(const LSDRV_LSDATA_FST_GYRO_X *pst_data) { + static u_int8 uc_ret = VEHICLESENS_EQ; + VEHICLESENS_DATA_MASTER_FST *pst_master; + + u_int8 partition_max; /* Total number of partitions */ + u_int8 partition_num; /* Data number */ + + partition_max = pst_data->uc_partition_max; + partition_num = pst_data->uc_partition_num; + + pst_master = &gstGyroXFst_l; + + if (partition_max == 1) { /* Ignore->MISRA-C++:2008 Rule 5-0-5 */ + /* Compare data master and received data */ + uc_ret = VehicleSensmemcmp(pst_master->uc_data, + pst_data->uc_data, pst_data->uc_size); /* Ignore->MISRA-C++:2008 Rule 5-0-5 */ + + /* Received data is set in the data master. */ + pst_master->ul_did = pst_data->ul_did; + pst_master->us_size = pst_data->uc_size; + pst_master->uc_rcvflag = VEHICLE_RCVFLAG_ON; + pst_master->partition_flg = 0; + memset(pst_master->uc_data, 0x00, sizeof(pst_master->uc_data)); + memcpy(pst_master->uc_data, pst_data->uc_data, pst_data->uc_size); /* Ignore->MISRA-C++:2008 Rule 5-0-5 */ + } else if (partition_max == 2) { /* Ignore->MISRA-C++:2008 Rule 5-0-5 */ + if (partition_num == 1) { /* Ignore->MISRA-C++:2008 Rule 5-0-5 */ + /* Compare data master and received data */ + /* Ignore->MISRA-C++:2008 Rule 5-0-5 */ + uc_ret = VehicleSensmemcmp(pst_master->uc_data, pst_data->uc_data, pst_data->uc_size); + + /* Received data is set in the data master. */ + pst_master->ul_did = pst_data->ul_did; + /* Ignore->MISRA-C++:2008 Rule 5-0-5 */ + pst_master->us_size = static_cast(pst_master->us_size + pst_data->uc_size); + pst_master->partition_flg = 1; + memcpy(pst_master->uc_data, pst_data->uc_data, pst_data->uc_size); /* Ignore->MISRA-C++:2008 Rule 5-0-5 */ + } else if (partition_num == 2) { /* Ignore->MISRA-C++:2008 Rule 5-0-5 */ + /* Compare data master and received data */ + if (uc_ret == VEHICLESENS_EQ) { + uc_ret = VehicleSensmemcmp(&pst_master->uc_data[VEHICLE_DSIZE_GYRO_X_FST], + pst_data->uc_data, pst_data->uc_size); /* Ignore->MISRA-C++:2008 Rule 5-0-5 */ + } + + /* Received data is set in the data master. */ + pst_master->ul_did = pst_data->ul_did; + /* Ignore->MISRA-C++:2008 Rule 5-0-5 */ + pst_master->us_size = static_cast(pst_master->us_size + pst_data->uc_size); + pst_master->uc_rcvflag = VEHICLE_RCVFLAG_ON; + pst_master->partition_flg = 1; + /* Ignore->MISRA-C++:2008 Rule 5-0-5 */ + memcpy(&pst_master->uc_data[VEHICLE_DSIZE_GYRO_X_FST], pst_data->uc_data, pst_data->uc_size); + } else {} + } else {} + + return(uc_ret); +} + +/******************************************************************************* +* MODULE : VehicleSensGetGyroXFstl +* ABSTRACT : Vehicle Sensor GYRO GET Functions +* FUNCTION : Provide a GYRO data master +* ARGUMENT : *pst_data : Pointer to the data master acquisition destination +* NOTE : +* RETURN : void +******************************************************************************/ +void VehicleSensGetGyroXFstl(VEHICLESENS_DATA_MASTER_FST *pst_data) { + const VEHICLESENS_DATA_MASTER_FST *pst_master; + + pst_master = &gstGyroXFst_l; + + /* Store the data master in the specified destination. */ + pst_data->ul_did = pst_master->ul_did; + pst_data->us_size = pst_master->us_size; + pst_data->uc_rcvflag = pst_master->uc_rcvflag; + pst_data->partition_flg = pst_master->partition_flg; + memcpy(pst_data->uc_data, pst_master->uc_data, pst_master->us_size); /* Ignore->MISRA-C++:2008 Rule 5-0-5 */ +} + +#endif diff --git a/positioning/server/src/Sensor/VehicleSens_Did_GyroX_l.cpp b/positioning/server/src/Sensor/VehicleSens_Did_GyroX_l.cpp new file mode 100644 index 00000000..af90e250 --- /dev/null +++ b/positioning/server/src/Sensor/VehicleSens_Did_GyroX_l.cpp @@ -0,0 +1,128 @@ +/* + * @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. + */ + +/******************************************************************************* + * File name :VehicleSens_Did_GyroX_l.cpp + * System name :_CWORD107_ + * Subsystem name :Vehicle sensor process + * Program name :Vehicle sensor data master(POSHAL_DID_GYRO_X) + * Module configuration :VehicleSensInitGyroXl() Vehicle Sensor GYRO Initialization Functions + * :VehicleSensSetGyroXl() Vehicle Sensor GYRO SET Functions + * :VehicleSensGetGyroXl() Vehicle Sensor GYRO GET Functions + ******************************************************************************/ + +#include +#include "VehicleSens_DataMaster.h" + +/*************************************************/ +/* Global variable */ +/*************************************************/ +static VEHICLESENS_DATA_MASTER gstGyroX_l; // NOLINT(readability/nolint) + +/******************************************************************************* +* MODULE : VehicleSensInitGyroXl +* ABSTRACT : Vehicle Sensor GYRO_X Initialization Functions +* FUNCTION : GYRO data master initialization process +* ARGUMENT : void +* NOTE : +* RETURN : void +******************************************************************************/ +void VehicleSensInitGyroXl(void) { + memset(&gstGyroX_l, 0x00, sizeof(VEHICLESENS_DATA_MASTER)); + gstGyroX_l.ul_did = POSHAL_DID_GYRO_X; + gstGyroX_l.us_size = VEHICLE_DSIZE_GYRO_X; + gstGyroX_l.uc_rcvflag = VEHICLE_RCVFLAG_OFF; +} + +/******************************************************************************* +* MODULE : VehicleSensSetGyroXl +* ABSTRACT : Vehicle Sensor GYRO_X SET Functions +* FUNCTION : Update the GYRO data master +* ARGUMENT : *pst_data : Pointer to the message data received by the direct line +* NOTE : +* RETURN : VEHICLESENS_EQ : No data change +* VEHICLESENS_NEQ : Data change +******************************************************************************/ +u_int8 VehicleSensSetGyroXl(const LSDRV_LSDATA *pst_data) { + u_int8 uc_ret; + VEHICLESENS_DATA_MASTER *pst_master; + + pst_master = &gstGyroX_l; + + /* Compare data master and received data */ + uc_ret = VehicleSensmemcmp(pst_master->uc_data, pst_data->uc_data, pst_data->uc_size); + + /* Received data is set in the data master. */ + pst_master->ul_did = pst_data->ul_did; + pst_master->us_size = pst_data->uc_size; + pst_master->uc_rcvflag = VEHICLE_RCVFLAG_ON; + pst_master->uc_snscnt = pst_data->uc_sns_cnt; + (void)memcpy(reinterpret_cast(pst_master->uc_data), + (const void *)(pst_data->uc_data), (size_t)pst_data->uc_size); + + return(uc_ret); +} + +/******************************************************************************* +* MODULE : VehicleSensSetGyroXlG +* ABSTRACT : Vehicle Sensor GYRO_X SET Functions +* FUNCTION : Update the GYRO data master +* ARGUMENT : *pst_data : Pointer to the message data received by the direct line +* NOTE : +* RETURN : VEHICLESENS_EQ : No data change +* VEHICLESENS_NEQ : Data change +******************************************************************************/ +u_int8 VehicleSensSetGyroXlG(const LSDRV_LSDATA_G *pst_data) { + u_int8 uc_ret; + VEHICLESENS_DATA_MASTER *pst_master; + + pst_master = &gstGyroX_l; + + /* Compare data master and received data */ + uc_ret = VehicleSensmemcmp(pst_master->uc_data, pst_data->uc_data, pst_data->uc_size); + + /* Received data is set in the data master. */ + pst_master->ul_did = pst_data->ul_did; + pst_master->us_size = pst_data->uc_size; + pst_master->uc_rcvflag = VEHICLE_RCVFLAG_ON; + pst_master->uc_snscnt = pst_data->uc_sns_cnt; + (void)memcpy(reinterpret_cast(pst_master->uc_data), + (const void *)(pst_data->uc_data), (size_t)(pst_data->uc_size)); + + return(uc_ret); +} + +/******************************************************************************* +* MODULE : VehicleSensGetGyroXl +* ABSTRACT : Vehicle Sensor GYRO_X GET Functions +* FUNCTION : Provide a GYRO data master +* ARGUMENT : *pst_data : Pointer to the data master acquisition destination +* NOTE : +* RETURN : void +******************************************************************************/ +void VehicleSensGetGyroXl(VEHICLESENS_DATA_MASTER *pst_data) { + const VEHICLESENS_DATA_MASTER *pst_master; + + pst_master = &gstGyroX_l; + + /* Store the data master in the specified destination. */ + pst_data->ul_did = pst_master->ul_did; + pst_data->us_size = pst_master->us_size; + pst_data->uc_rcvflag = pst_master->uc_rcvflag; + pst_data->uc_snscnt = pst_master->uc_snscnt; + (void)memcpy(reinterpret_cast(pst_data->uc_data), + (const void *)(pst_master->uc_data), (size_t)(pst_master->us_size)); +} diff --git a/positioning/server/src/Sensor/VehicleSens_Did_GyroY.cpp b/positioning/server/src/Sensor/VehicleSens_Did_GyroY.cpp new file mode 100644 index 00000000..b7d0e5a8 --- /dev/null +++ b/positioning/server/src/Sensor/VehicleSens_Did_GyroY.cpp @@ -0,0 +1,113 @@ +/* + * @copyright Copyright (c) 2019-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. + */ + +/******************************************************************************* + * File name :VehicleSens_Did_GyroY.cpp + * Subsystem name :Vehicle sensor process + * Program name :Vehicle sensor data master(VEHICLE_DID_GYRO_Y) + * Module configuration :VehicleSensGetGyroY() Vehicle Sensor GYRO GET Functions + ******************************************************************************/ + +#include "VehicleSens_DataMaster.h" + +/*************************************************/ +/* Global variable */ +/*************************************************/ + +/******************************************************************************* +* MODULE : VehicleSensGetGyroY +* ABSTRACT : Vehicle Sensor GYRO_Y GET Functions +* FUNCTION : Provide a GYRO data master +* ARGUMENT : *pst_data : Pointer to the data master acquisition destination +* uc_get_method : Acquisition method(Direct Line or CAN) +* NOTE : +* RETURN : void +******************************************************************************/ +void VehicleSensGetGyroY(VEHICLESENS_DATA_MASTER *pst_data, u_int8 uc_get_method) { + switch (uc_get_method) { // LCOV_EXCL_BR_LINE 6:VEHICLESENS_GETMETHOD_CAN cannot to pass in + case VEHICLESENS_GETMETHOD_CAN: + { + /* When acquiring from CAN data */ + AGL_ASSERT_NOT_TESTED(); // LCOV_EXCL_LINE 200: test assert + break; // LCOV_EXCL_LINE 8: dead code + } + case VEHICLESENS_GETMETHOD_LINE: + { + /* To acquire from LineSensor */ + VehicleSensGetGyroYl(pst_data); + break; + } + default: + break; + } +} + +#if CONFIG_SENSOR_EXT_VALID /* Initial Sensor Support */ +/******************************************************************************* +* MODULE : VehicleSensGetGyroYExt +* ABSTRACT : Vehicle Sensor GYRO_Y GET Functions +* FUNCTION : Provide a GYRO data master +* ARGUMENT : *pst_data : Pointer to the data master acquisition destination +* uc_get_method : Acquisition method(Direct Line or CAN) +* NOTE : +* RETURN : void +******************************************************************************/ +void VehicleSensGetGyroYExt(VEHICLESENS_DATA_MASTER_EXT *pst_data, u_int8 uc_get_method) { + switch (uc_get_method) { + case VEHICLESENS_GETMETHOD_CAN: + { + /* When acquiring from CAN data */ + break; + } + case VEHICLESENS_GETMETHOD_LINE: + { + /* To acquire from LineSensor */ + VehicleSensGetGyroYExtl(pst_data); + break; + } + default: + break; + } +} + +/******************************************************************************* +* MODULE : VehicleSensGetGyroYFst +* ABSTRACT : Vehicle Sensor GYRO_Y GET Functions +* FUNCTION : Provide a GYRO data master +* ARGUMENT : *pst_data : Pointer to the data master acquisition destination +* uc_get_method : Acquisition method(Direct Line or CAN) +* NOTE : +* RETURN : void +******************************************************************************/ +void VehicleSensGetGyroYFst(VEHICLESENS_DATA_MASTER_FST *pst_data, u_int8 uc_get_method) { + switch (uc_get_method) { // LCOV_EXCL_BR_LINE 6:VEHICLESENS_GETMETHOD_CAN cannot to pass in + case VEHICLESENS_GETMETHOD_CAN: + { + /* When acquiring from CAN data */ + AGL_ASSERT_NOT_TESTED(); // LCOV_EXCL_LINE 200: test assert + break; // LCOV_EXCL_LINE 8: dead code + } + case VEHICLESENS_GETMETHOD_LINE: + { + /* To acquire from LineSensor */ + VehicleSensGetGyroYFstl(pst_data); + break; + } + default: + break; + } +} +#endif diff --git a/positioning/server/src/Sensor/VehicleSens_Did_GyroYExt_l.cpp b/positioning/server/src/Sensor/VehicleSens_Did_GyroYExt_l.cpp new file mode 100644 index 00000000..898dafbb --- /dev/null +++ b/positioning/server/src/Sensor/VehicleSens_Did_GyroYExt_l.cpp @@ -0,0 +1,148 @@ +/* + * @copyright Copyright (c) 2019-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. + */ + +/******************************************************************************* + * File name :VehicleSens_Did_GyroYExt_l.cpp + * Subsystem name :Vehicle sensor process + * Program name :Vehicle sensor data master(POSHAL_DID_GYRO_EXT) + * Module configuration :VehicleSensInitGyroYExtl() Vehicle Sensor GYRO (Initial Delivery) Initialization Functions + * :VehicleSensSetGyroYExtlG() Vehicle Sensor GYRO (Initial Delivery) Set Functions + * :VehicleSensGetGyroYExtl() Vehicle Sensor GYRO (Initial Delivery) Get Functions + ******************************************************************************/ + +#include "VehicleSens_DataMaster.h" + +#if CONFIG_SENSOR_EXT_VALID /* Initial Sensor Support */ +/*************************************************/ +/* Global variable */ +/*************************************************/ +static VEHICLESENS_DATA_MASTER_EXT gstGyroYExt_l; // NOLINT(readability/nolint) + +/******************************************************************************* +* MODULE : VehicleSensInitGyroYExtl +* ABSTRACT : Vehicle Sensor GYRO_Y Initialization Functions(Initial delivery) +* FUNCTION : GYRO data master initialization process +* ARGUMENT : void +* NOTE : +* RETURN : void +******************************************************************************/ +void VehicleSensInitGyroYExtl(void) { + u_int16 *pus; + + memset(&gstGyroYExt_l, 0x00, sizeof(VEHICLESENS_DATA_MASTER_EXT)); + gstGyroYExt_l.ul_did = POSHAL_DID_GYRO_Y; + gstGyroYExt_l.us_size = VEHICLE_DSIZE_GYRO_EXT_INIT; + + pus = reinterpret_cast(gstGyroYExt_l.uc_data); + memset(reinterpret_cast(pus), VEHICLE_DINIT_GYRO, VEHICLE_DSIZE_GYRO_EXT); +} + +/******************************************************************************* +* MODULE : VehicleSensSetGyroYExtlG +* ABSTRACT : Vehicle Sensor GYRO_Y SET Functions(Initial delivery) +* FUNCTION : Update the GYRO data master +* ARGUMENT : *pst_data : Pointer to the message data received by the direct line +* NOTE : +* RETURN : VEHICLESENS_EQ : No data change +* VEHICLESENS_NEQ : Data change +******************************************************************************/ +void VehicleSensSetGyroYExtlG(const LSDRV_LSDATA_G *pst_data) { + VEHICLESENS_DATA_MASTER_EXT *pst_master; + u_int16 us_start = 0; + u_int16 us_size = 0; + u_int16 us_cnt = 0; + + pst_master = &gstGyroYExt_l; + us_size = static_cast(sizeof(u_int16) * 10); /* Size of one data item: 2byte * 10 data items */ + + /* Retrieve the location where the received one is stored */ + us_start = gstPkgTempExt.start_point[GyroY]; + + /* Stored in data master(Order of reception)*/ + if (us_start >= VEHICLE_DKEEP_MAX) { + /* Store the latest one at position 0 */ + us_start = VEHICLE_DATA_POS_00; + /* If you are discarding old data,,Set a flag */ + gstPkgTempExt.data_break = VEHICLE_SNS_BREAK; + } + pst_master->ul_did = pst_data->ul_did; + pst_master->uc_rcvflag = VEHICLE_RCVFLAG_ON; + for (us_cnt = 0; us_cnt < us_size; us_cnt++) { + pst_master->uc_data[us_start * us_size + us_cnt] = (u_int8)(pst_data->uc_data[us_cnt]); + } + + /* Update next storage start position and latest data storage position */ + us_start++; + gstPkgTempExt.start_point[GyroY] = us_start; + + /* Update data master size */ + if (gstPkgTempExt.data_break == VEHICLE_SNS_BREAK) { + /* Make the size of all extended data masters */ + pst_master->us_size = VEHICLE_DSIZE_GYRO_EXT; + } else { + /* Add the size of one received data item */ + pst_master->us_size = static_cast(pst_master->us_size + us_size); + } +} + +/******************************************************************************* +* MODULE : VehicleSensGetGyroYExtl +* ABSTRACT : Vehicle Sensor GYRO_Y GET Functions(Initial delivery) +* FUNCTION : Provide a GYRO data master +* ARGUMENT : *pst_data : Pointer to the data master acquisition destination +* NOTE : +* RETURN : void +******************************************************************************/ +void VehicleSensGetGyroYExtl(VEHICLESENS_DATA_MASTER_EXT *pst_data) { + const VEHICLESENS_DATA_MASTER_EXT *pst_master; + uint16_t us_size = 0; + uint16_t us_data_cnt = 0; // Number of data contained + uint16_t us_loop_cnt = 0; // 64 over index + + /* Store the data master in the specified destination. */ + pst_master = &gstGyroYExt_l; + pst_data->ul_did = pst_master->ul_did; + pst_data->us_size = pst_master->us_size; + pst_data->uc_rcvflag = pst_master->uc_rcvflag; + + us_size = static_cast(sizeof(u_int16) * 10); /* Size of one data item: 2byte * 10 data items */ + + /* Checking whether the number of stored entries is looped */ + if (gstPkgTempExt.data_break == VEHICLE_SNS_BREAK) { + us_data_cnt = VEHICLE_DKEEP_MAX; + } else { + us_data_cnt = gstPkgTempExt.start_point[GyroY]; + } + + /* Acquire data from the oldest data master */ + for (uint16_t us_cnt = 0; us_cnt < us_data_cnt; us_cnt++) { + if (gstPkgTempExt.data_break == VEHICLE_SNS_BREAK) { + /* Get information before loop */ + if (gstPkgTempExt.start_point[GyroY] + us_cnt < VEHICLE_DKEEP_MAX) { + memcpy(&pst_data->uc_data[us_cnt * us_size], + &pst_master->uc_data[(gstPkgTempExt.start_point[GyroY] + us_cnt) * us_size], us_size); + } else { + memcpy(&pst_data->uc_data[us_cnt * us_size], + &pst_master->uc_data[us_loop_cnt * us_size], us_size); + us_loop_cnt++; + } + } else { + memcpy(&pst_data->uc_data[us_cnt * us_size], + &pst_master->uc_data[us_cnt * us_size], us_size); + } + } +} +#endif // CONFIG_SENSOR_EXT_VALID diff --git a/positioning/server/src/Sensor/VehicleSens_Did_GyroYFst_l.cpp b/positioning/server/src/Sensor/VehicleSens_Did_GyroYFst_l.cpp new file mode 100644 index 00000000..164cf4db --- /dev/null +++ b/positioning/server/src/Sensor/VehicleSens_Did_GyroYFst_l.cpp @@ -0,0 +1,169 @@ +/* + * @copyright Copyright (c) 2019-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. + */ + +/******************************************************************************* + * File name :VehicleSens_Did_GyroYFst_l.cpp + * Subsystem name :Vehicle sensor process + * Program name :Vehicle sensor data master(POSHAL_DID_GYRO_Y_FST) + * Module configuration :VehicleSensInitGyroYFstl() Vehicle sensor GYRO (initial sensor) initialization functions + * :VehicleSensSetGyroYFstl() Vehicle sensor GYRO (initial sensor) SET-function + * :VehicleSensSetGyroYFstG() Vehicle sensor GYRO (initial sensor) SET-function + * :VehicleSensGetGyroYFstl() Vehicle sensor GYRO (initial sensor) GET-function + ******************************************************************************/ + +#include "VehicleSens_DataMaster.h" + +#if CONFIG_SENSOR_EXT_VALID /* Initial Sensor Support */ +/*************************************************/ +/* Global variable */ +/*************************************************/ +static VEHICLESENS_DATA_MASTER_FST gstGyroYFst_l; // NOLINT(readability/nolint) + +/******************************************************************************* +* MODULE : VehicleSensInitGyroYFstl +* ABSTRACT : Vehicle Sensor GYRO_Y Initialization Functions +* FUNCTION : GYRO data master initialization process +* ARGUMENT : void +* NOTE : +* RETURN : void +******************************************************************************/ +void VehicleSensInitGyroYFstl(void) { + u_int16 *pus; + + memset(&gstGyroYFst_l, 0x00, sizeof(VEHICLESENS_DATA_MASTER_FST)); + gstGyroYFst_l.ul_did = POSHAL_DID_GYRO_Y_FST; + gstGyroYFst_l.us_size = 0; + gstGyroYFst_l.partition_flg = 0; + + pus = reinterpret_cast(gstGyroYFst_l.uc_data); + memset(reinterpret_cast(pus), VEHICLE_DINIT_GYRO_Y, VEHICLE_DSIZE_GYRO_Y_FST); +} + +/******************************************************************************* +* MODULE : VehicleSensSetGyroYFstl +* ABSTRACT : Vehicle Sensor GYRO_Y SET Functions +* FUNCTION : Update the GYRO data master +* ARGUMENT : *pst_data : Pointer to the message data received by the direct line +* NOTE : +* RETURN : VEHICLESENS_EQ : No data change +* VEHICLESENS_NEQ : Data change +******************************************************************************/ +u_int8 VehicleSensSetGyroYFstl(const LSDRV_LSDATA_FST *pst_data) { // LCOV_EXCL_START 8: dead code. + AGL_ASSERT_NOT_TESTED(); // LCOV_EXCL_LINE 200: test assert + u_int8 uc_ret; + VEHICLESENS_DATA_MASTER_FST *pst_master; + + pst_master = &gstGyroYFst_l; + + /* Compare data master and received data */ + uc_ret = VehicleSensmemcmp(pst_master->uc_data, + pst_data->uc_data, pst_data->uc_size); + + /* Received data is set in the data master. */ + pst_master->ul_did = pst_data->ul_did; + pst_master->us_size = pst_data->uc_size; + pst_master->partition_flg = 0; + pst_master->uc_rcvflag = VEHICLE_RCVFLAG_ON; + memset(pst_master->uc_data, 0x00, sizeof(pst_master->uc_data)); + memcpy(pst_master->uc_data, pst_data->uc_data, pst_data->uc_size); + + return(uc_ret); +} +// LCOV_EXCL_STOP + +/******************************************************************************* +* MODULE : VehicleSensSetGyroYFstG +* ABSTRACT : Vehicle Sensor GYRO_Y SET Functions +* FUNCTION : Update the GYRO data master +* ARGUMENT : *pst_data : Pointer to the message data received by the direct line +* NOTE : +* RETURN : VEHICLESENS_EQ : No data change +* VEHICLESENS_NEQ : Data change +******************************************************************************/ +u_int8 VehicleSensSetGyroYFstG(const LSDRV_LSDATA_FST_GYRO_Y *pst_data) { + static u_int8 uc_ret = VEHICLESENS_EQ; + VEHICLESENS_DATA_MASTER_FST *pst_master; + + u_int8 partition_max; /* Total number of partitions */ + u_int8 partition_num; /* Data number */ + + partition_max = pst_data->uc_partition_max; + partition_num = pst_data->uc_partition_num; + + pst_master = &gstGyroYFst_l; + + if (partition_max == 1) { + /* Compare data master and received data */ + uc_ret = VehicleSensmemcmp(pst_master->uc_data, + pst_data->uc_data, pst_data->uc_size); + + /* Received data is set in the data master. */ + pst_master->ul_did = pst_data->ul_did; + pst_master->us_size = pst_data->uc_size; + pst_master->uc_rcvflag = VEHICLE_RCVFLAG_ON; + pst_master->partition_flg = 0; + memset(pst_master->uc_data, 0x00, sizeof(pst_master->uc_data)); + memcpy(pst_master->uc_data, pst_data->uc_data, pst_data->uc_size); + } else if (partition_max == 2) { + if (partition_num == 1) { + /* Compare data master and received data */ + uc_ret = VehicleSensmemcmp(pst_master->uc_data, pst_data->uc_data, pst_data->uc_size); + + /* Received data is set in the data master. */ + pst_master->ul_did = pst_data->ul_did; + pst_master->us_size = static_cast(pst_master->us_size + pst_data->uc_size); + pst_master->partition_flg = 1; + memcpy(pst_master->uc_data, pst_data->uc_data, pst_data->uc_size); + } else if (partition_num == 2) { + /* Compare data master and received data */ + if (uc_ret == VEHICLESENS_EQ) { + uc_ret = VehicleSensmemcmp(&pst_master->uc_data[VEHICLE_DSIZE_GYRO_Y_FST], + pst_data->uc_data, pst_data->uc_size); + } + + /* Received data is set in the data master. */ + pst_master->ul_did = pst_data->ul_did; + pst_master->us_size = static_cast(pst_master->us_size + pst_data->uc_size); + pst_master->uc_rcvflag = VEHICLE_RCVFLAG_ON; + pst_master->partition_flg = 1; + memcpy(&pst_master->uc_data[VEHICLE_DSIZE_GYRO_Y_FST], pst_data->uc_data, pst_data->uc_size); + } else {} + } else {} + + return(uc_ret); +} + +/******************************************************************************* +* MODULE : VehicleSensGetGyroYFstl +* ABSTRACT : Vehicle Sensor GYRO_Y GET Functions +* FUNCTION : Provide a GYRO data master +* ARGUMENT : *pst_data : Pointer to the data master acquisition destination +* NOTE : +* RETURN : void +******************************************************************************/ +void VehicleSensGetGyroYFstl(VEHICLESENS_DATA_MASTER_FST *pst_data) { + const VEHICLESENS_DATA_MASTER_FST *pst_master; + + pst_master = &gstGyroYFst_l; + + /* Store the data master in the specified destination. */ + pst_data->ul_did = pst_master->ul_did; + pst_data->us_size = pst_master->us_size; + pst_data->uc_rcvflag = pst_master->uc_rcvflag; + pst_data->partition_flg = pst_master->partition_flg; + memcpy(pst_data->uc_data, pst_master->uc_data, pst_master->us_size); +} +#endif diff --git a/positioning/server/src/Sensor/VehicleSens_Did_GyroY_l.cpp b/positioning/server/src/Sensor/VehicleSens_Did_GyroY_l.cpp new file mode 100644 index 00000000..9799b295 --- /dev/null +++ b/positioning/server/src/Sensor/VehicleSens_Did_GyroY_l.cpp @@ -0,0 +1,126 @@ +/* + * @copyright Copyright (c) 2019-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. + */ + +/******************************************************************************* + * File name :VehicleSens_Did_GyroY_l.cpp + * Subsystem name :Vehicle sensor process + * Program name :Vehicle sensor data master(POSHAL_DID_GYRO_Y) + * Module configuration :VehicleSensInitGyroYl() Vehicle Sensor GYRO Initialization Functions + * :VehicleSensSetGyroYl() Vehicle Sensor GYRO SET Functions + * :VehicleSensGetGyroYl() Vehicle Sensor GYRO GET Functions + ******************************************************************************/ + +#include "VehicleSens_DataMaster.h" + +/*************************************************/ +/* Global variable */ +/*************************************************/ +static VEHICLESENS_DATA_MASTER gstGyroY_l; // NOLINT(readability/nolint) + +/******************************************************************************* +* MODULE : VehicleSensInitGyroYl +* ABSTRACT : Vehicle Sensor GYRO_Y Initialization Functions +* FUNCTION : GYRO data master initialization process +* ARGUMENT : void +* NOTE : +* RETURN : void +******************************************************************************/ +void VehicleSensInitGyroYl(void) { + memset(&gstGyroY_l, 0x00, sizeof(VEHICLESENS_DATA_MASTER)); + gstGyroY_l.ul_did = POSHAL_DID_GYRO_Y; + gstGyroY_l.us_size = VEHICLE_DSIZE_GYRO_Y; + gstGyroY_l.uc_rcvflag = VEHICLE_RCVFLAG_OFF; +} + +/******************************************************************************* +* MODULE : VehicleSensSetGyroYl +* ABSTRACT : Vehicle Sensor GYRO_Y SET Functions +* FUNCTION : Update the GYRO data master +* ARGUMENT : *pst_data : Pointer to the message data received by the direct line +* NOTE : +* RETURN : VEHICLESENS_EQ : No data change +* VEHICLESENS_NEQ : Data change +******************************************************************************/ +u_int8 VehicleSensSetGyroYl(const LSDRV_LSDATA *pst_data) { + u_int8 uc_ret; + VEHICLESENS_DATA_MASTER *pst_master; + + pst_master = &gstGyroY_l; + + /* Compare data master and received data */ + uc_ret = VehicleSensmemcmp(pst_master->uc_data, pst_data->uc_data, pst_data->uc_size); + + /* Received data is set in the data master. */ + pst_master->ul_did = pst_data->ul_did; + pst_master->us_size = pst_data->uc_size; + pst_master->uc_rcvflag = VEHICLE_RCVFLAG_ON; + pst_master->uc_snscnt = pst_data->uc_sns_cnt; + (void)memcpy(reinterpret_cast(pst_master->uc_data), + (const void *)(pst_data->uc_data), (size_t)pst_data->uc_size); + + return(uc_ret); +} + +/******************************************************************************* +* MODULE : VehicleSensSetGyroYlG +* ABSTRACT : Vehicle Sensor GYRO_Y SET Functions +* FUNCTION : Update the GYRO data master +* ARGUMENT : *pst_data : Pointer to the message data received by the direct line +* NOTE : +* RETURN : VEHICLESENS_EQ : No data change +* VEHICLESENS_NEQ : Data change +******************************************************************************/ +u_int8 VehicleSensSetGyroYlG(const LSDRV_LSDATA_G *pst_data) { + u_int8 uc_ret; + VEHICLESENS_DATA_MASTER *pst_master; + + pst_master = &gstGyroY_l; + + /* Compare data master and received data */ + uc_ret = VehicleSensmemcmp(pst_master->uc_data, pst_data->uc_data, pst_data->uc_size); + + /* Received data is set in the data master. */ + pst_master->ul_did = pst_data->ul_did; + pst_master->us_size = pst_data->uc_size; + pst_master->uc_rcvflag = VEHICLE_RCVFLAG_ON; + pst_master->uc_snscnt = pst_data->uc_sns_cnt; + (void)memcpy(reinterpret_cast(pst_master->uc_data), + (const void *)(pst_data->uc_data), (size_t)(pst_data->uc_size)); + + return(uc_ret); +} + +/******************************************************************************* +* MODULE : VehicleSensGetGyroYl +* ABSTRACT : Vehicle Sensor GYRO_Y GET Functions +* FUNCTION : Provide a GYRO data master +* ARGUMENT : *pst_data : Pointer to the data master acquisition destination +* NOTE : +* RETURN : void +******************************************************************************/ +void VehicleSensGetGyroYl(VEHICLESENS_DATA_MASTER *pst_data) { + const VEHICLESENS_DATA_MASTER *pst_master; + + pst_master = &gstGyroY_l; + + /* Store the data master in the specified destination. */ + pst_data->ul_did = pst_master->ul_did; + pst_data->us_size = pst_master->us_size; + pst_data->uc_rcvflag = pst_master->uc_rcvflag; + pst_data->uc_snscnt = pst_master->uc_snscnt; + (void)memcpy(reinterpret_cast(pst_data->uc_data), + (const void *)(pst_master->uc_data), (size_t)(pst_master->us_size)); +} diff --git a/positioning/server/src/Sensor/VehicleSens_Did_GyroZ.cpp b/positioning/server/src/Sensor/VehicleSens_Did_GyroZ.cpp new file mode 100644 index 00000000..1b84af7c --- /dev/null +++ b/positioning/server/src/Sensor/VehicleSens_Did_GyroZ.cpp @@ -0,0 +1,113 @@ +/* + * @copyright Copyright (c) 2019-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. + */ + +/******************************************************************************* + * File name :VehicleSens_Did_GyroZ.cpp + * Subsystem name :Vehicle sensor process + * Program name :Vehicle sensor data master(VEHICLE_DID_GYRO_Z) + * Module configuration :VehicleSensGetGyroZ() Vehicle Sensor GYRO GET Functions + ******************************************************************************/ + +#include "VehicleSens_DataMaster.h" + +/*************************************************/ +/* Global variable */ +/*************************************************/ + +/******************************************************************************* +* MODULE : VehicleSensGetGyroZ +* ABSTRACT : Vehicle Sensor GYRO_Z GET Functions +* FUNCTION : Provide a GYRO data master +* ARGUMENT : *pst_data : Pointer to the data master acquisition destination +* uc_get_method : Acquisition method(Direct Line or CAN) +* NOTE : +* RETURN : void +******************************************************************************/ +void VehicleSensGetGyroZ(VEHICLESENS_DATA_MASTER *pst_data, u_int8 uc_get_method) { + switch (uc_get_method) { // LCOV_EXCL_BR_LINE 6:VEHICLESENS_GETMETHOD_CAN cannot to pass in + case VEHICLESENS_GETMETHOD_CAN: + { + /* When acquiring from CAN data */ + AGL_ASSERT_NOT_TESTED(); // LCOV_EXCL_LINE 200: test assert + break; // LCOV_EXCL_LINE 8: dead code + } + case VEHICLESENS_GETMETHOD_LINE: + { + /* To acquire from LineSensor */ + VehicleSensGetGyroZl(pst_data); + break; + } + default: + break; + } +} + +#if CONFIG_SENSOR_EXT_VALID /* Initial Sensor Support */ +/******************************************************************************* +* MODULE : VehicleSensGetGyroZExt +* ABSTRACT : Vehicle Sensor GYRO_Z GET Functions +* FUNCTION : Provide a GYRO data master +* ARGUMENT : *pst_data : Pointer to the data master acquisition destination +* uc_get_method : Acquisition method(Direct Line or CAN) +* NOTE : +* RETURN : void +******************************************************************************/ +void VehicleSensGetGyroZExt(VEHICLESENS_DATA_MASTER_EXT *pst_data, u_int8 uc_get_method) { + switch (uc_get_method) { + case VEHICLESENS_GETMETHOD_CAN: + { + /* When acquiring from CAN data */ + break; + } + case VEHICLESENS_GETMETHOD_LINE: + { + /* To acquire from LineSensor */ + VehicleSensGetGyroZExtl(pst_data); + break; + } + default: + break; + } +} + +/******************************************************************************* +* MODULE : VehicleSensGetGyroZFst +* ABSTRACT : Vehicle Sensor GYRO_Z GET Functions +* FUNCTION : Provide a GYRO data master +* ARGUMENT : *pst_data : Pointer to the data master acquisition destination +* uc_get_method : Acquisition method(Direct Line or CAN) +* NOTE : +* RETURN : void +******************************************************************************/ +void VehicleSensGetGyroZFst(VEHICLESENS_DATA_MASTER_FST *pst_data, u_int8 uc_get_method) { + switch (uc_get_method) { // LCOV_EXCL_BR_LINE 6:VEHICLESENS_GETMETHOD_CAN cannot to pass in + case VEHICLESENS_GETMETHOD_CAN: + { + /* When acquiring from CAN data */ + AGL_ASSERT_NOT_TESTED(); // LCOV_EXCL_LINE 200: test assert + break; // LCOV_EXCL_LINE 8: dead code + } + case VEHICLESENS_GETMETHOD_LINE: + { + /* To acquire from LineSensor */ + VehicleSensGetGyroZFstl(pst_data); + break; + } + default: + break; + } +} +#endif diff --git a/positioning/server/src/Sensor/VehicleSens_Did_GyroZExt_l.cpp b/positioning/server/src/Sensor/VehicleSens_Did_GyroZExt_l.cpp new file mode 100644 index 00000000..9ef99968 --- /dev/null +++ b/positioning/server/src/Sensor/VehicleSens_Did_GyroZExt_l.cpp @@ -0,0 +1,148 @@ +/* + * @copyright Copyright (c) 2019-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. + */ + +/******************************************************************************* + * File name :VehicleSens_Did_GyroZExt_l.cpp + * Subsystem name :Vehicle sensor process + * Program name :Vehicle sensor data master(POSHAL_DID_GYRO_EXT) + * Module configuration :VehicleSensInitGyroxiZYExtl() Vehicle Sensor GYRO (Initial Delivery) Initialization Functions + * :VehicleSensSetGyroZExtlG() Vehicle Sensor GYRO (Initial Delivery) Set Functions + * :VehicleSensGetGyroZExtl() Vehicle Sensor GYRO (Initial Delivery) Get Functions + ******************************************************************************/ + +#include "VehicleSens_DataMaster.h" + +#if CONFIG_SENSOR_EXT_VALID /* Initial Sensor Support */ +/*************************************************/ +/* Global variable */ +/*************************************************/ +static VEHICLESENS_DATA_MASTER_EXT gstGyroZExt_l; // NOLINT(readability/nolint) + +/******************************************************************************* +* MODULE : VehicleSensInitGyroZExtl +* ABSTRACT : Vehicle Sensor GYRO_Z Initialization Functions(Initial delivery) +* FUNCTION : GYRO data master initialization process +* ARGUMENT : void +* NOTE : +* RETURN : void +******************************************************************************/ +void VehicleSensInitGyroZExtl(void) { + u_int16 *pus; + + memset(&gstGyroZExt_l, 0x00, sizeof(VEHICLESENS_DATA_MASTER_EXT)); + gstGyroZExt_l.ul_did = POSHAL_DID_GYRO_Z; + gstGyroZExt_l.us_size = VEHICLE_DSIZE_GYRO_EXT_INIT; + + pus = reinterpret_cast(gstGyroZExt_l.uc_data); + memset(reinterpret_cast(pus), VEHICLE_DINIT_GYRO, VEHICLE_DSIZE_GYRO_EXT); +} + +/******************************************************************************* +* MODULE : VehicleSensSetGyroZExtlG +* ABSTRACT : Vehicle Sensor GYRO_Z SET Functions(Initial delivery) +* FUNCTION : Update the GYRO data master +* ARGUMENT : *pst_data : Pointer to the message data received by the direct line +* NOTE : +* RETURN : VEHICLESENS_EQ : No data change +* VEHICLESENS_NEQ : Data change +******************************************************************************/ +void VehicleSensSetGyroZExtlG(const LSDRV_LSDATA_G *pst_data) { + VEHICLESENS_DATA_MASTER_EXT *pst_master; + u_int16 us_start = 0; + u_int16 us_size = 0; + u_int16 us_cnt = 0; + + pst_master = &gstGyroZExt_l; + us_size = static_cast(sizeof(u_int16) * 10); /* Size of one data item: 2byte * 10 data items */ + + /* Retrieve the location where the received one is stored */ + us_start = gstPkgTempExt.start_point[GyroZ]; + + /* Stored in data master(Order of reception)*/ + if (us_start >= VEHICLE_DKEEP_MAX) { + /* Store the latest one at position 0 */ + us_start = VEHICLE_DATA_POS_00; + /* If you are discarding old data,,Set a flag */ + gstPkgTempExt.data_break = VEHICLE_SNS_BREAK; + } + pst_master->ul_did = pst_data->ul_did; + pst_master->uc_rcvflag = VEHICLE_RCVFLAG_ON; + for (us_cnt = 0; us_cnt < us_size; us_cnt++) { + pst_master->uc_data[us_start * us_size + us_cnt] = (u_int8)(pst_data->uc_data[us_cnt]); + } + + /* Update next storage start position and latest data storage position */ + us_start++; + gstPkgTempExt.start_point[GyroZ] = us_start; + + /* Update data master size */ + if (gstPkgTempExt.data_break == VEHICLE_SNS_BREAK) { + /* Make the size of all extended data masters */ + pst_master->us_size = VEHICLE_DSIZE_GYRO_EXT; + } else { + /* Add the size of one received data item */ + pst_master->us_size = static_cast(pst_master->us_size + us_size); + } +} + +/******************************************************************************* +* MODULE : VehicleSensGetGyroZExtl +* ABSTRACT : Vehicle Sensor GYRO_Z GET Functions(Initial delivery) +* FUNCTION : Provide a GYRO data master +* ARGUMENT : *pst_data : Pointer to the data master acquisition destination +* NOTE : +* RETURN : void +******************************************************************************/ +void VehicleSensGetGyroZExtl(VEHICLESENS_DATA_MASTER_EXT *pst_data) { + const VEHICLESENS_DATA_MASTER_EXT *pst_master; + uint16_t us_size = 0; + uint16_t us_data_cnt = 0; // Number of data contained + uint16_t us_loop_cnt = 0; // 64 over index + + /* Store the data master in the specified destination. */ + pst_master = &gstGyroZExt_l; + pst_data->ul_did = pst_master->ul_did; + pst_data->us_size = pst_master->us_size; + pst_data->uc_rcvflag = pst_master->uc_rcvflag; + + us_size = static_cast(sizeof(u_int16) * 10); /* Size of one data item: 2byte * 10 data items */ + + /* Checking whether the number of stored entries is looped */ + if (gstPkgTempExt.data_break == VEHICLE_SNS_BREAK) { + us_data_cnt = VEHICLE_DKEEP_MAX; + } else { + us_data_cnt = gstPkgTempExt.start_point[GyroZ]; + } + + /* Acquire data from the oldest data master */ + for (uint16_t us_cnt = 0; us_cnt < us_data_cnt; us_cnt++) { + if (gstPkgTempExt.data_break == VEHICLE_SNS_BREAK) { + /* Get information before loop */ + if (gstPkgTempExt.start_point[GyroZ] + us_cnt < VEHICLE_DKEEP_MAX) { + memcpy(&pst_data->uc_data[us_cnt * us_size], + &pst_master->uc_data[(gstPkgTempExt.start_point[GyroZ] + us_cnt) * us_size], us_size); + } else { + memcpy(&pst_data->uc_data[us_cnt * us_size], + &pst_master->uc_data[us_loop_cnt * us_size], us_size); + us_loop_cnt++; + } + } else { + memcpy(&pst_data->uc_data[us_cnt * us_size], + &pst_master->uc_data[us_cnt * us_size], us_size); + } + } +} +#endif // CONFIG_SENSOR_EXT_VALID diff --git a/positioning/server/src/Sensor/VehicleSens_Did_GyroZFst_l.cpp b/positioning/server/src/Sensor/VehicleSens_Did_GyroZFst_l.cpp new file mode 100644 index 00000000..587f5654 --- /dev/null +++ b/positioning/server/src/Sensor/VehicleSens_Did_GyroZFst_l.cpp @@ -0,0 +1,169 @@ +/* + * @copyright Copyright (c) 2019-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. + */ + +/******************************************************************************* + * File name :VehicleSens_Did_GyroZFst_l.cpp + * Subsystem name :Vehicle sensor process + * Program name :Vehicle sensor data master(POSHAL_DID_GYRO_Z_FST) + * Module configuration :VehicleSensInitGyroZFstl() Vehicle sensor GYRO (initial sensor) initialization functions + * :VehicleSensSetGyroZFstl() Vehicle sensor GYRO (initial sensor) SET-function + * :VehicleSensSetGyroZFstG() Vehicle sensor GYRO (initial sensor) SET-function + * :VehicleSensGetGyroZFstl() Vehicle sensor GYRO (initial sensor) GET-function + ******************************************************************************/ + +#include "VehicleSens_DataMaster.h" + +#if CONFIG_SENSOR_EXT_VALID /* Initial Sensor Support */ +/*************************************************/ +/* Global variable */ +/*************************************************/ +static VEHICLESENS_DATA_MASTER_FST gstGyroZFst_l; // NOLINT(readability/nolint) + +/******************************************************************************* +* MODULE : VehicleSensInitGyroZFstl +* ABSTRACT : Vehicle Sensor GYRO_Z Initialization Functions +* FUNCTION : GYRO data master initialization process +* ARGUMENT : void +* NOTE : +* RETURN : void +******************************************************************************/ +void VehicleSensInitGyroZFstl(void) { + u_int16 *pus; + + memset(&gstGyroZFst_l, 0x00, sizeof(VEHICLESENS_DATA_MASTER_FST)); + gstGyroZFst_l.ul_did = POSHAL_DID_GYRO_Z_FST; + gstGyroZFst_l.us_size = 0; + gstGyroZFst_l.partition_flg = 0; + + pus = reinterpret_cast(gstGyroZFst_l.uc_data); + memset(reinterpret_cast(pus), VEHICLE_DINIT_GYRO_Z, VEHICLE_DSIZE_GYRO_Z_FST); +} + +/******************************************************************************* +* MODULE : VehicleSensSetGyroZFstl +* ABSTRACT : Vehicle Sensor GYRO_Z SET Functions +* FUNCTION : Update the GYRO data master +* ARGUMENT : *pst_data : Pointer to the message data received by the direct line +* NOTE : +* RETURN : VEHICLESENS_EQ : No data change +* VEHICLESENS_NEQ : Data change +******************************************************************************/ +u_int8 VehicleSensSetGyroZFstl(const LSDRV_LSDATA_FST *pst_data) { // LCOV_EXCL_START 8: dead code. + AGL_ASSERT_NOT_TESTED(); // LCOV_EXCL_LINE 200: test assert + u_int8 uc_ret; + VEHICLESENS_DATA_MASTER_FST *pst_master; + + pst_master = &gstGyroZFst_l; + + /* Compare data master and received data */ + uc_ret = VehicleSensmemcmp(pst_master->uc_data, + pst_data->uc_data, pst_data->uc_size); + + /* Received data is set in the data master. */ + pst_master->ul_did = pst_data->ul_did; + pst_master->us_size = pst_data->uc_size; + pst_master->partition_flg = 0; + pst_master->uc_rcvflag = VEHICLE_RCVFLAG_ON; + memset(pst_master->uc_data, 0x00, sizeof(pst_master->uc_data)); + memcpy(pst_master->uc_data, pst_data->uc_data, pst_data->uc_size); + + return(uc_ret); +} +// LCOV_EXCL_STOP + +/******************************************************************************* +* MODULE : VehicleSensSetGyroZFstG +* ABSTRACT : Vehicle Sensor GYRO_Z SET Functions +* FUNCTION : Update the GYRO data master +* ARGUMENT : *pst_data : Pointer to the message data received by the direct line +* NOTE : +* RETURN : VEHICLESENS_EQ : No data change +* VEHICLESENS_NEQ : Data change +******************************************************************************/ +u_int8 VehicleSensSetGyroZFstG(const LSDRV_LSDATA_FST_GYRO_Z *pst_data) { + static u_int8 uc_ret = VEHICLESENS_EQ; + VEHICLESENS_DATA_MASTER_FST *pst_master; + + u_int8 partition_max; /* Total number of partitions */ + u_int8 partition_num; /* Data number */ + + partition_max = pst_data->uc_partition_max; + partition_num = pst_data->uc_partition_num; + + pst_master = &gstGyroZFst_l; + + if (partition_max == 1) { + /* Compare data master and received data */ + uc_ret = VehicleSensmemcmp(pst_master->uc_data, + pst_data->uc_data, pst_data->uc_size); + + /* Received data is set in the data master. */ + pst_master->ul_did = pst_data->ul_did; + pst_master->us_size = pst_data->uc_size; + pst_master->uc_rcvflag = VEHICLE_RCVFLAG_ON; + pst_master->partition_flg = 0; + memset(pst_master->uc_data, 0x00, sizeof(pst_master->uc_data)); + memcpy(pst_master->uc_data, pst_data->uc_data, pst_data->uc_size); + } else if (partition_max == 2) { + if (partition_num == 1) { + /* Compare data master and received data */ + uc_ret = VehicleSensmemcmp(pst_master->uc_data, pst_data->uc_data, pst_data->uc_size); + + /* Received data is set in the data master. */ + pst_master->ul_did = pst_data->ul_did; + pst_master->us_size = static_cast(pst_master->us_size + pst_data->uc_size); + pst_master->partition_flg = 1; + memcpy(pst_master->uc_data, pst_data->uc_data, pst_data->uc_size); + } else if (partition_num == 2) { + /* Compare data master and received data */ + if (uc_ret == VEHICLESENS_EQ) { + uc_ret = VehicleSensmemcmp(&pst_master->uc_data[VEHICLE_DSIZE_GYRO_Z_FST], + pst_data->uc_data, pst_data->uc_size); + } + + /* Received data is set in the data master. */ + pst_master->ul_did = pst_data->ul_did; + pst_master->us_size = static_cast(pst_master->us_size + pst_data->uc_size); + pst_master->uc_rcvflag = VEHICLE_RCVFLAG_ON; + pst_master->partition_flg = 1; + memcpy(&pst_master->uc_data[VEHICLE_DSIZE_GYRO_Z_FST], pst_data->uc_data, pst_data->uc_size); + } else {} + } else {} + + return(uc_ret); +} + +/******************************************************************************* +* MODULE : VehicleSensGetGyroZFstl +* ABSTRACT : Vehicle Sensor GYRO_Z GET Functions +* FUNCTION : Provide a GYRO data master +* ARGUMENT : *pst_data : Pointer to the data master acquisition destination +* NOTE : +* RETURN : void +******************************************************************************/ +void VehicleSensGetGyroZFstl(VEHICLESENS_DATA_MASTER_FST *pst_data) { + const VEHICLESENS_DATA_MASTER_FST *pst_master; + + pst_master = &gstGyroZFst_l; + + /* Store the data master in the specified destination. */ + pst_data->ul_did = pst_master->ul_did; + pst_data->us_size = pst_master->us_size; + pst_data->uc_rcvflag = pst_master->uc_rcvflag; + pst_data->partition_flg = pst_master->partition_flg; + memcpy(pst_data->uc_data, pst_master->uc_data, pst_master->us_size); +} +#endif diff --git a/positioning/server/src/Sensor/VehicleSens_Did_GyroZ_l.cpp b/positioning/server/src/Sensor/VehicleSens_Did_GyroZ_l.cpp new file mode 100644 index 00000000..8296dab3 --- /dev/null +++ b/positioning/server/src/Sensor/VehicleSens_Did_GyroZ_l.cpp @@ -0,0 +1,126 @@ +/* + * @copyright Copyright (c) 2019-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. + */ + +/******************************************************************************* + * File name :VehicleSens_Did_GyroZ_l.cpp + * Subsystem name :Vehicle sensor process + * Program name :Vehicle sensor data master(POSHAL_DID_GYRO_Z) + * Module configuration :VehicleSensInitGyroZl() Vehicle Sensor GYRO Initialization Functions + * :VehicleSensSetGyroZl() Vehicle Sensor GYRO SET Functions + * :VehicleSensGetGyroZl() Vehicle Sensor GYRO GET Functions + ******************************************************************************/ + +#include "VehicleSens_DataMaster.h" + +/*************************************************/ +/* Global variable */ +/*************************************************/ +static VEHICLESENS_DATA_MASTER gstGyroZ_l; // NOLINT(readability/nolint) + +/******************************************************************************* +* MODULE : VehicleSensInitGyroZl +* ABSTRACT : Vehicle Sensor GYRO_Z Initialization Functions +* FUNCTION : GYRO data master initialization process +* ARGUMENT : void +* NOTE : +* RETURN : void +******************************************************************************/ +void VehicleSensInitGyroZl(void) { + memset(&gstGyroZ_l, 0x00, sizeof(VEHICLESENS_DATA_MASTER)); + gstGyroZ_l.ul_did = POSHAL_DID_GYRO_Z; + gstGyroZ_l.us_size = VEHICLE_DSIZE_GYRO_Z; + gstGyroZ_l.uc_rcvflag = VEHICLE_RCVFLAG_OFF; +} + +/******************************************************************************* +* MODULE : VehicleSensSetGyroZl +* ABSTRACT : Vehicle Sensor GYRO_Z SET Functions +* FUNCTION : Update the GYRO data master +* ARGUMENT : *pst_data : Pointer to the message data received by the direct line +* NOTE : +* RETURN : VEHICLESENS_EQ : No data change +* VEHICLESENS_NEQ : Data change +******************************************************************************/ +u_int8 VehicleSensSetGyroZl(const LSDRV_LSDATA *pst_data) { + u_int8 uc_ret; + VEHICLESENS_DATA_MASTER *pst_master; + + pst_master = &gstGyroZ_l; + + /* Compare data master and received data */ + uc_ret = VehicleSensmemcmp(pst_master->uc_data, pst_data->uc_data, pst_data->uc_size); + + /* Received data is set in the data master. */ + pst_master->ul_did = pst_data->ul_did; + pst_master->us_size = pst_data->uc_size; + pst_master->uc_rcvflag = VEHICLE_RCVFLAG_ON; + pst_master->uc_snscnt = pst_data->uc_sns_cnt; + (void)memcpy(reinterpret_cast(pst_master->uc_data), + (const void *)(pst_data->uc_data), (size_t)pst_data->uc_size); + + return(uc_ret); +} + +/******************************************************************************* +* MODULE : VehicleSensSetGyroZlG +* ABSTRACT : Vehicle Sensor GYRO_Z SET Functions +* FUNCTION : Update the GYRO data master +* ARGUMENT : *pst_data : Pointer to the message data received by the direct line +* NOTE : +* RETURN : VEHICLESENS_EQ : No data change +* VEHICLESENS_NEQ : Data change +******************************************************************************/ +u_int8 VehicleSensSetGyroZlG(const LSDRV_LSDATA_G *pst_data) { + u_int8 uc_ret; + VEHICLESENS_DATA_MASTER *pst_master; + + pst_master = &gstGyroZ_l; + + /* Compare data master and received data */ + uc_ret = VehicleSensmemcmp(pst_master->uc_data, pst_data->uc_data, pst_data->uc_size); + + /* Received data is set in the data master. */ + pst_master->ul_did = pst_data->ul_did; + pst_master->us_size = pst_data->uc_size; + pst_master->uc_rcvflag = VEHICLE_RCVFLAG_ON; + pst_master->uc_snscnt = pst_data->uc_sns_cnt; + (void)memcpy(reinterpret_cast(pst_master->uc_data), + (const void *)(pst_data->uc_data), (size_t)(pst_data->uc_size)); + + return(uc_ret); +} + +/******************************************************************************* +* MODULE : VehicleSensGetGyroZl +* ABSTRACT : Vehicle Sensor GYRO_Z GET Functions +* FUNCTION : Provide a GYRO data master +* ARGUMENT : *pst_data : Pointer to the data master acquisition destination +* NOTE : +* RETURN : void +******************************************************************************/ +void VehicleSensGetGyroZl(VEHICLESENS_DATA_MASTER *pst_data) { + const VEHICLESENS_DATA_MASTER *pst_master; + + pst_master = &gstGyroZ_l; + + /* Store the data master in the specified destination. */ + pst_data->ul_did = pst_master->ul_did; + pst_data->us_size = pst_master->us_size; + pst_data->uc_rcvflag = pst_master->uc_rcvflag; + pst_data->uc_snscnt = pst_master->uc_snscnt; + (void)memcpy(reinterpret_cast(pst_data->uc_data), + (const void *)(pst_master->uc_data), (size_t)(pst_master->us_size)); +} diff --git a/positioning/server/src/Sensor/VehicleSens_Did_Gyro_l.cpp b/positioning/server/src/Sensor/VehicleSens_Did_Gyro_l.cpp deleted file mode 100644 index 26112d53..00000000 --- a/positioning/server/src/Sensor/VehicleSens_Did_Gyro_l.cpp +++ /dev/null @@ -1,128 +0,0 @@ -/* - * @copyright Copyright (c) 2016-2019 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. - */ - -/******************************************************************************* - * File name :VehicleSens_Did_Gyro_l.cpp - * System name :_CWORD107_ - * Subsystem name :Vehicle sensor process - * Program name :Vehicle sensor data master(POSHAL_DID_GYRO) - * Module configuration :VehicleSensInitGyrol() Vehicle Sensor GYRO Initialization Functions - * :VehicleSensSetGyrol() Vehicle Sensor GYRO SET Functions - * :VehicleSensGetGyrol() Vehicle Sensor GYRO GET Functions - ******************************************************************************/ - -#include -#include "VehicleSens_DataMaster.h" - -/*************************************************/ -/* Global variable */ -/*************************************************/ -static VEHICLESENS_DATA_MASTER gstGyro_l; // NOLINT(readability/nolint) - -/******************************************************************************* -* MODULE : VehicleSensInitGyrol -* ABSTRACT : Vehicle Sensor GYRO Initialization Functions -* FUNCTION : GYRO data master initialization process -* ARGUMENT : void -* NOTE : -* RETURN : void -******************************************************************************/ -void VehicleSensInitGyrol(void) { - memset(&gstGyro_l, 0x00, sizeof(VEHICLESENS_DATA_MASTER)); -// gstGyro_l.ul_did = POSHAL_DID_GYRO; - gstGyro_l.us_size = VEHICLE_DSIZE_GYRO; - gstGyro_l.uc_rcvflag = VEHICLE_RCVFLAG_OFF; -} - -/******************************************************************************* -* MODULE : VehicleSensSetGyrol -* ABSTRACT : Vehicle Sensor GYRO SET Functions -* FUNCTION : Update the GYRO data master -* ARGUMENT : *pst_data : Pointer to the message data received by the direct line -* NOTE : -* RETURN : VEHICLESENS_EQ : No data change -* VEHICLESENS_NEQ : Data change -******************************************************************************/ -//u_int8 VehicleSensSetGyrol(const LSDRV_LSDATA *pst_data) { -// u_int8 uc_ret; -// VEHICLESENS_DATA_MASTER *pst_master; -// -// pst_master = &gstGyro_l; -// -// /* Compare data master and received data */ -// uc_ret = VehicleSensmemcmp(pst_master->uc_data, pst_data->uc_data, pst_data->uc_size); -// -// /* Received data is set in the data master. */ -// pst_master->ul_did = pst_data->ul_did; -// pst_master->us_size = pst_data->uc_size; -// pst_master->uc_rcvflag = VEHICLE_RCVFLAG_ON; -// pst_master->uc_snscnt = pst_data->uc_sns_cnt; -// (void)memcpy(reinterpret_cast(pst_master->uc_data), -// (const void *)(pst_data->uc_data), (size_t)pst_data->uc_size); -// -// return(uc_ret); -//} - -/******************************************************************************* -* MODULE : VehicleSensSetGyrolG -* ABSTRACT : Vehicle Sensor GYRO SET Functions -* FUNCTION : Update the GYRO data master -* ARGUMENT : *pst_data : Pointer to the message data received by the direct line -* NOTE : -* RETURN : VEHICLESENS_EQ : No data change -* VEHICLESENS_NEQ : Data change -******************************************************************************/ -//u_int8 VehicleSensSetGyrolG(const LSDRV_LSDATA_G *pst_data) { -// u_int8 uc_ret; -// VEHICLESENS_DATA_MASTER *pst_master; -// -// pst_master = &gstGyro_l; -// -// /* Compare data master and received data */ -// uc_ret = VehicleSensmemcmp(pst_master->uc_data, pst_data->uc_data, pst_data->uc_size); -// -// /* Received data is set in the data master. */ -// pst_master->ul_did = pst_data->ul_did; -// pst_master->us_size = pst_data->uc_size; -// pst_master->uc_rcvflag = VEHICLE_RCVFLAG_ON; -// pst_master->uc_snscnt = pst_data->uc_sns_cnt; -// (void)memcpy(reinterpret_cast(pst_master->uc_data), -// (const void *)(pst_data->uc_data), (size_t)(pst_data->uc_size)); -// -// return(uc_ret); -//} - -/******************************************************************************* -* MODULE : VehicleSensGetGyrol -* ABSTRACT : Vehicle Sensor GYRO GET Functions -* FUNCTION : Provide a GYRO data master -* ARGUMENT : *pst_data : Pointer to the data master acquisition destination -* NOTE : -* RETURN : void -******************************************************************************/ -void VehicleSensGetGyrol(VEHICLESENS_DATA_MASTER *pst_data) { - const VEHICLESENS_DATA_MASTER *pst_master; - - pst_master = &gstGyro_l; - - /* Store the data master in the specified destination. */ - pst_data->ul_did = pst_master->ul_did; - pst_data->us_size = pst_master->us_size; - pst_data->uc_rcvflag = pst_master->uc_rcvflag; - pst_data->uc_snscnt = pst_master->uc_snscnt; - (void)memcpy(reinterpret_cast(pst_data->uc_data), - (const void *)(pst_master->uc_data), (size_t)(pst_master->us_size)); -} diff --git a/positioning/server/src/Sensor/VehicleSens_Did_LocationAltitude.cpp b/positioning/server/src/Sensor/VehicleSens_Did_LocationAltitude.cpp index 43d3846e..167fa0a4 100644 --- a/positioning/server/src/Sensor/VehicleSens_Did_LocationAltitude.cpp +++ b/positioning/server/src/Sensor/VehicleSens_Did_LocationAltitude.cpp @@ -1,5 +1,5 @@ /* - * @copyright Copyright (c) 2016-2019 TOYOTA MOTOR CORPORATION. + * @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. diff --git a/positioning/server/src/Sensor/VehicleSens_Did_LocationAltitude_g.cpp b/positioning/server/src/Sensor/VehicleSens_Did_LocationAltitude_g.cpp index 64e37454..cae429c1 100644 --- a/positioning/server/src/Sensor/VehicleSens_Did_LocationAltitude_g.cpp +++ b/positioning/server/src/Sensor/VehicleSens_Did_LocationAltitude_g.cpp @@ -1,5 +1,5 @@ /* - * @copyright Copyright (c) 2016-2019 TOYOTA MOTOR CORPORATION. + * @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. @@ -37,20 +37,20 @@ static VEHICLESENS_DATA_MASTER gstLocationAltitude_g; // NOLINT(readability @retval none *******************************************************************************/ void VehicleSensInitLocationAltitudeG(void) { -// SENSORLOCATION_ALTITUDEINFO_DAT st_altitude; + SENSORLOCATION_ALTITUDEINFO_DAT st_altitude; memset(&gstLocationAltitude_g, 0x00, sizeof(VEHICLESENS_DATA_MASTER)); /** Data ID setting */ gstLocationAltitude_g.ul_did = VEHICLE_DID_LOCATION_ALTITUDE; /** Data size setting */ -// gstLocationAltitude_g.us_size = sizeof(SENSORLOCATION_ALTITUDEINFO_DAT); + gstLocationAltitude_g.us_size = sizeof(SENSORLOCATION_ALTITUDEINFO_DAT); /** Data content setting */ -// memset(&st_altitude, 0x00, sizeof(st_altitude)); -// st_altitude.getMethod = SENSOR_GET_METHOD_GPS; -// st_altitude.SyncCnt = 0x00; -// st_altitude.isEnable = SENSORLOCATION_STATUS_DISABLE; -// memcpy(&gstLocationAltitude_g.uc_data[0], &st_altitude, sizeof(st_altitude)); + memset(&st_altitude, 0x00, sizeof(st_altitude)); + st_altitude.getMethod = SENSOR_GET_METHOD_GPS; + st_altitude.SyncCnt = 0x00; + st_altitude.isEnable = SENSORLOCATION_STATUS_DISABLE; + memcpy(&gstLocationAltitude_g.uc_data[0], &st_altitude, sizeof(st_altitude)); } /**************************************************************************** @@ -64,24 +64,24 @@ void VehicleSensInitLocationAltitudeG(void) { @retval VEHICLESENS_EQ : No data change @retval VEHICLESENS_NEQ : Data change *******************************************************************************/ -//u_int8 VehicleSensSetLocationAltitudeG(const SENSORLOCATION_ALTITUDEINFO_DAT *pst_altitude) { -// u_int8 uc_ret; -// VEHICLESENS_DATA_MASTER *pst_master; -// -// pst_master = &gstLocationAltitude_g; -// -// /** With the contents of the current data master,Compare received data */ -// uc_ret = VehicleSensmemcmp(pst_master->uc_data, pst_altitude, sizeof(SENSORLOCATION_ALTITUDEINFO_DAT)); -// -// /** Received data is set in the data master. */ -// pst_master->ul_did = VEHICLE_DID_LOCATION_ALTITUDE; -// pst_master->us_size = sizeof(SENSORLOCATION_ALTITUDEINFO_DAT); -// pst_master->uc_rcvflag = VEHICLE_RCVFLAG_ON; -// memset(pst_master->uc_data, 0x00, sizeof(pst_master->uc_data)); -// memcpy(pst_master->uc_data, pst_altitude, sizeof(SENSORLOCATION_ALTITUDEINFO_DAT)); -// -// return(uc_ret); -//} +u_int8 VehicleSensSetLocationAltitudeG(const SENSORLOCATION_ALTITUDEINFO_DAT *pst_altitude) { + u_int8 uc_ret; + VEHICLESENS_DATA_MASTER *pst_master; + + pst_master = &gstLocationAltitude_g; + + /** With the contents of the current data master,Compare received data */ + uc_ret = VehicleSensmemcmp(pst_master->uc_data, pst_altitude, sizeof(SENSORLOCATION_ALTITUDEINFO_DAT)); + + /** Received data is set in the data master. */ + pst_master->ul_did = VEHICLE_DID_LOCATION_ALTITUDE; + pst_master->us_size = sizeof(SENSORLOCATION_ALTITUDEINFO_DAT); + pst_master->uc_rcvflag = VEHICLE_RCVFLAG_ON; + memset(pst_master->uc_data, 0x00, sizeof(pst_master->uc_data)); + memcpy(pst_master->uc_data, pst_altitude, sizeof(SENSORLOCATION_ALTITUDEINFO_DAT)); + + return(uc_ret); +} /**************************************************************************** @brief VehicleSensGetLocationAltitudeG
diff --git a/positioning/server/src/Sensor/VehicleSens_Did_LocationAltitude_n.cpp b/positioning/server/src/Sensor/VehicleSens_Did_LocationAltitude_n.cpp index ac5f2fe9..1d6064f8 100644 --- a/positioning/server/src/Sensor/VehicleSens_Did_LocationAltitude_n.cpp +++ b/positioning/server/src/Sensor/VehicleSens_Did_LocationAltitude_n.cpp @@ -1,5 +1,5 @@ /* - * @copyright Copyright (c) 2016-2019 TOYOTA MOTOR CORPORATION. + * @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. @@ -44,7 +44,7 @@ static VEHICLESENS_DATA_MASTER gstLocationAltitude_n; // NOLINT(readability * @retval none */ void VehicleSensInitLocationAltitudeN(void) { -// SENSORLOCATION_ALTITUDEINFO_DAT st_altitude; + SENSORLOCATION_ALTITUDEINFO_DAT st_altitude; memset(&gstLocationAltitude_n, 0x00, sizeof(VEHICLESENS_DATA_MASTER)); @@ -52,17 +52,15 @@ void VehicleSensInitLocationAltitudeN(void) { gstLocationAltitude_n.ul_did = VEHICLE_DID_LOCATION_ALTITUDE_NAVI; /** Data size setting */ -// gstLocationAltitude_n.us_size = sizeof(SENSORLOCATION_ALTITUDEINFO_DAT); + gstLocationAltitude_n.us_size = sizeof(SENSORLOCATION_ALTITUDEINFO_DAT); /** Data content setting */ -// memset(&st_altitude, 0x00, sizeof(st_altitude)); -// st_altitude.getMethod = SENSOR_GET_METHOD_NAVI; -// st_altitude.SyncCnt = 0x00; -// st_altitude.isEnable = SENSORLOCATION_STATUS_DISABLE; -// st_altitude.isExistDR = 0x00; -// st_altitude.DRStatus = SENSORLOCATION_DRSTATUS_INVALID; -// st_altitude.Altitude = 0x00; -// memcpy(&gstLocationAltitude_n.uc_data[0], &st_altitude, sizeof(st_altitude)); + memset(&st_altitude, 0x00, sizeof(st_altitude)); + st_altitude.getMethod = SENSOR_GET_METHOD_NAVI; + st_altitude.SyncCnt = 0x00; + st_altitude.isEnable = SENSORLOCATION_STATUS_DISABLE; + st_altitude.Altitude = 0x00; + memcpy(&gstLocationAltitude_n.uc_data[0], &st_altitude, sizeof(st_altitude)); return; } @@ -79,23 +77,23 @@ void VehicleSensInitLocationAltitudeN(void) { * @retval VEHICLESENS_EQ : No data change * @retval VEHICLESENS_NEQ : Data change */ -//u_int8 VehicleSensSetLocationAltitudeN(const SENSORLOCATION_ALTITUDEINFO_DAT *pst_altitude) { -// u_int8 uc_ret; -// VEHICLESENS_DATA_MASTER *pst_master; -// -// pst_master = &gstLocationAltitude_n; -// -// /** With the contents of the current data master,Compare received data */ -// uc_ret = VehicleSensmemcmp(pst_master->uc_data, pst_altitude, sizeof(SENSORLOCATION_ALTITUDEINFO_DAT)); -// -// /** Received data is set in the data master. */ -// pst_master->ul_did = VEHICLE_DID_LOCATION_ALTITUDE_NAVI; -// pst_master->us_size = sizeof(SENSORLOCATION_ALTITUDEINFO_DAT); -// pst_master->uc_rcvflag = VEHICLE_RCVFLAG_ON; -// memcpy(pst_master->uc_data, pst_altitude, sizeof(SENSORLOCATION_ALTITUDEINFO_DAT)); -// -// return(uc_ret); -//} +u_int8 VehicleSensSetLocationAltitudeN(const SENSORLOCATION_ALTITUDEINFO_DAT *pst_altitude) { + u_int8 uc_ret; + VEHICLESENS_DATA_MASTER *pst_master; + + pst_master = &gstLocationAltitude_n; + + /** With the contents of the current data master,Compare received data */ + uc_ret = VehicleSensmemcmp(pst_master->uc_data, pst_altitude, sizeof(SENSORLOCATION_ALTITUDEINFO_DAT)); + + /** Received data is set in the data master. */ + pst_master->ul_did = VEHICLE_DID_LOCATION_ALTITUDE_NAVI; + pst_master->us_size = sizeof(SENSORLOCATION_ALTITUDEINFO_DAT); + pst_master->uc_rcvflag = VEHICLE_RCVFLAG_ON; + memcpy(pst_master->uc_data, pst_altitude, sizeof(SENSORLOCATION_ALTITUDEINFO_DAT)); + + return(uc_ret); +} /** * @brief diff --git a/positioning/server/src/Sensor/VehicleSens_Did_LocationInfoNmea.cpp b/positioning/server/src/Sensor/VehicleSens_Did_LocationInfoNmea.cpp index 6f0807be..496e5acd 100644 --- a/positioning/server/src/Sensor/VehicleSens_Did_LocationInfoNmea.cpp +++ b/positioning/server/src/Sensor/VehicleSens_Did_LocationInfoNmea.cpp @@ -1,5 +1,5 @@ /* - * @copyright Copyright (c) 2018-2019 TOYOTA MOTOR CORPORATION. + * @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. diff --git a/positioning/server/src/Sensor/VehicleSens_Did_LocationInfoNmea_n.cpp b/positioning/server/src/Sensor/VehicleSens_Did_LocationInfoNmea_n.cpp index 8301ddc6..048e522e 100644 --- a/positioning/server/src/Sensor/VehicleSens_Did_LocationInfoNmea_n.cpp +++ b/positioning/server/src/Sensor/VehicleSens_Did_LocationInfoNmea_n.cpp @@ -1,5 +1,5 @@ /* - * @copyright Copyright (c) 2018-2019 TOYOTA MOTOR CORPORATION. + * @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. diff --git a/positioning/server/src/Sensor/VehicleSens_Did_LocationLonLat.cpp b/positioning/server/src/Sensor/VehicleSens_Did_LocationLonLat.cpp index 863560d4..1ae1b59e 100644 --- a/positioning/server/src/Sensor/VehicleSens_Did_LocationLonLat.cpp +++ b/positioning/server/src/Sensor/VehicleSens_Did_LocationLonLat.cpp @@ -1,5 +1,5 @@ /* - * @copyright Copyright (c) 2016-2019 TOYOTA MOTOR CORPORATION. + * @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. diff --git a/positioning/server/src/Sensor/VehicleSens_Did_LocationLonLat_g.cpp b/positioning/server/src/Sensor/VehicleSens_Did_LocationLonLat_g.cpp index 02b30847..07075c09 100644 --- a/positioning/server/src/Sensor/VehicleSens_Did_LocationLonLat_g.cpp +++ b/positioning/server/src/Sensor/VehicleSens_Did_LocationLonLat_g.cpp @@ -1,5 +1,5 @@ /* - * @copyright Copyright (c) 2016-2019 TOYOTA MOTOR CORPORATION. + * @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. @@ -37,20 +37,20 @@ static VEHICLESENS_DATA_MASTER gstLocationLonLat_g; // NOLINT(readability/nol @retval none *******************************************************************************/ void VehicleSensInitLocationLonLatG(void) { -// SENSORLOCATION_LONLATINFO_DAT st_lonlat; + SENSORLOCATION_LONLATINFO_DAT st_lonlat; memset(&gstLocationLonLat_g, 0x00, sizeof(VEHICLESENS_DATA_MASTER)); /** Data ID setting */ gstLocationLonLat_g.ul_did = VEHICLE_DID_LOCATION_LONLAT; /** Data size setting */ -// gstLocationLonLat_g.us_size = sizeof(SENSORLOCATION_LONLATINFO_DAT); + gstLocationLonLat_g.us_size = sizeof(SENSORLOCATION_LONLATINFO_DAT); /** Data content setting */ -// memset(&st_lonlat, 0x00, sizeof(st_lonlat)); -// st_lonlat.getMethod = SENSOR_GET_METHOD_GPS; -// st_lonlat.SyncCnt = 0x00; -// st_lonlat.isEnable = SENSORLOCATION_STATUS_DISABLE; -// memcpy(&gstLocationLonLat_g.uc_data[0], &st_lonlat, sizeof(st_lonlat)); + memset(&st_lonlat, 0x00, sizeof(st_lonlat)); + st_lonlat.getMethod = SENSOR_GET_METHOD_GPS; + st_lonlat.SyncCnt = 0x00; + st_lonlat.isEnable = SENSORLOCATION_STATUS_DISABLE; + memcpy(&gstLocationLonLat_g.uc_data[0], &st_lonlat, sizeof(st_lonlat)); } /**************************************************************************** @@ -63,24 +63,24 @@ void VehicleSensInitLocationLonLatG(void) { @retval VEHICLESENS_EQ : No data change @retval VEHICLESENS_NEQ : Data change *******************************************************************************/ -//u_int8 VehicleSensSetLocationLonLatG(const SENSORLOCATION_LONLATINFO_DAT *pst_lonlat) { -// u_int8 uc_ret; -// VEHICLESENS_DATA_MASTER *pst_master; -// -// pst_master = &gstLocationLonLat_g; -// -// /** With the contents of the current data master,Compare received data */ -// uc_ret = VehicleSensmemcmp(pst_master->uc_data, pst_lonlat, sizeof(SENSORLOCATION_LONLATINFO_DAT)); -// -// /** Received data is set in the data master. */ -// pst_master->ul_did = VEHICLE_DID_LOCATION_LONLAT; -// pst_master->us_size = sizeof(SENSORLOCATION_LONLATINFO_DAT); -// pst_master->uc_rcvflag = VEHICLE_RCVFLAG_ON; -// memset(pst_master->uc_data, 0x00, sizeof(pst_master->uc_data)); -// memcpy(pst_master->uc_data, pst_lonlat, sizeof(SENSORLOCATION_LONLATINFO_DAT)); -// -// return(uc_ret); -//} +u_int8 VehicleSensSetLocationLonLatG(const SENSORLOCATION_LONLATINFO_DAT *pst_lonlat) { + u_int8 uc_ret; + VEHICLESENS_DATA_MASTER *pst_master; + + pst_master = &gstLocationLonLat_g; + + /** With the contents of the current data master,Compare received data */ + uc_ret = VehicleSensmemcmp(pst_master->uc_data, pst_lonlat, sizeof(SENSORLOCATION_LONLATINFO_DAT)); + + /** Received data is set in the data master. */ + pst_master->ul_did = VEHICLE_DID_LOCATION_LONLAT; + pst_master->us_size = sizeof(SENSORLOCATION_LONLATINFO_DAT); + pst_master->uc_rcvflag = VEHICLE_RCVFLAG_ON; + memset(pst_master->uc_data, 0x00, sizeof(pst_master->uc_data)); + memcpy(pst_master->uc_data, pst_lonlat, sizeof(SENSORLOCATION_LONLATINFO_DAT)); + + return(uc_ret); +} /**************************************************************************** @brief VehicleSensGetLocationLonLatG
diff --git a/positioning/server/src/Sensor/VehicleSens_Did_LocationLonLat_n.cpp b/positioning/server/src/Sensor/VehicleSens_Did_LocationLonLat_n.cpp index c0f504bb..dcaecff5 100644 --- a/positioning/server/src/Sensor/VehicleSens_Did_LocationLonLat_n.cpp +++ b/positioning/server/src/Sensor/VehicleSens_Did_LocationLonLat_n.cpp @@ -1,5 +1,5 @@ /* - * @copyright Copyright (c) 2016-2019 TOYOTA MOTOR CORPORATION. + * @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. @@ -44,7 +44,7 @@ static VEHICLESENS_DATA_MASTER gstLocationLonLat_n; // NOLINT(readability/n * @retval none */ void VehicleSensInitLocationLonLatN(void) { -// SENSORLOCATION_LONLATINFO_DAT st_lonlat; + SENSORLOCATION_LONLATINFO_DAT st_lonlat; memset(&gstLocationLonLat_n, 0x00, sizeof(VEHICLESENS_DATA_MASTER)); @@ -52,20 +52,18 @@ void VehicleSensInitLocationLonLatN(void) { gstLocationLonLat_n.ul_did = VEHICLE_DID_LOCATION_LONLAT_NAVI; /** Data size setting */ -// gstLocationLonLat_n.us_size = sizeof(SENSORLOCATION_LONLATINFO_DAT); + gstLocationLonLat_n.us_size = sizeof(SENSORLOCATION_LONLATINFO_DAT); /** Data content setting */ -// memset(&st_lonlat, 0x00, sizeof(st_lonlat)); -// st_lonlat.getMethod = SENSOR_GET_METHOD_NAVI; -// st_lonlat.SyncCnt = 0x00; -// st_lonlat.isEnable = SENSORLOCATION_STATUS_DISABLE; -// st_lonlat.isExistDR = 0x00; -// st_lonlat.DRStatus = SENSORLOCATION_DRSTATUS_INVALID; -// st_lonlat.posSts = 0x00; -// st_lonlat.posAcc = 0x00; -// st_lonlat.Longitude = 0x00; -// st_lonlat.Latitude = 0x00; -// memcpy(&gstLocationLonLat_n.uc_data[0], &st_lonlat, sizeof(st_lonlat)); + memset(&st_lonlat, 0x00, sizeof(st_lonlat)); + st_lonlat.getMethod = SENSOR_GET_METHOD_NAVI; + st_lonlat.SyncCnt = 0x00; + st_lonlat.isEnable = SENSORLOCATION_STATUS_DISABLE; + st_lonlat.posSts = 0x00; + st_lonlat.posAcc = 0x00; + st_lonlat.Longitude = 0x00; + st_lonlat.Latitude = 0x00; + memcpy(&gstLocationLonLat_n.uc_data[0], &st_lonlat, sizeof(st_lonlat)); return; } @@ -82,23 +80,23 @@ void VehicleSensInitLocationLonLatN(void) { * @retval VEHICLESENS_EQ : No data change * @retval VEHICLESENS_NEQ : Data change */ -//u_int8 VehicleSensSetLocationLonLatN(const SENSORLOCATION_LONLATINFO_DAT *pst_lonlat) { -// u_int8 uc_ret; -// VEHICLESENS_DATA_MASTER *pst_master; -// -// pst_master = &gstLocationLonLat_n; -// -// /** With the contents of the current data master,Compare received data */ -// uc_ret = VehicleSensmemcmp(pst_master->uc_data, pst_lonlat, sizeof(SENSORLOCATION_LONLATINFO_DAT)); -// -// /** Received data is set in the data master. */ -// pst_master->ul_did = VEHICLE_DID_LOCATION_LONLAT_NAVI; -// pst_master->us_size = sizeof(SENSORLOCATION_LONLATINFO_DAT); -// pst_master->uc_rcvflag = VEHICLE_RCVFLAG_ON; -// memcpy(pst_master->uc_data, pst_lonlat, sizeof(SENSORLOCATION_LONLATINFO_DAT)); -// -// return(uc_ret); -//} +u_int8 VehicleSensSetLocationLonLatN(const SENSORLOCATION_LONLATINFO_DAT *pst_lonlat) { + u_int8 uc_ret; + VEHICLESENS_DATA_MASTER *pst_master; + + pst_master = &gstLocationLonLat_n; + + /** With the contents of the current data master,Compare received data */ + uc_ret = VehicleSensmemcmp(pst_master->uc_data, pst_lonlat, sizeof(SENSORLOCATION_LONLATINFO_DAT)); + + /** Received data is set in the data master. */ + pst_master->ul_did = VEHICLE_DID_LOCATION_LONLAT_NAVI; + pst_master->us_size = sizeof(SENSORLOCATION_LONLATINFO_DAT); + pst_master->uc_rcvflag = VEHICLE_RCVFLAG_ON; + memcpy(pst_master->uc_data, pst_lonlat, sizeof(SENSORLOCATION_LONLATINFO_DAT)); + + return(uc_ret); +} /** * @brief @@ -135,7 +133,7 @@ void VehicleSensGetLocationLonLatN(VEHICLESENS_DATA_MASTER *pst_data) { */ void VehicleSensGetLocationLonLatnUnitCnv(VEHICLESENS_DATA_MASTER *pst_data) { const VEHICLESENS_DATA_MASTER *pst_master; -// SENSORLOCATION_LONLATINFO_DAT st_lonlat; + SENSORLOCATION_LONLATINFO_DAT st_lonlat; int32_t l_lon; int32_t l_lat; int64_t ll_tmp; @@ -143,23 +141,23 @@ void VehicleSensGetLocationLonLatnUnitCnv(VEHICLESENS_DATA_MASTER *pst_data) { pst_master = &gstLocationLonLat_n; /* Perform unit conversion[1/128Second] -> [10^-7 degree] */ -// memcpy(&st_lonlat, pst_master->uc_data, sizeof(st_lonlat)); + memcpy(&st_lonlat, pst_master->uc_data, sizeof(st_lonlat)); /* Longitude */ -// l_lon = st_lonlat.Longitude; -// ll_tmp = (int64_t)l_lon * 10000000; -// st_lonlat.Longitude = (int32_t)(ll_tmp / (128 * 60 * 60)); + l_lon = st_lonlat.Longitude; + ll_tmp = (int64_t)l_lon * 10000000; + st_lonlat.Longitude = (int32_t)(ll_tmp / (128 * 60 * 60)); /* Latitude */ -// l_lat = st_lonlat.Latitude; -// ll_tmp = (int64_t)l_lat * 10000000; -// st_lonlat.Latitude = (int32_t)(ll_tmp / (128 * 60 * 60)); + l_lat = st_lonlat.Latitude; + ll_tmp = (int64_t)l_lat * 10000000; + st_lonlat.Latitude = (int32_t)(ll_tmp / (128 * 60 * 60)); /** Store the data master in the specified destination. */ pst_data->ul_did = pst_master->ul_did; pst_data->us_size = pst_master->us_size; pst_data->uc_rcvflag = pst_master->uc_rcvflag; -// memcpy(pst_data->uc_data, &st_lonlat, sizeof(st_lonlat)); + memcpy(pst_data->uc_data, &st_lonlat, sizeof(st_lonlat)); return; } diff --git a/positioning/server/src/Sensor/VehicleSens_Did_MainGpsInterruptSignal.cpp b/positioning/server/src/Sensor/VehicleSens_Did_MainGpsInterruptSignal.cpp index da240d07..70663245 100644 --- a/positioning/server/src/Sensor/VehicleSens_Did_MainGpsInterruptSignal.cpp +++ b/positioning/server/src/Sensor/VehicleSens_Did_MainGpsInterruptSignal.cpp @@ -1,5 +1,5 @@ /* - * @copyright Copyright (c) 2016-2019 TOYOTA MOTOR CORPORATION. + * @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. @@ -46,7 +46,7 @@ void VehicleSensInitMainGpsInterruptSignal(void) { (void)memset(reinterpret_cast(&(gstMainGpsInterruptSignal)), static_cast(0x00), sizeof(VEHICLESENS_DATA_MASTER_GPS_INTERRUPT_SIGNAL)); gstMainGpsInterruptSignal.ul_did = VEHICLE_DID_MAIN_GPS_INTERRUPT_SIGNAL; -// gstMainGpsInterruptSignal.us_size = VEHICLE_DSIZE_MAIN_GPS_INTERRUPT_SIGNAL; + gstMainGpsInterruptSignal.us_size = VEHICLE_DSIZE_MAIN_GPS_INTERRUPT_SIGNAL; gstMainGpsInterruptSignal.uc_data = VEHICLE_DINIT_MAIN_GPS_INTERRUPT_SIGNAL; #if VEHICLE_SENS_DID_MAIN_GPS_INTERRUPT_SIGNAL_DEBUG_FACTORY @@ -64,45 +64,45 @@ void VehicleSensInitMainGpsInterruptSignal(void) { * RETURN : VEHICLESENS_EQ : No data change * VEHICLESENS_NEQ : Data change ******************************************************************************/ -//u_int8 VehicleSensSetMainGpsInterruptSignal(const SENSOR_MSG_GPSDATA_DAT *pst_data) { // LCOV_EXCL_START 8: dead code. -// AGL_ASSERT_NOT_TESTED(); // LCOV_EXCL_LINE 200: test assert -// u_int8 uc_ret = VEHICLESENS_EQ; -// VEHICLESENS_DATA_MASTER_GPS_INTERRUPT_SIGNAL *pst_master; -// -// if (pst_data == NULL) { -// FRAMEWORKUNIFIEDLOG(ZONE_INFO, __FUNCTION__, "pst_data == NULL\r\n"); -// } else { -// pst_master = &gstMainGpsInterruptSignal; -// -// /* Compare data master and received data */ -// uc_ret = VehicleSensmemcmp(reinterpret_cast(&(pst_master->uc_data)), -// (const void *)(&(pst_data->uc_data)), (size_t)(pst_data->us_size)); -// -// /* Received data is set in the data master. */ -// pst_master->ul_did = pst_data->ul_did; -// pst_master->us_size = pst_data->us_size; -// pst_master->uc_rcvflag = VEHICLE_RCVFLAG_ON; -// (void)memcpy(reinterpret_cast(&(pst_master->uc_data)), -// (const void *)(&(pst_data->uc_data)), sizeof(pst_master->uc_data)); -// -//#if VEHICLE_SENS_DID_MAIN_GPS_INTERRUPT_SIGNAL_DEBUG_FACTORY -// FRAMEWORKUNIFIEDLOG(ZONE_INFO, __FUNCTION__, -// "#[FACTORY] pst_data->ul_did == 0x%x", pst_data->ul_did); -// FRAMEWORKUNIFIEDLOG(ZONE_INFO, __FUNCTION__, -// "#[FACTORY] gstMainGpsInterruptSignal.ul_did == 0x%x\r\n", gstMainGpsInterruptSignal.ul_did); -// FRAMEWORKUNIFIEDLOG(ZONE_INFO, __FUNCTION__, -// "#[FACTORY] (u_int8)pst_data->us_size == 0x%x", (u_int8)pst_data->us_size); -// FRAMEWORKUNIFIEDLOG(ZONE_INFO, __FUNCTION__, -// "#[FACTORY] gstMainGpsInterruptSignal.us_size == 0x%x\r\n", gstMainGpsInterruptSignal.us_size); -// FRAMEWORKUNIFIEDLOG(ZONE_INFO, __FUNCTION__, -// "#[FACTORY] pst_data->uc_data == 0x%x", pst_data->uc_data[0]); -// FRAMEWORKUNIFIEDLOG(ZONE_INFO, __FUNCTION__, -// "#[FACTORY] gstMainGpsInterruptSignal.uc_data == 0x%x\r\n", gstMainGpsInterruptSignal.uc_data); -//#endif -// } -// -// return(uc_ret); -//} +u_int8 VehicleSensSetMainGpsInterruptSignal(const SENSOR_MSG_GPSDATA_DAT *pst_data) { // LCOV_EXCL_START 8: dead code. + AGL_ASSERT_NOT_TESTED(); // LCOV_EXCL_LINE 200: test assert + u_int8 uc_ret = VEHICLESENS_EQ; + VEHICLESENS_DATA_MASTER_GPS_INTERRUPT_SIGNAL *pst_master; + + if (pst_data == NULL) { + FRAMEWORKUNIFIEDLOG(ZONE_INFO, __FUNCTION__, "pst_data == NULL\r\n"); + } else { + pst_master = &gstMainGpsInterruptSignal; + + /* Compare data master and received data */ + uc_ret = VehicleSensmemcmp(reinterpret_cast(&(pst_master->uc_data)), + (const void *)(&(pst_data->uc_data)), (size_t)(pst_data->us_size)); + + /* Received data is set in the data master. */ + pst_master->ul_did = pst_data->ul_did; + pst_master->us_size = pst_data->us_size; + pst_master->uc_rcvflag = VEHICLE_RCVFLAG_ON; + (void)memcpy(reinterpret_cast(&(pst_master->uc_data)), + (const void *)(&(pst_data->uc_data)), sizeof(pst_master->uc_data)); + +#if VEHICLE_SENS_DID_MAIN_GPS_INTERRUPT_SIGNAL_DEBUG_FACTORY + FRAMEWORKUNIFIEDLOG(ZONE_INFO, __FUNCTION__, + "#[FACTORY] pst_data->ul_did == 0x%x", pst_data->ul_did); + FRAMEWORKUNIFIEDLOG(ZONE_INFO, __FUNCTION__, + "#[FACTORY] gstMainGpsInterruptSignal.ul_did == 0x%x\r\n", gstMainGpsInterruptSignal.ul_did); + FRAMEWORKUNIFIEDLOG(ZONE_INFO, __FUNCTION__, + "#[FACTORY] (u_int8)pst_data->us_size == 0x%x", (u_int8)pst_data->us_size); + FRAMEWORKUNIFIEDLOG(ZONE_INFO, __FUNCTION__, + "#[FACTORY] gstMainGpsInterruptSignal.us_size == 0x%x\r\n", gstMainGpsInterruptSignal.us_size); + FRAMEWORKUNIFIEDLOG(ZONE_INFO, __FUNCTION__, + "#[FACTORY] pst_data->uc_data == 0x%x", pst_data->uc_data[0]); + FRAMEWORKUNIFIEDLOG(ZONE_INFO, __FUNCTION__, + "#[FACTORY] gstMainGpsInterruptSignal.uc_data == 0x%x\r\n", gstMainGpsInterruptSignal.uc_data); +#endif + } + + return(uc_ret); +} /******************************************************************************* * MODULE : VehicleSensGetMainGpsInterruptSignal diff --git a/positioning/server/src/Sensor/VehicleSens_Did_Mon_Hw_g.cpp b/positioning/server/src/Sensor/VehicleSens_Did_Mon_Hw_g.cpp index 39a9a463..1859f769 100644 --- a/positioning/server/src/Sensor/VehicleSens_Did_Mon_Hw_g.cpp +++ b/positioning/server/src/Sensor/VehicleSens_Did_Mon_Hw_g.cpp @@ -1,5 +1,5 @@ /* - * @copyright Copyright (c) 2016-2019 TOYOTA MOTOR CORPORATION. + * @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. @@ -55,27 +55,27 @@ void VehicleSensInitMonHwG(void) { @retval VEHICLESENS_NEQ : With data changes @trace *****************************************************************************/ -//u_int8 VehicleSensSetMonHwG(const SENSOR_MSG_GPSDATA_DAT *pst_data) { // LCOV_EXCL_START 8: dead code -// AGL_ASSERT_NOT_TESTED(); // LCOV_EXCL_LINE 200: test assert -// u_int8 uc_ret; -// VEHICLESENS_DATA_MASTER_GPS_UBLOX_FORMAT *pst_master; -// -// pst_master = &gstMonHw_g; -// -// /** Compare data master and received data */ -// uc_ret = VehicleSensmemcmp(pst_master->uc_data, pst_data->uc_data, pst_data->us_size); -// -// /** Received data is set in the data master. */ -// pst_master->ul_did = pst_data->ul_did; -// pst_master->us_size = pst_data->us_size; -// pst_master->uc_rcvflag = VEHICLE_RCVFLAG_ON; -// pst_master->uc_sensor_cnt = pst_data->uc_sns_cnt; -// pst_master->uc_gpscnt_flag = pst_data->uc_gps_cnt_flag; -// -// memcpy(pst_master->uc_data, pst_data->uc_data, pst_data->us_size); -// -// return(uc_ret); -//} +u_int8 VehicleSensSetMonHwG(const SENSOR_MSG_GPSDATA_DAT *pst_data) { // LCOV_EXCL_START 8: dead code + AGL_ASSERT_NOT_TESTED(); // LCOV_EXCL_LINE 200: test assert + u_int8 uc_ret; + VEHICLESENS_DATA_MASTER_GPS_UBLOX_FORMAT *pst_master; + + pst_master = &gstMonHw_g; + + /** Compare data master and received data */ + uc_ret = VehicleSensmemcmp(pst_master->uc_data, pst_data->uc_data, pst_data->us_size); + + /** Received data is set in the data master. */ + pst_master->ul_did = pst_data->ul_did; + pst_master->us_size = pst_data->us_size; + pst_master->uc_rcvflag = VEHICLE_RCVFLAG_ON; + pst_master->uc_sensor_cnt = pst_data->uc_sns_cnt; + pst_master->uc_gpscnt_flag = pst_data->uc_gps_cnt_flag; + + memcpy(pst_master->uc_data, pst_data->uc_data, pst_data->us_size); + + return(uc_ret); +} /*************************************************************************** @brief Vehicle sensor function MON-HW GET @@ -87,18 +87,18 @@ void VehicleSensInitMonHwG(void) { @retval none @trace *****************************************************************************/ -//void VehicleSensGetMonHwG(SENSOR_MSG_GPSDATA_DAT *pst_data) { -// AGL_ASSERT_NOT_TESTED(); // LCOV_EXCL_LINE 200: test assert -// const VEHICLESENS_DATA_MASTER_GPS_UBLOX_FORMAT *pst_master; -// -// pst_master = &gstMonHw_g; -// -// /** Store the data master in the specified destination. */ -// pst_data->ul_did = pst_master->ul_did; -// pst_data->us_size = pst_master->us_size; -// pst_data->uc_rcv_flag = pst_master->uc_rcvflag; -// pst_data->uc_sns_cnt = pst_master->uc_sensor_cnt; -// pst_data->uc_gps_cnt_flag = pst_master->uc_gpscnt_flag; -// memcpy(pst_data->uc_data, pst_master->uc_data, pst_master->us_size); -//} +void VehicleSensGetMonHwG(SENSOR_MSG_GPSDATA_DAT *pst_data) { + AGL_ASSERT_NOT_TESTED(); // LCOV_EXCL_LINE 200: test assert + const VEHICLESENS_DATA_MASTER_GPS_UBLOX_FORMAT *pst_master; + + pst_master = &gstMonHw_g; + + /** Store the data master in the specified destination. */ + pst_data->ul_did = pst_master->ul_did; + pst_data->us_size = pst_master->us_size; + pst_data->uc_rcv_flag = pst_master->uc_rcvflag; + pst_data->uc_sns_cnt = pst_master->uc_sensor_cnt; + pst_data->uc_gps_cnt_flag = pst_master->uc_gpscnt_flag; + memcpy(pst_data->uc_data, pst_master->uc_data, pst_master->us_size); +} // LCOV_EXCL_STOP diff --git a/positioning/server/src/Sensor/VehicleSens_Did_MotionHeading.cpp b/positioning/server/src/Sensor/VehicleSens_Did_MotionHeading.cpp index 5388b5c9..67a218eb 100644 --- a/positioning/server/src/Sensor/VehicleSens_Did_MotionHeading.cpp +++ b/positioning/server/src/Sensor/VehicleSens_Did_MotionHeading.cpp @@ -1,5 +1,5 @@ /* - * @copyright Copyright (c) 2016-2019 TOYOTA MOTOR CORPORATION. + * @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. diff --git a/positioning/server/src/Sensor/VehicleSens_Did_MotionHeading_g.cpp b/positioning/server/src/Sensor/VehicleSens_Did_MotionHeading_g.cpp index ffdc825f..751b199b 100644 --- a/positioning/server/src/Sensor/VehicleSens_Did_MotionHeading_g.cpp +++ b/positioning/server/src/Sensor/VehicleSens_Did_MotionHeading_g.cpp @@ -1,5 +1,5 @@ /* - * @copyright Copyright (c) 2016-2019 TOYOTA MOTOR CORPORATION. + * @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. @@ -37,20 +37,20 @@ static VEHICLESENS_DATA_MASTER gstMotionHeading_g; // NOLINT(readability/noli @retval none *******************************************************************************/ void VehicleSensInitMotionHeadingG(void) { -// SENSORMOTION_HEADINGINFO_DAT st_heading; + SENSORMOTION_HEADINGINFO_DAT st_heading; memset(&gstMotionHeading_g, 0x00, sizeof(VEHICLESENS_DATA_MASTER)); /** Data ID setting */ gstMotionHeading_g.ul_did = VEHICLE_DID_MOTION_HEADING; /** Data size setting */ -// gstMotionHeading_g.us_size = sizeof(SENSORMOTION_HEADINGINFO_DAT); + gstMotionHeading_g.us_size = sizeof(SENSORMOTION_HEADINGINFO_DAT); /** Data content setting */ -// memset(&st_heading, 0x00, sizeof(st_heading)); -// st_heading.getMethod = SENSOR_GET_METHOD_GPS; -// st_heading.SyncCnt = 0x00; -// st_heading.isEnable = SENSORMOTION_STATUS_DISABLE; -// memcpy(&gstMotionHeading_g.uc_data[0], &st_heading, sizeof(st_heading)); + memset(&st_heading, 0x00, sizeof(st_heading)); + st_heading.getMethod = SENSOR_GET_METHOD_GPS; + st_heading.SyncCnt = 0x00; + st_heading.isEnable = SENSORMOTION_STATUS_DISABLE; + memcpy(&gstMotionHeading_g.uc_data[0], &st_heading, sizeof(st_heading)); } /**************************************************************************** @@ -63,25 +63,25 @@ void VehicleSensInitMotionHeadingG(void) { @retval VEHICLESENS_EQ : No data change @retval VEHICLESENS_NEQ : Data change *******************************************************************************/ -//u_int8 VehicleSensSetMotionHeadingG(const SENSORMOTION_HEADINGINFO_DAT *pst_heading) { -// u_int8 uc_ret; -// VEHICLESENS_DATA_MASTER *pst_master; -// -// pst_master = &gstMotionHeading_g; -// -// /** With the contents of the current data master,Compare received data */ -// uc_ret = VehicleSensmemcmp(pst_master->uc_data, pst_heading, -// sizeof(SENSORMOTION_HEADINGINFO_DAT)); -// -// /** Received data is set in the data master. */ -// pst_master->ul_did = VEHICLE_DID_MOTION_HEADING; -// pst_master->us_size = sizeof(SENSORMOTION_HEADINGINFO_DAT); -// pst_master->uc_rcvflag = VEHICLE_RCVFLAG_ON; -// memset(pst_master->uc_data, 0x00, sizeof(pst_master->uc_data)); -// memcpy(pst_master->uc_data, pst_heading, sizeof(SENSORMOTION_HEADINGINFO_DAT)); -// -// return(uc_ret); -//} +u_int8 VehicleSensSetMotionHeadingG(const SENSORMOTION_HEADINGINFO_DAT *pst_heading) { + u_int8 uc_ret; + VEHICLESENS_DATA_MASTER *pst_master; + + pst_master = &gstMotionHeading_g; + + /** With the contents of the current data master,Compare received data */ + uc_ret = VehicleSensmemcmp(pst_master->uc_data, pst_heading, + sizeof(SENSORMOTION_HEADINGINFO_DAT)); + + /** Received data is set in the data master. */ + pst_master->ul_did = VEHICLE_DID_MOTION_HEADING; + pst_master->us_size = sizeof(SENSORMOTION_HEADINGINFO_DAT); + pst_master->uc_rcvflag = VEHICLE_RCVFLAG_ON; + memset(pst_master->uc_data, 0x00, sizeof(pst_master->uc_data)); + memcpy(pst_master->uc_data, pst_heading, sizeof(SENSORMOTION_HEADINGINFO_DAT)); + + return(uc_ret); +} /**************************************************************************** @brief VehicleSensGetMotionHeadingG
diff --git a/positioning/server/src/Sensor/VehicleSens_Did_MotionHeading_n.cpp b/positioning/server/src/Sensor/VehicleSens_Did_MotionHeading_n.cpp index ddbb09ab..4475b240 100644 --- a/positioning/server/src/Sensor/VehicleSens_Did_MotionHeading_n.cpp +++ b/positioning/server/src/Sensor/VehicleSens_Did_MotionHeading_n.cpp @@ -1,5 +1,5 @@ /* - * @copyright Copyright (c) 2016-2019 TOYOTA MOTOR CORPORATION. + * @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. @@ -44,7 +44,7 @@ static VEHICLESENS_DATA_MASTER gstMotionHeading_n; // NOLINT(readability/no * @retval none */ void VehicleSensInitMotionHeadingN(void) { -// SENSORMOTION_HEADINGINFO_DAT st_heading; + SENSORMOTION_HEADINGINFO_DAT st_heading; memset(&gstMotionHeading_n, 0x00, sizeof(VEHICLESENS_DATA_MASTER)); @@ -52,18 +52,16 @@ void VehicleSensInitMotionHeadingN(void) { gstMotionHeading_n.ul_did = VEHICLE_DID_MOTION_HEADING_NAVI; /** Data size setting */ -// gstMotionHeading_n.us_size = sizeof(SENSORMOTION_HEADINGINFO_DAT); + gstMotionHeading_n.us_size = sizeof(SENSORMOTION_HEADINGINFO_DAT); /** Data content setting */ -// memset(&st_heading, 0x00, sizeof(st_heading)); -// st_heading.getMethod = SENSOR_GET_METHOD_NAVI; -// st_heading.SyncCnt = 0x00; -// st_heading.isEnable = SENSORMOTION_STATUS_DISABLE; -// st_heading.isExistDR = 0x00; -// st_heading.DRStatus = SENSORMOTION_DRSTATUS_INVALID; -// st_heading.posSts = 0x00; -// st_heading.Heading = 0x00; -// memcpy(&gstMotionHeading_n.uc_data[0], &st_heading, sizeof(st_heading)); + memset(&st_heading, 0x00, sizeof(st_heading)); + st_heading.getMethod = SENSOR_GET_METHOD_NAVI; + st_heading.SyncCnt = 0x00; + st_heading.isEnable = SENSORMOTION_STATUS_DISABLE; + st_heading.posSts = 0x00; + st_heading.Heading = 0x00; + memcpy(&gstMotionHeading_n.uc_data[0], &st_heading, sizeof(st_heading)); return; } @@ -80,23 +78,23 @@ void VehicleSensInitMotionHeadingN(void) { * @retval VEHICLESENS_EQ : No data change * @retval VEHICLESENS_NEQ : Data change */ -//u_int8 VehicleSensSetMotionHeadingN(const SENSORMOTION_HEADINGINFO_DAT *pst_heading) { -// u_int8 uc_ret; -// VEHICLESENS_DATA_MASTER *pst_master; -// -// pst_master = &gstMotionHeading_n; -// -// /** With the contents of the current data master,Compare received data */ -// uc_ret = VehicleSensmemcmp(pst_master->uc_data, pst_heading, sizeof(SENSORMOTION_HEADINGINFO_DAT)); -// -// /** Received data is set in the data master. */ -// pst_master->ul_did = VEHICLE_DID_MOTION_HEADING_NAVI; -// pst_master->us_size = sizeof(SENSORMOTION_HEADINGINFO_DAT); -// pst_master->uc_rcvflag = VEHICLE_RCVFLAG_ON; -// memcpy(pst_master->uc_data, pst_heading, sizeof(SENSORMOTION_HEADINGINFO_DAT)); -// -// return(uc_ret); -//} +u_int8 VehicleSensSetMotionHeadingN(const SENSORMOTION_HEADINGINFO_DAT *pst_heading) { + u_int8 uc_ret; + VEHICLESENS_DATA_MASTER *pst_master; + + pst_master = &gstMotionHeading_n; + + /** With the contents of the current data master,Compare received data */ + uc_ret = VehicleSensmemcmp(pst_master->uc_data, pst_heading, sizeof(SENSORMOTION_HEADINGINFO_DAT)); + + /** Received data is set in the data master. */ + pst_master->ul_did = VEHICLE_DID_MOTION_HEADING_NAVI; + pst_master->us_size = sizeof(SENSORMOTION_HEADINGINFO_DAT); + pst_master->uc_rcvflag = VEHICLE_RCVFLAG_ON; + memcpy(pst_master->uc_data, pst_heading, sizeof(SENSORMOTION_HEADINGINFO_DAT)); + + return(uc_ret); +} /** * @brief @@ -138,27 +136,27 @@ void VehicleSensGetMotionHeadingN(VEHICLESENS_DATA_MASTER *pst_data) { // LCOV_ */ void VehicleSensGetMotionHeadingnCnvData(VEHICLESENS_DATA_MASTER *pst_data) { const VEHICLESENS_DATA_MASTER *pst_master; -// SENSORMOTION_HEADINGINFO_DAT st_heading; + SENSORMOTION_HEADINGINFO_DAT st_heading; int16 i_heading; pst_master = &gstMotionHeading_n; /* Perform the orientation conversion[-179 to +180] -> [0 to 359] */ -// memcpy(&st_heading, pst_master->uc_data, sizeof(st_heading)); -// i_heading = static_cast(st_heading.Heading); -// if (i_heading > 0) { -// i_heading = static_cast(360 - i_heading); -// } else { -// i_heading = static_cast(i_heading * -1); -// } -// /* Perform unit conversion[Once] -> [0.01 degree] */ -// st_heading.Heading = (u_int16)(i_heading * 100); + memcpy(&st_heading, pst_master->uc_data, sizeof(st_heading)); + i_heading = static_cast(st_heading.Heading); + if (i_heading > 0) { + i_heading = static_cast(360 - i_heading); + } else { + i_heading = static_cast(i_heading * -1); + } + /* Perform unit conversion[Once] -> [0.01 degree] */ + st_heading.Heading = (u_int16)(i_heading * 100); /** Store the data master in the specified destination. */ pst_data->ul_did = pst_master->ul_did; pst_data->us_size = pst_master->us_size; pst_data->uc_rcvflag = pst_master->uc_rcvflag; -// memcpy(pst_data->uc_data, &st_heading, sizeof(st_heading)); + memcpy(pst_data->uc_data, &st_heading, sizeof(st_heading)); return; } diff --git a/positioning/server/src/Sensor/VehicleSens_Did_MotionSpeed.cpp b/positioning/server/src/Sensor/VehicleSens_Did_MotionSpeed.cpp index 15af277c..0f7abe3f 100644 --- a/positioning/server/src/Sensor/VehicleSens_Did_MotionSpeed.cpp +++ b/positioning/server/src/Sensor/VehicleSens_Did_MotionSpeed.cpp @@ -1,5 +1,5 @@ /* - * @copyright Copyright (c) 2016-2019 TOYOTA MOTOR CORPORATION. + * @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. diff --git a/positioning/server/src/Sensor/VehicleSens_Did_MotionSpeed_g.cpp b/positioning/server/src/Sensor/VehicleSens_Did_MotionSpeed_g.cpp index 9ca047a1..9b8ae6c6 100644 --- a/positioning/server/src/Sensor/VehicleSens_Did_MotionSpeed_g.cpp +++ b/positioning/server/src/Sensor/VehicleSens_Did_MotionSpeed_g.cpp @@ -1,5 +1,5 @@ /* - * @copyright Copyright (c) 2016-2019 TOYOTA MOTOR CORPORATION. + * @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. @@ -41,20 +41,20 @@ static VEHICLESENS_DATA_MASTER gstMotionSpeed_g; // NOLINT(readability/noli * Speed information data master initialization process(NMEA information) */ void VehicleSensInitMotionSpeedG(void) { -// SENSORMOTION_SPEEDINFO_DAT st_speed; + SENSORMOTION_SPEEDINFO_DAT st_speed; memset(&gstMotionSpeed_g, 0x00, sizeof(VEHICLESENS_DATA_MASTER)); /** Data ID setting */ gstMotionSpeed_g.ul_did = VEHICLE_DID_MOTION_SPEED; /** Data size setting */ -// gstMotionSpeed_g.us_size = sizeof(SENSORMOTION_SPEEDINFO_DAT); + gstMotionSpeed_g.us_size = sizeof(SENSORMOTION_SPEEDINFO_DAT); /** Data content setting */ -// memset(&st_speed, 0x00, sizeof(st_speed)); -// st_speed.getMethod = SENSOR_GET_METHOD_GPS; -// st_speed.SyncCnt = 0x00; -// st_speed.isEnable = SENSORMOTION_STATUS_DISABLE; -// memcpy(&gstMotionSpeed_g.uc_data[0], &st_speed, sizeof(st_speed)); + memset(&st_speed, 0x00, sizeof(st_speed)); + st_speed.getMethod = SENSOR_GET_METHOD_GPS; + st_speed.SyncCnt = 0x00; + st_speed.isEnable = SENSORMOTION_STATUS_DISABLE; + memcpy(&gstMotionSpeed_g.uc_data[0], &st_speed, sizeof(st_speed)); } /** @@ -66,25 +66,25 @@ void VehicleSensInitMotionSpeedG(void) { * @return VEHICLESENS_EQ : No data change
* VEHICLESENS_NEQ : Data change */ -//u_int8 VehicleSensSetMotionSpeedG(const SENSORMOTION_SPEEDINFO_DAT *pst_speed) { // LCOV_EXCL_START 8: dead code. -// AGL_ASSERT_NOT_TESTED(); // LCOV_EXCL_LINE 200: test assert -// u_int8 uc_ret; -// VEHICLESENS_DATA_MASTER *pst_master; -// -// pst_master = &gstMotionSpeed_g; -// -// /** With the contents of the current data master,Compare received data */ -// uc_ret = VehicleSensmemcmp(pst_master->uc_data, pst_speed, sizeof(SENSORMOTION_SPEEDINFO_DAT)); -// -// /** Received data is set in the data master. */ -// pst_master->ul_did = VEHICLE_DID_MOTION_SPEED; -// pst_master->us_size = sizeof(SENSORMOTION_SPEEDINFO_DAT); -// pst_master->uc_rcvflag = VEHICLE_RCVFLAG_ON; -// memset(pst_master->uc_data, 0x00, sizeof(pst_master->uc_data)); -// memcpy(pst_master->uc_data, pst_speed, sizeof(SENSORMOTION_SPEEDINFO_DAT)); -// -// return(uc_ret); -//} +u_int8 VehicleSensSetMotionSpeedG(const SENSORMOTION_SPEEDINFO_DAT *pst_speed) { // LCOV_EXCL_START 8: dead code. + AGL_ASSERT_NOT_TESTED(); // LCOV_EXCL_LINE 200: test assert + u_int8 uc_ret; + VEHICLESENS_DATA_MASTER *pst_master; + + pst_master = &gstMotionSpeed_g; + + /** With the contents of the current data master,Compare received data */ + uc_ret = VehicleSensmemcmp(pst_master->uc_data, pst_speed, sizeof(SENSORMOTION_SPEEDINFO_DAT)); + + /** Received data is set in the data master. */ + pst_master->ul_did = VEHICLE_DID_MOTION_SPEED; + pst_master->us_size = sizeof(SENSORMOTION_SPEEDINFO_DAT); + pst_master->uc_rcvflag = VEHICLE_RCVFLAG_ON; + memset(pst_master->uc_data, 0x00, sizeof(pst_master->uc_data)); + memcpy(pst_master->uc_data, pst_speed, sizeof(SENSORMOTION_SPEEDINFO_DAT)); + + return(uc_ret); +} /** * @brief diff --git a/positioning/server/src/Sensor/VehicleSens_Did_MotionSpeed_i.cpp b/positioning/server/src/Sensor/VehicleSens_Did_MotionSpeed_i.cpp index 0e5823de..7f01e2f2 100644 --- a/positioning/server/src/Sensor/VehicleSens_Did_MotionSpeed_i.cpp +++ b/positioning/server/src/Sensor/VehicleSens_Did_MotionSpeed_i.cpp @@ -1,5 +1,5 @@ /* - * @copyright Copyright (c) 2016-2019 TOYOTA MOTOR CORPORATION. + * @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. @@ -41,20 +41,20 @@ static VEHICLESENS_DATA_MASTER gstMotionSpeed_i; // NOLINT(readability/nolint * Speed information data master initialization process(Internal calculation information) */ void VehicleSensInitMotionSpeedI(void) { -// SENSORMOTION_SPEEDINFO_DAT st_speed; + SENSORMOTION_SPEEDINFO_DAT st_speed; memset(&gstMotionSpeed_i, 0x00, sizeof(VEHICLESENS_DATA_MASTER)); /** Data ID setting */ gstMotionSpeed_i.ul_did = VEHICLE_DID_MOTION_SPEED_INTERNAL; /** Data size setting */ -// gstMotionSpeed_i.us_size = sizeof(SENSORMOTION_SPEEDINFO_DAT); + gstMotionSpeed_i.us_size = sizeof(SENSORMOTION_SPEEDINFO_DAT); /** Data content setting */ -// memset(&st_speed, 0x00, sizeof(st_speed)); -// st_speed.getMethod = SENSOR_GET_METHOD_POS; -// st_speed.SyncCnt = 0x00; -// st_speed.isEnable = SENSORMOTION_STATUS_DISABLE; -// memcpy(&gstMotionSpeed_i.uc_data[0], &st_speed, sizeof(st_speed)); + memset(&st_speed, 0x00, sizeof(st_speed)); + st_speed.getMethod = SENSOR_GET_METHOD_POS; + st_speed.SyncCnt = 0x00; + st_speed.isEnable = SENSORMOTION_STATUS_DISABLE; + memcpy(&gstMotionSpeed_i.uc_data[0], &st_speed, sizeof(st_speed)); } /** @@ -66,23 +66,23 @@ void VehicleSensInitMotionSpeedI(void) { * @return VEHICLESENS_EQ : No data change
* VEHICLESENS_NEQ : Data change */ -//u_int8 VehicleSensSetMotionSpeedI(const SENSORMOTION_SPEEDINFO_DAT *pst_speed) { -// u_int8 uc_ret; -// VEHICLESENS_DATA_MASTER *pst_master; -// -// pst_master = &gstMotionSpeed_i; -// -// /** With the contents of the current data master,Compare received data */ -// uc_ret = VehicleSensmemcmp(pst_master->uc_data, pst_speed, sizeof(SENSORMOTION_SPEEDINFO_DAT)); -// -// /** Received data is set in the data master. */ -// pst_master->ul_did = VEHICLE_DID_MOTION_SPEED_INTERNAL; -// pst_master->us_size = sizeof(SENSORMOTION_SPEEDINFO_DAT); -// pst_master->uc_rcvflag = VEHICLE_RCVFLAG_ON; -// memcpy(pst_master->uc_data, pst_speed, sizeof(SENSORMOTION_SPEEDINFO_DAT)); -// -// return(uc_ret); -//} +u_int8 VehicleSensSetMotionSpeedI(const SENSORMOTION_SPEEDINFO_DAT *pst_speed) { + u_int8 uc_ret; + VEHICLESENS_DATA_MASTER *pst_master; + + pst_master = &gstMotionSpeed_i; + + /** With the contents of the current data master,Compare received data */ + uc_ret = VehicleSensmemcmp(pst_master->uc_data, pst_speed, sizeof(SENSORMOTION_SPEEDINFO_DAT)); + + /** Received data is set in the data master. */ + pst_master->ul_did = VEHICLE_DID_MOTION_SPEED_INTERNAL; + pst_master->us_size = sizeof(SENSORMOTION_SPEEDINFO_DAT); + pst_master->uc_rcvflag = VEHICLE_RCVFLAG_ON; + memcpy(pst_master->uc_data, pst_speed, sizeof(SENSORMOTION_SPEEDINFO_DAT)); + + return(uc_ret); +} /** * @brief diff --git a/positioning/server/src/Sensor/VehicleSens_Did_MotionSpeed_n.cpp b/positioning/server/src/Sensor/VehicleSens_Did_MotionSpeed_n.cpp index 7fe4a598..9c8f5bcd 100644 --- a/positioning/server/src/Sensor/VehicleSens_Did_MotionSpeed_n.cpp +++ b/positioning/server/src/Sensor/VehicleSens_Did_MotionSpeed_n.cpp @@ -1,5 +1,5 @@ /* - * @copyright Copyright (c) 2016-2019 TOYOTA MOTOR CORPORATION. + * @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. @@ -41,20 +41,20 @@ static VEHICLESENS_DATA_MASTER gstMotionSpeed_n; // NOLINT(readability/noli * Speed information data master initialization process(Navi information) */ void VehicleSensInitMotionSpeedN(void) { -// SENSORMOTION_SPEEDINFO_DAT st_speed; + SENSORMOTION_SPEEDINFO_DAT st_speed; memset(&gstMotionSpeed_n, 0x00, sizeof(VEHICLESENS_DATA_MASTER)); /** Data ID setting */ gstMotionSpeed_n.ul_did = VEHICLE_DID_MOTION_SPEED_NAVI; /** Data size setting */ -// gstMotionSpeed_n.us_size = sizeof(SENSORMOTION_SPEEDINFO_DAT); + gstMotionSpeed_n.us_size = sizeof(SENSORMOTION_SPEEDINFO_DAT); /** Data content setting */ -// memset(&st_speed, 0x00, sizeof(st_speed)); -// st_speed.getMethod = SENSOR_GET_METHOD_NAVI; -// st_speed.SyncCnt = 0x00; -// st_speed.isEnable = SENSORMOTION_STATUS_DISABLE; -// memcpy(&gstMotionSpeed_n.uc_data[0], &st_speed, sizeof(st_speed)); + memset(&st_speed, 0x00, sizeof(st_speed)); + st_speed.getMethod = SENSOR_GET_METHOD_NAVI; + st_speed.SyncCnt = 0x00; + st_speed.isEnable = SENSORMOTION_STATUS_DISABLE; + memcpy(&gstMotionSpeed_n.uc_data[0], &st_speed, sizeof(st_speed)); } /** @@ -66,23 +66,23 @@ void VehicleSensInitMotionSpeedN(void) { * @return VEHICLESENS_EQ : No data change
* VEHICLESENS_NEQ : Data change */ -//u_int8 VehicleSensSetMotionSpeedN(const SENSORMOTION_SPEEDINFO_DAT *pst_speed) { -// u_int8 uc_ret; -// VEHICLESENS_DATA_MASTER *pst_master; -// -// pst_master = &gstMotionSpeed_n; -// -// /** With the contents of the current data master,Compare received data */ -// uc_ret = VehicleSensmemcmp(pst_master->uc_data, pst_speed, sizeof(SENSORMOTION_SPEEDINFO_DAT)); -// -// /** Received data is set in the data master. */ -// pst_master->ul_did = VEHICLE_DID_MOTION_SPEED_NAVI; -// pst_master->us_size = sizeof(SENSORMOTION_SPEEDINFO_DAT); -// pst_master->uc_rcvflag = VEHICLE_RCVFLAG_ON; -// memcpy(pst_master->uc_data, pst_speed, sizeof(SENSORMOTION_SPEEDINFO_DAT)); -// -// return(uc_ret); -//} +u_int8 VehicleSensSetMotionSpeedN(const SENSORMOTION_SPEEDINFO_DAT *pst_speed) { + u_int8 uc_ret; + VEHICLESENS_DATA_MASTER *pst_master; + + pst_master = &gstMotionSpeed_n; + + /** With the contents of the current data master,Compare received data */ + uc_ret = VehicleSensmemcmp(pst_master->uc_data, pst_speed, sizeof(SENSORMOTION_SPEEDINFO_DAT)); + + /** Received data is set in the data master. */ + pst_master->ul_did = VEHICLE_DID_MOTION_SPEED_NAVI; + pst_master->us_size = sizeof(SENSORMOTION_SPEEDINFO_DAT); + pst_master->uc_rcvflag = VEHICLE_RCVFLAG_ON; + memcpy(pst_master->uc_data, pst_speed, sizeof(SENSORMOTION_SPEEDINFO_DAT)); + + return(uc_ret); +} /** * @brief diff --git a/positioning/server/src/Sensor/VehicleSens_Did_Nav_Clock_g.cpp b/positioning/server/src/Sensor/VehicleSens_Did_Nav_Clock_g.cpp index 0749c544..a9bc0c98 100644 --- a/positioning/server/src/Sensor/VehicleSens_Did_Nav_Clock_g.cpp +++ b/positioning/server/src/Sensor/VehicleSens_Did_Nav_Clock_g.cpp @@ -1,5 +1,5 @@ /* - * @copyright Copyright (c) 2016-2019 TOYOTA MOTOR CORPORATION. + * @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. @@ -55,27 +55,27 @@ void VehicleSensInitNavClockG(void) { @retval VEHICLESENS_NEQ : With data changes @trace *****************************************************************************/ -//u_int8 VehicleSensSetNavClockG(const SENSOR_MSG_GPSDATA_DAT *pst_data) { // LCOV_EXCL_START 8: dead code -// AGL_ASSERT_NOT_TESTED(); // LCOV_EXCL_LINE 200: test assert -// u_int8 uc_ret; -// VEHICLESENS_DATA_MASTER_GPS_UBLOX_FORMAT *pst_master; -// -// pst_master = &gstNavClock_g; -// -// /** Compare data master and received data */ -// uc_ret = VehicleSensmemcmp(pst_master->uc_data, pst_data->uc_data, pst_data->us_size); -// -// /** Received data is set in the data master. */ -// pst_master->ul_did = pst_data->ul_did; -// pst_master->us_size = pst_data->us_size; -// pst_master->uc_rcvflag = VEHICLE_RCVFLAG_ON; -// pst_master->uc_sensor_cnt = pst_data->uc_sns_cnt; -// pst_master->uc_gpscnt_flag = pst_data->uc_gps_cnt_flag; -// -// memcpy(pst_master->uc_data, pst_data->uc_data, pst_data->us_size); -// -// return(uc_ret); -//} +u_int8 VehicleSensSetNavClockG(const SENSOR_MSG_GPSDATA_DAT *pst_data) { // LCOV_EXCL_START 8: dead code + AGL_ASSERT_NOT_TESTED(); // LCOV_EXCL_LINE 200: test assert + u_int8 uc_ret; + VEHICLESENS_DATA_MASTER_GPS_UBLOX_FORMAT *pst_master; + + pst_master = &gstNavClock_g; + + /** Compare data master and received data */ + uc_ret = VehicleSensmemcmp(pst_master->uc_data, pst_data->uc_data, pst_data->us_size); + + /** Received data is set in the data master. */ + pst_master->ul_did = pst_data->ul_did; + pst_master->us_size = pst_data->us_size; + pst_master->uc_rcvflag = VEHICLE_RCVFLAG_ON; + pst_master->uc_sensor_cnt = pst_data->uc_sns_cnt; + pst_master->uc_gpscnt_flag = pst_data->uc_gps_cnt_flag; + + memcpy(pst_master->uc_data, pst_data->uc_data, pst_data->us_size); + + return(uc_ret); +} /*************************************************************************** @brief Vehicle sensor function NAV-CLOCK GET @@ -87,18 +87,18 @@ void VehicleSensInitNavClockG(void) { @retval none @trace *****************************************************************************/ -//void VehicleSensGetNavClockG(SENSOR_MSG_GPSDATA_DAT *pst_data) { -// AGL_ASSERT_NOT_TESTED(); // LCOV_EXCL_LINE 200: test assert -// const VEHICLESENS_DATA_MASTER_GPS_UBLOX_FORMAT *pst_master; -// -// pst_master = &gstNavClock_g; -// -// /** Store the data master in the specified destination. */ -// pst_data->ul_did = pst_master->ul_did; -// pst_data->us_size = pst_master->us_size; -// pst_data->uc_rcv_flag = pst_master->uc_rcvflag; -// pst_data->uc_sns_cnt = pst_master->uc_sensor_cnt; -// pst_data->uc_gps_cnt_flag = pst_master->uc_gpscnt_flag; -// memcpy(pst_data->uc_data, pst_master->uc_data, pst_master->us_size); -//} +void VehicleSensGetNavClockG(SENSOR_MSG_GPSDATA_DAT *pst_data) { + AGL_ASSERT_NOT_TESTED(); // LCOV_EXCL_LINE 200: test assert + const VEHICLESENS_DATA_MASTER_GPS_UBLOX_FORMAT *pst_master; + + pst_master = &gstNavClock_g; + + /** Store the data master in the specified destination. */ + pst_data->ul_did = pst_master->ul_did; + pst_data->us_size = pst_master->us_size; + pst_data->uc_rcv_flag = pst_master->uc_rcvflag; + pst_data->uc_sns_cnt = pst_master->uc_sensor_cnt; + pst_data->uc_gps_cnt_flag = pst_master->uc_gpscnt_flag; + memcpy(pst_data->uc_data, pst_master->uc_data, pst_master->us_size); +} // LCOV_EXCL_STOP diff --git a/positioning/server/src/Sensor/VehicleSens_Did_Nav_Dop_g.cpp b/positioning/server/src/Sensor/VehicleSens_Did_Nav_Dop_g.cpp index 6cac2b2d..211e9402 100644 --- a/positioning/server/src/Sensor/VehicleSens_Did_Nav_Dop_g.cpp +++ b/positioning/server/src/Sensor/VehicleSens_Did_Nav_Dop_g.cpp @@ -1,5 +1,5 @@ /* - * @copyright Copyright (c) 2016-2019 TOYOTA MOTOR CORPORATION. + * @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. @@ -55,27 +55,27 @@ void VehicleSensInitNavDopG(void) { @retval VEHICLESENS_NEQ : With data changes @trace *****************************************************************************/ -//u_int8 VehicleSensSetNavDopG(const SENSOR_MSG_GPSDATA_DAT *pst_data) { // LCOV_EXCL_START 8: dead code -// AGL_ASSERT_NOT_TESTED(); // LCOV_EXCL_LINE 200: test assert -// u_int8 uc_ret; -// VEHICLESENS_DATA_MASTER_GPS_UBLOX_FORMAT *pst_master; -// -// pst_master = &gstNavDop_g; -// -// /** Compare data master and received data */ -// uc_ret = VehicleSensmemcmp(pst_master->uc_data, pst_data->uc_data, pst_data->us_size); -// -// /** Received data is set in the data master. */ -// pst_master->ul_did = pst_data->ul_did; -// pst_master->us_size = pst_data->us_size; -// pst_master->uc_rcvflag = VEHICLE_RCVFLAG_ON; -// pst_master->uc_sensor_cnt = pst_data->uc_sns_cnt; -// pst_master->uc_gpscnt_flag = pst_data->uc_gps_cnt_flag; -// -// memcpy(pst_master->uc_data, pst_data->uc_data, pst_data->us_size); -// -// return(uc_ret); -//} +u_int8 VehicleSensSetNavDopG(const SENSOR_MSG_GPSDATA_DAT *pst_data) { // LCOV_EXCL_START 8: dead code + AGL_ASSERT_NOT_TESTED(); // LCOV_EXCL_LINE 200: test assert + u_int8 uc_ret; + VEHICLESENS_DATA_MASTER_GPS_UBLOX_FORMAT *pst_master; + + pst_master = &gstNavDop_g; + + /** Compare data master and received data */ + uc_ret = VehicleSensmemcmp(pst_master->uc_data, pst_data->uc_data, pst_data->us_size); + + /** Received data is set in the data master. */ + pst_master->ul_did = pst_data->ul_did; + pst_master->us_size = pst_data->us_size; + pst_master->uc_rcvflag = VEHICLE_RCVFLAG_ON; + pst_master->uc_sensor_cnt = pst_data->uc_sns_cnt; + pst_master->uc_gpscnt_flag = pst_data->uc_gps_cnt_flag; + + memcpy(pst_master->uc_data, pst_data->uc_data, pst_data->us_size); + + return(uc_ret); +} /*************************************************************************** @brief Vehicle sensor function NAV-DOP GET @@ -87,18 +87,18 @@ void VehicleSensInitNavDopG(void) { @retval none @trace *****************************************************************************/ -//void VehicleSensGetNavDopG(SENSOR_MSG_GPSDATA_DAT *pst_data) { -// AGL_ASSERT_NOT_TESTED(); // LCOV_EXCL_LINE 200: test assert -// const VEHICLESENS_DATA_MASTER_GPS_UBLOX_FORMAT *pst_master; -// -// pst_master = &gstNavDop_g; -// -// /** Store the data master in the specified destination. */ -// pst_data->ul_did = pst_master->ul_did; -// pst_data->us_size = pst_master->us_size; -// pst_data->uc_rcv_flag = pst_master->uc_rcvflag; -// pst_data->uc_sns_cnt = pst_master->uc_sensor_cnt; -// pst_data->uc_gps_cnt_flag = pst_master->uc_gpscnt_flag; -// memcpy(pst_data->uc_data, pst_master->uc_data, pst_master->us_size); -//} +void VehicleSensGetNavDopG(SENSOR_MSG_GPSDATA_DAT *pst_data) { + AGL_ASSERT_NOT_TESTED(); // LCOV_EXCL_LINE 200: test assert + const VEHICLESENS_DATA_MASTER_GPS_UBLOX_FORMAT *pst_master; + + pst_master = &gstNavDop_g; + + /** Store the data master in the specified destination. */ + pst_data->ul_did = pst_master->ul_did; + pst_data->us_size = pst_master->us_size; + pst_data->uc_rcv_flag = pst_master->uc_rcvflag; + pst_data->uc_sns_cnt = pst_master->uc_sensor_cnt; + pst_data->uc_gps_cnt_flag = pst_master->uc_gpscnt_flag; + memcpy(pst_data->uc_data, pst_master->uc_data, pst_master->us_size); +} // LCOV_EXCL_STOP diff --git a/positioning/server/src/Sensor/VehicleSens_Did_Nav_Posllh_g.cpp b/positioning/server/src/Sensor/VehicleSens_Did_Nav_Posllh_g.cpp index 9ee075ba..17ebc044 100644 --- a/positioning/server/src/Sensor/VehicleSens_Did_Nav_Posllh_g.cpp +++ b/positioning/server/src/Sensor/VehicleSens_Did_Nav_Posllh_g.cpp @@ -1,5 +1,5 @@ /* - * @copyright Copyright (c) 2016-2019 TOYOTA MOTOR CORPORATION. + * @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. @@ -55,27 +55,27 @@ void VehicleSensInitNavPosllhG(void) { @retval VEHICLESENS_NEQ : With data changes @trace *****************************************************************************/ -//u_int8 VehicleSensSetNavPosllhG(const SENSOR_MSG_GPSDATA_DAT *pst_data) { // LCOV_EXCL_START 8: dead code -// AGL_ASSERT_NOT_TESTED(); // LCOV_EXCL_LINE 200: test assert -// u_int8 uc_ret; -// VEHICLESENS_DATA_MASTER_GPS_UBLOX_FORMAT *pst_master; -// -// pst_master = &gstNavPosllh_g; -// -// /** Compare data master and received data */ -// uc_ret = VehicleSensmemcmp(pst_master->uc_data, pst_data->uc_data, pst_data->us_size); -// -// /** Received data is set in the data master. */ -// pst_master->ul_did = pst_data->ul_did; -// pst_master->us_size = pst_data->us_size; -// pst_master->uc_rcvflag = VEHICLE_RCVFLAG_ON; -// pst_master->uc_sensor_cnt = pst_data->uc_sns_cnt; -// pst_master->uc_gpscnt_flag = pst_data->uc_gps_cnt_flag; -// -// memcpy(pst_master->uc_data, pst_data->uc_data, pst_data->us_size); -// -// return(uc_ret); -//} +u_int8 VehicleSensSetNavPosllhG(const SENSOR_MSG_GPSDATA_DAT *pst_data) { // LCOV_EXCL_START 8: dead code + AGL_ASSERT_NOT_TESTED(); // LCOV_EXCL_LINE 200: test assert + u_int8 uc_ret; + VEHICLESENS_DATA_MASTER_GPS_UBLOX_FORMAT *pst_master; + + pst_master = &gstNavPosllh_g; + + /** Compare data master and received data */ + uc_ret = VehicleSensmemcmp(pst_master->uc_data, pst_data->uc_data, pst_data->us_size); + + /** Received data is set in the data master. */ + pst_master->ul_did = pst_data->ul_did; + pst_master->us_size = pst_data->us_size; + pst_master->uc_rcvflag = VEHICLE_RCVFLAG_ON; + pst_master->uc_sensor_cnt = pst_data->uc_sns_cnt; + pst_master->uc_gpscnt_flag = pst_data->uc_gps_cnt_flag; + + memcpy(pst_master->uc_data, pst_data->uc_data, pst_data->us_size); + + return(uc_ret); +} /*************************************************************************** @brief Vehicle sensor function NAV-POSLLH GET @@ -87,18 +87,18 @@ void VehicleSensInitNavPosllhG(void) { @retval none @trace *****************************************************************************/ -//void VehicleSensGetNavPosllhG(SENSOR_MSG_GPSDATA_DAT *pst_data) { -// AGL_ASSERT_NOT_TESTED(); // LCOV_EXCL_LINE 200: test assert -// const VEHICLESENS_DATA_MASTER_GPS_UBLOX_FORMAT *pst_master; -// -// pst_master = &gstNavPosllh_g; -// -// /** Store the data master in the specified destination. */ -// pst_data->ul_did = pst_master->ul_did; -// pst_data->us_size = pst_master->us_size; -// pst_data->uc_rcv_flag = pst_master->uc_rcvflag; -// pst_data->uc_sns_cnt = pst_master->uc_sensor_cnt; -// pst_data->uc_gps_cnt_flag = pst_master->uc_gpscnt_flag; -// memcpy(pst_data->uc_data, pst_master->uc_data, pst_master->us_size); -//} +void VehicleSensGetNavPosllhG(SENSOR_MSG_GPSDATA_DAT *pst_data) { + AGL_ASSERT_NOT_TESTED(); // LCOV_EXCL_LINE 200: test assert + const VEHICLESENS_DATA_MASTER_GPS_UBLOX_FORMAT *pst_master; + + pst_master = &gstNavPosllh_g; + + /** Store the data master in the specified destination. */ + pst_data->ul_did = pst_master->ul_did; + pst_data->us_size = pst_master->us_size; + pst_data->uc_rcv_flag = pst_master->uc_rcvflag; + pst_data->uc_sns_cnt = pst_master->uc_sensor_cnt; + pst_data->uc_gps_cnt_flag = pst_master->uc_gpscnt_flag; + memcpy(pst_data->uc_data, pst_master->uc_data, pst_master->us_size); +} // LCOV_EXCL_STOP diff --git a/positioning/server/src/Sensor/VehicleSens_Did_Nav_Status_g.cpp b/positioning/server/src/Sensor/VehicleSens_Did_Nav_Status_g.cpp index 8dd4401b..f03d48fd 100644 --- a/positioning/server/src/Sensor/VehicleSens_Did_Nav_Status_g.cpp +++ b/positioning/server/src/Sensor/VehicleSens_Did_Nav_Status_g.cpp @@ -1,5 +1,5 @@ /* - * @copyright Copyright (c) 2016-2019 TOYOTA MOTOR CORPORATION. + * @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. @@ -55,27 +55,27 @@ void VehicleSensInitNavStatusG(void) { @retval VEHICLESENS_NEQ : With data changes @trace *****************************************************************************/ -//u_int8 VehicleSensSetNavStatusG(const SENSOR_MSG_GPSDATA_DAT *pst_data) { // LCOV_EXCL_START 8: dead code -// AGL_ASSERT_NOT_TESTED(); // LCOV_EXCL_LINE 200: test assert -// u_int8 uc_ret; -// VEHICLESENS_DATA_MASTER_GPS_UBLOX_FORMAT *pst_master; -// -// pst_master = &gstNavStatus_g; -// -// /** Compare data master and received data */ -// uc_ret = VehicleSensmemcmp(pst_master->uc_data, pst_data->uc_data, pst_data->us_size); -// -// /** Received data is set in the data master. */ -// pst_master->ul_did = pst_data->ul_did; -// pst_master->us_size = pst_data->us_size; -// pst_master->uc_rcvflag = VEHICLE_RCVFLAG_ON; -// pst_master->uc_sensor_cnt = pst_data->uc_sns_cnt; -// pst_master->uc_gpscnt_flag = pst_data->uc_gps_cnt_flag; -// -// memcpy(pst_master->uc_data, pst_data->uc_data, pst_data->us_size); -// -// return(uc_ret); -//} +u_int8 VehicleSensSetNavStatusG(const SENSOR_MSG_GPSDATA_DAT *pst_data) { // LCOV_EXCL_START 8: dead code + AGL_ASSERT_NOT_TESTED(); // LCOV_EXCL_LINE 200: test assert + u_int8 uc_ret; + VEHICLESENS_DATA_MASTER_GPS_UBLOX_FORMAT *pst_master; + + pst_master = &gstNavStatus_g; + + /** Compare data master and received data */ + uc_ret = VehicleSensmemcmp(pst_master->uc_data, pst_data->uc_data, pst_data->us_size); + + /** Received data is set in the data master. */ + pst_master->ul_did = pst_data->ul_did; + pst_master->us_size = pst_data->us_size; + pst_master->uc_rcvflag = VEHICLE_RCVFLAG_ON; + pst_master->uc_sensor_cnt = pst_data->uc_sns_cnt; + pst_master->uc_gpscnt_flag = pst_data->uc_gps_cnt_flag; + + memcpy(pst_master->uc_data, pst_data->uc_data, pst_data->us_size); + + return(uc_ret); +} /*************************************************************************** @brief Vehicle sensor function NAV-STATUS GET @@ -87,18 +87,18 @@ void VehicleSensInitNavStatusG(void) { @retval none @trace *****************************************************************************/ -//void VehicleSensGetNavStatusG(SENSOR_MSG_GPSDATA_DAT *pst_data) { -// AGL_ASSERT_NOT_TESTED(); // LCOV_EXCL_LINE 200: test assert -// const VEHICLESENS_DATA_MASTER_GPS_UBLOX_FORMAT *pst_master; -// -// pst_master = &gstNavStatus_g; -// -// /** Store the data master in the specified destination. */ -// pst_data->ul_did = pst_master->ul_did; -// pst_data->us_size = pst_master->us_size; -// pst_data->uc_rcv_flag = pst_master->uc_rcvflag; -// pst_data->uc_sns_cnt = pst_master->uc_sensor_cnt; -// pst_data->uc_gps_cnt_flag = pst_master->uc_gpscnt_flag; -// memcpy(pst_data->uc_data, pst_master->uc_data, pst_master->us_size); -//} +void VehicleSensGetNavStatusG(SENSOR_MSG_GPSDATA_DAT *pst_data) { + AGL_ASSERT_NOT_TESTED(); // LCOV_EXCL_LINE 200: test assert + const VEHICLESENS_DATA_MASTER_GPS_UBLOX_FORMAT *pst_master; + + pst_master = &gstNavStatus_g; + + /** Store the data master in the specified destination. */ + pst_data->ul_did = pst_master->ul_did; + pst_data->us_size = pst_master->us_size; + pst_data->uc_rcv_flag = pst_master->uc_rcvflag; + pst_data->uc_sns_cnt = pst_master->uc_sensor_cnt; + pst_data->uc_gps_cnt_flag = pst_master->uc_gpscnt_flag; + memcpy(pst_data->uc_data, pst_master->uc_data, pst_master->us_size); +} // LCOV_EXCL_STOP diff --git a/positioning/server/src/Sensor/VehicleSens_Did_Nav_SvInfo_g.cpp b/positioning/server/src/Sensor/VehicleSens_Did_Nav_SvInfo_g.cpp index 2a425cb5..7211ce83 100644 --- a/positioning/server/src/Sensor/VehicleSens_Did_Nav_SvInfo_g.cpp +++ b/positioning/server/src/Sensor/VehicleSens_Did_Nav_SvInfo_g.cpp @@ -1,5 +1,5 @@ /* - * @copyright Copyright (c) 2016-2019 TOYOTA MOTOR CORPORATION. + * @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. @@ -59,27 +59,27 @@ void VehicleSensInitNavSvInfoG(void) { @retval VEHICLESENS_NEQ : With data changes @trace *****************************************************************************/ -//u_int8 VehicleSensSetNavSvInfoG(const SENSOR_MSG_GPSDATA_DAT *pst_data) { // LCOV_EXCL_START 8: dead code -// AGL_ASSERT_NOT_TESTED(); // LCOV_EXCL_LINE 200: test assert -// u_int8 uc_ret; -// VEHICLESENS_DATA_MASTER_GPS_UBLOX_FORMAT *pst_master; -// -// pst_master = &gstNavSvInfo_g; -// -// /** Compare data master and received data */ -// uc_ret = VehicleSensmemcmp(pst_master->uc_data, pst_data->uc_data, pst_data->us_size); -// -// /** Received data is set in the data master. */ -// pst_master->ul_did = pst_data->ul_did; -// pst_master->us_size = pst_data->us_size; -// pst_master->uc_rcvflag = VEHICLE_RCVFLAG_ON; -// pst_master->uc_sensor_cnt = pst_data->uc_sns_cnt; -// pst_master->uc_gpscnt_flag = pst_data->uc_gps_cnt_flag; -// -// memcpy(pst_master->uc_data, pst_data->uc_data, pst_data->us_size); -// -// return(uc_ret); -//} +u_int8 VehicleSensSetNavSvInfoG(const SENSOR_MSG_GPSDATA_DAT *pst_data) { // LCOV_EXCL_START 8: dead code + AGL_ASSERT_NOT_TESTED(); // LCOV_EXCL_LINE 200: test assert + u_int8 uc_ret; + VEHICLESENS_DATA_MASTER_GPS_UBLOX_FORMAT *pst_master; + + pst_master = &gstNavSvInfo_g; + + /** Compare data master and received data */ + uc_ret = VehicleSensmemcmp(pst_master->uc_data, pst_data->uc_data, pst_data->us_size); + + /** Received data is set in the data master. */ + pst_master->ul_did = pst_data->ul_did; + pst_master->us_size = pst_data->us_size; + pst_master->uc_rcvflag = VEHICLE_RCVFLAG_ON; + pst_master->uc_sensor_cnt = pst_data->uc_sns_cnt; + pst_master->uc_gpscnt_flag = pst_data->uc_gps_cnt_flag; + + memcpy(pst_master->uc_data, pst_data->uc_data, pst_data->us_size); + + return(uc_ret); +} /*************************************************************************** @brief Vehicle sensor function NAV-SVINFO GET @@ -91,18 +91,18 @@ void VehicleSensInitNavSvInfoG(void) { @retval none @trace *****************************************************************************/ -//void VehicleSensGetNavSvInfoG(SENSOR_MSG_GPSDATA_DAT *pst_data) { -// AGL_ASSERT_NOT_TESTED(); // LCOV_EXCL_LINE 200: test assert -// const VEHICLESENS_DATA_MASTER_GPS_UBLOX_FORMAT *pst_master; -// -// pst_master = &gstNavSvInfo_g; -// -// /** Store the data master in the specified destination. */ -// pst_data->ul_did = pst_master->ul_did; -// pst_data->us_size = pst_master->us_size; -// pst_data->uc_rcv_flag = pst_master->uc_rcvflag; -// pst_data->uc_sns_cnt = pst_master->uc_sensor_cnt; -// pst_data->uc_gps_cnt_flag = pst_master->uc_gpscnt_flag; -// memcpy(pst_data->uc_data, pst_master->uc_data, pst_master->us_size); -//} +void VehicleSensGetNavSvInfoG(SENSOR_MSG_GPSDATA_DAT *pst_data) { + AGL_ASSERT_NOT_TESTED(); // LCOV_EXCL_LINE 200: test assert + const VEHICLESENS_DATA_MASTER_GPS_UBLOX_FORMAT *pst_master; + + pst_master = &gstNavSvInfo_g; + + /** Store the data master in the specified destination. */ + pst_data->ul_did = pst_master->ul_did; + pst_data->us_size = pst_master->us_size; + pst_data->uc_rcv_flag = pst_master->uc_rcvflag; + pst_data->uc_sns_cnt = pst_master->uc_sensor_cnt; + pst_data->uc_gps_cnt_flag = pst_master->uc_gpscnt_flag; + memcpy(pst_data->uc_data, pst_master->uc_data, pst_master->us_size); +} // LCOV_EXCL_STOP diff --git a/positioning/server/src/Sensor/VehicleSens_Did_Nav_TimeGps_g.cpp b/positioning/server/src/Sensor/VehicleSens_Did_Nav_TimeGps_g.cpp index 3573f076..1d959cd3 100644 --- a/positioning/server/src/Sensor/VehicleSens_Did_Nav_TimeGps_g.cpp +++ b/positioning/server/src/Sensor/VehicleSens_Did_Nav_TimeGps_g.cpp @@ -1,5 +1,5 @@ /* - * @copyright Copyright (c) 2016-2019 TOYOTA MOTOR CORPORATION. + * @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. @@ -55,27 +55,27 @@ void VehicleSensInitNavTimeGpsG(void) { @retval VEHICLESENS_NEQ : With data changes @trace *****************************************************************************/ -//u_int8 VehicleSensSetNavTimeGpsG(const SENSOR_MSG_GPSDATA_DAT *pst_data) { // LCOV_EXCL_START 8: dead code -// AGL_ASSERT_NOT_TESTED(); // LCOV_EXCL_LINE 200: test assert -// u_int8 uc_ret; -// VEHICLESENS_DATA_MASTER_GPS_UBLOX_FORMAT *pst_master; -// -// pst_master = &gstNavTimeGps_g; -// -// /** Compare data master and received data */ -// uc_ret = VehicleSensmemcmp(pst_master->uc_data, pst_data->uc_data, pst_data->us_size); -// -// /** Received data is set in the data master. */ -// pst_master->ul_did = pst_data->ul_did; -// pst_master->us_size = pst_data->us_size; -// pst_master->uc_rcvflag = VEHICLE_RCVFLAG_ON; -// pst_master->uc_sensor_cnt = pst_data->uc_sns_cnt; -// pst_master->uc_gpscnt_flag = pst_data->uc_gps_cnt_flag; -// -// memcpy(pst_master->uc_data, pst_data->uc_data, pst_data->us_size); -// -// return(uc_ret); -//} +u_int8 VehicleSensSetNavTimeGpsG(const SENSOR_MSG_GPSDATA_DAT *pst_data) { // LCOV_EXCL_START 8: dead code + AGL_ASSERT_NOT_TESTED(); // LCOV_EXCL_LINE 200: test assert + u_int8 uc_ret; + VEHICLESENS_DATA_MASTER_GPS_UBLOX_FORMAT *pst_master; + + pst_master = &gstNavTimeGps_g; + + /** Compare data master and received data */ + uc_ret = VehicleSensmemcmp(pst_master->uc_data, pst_data->uc_data, pst_data->us_size); + + /** Received data is set in the data master. */ + pst_master->ul_did = pst_data->ul_did; + pst_master->us_size = pst_data->us_size; + pst_master->uc_rcvflag = VEHICLE_RCVFLAG_ON; + pst_master->uc_sensor_cnt = pst_data->uc_sns_cnt; + pst_master->uc_gpscnt_flag = pst_data->uc_gps_cnt_flag; + + memcpy(pst_master->uc_data, pst_data->uc_data, pst_data->us_size); + + return(uc_ret); +} /*************************************************************************** @brief Vehicle sensor function NAV-TIMEGPS GET @@ -87,18 +87,18 @@ void VehicleSensInitNavTimeGpsG(void) { @retval none @trace *****************************************************************************/ -//void VehicleSensGetNavTimeGpsG(SENSOR_MSG_GPSDATA_DAT *pst_data) { -// AGL_ASSERT_NOT_TESTED(); // LCOV_EXCL_LINE 200: test assert -// const VEHICLESENS_DATA_MASTER_GPS_UBLOX_FORMAT *pst_master; -// -// pst_master = &gstNavTimeGps_g; -// -// /** Store the data master in the specified destination. */ -// pst_data->ul_did = pst_master->ul_did; -// pst_data->us_size = pst_master->us_size; -// pst_data->uc_rcv_flag = pst_master->uc_rcvflag; -// pst_data->uc_sns_cnt = pst_master->uc_sensor_cnt; -// pst_data->uc_gps_cnt_flag = pst_master->uc_gpscnt_flag; -// memcpy(pst_data->uc_data, pst_master->uc_data, pst_master->us_size); -//} +void VehicleSensGetNavTimeGpsG(SENSOR_MSG_GPSDATA_DAT *pst_data) { + AGL_ASSERT_NOT_TESTED(); // LCOV_EXCL_LINE 200: test assert + const VEHICLESENS_DATA_MASTER_GPS_UBLOX_FORMAT *pst_master; + + pst_master = &gstNavTimeGps_g; + + /** Store the data master in the specified destination. */ + pst_data->ul_did = pst_master->ul_did; + pst_data->us_size = pst_master->us_size; + pst_data->uc_rcv_flag = pst_master->uc_rcvflag; + pst_data->uc_sns_cnt = pst_master->uc_sensor_cnt; + pst_data->uc_gps_cnt_flag = pst_master->uc_gpscnt_flag; + memcpy(pst_data->uc_data, pst_master->uc_data, pst_master->us_size); +} // LCOV_EXCL_STOP diff --git a/positioning/server/src/Sensor/VehicleSens_Did_Nav_TimeUtc_g.cpp b/positioning/server/src/Sensor/VehicleSens_Did_Nav_TimeUtc_g.cpp index 030e275b..83682574 100644 --- a/positioning/server/src/Sensor/VehicleSens_Did_Nav_TimeUtc_g.cpp +++ b/positioning/server/src/Sensor/VehicleSens_Did_Nav_TimeUtc_g.cpp @@ -1,5 +1,5 @@ /* - * @copyright Copyright (c) 2016-2019 TOYOTA MOTOR CORPORATION. + * @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. @@ -55,27 +55,27 @@ void VehicleSensInitNavTimeUtcG(void) { @retval VEHICLESENS_NEQ : With data changes @trace *****************************************************************************/ -//u_int8 VehicleSensSetNavTimeUtcG(const SENSOR_MSG_GPSDATA_DAT *pst_data) { // LCOV_EXCL_START 8: dead code -// AGL_ASSERT_NOT_TESTED(); // LCOV_EXCL_LINE 200: test assert -// u_int8 uc_ret; -// VEHICLESENS_DATA_MASTER_GPS_UBLOX_FORMAT *pst_master; -// -// pst_master = &gstNavTimeUtc_g; -// -// /** Compare data master and received data */ -// uc_ret = VehicleSensmemcmp(pst_master->uc_data, pst_data->uc_data, pst_data->us_size); -// -// /** Received data is set in the data master. */ -// pst_master->ul_did = pst_data->ul_did; -// pst_master->us_size = pst_data->us_size; -// pst_master->uc_rcvflag = VEHICLE_RCVFLAG_ON; -// pst_master->uc_sensor_cnt = pst_data->uc_sns_cnt; -// pst_master->uc_gpscnt_flag = pst_data->uc_gps_cnt_flag; -// -// memcpy(pst_master->uc_data, pst_data->uc_data, pst_data->us_size); -// -// return(uc_ret); -//} +u_int8 VehicleSensSetNavTimeUtcG(const SENSOR_MSG_GPSDATA_DAT *pst_data) { // LCOV_EXCL_START 8: dead code + AGL_ASSERT_NOT_TESTED(); // LCOV_EXCL_LINE 200: test assert + u_int8 uc_ret; + VEHICLESENS_DATA_MASTER_GPS_UBLOX_FORMAT *pst_master; + + pst_master = &gstNavTimeUtc_g; + + /** Compare data master and received data */ + uc_ret = VehicleSensmemcmp(pst_master->uc_data, pst_data->uc_data, pst_data->us_size); + + /** Received data is set in the data master. */ + pst_master->ul_did = pst_data->ul_did; + pst_master->us_size = pst_data->us_size; + pst_master->uc_rcvflag = VEHICLE_RCVFLAG_ON; + pst_master->uc_sensor_cnt = pst_data->uc_sns_cnt; + pst_master->uc_gpscnt_flag = pst_data->uc_gps_cnt_flag; + + memcpy(pst_master->uc_data, pst_data->uc_data, pst_data->us_size); + + return(uc_ret); +} /*************************************************************************** @brief Vehicle sensor function NAV-TIMEUTC GET @@ -87,18 +87,18 @@ void VehicleSensInitNavTimeUtcG(void) { @retval none @trace *****************************************************************************/ -//void VehicleSensGetNavTimeUtcG(SENSOR_MSG_GPSDATA_DAT *pst_data) { -// AGL_ASSERT_NOT_TESTED(); // LCOV_EXCL_LINE 200: test assert -// const VEHICLESENS_DATA_MASTER_GPS_UBLOX_FORMAT *pst_master; -// -// pst_master = &gstNavTimeUtc_g; -// -// /** Store the data master in the specified destination. */ -// pst_data->ul_did = pst_master->ul_did; -// pst_data->us_size = pst_master->us_size; -// pst_data->uc_rcv_flag = pst_master->uc_rcvflag; -// pst_data->uc_sns_cnt = pst_master->uc_sensor_cnt; -// pst_data->uc_gps_cnt_flag = pst_master->uc_gpscnt_flag; -// memcpy(pst_data->uc_data, pst_master->uc_data, pst_master->us_size); -//} +void VehicleSensGetNavTimeUtcG(SENSOR_MSG_GPSDATA_DAT *pst_data) { + AGL_ASSERT_NOT_TESTED(); // LCOV_EXCL_LINE 200: test assert + const VEHICLESENS_DATA_MASTER_GPS_UBLOX_FORMAT *pst_master; + + pst_master = &gstNavTimeUtc_g; + + /** Store the data master in the specified destination. */ + pst_data->ul_did = pst_master->ul_did; + pst_data->us_size = pst_master->us_size; + pst_data->uc_rcv_flag = pst_master->uc_rcvflag; + pst_data->uc_sns_cnt = pst_master->uc_sensor_cnt; + pst_data->uc_gps_cnt_flag = pst_master->uc_gpscnt_flag; + memcpy(pst_data->uc_data, pst_master->uc_data, pst_master->us_size); +} // LCOV_EXCL_STOP diff --git a/positioning/server/src/Sensor/VehicleSens_Did_Nav_Velned_g.cpp b/positioning/server/src/Sensor/VehicleSens_Did_Nav_Velned_g.cpp index 564981ae..ad757aa3 100644 --- a/positioning/server/src/Sensor/VehicleSens_Did_Nav_Velned_g.cpp +++ b/positioning/server/src/Sensor/VehicleSens_Did_Nav_Velned_g.cpp @@ -1,5 +1,5 @@ /* - * @copyright Copyright (c) 2016-2019 TOYOTA MOTOR CORPORATION. + * @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. @@ -55,27 +55,27 @@ void VehicleSensInitNavVelnedG(void) { @retval VEHICLESENS_NEQ : With data changes @trace *****************************************************************************/ -//u_int8 VehicleSensSetNavVelnedG(const SENSOR_MSG_GPSDATA_DAT *pst_data) { // LCOV_EXCL_START 8: dead code -// AGL_ASSERT_NOT_TESTED(); // LCOV_EXCL_LINE 200: test assert -// u_int8 uc_ret; -// VEHICLESENS_DATA_MASTER_GPS_UBLOX_FORMAT *pst_master; -// -// pst_master = &gstNavVelned_g; -// -// /** Compare data master and received data */ -// uc_ret = VehicleSensmemcmp(pst_master->uc_data, pst_data->uc_data, pst_data->us_size); -// -// /** Received data is set in the data master. */ -// pst_master->ul_did = pst_data->ul_did; -// pst_master->us_size = pst_data->us_size; -// pst_master->uc_rcvflag = VEHICLE_RCVFLAG_ON; -// pst_master->uc_sensor_cnt = pst_data->uc_sns_cnt; -// pst_master->uc_gpscnt_flag = pst_data->uc_gps_cnt_flag; -// -// memcpy(pst_master->uc_data, pst_data->uc_data, pst_data->us_size); -// -// return(uc_ret); -//} +u_int8 VehicleSensSetNavVelnedG(const SENSOR_MSG_GPSDATA_DAT *pst_data) { // LCOV_EXCL_START 8: dead code + AGL_ASSERT_NOT_TESTED(); // LCOV_EXCL_LINE 200: test assert + u_int8 uc_ret; + VEHICLESENS_DATA_MASTER_GPS_UBLOX_FORMAT *pst_master; + + pst_master = &gstNavVelned_g; + + /** Compare data master and received data */ + uc_ret = VehicleSensmemcmp(pst_master->uc_data, pst_data->uc_data, pst_data->us_size); + + /** Received data is set in the data master. */ + pst_master->ul_did = pst_data->ul_did; + pst_master->us_size = pst_data->us_size; + pst_master->uc_rcvflag = VEHICLE_RCVFLAG_ON; + pst_master->uc_sensor_cnt = pst_data->uc_sns_cnt; + pst_master->uc_gpscnt_flag = pst_data->uc_gps_cnt_flag; + + memcpy(pst_master->uc_data, pst_data->uc_data, pst_data->us_size); + + return(uc_ret); +} /*************************************************************************** @brief Vehicle sensor function NAV-VELNED GET @@ -87,18 +87,18 @@ void VehicleSensInitNavVelnedG(void) { @retval none @trace *****************************************************************************/ -//void VehicleSensGetNavVelnedG(SENSOR_MSG_GPSDATA_DAT *pst_data) { -// AGL_ASSERT_NOT_TESTED(); // LCOV_EXCL_LINE 200: test assert -// const VEHICLESENS_DATA_MASTER_GPS_UBLOX_FORMAT *pst_master; -// -// pst_master = &gstNavVelned_g; -// -// /** Store the data master in the specified destination. */ -// pst_data->ul_did = pst_master->ul_did; -// pst_data->us_size = pst_master->us_size; -// pst_data->uc_rcv_flag = pst_master->uc_rcvflag; -// pst_data->uc_sns_cnt = pst_master->uc_sensor_cnt; -// pst_data->uc_gps_cnt_flag = pst_master->uc_gpscnt_flag; -// memcpy(pst_data->uc_data, pst_master->uc_data, pst_master->us_size); -//} +void VehicleSensGetNavVelnedG(SENSOR_MSG_GPSDATA_DAT *pst_data) { + AGL_ASSERT_NOT_TESTED(); // LCOV_EXCL_LINE 200: test assert + const VEHICLESENS_DATA_MASTER_GPS_UBLOX_FORMAT *pst_master; + + pst_master = &gstNavVelned_g; + + /** Store the data master in the specified destination. */ + pst_data->ul_did = pst_master->ul_did; + pst_data->us_size = pst_master->us_size; + pst_data->uc_rcv_flag = pst_master->uc_rcvflag; + pst_data->uc_sns_cnt = pst_master->uc_sensor_cnt; + pst_data->uc_gps_cnt_flag = pst_master->uc_gpscnt_flag; + memcpy(pst_data->uc_data, pst_master->uc_data, pst_master->us_size); +} // LCOV_EXCL_STOP diff --git a/positioning/server/src/Sensor/VehicleSens_Did_NaviinfoDiagGPS_g.cpp b/positioning/server/src/Sensor/VehicleSens_Did_NaviinfoDiagGPS_g.cpp index a8117758..7335ce1d 100644 --- a/positioning/server/src/Sensor/VehicleSens_Did_NaviinfoDiagGPS_g.cpp +++ b/positioning/server/src/Sensor/VehicleSens_Did_NaviinfoDiagGPS_g.cpp @@ -1,5 +1,5 @@ /* - * @copyright Copyright (c) 2016-2019 TOYOTA MOTOR CORPORATION. + * @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. @@ -41,7 +41,7 @@ void VehicleSensInitNaviinfoDiagGPSg(void) { /** Data ID setting */ gstNaviinfoDiagGPS_g.ul_did = VEHICLE_DID_NAVIINFO_DIAG_GPS; /** Data size setting */ -// gstNaviinfoDiagGPS_g.us_size = sizeof(NAVIINFO_DIAG_GPS); + gstNaviinfoDiagGPS_g.us_size = sizeof(NAVIINFO_DIAG_GPS); } /**************************************************************************** @@ -54,23 +54,23 @@ void VehicleSensInitNaviinfoDiagGPSg(void) { @retval VEHICLESENS_EQ : No data change @retval VEHICLESENS_NEQ : Data change *******************************************************************************/ -//u_int8 VehicleSensSetNaviinfoDiagGPSg(const NAVIINFO_DIAG_GPS *pst_diag_data) { -// u_int8 uc_ret; -// VEHICLESENS_DATA_MASTER_GPS_FORMAT *pst_master; -// -// pst_master = &gstNaviinfoDiagGPS_g; -// -// /** With the contents of the current data master,Compare received data */ -// uc_ret = VehicleSensmemcmp(pst_master->uc_data, pst_diag_data, sizeof(NAVIINFO_DIAG_GPS)); -// -// /** Received data is set in the data master. */ -// pst_master->ul_did = VEHICLE_DID_NAVIINFO_DIAG_GPS; -// pst_master->us_size = sizeof(NAVIINFO_DIAG_GPS); -// pst_master->uc_rcvflag = VEHICLE_RCVFLAG_ON; -// memcpy(pst_master->uc_data, pst_diag_data, sizeof(NAVIINFO_DIAG_GPS)); -// -// return(uc_ret); -//} +u_int8 VehicleSensSetNaviinfoDiagGPSg(const NAVIINFO_DIAG_GPS *pst_diag_data) { + u_int8 uc_ret; + VEHICLESENS_DATA_MASTER_GPS_FORMAT *pst_master; + + pst_master = &gstNaviinfoDiagGPS_g; + + /** With the contents of the current data master,Compare received data */ + uc_ret = VehicleSensmemcmp(pst_master->uc_data, pst_diag_data, sizeof(NAVIINFO_DIAG_GPS)); + + /** Received data is set in the data master. */ + pst_master->ul_did = VEHICLE_DID_NAVIINFO_DIAG_GPS; + pst_master->us_size = sizeof(NAVIINFO_DIAG_GPS); + pst_master->uc_rcvflag = VEHICLE_RCVFLAG_ON; + memcpy(pst_master->uc_data, pst_diag_data, sizeof(NAVIINFO_DIAG_GPS)); + + return(uc_ret); +} /**************************************************************************** @brief VehicleSensGetNaviinfoDiagGPSg
@@ -81,14 +81,14 @@ void VehicleSensInitNaviinfoDiagGPSg(void) { @return none @retval none *******************************************************************************/ -//void VehicleSensGetNaviinfoDiagGPSg(SENSOR_MSG_GPSDATA_DAT *pst_data) { -// const VEHICLESENS_DATA_MASTER_GPS_FORMAT *pst_master; -// -// pst_master = reinterpret_cast(&gstNaviinfoDiagGPS_g); -// -// /* Store the data master in the specified destination. */ -// pst_data->ul_did = pst_master->ul_did; -// pst_data->us_size = pst_master->us_size; -// pst_data->uc_rcv_flag = pst_master->uc_rcvflag; -// memcpy(pst_data->uc_data, pst_master->uc_data, pst_master->us_size); /* Ignore->MISRA-C++:2008 Rule 5-0-5 */ -//} +void VehicleSensGetNaviinfoDiagGPSg(SENSOR_MSG_GPSDATA_DAT *pst_data) { + const VEHICLESENS_DATA_MASTER_GPS_FORMAT *pst_master; + + pst_master = reinterpret_cast(&gstNaviinfoDiagGPS_g); + + /* Store the data master in the specified destination. */ + pst_data->ul_did = pst_master->ul_did; + pst_data->us_size = pst_master->us_size; + pst_data->uc_rcv_flag = pst_master->uc_rcvflag; + memcpy(pst_data->uc_data, pst_master->uc_data, pst_master->us_size); /* Ignore->MISRA-C++:2008 Rule 5-0-5 */ +} diff --git a/positioning/server/src/Sensor/VehicleSens_Did_PulseTime.cpp b/positioning/server/src/Sensor/VehicleSens_Did_PulseTime.cpp index b6a834a7..cb80e6f9 100644 --- a/positioning/server/src/Sensor/VehicleSens_Did_PulseTime.cpp +++ b/positioning/server/src/Sensor/VehicleSens_Did_PulseTime.cpp @@ -1,5 +1,5 @@ /* - * @copyright Copyright (c) 2016-2019 TOYOTA MOTOR CORPORATION. + * @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. @@ -65,25 +65,25 @@ void VehicleSensGetPulseTime(VEHICLESENS_DATA_MASTER *pst_data, u_int8 uc_get_me * @param[in] *pst_data: Pointer to the data master acquisition destination * @param[in] uc_get_method: Acquisition method(Direct Line or CAN) */ -//void VehicleSensGetPulseTimeExt(VEHICLESENS_DATA_MASTER_EXT *pst_data, u_int8 uc_get_method) { -// switch (uc_get_method) { // LCOV_EXCL_BR_LINE 6:VEHICLESENS_GETMETHOD_CAN cannot to pass in -// case VEHICLESENS_GETMETHOD_CAN: -// { -// /* When acquiring from CAN data */ -// AGL_ASSERT_NOT_TESTED(); // LCOV_EXCL_LINE 200: test assert -// break; // LCOV_EXCL_LINE 8: dead code -// } -// -// case VEHICLESENS_GETMETHOD_LINE: -// { -// /* To acquire from LineSensor */ -// VehicleSensGetPulseTimeExtl(pst_data); -// break; -// } -// default: -// break; -// } -//} +void VehicleSensGetPulseTimeExt(VEHICLESENS_DATA_MASTER_EXT *pst_data, u_int8 uc_get_method) { + switch (uc_get_method) { // LCOV_EXCL_BR_LINE 6:VEHICLESENS_GETMETHOD_CAN cannot to pass in + case VEHICLESENS_GETMETHOD_CAN: + { + /* When acquiring from CAN data */ + AGL_ASSERT_NOT_TESTED(); // LCOV_EXCL_LINE 200: test assert + break; // LCOV_EXCL_LINE 8: dead code + } + + case VEHICLESENS_GETMETHOD_LINE: + { + /* To acquire from LineSensor */ + VehicleSensGetPulseTimeExtl(pst_data); + break; + } + default: + break; + } +} /** * @brief @@ -95,21 +95,21 @@ void VehicleSensGetPulseTime(VEHICLESENS_DATA_MASTER *pst_data, u_int8 uc_get_me * @param[in] uc_get_method: Acquisition method(Direct Line or CAN) */ -//void VehicleSensGetPulseTimeFst(VEHICLESENS_DATA_MASTER_FST *pst_data, u_int8 uc_get_method) { // LCOV_EXCL_START 8: dead code // NOLINT(whitespace/line_length) -// AGL_ASSERT_NOT_TESTED(); // LCOV_EXCL_LINE 200: test assert -// switch (uc_get_method) { -// case VEHICLESENS_GETMETHOD_CAN: -// { -// /* When acquiring from CAN data */ -// break; -// } -// case VEHICLESENS_GETMETHOD_LINE: -// { -// /* To acquire from LineSensor */ -// break; -// } -// default: -// break; -// } -//} +void VehicleSensGetPulseTimeFst(VEHICLESENS_DATA_MASTER_FST *pst_data, u_int8 uc_get_method) { // LCOV_EXCL_START 8: dead code // NOLINT(whitespace/line_length) + AGL_ASSERT_NOT_TESTED(); // LCOV_EXCL_LINE 200: test assert + switch (uc_get_method) { + case VEHICLESENS_GETMETHOD_CAN: + { + /* When acquiring from CAN data */ + break; + } + case VEHICLESENS_GETMETHOD_LINE: + { + /* To acquire from LineSensor */ + break; + } + default: + break; + } +} // LCOV_EXCL_STOP diff --git a/positioning/server/src/Sensor/VehicleSens_Did_PulseTimeExt_l.cpp b/positioning/server/src/Sensor/VehicleSens_Did_PulseTimeExt_l.cpp index 8824c819..04e66b54 100644 --- a/positioning/server/src/Sensor/VehicleSens_Did_PulseTimeExt_l.cpp +++ b/positioning/server/src/Sensor/VehicleSens_Did_PulseTimeExt_l.cpp @@ -1,5 +1,5 @@ /* - * @copyright Copyright (c) 2016-2019 TOYOTA MOTOR CORPORATION. + * @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. @@ -27,7 +27,7 @@ /*---------------------------------------------------------------------------------* * Global Value * *---------------------------------------------------------------------------------*/ -//static VEHICLESENS_DATA_MASTER_EXT g_st_pulsetime_ext_l; // NOLINT(readability/nolint) +static VEHICLESENS_DATA_MASTER_EXT g_st_pulsetime_ext_l; // NOLINT(readability/nolint) /** * @brief @@ -36,10 +36,10 @@ * Inter-pulse time data master initialization processing */ void VehicleSensInitPulseTimeExtl(void) { -// (void)memset(reinterpret_cast(&g_st_pulsetime_ext_l), 0, sizeof(VEHICLESENS_DATA_MASTER_EXT)); -// g_st_pulsetime_ext_l.ul_did = POSHAL_DID_PULSE_TIME; -// g_st_pulsetime_ext_l.us_size = VEHICLE_DSIZE_PULSE_TIME_EXT_INIT; -// g_st_pulsetime_ext_l.uc_rcvflag = VEHICLE_RCVFLAG_OFF; + (void)memset(reinterpret_cast(&g_st_pulsetime_ext_l), 0, sizeof(VEHICLESENS_DATA_MASTER_EXT)); + g_st_pulsetime_ext_l.ul_did = POSHAL_DID_PULSE_TIME; + g_st_pulsetime_ext_l.us_size = VEHICLE_DSIZE_PULSE_TIME_EXT_INIT; + g_st_pulsetime_ext_l.uc_rcvflag = VEHICLE_RCVFLAG_OFF; } /** @@ -53,45 +53,45 @@ void VehicleSensInitPulseTimeExtl(void) { * @return VEHICLESENS_EQ No data change
* VEHICLESENS_NEQ Data change */ -//void VehicleSensSetPulseTimeExtlG(const LSDRV_LSDATA_G *pst_data) { -// VEHICLESENS_DATA_MASTER_EXT *pst_master; -// u_int16 us_size = 0; -// u_int16 us_start = 0; -// u_int16 us_cnt = 0; -// -// pst_master = &g_st_pulsetime_ext_l; -// /* 4byte * (Number of data items + 32 data items) */ -// us_size = static_cast(sizeof(u_int32) * (1 + VEHICLE_SNS_INFO_PULSE_NUM)); -// -// /* Retrieve the location where the received one is stored */ -// us_start = gstPkgTempExt.start_point[7]; -// -// /* Stored in data master(Order of reception)*/ -// if (us_start >= VEHICLE_DKEEP_MAX) { -// /* Store the latest one at position 0 */ -// us_start = VEHICLE_DATA_POS_00; -// /* If you are discarding old data,,Set a flag */ -// gstPkgTempExt.data_break = VEHICLE_SNS_BREAK; -// } -// pst_master->ul_did = pst_data->ul_did; -// pst_master->uc_rcvflag = VEHICLE_RCVFLAG_ON; -// for (us_cnt = 0; us_cnt < us_size; us_cnt++) { -// pst_master->uc_data[us_start * us_size + us_cnt] = (u_int8)(pst_data->uc_data[us_cnt]); -// } -// -// /* Update next storage start position and latest data storage position */ -// us_start++; -// gstPkgTempExt.start_point[7] = us_start; -// -// /* Update data master size */ -// if (gstPkgTempExt.data_break == VEHICLE_SNS_BREAK) { -// /* Make the size of all extended data masters */ -// pst_master->us_size = VEHICLE_DSIZE_PULSE_TIME_EXT; -// } else { -// /* Add the size of one received data item */ -// pst_master->us_size = static_cast(pst_master->us_size + us_size); -// } -//} +void VehicleSensSetPulseTimeExtlG(const LSDRV_LSDATA_G *pst_data) { + VEHICLESENS_DATA_MASTER_EXT *pst_master; + u_int16 us_size = 0; + u_int16 us_start = 0; + u_int16 us_cnt = 0; + + pst_master = &g_st_pulsetime_ext_l; + /* 4byte * (Number of data items + 32 data items) */ + us_size = static_cast(sizeof(u_int32) * (1 + VEHICLE_SNS_INFO_PULSE_NUM)); + + /* Retrieve the location where the received one is stored */ + us_start = gstPkgTempExt.start_point[PulseTime]; + + /* Stored in data master(Order of reception)*/ + if (us_start >= VEHICLE_DKEEP_MAX) { + /* Store the latest one at position 0 */ + us_start = VEHICLE_DATA_POS_00; + /* If you are discarding old data,,Set a flag */ + gstPkgTempExt.data_break = VEHICLE_SNS_BREAK; + } + pst_master->ul_did = pst_data->ul_did; + pst_master->uc_rcvflag = VEHICLE_RCVFLAG_ON; + for (us_cnt = 0; us_cnt < us_size; us_cnt++) { + pst_master->uc_data[us_start * us_size + us_cnt] = (u_int8)(pst_data->uc_data[us_cnt]); + } + + /* Update next storage start position and latest data storage position */ + us_start++; + gstPkgTempExt.start_point[PulseTime] = us_start; + + /* Update data master size */ + if (gstPkgTempExt.data_break == VEHICLE_SNS_BREAK) { + /* Make the size of all extended data masters */ + pst_master->us_size = VEHICLE_DSIZE_PULSE_TIME_EXT; + } else { + /* Add the size of one received data item */ + pst_master->us_size = static_cast(pst_master->us_size + us_size); + } +} /** * @brief @@ -101,47 +101,43 @@ void VehicleSensInitPulseTimeExtl(void) { * * @param[in] Pointer to the data master acquisition destination */ -//void VehicleSensGetPulseTimeExtl(VEHICLESENS_DATA_MASTER_EXT *pst_data) { -// const VEHICLESENS_DATA_MASTER_EXT *pst_master; -// u_int16 us_size = 0; -// u_int16 us_data_cnt = 0; -// u_int16 us_cnt = 0; -// u_int16 us_loop_cnt = 0; -// -// /* Store the data master in the specified destination. */ -// pst_master = &g_st_pulsetime_ext_l; -// pst_data->ul_did = pst_master->ul_did; -// pst_data->us_size = pst_master->us_size; -// pst_data->uc_rcvflag = pst_master->uc_rcvflag; -// -// /* Size of one data item: 4byte * (Number of data items + 32 data items) */ -// us_size = static_cast(sizeof(u_int32) * (1 + VEHICLE_SNS_INFO_PULSE_NUM)); -// -// /* Checking whether the number of stored entries is looped */ -// if (gstPkgTempExt.data_break == VEHICLE_SNS_BREAK) { -// us_data_cnt = VEHICLE_DKEEP_MAX; -// } else { -// us_data_cnt = gstPkgTempExt.start_point[7]; -// } -// -// /* Acquire data from the newest data master */ -// us_loop_cnt = 0; -// for (us_cnt = 0; us_cnt < us_data_cnt; us_cnt++) { -// if (gstPkgTempExt.data_break == VEHICLE_SNS_BREAK) { -// /* Get information after loop */ -// if (gstPkgTempExt.start_point[7] > us_cnt) { -// memcpy(&pst_data->uc_data[us_cnt * us_size], -// &pst_master->uc_data[(gstPkgTempExt.start_point[7] - us_cnt - 1) * us_size], us_size); -// us_loop_cnt++; -// } else { -// memcpy(&pst_data->uc_data[us_cnt * us_size], -// &pst_master->uc_data[(us_data_cnt - us_cnt - 1 + us_loop_cnt) * us_size], us_size); -// } -// } else { -// if ((u_int32)(us_data_cnt - us_cnt) <= (u_int32)VEHICLE_DKEEP_MAX) { // LCOV_EXCL_BR_LINE 6: always true -// memcpy(&pst_data->uc_data[us_cnt * us_size], -// &pst_master->uc_data[(us_data_cnt - us_cnt - 1) * us_size], us_size); -// } -// } -// } -//} +void VehicleSensGetPulseTimeExtl(VEHICLESENS_DATA_MASTER_EXT *pst_data) { + const VEHICLESENS_DATA_MASTER_EXT *pst_master; + u_int16 us_size = 0; + uint16_t us_data_cnt = 0; // Number of data contained + uint16_t us_loop_cnt = 0; // 64 over index + + /* Store the data master in the specified destination. */ + pst_master = &g_st_pulsetime_ext_l; + pst_data->ul_did = pst_master->ul_did; + pst_data->us_size = pst_master->us_size; + pst_data->uc_rcvflag = pst_master->uc_rcvflag; + + /* Size of one data item: 4byte * (Number of data items + 32 data items) */ + us_size = static_cast(sizeof(u_int32) * (1 + VEHICLE_SNS_INFO_PULSE_NUM)); + + /* Checking whether the number of stored entries is looped */ + if (gstPkgTempExt.data_break == VEHICLE_SNS_BREAK) { + us_data_cnt = VEHICLE_DKEEP_MAX; + } else { + us_data_cnt = gstPkgTempExt.start_point[PulseTime]; + } + + /* Acquire data from the oldest data master */ + for (uint16_t us_cnt = 0; us_cnt < us_data_cnt; us_cnt++) { + if (gstPkgTempExt.data_break == VEHICLE_SNS_BREAK) { + /* Get information before loop */ + if (gstPkgTempExt.start_point[PulseTime] + us_cnt < VEHICLE_DKEEP_MAX) { + memcpy(&pst_data->uc_data[us_cnt * us_size], + &pst_master->uc_data[(gstPkgTempExt.start_point[PulseTime] + us_cnt) * us_size], us_size); + } else { + memcpy(&pst_data->uc_data[us_cnt * us_size], + &pst_master->uc_data[us_loop_cnt * us_size], us_size); + us_loop_cnt++; + } + } else { + memcpy(&pst_data->uc_data[us_cnt * us_size], + &pst_master->uc_data[us_cnt * us_size], us_size); + } + } +} diff --git a/positioning/server/src/Sensor/VehicleSens_Did_PulseTime_l.cpp b/positioning/server/src/Sensor/VehicleSens_Did_PulseTime_l.cpp index 4532cc35..527bb729 100644 --- a/positioning/server/src/Sensor/VehicleSens_Did_PulseTime_l.cpp +++ b/positioning/server/src/Sensor/VehicleSens_Did_PulseTime_l.cpp @@ -1,5 +1,5 @@ /* - * @copyright Copyright (c) 2016-2019 TOYOTA MOTOR CORPORATION. + * @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. @@ -37,7 +37,7 @@ static VEHICLESENS_DATA_MASTER gstPulseTime_l; // NOLINT(readability/nolint) */ void VehicleSensInitPulseTimel(void) { memset(&gstPulseTime_l, 0x00, sizeof(VEHICLESENS_DATA_MASTER)); -// gstPulseTime_l.ul_did = POSHAL_DID_PULSE_TIME; + gstPulseTime_l.ul_did = POSHAL_DID_PULSE_TIME; gstPulseTime_l.us_size = VEHICLE_DSIZE_PULSE_TIME; gstPulseTime_l.uc_rcvflag = VEHICLE_RCVFLAG_OFF; } @@ -53,24 +53,24 @@ void VehicleSensInitPulseTimel(void) { * @return VEHICLESENS_EQ No data change
* VEHICLESENS_NEQ Data change */ -//u_int8 VehicleSensSetPulseTimelG(const LSDRV_LSDATA_G *pst_data) { -// u_int8 uc_ret; -// VEHICLESENS_DATA_MASTER *pst_master; -// -// pst_master = &gstPulseTime_l; -// -// /* Compare data master and received data */ -// uc_ret = VehicleSensmemcmp(pst_master->uc_data, pst_data->uc_data, pst_data->uc_size); -// -// /* Received data is set in the data master. */ -// pst_master->ul_did = pst_data->ul_did; -// pst_master->us_size = pst_data->uc_size; -// pst_master->uc_rcvflag = VEHICLE_RCVFLAG_ON; -// (void)memcpy(reinterpret_cast(pst_master->uc_data), -// (const void *)(pst_data->uc_data), (size_t)(pst_data->uc_size)); -// -// return(uc_ret); -//} +u_int8 VehicleSensSetPulseTimelG(const LSDRV_LSDATA_G *pst_data) { + u_int8 uc_ret; + VEHICLESENS_DATA_MASTER *pst_master; + + pst_master = &gstPulseTime_l; + + /* Compare data master and received data */ + uc_ret = VehicleSensmemcmp(pst_master->uc_data, pst_data->uc_data, pst_data->uc_size); + + /* Received data is set in the data master. */ + pst_master->ul_did = pst_data->ul_did; + pst_master->us_size = pst_data->uc_size; + pst_master->uc_rcvflag = VEHICLE_RCVFLAG_ON; + (void)memcpy(reinterpret_cast(pst_master->uc_data), + (const void *)(pst_data->uc_data), (size_t)(pst_data->uc_size)); + + return(uc_ret); +} /** * @brief diff --git a/positioning/server/src/Sensor/VehicleSens_Did_Rev.cpp b/positioning/server/src/Sensor/VehicleSens_Did_Rev.cpp index 37a71c5a..08c5ec74 100644 --- a/positioning/server/src/Sensor/VehicleSens_Did_Rev.cpp +++ b/positioning/server/src/Sensor/VehicleSens_Did_Rev.cpp @@ -1,5 +1,5 @@ /* - * @copyright Copyright (c) 2016-2019 TOYOTA MOTOR CORPORATION. + * @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. @@ -98,21 +98,21 @@ void VehicleSensGetRevFst(VEHICLESENS_DATA_MASTER_FST *pst_data, u_int8 uc_get_m * * @return none */ -//void VehicleSensGetRevExt(VEHICLESENS_DATA_MASTER_EXT *pst_data, u_int8 uc_get_method) { -// switch (uc_get_method) { // LCOV_EXCL_BR_LINE 6:VEHICLESENS_GETMETHOD_CAN cannot to pass in -// case VEHICLESENS_GETMETHOD_CAN: -// { -// /* When acquiring from CAN data */ -// AGL_ASSERT_NOT_TESTED(); // LCOV_EXCL_LINE 200: test assert -// break; // LCOV_EXCL_LINE 8: dead code -// } -// case VEHICLESENS_GETMETHOD_LINE: -// { -// /* To acquire from LineSensor */ -// VehicleSensGetRevExtl(pst_data); -// break; -// } -// default: /* Ignore->MISRA-C++:2008 Rule 6-3-1, 6-4-1 */ -// break; -// } -//} +void VehicleSensGetRevExt(VEHICLESENS_DATA_MASTER_EXT *pst_data, u_int8 uc_get_method) { + switch (uc_get_method) { // LCOV_EXCL_BR_LINE 6:VEHICLESENS_GETMETHOD_CAN cannot to pass in + case VEHICLESENS_GETMETHOD_CAN: + { + /* When acquiring from CAN data */ + AGL_ASSERT_NOT_TESTED(); // LCOV_EXCL_LINE 200: test assert + break; // LCOV_EXCL_LINE 8: dead code + } + case VEHICLESENS_GETMETHOD_LINE: + { + /* To acquire from LineSensor */ + VehicleSensGetRevExtl(pst_data); + break; + } + default: /* Ignore->MISRA-C++:2008 Rule 6-3-1, 6-4-1 */ + break; + } +} diff --git a/positioning/server/src/Sensor/VehicleSens_Did_RevExt_l.cpp b/positioning/server/src/Sensor/VehicleSens_Did_RevExt_l.cpp index 77884cc3..0f4e5e62 100644 --- a/positioning/server/src/Sensor/VehicleSens_Did_RevExt_l.cpp +++ b/positioning/server/src/Sensor/VehicleSens_Did_RevExt_l.cpp @@ -1,5 +1,5 @@ /* - * @copyright Copyright (c) 2016-2019 TOYOTA MOTOR CORPORATION. + * @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. @@ -27,7 +27,7 @@ /*************************************************/ /* Global variable */ /*************************************************/ -//static VEHICLESENS_DATA_MASTER_EXT g_st_revext_l; // NOLINT(readability/nolint) +static VEHICLESENS_DATA_MASTER_EXT g_st_revext_l; // NOLINT(readability/nolint) /** * @brief @@ -38,14 +38,14 @@ * @param[in] none */ void VehicleSensInitRevExtl(void) { -// u_int16 *pus; -// -// memset(&g_st_revext_l, 0x00, sizeof(VEHICLESENS_DATA_MASTER_EXT)); -// g_st_revext_l.ul_did = POSHAL_DID_REV; -// g_st_revext_l.us_size = VEHICLE_DSIZE_REV_EXT_INIT; -// g_st_revext_l.uc_rcvflag = VEHICLE_RCVFLAG_OFF; -// pus = reinterpret_cast(g_st_revext_l.uc_data); -// memset(reinterpret_cast(pus), VEHICLE_DINIT_SNS_COUNTER, VEHICLE_DSIZE_REV_EXT); + u_int16 *pus; + + memset(&g_st_revext_l, 0x00, sizeof(VEHICLESENS_DATA_MASTER_EXT)); + g_st_revext_l.ul_did = POSHAL_DID_REV; + g_st_revext_l.us_size = VEHICLE_DSIZE_REV_EXT_INIT; + g_st_revext_l.uc_rcvflag = VEHICLE_RCVFLAG_OFF; + pus = reinterpret_cast(g_st_revext_l.uc_data); + memset(reinterpret_cast(pus), VEHICLE_DINIT_SNS_COUNTER, VEHICLE_DSIZE_REV_EXT); } /** @@ -56,39 +56,39 @@ void VehicleSensInitRevExtl(void) { * * @param[in] *pst_data : Pointer to the message data received by the direct line */ -//void VehicleSensSetRevExtlG(const LSDRV_LSDATA_G *pst_data) { -// VEHICLESENS_DATA_MASTER_EXT *pst_master; -// u_int16 us_start = 0; -// -// pst_master = &g_st_revext_l; -// -// /* Retrieve the location where the received one is stored */ -// us_start = gstPkgTempExt.start_point[5]; -// -// /* Stored in data master(Order of reception)*/ -// if (us_start >= VEHICLE_DKEEP_MAX) { -// /* Store the latest one at position 0 */ -// us_start = VEHICLE_DATA_POS_00; -// /* If you are discarding old data,,Set a flag */ -// gstPkgTempExt.data_break = VEHICLE_SNS_BREAK; -// } -// pst_master->ul_did = pst_data->ul_did; -// pst_master->uc_rcvflag = VEHICLE_RCVFLAG_ON; -// pst_master->uc_data[us_start] = pst_data->uc_data[0]; -// -// /* Update next storage start position and latest data storage position */ -// us_start++; -// gstPkgTempExt.start_point[5] = us_start; -// -// /* Update data master size */ -// if (gstPkgTempExt.data_break == VEHICLE_SNS_BREAK) { -// /* Make the size of all extended data masters */ -// pst_master->us_size = VEHICLE_DSIZE_REV_EXT; -// } else { -// /* Add the size of one received data item */ -// pst_master->us_size = static_cast(pst_master->us_size + sizeof(u_int8)); -// } -//} +void VehicleSensSetRevExtlG(const LSDRV_LSDATA_G *pst_data) { + VEHICLESENS_DATA_MASTER_EXT *pst_master; + u_int16 us_start = 0; + + pst_master = &g_st_revext_l; + + /* Retrieve the location where the received one is stored */ + us_start = gstPkgTempExt.start_point[Rev]; + + /* Stored in data master(Order of reception)*/ + if (us_start >= VEHICLE_DKEEP_MAX) { + /* Store the latest one at position 0 */ + us_start = VEHICLE_DATA_POS_00; + /* If you are discarding old data,,Set a flag */ + gstPkgTempExt.data_break = VEHICLE_SNS_BREAK; + } + pst_master->ul_did = pst_data->ul_did; + pst_master->uc_rcvflag = VEHICLE_RCVFLAG_ON; + pst_master->uc_data[us_start] = pst_data->uc_data[0]; + + /* Update next storage start position and latest data storage position */ + us_start++; + gstPkgTempExt.start_point[Rev] = us_start; + + /* Update data master size */ + if (gstPkgTempExt.data_break == VEHICLE_SNS_BREAK) { + /* Make the size of all extended data masters */ + pst_master->us_size = VEHICLE_DSIZE_REV_EXT; + } else { + /* Add the size of one received data item */ + pst_master->us_size = static_cast(pst_master->us_size + sizeof(u_int8)); + } +} /** * @brief @@ -98,40 +98,37 @@ void VehicleSensInitRevExtl(void) { * * @param[in] *pst_data : Pointer to the data master acquisition destination */ -//void VehicleSensGetRevExtl(VEHICLESENS_DATA_MASTER_EXT *pst_data) { -// const VEHICLESENS_DATA_MASTER_EXT *pst_master; -// u_int16 us_data_cnt = 0; -// u_int16 us_cnt = 0; -// u_int16 us_loop_cnt = 0; -// -// /* Store the data master in the specified destination. */ -// pst_master = &g_st_revext_l; -// pst_data->ul_did = pst_master->ul_did; -// pst_data->us_size = pst_master->us_size; -// pst_data->uc_rcvflag = pst_master->uc_rcvflag; -// -// /* Checking whether the number of stored entries is looped */ -// if (gstPkgTempExt.data_break == VEHICLE_SNS_BREAK) { /* Ignore->MISRA-C++:2008 Rule 5-0-5 */ -// us_data_cnt = VEHICLE_DKEEP_MAX; -// } else { -// us_data_cnt = gstPkgTempExt.start_point[5]; -// } -// -// /* Acquire data from the newest data master */ -// for (us_cnt = 0; us_cnt < us_data_cnt; us_cnt++) { -// if (gstPkgTempExt.data_break == VEHICLE_SNS_BREAK) { -// /* Get information after loop */ -// if (gstPkgTempExt.start_point[5] > us_cnt) { -// pst_data->uc_data[us_cnt] = pst_master->uc_data[(gstPkgTempExt.start_point[5] - us_cnt - 1)]; -// us_loop_cnt++; -// } else { -// pst_data->uc_data[us_cnt] = pst_master->uc_data[(us_data_cnt - us_cnt - 1 + us_loop_cnt)]; -// } -// } else { -// if ((u_int32)(us_data_cnt - us_cnt) <= (u_int32)VEHICLE_DKEEP_MAX) { // LCOV_EXCL_BR_LINE 6: always true -// pst_data->uc_data[us_cnt] = pst_master->uc_data[(us_data_cnt - us_cnt - 1)]; -// } -// } -// } -//} +void VehicleSensGetRevExtl(VEHICLESENS_DATA_MASTER_EXT *pst_data) { + const VEHICLESENS_DATA_MASTER_EXT *pst_master; + uint16_t us_data_cnt = 0; // Number of data contained + uint16_t us_loop_cnt = 0; // 64 over index + + /* Store the data master in the specified destination. */ + pst_master = &g_st_revext_l; + pst_data->ul_did = pst_master->ul_did; + pst_data->us_size = pst_master->us_size; + pst_data->uc_rcvflag = pst_master->uc_rcvflag; + + /* Checking whether the number of stored entries is looped */ + if (gstPkgTempExt.data_break == VEHICLE_SNS_BREAK) { + us_data_cnt = VEHICLE_DKEEP_MAX; + } else { + us_data_cnt = gstPkgTempExt.start_point[Rev]; + } + + /* Acquire data from the newest data master */ + for (uint16_t us_cnt = 0; us_cnt < us_data_cnt; us_cnt++) { + if (gstPkgTempExt.data_break == VEHICLE_SNS_BREAK) { + /* Get information before loop */ + if (gstPkgTempExt.start_point[Rev] + us_cnt < VEHICLE_DKEEP_MAX) { + pst_data->uc_data[us_cnt] = pst_master->uc_data[(gstPkgTempExt.start_point[Rev] + us_cnt)]; + } else { + pst_data->uc_data[us_cnt] = pst_master->uc_data[us_loop_cnt]; + us_loop_cnt++; + } + } else { + pst_data->uc_data[us_cnt] = pst_master->uc_data[us_cnt]; + } + } +} diff --git a/positioning/server/src/Sensor/VehicleSens_Did_RevFst_l.cpp b/positioning/server/src/Sensor/VehicleSens_Did_RevFst_l.cpp index e9afb318..49d46546 100644 --- a/positioning/server/src/Sensor/VehicleSens_Did_RevFst_l.cpp +++ b/positioning/server/src/Sensor/VehicleSens_Did_RevFst_l.cpp @@ -1,5 +1,5 @@ /* - * @copyright Copyright (c) 2016-2019 TOYOTA MOTOR CORPORATION. + * @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. @@ -44,7 +44,7 @@ static VEHICLESENS_DATA_MASTER_FST gstRevFst_l; // NOLINT(readability/nolin ******************************************************************************/ void VehicleSensInitRevFstl(void) { (void)memset(reinterpret_cast(&gstRevFst_l), 0, sizeof (VEHICLESENS_DATA_MASTER_FST)); -// gstRevFst_l.ul_did = POSHAL_DID_REV_FST; + gstRevFst_l.ul_did = POSHAL_DID_REV_FST; gstRevFst_l.us_size = 0U; gstRevFst_l.uc_rcvflag = 0U; gstRevFst_l.partition_flg = 0; @@ -59,25 +59,25 @@ void VehicleSensInitRevFstl(void) { * RETURN : VEHICLESENS_EQ : No data change * VEHICLESENS_NEQ : Data change ******************************************************************************/ -//u_int8 VehicleSensSetRevFstl(const LSDRV_LSDATA_FST *pst_data) { // LCOV_EXCL_START 8 : dead code -// AGL_ASSERT_NOT_TESTED(); // LCOV_EXCL_LINE 200: test assert -// u_int8 uc_ret; -// VEHICLESENS_DATA_MASTER_FST *pst_master; -// -// pst_master = &gstRevFst_l; -// -// /* Compare data master and received data */ -// uc_ret = VehicleSensmemcmp(pst_master->uc_data, pst_data->uc_data, pst_data->uc_size); -// -// /* Received data is set in the data master. */ -// pst_master->ul_did = pst_data->ul_did; -// pst_master->us_size = pst_data->uc_size; -// pst_master->uc_rcvflag = VEHICLE_RCVFLAG_ON; -// (void)memcpy(reinterpret_cast(pst_master->uc_data), -// (const void *)(pst_data->uc_data), (size_t)(pst_data->uc_size)); -// -// return(uc_ret); -//} +u_int8 VehicleSensSetRevFstl(const LSDRV_LSDATA_FST *pst_data) { // LCOV_EXCL_START 8 : dead code + AGL_ASSERT_NOT_TESTED(); // LCOV_EXCL_LINE 200: test assert + u_int8 uc_ret; + VEHICLESENS_DATA_MASTER_FST *pst_master; + + pst_master = &gstRevFst_l; + + /* Compare data master and received data */ + uc_ret = VehicleSensmemcmp(pst_master->uc_data, pst_data->uc_data, pst_data->uc_size); + + /* Received data is set in the data master. */ + pst_master->ul_did = pst_data->ul_did; + pst_master->us_size = pst_data->uc_size; + pst_master->uc_rcvflag = VEHICLE_RCVFLAG_ON; + (void)memcpy(reinterpret_cast(pst_master->uc_data), + (const void *)(pst_data->uc_data), (size_t)(pst_data->uc_size)); + + return(uc_ret); +} // LCOV_EXCL_STOP /******************************************************************************* @@ -89,62 +89,62 @@ void VehicleSensInitRevFstl(void) { * RETURN : VEHICLESENS_EQ : No data change * VEHICLESENS_NEQ : Data change ******************************************************************************/ -//u_int8 VehicleSensSetRevFstG(const LSDRV_LSDATA_FST_REV *pst_data) { -// static u_int8 uc_ret = VEHICLESENS_EQ; -// VEHICLESENS_DATA_MASTER_FST *pst_master; -// -// pst_master = &gstRevFst_l; -// -// u_int8 partition_max; /* Total number of partitions */ -// u_int8 partition_num; /* Data number */ -// -// partition_max = pst_data->uc_partition_max; -// partition_num = pst_data->uc_partition_num; -// -// if (partition_max == 1) { /* Ignore->MISRA-C++:2008 Rule 5-0-5 */ -// /* Compare data master and received data */ -// uc_ret = VehicleSensmemcmp(pst_master->uc_data, -// pst_data->uc_data, pst_data->uc_size); /* Ignore->MISRA-C++:2008 Rule 5-0-5 */ -// -// /* Received data is set in the data master. */ -// pst_master->ul_did = pst_data->ul_did; -// pst_master->us_size = pst_data->uc_size; -// pst_master->uc_rcvflag = VEHICLE_RCVFLAG_ON; -// pst_master->partition_flg = 0; -// memset(pst_master->uc_data, 0x00, sizeof(pst_master->uc_data)); -// memcpy(pst_master->uc_data, pst_data->uc_data, pst_data->uc_size); /* Ignore->MISRA-C++:2008 Rule 5-0-5 */ -// } else if (partition_max == 2) { /* Ignore->MISRA-C++:2008 Rule 5-0-5 */ -// if (partition_num == 1) { /* Ignore->MISRA-C++:2008 Rule 5-0-5 */ -// /* Compare data master and received data */ -// /* Ignore->MISRA-C++:2008 Rule 5-0-5 */ -// uc_ret = VehicleSensmemcmp(pst_master->uc_data, pst_data->uc_data, pst_data->uc_size); -// -// /* Received data is set in the data master. */ -// pst_master->ul_did = pst_data->ul_did; -// /* Ignore->MISRA-C++:2008 Rule 5-0-5 */ -// pst_master->us_size = static_cast(pst_master->us_size + pst_data->uc_size); -// pst_master->partition_flg = 1; -// memcpy(pst_master->uc_data, pst_data->uc_data, pst_data->uc_size); /* Ignore->MISRA-C++:2008 Rule 5-0-5 */ -// } else if (partition_num == 2) { /* Ignore->MISRA-C++:2008 Rule 5-0-5 */ -// /* Compare data master and received data */ -// if (uc_ret == VEHICLESENS_EQ) { -// uc_ret = VehicleSensmemcmp(&pst_master->uc_data[VEHICLE_DSIZE_REV_FST], -// pst_data->uc_data, pst_data->uc_size); /* Ignore->MISRA-C++:2008 Rule 5-0-5 */ -// } -// -// /* Received data is set in the data master. */ -// pst_master->ul_did = pst_data->ul_did; -// /* Ignore->MISRA-C++:2008 Rule 5-0-5 */ -// pst_master->us_size = static_cast(pst_master->us_size + pst_data->uc_size); -// pst_master->uc_rcvflag = VEHICLE_RCVFLAG_ON; -// pst_master->partition_flg = 1; -// memcpy(&pst_master->uc_data[VEHICLE_DSIZE_REV_FST], -// pst_data->uc_data, pst_data->uc_size); /* Ignore->MISRA-C++:2008 Rule 5-0-5 */ -// } else {} -// } else {} -// -// return(uc_ret); -//} +u_int8 VehicleSensSetRevFstG(const LSDRV_LSDATA_FST_REV *pst_data) { + static u_int8 uc_ret = VEHICLESENS_EQ; + VEHICLESENS_DATA_MASTER_FST *pst_master; + + pst_master = &gstRevFst_l; + + u_int8 partition_max; /* Total number of partitions */ + u_int8 partition_num; /* Data number */ + + partition_max = pst_data->uc_partition_max; + partition_num = pst_data->uc_partition_num; + + if (partition_max == 1) { /* Ignore->MISRA-C++:2008 Rule 5-0-5 */ + /* Compare data master and received data */ + uc_ret = VehicleSensmemcmp(pst_master->uc_data, + pst_data->uc_data, pst_data->uc_size); /* Ignore->MISRA-C++:2008 Rule 5-0-5 */ + + /* Received data is set in the data master. */ + pst_master->ul_did = pst_data->ul_did; + pst_master->us_size = pst_data->uc_size; + pst_master->uc_rcvflag = VEHICLE_RCVFLAG_ON; + pst_master->partition_flg = 0; + memset(pst_master->uc_data, 0x00, sizeof(pst_master->uc_data)); + memcpy(pst_master->uc_data, pst_data->uc_data, pst_data->uc_size); /* Ignore->MISRA-C++:2008 Rule 5-0-5 */ + } else if (partition_max == 2) { /* Ignore->MISRA-C++:2008 Rule 5-0-5 */ + if (partition_num == 1) { /* Ignore->MISRA-C++:2008 Rule 5-0-5 */ + /* Compare data master and received data */ + /* Ignore->MISRA-C++:2008 Rule 5-0-5 */ + uc_ret = VehicleSensmemcmp(pst_master->uc_data, pst_data->uc_data, pst_data->uc_size); + + /* Received data is set in the data master. */ + pst_master->ul_did = pst_data->ul_did; + /* Ignore->MISRA-C++:2008 Rule 5-0-5 */ + pst_master->us_size = static_cast(pst_master->us_size + pst_data->uc_size); + pst_master->partition_flg = 1; + memcpy(pst_master->uc_data, pst_data->uc_data, pst_data->uc_size); /* Ignore->MISRA-C++:2008 Rule 5-0-5 */ + } else if (partition_num == 2) { /* Ignore->MISRA-C++:2008 Rule 5-0-5 */ + /* Compare data master and received data */ + if (uc_ret == VEHICLESENS_EQ) { + uc_ret = VehicleSensmemcmp(&pst_master->uc_data[VEHICLE_DSIZE_REV_FST], + pst_data->uc_data, pst_data->uc_size); /* Ignore->MISRA-C++:2008 Rule 5-0-5 */ + } + + /* Received data is set in the data master. */ + pst_master->ul_did = pst_data->ul_did; + /* Ignore->MISRA-C++:2008 Rule 5-0-5 */ + pst_master->us_size = static_cast(pst_master->us_size + pst_data->uc_size); + pst_master->uc_rcvflag = VEHICLE_RCVFLAG_ON; + pst_master->partition_flg = 1; + memcpy(&pst_master->uc_data[VEHICLE_DSIZE_REV_FST], + pst_data->uc_data, pst_data->uc_size); /* Ignore->MISRA-C++:2008 Rule 5-0-5 */ + } else {} + } else {} + + return(uc_ret); +} /******************************************************************************* * MODULE : VehicleSensGetRevFstl diff --git a/positioning/server/src/Sensor/VehicleSens_Did_Rev_l.cpp b/positioning/server/src/Sensor/VehicleSens_Did_Rev_l.cpp index 7c03ea51..8a8178a3 100644 --- a/positioning/server/src/Sensor/VehicleSens_Did_Rev_l.cpp +++ b/positioning/server/src/Sensor/VehicleSens_Did_Rev_l.cpp @@ -1,5 +1,5 @@ /* - * @copyright Copyright (c) 2016-2019 TOYOTA MOTOR CORPORATION. + * @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. @@ -43,7 +43,7 @@ static VEHICLESENS_DATA_MASTER gstRev_l; // NOLINT(readability/nolint) ******************************************************************************/ void VehicleSensInitRevl(void) { memset(&gstRev_l, 0x00, sizeof(VEHICLESENS_DATA_MASTER)); -// gstRev_l.ul_did = VEHICLE_DID_REV; + gstRev_l.ul_did = VEHICLE_DID_REV; gstRev_l.us_size = VEHICLE_DSIZE_REV; gstRev_l.uc_rcvflag = VEHICLE_RCVFLAG_OFF; } @@ -57,25 +57,25 @@ void VehicleSensInitRevl(void) { * RETURN : VEHICLESENS_EQ : No data change * VEHICLESENS_NEQ : Data change ******************************************************************************/ -//u_int8 VehicleSensSetRevl(const LSDRV_LSDATA *pst_data) { -// u_int8 uc_ret; -// VEHICLESENS_DATA_MASTER *pst_master; -// -// pst_master = &gstRev_l; -// -// /* Compare data master and received data */ -// uc_ret = VehicleSensmemcmp(pst_master->uc_data, pst_data->uc_data, pst_data->uc_size); -// -// /* Received data is set in the data master. */ -// pst_master->ul_did = pst_data->ul_did; -// pst_master->us_size = pst_data->uc_size; -// pst_master->uc_rcvflag = VEHICLE_RCVFLAG_ON; -// pst_master->uc_snscnt = pst_data->uc_sns_cnt; -// (void)memcpy(reinterpret_cast(pst_master->uc_data), -// (const void *)(pst_data->uc_data), (size_t)(pst_data->uc_size)); -// -// return(uc_ret); -//} +u_int8 VehicleSensSetRevl(const LSDRV_LSDATA *pst_data) { + u_int8 uc_ret; + VEHICLESENS_DATA_MASTER *pst_master; + + pst_master = &gstRev_l; + + /* Compare data master and received data */ + uc_ret = VehicleSensmemcmp(pst_master->uc_data, pst_data->uc_data, pst_data->uc_size); + + /* Received data is set in the data master. */ + pst_master->ul_did = pst_data->ul_did; + pst_master->us_size = pst_data->uc_size; + pst_master->uc_rcvflag = VEHICLE_RCVFLAG_ON; + pst_master->uc_snscnt = pst_data->uc_sns_cnt; + (void)memcpy(reinterpret_cast(pst_master->uc_data), + (const void *)(pst_data->uc_data), (size_t)(pst_data->uc_size)); + + return(uc_ret); +} /** * @brief @@ -88,25 +88,25 @@ void VehicleSensInitRevl(void) { * @return VEHICLESENS_EQ : No data change * VEHICLESENS_NEQ : Data change */ -//u_int8 VehicleSensSetRevlG(const LSDRV_LSDATA_G *pst_data) { -// u_int8 uc_ret; -// VEHICLESENS_DATA_MASTER *pst_master; -// -// pst_master = &gstRev_l; -// -// /* Compare data master and received data */ -// uc_ret = VehicleSensmemcmp(pst_master->uc_data, pst_data->uc_data, pst_data->uc_size); -// -// /* Received data is set in the data master. */ -// pst_master->ul_did = pst_data->ul_did; -// pst_master->us_size = pst_data->uc_size; -// pst_master->uc_rcvflag = VEHICLE_RCVFLAG_ON; -// pst_master->uc_snscnt = pst_data->uc_sns_cnt; -// (void)memcpy(reinterpret_cast(pst_master->uc_data), -// (const void *)(pst_data->uc_data), (size_t)(pst_data->uc_size)); -// -// return(uc_ret); -//} +u_int8 VehicleSensSetRevlG(const LSDRV_LSDATA_G *pst_data) { + u_int8 uc_ret; + VEHICLESENS_DATA_MASTER *pst_master; + + pst_master = &gstRev_l; + + /* Compare data master and received data */ + uc_ret = VehicleSensmemcmp(pst_master->uc_data, pst_data->uc_data, pst_data->uc_size); + + /* Received data is set in the data master. */ + pst_master->ul_did = pst_data->ul_did; + pst_master->us_size = pst_data->uc_size; + pst_master->uc_rcvflag = VEHICLE_RCVFLAG_ON; + pst_master->uc_snscnt = pst_data->uc_sns_cnt; + (void)memcpy(reinterpret_cast(pst_master->uc_data), + (const void *)(pst_data->uc_data), (size_t)(pst_data->uc_size)); + + return(uc_ret); +} /******************************************************************************* * MODULE : VehicleSensGetRevl @@ -145,7 +145,7 @@ void VehicleSensGetRevline(VEHICLESENS_DATA_MASTER *pst_data) { // LCOV_EXCL_ST pst_master = &gstRev_l; /* Store the data master in the specified destination. */ -// pst_data->ul_did = VEHICLE_DID_REV_LINE; + pst_data->ul_did = VEHICLE_DID_REV_LINE; pst_data->us_size = pst_master->us_size; pst_data->uc_rcvflag = pst_master->uc_rcvflag; pst_data->uc_snscnt = pst_master->uc_snscnt; diff --git a/positioning/server/src/Sensor/VehicleSens_Did_SettingTime.cpp b/positioning/server/src/Sensor/VehicleSens_Did_SettingTime.cpp index 14b07ead..b8db26cb 100644 --- a/positioning/server/src/Sensor/VehicleSens_Did_SettingTime.cpp +++ b/positioning/server/src/Sensor/VehicleSens_Did_SettingTime.cpp @@ -1,5 +1,5 @@ /* - * @copyright Copyright (c) 2016-2019 TOYOTA MOTOR CORPORATION. + * @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. diff --git a/positioning/server/src/Sensor/VehicleSens_Did_SettingTime_clock.cpp b/positioning/server/src/Sensor/VehicleSens_Did_SettingTime_clock.cpp index 6f61ca7e..a415a84e 100644 --- a/positioning/server/src/Sensor/VehicleSens_Did_SettingTime_clock.cpp +++ b/positioning/server/src/Sensor/VehicleSens_Did_SettingTime_clock.cpp @@ -1,5 +1,5 @@ /* - * @copyright Copyright (c) 2016-2019 TOYOTA MOTOR CORPORATION. + * @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. @@ -42,7 +42,7 @@ static VEHICLESENS_DATA_MASTER gstSettingTime_clock; // NOLINT(readability/ * @retval none */ void VehicleSensInitSettingTimeclock(void) { -// POS_DATETIME st_time; + POS_DATETIME st_time; memset(&gstSettingTime_clock, 0x00, sizeof(VEHICLESENS_DATA_MASTER)); @@ -50,11 +50,11 @@ void VehicleSensInitSettingTimeclock(void) { gstSettingTime_clock.ul_did = VEHICLE_DID_SETTINGTIME; /** Data size setting */ -// gstSettingTime_clock.us_size = sizeof(POS_DATETIME); + gstSettingTime_clock.us_size = sizeof(POS_DATETIME); /** Data content setting */ -// memset(&st_time, 0x00, sizeof(st_time)); -// memcpy(&gstSettingTime_clock.uc_data[0], &st_time, sizeof(st_time)); + memset(&st_time, 0x00, sizeof(st_time)); + memcpy(&gstSettingTime_clock.uc_data[0], &st_time, sizeof(st_time)); return; } @@ -71,23 +71,23 @@ void VehicleSensInitSettingTimeclock(void) { * @retval VEHICLESENS_EQ : No data change * @retval VEHICLESENS_NEQ : Data change */ -//u_int8 VehicleSensSetSettingTimeclock(const POS_DATETIME *pst_rcv_time) { -// u_int8 uc_ret; -// VEHICLESENS_DATA_MASTER *pst_master; -// -// pst_master = &gstSettingTime_clock; -// -// /** Compare the data master and generated data */ -// uc_ret = VehicleSensmemcmp(pst_master->uc_data, pst_rcv_time, sizeof(POS_DATETIME)); -// -// /** Received data is set in the data master. */ -// pst_master->ul_did = VEHICLE_DID_SETTINGTIME; -// pst_master->us_size = sizeof(POS_DATETIME); -// pst_master->uc_rcvflag = VEHICLE_RCVFLAG_ON; -// memcpy(pst_master->uc_data, pst_rcv_time, sizeof(POS_DATETIME)); -// -// return(uc_ret); -//} +u_int8 VehicleSensSetSettingTimeclock(const POS_DATETIME *pst_rcv_time) { + u_int8 uc_ret; + VEHICLESENS_DATA_MASTER *pst_master; + + pst_master = &gstSettingTime_clock; + + /** Compare the data master and generated data */ + uc_ret = VehicleSensmemcmp(pst_master->uc_data, pst_rcv_time, sizeof(POS_DATETIME)); + + /** Received data is set in the data master. */ + pst_master->ul_did = VEHICLE_DID_SETTINGTIME; + pst_master->us_size = sizeof(POS_DATETIME); + pst_master->uc_rcvflag = VEHICLE_RCVFLAG_ON; + memcpy(pst_master->uc_data, pst_rcv_time, sizeof(POS_DATETIME)); + + return(uc_ret); +} /** * @brief diff --git a/positioning/server/src/Sensor/VehicleSens_Did_SnsCounter.cpp b/positioning/server/src/Sensor/VehicleSens_Did_SnsCounter.cpp index 66119234..64561258 100644 --- a/positioning/server/src/Sensor/VehicleSens_Did_SnsCounter.cpp +++ b/positioning/server/src/Sensor/VehicleSens_Did_SnsCounter.cpp @@ -1,5 +1,5 @@ /* - * @copyright Copyright (c) 2016-2019 TOYOTA MOTOR CORPORATION. + * @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. diff --git a/positioning/server/src/Sensor/VehicleSens_Did_SnsCounterExt_l.cpp b/positioning/server/src/Sensor/VehicleSens_Did_SnsCounterExt_l.cpp index 7ae0e0e0..61b7a422 100644 --- a/positioning/server/src/Sensor/VehicleSens_Did_SnsCounterExt_l.cpp +++ b/positioning/server/src/Sensor/VehicleSens_Did_SnsCounterExt_l.cpp @@ -1,5 +1,5 @@ /* - * @copyright Copyright (c) 2016-2019 TOYOTA MOTOR CORPORATION. + * @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. @@ -46,7 +46,7 @@ void VehicleSensInitSnsCounterExtl(void) { u_int16 *pus; memset(&gstSnsCounterExt_l, 0x00, sizeof(VEHICLESENS_DATA_MASTER_EXT)); -// gstSnsCounterExt_l.ul_did = POSHAL_DID_SNS_COUNTER; + gstSnsCounterExt_l.ul_did = POSHAL_DID_SNS_COUNTER; gstSnsCounterExt_l.us_size = VEHICLE_DSIZE_SNS_COUNTER_EXT_INIT; pus = reinterpret_cast(gstSnsCounterExt_l.uc_data); memset(reinterpret_cast(pus), VEHICLE_DINIT_SNS_COUNTER, VEHICLE_DSIZE_SNS_COUNTER_EXT); @@ -63,10 +63,10 @@ void VehicleSensInitSnsCounterExtl(void) { * NOTE : * RETURN : void ******************************************************************************/ -//void VehicleSensSetSnsCounterExtl(const LSDRV_LSDATA *pst_data) { // LCOV_EXCL_START 8: dead code -// AGL_ASSERT_NOT_TESTED(); // LCOV_EXCL_LINE 200: test assert -// return; -//} +void VehicleSensSetSnsCounterExtl(const LSDRV_LSDATA *pst_data) { // LCOV_EXCL_START 8: dead code + AGL_ASSERT_NOT_TESTED(); // LCOV_EXCL_LINE 200: test assert + return; +} // LCOV_EXCL_STOP /******************************************************************************* @@ -77,39 +77,39 @@ void VehicleSensInitSnsCounterExtl(void) { * NOTE : * RETURN : void ******************************************************************************/ -//void VehicleSensSetSnsCounterExtlG(const LSDRV_LSDATA_G *pst_data) { -// VEHICLESENS_DATA_MASTER_EXT *pst_master; -// u_int16 us_start = 0; -// -// pst_master = &gstSnsCounterExt_l; -// -// /* Retrieve the location where the received one is stored */ -// us_start = gstPkgTempExt.start_point[0]; -// -// /* Stored in data master(Order of reception)*/ -// if (us_start >= VEHICLE_DKEEP_MAX) { -// /* Store the latest one at position 0 */ -// us_start = VEHICLE_DATA_POS_00; -// /* If you are discarding old data,,Set a flag */ -// gstPkgTempExt.data_break = VEHICLE_SNS_BREAK; -// } -// pst_master->ul_did = pst_data->ul_did; -// pst_master->uc_rcvflag = VEHICLE_RCVFLAG_ON; -// pst_master->uc_data[us_start] = pst_data->uc_data[0]; -// -// /* Update next storage start position and latest data storage position */ -// us_start++; -// gstPkgTempExt.start_point[0] = us_start; -// -// /* Update data master size */ -// if (gstPkgTempExt.data_break == VEHICLE_SNS_BREAK) { -// /* Make the size of all extended data masters */ -// pst_master->us_size = VEHICLE_DSIZE_SNS_COUNTER_EXT; -// } else { -// /* Add the size of one received data item */ -// pst_master->us_size = static_cast(pst_master->us_size + sizeof(u_int8)); -// } -//} +void VehicleSensSetSnsCounterExtlG(const LSDRV_LSDATA_G *pst_data) { + VEHICLESENS_DATA_MASTER_EXT *pst_master; + u_int16 us_start = 0; + + pst_master = &gstSnsCounterExt_l; + + /* Retrieve the location where the received one is stored */ + us_start = gstPkgTempExt.start_point[SNSCounter]; + + /* Stored in data master(Order of reception)*/ + if (us_start >= VEHICLE_DKEEP_MAX) { + /* Store the latest one at position 0 */ + us_start = VEHICLE_DATA_POS_00; + /* If you are discarding old data,,Set a flag */ + gstPkgTempExt.data_break = VEHICLE_SNS_BREAK; + } + pst_master->ul_did = pst_data->ul_did; + pst_master->uc_rcvflag = VEHICLE_RCVFLAG_ON; + pst_master->uc_data[us_start] = pst_data->uc_data[0]; + + /* Update next storage start position and latest data storage position */ + us_start++; + gstPkgTempExt.start_point[SNSCounter] = us_start; + + /* Update data master size */ + if (gstPkgTempExt.data_break == VEHICLE_SNS_BREAK) { + /* Make the size of all extended data masters */ + pst_master->us_size = VEHICLE_DSIZE_SNS_COUNTER_EXT; + } else { + /* Add the size of one received data item */ + pst_master->us_size = static_cast(pst_master->us_size + sizeof(u_int8)); + } +} /******************************************************************************* * MODULE : VehicleSensGetSnsCounterExtl @@ -120,39 +120,36 @@ void VehicleSensInitSnsCounterExtl(void) { * RETURN : void ******************************************************************************/ void VehicleSensGetSnsCounterExtl(VEHICLESENS_DATA_MASTER_EXT *pst_data) { - const VEHICLESENS_DATA_MASTER_EXT *pst_master; - u_int16 us_data_cnt = 0; - u_int16 us_cnt = 0; - u_int16 us_loop_cnt = 0; - - /* Store the data master in the specified destination. */ - pst_master = &gstSnsCounterExt_l; - pst_data->ul_did = pst_master->ul_did; - pst_data->us_size = pst_master->us_size; - pst_data->uc_rcvflag = pst_master->uc_rcvflag; - - /* Checking whether the number of stored entries is looped */ - if (gstPkgTempExt.data_break == VEHICLE_SNS_BREAK) { /* Ignore->MISRA-C++:2008 Rule 5-0-5 */ - us_data_cnt = VEHICLE_DKEEP_MAX; - } else { - us_data_cnt = gstPkgTempExt.start_point[0]; - } + const VEHICLESENS_DATA_MASTER_EXT *pst_master; + uint16_t us_data_cnt = 0; // Number of data contained + uint16_t us_loop_cnt = 0; // 64 over index - /* Acquire data from the newest data master */ - for (us_cnt = 0; us_cnt < us_data_cnt; us_cnt++) { - if (gstPkgTempExt.data_break == VEHICLE_SNS_BREAK) { - /* Get information after loop */ - if (gstPkgTempExt.start_point[0] > us_cnt) { - pst_data->uc_data[us_cnt] = pst_master->uc_data[(gstPkgTempExt.start_point[0] - us_cnt - 1)]; - us_loop_cnt++; - } else { - pst_data->uc_data[us_cnt] = pst_master->uc_data[(us_data_cnt - us_cnt - 1 + us_loop_cnt)]; - } - } else { - if ((u_int32)(us_data_cnt - us_cnt) <= (u_int32)VEHICLE_DKEEP_MAX) { // LCOV_EXCL_BR_LINE 6: always true - pst_data->uc_data[us_cnt] = pst_master->uc_data[(us_data_cnt - us_cnt - 1)]; - } - } + /* Store the data master in the specified destination. */ + pst_master = &gstSnsCounterExt_l; + pst_data->ul_did = pst_master->ul_did; + pst_data->us_size = pst_master->us_size; + pst_data->uc_rcvflag = pst_master->uc_rcvflag; + + /* Checking whether the number of stored entries is looped */ + if (gstPkgTempExt.data_break == VEHICLE_SNS_BREAK) { + us_data_cnt = VEHICLE_DKEEP_MAX; + } else { + us_data_cnt = gstPkgTempExt.start_point[SNSCounter]; + } + + /* Acquire data from the newest data master */ + for (uint16_t us_cnt = 0; us_cnt < us_data_cnt; us_cnt++) { + if (gstPkgTempExt.data_break == VEHICLE_SNS_BREAK) { + /* Get information before loop */ + if (gstPkgTempExt.start_point[SNSCounter] + us_cnt < VEHICLE_DKEEP_MAX) { + pst_data->uc_data[us_cnt] = pst_master->uc_data[(gstPkgTempExt.start_point[SNSCounter] + us_cnt)]; + } else { + pst_data->uc_data[us_cnt] = pst_master->uc_data[us_loop_cnt]; + us_loop_cnt++; + } + } else { + pst_data->uc_data[us_cnt] = pst_master->uc_data[us_cnt]; } + } } #endif diff --git a/positioning/server/src/Sensor/VehicleSens_Did_SnsCounter_l.cpp b/positioning/server/src/Sensor/VehicleSens_Did_SnsCounter_l.cpp index cce879dd..b81b4b37 100644 --- a/positioning/server/src/Sensor/VehicleSens_Did_SnsCounter_l.cpp +++ b/positioning/server/src/Sensor/VehicleSens_Did_SnsCounter_l.cpp @@ -1,5 +1,5 @@ /* - * @copyright Copyright (c) 2016-2019 TOYOTA MOTOR CORPORATION. + * @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. @@ -42,7 +42,7 @@ static VEHICLESENS_DATA_MASTER gstSnsCounter_l; // NOLINT(readability/nolin ******************************************************************************/ void VehicleSensInitSnsCounterl(void) { memset(&gstSnsCounter_l, 0x00, sizeof(VEHICLESENS_DATA_MASTER)); -// gstSnsCounter_l.ul_did = POSHAL_DID_SNS_COUNTER; + gstSnsCounter_l.ul_did = POSHAL_DID_SNS_COUNTER; gstSnsCounter_l.us_size = VEHICLE_DSIZE_SNS_COUNTER; gstSnsCounter_l.uc_data[0] = VEHICLE_DINIT_SNS_COUNTER; } @@ -56,24 +56,24 @@ void VehicleSensInitSnsCounterl(void) { * RETURN : VEHICLESENS_EQ : No data change * VEHICLESENS_NEQ : Data change ******************************************************************************/ -//u_int8 VehicleSensSetSnsCounterl(const LSDRV_LSDATA *pst_data) { // LCOV_EXCL_START 8: dead code -// AGL_ASSERT_NOT_TESTED(); // LCOV_EXCL_LINE 200: test assert -// u_int8 uc_ret; -// VEHICLESENS_DATA_MASTER *pst_master; -// -// pst_master = &gstSnsCounter_l; -// -// /* Compare data master and received data */ -// uc_ret = VehicleSensmemcmp(pst_master->uc_data, pst_data->uc_data, pst_data->uc_size); -// -// /* Received data is set in the data master. */ -// pst_master->ul_did = pst_data->ul_did; -// pst_master->us_size = pst_data->uc_size; -// pst_master->uc_rcvflag = VEHICLE_RCVFLAG_ON; -// memcpy(pst_master->uc_data, pst_data->uc_data, pst_data->uc_size); -// -// return(uc_ret); -//} +u_int8 VehicleSensSetSnsCounterl(const LSDRV_LSDATA *pst_data) { // LCOV_EXCL_START 8: dead code + AGL_ASSERT_NOT_TESTED(); // LCOV_EXCL_LINE 200: test assert + u_int8 uc_ret; + VEHICLESENS_DATA_MASTER *pst_master; + + pst_master = &gstSnsCounter_l; + + /* Compare data master and received data */ + uc_ret = VehicleSensmemcmp(pst_master->uc_data, pst_data->uc_data, pst_data->uc_size); + + /* Received data is set in the data master. */ + pst_master->ul_did = pst_data->ul_did; + pst_master->us_size = pst_data->uc_size; + pst_master->uc_rcvflag = VEHICLE_RCVFLAG_ON; + memcpy(pst_master->uc_data, pst_data->uc_data, pst_data->uc_size); + + return(uc_ret); +} // LCOV_EXCL_STOP /******************************************************************************* @@ -85,23 +85,23 @@ void VehicleSensInitSnsCounterl(void) { * RETURN : VEHICLESENS_EQ : No data change * VEHICLESENS_NEQ : Data change ******************************************************************************/ -//u_int8 VehicleSensSetSnsCounterlG(const LSDRV_LSDATA_G *pst_data) { -// u_int8 uc_ret; -// VEHICLESENS_DATA_MASTER *pst_master; -// -// pst_master = &gstSnsCounter_l; -// -// /* Compare data master and received data */ -// uc_ret = VehicleSensmemcmp(pst_master->uc_data, pst_data->uc_data, pst_data->uc_size); -// -// /* Received data is set in the data master. */ -// pst_master->ul_did = pst_data->ul_did; -// pst_master->us_size = pst_data->uc_size; -// pst_master->uc_rcvflag = VEHICLE_RCVFLAG_ON; -// memcpy(pst_master->uc_data, pst_data->uc_data, pst_data->uc_size); -// -// return(uc_ret); -//} +u_int8 VehicleSensSetSnsCounterlG(const LSDRV_LSDATA_G *pst_data) { + u_int8 uc_ret; + VEHICLESENS_DATA_MASTER *pst_master; + + pst_master = &gstSnsCounter_l; + + /* Compare data master and received data */ + uc_ret = VehicleSensmemcmp(pst_master->uc_data, pst_data->uc_data, pst_data->uc_size); + + /* Received data is set in the data master. */ + pst_master->ul_did = pst_data->ul_did; + pst_master->us_size = pst_data->uc_size; + pst_master->uc_rcvflag = VEHICLE_RCVFLAG_ON; + memcpy(pst_master->uc_data, pst_data->uc_data, pst_data->uc_size); + + return(uc_ret); +} /******************************************************************************* * MODULE : VehicleSensGetSnsCounterl diff --git a/positioning/server/src/Sensor/VehicleSens_Did_SpeedKmph.cpp b/positioning/server/src/Sensor/VehicleSens_Did_SpeedKmph.cpp index 2ebfbd4a..47057742 100644 --- a/positioning/server/src/Sensor/VehicleSens_Did_SpeedKmph.cpp +++ b/positioning/server/src/Sensor/VehicleSens_Did_SpeedKmph.cpp @@ -1,5 +1,5 @@ /* - * @copyright Copyright (c) 2016-2019 TOYOTA MOTOR CORPORATION. + * @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. diff --git a/positioning/server/src/Sensor/VehicleSens_Did_SpeedKmph_l.cpp b/positioning/server/src/Sensor/VehicleSens_Did_SpeedKmph_l.cpp index 39f514c4..abbb27a8 100644 --- a/positioning/server/src/Sensor/VehicleSens_Did_SpeedKmph_l.cpp +++ b/positioning/server/src/Sensor/VehicleSens_Did_SpeedKmph_l.cpp @@ -1,5 +1,5 @@ /* - * @copyright Copyright (c) 2016-2019 TOYOTA MOTOR CORPORATION. + * @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. @@ -44,7 +44,7 @@ void VehicleSensInitSpeedKmphl(void) { u_int16 *pus; memset(&gstSpeedKmph_l, 0x00, sizeof(VEHICLESENS_DATA_MASTER)); -// gstSpeedKmph_l.ul_did = POSHAL_DID_SPEED_KMPH; + gstSpeedKmph_l.ul_did = POSHAL_DID_SPEED_KMPH; gstSpeedKmph_l.us_size = VEHICLE_DSIZE_SPEED_KMPH; pus = reinterpret_cast(gstSpeedKmph_l.uc_data); @@ -60,26 +60,26 @@ void VehicleSensInitSpeedKmphl(void) { * RETURN : VEHICLESENS_EQ : No data change * VEHICLESENS_NEQ : Data change ******************************************************************************/ -//u_int8 VehicleSensSetSpeedKmphl(const LSDRV_LSDATA *pst_data) { // LCOV_EXCL_START 8: dead code. -// AGL_ASSERT_NOT_TESTED(); // LCOV_EXCL_LINE 200: test assert -// u_int8 uc_ret; -// VEHICLESENS_DATA_MASTER *pst_master; -// -// pst_master = &gstSpeedKmph_l; -// -// /* Compare data master and received data */ -// uc_ret = VehicleSensmemcmp(pst_master->uc_data, -// pst_data->uc_data, pst_data->uc_size); /* Ignore->MISRA-C++:2008 Rule 5-0-5 */ -// -// /* Received data is set in the data master. */ -// pst_master->ul_did = pst_data->ul_did; -// pst_master->us_size = pst_data->uc_size; /* Ignore->MISRA-C++:2008 Rule 5-0-5 */ -// pst_master->uc_rcvflag = VEHICLE_RCVFLAG_ON; -// memset(pst_master->uc_data, 0x00, sizeof(pst_master->uc_data)); -// memcpy(pst_master->uc_data, pst_data->uc_data, pst_data->uc_size); /* Ignore->MISRA-C++:2008 Rule 5-0-5 */ -// -// return(uc_ret); -//} +u_int8 VehicleSensSetSpeedKmphl(const LSDRV_LSDATA *pst_data) { // LCOV_EXCL_START 8: dead code. + AGL_ASSERT_NOT_TESTED(); // LCOV_EXCL_LINE 200: test assert + u_int8 uc_ret; + VEHICLESENS_DATA_MASTER *pst_master; + + pst_master = &gstSpeedKmph_l; + + /* Compare data master and received data */ + uc_ret = VehicleSensmemcmp(pst_master->uc_data, + pst_data->uc_data, pst_data->uc_size); /* Ignore->MISRA-C++:2008 Rule 5-0-5 */ + + /* Received data is set in the data master. */ + pst_master->ul_did = pst_data->ul_did; + pst_master->us_size = pst_data->uc_size; /* Ignore->MISRA-C++:2008 Rule 5-0-5 */ + pst_master->uc_rcvflag = VEHICLE_RCVFLAG_ON; + memset(pst_master->uc_data, 0x00, sizeof(pst_master->uc_data)); + memcpy(pst_master->uc_data, pst_data->uc_data, pst_data->uc_size); /* Ignore->MISRA-C++:2008 Rule 5-0-5 */ + + return(uc_ret); +} // LCOV_EXCL_STOP /******************************************************************************* @@ -91,49 +91,49 @@ void VehicleSensInitSpeedKmphl(void) { * RETURN : VEHICLESENS_EQ : No data change * VEHICLESENS_NEQ : Data change ******************************************************************************/ -//u_int8 VehicleSensSetSpeedKmphlG(const LSDRV_LSDATA_G *pst_data) { -// u_int8 uc_ret; -// VEHICLESENS_DATA_MASTER *pst_master; -// -// static u_int16 pre_speed[2] = {0, 0}; -// u_int16 cur_speed = 0; -// memcpy(&cur_speed, &pst_data->uc_data[0], sizeof(u_int16)); -// -// BOOL under2 = TRUE; -// BOOL eq_speed = TRUE; -// -// pst_master = &gstSpeedKmph_l; -// -// /* Transition of 0->1km/h and 1->0km/h requires 3 consecutive matches. Compliance with driving regulations */ -// under2 = ((pre_speed[1] < 2) && (pre_speed[0] < 2) && (cur_speed < 2)); -// eq_speed = ((pre_speed[1] == pre_speed[0]) && (pre_speed[0] == cur_speed)); -// -// if ((under2 == TRUE) && (eq_speed != TRUE) && (pst_master->uc_rcvflag == VEHICLE_RCVFLAG_ON)) { -// uc_ret = VEHICLESENS_EQ; /* Return without data change */ -// -// /* Received data is set in the data master. */ -// pst_master->ul_did = pst_data->ul_did; -// pst_master->us_size = pst_data->uc_size; /* Ignore->MISRA-C++:2008 Rule 5-0-5 */ -// pst_master->uc_rcvflag = VEHICLE_RCVFLAG_ON; -// -// } else { -// /* Compare data master and received data */ -// uc_ret = VehicleSensmemcmp(pst_master->uc_data, -// pst_data->uc_data, pst_data->uc_size); /* Ignore->MISRA-C++:2008 Rule 5-0-5 */ -// -// /* Received data is set in the data master. */ -// pst_master->ul_did = pst_data->ul_did; -// pst_master->us_size = pst_data->uc_size; /* Ignore->MISRA-C++:2008 Rule 5-0-5 */ -// pst_master->uc_rcvflag = VEHICLE_RCVFLAG_ON; -// memcpy(pst_master->uc_data, pst_data->uc_data, pst_data->uc_size); /* Ignore->MISRA-C++:2008 Rule 5-0-5 */ -// } -// -// /* For the next comparison,Update Speed */ -// pre_speed[1] = pre_speed[0]; -// pre_speed[0] = cur_speed; -// -// return(uc_ret); -//} +u_int8 VehicleSensSetSpeedKmphlG(const LSDRV_LSDATA_G *pst_data) { + u_int8 uc_ret; + VEHICLESENS_DATA_MASTER *pst_master; + + static u_int16 pre_speed[2] = {0, 0}; + u_int16 cur_speed = 0; + memcpy(&cur_speed, &pst_data->uc_data[0], sizeof(u_int16)); + + BOOL under2 = TRUE; + BOOL eq_speed = TRUE; + + pst_master = &gstSpeedKmph_l; + + /* Transition of 0->1km/h and 1->0km/h requires 3 consecutive matches. Compliance with driving regulations */ + under2 = ((pre_speed[1] < 2) && (pre_speed[0] < 2) && (cur_speed < 2)); + eq_speed = ((pre_speed[1] == pre_speed[0]) && (pre_speed[0] == cur_speed)); + + if ((under2 == TRUE) && (eq_speed != TRUE) && (pst_master->uc_rcvflag == VEHICLE_RCVFLAG_ON)) { + uc_ret = VEHICLESENS_EQ; /* Return without data change */ + + /* Received data is set in the data master. */ + pst_master->ul_did = pst_data->ul_did; + pst_master->us_size = pst_data->uc_size; /* Ignore->MISRA-C++:2008 Rule 5-0-5 */ + pst_master->uc_rcvflag = VEHICLE_RCVFLAG_ON; + + } else { + /* Compare data master and received data */ + uc_ret = VehicleSensmemcmp(pst_master->uc_data, + pst_data->uc_data, pst_data->uc_size); /* Ignore->MISRA-C++:2008 Rule 5-0-5 */ + + /* Received data is set in the data master. */ + pst_master->ul_did = pst_data->ul_did; + pst_master->us_size = pst_data->uc_size; /* Ignore->MISRA-C++:2008 Rule 5-0-5 */ + pst_master->uc_rcvflag = VEHICLE_RCVFLAG_ON; + memcpy(pst_master->uc_data, pst_data->uc_data, pst_data->uc_size); /* Ignore->MISRA-C++:2008 Rule 5-0-5 */ + } + + /* For the next comparison,Update Speed */ + pre_speed[1] = pre_speed[0]; + pre_speed[0] = cur_speed; + + return(uc_ret); +} /******************************************************************************* * MODULE : VehicleSensGetSpeedKmphl diff --git a/positioning/server/src/Sensor/VehicleSens_Did_SpeedPulse.cpp b/positioning/server/src/Sensor/VehicleSens_Did_SpeedPulse.cpp index 5f9c0fae..3f4ec8ab 100644 --- a/positioning/server/src/Sensor/VehicleSens_Did_SpeedPulse.cpp +++ b/positioning/server/src/Sensor/VehicleSens_Did_SpeedPulse.cpp @@ -1,5 +1,5 @@ /* - * @copyright Copyright (c) 2016-2019 TOYOTA MOTOR CORPORATION. + * @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. diff --git a/positioning/server/src/Sensor/VehicleSens_Did_SpeedPulseExt_l.cpp b/positioning/server/src/Sensor/VehicleSens_Did_SpeedPulseExt_l.cpp index 2a3bc74b..86c8f499 100644 --- a/positioning/server/src/Sensor/VehicleSens_Did_SpeedPulseExt_l.cpp +++ b/positioning/server/src/Sensor/VehicleSens_Did_SpeedPulseExt_l.cpp @@ -1,5 +1,5 @@ /* - * @copyright Copyright (c) 2016-2019 TOYOTA MOTOR CORPORATION. + * @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. @@ -46,7 +46,7 @@ void VehicleSensInitSpeedPulseExtl(void) { u_int16 *pus; memset(&gstSpeedPulseExt_l, 0x00, sizeof(VEHICLESENS_DATA_MASTER_EXT)); -// gstSpeedPulseExt_l.ul_did = POSHAL_DID_SPEED_PULSE; + gstSpeedPulseExt_l.ul_did = POSHAL_DID_SPEED_PULSE; gstSpeedPulseExt_l.us_size = VEHICLE_DSIZE_SPEED_PULSE_EXT_INIT; pus = reinterpret_cast(gstSpeedPulseExt_l.uc_data); @@ -62,43 +62,43 @@ void VehicleSensInitSpeedPulseExtl(void) { * RETURN : VEHICLESENS_EQ : No data change * VEHICLESENS_NEQ : Data change ******************************************************************************/ -//void VehicleSensSetSpeedPulseExtlG(const LSDRV_LSDATA_G *pst_data) { -// VEHICLESENS_DATA_MASTER_EXT *pst_master; -// u_int16 us_start = 0; -// u_int16 us_size = 0; -// u_int16 us_cnt = 0; -// -// pst_master = &gstSpeedPulseExt_l; -// us_size = static_cast(sizeof(u_int16) * 10); /* Size of one data item: 2byte * 10 data items */ -// -// /* Retrieve the location where the received one is stored */ -// us_start = gstPkgTempExt.start_point[1]; -// -// /* Stored in data master(Order of reception)*/ -// if (us_start >= VEHICLE_DKEEP_MAX) { -// /* Store the latest one at position 0 */ -// us_start = VEHICLE_DATA_POS_00; -// /* If you are discarding old data,,Set a flag */ -// gstPkgTempExt.data_break = VEHICLE_SNS_BREAK; -// } -// pst_master->ul_did = pst_data->ul_did; -// pst_master->uc_rcvflag = VEHICLE_RCVFLAG_ON; -// for (us_cnt = 0; us_cnt < us_size; us_cnt++) { -// pst_master->uc_data[us_start * us_size + us_cnt] = (u_int8)(pst_data->uc_data[us_cnt]); -// } -// -// /* Update next storage start position and latest data storage position */ -// us_start++; -// gstPkgTempExt.start_point[1] = us_start; -// /* Update data master size */ -// if (gstPkgTempExt.data_break == VEHICLE_SNS_BREAK) { -// /* Make the size of all extended data masters */ -// pst_master->us_size = VEHICLE_DSIZE_SPEED_PULSE_EXT; -// } else { -// /* Add the size of one received data item */ -// pst_master->us_size = static_cast(pst_master->us_size + us_size); -// } -//} +void VehicleSensSetSpeedPulseExtlG(const LSDRV_LSDATA_G *pst_data) { + VEHICLESENS_DATA_MASTER_EXT *pst_master; + u_int16 us_start = 0; + u_int16 us_size = 0; + u_int16 us_cnt = 0; + + pst_master = &gstSpeedPulseExt_l; + us_size = static_cast(sizeof(u_int16) * 10); /* Size of one data item: 2byte * 10 data items */ + + /* Retrieve the location where the received one is stored */ + us_start = gstPkgTempExt.start_point[SpeedPulse]; + + /* Stored in data master(Order of reception)*/ + if (us_start >= VEHICLE_DKEEP_MAX) { + /* Store the latest one at position 0 */ + us_start = VEHICLE_DATA_POS_00; + /* If you are discarding old data,,Set a flag */ + gstPkgTempExt.data_break = VEHICLE_SNS_BREAK; + } + pst_master->ul_did = pst_data->ul_did; + pst_master->uc_rcvflag = VEHICLE_RCVFLAG_ON; + for (us_cnt = 0; us_cnt < us_size; us_cnt++) { + pst_master->uc_data[us_start * us_size + us_cnt] = (u_int8)(pst_data->uc_data[us_cnt]); + } + + /* Update next storage start position and latest data storage position */ + us_start++; + gstPkgTempExt.start_point[SpeedPulse] = us_start; + /* Update data master size */ + if (gstPkgTempExt.data_break == VEHICLE_SNS_BREAK) { + /* Make the size of all extended data masters */ + pst_master->us_size = VEHICLE_DSIZE_SPEED_PULSE_EXT; + } else { + /* Add the size of one received data item */ + pst_master->us_size = static_cast(pst_master->us_size + us_size); + } +} /******************************************************************************* * MODULE : VehicleSensGetSpeedPulseExtl @@ -109,46 +109,42 @@ void VehicleSensInitSpeedPulseExtl(void) { * RETURN : void ******************************************************************************/ void VehicleSensGetSpeedPulseExtl(VEHICLESENS_DATA_MASTER_EXT *pst_data) { - const VEHICLESENS_DATA_MASTER_EXT *pst_master; - u_int16 us_size = 0; - u_int16 us_data_cnt = 0; - u_int16 us_cnt = 0; - u_int16 us_loop_cnt = 0; + const VEHICLESENS_DATA_MASTER_EXT *pst_master; + uint16_t us_size = 0; + uint16_t us_data_cnt = 0; // Number of data contained + uint16_t us_loop_cnt = 0; // 64 over index + + /* Store the data master in the specified destination. */ + pst_master = &gstSpeedPulseExt_l; + pst_data->ul_did = pst_master->ul_did; + pst_data->us_size = pst_master->us_size; + pst_data->uc_rcvflag = pst_master->uc_rcvflag; - /* Store the data master in the specified destination. */ - pst_master = &gstSpeedPulseExt_l; - pst_data->ul_did = pst_master->ul_did; - pst_data->us_size = pst_master->us_size; - pst_data->uc_rcvflag = pst_master->uc_rcvflag; + us_size = static_cast(sizeof(u_int16) * 10); /* Size of one data item: 2byte * 10 data items */ - us_size = static_cast(sizeof(u_int16) * 10); /* Size of one data item: 2byte * 10 data items */ + /* Checking whether the number of stored entries is looped */ + if (gstPkgTempExt.data_break == VEHICLE_SNS_BREAK) { + us_data_cnt = VEHICLE_DKEEP_MAX; + } else { + us_data_cnt = gstPkgTempExt.start_point[SpeedPulse]; + } - /* Checking whether the number of stored entries is looped */ + /* Acquire data from the newest data master */ + for (uint16_t us_cnt = 0; us_cnt < us_data_cnt; us_cnt++) { if (gstPkgTempExt.data_break == VEHICLE_SNS_BREAK) { - us_data_cnt = VEHICLE_DKEEP_MAX; + /* Get information before loop */ + if (gstPkgTempExt.start_point[SpeedPulse] + us_cnt < VEHICLE_DKEEP_MAX) { + memcpy(&pst_data->uc_data[us_cnt * us_size], + &pst_master->uc_data[(gstPkgTempExt.start_point[SpeedPulse] + us_cnt) * us_size], us_size); + } else { + memcpy(&pst_data->uc_data[us_cnt * us_size], + &pst_master->uc_data[us_loop_cnt * us_size], us_size); + us_loop_cnt++; + } } else { - us_data_cnt = gstPkgTempExt.start_point[1]; - } - - /* Acquire data from the newest data master */ - us_loop_cnt = 0; - for (us_cnt = 0; us_cnt < us_data_cnt; us_cnt++) { - if (gstPkgTempExt.data_break == VEHICLE_SNS_BREAK) { - /* Get information after loop */ - if (gstPkgTempExt.start_point[1] > us_cnt) { - memcpy(&pst_data->uc_data[us_cnt * us_size], - &pst_master->uc_data[(gstPkgTempExt.start_point[1] - us_cnt - 1) * us_size], us_size); - us_loop_cnt++; - } else { - memcpy(&pst_data->uc_data[us_cnt * us_size], - &pst_master->uc_data[(us_data_cnt - us_cnt - 1 + us_loop_cnt) * us_size], us_size); - } - } else { - if ((u_int32)(us_data_cnt - us_cnt) <= (u_int32)VEHICLE_DKEEP_MAX) { // LCOV_EXCL_BR_LINE 6: always true - memcpy(&pst_data->uc_data[us_cnt * us_size], - &pst_master->uc_data[(us_data_cnt - us_cnt - 1) * us_size], us_size); - } - } + memcpy(&pst_data->uc_data[us_cnt * us_size], + &pst_master->uc_data[us_cnt * us_size], us_size); } + } } #endif diff --git a/positioning/server/src/Sensor/VehicleSens_Did_SpeedPulseFlag.cpp b/positioning/server/src/Sensor/VehicleSens_Did_SpeedPulseFlag.cpp index 29cf2ba8..f6ab8df8 100644 --- a/positioning/server/src/Sensor/VehicleSens_Did_SpeedPulseFlag.cpp +++ b/positioning/server/src/Sensor/VehicleSens_Did_SpeedPulseFlag.cpp @@ -1,5 +1,5 @@ /* - * @copyright Copyright (c) 2016-2019 TOYOTA MOTOR CORPORATION. + * @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. @@ -39,7 +39,7 @@ static VEHICLESENS_DATA_MASTER gstSpeedPulseFlag; // NOLINT(readability/nol *****************************************************************************/ void VehicleSensInitSpeedPulseFlag(void) { (void)memset(reinterpret_cast(&gstSpeedPulseFlag), 0, sizeof(VEHICLESENS_DATA_MASTER)); -// gstSpeedPulseFlag.ul_did = POSHAL_DID_SPEED_PULSE_FLAG; + gstSpeedPulseFlag.ul_did = POSHAL_DID_SPEED_PULSE_FLAG; gstSpeedPulseFlag.us_size = VEHICLE_DSIZE_SPEED_PULSE_FLAG; gstSpeedPulseFlag.uc_rcvflag = VEHICLE_RCVFLAG_OFF; } @@ -55,26 +55,26 @@ void VehicleSensInitSpeedPulseFlag(void) { @retval VEHICLESENS_NEQ : With data changes @trace *****************************************************************************/ -//u_int8 VehicleSensSetSpeedPulseFlag(const LSDRV_LSDATA_G *pst_data) { // LCOV_EXCL_START 8: dead code -// AGL_ASSERT_NOT_TESTED(); // LCOV_EXCL_LINE 200: test assert -// u_int8 uc_ret; -// VEHICLESENS_DATA_MASTER *pst_master; -// -// pst_master = &gstSpeedPulseFlag; -// -// /** Compare data master and received data */ -// uc_ret = VehicleSensmemcmp(pst_master->uc_data, pst_data->uc_data, pst_data->uc_size); -// -// /** Received data is set in the data master. */ -// pst_master->ul_did = pst_data->ul_did; -// pst_master->us_size = pst_data->uc_size; -// pst_master->uc_rcvflag = VEHICLE_RCVFLAG_ON; -// pst_master->uc_snscnt = pst_data->uc_sns_cnt; -// (void)memcpy(reinterpret_cast(pst_master->uc_data), -// (const void *)(pst_data->uc_data), (size_t)(pst_data->uc_size)); -// -// return(uc_ret); -//} +u_int8 VehicleSensSetSpeedPulseFlag(const LSDRV_LSDATA_G *pst_data) { // LCOV_EXCL_START 8: dead code + AGL_ASSERT_NOT_TESTED(); // LCOV_EXCL_LINE 200: test assert + u_int8 uc_ret; + VEHICLESENS_DATA_MASTER *pst_master; + + pst_master = &gstSpeedPulseFlag; + + /** Compare data master and received data */ + uc_ret = VehicleSensmemcmp(pst_master->uc_data, pst_data->uc_data, pst_data->uc_size); + + /** Received data is set in the data master. */ + pst_master->ul_did = pst_data->ul_did; + pst_master->us_size = pst_data->uc_size; + pst_master->uc_rcvflag = VEHICLE_RCVFLAG_ON; + pst_master->uc_snscnt = pst_data->uc_sns_cnt; + (void)memcpy(reinterpret_cast(pst_master->uc_data), + (const void *)(pst_data->uc_data), (size_t)(pst_data->uc_size)); + + return(uc_ret); +} /*************************************************************************** @brief Vehicle sensor function NAV-CLOCK GET diff --git a/positioning/server/src/Sensor/VehicleSens_Did_SpeedPulseFlagFst_l.cpp b/positioning/server/src/Sensor/VehicleSens_Did_SpeedPulseFlagFst_l.cpp index 7701d9ce..051c6bbd 100644 --- a/positioning/server/src/Sensor/VehicleSens_Did_SpeedPulseFlagFst_l.cpp +++ b/positioning/server/src/Sensor/VehicleSens_Did_SpeedPulseFlagFst_l.cpp @@ -1,5 +1,5 @@ /* - * @copyright Copyright (c) 2016-2019 TOYOTA MOTOR CORPORATION. + * @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. @@ -55,10 +55,10 @@ void VehicleSensInitSpeedPulseFlagFstl(void) { * RETURN : VEHICLESENS_EQ : No data change * VEHICLESENS_NEQ : Data change ******************************************************************************/ -//u_int8 VehicleSensSetSpeedPulseFlagFstl(const LSDRV_LSDATA_FST *pst_data) { // LCOV_EXCL_START 8: dead code -// AGL_ASSERT_NOT_TESTED(); // LCOV_EXCL_LINE 200: test assert -// return(VEHICLESENS_EQ); -//} +u_int8 VehicleSensSetSpeedPulseFlagFstl(const LSDRV_LSDATA_FST *pst_data) { // LCOV_EXCL_START 8: dead code + AGL_ASSERT_NOT_TESTED(); // LCOV_EXCL_LINE 200: test assert + return(VEHICLESENS_EQ); +} // LCOV_EXCL_STOP /******************************************************************************* @@ -70,9 +70,9 @@ void VehicleSensInitSpeedPulseFlagFstl(void) { * RETURN : VEHICLESENS_EQ : No data change * VEHICLESENS_NEQ : Data change ******************************************************************************/ -//u_int8 VehicleSensSetSpeedPulseFlagFstG(const LSDRV_LSDATA_FST_SPEED_PULSE_FLAG *pst_data) { -// return VEHICLESENS_EQ; -//} +u_int8 VehicleSensSetSpeedPulseFlagFstG(const LSDRV_LSDATA_FST_SPEED_PULSE_FLAG *pst_data) { + return VEHICLESENS_EQ; +} /******************************************************************************* * MODULE : VehicleSensGetSpeedPulseFlagFstl diff --git a/positioning/server/src/Sensor/VehicleSens_Did_SpeedPulseFst_l.cpp b/positioning/server/src/Sensor/VehicleSens_Did_SpeedPulseFst_l.cpp index 2b050476..26952b36 100644 --- a/positioning/server/src/Sensor/VehicleSens_Did_SpeedPulseFst_l.cpp +++ b/positioning/server/src/Sensor/VehicleSens_Did_SpeedPulseFst_l.cpp @@ -1,5 +1,5 @@ /* - * @copyright Copyright (c) 2016-2019 TOYOTA MOTOR CORPORATION. + * @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. @@ -46,11 +46,11 @@ void VehicleSensInitSpeedPulseFstl(void) { u_int16 *pus; memset(&gstSpeedPulseFst_l, 0x00, sizeof(VEHICLESENS_DATA_MASTER_FST)); -// gstSpeedPulseFst_l.ul_did = POSHAL_DID_SPEED_PULSE_FST; + gstSpeedPulseFst_l.ul_did = POSHAL_DID_SPEED_PULSE_FST; gstSpeedPulseFst_l.us_size = 0; gstSpeedPulseFst_l.partition_flg = 0; pus = reinterpret_cast(gstSpeedPulseFst_l.uc_data); -// memset(reinterpret_cast(pus), VEHICLE_DINIT_SPEED_PULSE, VEHICLE_DSIZE_SPEED_PULSE_FST); + memset(reinterpret_cast(pus), VEHICLE_DINIT_SPEED_PULSE, VEHICLE_DSIZE_SPEED_PULSE_FST); } /******************************************************************************* @@ -62,25 +62,25 @@ void VehicleSensInitSpeedPulseFstl(void) { * RETURN : VEHICLESENS_EQ : No data change * VEHICLESENS_NEQ : Data change ******************************************************************************/ -//u_int8 VehicleSensSetSpeedPulseFstl(const LSDRV_LSDATA_FST *pst_data) { -// u_int8 uc_ret; -// VEHICLESENS_DATA_MASTER_FST *pst_master; -// -// pst_master = &gstSpeedPulseFst_l; -// -// /* Compare data master and received data */ -// /* Ignore->MISRA-C++:2008 Rule 5-0-5 */ -// uc_ret = VehicleSensmemcmp(pst_master->uc_data, pst_data->uc_data, pst_data->uc_size); -// -// /* Received data is set in the data master. */ -// pst_master->ul_did = pst_data->ul_did; -// pst_master->us_size = pst_data->uc_size; -// pst_master->uc_rcvflag = VEHICLE_RCVFLAG_ON; -// memset(pst_master->uc_data, 0x00, sizeof(pst_master->uc_data)); -// memcpy(pst_master->uc_data, pst_data->uc_data, pst_data->uc_size); /* Ignore->MISRA-C++:2008 Rule 5-0-5 */ -// -// return(uc_ret); -//} +u_int8 VehicleSensSetSpeedPulseFstl(const LSDRV_LSDATA_FST *pst_data) { + u_int8 uc_ret; + VEHICLESENS_DATA_MASTER_FST *pst_master; + + pst_master = &gstSpeedPulseFst_l; + + /* Compare data master and received data */ + /* Ignore->MISRA-C++:2008 Rule 5-0-5 */ + uc_ret = VehicleSensmemcmp(pst_master->uc_data, pst_data->uc_data, pst_data->uc_size); + + /* Received data is set in the data master. */ + pst_master->ul_did = pst_data->ul_did; + pst_master->us_size = pst_data->uc_size; + pst_master->uc_rcvflag = VEHICLE_RCVFLAG_ON; + memset(pst_master->uc_data, 0x00, sizeof(pst_master->uc_data)); + memcpy(pst_master->uc_data, pst_data->uc_data, pst_data->uc_size); /* Ignore->MISRA-C++:2008 Rule 5-0-5 */ + + return(uc_ret); +} /******************************************************************************* * MODULE : VehicleSensSetSpeedPulseFstG @@ -91,62 +91,62 @@ void VehicleSensInitSpeedPulseFstl(void) { * RETURN : VEHICLESENS_EQ : No data change * VEHICLESENS_NEQ : Data change ******************************************************************************/ -//u_int8 VehicleSensSetSpeedPulseFstG(const LSDRV_LSDATA_FST_SPEED *pst_data) { -// static u_int8 uc_ret = VEHICLESENS_EQ; -// VEHICLESENS_DATA_MASTER_FST *pst_master; -// -// u_int8 partition_max; /* Total number of partitions */ -// u_int8 partition_num; /* Data number */ -// -// pst_master = &gstSpeedPulseFst_l; -// -// partition_max = pst_data->uc_partition_max; -// partition_num = pst_data->uc_partition_num; -// -// if (partition_max == 1) { /* Ignore->MISRA-C++:2008 Rule 5-0-5 */ -// /* Compare data master and received data */ -// /* Ignore->MISRA-C++:2008 Rule 5-0-5 */ -// uc_ret = VehicleSensmemcmp(pst_master->uc_data, pst_data->uc_data, pst_data->uc_size); -// -// /* Received data is set in the data master. */ -// pst_master->ul_did = pst_data->ul_did; -// pst_master->us_size = pst_data->uc_size; -// pst_master->uc_rcvflag = VEHICLE_RCVFLAG_ON; -// pst_master->partition_flg = 0; -// memset(pst_master->uc_data, 0x00, sizeof(pst_master->uc_data)); -// memcpy(pst_master->uc_data, pst_data->uc_data, pst_data->uc_size); /* Ignore->MISRA-C++:2008 Rule 5-0-5 */ -// } else if (partition_max == 2) { /* Ignore->MISRA-C++:2008 Rule 5-0-5 */ -// if (partition_num == 1) { /* Ignore->MISRA-C++:2008 Rule 5-0-5 */ -// /* Compare data master and received data */ -// /* Ignore->MISRA-C++:2008 Rule 5-0-5 */ -// uc_ret = VehicleSensmemcmp(pst_master->uc_data, pst_data->uc_data, pst_data->uc_size); -// -// /* Received data is set in the data master. */ -// pst_master->ul_did = pst_data->ul_did; -// /* Ignore->MISRA-C++:2008 Rule 5-0-5 */ -// pst_master->us_size = static_cast(pst_master->us_size + pst_data->uc_size); -// pst_master->partition_flg = 1; -// memcpy(pst_master->uc_data, pst_data->uc_data, pst_data->uc_size); /* Ignore->MISRA-C++:2008 Rule 5-0-5 */ -// } else if (partition_num == 2) { /* Ignore->MISRA-C++:2008 Rule 5-0-5 */ -// /* Compare data master and received data */ -// if (uc_ret == VEHICLESENS_EQ) { -// uc_ret = VehicleSensmemcmp(&pst_master->uc_data[VEHICLE_DSIZE_SPEED_PULSE_FST], -// pst_data->uc_data, pst_data->uc_size); /* Ignore->MISRA-C++:2008 Rule 5-0-5 */ -// } -// -// /* Received data is set in the data master. */ -// pst_master->ul_did = pst_data->ul_did; -// /* Ignore->MISRA-C++:2008 Rule 5-0-5 */ -// pst_master->us_size = static_cast(pst_master->us_size + pst_data->uc_size); -// pst_master->uc_rcvflag = VEHICLE_RCVFLAG_ON; -// pst_master->partition_flg = 1; -// memcpy(&pst_master->uc_data[VEHICLE_DSIZE_SPEED_PULSE_FST], -// pst_data->uc_data, pst_data->uc_size); /* Ignore->MISRA-C++:2008 Rule 5-0-5 */ -// } else {} -// } else {} -// -// return(uc_ret); -//} +u_int8 VehicleSensSetSpeedPulseFstG(const LSDRV_LSDATA_FST_SPEED *pst_data) { + static u_int8 uc_ret = VEHICLESENS_EQ; + VEHICLESENS_DATA_MASTER_FST *pst_master; + + u_int8 partition_max; /* Total number of partitions */ + u_int8 partition_num; /* Data number */ + + pst_master = &gstSpeedPulseFst_l; + + partition_max = pst_data->uc_partition_max; + partition_num = pst_data->uc_partition_num; + + if (partition_max == 1) { /* Ignore->MISRA-C++:2008 Rule 5-0-5 */ + /* Compare data master and received data */ + /* Ignore->MISRA-C++:2008 Rule 5-0-5 */ + uc_ret = VehicleSensmemcmp(pst_master->uc_data, pst_data->uc_data, pst_data->uc_size); + + /* Received data is set in the data master. */ + pst_master->ul_did = pst_data->ul_did; + pst_master->us_size = pst_data->uc_size; + pst_master->uc_rcvflag = VEHICLE_RCVFLAG_ON; + pst_master->partition_flg = 0; + memset(pst_master->uc_data, 0x00, sizeof(pst_master->uc_data)); + memcpy(pst_master->uc_data, pst_data->uc_data, pst_data->uc_size); /* Ignore->MISRA-C++:2008 Rule 5-0-5 */ + } else if (partition_max == 2) { /* Ignore->MISRA-C++:2008 Rule 5-0-5 */ + if (partition_num == 1) { /* Ignore->MISRA-C++:2008 Rule 5-0-5 */ + /* Compare data master and received data */ + /* Ignore->MISRA-C++:2008 Rule 5-0-5 */ + uc_ret = VehicleSensmemcmp(pst_master->uc_data, pst_data->uc_data, pst_data->uc_size); + + /* Received data is set in the data master. */ + pst_master->ul_did = pst_data->ul_did; + /* Ignore->MISRA-C++:2008 Rule 5-0-5 */ + pst_master->us_size = static_cast(pst_master->us_size + pst_data->uc_size); + pst_master->partition_flg = 1; + memcpy(pst_master->uc_data, pst_data->uc_data, pst_data->uc_size); /* Ignore->MISRA-C++:2008 Rule 5-0-5 */ + } else if (partition_num == 2) { /* Ignore->MISRA-C++:2008 Rule 5-0-5 */ + /* Compare data master and received data */ + if (uc_ret == VEHICLESENS_EQ) { + uc_ret = VehicleSensmemcmp(&pst_master->uc_data[VEHICLE_DSIZE_SPEED_PULSE_FST], + pst_data->uc_data, pst_data->uc_size); /* Ignore->MISRA-C++:2008 Rule 5-0-5 */ + } + + /* Received data is set in the data master. */ + pst_master->ul_did = pst_data->ul_did; + /* Ignore->MISRA-C++:2008 Rule 5-0-5 */ + pst_master->us_size = static_cast(pst_master->us_size + pst_data->uc_size); + pst_master->uc_rcvflag = VEHICLE_RCVFLAG_ON; + pst_master->partition_flg = 1; + memcpy(&pst_master->uc_data[VEHICLE_DSIZE_SPEED_PULSE_FST], + pst_data->uc_data, pst_data->uc_size); /* Ignore->MISRA-C++:2008 Rule 5-0-5 */ + } else {} + } else {} + + return(uc_ret); +} /******************************************************************************* * MODULE : VehicleSensGetSpeedPulseFstl diff --git a/positioning/server/src/Sensor/VehicleSens_Did_SpeedPulse_l.cpp b/positioning/server/src/Sensor/VehicleSens_Did_SpeedPulse_l.cpp index 087d09b4..a3ebc013 100644 --- a/positioning/server/src/Sensor/VehicleSens_Did_SpeedPulse_l.cpp +++ b/positioning/server/src/Sensor/VehicleSens_Did_SpeedPulse_l.cpp @@ -1,5 +1,5 @@ /* - * @copyright Copyright (c) 2016-2019 TOYOTA MOTOR CORPORATION. + * @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. @@ -42,7 +42,7 @@ static VEHICLESENS_DATA_MASTER gstSpeedPulse_l; // NOLINT(readability/nolin ******************************************************************************/ void VehicleSensInitSpeedPulsel(void) { (void)memset(reinterpret_cast(&gstSpeedPulse_l), 0, sizeof(VEHICLESENS_DATA_MASTER)); -// gstSpeedPulse_l.ul_did = POSHAL_DID_SPEED_PULSE; + gstSpeedPulse_l.ul_did = POSHAL_DID_SPEED_PULSE; gstSpeedPulse_l.us_size = VEHICLE_DSIZE_SPEED_PULSE; gstSpeedPulse_l.uc_rcvflag = VEHICLE_RCVFLAG_OFF; } @@ -56,25 +56,25 @@ void VehicleSensInitSpeedPulsel(void) { * RETURN : VEHICLESENS_EQ : No data change * VEHICLESENS_NEQ : Data change ******************************************************************************/ -//u_int8 VehicleSensSetSpeedPulsel(const LSDRV_LSDATA *pst_data) { -// u_int8 uc_ret; -// VEHICLESENS_DATA_MASTER *pst_master; -// -// pst_master = &gstSpeedPulse_l; -// -// /* Compare data master and received data */ -// uc_ret = VehicleSensmemcmp(pst_master->uc_data, pst_data->uc_data, pst_data->uc_size); -// -// /* Received data is set in the data master. */ -// pst_master->ul_did = pst_data->ul_did; -// pst_master->us_size = pst_data->uc_size; -// pst_master->uc_rcvflag = VEHICLE_RCVFLAG_ON; -// pst_master->uc_snscnt = pst_data->uc_sns_cnt; -// (void)memcpy(reinterpret_cast(pst_master->uc_data), -// (const void *)(pst_data->uc_data), (size_t)(pst_data->uc_size)); -// -// return(uc_ret); -//} +u_int8 VehicleSensSetSpeedPulsel(const LSDRV_LSDATA *pst_data) { + u_int8 uc_ret; + VEHICLESENS_DATA_MASTER *pst_master; + + pst_master = &gstSpeedPulse_l; + + /* Compare data master and received data */ + uc_ret = VehicleSensmemcmp(pst_master->uc_data, pst_data->uc_data, pst_data->uc_size); + + /* Received data is set in the data master. */ + pst_master->ul_did = pst_data->ul_did; + pst_master->us_size = pst_data->uc_size; + pst_master->uc_rcvflag = VEHICLE_RCVFLAG_ON; + pst_master->uc_snscnt = pst_data->uc_sns_cnt; + (void)memcpy(reinterpret_cast(pst_master->uc_data), + (const void *)(pst_data->uc_data), (size_t)(pst_data->uc_size)); + + return(uc_ret); +} /******************************************************************************* * MODULE : VehicleSensSetSpeedPulselG @@ -85,25 +85,25 @@ void VehicleSensInitSpeedPulsel(void) { * RETURN : VEHICLESENS_EQ : No data change * VEHICLESENS_NEQ : Data change ******************************************************************************/ -//u_int8 VehicleSensSetSpeedPulselG(const LSDRV_LSDATA_G *pst_data) { -// u_int8 uc_ret; -// VEHICLESENS_DATA_MASTER *pst_master; -// -// pst_master = &gstSpeedPulse_l; -// -// /* Compare data master and received data */ -// uc_ret = VehicleSensmemcmp(pst_master->uc_data, pst_data->uc_data, pst_data->uc_size); -// -// /* Received data is set in the data master. */ -// pst_master->ul_did = pst_data->ul_did; -// pst_master->us_size = pst_data->uc_size; -// pst_master->uc_rcvflag = VEHICLE_RCVFLAG_ON; -// pst_master->uc_snscnt = pst_data->uc_sns_cnt; -// (void)memcpy(reinterpret_cast(pst_master->uc_data), -// (const void *)(pst_data->uc_data), (size_t)(pst_data->uc_size)); -// -// return(uc_ret); -//} +u_int8 VehicleSensSetSpeedPulselG(const LSDRV_LSDATA_G *pst_data) { + u_int8 uc_ret; + VEHICLESENS_DATA_MASTER *pst_master; + + pst_master = &gstSpeedPulse_l; + + /* Compare data master and received data */ + uc_ret = VehicleSensmemcmp(pst_master->uc_data, pst_data->uc_data, pst_data->uc_size); + + /* Received data is set in the data master. */ + pst_master->ul_did = pst_data->ul_did; + pst_master->us_size = pst_data->uc_size; + pst_master->uc_rcvflag = VEHICLE_RCVFLAG_ON; + pst_master->uc_snscnt = pst_data->uc_sns_cnt; + (void)memcpy(reinterpret_cast(pst_master->uc_data), + (const void *)(pst_data->uc_data), (size_t)(pst_data->uc_size)); + + return(uc_ret); +} /******************************************************************************* * MODULE : VehicleSensGetSpeedPulsel diff --git a/positioning/server/src/Sensor/VehicleSens_Did_SysGpsInterruptSignal.cpp b/positioning/server/src/Sensor/VehicleSens_Did_SysGpsInterruptSignal.cpp index d06b0e46..e1400f2a 100644 --- a/positioning/server/src/Sensor/VehicleSens_Did_SysGpsInterruptSignal.cpp +++ b/positioning/server/src/Sensor/VehicleSens_Did_SysGpsInterruptSignal.cpp @@ -1,5 +1,5 @@ /* - * @copyright Copyright (c) 2016-2019 TOYOTA MOTOR CORPORATION. + * @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. @@ -46,7 +46,7 @@ void VehicleSensInitSysGpsInterruptSignal(void) { (void)memset(reinterpret_cast(&(gstSysGpsInterruptSignal)), static_cast(0x00), sizeof(VEHICLESENS_DATA_MASTER_GPS_INTERRUPT_SIGNAL)); gstSysGpsInterruptSignal.ul_did = VEHICLE_DID_SYS_GPS_INTERRUPT_SIGNAL; -// gstSysGpsInterruptSignal.us_size = VEHICLE_DSIZE_SYS_GPS_INTERRUPT_SIGNAL; + gstSysGpsInterruptSignal.us_size = VEHICLE_DSIZE_SYS_GPS_INTERRUPT_SIGNAL; gstSysGpsInterruptSignal.uc_data = VEHICLE_DINIT_SYS_GPS_INTERRUPT_SIGNAL; #if VEHICLE_SENS_DID_SYS_GPS_INTERRUPT_SIGNAL_DEBUG_FACTORY @@ -64,45 +64,45 @@ void VehicleSensInitSysGpsInterruptSignal(void) { * RETURN : VEHICLESENS_EQ : No data change * VEHICLESENS_NEQ : Data change ******************************************************************************/ -//u_int8 VehicleSensSetSysGpsInterruptSignal(const LSDRV_MSG_LSDATA_DAT_GPS_INTERRUPT_SIGNAL *pst_data) { // LCOV_EXCL_START 8: dead code // NOLINT(whitespace/line_length) -// AGL_ASSERT_NOT_TESTED(); // LCOV_EXCL_LINE 200: test assert -// u_int8 uc_ret = VEHICLESENS_EQ; -// VEHICLESENS_DATA_MASTER_GPS_INTERRUPT_SIGNAL *pst_master; -// -// if (pst_data == NULL) { -// FRAMEWORKUNIFIEDLOG(ZONE_INFO, __FUNCTION__, "pst_data == NULL\r\n"); -// } else { -// pst_master = &gstSysGpsInterruptSignal; -// -// /* Compare data master and received data */ -// uc_ret = VehicleSensmemcmp(reinterpret_cast(&(pst_master->uc_data)), -// (const void *)(&(pst_data->uc_data)), (size_t)(pst_data->uc_size)); -// -// /* Received data is set in the data master. */ -// pst_master->ul_did = pst_data->ul_did; -// pst_master->us_size = (u_int16)pst_data->uc_size; -// pst_master->uc_rcvflag = VEHICLE_RCVFLAG_ON; -// (void)memcpy(reinterpret_cast(&(pst_master->uc_data)), -// (const void *)(&(pst_data->uc_data)), sizeof(pst_master->uc_data)); -// -//#if VEHICLE_SENS_DID_SYS_GPS_INTERRUPT_SIGNAL_DEBUG_FACTORY -// FRAMEWORKUNIFIEDLOG(ZONE_INFO, __FUNCTION__, -// "#[FACTORY] pst_data->ul_did == 0x%x", pst_data->ul_did); -// FRAMEWORKUNIFIEDLOG(ZONE_INFO, __FUNCTION__, -// "#[FACTORY] gstSysGpsInterruptSignal.ul_did == 0x%x\r\n", gstSysGpsInterruptSignal.ul_did); -// FRAMEWORKUNIFIEDLOG(ZONE_INFO, __FUNCTION__, -// "#[FACTORY] (u_int8)pst_data->ucSize == 0x%x", (u_int8)pst_data->uc_size); -// FRAMEWORKUNIFIEDLOG(ZONE_INFO, __FUNCTION__, -// "#[FACTORY] gstSysGpsInterruptSignal.us_size == 0x%x\r\n", gstSysGpsInterruptSignal.us_size); -// FRAMEWORKUNIFIEDLOG(ZONE_INFO, __FUNCTION__, -// "#[FACTORY] pst_data->uc_data == 0x%x", pst_data->uc_data); -// FRAMEWORKUNIFIEDLOG(ZONE_INFO, __FUNCTION__, -// "#[FACTORY] gstSysGpsInterruptSignal.uc_data == 0x%x\r\n", gstSysGpsInterruptSignal.uc_data); -//#endif -// } -// -// return(uc_ret); -//} +u_int8 VehicleSensSetSysGpsInterruptSignal(const LSDRV_MSG_LSDATA_DAT_GPS_INTERRUPT_SIGNAL *pst_data) { // LCOV_EXCL_START 8: dead code // NOLINT(whitespace/line_length) + AGL_ASSERT_NOT_TESTED(); // LCOV_EXCL_LINE 200: test assert + u_int8 uc_ret = VEHICLESENS_EQ; + VEHICLESENS_DATA_MASTER_GPS_INTERRUPT_SIGNAL *pst_master; + + if (pst_data == NULL) { + FRAMEWORKUNIFIEDLOG(ZONE_INFO, __FUNCTION__, "pst_data == NULL\r\n"); + } else { + pst_master = &gstSysGpsInterruptSignal; + + /* Compare data master and received data */ + uc_ret = VehicleSensmemcmp(reinterpret_cast(&(pst_master->uc_data)), + (const void *)(&(pst_data->uc_data)), (size_t)(pst_data->uc_size)); + + /* Received data is set in the data master. */ + pst_master->ul_did = pst_data->ul_did; + pst_master->us_size = (u_int16)pst_data->uc_size; + pst_master->uc_rcvflag = VEHICLE_RCVFLAG_ON; + (void)memcpy(reinterpret_cast(&(pst_master->uc_data)), + (const void *)(&(pst_data->uc_data)), sizeof(pst_master->uc_data)); + +#if VEHICLE_SENS_DID_SYS_GPS_INTERRUPT_SIGNAL_DEBUG_FACTORY + FRAMEWORKUNIFIEDLOG(ZONE_INFO, __FUNCTION__, + "#[FACTORY] pst_data->ul_did == 0x%x", pst_data->ul_did); + FRAMEWORKUNIFIEDLOG(ZONE_INFO, __FUNCTION__, + "#[FACTORY] gstSysGpsInterruptSignal.ul_did == 0x%x\r\n", gstSysGpsInterruptSignal.ul_did); + FRAMEWORKUNIFIEDLOG(ZONE_INFO, __FUNCTION__, + "#[FACTORY] (u_int8)pst_data->ucSize == 0x%x", (u_int8)pst_data->uc_size); + FRAMEWORKUNIFIEDLOG(ZONE_INFO, __FUNCTION__, + "#[FACTORY] gstSysGpsInterruptSignal.us_size == 0x%x\r\n", gstSysGpsInterruptSignal.us_size); + FRAMEWORKUNIFIEDLOG(ZONE_INFO, __FUNCTION__, + "#[FACTORY] pst_data->uc_data == 0x%x", pst_data->uc_data); + FRAMEWORKUNIFIEDLOG(ZONE_INFO, __FUNCTION__, + "#[FACTORY] gstSysGpsInterruptSignal.uc_data == 0x%x\r\n", gstSysGpsInterruptSignal.uc_data); +#endif + } + + return(uc_ret); +} /******************************************************************************* * MODULE : VehicleSensGetSysGpsInterruptSignal diff --git a/positioning/server/src/Sensor/VehicleSens_Did_WknRollover.cpp b/positioning/server/src/Sensor/VehicleSens_Did_WknRollover.cpp index 6d0f1abd..e98d364d 100644 --- a/positioning/server/src/Sensor/VehicleSens_Did_WknRollover.cpp +++ b/positioning/server/src/Sensor/VehicleSens_Did_WknRollover.cpp @@ -1,5 +1,5 @@ /* - * @copyright Copyright (c) 2016-2019 TOYOTA MOTOR CORPORATION. + * @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. @@ -36,16 +36,16 @@ * @param[out] VEHICLESENS_DATA_MASTER* * @param[in] u_int8 */ -//void VehicleSensGetWknRollover(SENSOR_MSG_GPSDATA_DAT *pst_data, u_int8 uc_get_method) { -// switch (uc_get_method) { -// case VEHICLESENS_GETMETHOD_GPS: -// { -// /** To acquire from GPS */ -// VehicleSensGetWknRolloverG(pst_data); -// break; -// } -// -// default: -// break; -// } -//} +void VehicleSensGetWknRollover(SENSOR_MSG_GPSDATA_DAT *pst_data, u_int8 uc_get_method) { + switch (uc_get_method) { + case VEHICLESENS_GETMETHOD_GPS: + { + /** To acquire from GPS */ + VehicleSensGetWknRolloverG(pst_data); + break; + } + + default: + break; + } +} diff --git a/positioning/server/src/Sensor/VehicleSens_Did_WknRollover_g.cpp b/positioning/server/src/Sensor/VehicleSens_Did_WknRollover_g.cpp index 4c868101..4a5defe3 100644 --- a/positioning/server/src/Sensor/VehicleSens_Did_WknRollover_g.cpp +++ b/positioning/server/src/Sensor/VehicleSens_Did_WknRollover_g.cpp @@ -1,5 +1,5 @@ /* - * @copyright Copyright (c) 2016-2019 TOYOTA MOTOR CORPORATION. + * @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. @@ -44,7 +44,7 @@ void VehicleSensInitWknRolloverG(void) { memset(&gstWknRollover_g, 0x00, sizeof(VEHICLESENS_DATA_MASTER)); /** Data ID setting */ -// gstWknRollover_g.ul_did = POSHAL_DID_GPS_WKNROLLOVER; + gstWknRollover_g.ul_did = POSHAL_DID_GPS_WKNROLLOVER; /** Data size setting */ gstWknRollover_g.us_size = sizeof(SENSOR_WKNROLLOVER); /** Data content setting */ @@ -72,7 +72,7 @@ u_int8 VehicleSensSetWknRolloverG(const SENSOR_WKNROLLOVER *pst_wkn_rollover) { uc_ret = VehicleSensmemcmp(pst_master->uc_data, pst_wkn_rollover, sizeof(SENSOR_WKNROLLOVER)); /** Received data is set in the data master. */ -// pst_master->ul_did = POSHAL_DID_GPS_WKNROLLOVER; + pst_master->ul_did = POSHAL_DID_GPS_WKNROLLOVER; pst_master->us_size = sizeof(SENSOR_WKNROLLOVER); pst_master->uc_rcvflag = VEHICLE_RCVFLAG_ON; memset(pst_master->uc_data, 0x00, sizeof(pst_master->uc_data)); @@ -87,16 +87,16 @@ u_int8 VehicleSensSetWknRolloverG(const SENSOR_WKNROLLOVER *pst_wkn_rollover) { * * @param[out] SENSOR_MSG_GPSDATA_DAT* */ -//void VehicleSensGetWknRolloverG(SENSOR_MSG_GPSDATA_DAT *pst_data) { -// const VEHICLESENS_DATA_MASTER *pst_master; -// -// pst_master = &gstWknRollover_g; -// -// /* Store the data master in the specified destination. */ -// pst_data->ul_did = pst_master->ul_did; -// pst_data->us_size = pst_master->us_size; -// pst_data->uc_rcv_flag = pst_master->uc_rcvflag; -// memcpy(pst_data->uc_data, pst_master->uc_data, pst_master->us_size); -// -// return; -//} +void VehicleSensGetWknRolloverG(SENSOR_MSG_GPSDATA_DAT *pst_data) { + const VEHICLESENS_DATA_MASTER *pst_master; + + pst_master = &gstWknRollover_g; + + /* Store the data master in the specified destination. */ + pst_data->ul_did = pst_master->ul_did; + pst_data->us_size = pst_master->us_size; + pst_data->uc_rcv_flag = pst_master->uc_rcvflag; + memcpy(pst_data->uc_data, pst_master->uc_data, pst_master->us_size); + + return; +} diff --git a/positioning/server/src/Sensor/VehicleSens_FromAccess.cpp b/positioning/server/src/Sensor/VehicleSens_FromAccess.cpp index c139f2d4..99f2dc34 100644 --- a/positioning/server/src/Sensor/VehicleSens_FromAccess.cpp +++ b/positioning/server/src/Sensor/VehicleSens_FromAccess.cpp @@ -1,5 +1,5 @@ /* - * @copyright Copyright (c) 2016-2019 TOYOTA MOTOR CORPORATION. + * @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. diff --git a/positioning/server/src/Sensor/VehicleSens_FromMng.cpp b/positioning/server/src/Sensor/VehicleSens_FromMng.cpp deleted file mode 100644 index e2287b08..00000000 --- a/positioning/server/src/Sensor/VehicleSens_FromMng.cpp +++ /dev/null @@ -1,148 +0,0 @@ -/* - * @copyright Copyright (c) 2016-2019 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. - */ - -/******************************************************************************* - * File name :VehicleSens_Thread.cpp - * System name :_CWORD107_ - * Subsystem name :Vehicle sensor process - * Program name :Vehicle sensor FROM control - * Module configuration :VehicleSensBackUpDataInit Vehicle sensor backup initialization processing - * :VehicleSensFromSetProc Vehicle sensor FROM SET process - * :VehicleSensFromGetProc Vehicle sensor FROM GET process - ******************************************************************************/ - -#include -#include "VehicleSens_FromMng.h" - -/*************************************************/ -/* Global variable */ -/*************************************************/ -static VEHICLESENS_NON_VOLATILE_DATA g_st_backup_data; - -/******************************************************************************* -* MODULE : VehicleSensBackUpDataInit -* ABSTRACT : Vehicle sensor backup initialization processing -* FUNCTION : Initialize the backup data. -* ARGUMENT : init_sts -* NOTE : -* RETURN : ret -******************************************************************************/ -int32 VehicleSensBackUpDataInit(int32 init_sts) { - int32 ret = SRAM_CHK_OK; - if (init_sts == INI_BUPCHK_SRAM_INIT) { - ret = VehicleSensBackupInit(); - - FRAMEWORKUNIFIEDLOG(ZONE_INFO, __FUNCTION__, "VehicleSensBackupChk SRAM_CHK\r\n"); - } else { - ret = VehicleSensBackupChk(); - - FRAMEWORKUNIFIEDLOG(ZONE_INFO, __FUNCTION__, "VehicleSensBackupChk SRAM_CHK\r\n"); - } - return ret; -} - -/******************************************************************************* -* MODULE : VehicleSensBackupInit -* ABSTRACT : Vehicle sensor backup initialization processing(Cold start) -* FUNCTION : Initialize the backup data. -* ARGUMENT : -* NOTE : -* RETURN : ret -******************************************************************************/ -int32 VehicleSensBackupInit(void) { - int32 ret = SRAM_CHK_OK; - - /* Initialize non-volatile data*/ - memset(&g_st_backup_data, 0x00, sizeof(VEHICLESENS_NON_VOLATILE_DATA)); -// g_st_backup_data.uc_hv = VEHICLE_SNS_NONHV; /* Conveyor car */ - g_st_backup_data.uc_hv_status = VEHICLESENS_FROM_STATUS_NOT_DECISION; /* Cold-start */ - /* Write to the FROM */ - return ret; -} - -/******************************************************************************* -* MODULE : VehicleSensBackupChk -* ABSTRACT : Vehicle sensor backup check process -* FUNCTION : Check the backup data -* ARGUMENT : -* NOTE : -* RETURN : ret -******************************************************************************/ -int32 VehicleSensBackupChk(void) { - int32 ret = SRAM_CHK_OK; - return ret; -} - -/******************************************************************************* -* MODULE : VehicleSensFromSetProc -* ABSTRACT : Vehicle sensor FROM SET process -* FUNCTION : Updating FROM Data. -* ARGUMENT : ul_did :Data ID -* NOTE : -* RETURN : void -******************************************************************************/ -void VehicleSensFromSetProc(DID ul_did) { - - u_int8 uc_get_method; - - - VEHICLESENS_DATA_MASTER st_master; - /* Obtain the data acquisition method.*/ - uc_get_method = VehicleSensGetSelectionItemList(ul_did); - if (VEHICLESENS_GETMETHOD_GPS < uc_get_method) { - FRAMEWORKUNIFIEDLOG(ZONE_ERR, __FUNCTION__, \ - "VEHICLESENS_DELIVERYCTRL: VehicleSensGetSelectionItemList error :%d\r\n", uc_get_method); - } - - /* Acquire the applicable data information from the data master..*/ - (void)memset (reinterpret_cast(&st_master), 0, sizeof(VEHICLESENS_DATA_MASTER)); - VehicleSensGetDataMaster(ul_did, uc_get_method, &st_master); - -// switch (ul_did) { -// case VEHICLE_DID_HV: -// { -// g_st_backup_data.uc_hv = st_master.uc_data[0]; -// g_st_backup_data.uc_hv_status = VEHICLESENS_FROM_STATUS_DECISION; -// break; -// } -// default: -// break; -// } - /* Updating FROM Data*/ -} - -/******************************************************************************* -* MODULE : VehicleSensFromGetProc -* ABSTRACT : Vehicle sensor FROM GET process -* FUNCTION : Get FROM datum. -* ARGUMENT : ul_did :Data ID -* NOTE : -* RETURN : ret -******************************************************************************/ -void VehicleSensFromGetProc(DID ul_did, VEHICLESENS_FROM_INFO *p_st_from_data) { - const VEHICLESENS_NON_VOLATILE_DATA *p_st_backup_data; - p_st_backup_data = &g_st_backup_data; -// switch (ul_did) { -// case VEHICLE_DID_HV: -// { -// p_st_from_data->uc_from_value = p_st_backup_data->uc_hv; -// p_st_from_data->uc_from_status = p_st_backup_data->uc_hv_status; -// break; -// } -// default: -// break; -// } -} diff --git a/positioning/server/src/Sensor/VehicleSens_SelectionItemList.cpp b/positioning/server/src/Sensor/VehicleSens_SelectionItemList.cpp index 6ed83125..4172b1ed 100644 --- a/positioning/server/src/Sensor/VehicleSens_SelectionItemList.cpp +++ b/positioning/server/src/Sensor/VehicleSens_SelectionItemList.cpp @@ -1,5 +1,5 @@ /* - * @copyright Copyright (c) 2016-2019 TOYOTA MOTOR CORPORATION. + * @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. @@ -28,7 +28,7 @@ * :VehicleSensCommWatchTblRun() Disruption monitoring data management table execution function ******************************************************************************/ -//#include +#include #include #include "VehicleSens_SelectionItemList.h" @@ -48,7 +48,7 @@ static VEHICLE_COMM_WATCH_TBL g_st_comm_watchtbl[VEHICLE_COMM_WATCHTBL_DID_NU * RETURN : void ******************************************************************************/ void VehicleSensInitSelectionItemList(void) { -// u_int8 uc_get_method; + u_int8 uc_get_method; VehicleSensCommWatchTblInit(); @@ -57,272 +57,215 @@ void VehicleSensInitSelectionItemList(void) { */ memset(&g_st_selection_itemlist, 0x00, sizeof(g_st_selection_itemlist)); -// g_st_selection_itemlist[0].ul_did = VEHICLE_DID_DESTINATION; -// g_st_selection_itemlist[0].ul_canid = VEHICLE_DID_BDB1S08; -// g_st_selection_itemlist[0].uc_get_method = VEHICLESENS_GETMETHOD_CAN; -// g_st_selection_itemlist[1].ul_did = VEHICLE_DID_HV; -// g_st_selection_itemlist[1].ul_canid = VEHICLESENS_INVALID; -// g_st_selection_itemlist[1].uc_get_method = VEHICLESENS_GETMETHOD_CAN; -// g_st_selection_itemlist[2].ul_did = VEHICLE_DID_2WD4WD; -// g_st_selection_itemlist[2].ul_canid = VEHICLE_DID_ENG1F03; -// g_st_selection_itemlist[2].uc_get_method = VEHICLESENS_GETMETHOD_CAN; -// g_st_selection_itemlist[2].ul_did = VEHICLE_DID_STEERING_WHEEL; -// g_st_selection_itemlist[2].ul_canid = VEHICLE_DID_BDB1S08; -// g_st_selection_itemlist[2].uc_get_method = VEHICLESENS_GETMETHOD_CAN; -// g_st_selection_itemlist[3].ul_did = VEHICLE_DID_VB; -// g_st_selection_itemlist[3].uc_get_method = VEHICLESENS_GETMETHOD_LINE; -// g_st_selection_itemlist[4].ul_did = VEHICLE_DID_IG; -// g_st_selection_itemlist[4].uc_get_method = VEHICLESENS_GETMETHOD_LINE; -// g_st_selection_itemlist[5].ul_did = VEHICLE_DID_MIC; -// g_st_selection_itemlist[5].uc_get_method = VEHICLESENS_GETMETHOD_LINE; -// g_st_selection_itemlist[6].ul_did = VEHICLE_DID_TEST; -// g_st_selection_itemlist[6].uc_get_method = VEHICLESENS_GETMETHOD_LINE; -// g_st_selection_itemlist[7].ul_did = VEHICLE_DID_VTRADAPTER; -// g_st_selection_itemlist[7].uc_get_method = VEHICLESENS_GETMETHOD_LINE; -// g_st_selection_itemlist[8].ul_did = VEHICLE_DID_AUXADAPTER; -// g_st_selection_itemlist[8].uc_get_method = VEHICLESENS_GETMETHOD_LINE; -// g_st_selection_itemlist[9].ul_did = VEHICLE_DID_BACKDOOR; -// g_st_selection_itemlist[9].ul_canid = VEHICLE_DID_BDB1S01; -// uc_get_method = VEHICLESENS_GETMETHOD_NO_DETECTION; -// g_st_selection_itemlist[9].uc_get_method = uc_get_method; -// g_st_selection_itemlist[10].ul_did = VEHICLE_DID_PKB; -// g_st_selection_itemlist[10].ul_canid = VEHICLE_DID_EPB1S01; -// uc_get_method = VEHICLESENS_GETMETHOD_NO_DETECTION; -// g_st_selection_itemlist[10].uc_get_method = uc_get_method; -// g_st_selection_itemlist[11].ul_did = VEHICLE_DID_ADIM; -// g_st_selection_itemlist[11].ul_canid = VEHICLE_DID_BDB1S01; -// uc_get_method = VEHICLESENS_GETMETHOD_NO_DETECTION; -// g_st_selection_itemlist[11].uc_get_method = uc_get_method; -// g_st_selection_itemlist[12].ul_did = VEHICLE_DID_ILL; -// g_st_selection_itemlist[12].uc_get_method = VEHICLESENS_GETMETHOD_LINE; -// g_st_selection_itemlist[13].ul_did = VEHICLE_DID_RHEOSTAT; -// g_st_selection_itemlist[13].uc_get_method = VEHICLESENS_GETMETHOD_LINE; -// g_st_selection_itemlist[14].ul_did = VEHICLE_DID_PANELTEMP; -// g_st_selection_itemlist[14].uc_get_method = VEHICLESENS_GETMETHOD_LINE; -// g_st_selection_itemlist[15].ul_did = VEHICLE_DID_SYSTEMP; -// g_st_selection_itemlist[15].uc_get_method = VEHICLESENS_GETMETHOD_LINE; -// g_st_selection_itemlist[16].ul_did = POSHAL_DID_SPEED_PULSE; -// g_st_selection_itemlist[16].uc_get_method = VEHICLESENS_GETMETHOD_LINE; -// g_st_selection_itemlist[17].ul_did = POSHAL_DID_SPEED_KMPH; -// g_st_selection_itemlist[17].uc_get_method = VEHICLESENS_GETMETHOD_LINE; -// g_st_selection_itemlist[18].ul_did = POSHAL_DID_GYRO; -// g_st_selection_itemlist[18].uc_get_method = VEHICLESENS_GETMETHOD_LINE; -// g_st_selection_itemlist[19].ul_did = POSHAL_DID_GSNS_X; -// g_st_selection_itemlist[19].uc_get_method = VEHICLESENS_GETMETHOD_LINE; -// g_st_selection_itemlist[20].ul_did = POSHAL_DID_GSNS_Y; -// g_st_selection_itemlist[20].uc_get_method = VEHICLESENS_GETMETHOD_LINE; -// g_st_selection_itemlist[21].ul_did = VEHICLE_DID_REV; -// g_st_selection_itemlist[21].ul_canid = VEHICLESENS_INVALID; -// uc_get_method = VEHICLESENS_GETMETHOD_LINE; -// g_st_selection_itemlist[21].uc_get_method = uc_get_method; -// g_st_selection_itemlist[22].ul_did = VEHICLE_DID_MINIJACK; -// g_st_selection_itemlist[22].uc_get_method = VEHICLESENS_GETMETHOD_LINE; -// g_st_selection_itemlist[23].ul_did = POSHAL_DID_GPS_ANTENNA; -// g_st_selection_itemlist[23].uc_get_method = VEHICLESENS_GETMETHOD_LINE; -// g_st_selection_itemlist[24].ul_did = POSHAL_DID_SNS_COUNTER; -// g_st_selection_itemlist[24].uc_get_method = VEHICLESENS_GETMETHOD_LINE; -// g_st_selection_itemlist[25].ul_did = VEHICLE_DID_GPS_COUNTER; -// g_st_selection_itemlist[25].uc_get_method = VEHICLESENS_GETMETHOD_GPS; -// g_st_selection_itemlist[26].ul_did = VEHICLE_DID_SIRF_BINARY; -// g_st_selection_itemlist[26].uc_get_method = VEHICLESENS_GETMETHOD_GPS; -// g_st_selection_itemlist[27].ul_did = VEHICLE_DID_RTC; -// g_st_selection_itemlist[27].uc_get_method = VEHICLESENS_GETMETHOD_GPS; -// g_st_selection_itemlist[28].ul_did = POSHAL_DID_GPS_VERSION; -// g_st_selection_itemlist[28].uc_get_method = VEHICLESENS_GETMETHOD_GPS; -// g_st_selection_itemlist[29].ul_did = VEHICLE_DID_SATELLITE_STATUS; -// g_st_selection_itemlist[29].uc_get_method = VEHICLESENS_GETMETHOD_GPS; -// g_st_selection_itemlist[30].ul_did = VEHICLE_DID_LOCATION; -// g_st_selection_itemlist[30].uc_get_method = VEHICLESENS_GETMETHOD_GPS; -// g_st_selection_itemlist[31].ul_did = VEHICLE_DID_BACKDOOR_LINE; -// g_st_selection_itemlist[31].uc_get_method = VEHICLESENS_GETMETHOD_LINE; -// g_st_selection_itemlist[32].ul_did = VEHICLE_DID_ADIM_LINE; -// g_st_selection_itemlist[32].uc_get_method = VEHICLESENS_GETMETHOD_LINE; -// g_st_selection_itemlist[33].ul_did = VEHICLE_DID_REV_LINE; -// g_st_selection_itemlist[33].uc_get_method = VEHICLESENS_GETMETHOD_LINE; -// g_st_selection_itemlist[34].ul_did = VEHICLE_DID_BACKDOOR_CAN; -// g_st_selection_itemlist[34].ul_canid = VEHICLE_DID_BDB1S01; -// g_st_selection_itemlist[34].uc_get_method = VEHICLESENS_GETMETHOD_CAN; -// g_st_selection_itemlist[35].ul_did = VEHICLE_DID_ADIM_CAN; -// g_st_selection_itemlist[35].ul_canid = VEHICLE_DID_BDB1S01; -// g_st_selection_itemlist[35].uc_get_method = VEHICLESENS_GETMETHOD_CAN; -// g_st_selection_itemlist[36].ul_did = VEHICLE_DID_REV_CAN; -// g_st_selection_itemlist[36].ul_canid = VEHICLESENS_INVALID; -// g_st_selection_itemlist[36].uc_get_method = VEHICLESENS_GETMETHOD_CAN; -// /* ++ GPS _CWORD82_ support */ -// g_st_selection_itemlist[37].ul_did = POSHAL_DID_GPS__CWORD82___CWORD44_GP4; -// g_st_selection_itemlist[37].uc_get_method = VEHICLESENS_GETMETHOD_GPS; -// g_st_selection_itemlist[38].ul_did = VEHICLE_DID_GPS__CWORD82__NMEA; -// g_st_selection_itemlist[38].uc_get_method = VEHICLESENS_GETMETHOD_GPS; -// g_st_selection_itemlist[39].ul_did = POSHAL_DID_GPS__CWORD82__FULLBINARY; -// g_st_selection_itemlist[39].uc_get_method = VEHICLESENS_GETMETHOD_GPS; -// /* -- GPS _CWORD82_ support */ -// -//#if CONFIG_SENSOR_EXT_VALID /* Initial Sensor Response */ -// g_st_selection_itemlist[40].ul_did = POSHAL_DID_GYRO_EXT; -// g_st_selection_itemlist[40].uc_get_method = VEHICLESENS_GETMETHOD_LINE; -// g_st_selection_itemlist[41].ul_did = POSHAL_DID_SPEED_PULSE_FST; -// g_st_selection_itemlist[41].uc_get_method = VEHICLESENS_GETMETHOD_LINE; -// g_st_selection_itemlist[42].ul_did = POSHAL_DID_GYRO_FST; -// g_st_selection_itemlist[42].uc_get_method = VEHICLESENS_GETMETHOD_LINE; -// /* ++ PastModel002 support */ -// g_st_selection_itemlist[43].ul_did = VEHICLE_DID_GPS_UBLOX_NAV_POSLLH; -// g_st_selection_itemlist[43].uc_get_method = VEHICLESENS_GETMETHOD_GPS; -// g_st_selection_itemlist[44].ul_did = VEHICLE_DID_GPS_UBLOX_NAV_STATUS; -// g_st_selection_itemlist[44].uc_get_method = VEHICLESENS_GETMETHOD_GPS; -// g_st_selection_itemlist[45].ul_did = VEHICLE_DID_GPS_UBLOX_NAV_TIMEUTC; -// g_st_selection_itemlist[45].uc_get_method = VEHICLESENS_GETMETHOD_GPS; -// g_st_selection_itemlist[46].ul_did = VEHICLE_DID_GPS_UBLOX_NAV_VELNED; -// g_st_selection_itemlist[46].uc_get_method = VEHICLESENS_GETMETHOD_GPS; -// g_st_selection_itemlist[47].ul_did = VEHICLE_DID_GPS_UBLOX_NAV_DOP; -// g_st_selection_itemlist[47].uc_get_method = VEHICLESENS_GETMETHOD_GPS; -// g_st_selection_itemlist[48].ul_did = VEHICLE_DID_GPS_UBLOX_NAV_TIMEGPS; -// g_st_selection_itemlist[48].uc_get_method = VEHICLESENS_GETMETHOD_GPS; -// g_st_selection_itemlist[49].ul_did = VEHICLE_DID_GPS_UBLOX_NAV_SVINFO; -// g_st_selection_itemlist[49].uc_get_method = VEHICLESENS_GETMETHOD_GPS; -// g_st_selection_itemlist[50].ul_did = VEHICLE_DID_GPS_UBLOX_NAV_CLOCK; -// g_st_selection_itemlist[50].uc_get_method = VEHICLESENS_GETMETHOD_GPS; -// g_st_selection_itemlist[51].ul_did = VEHICLE_DID_GPS_UBLOX_MON_HW; -// g_st_selection_itemlist[51].uc_get_method = VEHICLESENS_GETMETHOD_GPS; -// g_st_selection_itemlist[52].ul_did = POSHAL_DID_SPEED_PULSE_FLAG; -// g_st_selection_itemlist[52].uc_get_method = VEHICLESENS_GETMETHOD_LINE; -// -// g_st_selection_itemlist[53].ul_did = VEHICLE_DID_GYRO_TROUBLE; -// g_st_selection_itemlist[53].ul_canid = VEHICLESENS_INVALID; -// g_st_selection_itemlist[53].uc_get_method = VEHICLESENS_GETMETHOD_LINE; -// g_st_selection_itemlist[54].ul_did = VEHICLE_DID_SYS_GPS_INTERRUPT_SIGNAL; -// g_st_selection_itemlist[54].ul_canid = VEHICLESENS_INVALID; -// g_st_selection_itemlist[54].uc_get_method = VEHICLESENS_GETMETHOD_LINE; -// g_st_selection_itemlist[55].ul_did = VEHICLE_DID_MAIN_GPS_INTERRUPT_SIGNAL; -// g_st_selection_itemlist[55].ul_canid = VEHICLESENS_INVALID; -// g_st_selection_itemlist[55].uc_get_method = VEHICLESENS_GETMETHOD_LINE; -// g_st_selection_itemlist[56].ul_did = VEHICLE_DID_GYRO_CONNECT_STATUS; -// g_st_selection_itemlist[56].ul_canid = VEHICLESENS_INVALID; -// g_st_selection_itemlist[56].uc_get_method = VEHICLESENS_GETMETHOD_LINE; -// /* -- PastModel002 support */ -// g_st_selection_itemlist[57].ul_did = POSHAL_DID_SPEED_PULSE_FLAG_FST; -// g_st_selection_itemlist[57].uc_get_method = VEHICLESENS_GETMETHOD_LINE; -// g_st_selection_itemlist[58].ul_did = POSHAL_DID_REV_FST; -// g_st_selection_itemlist[58].ul_canid = VEHICLESENS_INVALID; -// uc_get_method = VEHICLESENS_GETMETHOD_LINE; -// g_st_selection_itemlist[58].uc_get_method = uc_get_method; -// -// g_st_selection_itemlist[59].ul_did = POSHAL_DID_GPS_NMEA; -// g_st_selection_itemlist[59].uc_get_method = VEHICLESENS_GETMETHOD_GPS; -// g_st_selection_itemlist[60].ul_did = POSHAL_DID_GPS_TIME; -// g_st_selection_itemlist[60].ul_canid = VEHICLESENS_INVALID; -// g_st_selection_itemlist[60].uc_get_method = VEHICLESENS_GETMETHOD_GPS; -// g_st_selection_itemlist[61].ul_did = VEHICLE_DID_NAVIINFO_DIAG_GPS; -// g_st_selection_itemlist[61].ul_canid = VEHICLESENS_INVALID; -// g_st_selection_itemlist[61].uc_get_method = VEHICLESENS_GETMETHOD_GPS; -// g_st_selection_itemlist[62].ul_did = POSHAL_DID_GYRO_TEMP; -// g_st_selection_itemlist[62].ul_canid = VEHICLESENS_INVALID; -// g_st_selection_itemlist[62].uc_get_method = VEHICLESENS_GETMETHOD_LINE; -// g_st_selection_itemlist[63].ul_did = POSHAL_DID_GYRO_TEMP_FST; -// g_st_selection_itemlist[63].ul_canid = VEHICLESENS_INVALID; -// g_st_selection_itemlist[63].uc_get_method = VEHICLESENS_GETMETHOD_LINE; -// g_st_selection_itemlist[64].ul_did = POSHAL_DID_GSNS_X_FST; -// g_st_selection_itemlist[64].ul_canid = VEHICLESENS_INVALID; -// g_st_selection_itemlist[64].uc_get_method = VEHICLESENS_GETMETHOD_LINE; -// g_st_selection_itemlist[65].ul_did = POSHAL_DID_GSNS_Y_FST; -// g_st_selection_itemlist[65].ul_canid = VEHICLESENS_INVALID; -// g_st_selection_itemlist[65].uc_get_method = VEHICLESENS_GETMETHOD_LINE; -// -// g_st_selection_itemlist[66].ul_did = VEHICLE_DID_LOCATION_LONLAT; -// g_st_selection_itemlist[66].ul_canid = VEHICLESENS_INVALID; -// g_st_selection_itemlist[66].uc_get_method = VEHICLESENS_GETMETHOD_GPS; -// g_st_selection_itemlist[67].ul_did = VEHICLE_DID_LOCATION_ALTITUDE; -// g_st_selection_itemlist[67].ul_canid = VEHICLESENS_INVALID; -// g_st_selection_itemlist[67].uc_get_method = VEHICLESENS_GETMETHOD_GPS; -// g_st_selection_itemlist[68].ul_did = VEHICLE_DID_MOTION_HEADING; -// g_st_selection_itemlist[68].ul_canid = VEHICLESENS_INVALID; -// g_st_selection_itemlist[68].uc_get_method = VEHICLESENS_GETMETHOD_GPS; -// g_st_selection_itemlist[69].ul_did = VEHICLE_DID_LOCATION_LONLAT_NAVI; -// g_st_selection_itemlist[69].ul_canid = VEHICLESENS_INVALID; -// g_st_selection_itemlist[69].uc_get_method = VEHICLESENS_GETMETHOD_NAVI; -// g_st_selection_itemlist[70].ul_did = VEHICLE_DID_LOCATION_ALTITUDE_NAVI; -// g_st_selection_itemlist[70].ul_canid = VEHICLESENS_INVALID; -// g_st_selection_itemlist[70].uc_get_method = VEHICLESENS_GETMETHOD_NAVI; -// g_st_selection_itemlist[71].ul_did = VEHICLE_DID_MOTION_HEADING_NAVI; -// g_st_selection_itemlist[71].ul_canid = VEHICLESENS_INVALID; -// g_st_selection_itemlist[71].uc_get_method = VEHICLESENS_GETMETHOD_NAVI; -// g_st_selection_itemlist[72].ul_did = VEHICLE_DID_SETTINGTIME; -// g_st_selection_itemlist[72].ul_canid = VEHICLESENS_INVALID; -// g_st_selection_itemlist[72].uc_get_method = VEHICLESENS_GETMETHOD_OTHER; -// g_st_selection_itemlist[73].ul_did = VEHICLE_DID_MOTION_SPEED; -// g_st_selection_itemlist[73].ul_canid = VEHICLESENS_INVALID; -// g_st_selection_itemlist[73].uc_get_method = VEHICLESENS_GETMETHOD_GPS; -// g_st_selection_itemlist[74].ul_did = VEHICLE_DID_MOTION_SPEED_NAVI; -// g_st_selection_itemlist[74].ul_canid = VEHICLESENS_INVALID; -// g_st_selection_itemlist[74].uc_get_method = VEHICLESENS_GETMETHOD_NAVI; -// g_st_selection_itemlist[75].ul_did = VEHICLE_DID_MOTION_SPEED_INTERNAL; -// g_st_selection_itemlist[75].ul_canid = VEHICLESENS_INVALID; -// g_st_selection_itemlist[75].uc_get_method = VEHICLESENS_GETMETHOD_INTERNAL; -// g_st_selection_itemlist[76].ul_did = POSHAL_DID_PULSE_TIME; -// g_st_selection_itemlist[76].ul_canid = VEHICLESENS_INVALID; -// g_st_selection_itemlist[76].uc_get_method = VEHICLESENS_GETMETHOD_LINE; -// g_st_selection_itemlist[77].ul_did = POSHAL_DID_GPS_TIME_RAW; -// g_st_selection_itemlist[77].ul_canid = VEHICLESENS_INVALID; -// g_st_selection_itemlist[77].uc_get_method = VEHICLESENS_GETMETHOD_GPS; -// g_st_selection_itemlist[78].ul_did = POSHAL_DID_GPS_WKNROLLOVER; -// g_st_selection_itemlist[78].ul_canid = VEHICLESENS_INVALID; -// g_st_selection_itemlist[78].uc_get_method = VEHICLESENS_GETMETHOD_GPS; -// g_st_selection_itemlist[79].ul_did = POSHAL_DID_GPS_CLOCK_DRIFT; -// g_st_selection_itemlist[79].ul_canid = VEHICLESENS_INVALID; -// g_st_selection_itemlist[79].uc_get_method = VEHICLESENS_GETMETHOD_GPS; -// g_st_selection_itemlist[80].ul_did = POSHAL_DID_GPS_CLOCK_FREQ; -// g_st_selection_itemlist[80].ul_canid = VEHICLESENS_INVALID; -// g_st_selection_itemlist[80].uc_get_method = VEHICLESENS_GETMETHOD_GPS; -// -//#else -// g_st_selection_itemlist[40].ul_did = VEHICLE_DID_GGA; -// g_st_selection_itemlist[40].uc_get_method = VEHICLESENS_GETMETHOD_GPS; -// g_st_selection_itemlist[41].ul_did = VEHICLE_DID_GLL; -// g_st_selection_itemlist[41].uc_get_method = VEHICLESENS_GETMETHOD_GPS; -// g_st_selection_itemlist[42].ul_did = VEHICLE_DID_GSA; -// g_st_selection_itemlist[42].uc_get_method = VEHICLESENS_GETMETHOD_GPS; -// g_st_selection_itemlist[43].ul_did = VEHICLE_DID_GSV; -// g_st_selection_itemlist[43].uc_get_method = VEHICLESENS_GETMETHOD_GPS; -// g_st_selection_itemlist[44].ul_did = VEHICLE_DID_RMC; -// g_st_selection_itemlist[44].uc_get_method = VEHICLESENS_GETMETHOD_GPS; -// g_st_selection_itemlist[45].ul_did = VEHICLE_DID_VTG; -// g_st_selection_itemlist[45].uc_get_method = VEHICLESENS_GETMETHOD_GPS; -// /* ++ PastModel002 support */ -// g_st_selection_itemlist[46].ul_did = VEHICLE_DID_GPS_UBLOX_NAV_POSLLH; -// g_st_selection_itemlist[46].uc_get_method = VEHICLESENS_GETMETHOD_GPS; -// g_st_selection_itemlist[47].ul_did = VEHICLE_DID_GPS_UBLOX_NAV_STATUS; -// g_st_selection_itemlist[47].uc_get_method = VEHICLESENS_GETMETHOD_GPS; -// g_st_selection_itemlist[48].ul_did = VEHICLE_DID_GPS_UBLOX_NAV_TIMEUTC; -// g_st_selection_itemlist[48].uc_get_method = VEHICLESENS_GETMETHOD_GPS; -// g_st_selection_itemlist[49].ul_did = VEHICLE_DID_GPS_UBLOX_NAV_VELNED; -// g_st_selection_itemlist[49].uc_get_method = VEHICLESENS_GETMETHOD_GPS; -// g_st_selection_itemlist[50].ul_did = VEHICLE_DID_GPS_UBLOX_NAV_DOP; -// g_st_selection_itemlist[50].uc_get_method = VEHICLESENS_GETMETHOD_GPS; -// g_st_selection_itemlist[51].ul_did = VEHICLE_DID_GPS_UBLOX_NAV_TIMEGPS; -// g_st_selection_itemlist[51].uc_get_method = VEHICLESENS_GETMETHOD_GPS; -// g_st_selection_itemlist[52].ul_did = VEHICLE_DID_GPS_UBLOX_NAV_SVINFO; -// g_st_selection_itemlist[52].uc_get_method = VEHICLESENS_GETMETHOD_GPS; -// g_st_selection_itemlist[53].ul_did = VEHICLE_DID_GPS_UBLOX_NAV_CLOCK; -// g_st_selection_itemlist[53].uc_get_method = VEHICLESENS_GETMETHOD_GPS; -// g_st_selection_itemlist[54].ul_did = VEHICLE_DID_GPS_UBLOX_MON_HW; -// g_st_selection_itemlist[54].uc_get_method = VEHICLESENS_GETMETHOD_GPS; -// g_st_selection_itemlist[55].ul_did = POSHAL_DID_SPEED_PULSE_FLAG; -// g_st_selection_itemlist[55].uc_get_method = VEHICLESENS_GETMETHOD_LINE; -// -// g_st_selection_itemlist[56].ul_did = VEHICLE_DID_GYRO_TROUBLE; -// g_st_selection_itemlist[56].ul_canid = VEHICLESENS_INVALID; -// g_st_selection_itemlist[56].uc_get_method = VEHICLESENS_GETMETHOD_LINE; -// g_st_selection_itemlist[57].ul_did = VEHICLE_DID__CWORD56__GPS_INTERRUPT_SIGNAL; -// g_st_selection_itemlist[57].ul_canid = VEHICLESENS_INVALID; -// g_st_selection_itemlist[57].uc_get_method = VEHICLESENS_GETMETHOD_LINE; -// g_st_selection_itemlist[58].ul_did = VEHICLE_DID__CWORD102__GPS_INTERRUPT_SIGNAL; -// g_st_selection_itemlist[58].ul_canid = VEHICLESENS_INVALID; -// g_st_selection_itemlist[58].uc_get_method = VEHICLESENS_GETMETHOD_LINE; -// g_st_selection_itemlist[59].ul_did = VEHICLE_DID_GYRO_CONNECT_STATUS; -// g_st_selection_itemlist[59].ul_canid = VEHICLESENS_INVALID; -// g_st_selection_itemlist[59].uc_get_method = VEHICLESENS_GETMETHOD_LINE; -// -// /* -- PastModel002 support */ -//#endif + g_st_selection_itemlist[0].ul_did = VEHICLE_DID_HV; + g_st_selection_itemlist[0].ul_canid = VEHICLESENS_INVALID; + g_st_selection_itemlist[0].uc_get_method = VEHICLESENS_GETMETHOD_CAN; + g_st_selection_itemlist[1].ul_did = VEHICLE_DID_VB; + g_st_selection_itemlist[1].uc_get_method = VEHICLESENS_GETMETHOD_LINE; + g_st_selection_itemlist[2].ul_did = VEHICLE_DID_IG; + g_st_selection_itemlist[2].uc_get_method = VEHICLESENS_GETMETHOD_LINE; + g_st_selection_itemlist[3].ul_did = VEHICLE_DID_MIC; + g_st_selection_itemlist[3].uc_get_method = VEHICLESENS_GETMETHOD_LINE; + g_st_selection_itemlist[4].ul_did = VEHICLE_DID_ILL; + g_st_selection_itemlist[4].uc_get_method = VEHICLESENS_GETMETHOD_LINE; + g_st_selection_itemlist[5].ul_did = VEHICLE_DID_RHEOSTAT; + g_st_selection_itemlist[5].uc_get_method = VEHICLESENS_GETMETHOD_LINE; + g_st_selection_itemlist[6].ul_did = VEHICLE_DID_SYSTEMP; + g_st_selection_itemlist[6].uc_get_method = VEHICLESENS_GETMETHOD_LINE; + g_st_selection_itemlist[7].ul_did = POSHAL_DID_SPEED_PULSE; + g_st_selection_itemlist[7].uc_get_method = VEHICLESENS_GETMETHOD_LINE; + g_st_selection_itemlist[8].ul_did = POSHAL_DID_SPEED_KMPH; + g_st_selection_itemlist[8].uc_get_method = VEHICLESENS_GETMETHOD_LINE; + g_st_selection_itemlist[9].ul_did = POSHAL_DID_GYRO_X; + g_st_selection_itemlist[9].uc_get_method = VEHICLESENS_GETMETHOD_LINE; + g_st_selection_itemlist[10].ul_did = POSHAL_DID_GYRO_Y; + g_st_selection_itemlist[10].uc_get_method = VEHICLESENS_GETMETHOD_LINE; + g_st_selection_itemlist[11].ul_did = POSHAL_DID_GYRO_Z; + g_st_selection_itemlist[11].uc_get_method = VEHICLESENS_GETMETHOD_LINE; + g_st_selection_itemlist[12].ul_did = POSHAL_DID_GSNS_X; + g_st_selection_itemlist[12].uc_get_method = VEHICLESENS_GETMETHOD_LINE; + g_st_selection_itemlist[13].ul_did = POSHAL_DID_GSNS_Y; + g_st_selection_itemlist[13].uc_get_method = VEHICLESENS_GETMETHOD_LINE; + g_st_selection_itemlist[14].ul_did = POSHAL_DID_GSNS_Z; + g_st_selection_itemlist[14].uc_get_method = VEHICLESENS_GETMETHOD_LINE; + g_st_selection_itemlist[15].ul_did = VEHICLE_DID_REV; + g_st_selection_itemlist[15].ul_canid = VEHICLESENS_INVALID; + uc_get_method = VEHICLESENS_GETMETHOD_LINE; + g_st_selection_itemlist[15].uc_get_method = uc_get_method; + g_st_selection_itemlist[16].ul_did = POSHAL_DID_GPS_ANTENNA; + g_st_selection_itemlist[16].uc_get_method = VEHICLESENS_GETMETHOD_LINE; + g_st_selection_itemlist[17].ul_did = POSHAL_DID_SNS_COUNTER; + g_st_selection_itemlist[17].uc_get_method = VEHICLESENS_GETMETHOD_LINE; + g_st_selection_itemlist[18].ul_did = VEHICLE_DID_GPS_COUNTER; + g_st_selection_itemlist[18].uc_get_method = VEHICLESENS_GETMETHOD_GPS; + g_st_selection_itemlist[19].ul_did = POSHAL_DID_GPS_VERSION; + g_st_selection_itemlist[19].uc_get_method = VEHICLESENS_GETMETHOD_GPS; + g_st_selection_itemlist[20].ul_did = VEHICLE_DID_LOCATION; + g_st_selection_itemlist[20].uc_get_method = VEHICLESENS_GETMETHOD_GPS; + g_st_selection_itemlist[21].ul_did = VEHICLE_DID_REV_LINE; + g_st_selection_itemlist[21].uc_get_method = VEHICLESENS_GETMETHOD_LINE; + g_st_selection_itemlist[22].ul_did = VEHICLE_DID_REV_CAN; + g_st_selection_itemlist[22].ul_canid = VEHICLESENS_INVALID; + g_st_selection_itemlist[22].uc_get_method = VEHICLESENS_GETMETHOD_CAN; + /* ++ GPS _CWORD82_ support */ + g_st_selection_itemlist[23].ul_did = POSHAL_DID_GPS__CWORD82___CWORD44_GP4; + g_st_selection_itemlist[23].uc_get_method = VEHICLESENS_GETMETHOD_GPS; + g_st_selection_itemlist[24].ul_did = VEHICLE_DID_GPS__CWORD82__NMEA; + g_st_selection_itemlist[24].uc_get_method = VEHICLESENS_GETMETHOD_GPS; + g_st_selection_itemlist[25].ul_did = POSHAL_DID_GPS__CWORD82__FULLBINARY; + g_st_selection_itemlist[25].uc_get_method = VEHICLESENS_GETMETHOD_GPS; + /* -- GPS _CWORD82_ support */ +#if CONFIG_SENSOR_EXT_VALID /* Initial Sensor Response */ + g_st_selection_itemlist[26].ul_did = POSHAL_DID_GYRO_EXT; + g_st_selection_itemlist[26].uc_get_method = VEHICLESENS_GETMETHOD_LINE; + g_st_selection_itemlist[27].ul_did = POSHAL_DID_SPEED_PULSE_FST; + g_st_selection_itemlist[27].uc_get_method = VEHICLESENS_GETMETHOD_LINE; + g_st_selection_itemlist[28].ul_did = POSHAL_DID_GYRO_X_FST; + g_st_selection_itemlist[28].uc_get_method = VEHICLESENS_GETMETHOD_LINE; + g_st_selection_itemlist[29].ul_did = POSHAL_DID_GYRO_Y_FST; + g_st_selection_itemlist[29].uc_get_method = VEHICLESENS_GETMETHOD_LINE; + g_st_selection_itemlist[30].ul_did = POSHAL_DID_GYRO_Z_FST; + g_st_selection_itemlist[30].uc_get_method = VEHICLESENS_GETMETHOD_LINE; + g_st_selection_itemlist[31].ul_did = VEHICLE_DID_GPS_UBLOX_NAV_POSLLH; + g_st_selection_itemlist[31].uc_get_method = VEHICLESENS_GETMETHOD_GPS; + g_st_selection_itemlist[32].ul_did = VEHICLE_DID_GPS_UBLOX_NAV_STATUS; + g_st_selection_itemlist[32].uc_get_method = VEHICLESENS_GETMETHOD_GPS; + g_st_selection_itemlist[33].ul_did = VEHICLE_DID_GPS_UBLOX_NAV_TIMEUTC; + g_st_selection_itemlist[33].uc_get_method = VEHICLESENS_GETMETHOD_GPS; + g_st_selection_itemlist[34].ul_did = VEHICLE_DID_GPS_UBLOX_NAV_VELNED; + g_st_selection_itemlist[34].uc_get_method = VEHICLESENS_GETMETHOD_GPS; + g_st_selection_itemlist[35].ul_did = VEHICLE_DID_GPS_UBLOX_NAV_DOP; + g_st_selection_itemlist[35].uc_get_method = VEHICLESENS_GETMETHOD_GPS; + g_st_selection_itemlist[36].ul_did = VEHICLE_DID_GPS_UBLOX_NAV_TIMEGPS; + g_st_selection_itemlist[36].uc_get_method = VEHICLESENS_GETMETHOD_GPS; + g_st_selection_itemlist[37].ul_did = VEHICLE_DID_GPS_UBLOX_NAV_SVINFO; + g_st_selection_itemlist[37].uc_get_method = VEHICLESENS_GETMETHOD_GPS; + g_st_selection_itemlist[38].ul_did = VEHICLE_DID_GPS_UBLOX_NAV_CLOCK; + g_st_selection_itemlist[38].uc_get_method = VEHICLESENS_GETMETHOD_GPS; + g_st_selection_itemlist[39].ul_did = VEHICLE_DID_GPS_UBLOX_MON_HW; + g_st_selection_itemlist[39].uc_get_method = VEHICLESENS_GETMETHOD_GPS; + g_st_selection_itemlist[40].ul_did = POSHAL_DID_SPEED_PULSE_FLAG; + g_st_selection_itemlist[40].uc_get_method = VEHICLESENS_GETMETHOD_LINE; + g_st_selection_itemlist[41].ul_did = VEHICLE_DID_GYRO_TROUBLE; + g_st_selection_itemlist[41].ul_canid = VEHICLESENS_INVALID; + g_st_selection_itemlist[41].uc_get_method = VEHICLESENS_GETMETHOD_LINE; + g_st_selection_itemlist[42].ul_did = VEHICLE_DID_SYS_GPS_INTERRUPT_SIGNAL; + g_st_selection_itemlist[42].ul_canid = VEHICLESENS_INVALID; + g_st_selection_itemlist[42].uc_get_method = VEHICLESENS_GETMETHOD_LINE; + g_st_selection_itemlist[43].ul_did = VEHICLE_DID_MAIN_GPS_INTERRUPT_SIGNAL; + g_st_selection_itemlist[43].ul_canid = VEHICLESENS_INVALID; + g_st_selection_itemlist[43].uc_get_method = VEHICLESENS_GETMETHOD_LINE; + g_st_selection_itemlist[44].ul_did = VEHICLE_DID_GYRO_CONNECT_STATUS; + g_st_selection_itemlist[44].ul_canid = VEHICLESENS_INVALID; + g_st_selection_itemlist[44].uc_get_method = VEHICLESENS_GETMETHOD_LINE; + g_st_selection_itemlist[45].ul_did = POSHAL_DID_SPEED_PULSE_FLAG_FST; + g_st_selection_itemlist[45].uc_get_method = VEHICLESENS_GETMETHOD_LINE; + g_st_selection_itemlist[46].ul_did = POSHAL_DID_REV_FST; + g_st_selection_itemlist[46].ul_canid = VEHICLESENS_INVALID; + uc_get_method = VEHICLESENS_GETMETHOD_LINE; + g_st_selection_itemlist[46].uc_get_method = uc_get_method; + g_st_selection_itemlist[47].ul_did = POSHAL_DID_GPS_NMEA; + g_st_selection_itemlist[47].uc_get_method = VEHICLESENS_GETMETHOD_GPS; + g_st_selection_itemlist[48].ul_did = POSHAL_DID_GPS_TIME; + g_st_selection_itemlist[48].ul_canid = VEHICLESENS_INVALID; + g_st_selection_itemlist[48].uc_get_method = VEHICLESENS_GETMETHOD_GPS; + g_st_selection_itemlist[49].ul_did = VEHICLE_DID_NAVIINFO_DIAG_GPS; + g_st_selection_itemlist[49].ul_canid = VEHICLESENS_INVALID; + g_st_selection_itemlist[49].uc_get_method = VEHICLESENS_GETMETHOD_GPS; + g_st_selection_itemlist[50].ul_did = POSHAL_DID_GYRO_TEMP; + g_st_selection_itemlist[50].ul_canid = VEHICLESENS_INVALID; + g_st_selection_itemlist[50].uc_get_method = VEHICLESENS_GETMETHOD_LINE; + g_st_selection_itemlist[51].ul_did = POSHAL_DID_GYRO_TEMP_FST; + g_st_selection_itemlist[51].ul_canid = VEHICLESENS_INVALID; + g_st_selection_itemlist[51].uc_get_method = VEHICLESENS_GETMETHOD_LINE; + g_st_selection_itemlist[52].ul_did = POSHAL_DID_GSNS_X_FST; + g_st_selection_itemlist[52].ul_canid = VEHICLESENS_INVALID; + g_st_selection_itemlist[52].uc_get_method = VEHICLESENS_GETMETHOD_LINE; + g_st_selection_itemlist[53].ul_did = POSHAL_DID_GSNS_Y_FST; + g_st_selection_itemlist[53].ul_canid = VEHICLESENS_INVALID; + g_st_selection_itemlist[53].uc_get_method = VEHICLESENS_GETMETHOD_LINE; + g_st_selection_itemlist[54].ul_did = POSHAL_DID_GSNS_Z_FST; + g_st_selection_itemlist[54].ul_canid = VEHICLESENS_INVALID; + g_st_selection_itemlist[54].uc_get_method = VEHICLESENS_GETMETHOD_LINE; + g_st_selection_itemlist[55].ul_did = VEHICLE_DID_LOCATION_LONLAT; + g_st_selection_itemlist[55].ul_canid = VEHICLESENS_INVALID; + g_st_selection_itemlist[55].uc_get_method = VEHICLESENS_GETMETHOD_GPS; + g_st_selection_itemlist[56].ul_did = VEHICLE_DID_LOCATION_ALTITUDE; + g_st_selection_itemlist[56].ul_canid = VEHICLESENS_INVALID; + g_st_selection_itemlist[56].uc_get_method = VEHICLESENS_GETMETHOD_GPS; + g_st_selection_itemlist[57].ul_did = VEHICLE_DID_MOTION_HEADING; + g_st_selection_itemlist[57].ul_canid = VEHICLESENS_INVALID; + g_st_selection_itemlist[57].uc_get_method = VEHICLESENS_GETMETHOD_GPS; + g_st_selection_itemlist[58].ul_did = VEHICLE_DID_LOCATION_LONLAT_NAVI; + g_st_selection_itemlist[58].ul_canid = VEHICLESENS_INVALID; + g_st_selection_itemlist[58].uc_get_method = VEHICLESENS_GETMETHOD_NAVI; + g_st_selection_itemlist[59].ul_did = VEHICLE_DID_LOCATION_ALTITUDE_NAVI; + g_st_selection_itemlist[59].ul_canid = VEHICLESENS_INVALID; + g_st_selection_itemlist[59].uc_get_method = VEHICLESENS_GETMETHOD_NAVI; + g_st_selection_itemlist[60].ul_did = VEHICLE_DID_MOTION_HEADING_NAVI; + g_st_selection_itemlist[60].ul_canid = VEHICLESENS_INVALID; + g_st_selection_itemlist[60].uc_get_method = VEHICLESENS_GETMETHOD_NAVI; + g_st_selection_itemlist[61].ul_did = VEHICLE_DID_SETTINGTIME; + g_st_selection_itemlist[61].ul_canid = VEHICLESENS_INVALID; + g_st_selection_itemlist[61].uc_get_method = VEHICLESENS_GETMETHOD_OTHER; + g_st_selection_itemlist[62].ul_did = VEHICLE_DID_MOTION_SPEED; + g_st_selection_itemlist[62].ul_canid = VEHICLESENS_INVALID; + g_st_selection_itemlist[62].uc_get_method = VEHICLESENS_GETMETHOD_GPS; + g_st_selection_itemlist[63].ul_did = VEHICLE_DID_MOTION_SPEED_NAVI; + g_st_selection_itemlist[63].ul_canid = VEHICLESENS_INVALID; + g_st_selection_itemlist[63].uc_get_method = VEHICLESENS_GETMETHOD_NAVI; + g_st_selection_itemlist[64].ul_did = VEHICLE_DID_MOTION_SPEED_INTERNAL; + g_st_selection_itemlist[64].ul_canid = VEHICLESENS_INVALID; + g_st_selection_itemlist[64].uc_get_method = VEHICLESENS_GETMETHOD_INTERNAL; + g_st_selection_itemlist[65].ul_did = POSHAL_DID_PULSE_TIME; + g_st_selection_itemlist[65].ul_canid = VEHICLESENS_INVALID; + g_st_selection_itemlist[65].uc_get_method = VEHICLESENS_GETMETHOD_LINE; + g_st_selection_itemlist[66].ul_did = POSHAL_DID_GPS_TIME_RAW; + g_st_selection_itemlist[66].ul_canid = VEHICLESENS_INVALID; + g_st_selection_itemlist[66].uc_get_method = VEHICLESENS_GETMETHOD_GPS; + g_st_selection_itemlist[67].ul_did = POSHAL_DID_GPS_WKNROLLOVER; + g_st_selection_itemlist[67].ul_canid = VEHICLESENS_INVALID; + g_st_selection_itemlist[67].uc_get_method = VEHICLESENS_GETMETHOD_GPS; + g_st_selection_itemlist[68].ul_did = POSHAL_DID_GPS_CLOCK_DRIFT; + g_st_selection_itemlist[68].ul_canid = VEHICLESENS_INVALID; + g_st_selection_itemlist[68].uc_get_method = VEHICLESENS_GETMETHOD_GPS; + g_st_selection_itemlist[69].ul_did = POSHAL_DID_GPS_CLOCK_FREQ; + g_st_selection_itemlist[69].ul_canid = VEHICLESENS_INVALID; + g_st_selection_itemlist[69].uc_get_method = VEHICLESENS_GETMETHOD_GPS; +#else + g_st_selection_itemlist[26].ul_did = VEHICLE_DID_GPS_UBLOX_NAV_POSLLH; + g_st_selection_itemlist[26].uc_get_method = VEHICLESENS_GETMETHOD_GPS; + g_st_selection_itemlist[27].ul_did = VEHICLE_DID_GPS_UBLOX_NAV_STATUS; + g_st_selection_itemlist[27].uc_get_method = VEHICLESENS_GETMETHOD_GPS; + g_st_selection_itemlist[28].ul_did = VEHICLE_DID_GPS_UBLOX_NAV_TIMEUTC; + g_st_selection_itemlist[28].uc_get_method = VEHICLESENS_GETMETHOD_GPS; + g_st_selection_itemlist[29].ul_did = VEHICLE_DID_GPS_UBLOX_NAV_VELNED; + g_st_selection_itemlist[29].uc_get_method = VEHICLESENS_GETMETHOD_GPS; + g_st_selection_itemlist[30].ul_did = VEHICLE_DID_GPS_UBLOX_NAV_DOP; + g_st_selection_itemlist[30].uc_get_method = VEHICLESENS_GETMETHOD_GPS; + g_st_selection_itemlist[31].ul_did = VEHICLE_DID_GPS_UBLOX_NAV_TIMEGPS; + g_st_selection_itemlist[31].uc_get_method = VEHICLESENS_GETMETHOD_GPS; + g_st_selection_itemlist[32].ul_did = VEHICLE_DID_GPS_UBLOX_NAV_SVINFO; + g_st_selection_itemlist[32].uc_get_method = VEHICLESENS_GETMETHOD_GPS; + g_st_selection_itemlist[33].ul_did = VEHICLE_DID_GPS_UBLOX_NAV_CLOCK; + g_st_selection_itemlist[33].uc_get_method = VEHICLESENS_GETMETHOD_GPS; + g_st_selection_itemlist[34].ul_did = VEHICLE_DID_GPS_UBLOX_MON_HW; + g_st_selection_itemlist[34].uc_get_method = VEHICLESENS_GETMETHOD_GPS; + g_st_selection_itemlist[35].ul_did = POSHAL_DID_SPEED_PULSE_FLAG; + g_st_selection_itemlist[35].uc_get_method = VEHICLESENS_GETMETHOD_LINE; + g_st_selection_itemlist[36].ul_did = VEHICLE_DID_GYRO_TROUBLE; + g_st_selection_itemlist[36].ul_canid = VEHICLESENS_INVALID; + g_st_selection_itemlist[36].uc_get_method = VEHICLESENS_GETMETHOD_LINE; + g_st_selection_itemlist[37].ul_did = VEHICLE_DID__CWORD56__GPS_INTERRUPT_SIGNAL; + g_st_selection_itemlist[37].ul_canid = VEHICLESENS_INVALID; + g_st_selection_itemlist[37].uc_get_method = VEHICLESENS_GETMETHOD_LINE; + g_st_selection_itemlist[38].ul_did = VEHICLE_DID__CWORD102__GPS_INTERRUPT_SIGNAL; + g_st_selection_itemlist[38].ul_canid = VEHICLESENS_INVALID; + g_st_selection_itemlist[38].uc_get_method = VEHICLESENS_GETMETHOD_LINE; + g_st_selection_itemlist[39].ul_did = VEHICLE_DID_GYRO_CONNECT_STATUS; + g_st_selection_itemlist[39].ul_canid = VEHICLESENS_INVALID; + g_st_selection_itemlist[39].uc_get_method = VEHICLESENS_GETMETHOD_LINE; +#endif } /******************************************************************************* @@ -449,8 +392,8 @@ void VehicleSensCommWatchTblInit(void) { memset(&g_st_comm_watchtbl, 0x00, sizeof(g_st_comm_watchtbl)); /* DID initialization */ -// g_st_comm_watchtbl[0].ul_did = VEHICLE_DID_REV; -// g_st_comm_watchtbl[1].ul_did = VEHICLE_DID_REV_CAN; + g_st_comm_watchtbl[0].ul_did = VEHICLE_DID_REV; + g_st_comm_watchtbl[1].ul_did = VEHICLE_DID_REV_CAN; } /******************************************************************************* diff --git a/positioning/server/src/Sensor/VehicleSens_SharedMemory.cpp b/positioning/server/src/Sensor/VehicleSens_SharedMemory.cpp index 94ac520d..1fc99547 100644 --- a/positioning/server/src/Sensor/VehicleSens_SharedMemory.cpp +++ b/positioning/server/src/Sensor/VehicleSens_SharedMemory.cpp @@ -1,5 +1,5 @@ /* - * @copyright Copyright (c) 2016-2019 TOYOTA MOTOR CORPORATION. + * @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. diff --git a/positioning/server/src/Sensor/VehicleSens_Thread.cpp b/positioning/server/src/Sensor/VehicleSens_Thread.cpp index bde1722f..8dc3922b 100644 --- a/positioning/server/src/Sensor/VehicleSens_Thread.cpp +++ b/positioning/server/src/Sensor/VehicleSens_Thread.cpp @@ -1,5 +1,5 @@ /* - * @copyright Copyright (c) 2016-2019 TOYOTA MOTOR CORPORATION. + * @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. @@ -41,8 +41,6 @@ #include "VehicleUtility.h" #include "VehicleSensor_Thread.h" - -//#include "MDev_Gps_Ublox.h" #include "VehicleIf.h" /*************************************************/ @@ -77,9 +75,7 @@ static inline RET_API VehicleSens_GeneratePASCDFieldSampleCount(char* pascd, siz static inline RET_API VehicleSens_GeneratePASCDFieldTimeOffsetNSpeed(char* pascd, size_t size); static inline RET_API VehicleSens_GeneratePASCDFieldChecksum(char* pascd, size_t size); static inline RET_API VehicleSens_GeneratePASCDFieldCRLF(char* pascd, size_t size); -static RET_API VehicleSens_GeneratePASCDSentence(char* pBuf, size_t size); static RET_API VehicleSens_DeriveTransmissionStateFor_CWORD27_(VEHICLESENS_TRANSMISSION_PKG* pPkg); -static RET_API VehicleSens_AddPASCDSentenceToNmeaData(char* pascd, uint8_t* pChgType); /******************************************************************************* @@ -91,22 +87,22 @@ static RET_API VehicleSens_AddPASCDSentenceToNmeaData(char* pascd, uint8_t* pChg * RETURN : ******************************************************************************/ EFrameworkunifiedStatus VehicleSensThread(HANDLE h_app) { -// RET_API ret_api = RET_NORMAL; /* Return Values of System API Functions */ -// T_APIMSG_MSGBUF_HEADER *p; /* Message header */ + RET_API ret_api = RET_NORMAL; /* Return Values of System API Functions */ + T_APIMSG_MSGBUF_HEADER *p; /* Message header */ RET_API ret_val; /* Return value of initialization processing */ VEHICLE_MSG_DELIVERY_ENTRY delivery_entry; -// static u_int8 msg_buf[sizeof(LSDRV_MSG_LSDATA_FST)]; /* message buffer */ + static u_int8 msg_buf[MAX_MSG_BUF_SIZE]; /* message buffer */ -// void* p_msg_buf = &msg_buf; -// LSDRV_MSG_LSDATA_G** p_lsdrv_msg; -// VEHICLE_MSG_BUF** p_vehicle_msg; -// POS_MSGINFO *p_pos_msg; + void* p_msg_buf = &msg_buf; + LSDRV_MSG_LSDATA_G** p_lsdrv_msg; + VEHICLE_MSG_BUF** p_vehicle_msg; + POS_MSGINFO *p_pos_msg; -// p_lsdrv_msg = reinterpret_cast(&p_msg_buf); -// p_vehicle_msg = reinterpret_cast(&p_msg_buf); + p_lsdrv_msg = reinterpret_cast(&p_msg_buf); + p_vehicle_msg = reinterpret_cast(&p_msg_buf); VehicleUtilityInitTimer(); (void)PosSetupThread(h_app, ETID_POS_MAIN); @@ -119,246 +115,246 @@ EFrameworkunifiedStatus VehicleSensThread(HANDLE h_app) { gPseudoSecClockCounter = 0u; if (RET_NORMAL == ret_val) { // LCOV_EXCL_BR_LINE 6: always be RET_NORMAL -// while (1) { -// /* Message reception processing */ -// p_msg_buf = &msg_buf; -// ret_api = _pb_RcvMsg(PNO_VEHICLE_SENSOR, sizeof(msg_buf), &p_msg_buf, RM_WAIT); -// -// /* Internal debug log output */ -// FRAMEWORKUNIFIEDLOG(ZONE_26, __FUNCTION__, -// "[ret_api = 0x%x]", -// ret_api); -// -// /* When the message is received successfully */ -// if (ret_api == RET_RCVMSG) { -// p = reinterpret_cast(p_msg_buf); -// -// switch (p->hdr.cid) { // LCOV_EXCL_BR_LINE 200: some DID is not used -// case CID_VEHICLEIF_DELIVERY_ENTRY: -// { -// memcpy(&(delivery_entry), &(p_msg_buf), sizeof(VEHICLE_MSG_DELIVERY_ENTRY)); -// -// /* Sort by received DID */ -// switch (delivery_entry.data.did) { // LCOV_EXCL_BR_LINE 200: DR DID is not used -// case VEHICLE_DID_DR_ALTITUDE : -// case VEHICLE_DID_DR_LATITUDE : -// case VEHICLE_DID_DR_SPEED : -// case VEHICLE_DID_DR_HEADING : -// case VEHICLE_DID_DR_GYRO_SCALE_FACTOR_LEVEL : -// case VEHICLE_DID_DR_SPEED_PULSE_SCALE_FACTOR_LEVEL : -// { -// // LCOV_EXCL_START 8: dead code -// AGL_ASSERT_NOT_TESTED(); // LCOV_EXCL_LINE 200: test assert -// VehicleSensDrDeliveryEntry((const VEHICLE_MSG_DELIVERY_ENTRY *)p_msg_buf); -// // LCOV_EXCL_STOP -// } -// break; -// default: -// /* Vehicle sensor information delivery registration */ -// VehicleSensDeliveryEntry((const VEHICLE_MSG_DELIVERY_ENTRY *)p_msg_buf); -// break; -// } -// break; -// } -// case CID_VEHICLEIF_GET_VEHICLE_DATA: -// { -// /* Vehicle sensor information acquisition */ -// VehicleSensGetVehicleData((const VEHICLE_MSG_GET_VEHICLE_DATA *)p_msg_buf); -// break; -// } -// case CID_LINESENS_VEHICLE_DATA: -// { -// /* LineSensor Vehicle Signal Notification */ -// VehicleSensLineSensDataDelivery((const LSDRV_MSG_LSDATA *)p_msg_buf, -// (PFUNC_DMASTER_SET_N)VehicleSensDataMasterSetN); -// break; -// } -// case CID_LINESENS_VEHICLE_DATA_G: -// { -// /* Data disruption monitoring process */ -// VehicleSensDataDisrptMonitorProc( -// (reinterpret_cast(*p_lsdrv_msg))->st_para.st_data[0].ul_did); -// VehicleSensLineSensDataDeliveryG((const LSDRV_MSG_LSDATA_G *)p_msg_buf, -// (PFUNC_DMASTER_SET_N)VehicleSensDataMasterSetN); -// break; -// } -// case CID_LINESENS_VEHICLE_DATA_GYRO_TROUBLE: -// { -// // LCOV_EXCL_START 8: dead code -// AGL_ASSERT_NOT_TESTED(); // LCOV_EXCL_LINE 200: test assert -// /* Gyro Failure Status Notification */ -// VehicleSensLineSensDataDeliveryGyroTrouble((const LSDRV_MSG_LSDATA_GYRO_TROUBLE *)p_msg_buf, -// (PFUNC_DMASTER_SET_N)VehicleSensDataMasterSetN); -// break; -// // LCOV_EXCL_STOP -// } -// case CID_LINESENS_VEHICLE_DATA_SYS_GPS_INTERRUPT_SIGNAL: -// { -// // LCOV_EXCL_START 8: dead code -// AGL_ASSERT_NOT_TESTED(); // LCOV_EXCL_LINE 200: test assert -// /* SYS GPS interrupt notification */ -// VehicleSensLineSensDataDeliverySysGpsInterruptSignal( -// (const LSDRV_MSG_LSDATA_GPS_INTERRUPT_SIGNAL *)p_msg_buf, -// (PFUNC_DMASTER_SET_SHARED_MEMORY)VehicleSensDataMasterSetSharedMemory); -// break; -// // LCOV_EXCL_STOP -// } -// case CID_LINESENS_VEHICLE_DATA_GYRO_CONNECT_STATUS: -// { -// // LCOV_EXCL_START 8: dead code -// AGL_ASSERT_NOT_TESTED(); // LCOV_EXCL_LINE 200: test assert -// /* Gyro Failure Status Notification */ -// VehicleSensLineSensDataDeliveryGyroConnectStatus( -// (const LSDRV_MSG_LSDATA_GYRO_CONNECT_STATUS *)p_msg_buf, -// (PFUNC_DMASTER_SET_SHARED_MEMORY)VehicleSensDataMasterSetSharedMemory); -// break; -// // LCOV_EXCL_STOP -// } -// case CID_LINESENS_VEHICLE_DATA_GPS_ANTENNA_STATUS: -// { -// // LCOV_EXCL_START 8: dead code -// AGL_ASSERT_NOT_TESTED(); // LCOV_EXCL_LINE 200: test assert -// /* GPS antenna failure status notification */ -// VehicleSensLineSensDataDeliveryGpsAntennaStatus( -// (const LSDRV_MSG_LSDATA_GPS_ANTENNA_STATUS *)p_msg_buf, -// (PFUNC_DMASTER_SET_N)VehicleSensDataMasterSetN); -// break; -// // LCOV_EXCL_STOP -// } -// case CID_SENSORIF_PKG_DELIVERY_ENTRY_EXT: -// { -// /* Vehicle Sensor Information Extended Package Delivery Registration */ -// VehicleSensPkgDeliveryEntryExt((const SENSOR_MSG_DELIVERY_ENTRY *)p_msg_buf); -// break; -// } -// case CID_LINESENS_VEHICLE_DATA_FST: -// { -// /* LineSensor Vehicle Initial Sensor Signal Notification */ -// VehicleSensLineSensDataDeliveryFstG((const LSDRV_MSG_LSDATA_FST *)p_msg_buf, -// (PFUNC_DMASTER_SET_N)VehicleSensDataMasterSetN); -// break; -// } -// case CID_GPS_DATA: -// { -// /* GPS information notification */ -// VehicleSensGpsDataDelivery(reinterpret_cast(p_msg_buf), -// (PFUNC_DMASTER_SET_N)VehicleSensDataMasterSetN, -// (PFUNC_DMASTER_SET_SHARED_MEMORY)VehicleSensDataMasterSetSharedMemory); -// break; -// } -// case CID_POSIF_SET_DATA: -// { -// p_pos_msg = -// reinterpret_cast((reinterpret_cast(*p_vehicle_msg))->data); -// /* Data disruption monitoring process */ -// VehicleSensDataDisrptMonitorProc(p_pos_msg->did); -// -// /* Data Setting Notification */ -// VehicleSensCommonDataDelivery((const VEHICLE_MSG_BUF *)p_msg_buf, -// (PFUNC_DMASTER_SET_N)VehicleSensDataMasterSetN); -// break; -// } -// case CID_GPS_RETTIMESETTING: -// { -// /* GPS time setting result notification */ -// VehicleSensGpsTimeDelivery((const VEHICLE_MSG_BUF *)p_msg_buf); -// break; -// } -// case CID_DEAD_RECKONING_GPS_DATA : /* GPS data distribution for DR */ -// case CID_DEAD_RECKONING_SENS_DATA : /* Sensor Data Delivery for DR */ -// case CID_DEAD_RECKONING_SENS_FST_DATA : /* Initial Sensor Data Delivery for DR */ -// { -// // LCOV_EXCL_START 8: dead code -// AGL_ASSERT_NOT_TESTED(); // LCOV_EXCL_LINE 200: test assert -// VehicleSensDrRcvMsg((const DEAD_RECKONING_RCVDATA *)p_msg_buf); -// break; -// // LCOV_EXCL_STOP -// } -// case CID_VEHICLEIF_GET_DR_DATA : -// { -// // LCOV_EXCL_START 8: dead code -// AGL_ASSERT_NOT_TESTED(); // LCOV_EXCL_LINE 200: test assert -// /* Vehicle sensor information acquisition */ -// DeadReckoningGetDRData((const DEADRECKONING_MSG_GET_DR_DATA *)p_msg_buf); -// break; -// // LCOV_EXCL_STOP -// } -// case CID_DR_MAP_MATCHING_DATA : /* Map matching information */ -// { -// // LCOV_EXCL_START 8: dead code -// AGL_ASSERT_NOT_TESTED(); // LCOV_EXCL_LINE 200: test assert -// DeadReckoningSetMapMatchingData((const DR_MSG_MAP_MATCHING_DATA *)p_msg_buf); -// break; -// // LCOV_EXCL_STOP -// } -// case CID_DR_CLEAR_BACKUP_DATA : /* Clear backup data */ -// { -// // LCOV_EXCL_START 8: dead code -// AGL_ASSERT_NOT_TESTED(); // LCOV_EXCL_LINE 200: test assert -// DeadReckoningClearBackupData((const DR_MSG_CLEAR_BACKUP_DATA*)p_msg_buf); -// break; -// // LCOV_EXCL_STOP -// } -// case CID_VEHICLEDEBUG_LOG_GET : /* Log acquisition request */ -// { -// // LCOV_EXCL_START 8: dead code -// AGL_ASSERT_NOT_TESTED(); // LCOV_EXCL_LINE 200: test assert -// VehicleSensGetLog((const VEHICLEDEBUG_MSG_BUF *)p_msg_buf); -// break; -// // LCOV_EXCL_STOP -// } -// case CID_VEHICLEDEBUG_LOG_SET : /* Log Setting Request */ -// { -// // LCOV_EXCL_START 8: dead code -// AGL_ASSERT_NOT_TESTED(); // LCOV_EXCL_LINE 200: test assert -// VehicleSensSetLog((const VEHICLEDEBUG_MSG_BUF *)p_msg_buf); -// break; -// // LCOV_EXCL_STOP -// } -// case CANINPUT_CID_LOCALTIME_NOTIFICATION : /* CAN information acquisition */ -// { -// // LCOV_EXCL_START 8: dead code -// AGL_ASSERT_NOT_TESTED(); // LCOV_EXCL_LINE 200: test assert -// VehicleSensWriteLocalTime((const CANINPUT_MSG_INFO*)p_msg_buf); -// break; -// // LCOV_EXCL_STOP -// } -// case CID_EPH_NUM_NOTIFICATION : /* Set effective ephemeris count at shutdown */ -// { -// // LCOV_EXCL_START 8: dead code -// AGL_ASSERT_NOT_TESTED(); // LCOV_EXCL_LINE 200: test assert -// VehicleSensSetEphNumSharedMemory((const SENSOR_MSG_GPSDATA *)p_msg_buf); -// break; -// // LCOV_EXCL_STOP -// } -// case CID_SENSORIF__CWORD82__REQUEST: -// { -// // LCOV_EXCL_START 8: dead code -// AGL_ASSERT_NOT_TESTED(); // LCOV_EXCL_LINE 200: test assert -// /* Requests to send GPS _CWORD82_ commands */ -// VehicleSensSetVehicleData((const VEHICLE_MSG_SEND *)p_msg_buf); -// break; -// // LCOV_EXCL_STOP -// } -// case CID_THREAD_STOP_REQ: -// { -// /* Thread stop processing */ -// VehicleSensThreadStopProcess(); -// break; -// } -// case CID_TIMER_TOUT: -// { -// /* Timeout notification reception processing */ -// VehicleSensRcvMsgTout(reinterpret_cast(p_msg_buf)); -// break; -// } -// default: -// break; -// } -// } else { -// FRAMEWORKUNIFIEDLOG(ZONE_INFO, __FUNCTION__, "ret_api != RET_RCVMSG\r\n"); -// } -// } + while (1) { + /* Message reception processing */ + p_msg_buf = &msg_buf; + ret_api = _pb_RcvMsg(PNO_VEHICLE_SENSOR, sizeof(msg_buf), &p_msg_buf, RM_WAIT); + + /* Internal debug log output */ + FRAMEWORKUNIFIEDLOG(ZONE_26, __FUNCTION__, + "[ret_api = 0x%x]", + ret_api); + + /* When the message is received successfully */ + if (ret_api == RET_RCVMSG) { + p = reinterpret_cast(p_msg_buf); + + switch (p->hdr.cid) { // LCOV_EXCL_BR_LINE 200: some DID is not used + case CID_VEHICLEIF_DELIVERY_ENTRY: + { + memcpy(&(delivery_entry), &(p_msg_buf), sizeof(VEHICLE_MSG_DELIVERY_ENTRY)); + + /* Sort by received DID */ + switch (delivery_entry.data.did) { // LCOV_EXCL_BR_LINE 200: DR DID is not used + case VEHICLE_DID_DR_ALTITUDE : + case VEHICLE_DID_DR_LATITUDE : + case VEHICLE_DID_DR_SPEED : + case VEHICLE_DID_DR_HEADING : + case VEHICLE_DID_DR_GYRO_SCALE_FACTOR_LEVEL : + case VEHICLE_DID_DR_SPEED_PULSE_SCALE_FACTOR_LEVEL : + { + // LCOV_EXCL_START 8: dead code + AGL_ASSERT_NOT_TESTED(); // LCOV_EXCL_LINE 200: test assert + VehicleSensDrDeliveryEntry((const VEHICLE_MSG_DELIVERY_ENTRY *)p_msg_buf); + // LCOV_EXCL_STOP + } + break; + default: + /* Vehicle sensor information delivery registration */ + VehicleSensDeliveryEntry((const VEHICLE_MSG_DELIVERY_ENTRY *)p_msg_buf); + break; + } + break; + } + case CID_VEHICLEIF_GET_VEHICLE_DATA: + { + /* Vehicle sensor information acquisition */ + VehicleSensGetVehicleData((const VEHICLE_MSG_GET_VEHICLE_DATA *)p_msg_buf); + break; + } + case CID_LINESENS_VEHICLE_DATA: + { + /* LineSensor Vehicle Signal Notification */ + VehicleSensLineSensDataDelivery((const LSDRV_MSG_LSDATA *)p_msg_buf, + (PFUNC_DMASTER_SET_N)VehicleSensDataMasterSetN); + break; + } + case CID_LINESENS_VEHICLE_DATA_G: + { + /* Data disruption monitoring process */ + VehicleSensDataDisrptMonitorProc( + (reinterpret_cast(*p_lsdrv_msg))->st_para.st_data[0].ul_did); + VehicleSensLineSensDataDeliveryG((const LSDRV_MSG_LSDATA_G *)p_msg_buf, + (PFUNC_DMASTER_SET_N)VehicleSensDataMasterSetN); + break; + } + case CID_LINESENS_VEHICLE_DATA_GYRO_TROUBLE: + { + // LCOV_EXCL_START 8: dead code + AGL_ASSERT_NOT_TESTED(); // LCOV_EXCL_LINE 200: test assert + /* Gyro Failure Status Notification */ + VehicleSensLineSensDataDeliveryGyroTrouble((const LSDRV_MSG_LSDATA_GYRO_TROUBLE *)p_msg_buf, + (PFUNC_DMASTER_SET_N)VehicleSensDataMasterSetN); + break; + // LCOV_EXCL_STOP + } + case CID_LINESENS_VEHICLE_DATA_SYS_GPS_INTERRUPT_SIGNAL: + { + // LCOV_EXCL_START 8: dead code + AGL_ASSERT_NOT_TESTED(); // LCOV_EXCL_LINE 200: test assert + /* SYS GPS interrupt notification */ + VehicleSensLineSensDataDeliverySysGpsInterruptSignal( + (const LSDRV_MSG_LSDATA_GPS_INTERRUPT_SIGNAL *)p_msg_buf, + (PFUNC_DMASTER_SET_SHARED_MEMORY)VehicleSensDataMasterSetSharedMemory); + break; + // LCOV_EXCL_STOP + } + case CID_LINESENS_VEHICLE_DATA_GYRO_CONNECT_STATUS: + { + // LCOV_EXCL_START 8: dead code + AGL_ASSERT_NOT_TESTED(); // LCOV_EXCL_LINE 200: test assert + /* Gyro Failure Status Notification */ + VehicleSensLineSensDataDeliveryGyroConnectStatus( + (const LSDRV_MSG_LSDATA_GYRO_CONNECT_STATUS *)p_msg_buf, + (PFUNC_DMASTER_SET_SHARED_MEMORY)VehicleSensDataMasterSetSharedMemory); + break; + // LCOV_EXCL_STOP + } + case CID_LINESENS_VEHICLE_DATA_GPS_ANTENNA_STATUS: + { + // LCOV_EXCL_START 8: dead code + AGL_ASSERT_NOT_TESTED(); // LCOV_EXCL_LINE 200: test assert + /* GPS antenna failure status notification */ + VehicleSensLineSensDataDeliveryGpsAntennaStatus( + (const LSDRV_MSG_LSDATA_GPS_ANTENNA_STATUS *)p_msg_buf, + (PFUNC_DMASTER_SET_N)VehicleSensDataMasterSetN); + break; + // LCOV_EXCL_STOP + } + case CID_SENSORIF_PKG_DELIVERY_ENTRY_EXT: + { + /* Vehicle Sensor Information Extended Package Delivery Registration */ + VehicleSensPkgDeliveryEntryExt((const SENSOR_MSG_DELIVERY_ENTRY *)p_msg_buf); + break; + } + case CID_LINESENS_VEHICLE_DATA_FST: + { + /* LineSensor Vehicle Initial Sensor Signal Notification */ + VehicleSensLineSensDataDeliveryFstG((const LSDRV_MSG_LSDATA_FST *)p_msg_buf, + (PFUNC_DMASTER_SET_N)VehicleSensDataMasterSetN); + break; + } + case CID_GPS_DATA: + { + /* GPS information notification */ + VehicleSensGpsDataDelivery(reinterpret_cast(p_msg_buf), + (PFUNC_DMASTER_SET_N)VehicleSensDataMasterSetN, + (PFUNC_DMASTER_SET_SHARED_MEMORY)VehicleSensDataMasterSetSharedMemory); + break; + } + case CID_POSIF_SET_DATA: + { + p_pos_msg = + reinterpret_cast((reinterpret_cast(*p_vehicle_msg))->data); + /* Data disruption monitoring process */ + VehicleSensDataDisrptMonitorProc(p_pos_msg->did); + + /* Data Setting Notification */ + VehicleSensCommonDataDelivery((const VEHICLE_MSG_BUF *)p_msg_buf, + (PFUNC_DMASTER_SET_N)VehicleSensDataMasterSetN); + break; + } + case CID_GPS_RETTIMESETTING: + { + /* GPS time setting result notification */ + VehicleSensGpsTimeDelivery((const VEHICLE_MSG_BUF *)p_msg_buf); + break; + } + case CID_DEAD_RECKONING_GPS_DATA : /* GPS data distribution for DR */ + case CID_DEAD_RECKONING_SENS_DATA : /* Sensor Data Delivery for DR */ + case CID_DEAD_RECKONING_SENS_FST_DATA : /* Initial Sensor Data Delivery for DR */ + { + // LCOV_EXCL_START 8: dead code + AGL_ASSERT_NOT_TESTED(); // LCOV_EXCL_LINE 200: test assert + VehicleSensDrRcvMsg((const DEAD_RECKONING_RCVDATA *)p_msg_buf); + break; + // LCOV_EXCL_STOP + } + case CID_VEHICLEIF_GET_DR_DATA : + { + // LCOV_EXCL_START 8: dead code + AGL_ASSERT_NOT_TESTED(); // LCOV_EXCL_LINE 200: test assert + /* Vehicle sensor information acquisition */ + DeadReckoningGetDRData((const DEADRECKONING_MSG_GET_DR_DATA *)p_msg_buf); + break; + // LCOV_EXCL_STOP + } + case CID_DR_MAP_MATCHING_DATA : /* Map matching information */ + { + // LCOV_EXCL_START 8: dead code + AGL_ASSERT_NOT_TESTED(); // LCOV_EXCL_LINE 200: test assert + DeadReckoningSetMapMatchingData((const DR_MSG_MAP_MATCHING_DATA *)p_msg_buf); + break; + // LCOV_EXCL_STOP + } + case CID_DR_CLEAR_BACKUP_DATA : /* Clear backup data */ + { + // LCOV_EXCL_START 8: dead code + AGL_ASSERT_NOT_TESTED(); // LCOV_EXCL_LINE 200: test assert + DeadReckoningClearBackupData((const DR_MSG_CLEAR_BACKUP_DATA*)p_msg_buf); + break; + // LCOV_EXCL_STOP + } + case CID_VEHICLEDEBUG_LOG_GET : /* Log acquisition request */ + { + // LCOV_EXCL_START 8: dead code + AGL_ASSERT_NOT_TESTED(); // LCOV_EXCL_LINE 200: test assert + VehicleSensGetLog((const VEHICLEDEBUG_MSG_BUF *)p_msg_buf); + break; + // LCOV_EXCL_STOP + } + case CID_VEHICLEDEBUG_LOG_SET : /* Log Setting Request */ + { + // LCOV_EXCL_START 8: dead code + AGL_ASSERT_NOT_TESTED(); // LCOV_EXCL_LINE 200: test assert + VehicleSensSetLog((const VEHICLEDEBUG_MSG_BUF *)p_msg_buf); + break; + // LCOV_EXCL_STOP + } + case CANINPUT_CID_LOCALTIME_NOTIFICATION : /* CAN information acquisition */ + { + // LCOV_EXCL_START 8: dead code + AGL_ASSERT_NOT_TESTED(); // LCOV_EXCL_LINE 200: test assert + VehicleSensWriteLocalTime((const CANINPUT_MSG_INFO*)p_msg_buf); + break; + // LCOV_EXCL_STOP + } + case CID_EPH_NUM_NOTIFICATION : /* Set effective ephemeris count at shutdown */ + { + // LCOV_EXCL_START 8: dead code + AGL_ASSERT_NOT_TESTED(); // LCOV_EXCL_LINE 200: test assert + VehicleSensSetEphNumSharedMemory((const SENSOR_MSG_GPSDATA *)p_msg_buf); + break; + // LCOV_EXCL_STOP + } + case CID_SENSORIF__CWORD82__REQUEST: + { + // LCOV_EXCL_START 8: dead code + AGL_ASSERT_NOT_TESTED(); // LCOV_EXCL_LINE 200: test assert + /* Requests to send GPS _CWORD82_ commands */ + VehicleSensSetVehicleData((const VEHICLE_MSG_SEND *)p_msg_buf); + break; + // LCOV_EXCL_STOP + } + case CID_THREAD_STOP_REQ: + { + /* Thread stop processing */ + VehicleSensThreadStopProcess(); + break; + } + case CID_TIMER_TOUT: + { + /* Timeout notification reception processing */ + VehicleSensRcvMsgTout(reinterpret_cast(p_msg_buf)); + break; + } + default: + break; + } + } else { + FRAMEWORKUNIFIEDLOG(ZONE_INFO, __FUNCTION__, "ret_api != RET_RCVMSG\r\n"); + } + } } else { FRAMEWORKUNIFIEDLOG(ZONE_ERR, __FUNCTION__, "VehicleSens: VehicleSens_MainThread Initial Error!! :%d", ret_val); _pb_Exit(); @@ -462,7 +458,7 @@ void VehicleSensGetVehicleData(const VEHICLE_MSG_GET_VEHICLE_DATA *msg) { int32 ret_val; int32 event_val; EventID event_id; -// SENSOR_MSG_GPSDATA_DAT gps_master; /* GPS Data Master */ + SENSOR_MSG_GPSDATA_DAT gps_master; /* GPS Data Master */ /* Check the DID */ ret_val = VehicleSensCheckDid(msg->data.did); @@ -480,24 +476,24 @@ void VehicleSensGetVehicleData(const VEHICLE_MSG_GET_VEHICLE_DATA *msg) { (msg->data.did != VEHICLE_DID_MOTION_HEADING))) { /* _CWORD71_ processing speed(Memset modification) */ /* Retrieval of the data master fails.,Initialize size to 0 to prevent unauthorized writes */ -// gps_master.us_size = 0; -// VehicleSensGetGpsDataMaster(msg->data.did, get_method, &gps_master); -// /* Check the data size */ -// if (msg->data.size < gps_master.us_size) { -// /* Shared memory error(Insufficient storage size) */ -// event_val = VEHICLE_RET_ERROR_OUTOF_MEMORY; -// } else { -// /* Write data master to shared memory */ -// PosSetShareData(share_top, -// msg->data.offset, (const void *)&gps_master.uc_data, gps_master.us_size); -// -// /* Set Successful Completion */ -// event_val = VEHICLE_RET_NORMAL; -// SensLogWriteOutputData(SENSLOG_DATA_O_UNSPECIFIED, -// msg->data.did, msg->data.pno, -// reinterpret_cast(&(gps_master.uc_data[0])), -// gps_master.us_size, SENSLOG_RES_SUCCESS); -// } + gps_master.us_size = 0; + VehicleSensGetGpsDataMaster(msg->data.did, get_method, &gps_master); + /* Check the data size */ + if (msg->data.size < gps_master.us_size) { + /* Shared memory error(Insufficient storage size) */ + event_val = VEHICLE_RET_ERROR_OUTOF_MEMORY; + } else { + /* Write data master to shared memory */ + PosSetShareData(share_top, + msg->data.offset, (const void *)&gps_master.uc_data, gps_master.us_size); + + /* Set Successful Completion */ + event_val = VEHICLE_RET_NORMAL; + SensLogWriteOutputData(SENSLOG_DATA_O_UNSPECIFIED, + msg->data.did, msg->data.pno, + reinterpret_cast(&(gps_master.uc_data[0])), + gps_master.us_size, SENSLOG_RES_SUCCESS); + } } else { (void)memset(reinterpret_cast(&master), 0, sizeof(VEHICLESENS_DATA_MASTER)); VehicleSensGetDataMaster(msg->data.did, get_method, &master); @@ -677,18 +673,18 @@ void VehicleSensGetVehiclePkgData(const SENSOR_MSG_GET_SENSOR_DATA *msg) { // L * NOTE : * RETURN : void ******************************************************************************/ -//void VehicleSensLineSensDataDelivery(const LSDRV_MSG_LSDATA *msg, PFUNC_DMASTER_SET_N p_datamaster_set_n) { -// int32 i; -// BOOL sens_ext; -// -// sens_ext = TRUE; -// -// for (i = 0; i < msg->st_para.uc_data_num; i++) { -// /* Setting Vehicle Signal Data from LineSensor as Data Master */ -// VehicleSensSetDataMasterLineSens((const LSDRV_LSDATA *) & (msg->st_para.st_data[i]), -// p_datamaster_set_n, sens_ext); -// } -//} +void VehicleSensLineSensDataDelivery(const LSDRV_MSG_LSDATA *msg, PFUNC_DMASTER_SET_N p_datamaster_set_n) { + int32 i; + BOOL sens_ext; + + sens_ext = TRUE; + + for (i = 0; i < msg->st_para.uc_data_num; i++) { + /* Setting Vehicle Signal Data from LineSensor as Data Master */ + VehicleSensSetDataMasterLineSens((const LSDRV_LSDATA *) & (msg->st_para.st_data[i]), + p_datamaster_set_n, sens_ext); + } +} /******************************************************************************* * MODULE : VehicleSensLineSensDataDeliveryG @@ -699,22 +695,22 @@ void VehicleSensGetVehiclePkgData(const SENSOR_MSG_GET_SENSOR_DATA *msg) { // L * NOTE : * RETURN : void ******************************************************************************/ -//void VehicleSensLineSensDataDeliveryG(const LSDRV_MSG_LSDATA_G *msg, PFUNC_DMASTER_SET_N p_datamaster_set_n) { -// int32 i; -// BOOL sens_ext; -// -// sens_ext = TRUE; -// if (g_sent_fst_pkg_delivery_ext == TRUE) { -// /* Initial Expansion Package Data Delivery,Without storing extended data */ -// sens_ext = FALSE; -// } -// -// for (i = 0; i < msg->st_para.uc_data_num; i++) { -// /* Setting Vehicle Signal Data from LineSensor as Data Master */ -// VehicleSensSetDataMasterLineSensG((const LSDRV_LSDATA_G *) & (msg->st_para.st_data[i]), -// p_datamaster_set_n, sens_ext); -// } -//} +void VehicleSensLineSensDataDeliveryG(const LSDRV_MSG_LSDATA_G *msg, PFUNC_DMASTER_SET_N p_datamaster_set_n) { + int32 i; + BOOL sens_ext; + + sens_ext = TRUE; + if (g_sent_fst_pkg_delivery_ext == TRUE) { + /* Initial Expansion Package Data Delivery,Without storing extended data */ + sens_ext = FALSE; + } + + for (i = 0; i < msg->st_para.uc_data_num; i++) { + /* Setting Vehicle Signal Data from LineSensor as Data Master */ + VehicleSensSetDataMasterLineSensG((const LSDRV_LSDATA_G *) & (msg->st_para.st_data[i]), + p_datamaster_set_n, sens_ext); + } +} /******************************************************************************* * MODULE : VehicleSensLineSensDataDeliveryGyroTrouble @@ -725,12 +721,12 @@ void VehicleSensGetVehiclePkgData(const SENSOR_MSG_GET_SENSOR_DATA *msg) { // L * NOTE : * RETURN : void ******************************************************************************/ -//void VehicleSensLineSensDataDeliveryGyroTrouble(const LSDRV_MSG_LSDATA_GYRO_TROUBLE *msg, PFUNC_DMASTER_SET_N p_datamaster_set_n) { // LCOV_EXCL_START 8 : dead code // NOLINT(whitespace/line_length) -// AGL_ASSERT_NOT_TESTED(); // LCOV_EXCL_LINE 200: test assert -// /* Setting Gyro Failure Status Data from LineSensor to Data Master */ -// VehicleSensSetDataMasterGyroTrouble((const LSDRV_MSG_LSDATA_DAT_GYRO_TROUBLE *)&(msg->st_para), -// p_datamaster_set_n); -//} +void VehicleSensLineSensDataDeliveryGyroTrouble(const LSDRV_MSG_LSDATA_GYRO_TROUBLE *msg, PFUNC_DMASTER_SET_N p_datamaster_set_n) { // LCOV_EXCL_START 8 : dead code // NOLINT(whitespace/line_length) + AGL_ASSERT_NOT_TESTED(); // LCOV_EXCL_LINE 200: test assert + /* Setting Gyro Failure Status Data from LineSensor to Data Master */ + VehicleSensSetDataMasterGyroTrouble((const LSDRV_MSG_LSDATA_DAT_GYRO_TROUBLE *)&(msg->st_para), + p_datamaster_set_n); +} // LCOV_EXCL_STOP /******************************************************************************* @@ -742,12 +738,12 @@ void VehicleSensGetVehiclePkgData(const SENSOR_MSG_GET_SENSOR_DATA *msg) { // L * NOTE : * RETURN : void ******************************************************************************/ -//void VehicleSensLineSensDataDeliverySysGpsInterruptSignal(const LSDRV_MSG_LSDATA_GPS_INTERRUPT_SIGNAL *msg, PFUNC_DMASTER_SET_SHARED_MEMORY p_datamaster_set_sharedmemory) { // LCOV_EXCL_START 8 :dead code // NOLINT(whitespace/line_length) -// AGL_ASSERT_NOT_TESTED(); // LCOV_EXCL_LINE 200: test assert -// /* Sets the SYS GPS interrupt data from the LineSensor to the data master. */ -// VehicleSensSetDataMasterSysGpsInterruptSignal((const LSDRV_MSG_LSDATA_DAT_GPS_INTERRUPT_SIGNAL *)&(msg->st_para), -// p_datamaster_set_sharedmemory); -//} +void VehicleSensLineSensDataDeliverySysGpsInterruptSignal(const LSDRV_MSG_LSDATA_GPS_INTERRUPT_SIGNAL *msg, PFUNC_DMASTER_SET_SHARED_MEMORY p_datamaster_set_sharedmemory) { // LCOV_EXCL_START 8 :dead code // NOLINT(whitespace/line_length) + AGL_ASSERT_NOT_TESTED(); // LCOV_EXCL_LINE 200: test assert + /* Sets the SYS GPS interrupt data from the LineSensor to the data master. */ + VehicleSensSetDataMasterSysGpsInterruptSignal((const LSDRV_MSG_LSDATA_DAT_GPS_INTERRUPT_SIGNAL *)&(msg->st_para), + p_datamaster_set_sharedmemory); +} // LCOV_EXCL_STOP /******************************************************************************* @@ -759,12 +755,12 @@ void VehicleSensGetVehiclePkgData(const SENSOR_MSG_GET_SENSOR_DATA *msg) { // L * NOTE : * RETURN : void ******************************************************************************/ -//void VehicleSensLineSensDataDeliveryGyroConnectStatus(const LSDRV_MSG_LSDATA_GYRO_CONNECT_STATUS *msg, PFUNC_DMASTER_SET_SHARED_MEMORY p_datamaster_set_sharedmemory) { // LCOV_EXCL_START 8 : dead code // NOLINT(whitespace/line_length) -// AGL_ASSERT_NOT_TESTED(); // LCOV_EXCL_LINE 200: test assert -// /* Setting Gyro Connection Status Data from LineSensor to Data Master */ -// VehicleSensSetDataMasterGyroConnectStatus((const LSDRV_MSG_LSDATA_DAT_GYRO_CONNECT_STATUS *)&(msg->st_para), -// p_datamaster_set_sharedmemory); -//} +void VehicleSensLineSensDataDeliveryGyroConnectStatus(const LSDRV_MSG_LSDATA_GYRO_CONNECT_STATUS *msg, PFUNC_DMASTER_SET_SHARED_MEMORY p_datamaster_set_sharedmemory) { // LCOV_EXCL_START 8 : dead code // NOLINT(whitespace/line_length) + AGL_ASSERT_NOT_TESTED(); // LCOV_EXCL_LINE 200: test assert + /* Setting Gyro Connection Status Data from LineSensor to Data Master */ + VehicleSensSetDataMasterGyroConnectStatus((const LSDRV_MSG_LSDATA_DAT_GYRO_CONNECT_STATUS *)&(msg->st_para), + p_datamaster_set_sharedmemory); +} // LCOV_EXCL_STOP /******************************************************************************* @@ -776,12 +772,12 @@ void VehicleSensGetVehiclePkgData(const SENSOR_MSG_GET_SENSOR_DATA *msg) { // L * NOTE : * RETURN : void ******************************************************************************/ -//void VehicleSensLineSensDataDeliveryGpsAntennaStatus(const LSDRV_MSG_LSDATA_GPS_ANTENNA_STATUS *msg, PFUNC_DMASTER_SET_N p_datamaster_set_n) { // LCOV_EXCL_START 8 : dead code // NOLINT(whitespace/line_length) -// AGL_ASSERT_NOT_TESTED(); // LCOV_EXCL_LINE 200: test assert -// /* Setting GPS Antenna Connection Status Data from LineSensor as Data Master */ -// VehicleSensSetDataMasterGpsAntennaStatus((const LSDRV_MSG_LSDATA_DAT_GPS_ANTENNA_STATUS *)&(msg->st_para), -// p_datamaster_set_n); -//} +void VehicleSensLineSensDataDeliveryGpsAntennaStatus(const LSDRV_MSG_LSDATA_GPS_ANTENNA_STATUS *msg, PFUNC_DMASTER_SET_N p_datamaster_set_n) { // LCOV_EXCL_START 8 : dead code // NOLINT(whitespace/line_length) + AGL_ASSERT_NOT_TESTED(); // LCOV_EXCL_LINE 200: test assert + /* Setting GPS Antenna Connection Status Data from LineSensor as Data Master */ + VehicleSensSetDataMasterGpsAntennaStatus((const LSDRV_MSG_LSDATA_DAT_GPS_ANTENNA_STATUS *)&(msg->st_para), + p_datamaster_set_n); +} // LCOV_EXCL_STOP #if CONFIG_SENSOR_EXT_VALID /* Initial Sensor Support */ @@ -794,9 +790,9 @@ void VehicleSensGetVehiclePkgData(const SENSOR_MSG_GET_SENSOR_DATA *msg) { // L * NOTE : * RETURN : void ******************************************************************************/ -//void VehicleSensLineSensDataDeliveryFst(const LSDRV_MSG_LSDATA_FST *msg, PFUNC_DMASTER_SET_N p_datamaster_set_n) { // LCOV_EXCL_START 8 : dead code // NOLINT(whitespace/line_length) -// AGL_ASSERT_NOT_TESTED(); // LCOV_EXCL_LINE 200: test assert -//} +void VehicleSensLineSensDataDeliveryFst(const LSDRV_MSG_LSDATA_FST *msg, PFUNC_DMASTER_SET_N p_datamaster_set_n) { // LCOV_EXCL_START 8 : dead code // NOLINT(whitespace/line_length) + AGL_ASSERT_NOT_TESTED(); // LCOV_EXCL_LINE 200: test assert +} // LCOV_EXCL_STOP #endif @@ -810,22 +806,22 @@ void VehicleSensGetVehiclePkgData(const SENSOR_MSG_GET_SENSOR_DATA *msg) { // L * NOTE : * RETURN : void ******************************************************************************/ -//void VehicleSensLineSensDataDeliveryFstG(const LSDRV_MSG_LSDATA_FST *msg, PFUNC_DMASTER_SET_N p_datamaster_set_n) { -// /* Internal debug log output */ -// FRAMEWORKUNIFIEDLOG(ZONE_26, __FUNCTION__, "+"); -// -// if (msg == NULL) { // LCOV_EXCL_BR_LINE 6:msg cannot be null -// AGL_ASSERT_NOT_TESTED(); // LCOV_EXCL_LINE 200: test assert -// FRAMEWORKUNIFIEDLOG(ZONE_INFO, __FUNCTION__, "msg == NULL\r\n"); // LCOV_EXCL_LINE 8: dead code -// } else { -// /* Set Vehicle Signal Data from LineSensor (Initial Sensor) as Data Master */ -// VehicleSensSetDataMasterLineSensFstG((const LSDRV_MSG_LSDATA_DAT_FST *) & (msg->st_para), -// p_datamaster_set_n); -// } -// -// /* Internal debug log output */ -// FRAMEWORKUNIFIEDLOG(ZONE_26, __FUNCTION__, "-"); -//} +void VehicleSensLineSensDataDeliveryFstG(const LSDRV_MSG_LSDATA_FST *msg, PFUNC_DMASTER_SET_N p_datamaster_set_n) { + /* Internal debug log output */ + FRAMEWORKUNIFIEDLOG(ZONE_26, __FUNCTION__, "+"); + + if (msg == NULL) { // LCOV_EXCL_BR_LINE 6:msg cannot be null + AGL_ASSERT_NOT_TESTED(); // LCOV_EXCL_LINE 200: test assert + FRAMEWORKUNIFIEDLOG(ZONE_INFO, __FUNCTION__, "msg == NULL\r\n"); // LCOV_EXCL_LINE 8: dead code + } else { + /* Set Vehicle Signal Data from LineSensor (Initial Sensor) as Data Master */ + VehicleSensSetDataMasterLineSensFstG((const LSDRV_MSG_LSDATA_DAT_FST *) & (msg->st_para), + p_datamaster_set_n); + } + + /* Internal debug log output */ + FRAMEWORKUNIFIEDLOG(ZONE_26, __FUNCTION__, "-"); +} #endif /******************************************************************************* @@ -838,26 +834,26 @@ void VehicleSensGetVehiclePkgData(const SENSOR_MSG_GET_SENSOR_DATA *msg) { // L * NOTE : * RETURN : void ******************************************************************************/ -//void VehicleSensGpsDataDelivery(SENSOR_MSG_GPSDATA *msg, -// PFUNC_DMASTER_SET_N p_datamaster_set_n, -// PFUNC_DMASTER_SET_SHARED_MEMORY p_datamaster_set_sharedmemory) { -// /* Setting GPS Data as Data Master */ -// if (msg->st_para.ul_did == VEHICLE_DID_MAIN_GPS_INTERRUPT_SIGNAL) { // LCOV_EXCL_BR_LINE 6:DID is not used -// // LCOV_EXCL_START 8: dead code -// AGL_ASSERT_NOT_TESTED(); // LCOV_EXCL_LINE 200: test assert -// /* [PastModel002 Specifications] GPS->_CWORD102_ interrupt or not is obtained from GPS */ -// VehicleSensSetDataMasterMainGpsInterruptSignal((const SENSOR_MSG_GPSDATA_DAT *)&(msg->st_para), -// p_datamaster_set_sharedmemory); -// // LCOV_EXCL_STOP -// } else { -// FRAMEWORKUNIFIEDLOG(ZONE_27, __FUNCTION__, -// "VehicleSensGpsDataDelivery VehicleSensSetDataMasterGps() -->"); -// VehicleSensSetDataMasterGps(reinterpret_cast(&(msg->st_para)), -// p_datamaster_set_n); -// FRAMEWORKUNIFIEDLOG(ZONE_27, __FUNCTION__, -// "VehicleSensGpsDataDelivery VehicleSensSetDataMasterGps() <--"); -// } -//} +void VehicleSensGpsDataDelivery(SENSOR_MSG_GPSDATA *msg, + PFUNC_DMASTER_SET_N p_datamaster_set_n, + PFUNC_DMASTER_SET_SHARED_MEMORY p_datamaster_set_sharedmemory) { + /* Setting GPS Data as Data Master */ + if (msg->st_para.ul_did == VEHICLE_DID_MAIN_GPS_INTERRUPT_SIGNAL) { // LCOV_EXCL_BR_LINE 6:DID is not used + // LCOV_EXCL_START 8: dead code + AGL_ASSERT_NOT_TESTED(); // LCOV_EXCL_LINE 200: test assert + /* [PastModel002 Specifications] GPS->_CWORD102_ interrupt or not is obtained from GPS */ + VehicleSensSetDataMasterMainGpsInterruptSignal((const SENSOR_MSG_GPSDATA_DAT *)&(msg->st_para), + p_datamaster_set_sharedmemory); + // LCOV_EXCL_STOP + } else { + FRAMEWORKUNIFIEDLOG(ZONE_27, __FUNCTION__, + "VehicleSensGpsDataDelivery VehicleSensSetDataMasterGps() -->"); + VehicleSensSetDataMasterGps(reinterpret_cast(&(msg->st_para)), + p_datamaster_set_n); + FRAMEWORKUNIFIEDLOG(ZONE_27, __FUNCTION__, + "VehicleSensGpsDataDelivery VehicleSensSetDataMasterGps() <--"); + } +} /******************************************************************************* * MODULE : VehicleSensDataMasterSetN @@ -871,71 +867,49 @@ void VehicleSensGetVehiclePkgData(const SENSOR_MSG_GET_SENSOR_DATA *msg) { // L ******************************************************************************/ void VehicleSensDataMasterSetN(DID did, u_int8 chg_type, u_int8 get_method) { -// /* Call the data delivery process */ -// VehicleSensDeliveryProc(did, chg_type, get_method); u_int8 chgType; chgType = chg_type; switch (did) { -// case POSHAL_DID_SPEED_KMPH: -// { -// if (ChkUnitType(UNIT_TYPE_GRADE1) == TRUE) { -// /* For creating PASCD Sentence of NMEA */ -// -// int ret; -// VEHICLESENS_VEHICLE_SPEED_DAT stVehicleSpeed; -// -// ret = clock_gettime(CLOCK_MONOTONIC, &(stVehicleSpeed.ts)); -// if (ret != 0) { -// FRAMEWORKUNIFIEDLOG(ZONE_ERR, __FUNCTION__, "clock_gettime error:%m"); -// } else { -// VEHICLESENS_DATA_MASTER stData; -// SENSORMOTION_SPEEDINFO_DAT* pSpdInfo; -// -// VehicleSensGetMotionSpeed(&stData, VEHICLESENS_GETMETHOD_INTERNAL); // LCOV_EXCL_BR_LINE 6:unexpected branch //NOLINT (whitespace/line_length) -// pSpdInfo = (SENSORMOTION_SPEEDINFO_DAT*)(stData.uc_data); -// -// stVehicleSpeed.speed = pSpdInfo->Speed; -// -// VehicleSens_StoreVehicleSpeed(&stVehicleSpeed); // LCOV_EXCL_BR_LINE 6:unexpected branch //NOLINT (whitespace/line_length) -// } -// } -// -// break; -// } -// case POSHAL_DID_GPS_NMEA: -// { -// RET_API ret; -// static char pascd[VEHICLESENS_NMEA_PASCD_LEN_MAX]; -// -// ret = VehicleSens_GeneratePASCDSentence(pascd, sizeof(pascd)); -// -//// fprintf(stderr, "PASCD,%s", pascd); // TODO 171120 -// if (ret != RET_NORMAL) { -// FRAMEWORKUNIFIEDLOG(ZONE_ERR, __FUNCTION__, -// "ERROR: VehicleSens_GeneratePASCDSentence:%d", ret); -// } else { -// ret = VehicleSens_AddPASCDSentenceToNmeaData(pascd, &chgType); -// if (ret != RET_NORMAL) { -// FRAMEWORKUNIFIEDLOG(ZONE_ERR, __FUNCTION__, -// "ERROR: VehicleSens_AddPASCDSentenceToNmeaData:%d", ret); -// } -// } -// -// VehilceSens_InitVehicleSpeed(); -// -// break; -// } + case POSHAL_DID_SPEED_KMPH: + { + if (ChkUnitType(UNIT_TYPE_GRADE1) == TRUE) { + /* For creating PASCD Sentence of NMEA */ + + int ret; + VEHICLESENS_VEHICLE_SPEED_DAT stVehicleSpeed; + + ret = clock_gettime(CLOCK_MONOTONIC, &(stVehicleSpeed.ts)); + if (ret != 0) { + FRAMEWORKUNIFIEDLOG(ZONE_ERR, __FUNCTION__, "clock_gettime error:%m"); + } else { + VEHICLESENS_DATA_MASTER stData; + SENSORMOTION_SPEEDINFO_DAT* pSpdInfo; + + VehicleSensGetMotionSpeed(&stData, VEHICLESENS_GETMETHOD_INTERNAL); // LCOV_EXCL_BR_LINE 6:unexpected branch //NOLINT (whitespace/line_length) + pSpdInfo = (SENSORMOTION_SPEEDINFO_DAT*)(stData.uc_data); + + stVehicleSpeed.speed = pSpdInfo->Speed; + + VehicleSens_StoreVehicleSpeed(&stVehicleSpeed); // LCOV_EXCL_BR_LINE 6:unexpected branch //NOLINT (whitespace/line_length) + } + } + + break; + } + case POSHAL_DID_GPS_NMEA: + { + VehilceSens_InitVehicleSpeed(); + + break; + } default: break; } /* Call the data delivery process */ VehicleSensDeliveryProc( did, chgType, get_method ); - - return; - } /******************************************************************************* @@ -966,43 +940,43 @@ void VehicleSensDataMasterSetSharedMemory(DID did, u_int8 chg_type) { // LCOV_E * RETURN : void ******************************************************************************/ void VehicleSensSetVehicleData(const VEHICLE_MSG_SEND *msg) { -// u_int16 size; /* Data length setting */ -// u_int16 all_len; /* Sent message length */ -// u_int16 mode; /* Mode information */ -// RID req_id = 0; /* Resources ID */ -// -// T_APIMSG_MSGBUF_HEADER header; /* Message header */ -// TG_GPS_SND_DATA data; /* Message body */ -// u_int8 snd_buf[(sizeof(T_APIMSG_MSGBUF_HEADER) + sizeof(TG_GPS_SND_DATA))]; -// -// /* Message header generation */ -// size = sizeof(data); -// header.signo = 0; /* Signal information */ -// header.hdr.sndpno = PNO_VEHICLE_SENSOR; /* Source thread number */ -// header.hdr.respno = 0; /* Destination process No. */ -// header.hdr.cid = CID_GPS__CWORD82__REQUEST; /* Command ID */ -// header.hdr.msgbodysize = size; /* Message data length setting */ -// header.hdr.rid = req_id; /* Resource ID Setting */ -// header.hdr.reserve = 0; /* Reserved Area Clear */ -// -// /* Message body generating */ -// data.us_size = msg->data.size; -// memcpy(&(data.ub_data[0]), &(msg->data.data[0]), msg->data.size); -// -// /* Reserved Area Clear */ -// data.reserve[0] = 0; -// data.reserve[1] = 0; -// data.reserve[2] = 0; -// data.reserve[3] = 0; -// -// /* Message generation */ -// (void)memcpy(&snd_buf[0], &header, sizeof(header)); -// (void)memcpy(&snd_buf[sizeof(header)], &data, sizeof(data)); -// all_len = static_cast(size + sizeof(header)); -// mode = 0; -// -// FRAMEWORKUNIFIEDLOG(ZONE_27, __FUNCTION__, "VehicleSensSetVehicleData NMEA = %s", data.ub_data); -// (void)_pb_SndMsg(PNO_NAVI_GPS_MAIN, all_len, reinterpret_cast(&snd_buf[0]), mode); + u_int16 size; /* Data length setting */ + u_int16 all_len; /* Sent message length */ + u_int16 mode; /* Mode information */ + RID req_id = 0; /* Resources ID */ + + T_APIMSG_MSGBUF_HEADER header; /* Message header */ + TG_GPS_SND_DATA data; /* Message body */ + u_int8 snd_buf[(sizeof(T_APIMSG_MSGBUF_HEADER) + sizeof(TG_GPS_SND_DATA))]; + + /* Message header generation */ + size = sizeof(data); + header.signo = 0; /* Signal information */ + header.hdr.sndpno = PNO_VEHICLE_SENSOR; /* Source thread number */ + header.hdr.respno = 0; /* Destination process No. */ + header.hdr.cid = CID_GPS__CWORD82__REQUEST; /* Command ID */ + header.hdr.msgbodysize = size; /* Message data length setting */ + header.hdr.rid = req_id; /* Resource ID Setting */ + header.hdr.reserve = 0; /* Reserved Area Clear */ + + /* Message body generating */ + data.us_size = msg->data.size; + memcpy(&(data.ub_data[0]), &(msg->data.data[0]), msg->data.size); + + /* Reserved Area Clear */ + data.reserve[0] = 0; + data.reserve[1] = 0; + data.reserve[2] = 0; + data.reserve[3] = 0; + + /* Message generation */ + (void)memcpy(&snd_buf[0], &header, sizeof(header)); + (void)memcpy(&snd_buf[sizeof(header)], &data, sizeof(data)); + all_len = static_cast(size + sizeof(header)); + mode = 0; + + FRAMEWORKUNIFIEDLOG(ZONE_27, __FUNCTION__, "VehicleSensSetVehicleData NMEA = %s", data.ub_data); + (void)_pb_SndMsg(PNO_NAVI_GPS_MAIN, all_len, reinterpret_cast(&snd_buf[0]), mode); } /******************************************************************************* @@ -1108,23 +1082,23 @@ void VehicleSensWriteLocalTime(const CANINPUT_MSG_INFO *msg) { // LCOV_EXCL_STA * NOTE : * RETURN : void ******************************************************************************/ -//void VehicleSensSetEphNumSharedMemory(const SENSOR_MSG_GPSDATA *msg) { // LCOV_EXCL_START 8 : dead code -// AGL_ASSERT_NOT_TESTED(); // LCOV_EXCL_LINE 200: test assert -// RET_API ret_api; -// u_int8 ephemeris_num; -// -// if (msg != NULL) { -// ephemeris_num = msg->st_para.uc_data[0]; -// -// ret_api = VehicleSensWriteDataValidEphemerisNum(ephemeris_num); -// -// if (ret_api != RET_NORMAL) { -// FRAMEWORKUNIFIEDLOG(ZONE_ERR, __FUNCTION__, "Share Memory write error."); -// } -// } -// -// return; -//} +void VehicleSensSetEphNumSharedMemory(const SENSOR_MSG_GPSDATA *msg) { // LCOV_EXCL_START 8 : dead code + AGL_ASSERT_NOT_TESTED(); // LCOV_EXCL_LINE 200: test assert + RET_API ret_api; + u_int8 ephemeris_num; + + if (msg != NULL) { + ephemeris_num = msg->st_para.uc_data[0]; + + ret_api = VehicleSensWriteDataValidEphemerisNum(ephemeris_num); + + if (ret_api != RET_NORMAL) { + FRAMEWORKUNIFIEDLOG(ZONE_ERR, __FUNCTION__, "Share Memory write error."); + } + } + + return; +} // LCOV_EXCL_STOP /******************************************************************************* @@ -1180,32 +1154,32 @@ void VehicleSensDrRcvMsg(const DEAD_RECKONING_RCVDATA * msg) { // LCOV_EXCL_ST * @retval none */ void VehicleSensCommonDataDelivery(const VEHICLE_MSG_BUF *msg, PFUNC_DMASTER_SET_N p_datamaster_set_n) { -// const POS_MSGINFO *pstPosMsg = (const POS_MSGINFO *) & (msg->data[0]); -// -// /* Individual processing for each data ID */ -// switch (pstPosMsg->did) { -// case VEHICLE_DID_SETTINGTIME: -// { -// /* By checking the evacuation message information,Determine whether the GPS time has already been set and requested */ -// if (NULL == g_wait_for_resp_set_n) { -// /* GPS time settable */ -// /* GPS time setting data transmission */ -// VehicleSensGpsTimeSndMsg(pstPosMsg); -// -// /* Save message information(Used when a response is received.)*/ -// (void)memcpy(&g_wait_for_resp_msg, msg, sizeof(VEHICLE_MSG_BUF)); -// g_wait_for_resp_set_n = p_datamaster_set_n; -// } else { -// /* GPS time setting process is already in progress:Reply BUSY to requesting processes */ -// FRAMEWORKUNIFIEDLOG(ZONE_INFO, __FUNCTION__, "SetGpsTime already."); -// } -// break; -// } -// default: -// /* Set the specified data in the data master */ -// VehicleSensSetDataMasterData((const POS_MSGINFO *)msg->data, p_datamaster_set_n); -// break; -// } + const POS_MSGINFO *pstPosMsg = (const POS_MSGINFO *) & (msg->data[0]); + + /* Individual processing for each data ID */ + switch (pstPosMsg->did) { + case VEHICLE_DID_SETTINGTIME: + { + /* By checking the evacuation message information,Determine whether the GPS time has already been set and requested */ + if (NULL == g_wait_for_resp_set_n) { + /* GPS time settable */ + /* GPS time setting data transmission */ + VehicleSensGpsTimeSndMsg(pstPosMsg); + + /* Save message information(Used when a response is received.)*/ + (void)memcpy(&g_wait_for_resp_msg, msg, sizeof(VEHICLE_MSG_BUF)); + g_wait_for_resp_set_n = p_datamaster_set_n; + } else { + /* GPS time setting process is already in progress:Reply BUSY to requesting processes */ + FRAMEWORKUNIFIEDLOG(ZONE_INFO, __FUNCTION__, "SetGpsTime already."); + } + break; + } + default: + /* Set the specified data in the data master */ + VehicleSensSetDataMasterData((const POS_MSGINFO *)msg->data, p_datamaster_set_n); + break; + } return; } @@ -1220,45 +1194,45 @@ void VehicleSensCommonDataDelivery(const VEHICLE_MSG_BUF *msg, PFUNC_DMASTER_SET * @return none * @retval none */ -//void VehicleSensGpsTimeSndMsg(const POS_MSGINFO *pos_msg) { -// RET_API ret_api = RET_NORMAL; /* System API return value */ -// u_int16 size = 0; /* Data length setting */ -// u_int16 all_len = 0; /* Sent message length */ -// u_int16 mode = 0; /* Mode information */ -// RID req_id = 0; /* Resources ID */ -// T_APIMSG_MSGBUF_HEADER header; /* Message header */ -// TG_GPS_SND_DATA data; /* Message body */ -// u_int8 snd_buf[(sizeof(T_APIMSG_MSGBUF_HEADER) + sizeof(TG_GPS_SND_DATA))]; -// -// memset(&header, 0x00, sizeof(T_APIMSG_MSGBUF_HEADER)); -// memset(&data, 0x00, sizeof(TG_GPS_SND_DATA)); -// -// /* Message header generation */ -// size = sizeof(data); -// header.signo = 0; /* Signal information */ -// header.hdr.sndpno = PNO_VEHICLE_SENSOR; /* Source thread number */ -// header.hdr.respno = 0; /* Destination process No. */ -// header.hdr.cid = CID_GPS_TIMESETTING; /* Command ID */ -// header.hdr.msgbodysize = size; /* Message data length setting */ -// header.hdr.rid = req_id; /* Resource ID Setting */ -// -// /* Message body generating */ -// data.us_size = pos_msg->size; -// memcpy(&(data.ub_data[0]), &(pos_msg->data[0]), pos_msg->size); -// -// /* Messaging */ -// (void)memcpy(&snd_buf[0], &header, sizeof(header)); -// (void)memcpy(&snd_buf[sizeof(header)], &data, sizeof(data)); -// all_len = static_cast(size + sizeof(header)); -// mode = 0; -// ret_api = _pb_SndMsg(PNO_NAVI_GPS_MAIN, all_len, reinterpret_cast(&snd_buf[0]), mode); -// if (RET_NORMAL != ret_api) { -// /* Message transmission processing failed */ -// FRAMEWORKUNIFIEDLOG(ZONE_ERR, __FUNCTION__, "send Message failed."); -// } -// -// return; -//} +void VehicleSensGpsTimeSndMsg(const POS_MSGINFO *pos_msg) { + RET_API ret_api = RET_NORMAL; /* System API return value */ + u_int16 size = 0; /* Data length setting */ + u_int16 all_len = 0; /* Sent message length */ + u_int16 mode = 0; /* Mode information */ + RID req_id = 0; /* Resources ID */ + T_APIMSG_MSGBUF_HEADER header; /* Message header */ + TG_GPS_SND_DATA data; /* Message body */ + u_int8 snd_buf[(sizeof(T_APIMSG_MSGBUF_HEADER) + sizeof(TG_GPS_SND_DATA))]; + + memset(&header, 0x00, sizeof(T_APIMSG_MSGBUF_HEADER)); + memset(&data, 0x00, sizeof(TG_GPS_SND_DATA)); + + /* Message header generation */ + size = sizeof(data); + header.signo = 0; /* Signal information */ + header.hdr.sndpno = PNO_VEHICLE_SENSOR; /* Source thread number */ + header.hdr.respno = 0; /* Destination process No. */ + header.hdr.cid = CID_GPS_TIMESETTING; /* Command ID */ + header.hdr.msgbodysize = size; /* Message data length setting */ + header.hdr.rid = req_id; /* Resource ID Setting */ + + /* Message body generating */ + data.us_size = pos_msg->size; + memcpy(&(data.ub_data[0]), &(pos_msg->data[0]), pos_msg->size); + + /* Messaging */ + (void)memcpy(&snd_buf[0], &header, sizeof(header)); + (void)memcpy(&snd_buf[sizeof(header)], &data, sizeof(data)); + all_len = static_cast(size + sizeof(header)); + mode = 0; + ret_api = _pb_SndMsg(PNO_NAVI_GPS_MAIN, all_len, reinterpret_cast(&snd_buf[0]), mode); + if (RET_NORMAL != ret_api) { + /* Message transmission processing failed */ + FRAMEWORKUNIFIEDLOG(ZONE_ERR, __FUNCTION__, "send Message failed."); + } + + return; +} /** * @brief @@ -1271,29 +1245,29 @@ void VehicleSensCommonDataDelivery(const VEHICLE_MSG_BUF *msg, PFUNC_DMASTER_SET * @retval none */ void VehicleSensGpsTimeDelivery(const VEHICLE_MSG_BUF *msg) { -// int32 event_val = POS_RET_ERROR_INNER; /* Event value */ -// const TG_GPS_RET_TIMESET_MSG *gps_ret_time; /* GPS time setting response message */ -// -// /* Determine the GPS time setting result */ -// gps_ret_time = (const TG_GPS_RET_TIMESET_MSG *)msg; -// -// if (GPS_SENDOK == gps_ret_time->status) { -// event_val = POS_RET_NORMAL; -// } else { -// event_val = POS_RET_ERROR_TIMEOUT; -// } -// -// /* Set the specified data in the data master */ -// if (POS_RET_NORMAL == event_val) { -// VehicleSensSetDataMasterData((const POS_MSGINFO *)&g_wait_for_resp_msg.data, g_wait_for_resp_set_n); -// } -// FRAMEWORKUNIFIEDLOG(ZONE_INFO, __FUNCTION__, -// "SetGpsTime Result[%d] EventVal[%d]", -// static_cast(gps_ret_time->status), static_cast(event_val)); -// -// /* Clear saved message information */ -// (void)memset(&g_wait_for_resp_msg, 0x00, sizeof(VEHICLE_MSG_BUF)); -// g_wait_for_resp_set_n = NULL; + int32 event_val = POS_RET_ERROR_INNER; /* Event value */ + const TG_GPS_RET_TIMESET_MSG *gps_ret_time; /* GPS time setting response message */ + + /* Determine the GPS time setting result */ + gps_ret_time = (const TG_GPS_RET_TIMESET_MSG *)msg; + + if (GPS_SENDOK == gps_ret_time->status) { + event_val = POS_RET_NORMAL; + } else { + event_val = POS_RET_ERROR_TIMEOUT; + } + + /* Set the specified data in the data master */ + if (POS_RET_NORMAL == event_val) { + VehicleSensSetDataMasterData((const POS_MSGINFO *)&g_wait_for_resp_msg.data, g_wait_for_resp_set_n); + } + FRAMEWORKUNIFIEDLOG(ZONE_INFO, __FUNCTION__, + "SetGpsTime Result[%d] EventVal[%d]", + static_cast(gps_ret_time->status), static_cast(event_val)); + + /* Clear saved message information */ + (void)memset(&g_wait_for_resp_msg, 0x00, sizeof(VEHICLE_MSG_BUF)); + g_wait_for_resp_set_n = NULL; return; } @@ -1380,42 +1354,45 @@ static void VehicleSensInitDataDisrptMonitor(void) { * @param[in] did Data type */ static void VehicleSensDataDisrptMonitorProc(DID did) { -// static BOOL is_rcv_sns_data = FALSE; -// -// switch (did) { -// case POSHAL_DID_GYRO: -// case POSHAL_DID_GSNS_X: -// case POSHAL_DID_GSNS_Y: -// case POSHAL_DID_SPEED_PULSE: -// case POSHAL_DID_REV: -// case POSHAL_DID_GPS_ANTENNA: -// case POSHAL_DID_GYRO_EXT: -// case POSHAL_DID_GYRO_TEMP: -// case POSHAL_DID_PULSE_TIME: -// case POSHAL_DID_SNS_COUNTER: -// { -// if (is_rcv_sns_data == FALSE) { -// /* Initial sensor data reception monitoring timer */ -// VehicleUtilityStopTimer(SNS_FST_TIMER); -// is_rcv_sns_data = TRUE; -// -// FRAMEWORKUNIFIEDLOG(ZONE_INFO, __FUNCTION__, "is_rcv_sns_data=TRUE"); -// } -// -// /* Cyclic sensor data reception monitoring timer stopped */ -// VehicleUtilityStopTimer(SNS_CYCLE_TIMER); -// /* Cyclic sensor data reception monitoring timer setting */ -// VehicleUtilitySetTimer(SNS_CYCLE_TIMER); -// /* Sensor data interruption log output timer */ -// VehicleUtilityStopTimer(SNS_DISRPT_TIMER); -// -// break; -// } -// default: -// { -// /* nop */ -// } -// } + static BOOL is_rcv_sns_data = FALSE; + + switch (did) { + case POSHAL_DID_GYRO_X: + case POSHAL_DID_GYRO_Y: + case POSHAL_DID_GYRO_Z: + case POSHAL_DID_GSNS_X: + case POSHAL_DID_GSNS_Y: + case POSHAL_DID_GSNS_Z: + case POSHAL_DID_SPEED_PULSE: + case POSHAL_DID_REV: + case POSHAL_DID_GPS_ANTENNA: + case POSHAL_DID_GYRO_EXT: + case POSHAL_DID_GYRO_TEMP: + case POSHAL_DID_PULSE_TIME: + case POSHAL_DID_SNS_COUNTER: + { + if (is_rcv_sns_data == FALSE) { + /* Initial sensor data reception monitoring timer */ + VehicleUtilityStopTimer(SNS_FST_TIMER); + is_rcv_sns_data = TRUE; + + FRAMEWORKUNIFIEDLOG(ZONE_INFO, __FUNCTION__, "is_rcv_sns_data=TRUE"); + } + + /* Cyclic sensor data reception monitoring timer stopped */ + VehicleUtilityStopTimer(SNS_CYCLE_TIMER); + /* Cyclic sensor data reception monitoring timer setting */ + VehicleUtilitySetTimer(SNS_CYCLE_TIMER); + /* Sensor data interruption log output timer */ + VehicleUtilityStopTimer(SNS_DISRPT_TIMER); + + break; + } + default: + { + /* nop */ + } + } return; } @@ -2072,137 +2049,6 @@ static inline RET_API VehicleSens_GeneratePASCDFieldCRLF(char* pascd, size_t siz return ret_api; } -/** - * @brief - * Generate PASCD Sentence (Vehicle Speed Data) - * - * @details This is for creating PASCD Sentence of NMEA.
- * You can generate PASCD Sentence. - * - * @param[in/out] char* pBuf : buffer pointer for PASCD Sentence - * @param[in] size_t size : buffer size - * - * @return RET_NORMAL : success - * @return RET_ERROR : failed - * - * @note Sample: $PASCD,86399.999,C,D,0,10,0.12,12.345,,,...,*89 - */ -static RET_API VehicleSens_GeneratePASCDSentence(char* pBuf, size_t size) { - RET_API ret_api; - - char* pWork; - - pWork = (char*)malloc(size); - if (pWork == NULL) { // LCOV_EXCL_BR_LINE 200: can not NULL - // LCOV_EXCL_START 8: invalid - AGL_ASSERT_NOT_TESTED(); // LCOV_EXCL_LINE 200: test assert - FRAMEWORKUNIFIEDLOG(ZONE_ERR, __FUNCTION__, "ERROR: malloc:%m"); - ret_api = RET_ERROR; - // LCOV_EXCL_STOP - } else { - memset(pWork, 0x00, size); - - /* Field1: $PASCD */ - ret_api = VehicleSens_GeneratePASCDFieldId(pWork, size); - if (ret_api == RET_ERROR) { // LCOV_EXCL_BR_LINE 200: can not exceed buffer size - // LCOV_EXCL_START 8: invalid - AGL_ASSERT_NOT_TESTED(); // LCOV_EXCL_LINE 200: test assert - FRAMEWORKUNIFIEDLOG(ZONE_ERR, __FUNCTION__, - "ERROR: VehicleSens_GeneratePASCDFieldId:%d", ret_api); - // LCOV_EXCL_STOP - } - - /* Field2: timestamp */ - if (ret_api != RET_ERROR) { // LCOV_EXCL_BR_LINE 200: can not exceed buffer size - ret_api = VehicleSens_GeneratePASCDFieldTimestamp(pWork, size); - if (ret_api == RET_ERROR) { // LCOV_EXCL_BR_LINE 200: can not exceed buffer size - // LCOV_EXCL_START 8: invalid - AGL_ASSERT_NOT_TESTED(); // LCOV_EXCL_LINE 200: test assert - FRAMEWORKUNIFIEDLOG(ZONE_ERR, __FUNCTION__, - "ERROR: VehicleSens_GeneratePASCDFieldTimestamp:%d", ret_api); - // LCOV_EXCL_STOP - } - } - - /* Field3: sensorType */ - if (ret_api != RET_ERROR) { // LCOV_EXCL_BR_LINE 200: can not exceed buffer size - ret_api = VehicleSens_GeneratePASCDFieldSensorType(pWork, size); - if (ret_api == RET_ERROR) { // LCOV_EXCL_BR_LINE 200: can not exceed buffer size - // LCOV_EXCL_START 8: invalid - AGL_ASSERT_NOT_TESTED(); // LCOV_EXCL_LINE 200: test assert - FRAMEWORKUNIFIEDLOG(ZONE_ERR, __FUNCTION__, - "ERROR: VehicleSens_GeneratePASCDFieldSensorType:%d", ret_api); - // LCOV_EXCL_STOP - } - } - - /* Field4: transmissionState */ - if (ret_api != RET_ERROR) { // LCOV_EXCL_BR_LINE 200: can not exceed buffer size - ret_api = VehicleSens_GeneratePASCDFieldTransmissionState(pWork, size); - if (ret_api == RET_ERROR) { // LCOV_EXCL_BR_LINE 200: can not exceed buffer size - // LCOV_EXCL_START 8: invalid - AGL_ASSERT_NOT_TESTED(); // LCOV_EXCL_LINE 200: test assert - FRAMEWORKUNIFIEDLOG(ZONE_ERR, __FUNCTION__, - "ERROR: VehicleSens_GeneratePASCDFieldTransmissionState:%d", ret_api); - // LCOV_EXCL_STOP - } - } - - /* Field5: slipDetect */ - if (ret_api != RET_ERROR) { - ret_api = VehicleSens_GeneratePASCDFieldSlipDetect(pWork, size); - if (ret_api == RET_ERROR) { - FRAMEWORKUNIFIEDLOG(ZONE_ERR, __FUNCTION__, - "ERROR: VehicleSens_GeneratePASCDFieldSlipDetect:%d", ret_api); - } - } - - /* Field6: sampleCount */ - if (ret_api != RET_ERROR) { - ret_api = VehicleSens_GeneratePASCDFieldSampleCount(pWork, size); - if (ret_api == RET_ERROR) { - FRAMEWORKUNIFIEDLOG(ZONE_ERR, __FUNCTION__, - "ERROR: VehicleSens_GeneratePASCDFieldSampleCount:%d", ret_api); - } - } - - /* Field7: timeOffset_i */ - /* Field8: speed_i */ - if (ret_api != RET_ERROR) { - ret_api = VehicleSens_GeneratePASCDFieldTimeOffsetNSpeed(pWork, size); - if (ret_api == RET_ERROR) { - FRAMEWORKUNIFIEDLOG(ZONE_ERR, __FUNCTION__, - "ERROR: VehicleSens_GeneratePASCDFieldTimeOffsetNSpeed:%d", ret_api); - } - } - - /* Field9: Checksum */ - if (ret_api != RET_ERROR) { - ret_api = VehicleSens_GeneratePASCDFieldChecksum(pWork, size); - if (ret_api == RET_ERROR) { - FRAMEWORKUNIFIEDLOG(ZONE_ERR, __FUNCTION__, - "ERROR: VehicleSens_GeneratePASCDFieldChecksum:%d", ret_api); - } - } - - /* Field10: CRLF */ - if (ret_api != RET_ERROR) { - ret_api = VehicleSens_GeneratePASCDFieldCRLF(pWork, size); - if (ret_api == RET_ERROR) { - FRAMEWORKUNIFIEDLOG(ZONE_ERR, __FUNCTION__, - "ERROR: VehicleSens_GeneratePASCDFieldCRLF:%d", ret_api); - } - } - - /* Set Generated PASCD Sentence to the given buffer */ - memcpy(pBuf, pWork, size); - - free(pWork); - } - - return ret_api; -} - /** * @brief * Derive Transmission State For _CWORD27_ @@ -2296,74 +2142,3 @@ static RET_API VehicleSens_DeriveTransmissionStateFor_CWORD27_(VEHICLESENS_TRANS return ret_api; } - -/** - * @brief - * Add PASCD Sentence To NMEA Data of DataMaster - * - * @details This function add the PASCD Sentence to the structure of
- * master data of NMEA information. - * - * @param[in/out] char* pBuf : buffer pointer for PASCD Sentence - * @param[in] uint8_t* pChgType : changed or not - * - * @return RET_NORMAL : success - * @return RET_ERROR : failed - */ -static RET_API VehicleSens_AddPASCDSentenceToNmeaData(char* pascd, uint8_t* pChgType) { - RET_API ret_api = RET_ERROR; -// SENSOR_MSG_GPSDATA_DAT stGpsMaster; -// MDEV_GPS_NMEA* pNmea; -// TG_GPS_NMEA_INFO* pNmeaHdr; -// int32_t i; -// uint8_t size; -// uint16_t offset; -// uint16_t eod = 0; /* offset to the end of data */ -// size_t length; -// -// /* Get present NMEA data as base */ -// VehicleSensGetGpsDataMaster(POSHAL_DID_GPS_NMEA, VEHICLESENS_GETMETHOD_GPS, &stGpsMaster); -// -// pNmea = (MDEV_GPS_NMEA*)(stGpsMaster.uc_data); -// pNmeaHdr = (TG_GPS_NMEA_INFO*)(pNmea->uc_nmea_data); -// -// /* Search for the end of data */ -// for (i = 0; i < POS_SNS_GPS_NMEA_SNO_MAX; i++) { -// if (((pNmeaHdr->ul_rcvsts) & (POS_SNS_GPS_NMEA_GGA << i)) != 0) { -// offset = pNmeaHdr->st_nmea_sentence_info[i].us_offset; -// size = pNmeaHdr->st_nmea_sentence_info[i].uc_size; -// -// if (eod <= offset + size) { // LCOV_EXCL_BR_LINE 200: can not exceed size -// eod = offset + size; -// } -// } -// } -// -// length = strnlen(pascd, VEHICLESENS_NMEA_PASCD_LEN_MAX); -// if (length == VEHICLESENS_NMEA_PASCD_LEN_MAX) { // LCOV_EXCL_BR_LINE 200: can not exceed size -// // LCOV_EXCL_START 8: invalid -// AGL_ASSERT_NOT_TESTED(); // LCOV_EXCL_LINE 200: test assert -// FRAMEWORKUNIFIEDLOG(ZONE_ERR, __FUNCTION__, "ERROR: PASCD Sentence is wrong."); -// // LCOV_EXCL_STOP -// } else { -// if ((eod + length) > SENSOR_MSG_VSINFO_DSIZE) { // LCOV_EXCL_BR_LINE 200: can not exceed size -// // LCOV_EXCL_START 8: invalid -// AGL_ASSERT_NOT_TESTED(); // LCOV_EXCL_LINE 200: test assert -// FRAMEWORKUNIFIEDLOG(ZONE_ERR, __FUNCTION__, "ERROR: NMEA Buffer is too small."); -// // LCOV_EXCL_STOP -// } else { -// pNmeaHdr->ul_rcvsts |= POS_SNS_GPS_NMEA_PASCD; -// -// (void)memcpy((pNmea->uc_nmea_data) + eod, pascd, length); -// pNmeaHdr->st_nmea_sentence_info[POS_SNS_GPS_NMEA_SNO_PASCD].uc_size = length; -// pNmeaHdr->st_nmea_sentence_info[POS_SNS_GPS_NMEA_SNO_PASCD].us_offset = eod; -// } -// -// *pChgType = VehicleSensSetGpsNmeaG(&stGpsMaster); -// -// ret_api = RET_NORMAL; -// } - - return ret_api; -} -#include diff --git a/positioning/server/src/Sensor/VehicleUtility.cpp b/positioning/server/src/Sensor/VehicleUtility.cpp index 6beefb6f..0201326d 100644 --- a/positioning/server/src/Sensor/VehicleUtility.cpp +++ b/positioning/server/src/Sensor/VehicleUtility.cpp @@ -1,5 +1,5 @@ /* - * @copyright Copyright (c) 2016-2019 TOYOTA MOTOR CORPORATION. + * @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. @@ -22,7 +22,7 @@ #include "VehicleUtility.h" #include -//#include "gps_hal.h" +#include "gps_hal.h" #include "positioning_common.h" @@ -400,7 +400,7 @@ RET_API DEVGpsSndBackupDataLoadReq(void) { /** Message header */ st_snd_msg.hdr.sndpno = 0x0000; st_snd_msg.hdr.respno = 0x0000; -// st_snd_msg.hdr.cid = CID_GPS_BACKUPDATA_LOAD; + st_snd_msg.hdr.cid = CID_GPS_BACKUPDATA_LOAD; st_snd_msg.hdr.msgbodysize = 0x00; st_snd_msg.hdr.rid = 0x00; diff --git a/positioning/server/src/ServiceInterface/BackupMgrIf.cpp b/positioning/server/src/ServiceInterface/BackupMgrIf.cpp index c5547f58..da5dba2c 100644 --- a/positioning/server/src/ServiceInterface/BackupMgrIf.cpp +++ b/positioning/server/src/ServiceInterface/BackupMgrIf.cpp @@ -1,5 +1,5 @@ /* - * @copyright Copyright (c) 2016-2019 TOYOTA MOTOR CORPORATION. + * @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. diff --git a/positioning/server/src/ServiceInterface/ClockIf.cpp b/positioning/server/src/ServiceInterface/ClockIf.cpp index 1017786a..52fd4cf0 100644 --- a/positioning/server/src/ServiceInterface/ClockIf.cpp +++ b/positioning/server/src/ServiceInterface/ClockIf.cpp @@ -1,5 +1,5 @@ /* - * @copyright Copyright (c) 2016-2019 TOYOTA MOTOR CORPORATION. + * @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. @@ -26,7 +26,7 @@ *---------------------------------------------------------------------------------*/ #include #include "ClockIf.h" -//#include +#include /*---------------------------------------------------------------------------------* * Definition * @@ -63,11 +63,11 @@ EFrameworkunifiedStatus ClockIfNotifyOnClockAvailability(CbFuncPtr fp_on_cmd) { happ = _pb_GetAppHandle(); if (happ != NULL) { /* Clock/Availability Changing notification registration */ -// estatus = FrameworkunifiedSubscribeNotificationWithCallback(happ, NTFY_Clock_Availability, fp_on_cmd); // LCOV_EXCL_BR_LINE 6:unexpected branch //NOLINT (whitespace/line_length) -// if (eFrameworkunifiedStatusOK != estatus) { // LCOV_EXCL_BR_LINE 4: nsfw error -// FRAMEWORKUNIFIEDLOG(ZONE_ERR, __FUNCTION__, -// "PositioningSubscriveNotificationswithCallback ERROR!! [estatus=%d]", estatus); -// } + estatus = FrameworkunifiedSubscribeNotificationWithCallback(happ, NTFY_Clock_Availability, fp_on_cmd); // LCOV_EXCL_BR_LINE 6:unexpected branch //NOLINT (whitespace/line_length) + if (eFrameworkunifiedStatusOK != estatus) { // LCOV_EXCL_BR_LINE 4: nsfw error + FRAMEWORKUNIFIEDLOG(ZONE_ERR, __FUNCTION__, + "PositioningSubscriveNotificationswithCallback ERROR!! [estatus=%d]", estatus); + } } else { FRAMEWORKUNIFIEDLOG(ZONE_ERR, __FUNCTION__, "_pb_GetAppHandle ERROR!! [happ=%p]", happ); } @@ -99,40 +99,40 @@ void ClockIfSetAvailability(BOOL b_is_available) { * @return eFrameworkunifiedStatusOK * @return eFrameworkunifiedStatusFail */ -//EFrameworkunifiedStatus ClockIfDtimeSetGpsTime(const SENSOR_MSG_GPSTIME *pst_gps_time, BOOL* pb_is_available) { -// EFrameworkunifiedStatus estatus = eFrameworkunifiedStatusFail; -// HANDLE happ; -// T_DTIME_MSG_GPSTIME st_dtime_gpstime; -// -// if (g_clock_availability == TRUE) { -// happ = _pb_GetAppHandle(); -// if (happ != NULL) { // LCOV_EXCL_BR_LINE 4: nsfw error -// st_dtime_gpstime.utc.year = pst_gps_time->utc.year; -// st_dtime_gpstime.utc.month = pst_gps_time->utc.month; -// st_dtime_gpstime.utc.date = pst_gps_time->utc.date; -// st_dtime_gpstime.utc.hour = pst_gps_time->utc.hour; -// st_dtime_gpstime.utc.minute = pst_gps_time->utc.minute; -// st_dtime_gpstime.utc.second = pst_gps_time->utc.second; -// st_dtime_gpstime.tdsts = pst_gps_time->tdsts; -// -// /* Set GPS time for Clock services */ -// estatus = DTime_setGpsTime(happ, &st_dtime_gpstime); -// if (estatus != eFrameworkunifiedStatusOK) { -// FRAMEWORKUNIFIEDLOG(ZONE_ERR, __FUNCTION__, \ -// "DTime_setGpsTime ERROR!! [ret=%d, y=%d, m=%d, d=%d, h=%d, n=%d, s=%d, sts=%d]", \ -// estatus, st_dtime_gpstime.utc.year, st_dtime_gpstime.utc.month, st_dtime_gpstime.utc.date, \ -// st_dtime_gpstime.utc.hour, st_dtime_gpstime.utc.minute, st_dtime_gpstime.utc.second, \ -// st_dtime_gpstime.tdsts); -// } -// } else { -// FRAMEWORKUNIFIEDLOG(ZONE_ERR, __FUNCTION__, "_pb_GetAppHandle ERROR!! [happ=%p]", happ); -// } -// } else { -// /* nop */ -// } -// -// *pb_is_available = g_clock_availability; -// -// return estatus; -//} +EFrameworkunifiedStatus ClockIfDtimeSetGpsTime(const SENSOR_MSG_GPSTIME *pst_gps_time, BOOL* pb_is_available) { + EFrameworkunifiedStatus estatus = eFrameworkunifiedStatusFail; + HANDLE happ; + T_DTIME_MSG_GPSTIME st_dtime_gpstime; + + if (g_clock_availability == TRUE) { + happ = _pb_GetAppHandle(); + if (happ != NULL) { // LCOV_EXCL_BR_LINE 4: nsfw error + st_dtime_gpstime.utc.year = pst_gps_time->utc.year; + st_dtime_gpstime.utc.month = pst_gps_time->utc.month; + st_dtime_gpstime.utc.date = pst_gps_time->utc.date; + st_dtime_gpstime.utc.hour = pst_gps_time->utc.hour; + st_dtime_gpstime.utc.minute = pst_gps_time->utc.minute; + st_dtime_gpstime.utc.second = pst_gps_time->utc.second; + st_dtime_gpstime.tdsts = pst_gps_time->tdsts; + + /* Set GPS time for Clock services */ + estatus = DTime_setGpsTime(happ, &st_dtime_gpstime); + if (estatus != eFrameworkunifiedStatusOK) { + FRAMEWORKUNIFIEDLOG(ZONE_ERR, __FUNCTION__, \ + "DTime_setGpsTime ERROR!! [ret=%d, y=%d, m=%d, d=%d, h=%d, n=%d, s=%d, sts=%d]", \ + estatus, st_dtime_gpstime.utc.year, st_dtime_gpstime.utc.month, st_dtime_gpstime.utc.date, \ + st_dtime_gpstime.utc.hour, st_dtime_gpstime.utc.minute, st_dtime_gpstime.utc.second, \ + st_dtime_gpstime.tdsts); + } + } else { + FRAMEWORKUNIFIEDLOG(ZONE_ERR, __FUNCTION__, "_pb_GetAppHandle ERROR!! [happ=%p]", happ); + } + } else { + /* nop */ + } + + *pb_is_available = g_clock_availability; + + return estatus; +} diff --git a/positioning/server/src/ServiceInterface/CommUsbIf.cpp b/positioning/server/src/ServiceInterface/CommUsbIf.cpp index ff122e33..b776ff07 100644 --- a/positioning/server/src/ServiceInterface/CommUsbIf.cpp +++ b/positioning/server/src/ServiceInterface/CommUsbIf.cpp @@ -1,5 +1,5 @@ /* - * @copyright Copyright (c) 2016-2019 TOYOTA MOTOR CORPORATION. + * @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. @@ -119,11 +119,11 @@ EFrameworkunifiedStatus CommUsbIfNotifyOnCommUSBAvailability(CbFuncPtr fp_on_cmd happ = _pb_GetAppHandle(); if (happ != NULL) { // LCOV_EXCL_BR_LINE 4: nsfw error /* PS_CommUSB/Availability Changing notification registration */ -// estatus = FrameworkunifiedSubscribeNotificationWithCallback(happ, NTFY_CommUSB_Availability, fp_on_cmd); // LCOV_EXCL_BR_LINE 6:unexpected branch //NOLINT (whitespace/line_length) -// if (eFrameworkunifiedStatusOK != estatus) { // LCOV_EXCL_BR_LINE 4: nsfw error -// FRAMEWORKUNIFIEDLOG(ZONE_ERR, __FUNCTION__, -// "PositioningSubscriveNotificationswithCallback ERROR!! [estatus=%d]", estatus); -// } + estatus = FrameworkunifiedSubscribeNotificationWithCallback(happ, NTFY_CommUSB_Availability, fp_on_cmd); // LCOV_EXCL_BR_LINE 6:unexpected branch //NOLINT (whitespace/line_length) + if (eFrameworkunifiedStatusOK != estatus) { // LCOV_EXCL_BR_LINE 4: nsfw error + FRAMEWORKUNIFIEDLOG(ZONE_ERR, __FUNCTION__, + "PositioningSubscriveNotificationswithCallback ERROR!! [estatus=%d]", estatus); + } } else { FRAMEWORKUNIFIEDLOG(ZONE_ERR, __FUNCTION__, "_pb_GetAppHandle ERROR!! [happ=%p]", happ); } diff --git a/positioning/server/src/ServiceInterface/DevDetectSrvIf.cpp b/positioning/server/src/ServiceInterface/DevDetectSrvIf.cpp index 1f7b2705..800429f5 100644 --- a/positioning/server/src/ServiceInterface/DevDetectSrvIf.cpp +++ b/positioning/server/src/ServiceInterface/DevDetectSrvIf.cpp @@ -1,5 +1,5 @@ /* - * @copyright Copyright (c) 2016-2019 TOYOTA MOTOR CORPORATION. + * @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. diff --git a/positioning/server/src/ServiceInterface/DiagSrvIf.cpp b/positioning/server/src/ServiceInterface/DiagSrvIf.cpp index f5c45192..195555e3 100644 --- a/positioning/server/src/ServiceInterface/DiagSrvIf.cpp +++ b/positioning/server/src/ServiceInterface/DiagSrvIf.cpp @@ -1,5 +1,5 @@ /* - * @copyright Copyright (c) 2016-2019 TOYOTA MOTOR CORPORATION. + * @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. @@ -25,7 +25,6 @@ * Include Files * *---------------------------------------------------------------------------------*/ #include -//#include #include "DiagSrvIf.h" /*---------------------------------------------------------------------------------* @@ -63,77 +62,3 @@ void DiagSrvIfSetRegistrationPermission(BOOL b_is_true) { return; } - -/** - * @brief - * Registering DiagSrv Services IF-Diag Codes - * - * @param[in] err_id Diag code definition name - * @param[in] positioning_code Positioning Code-Defined Names - * @return eFrameworkunifiedStatusOK - * @return eFrameworkunifiedStatusFail - */ -EFrameworkunifiedStatus DiagSrvIfDiagPutDiagCode(uint64_t err_id, uint16_t positioning_code) { - EFrameworkunifiedStatus estatus = eFrameworkunifiedStatusFail; -// HANDLE happ; -// DGCODE_RET_API dc_ret_api; -// -// if (g_registration_permission == TRUE) { -// happ = _pb_GetAppHandle(); -// if (happ != NULL) { -// /* Dialog code registration */ -// dc_ret_api = Diag_PutDiagCode(happ, err_id, positioning_code); -// if (dc_ret_api != DGCODE_RET_NORMAL) { -// FRAMEWORKUNIFIEDLOG(ZONE_ERR, __FUNCTION__, -// "Diag_PutDiagCode ERROR!! [ret=%d, positioning_code=%u]", dc_ret_api, positioning_code); -// } else { -// estatus = eFrameworkunifiedStatusOK; -// FRAMEWORKUNIFIEDLOG(ZONE_INFO, __FUNCTION__, -// "Diag_PutDiagCode CALL [ret=%d, positioning_code=%u]", dc_ret_api, positioning_code); -// } -// } else { -// FRAMEWORKUNIFIEDLOG(ZONE_ERR, __FUNCTION__, "_pb_GetAppHandle ERROR!! [happ=%p]", happ); -// } -// } else { -// FRAMEWORKUNIFIEDLOG(ZONE_ERR, __FUNCTION__, "g_registration_permission=FALSE"); -// } - - return estatus; -} - -/** - * @brief - * Deleting DiagSrv Services IF-Diag Codes - * - * @param[in] err_id Diag code definition name - * @param[in] positioning_code Positioning Code-Defined Names - * @return eFrameworkunifiedStatusOK - * @return eFrameworkunifiedStatusFail - */ -EFrameworkunifiedStatus DiagSrvIfDiagDeleteDiagCode(uint64_t err_id, uint16_t positioning_code) { - EFrameworkunifiedStatus estatus = eFrameworkunifiedStatusFail; -// HANDLE happ; -// DGCODE_RET_API dc_ret_api; -// -// if (g_registration_permission == TRUE) { -// happ = _pb_GetAppHandle(); -// if (happ != NULL) { -// /* Diag code deletion */ -// dc_ret_api = Diag_DeleteDiagCode(happ, err_id, positioning_code); -// if (dc_ret_api != DGCODE_RET_NORMAL) { -// FRAMEWORKUNIFIEDLOG(ZONE_ERR, __FUNCTION__, -// "Diag_DeleteDiagCode ERROR!! [ret=%d, positioning_code=%u]", dc_ret_api, positioning_code); -// } else { -// estatus = eFrameworkunifiedStatusOK; -// FRAMEWORKUNIFIEDLOG(ZONE_INFO, __FUNCTION__, -// "DiagSrvIfDiagDeleteDiagCode CALL [ret=%d, positioning_code=%u]", dc_ret_api, positioning_code); -// } -// } else { -// FRAMEWORKUNIFIEDLOG(ZONE_ERR, __FUNCTION__, "_pb_GetAppHandle ERROR!! [happ=%p]", happ); -// } -// } else { -// FRAMEWORKUNIFIEDLOG(ZONE_ERR, __FUNCTION__, "g_registration_permission=FALSE"); -// } - - return estatus; -} diff --git a/positioning/server/src/ServiceInterface/Makefile b/positioning/server/src/ServiceInterface/Makefile index 92121e93..fba98e8c 100644 --- a/positioning/server/src/ServiceInterface/Makefile +++ b/positioning/server/src/ServiceInterface/Makefile @@ -1,5 +1,5 @@ # -# @copyright Copyright (c) 2016-2019 TOYOTA MOTOR CORPORATION. +# @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. @@ -26,20 +26,12 @@ libPOS_ServiceInterface_SRCS += DiagSrvIf.cpp libPOS_ServiceInterface_SRCS += PSMShadowIf.cpp libPOS_ServiceInterface_SRCS += VehicleIf.cpp -libPOS_ServiceInterface_SRCS += VehicleIf.cpp - ######### add include path ############# CPPFLAGS += -I../../include/common/ CPPFLAGS += -I../../include/nsfw/ CPPFLAGS += -I../../include/ServiceInterface CPPFLAGS += -I../../../client/include -CPPFLAGS += -I../../../client/src/Vehicle_API/common -CPPFLAGS += -I../../../client/src/POS_sensor_API/common -CPPFLAGS += -I../../../client/src/POS_gps_API -CPPFLAGS += -I../../../client/src/POS_naviinfo_API/common -CPPFLAGS += -I../../../client/src/CanInput_API/common -CPPFLAGS += -I../../../client/src/SensorLocation_API/common #CPPFLAGS += -I../../../../diag_code/library/include diff --git a/positioning/server/src/ServiceInterface/PSMShadowIf.cpp b/positioning/server/src/ServiceInterface/PSMShadowIf.cpp index 68fbcaf4..99d9a527 100644 --- a/positioning/server/src/ServiceInterface/PSMShadowIf.cpp +++ b/positioning/server/src/ServiceInterface/PSMShadowIf.cpp @@ -1,5 +1,5 @@ /* - * @copyright Copyright (c) 2016-2019 TOYOTA MOTOR CORPORATION. + * @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. diff --git a/positioning/server/src/ServiceInterface/VehicleIf.cpp b/positioning/server/src/ServiceInterface/VehicleIf.cpp index cebe8b9b..0ef5e15b 100644 --- a/positioning/server/src/ServiceInterface/VehicleIf.cpp +++ b/positioning/server/src/ServiceInterface/VehicleIf.cpp @@ -1,5 +1,5 @@ /* - * @copyright Copyright (c) 2018-2019 TOYOTA MOTOR CORPORATION. + * @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. @@ -25,9 +25,9 @@ * Include Files * *---------------------------------------------------------------------------------*/ #include -//#include "stub/Vehicle_Sensor_Common_API.h" -//#include -//#include "stub/vehicle_notifications.h" +#include +#include +#include #include "VehicleIf.h" @@ -144,108 +144,108 @@ EFrameworkunifiedStatus VehicleIfDetachCallbacksFromDispatcher(const PUI_32 pui_ EFrameworkunifiedStatus VehicleIf_GetTypeOfTransmission(uint8_t* pType, uint8_t* pPkb, BOOL* pbIsAvailable) { EFrameworkunifiedStatus eStatus = eFrameworkunifiedStatusFail; -// VEHICLE_RET_API ret; -// HANDLE hApp; -// uint8_t ucVartrm; -// -//#if 1 /* Plus _CWORD27_ Gear Data Support 180115 */ -// uint8_t ucPkb; -//#endif /* Plus _CWORD27_ Gear Data Support 180115 */ -// -// -// if (gb_vehicleAvailability == TRUE) -// { -// hApp = _pb_GetAppHandle(); -// if (hApp != NULL) -// { -// ret = Vehicle_GetVehicleData(hApp, VEHICLE_DID_VARTRM1, &ucVartrm, sizeof(ucVartrm)); -// if (ret < VEHICLE_RET_NORMAL) -// { -// FRAMEWORKUNIFIEDLOG(ZONE_ERR, __FUNCTION__, "ERROR: Vehicle_GetVehicleData:%d", ret); -// } -// else -// { -// eStatus = eFrameworkunifiedStatusOK; -// -// switch (ucVartrm) -// { -// case VEHICLE_SNS_VARTRM1_AT: -// case VEHICLE_SNS_VARTRM1_CVT: -// case VEHICLE_SNS_VARTRM1_HV_AT: -// { -// *pType = VEHICLEIF_TRANSMISSION_TYPE_AT; -// break; -// } -// case VEHICLE_SNS_VARTRM1_MT: -// case VEHICLE_SNS_VARTRM1_MMT: -// case VEHICLE_SNS_VARTRM1_SMT: -// { -// *pType = VEHICLEIF_TRANSMISSION_TYPE_MT; -// break; -// } -// case VEHICLE_SNS_VARTRM1_UNCERTAINTY: -// { -// *pType = VEHICLEIF_TRANSMISSION_TYPE_UNKNOWN; -// break; -// } -// default: -// { -// FRAMEWORKUNIFIEDLOG(ZONE_ERR, __FUNCTION__, -// "ERROR: Type of transmission is unknown. (%d)", ucVartrm); -// -// *pType = VEHICLEIF_TRANSMISSION_TYPE_UNKNOWN; -// break; -// } -// } -// } -// -//#if 1 /* Plus _CWORD27_ Gear Data Support 180115 */ -// ret = Vehicle_GetVehicleData(hApp, VEHICLE_DID_PKB, &ucPkb, sizeof(ucPkb)); -// if (ret < VEHICLE_RET_NORMAL) -// { -// FRAMEWORKUNIFIEDLOG(ZONE_ERR, __FUNCTION__, "ERROR: Vehicle_GetVehicleData:%d", ret); -// } -// else -// { -// eStatus = eFrameworkunifiedStatusOK; -// -// switch (ucPkb) -// { -// case VEHICLE_SNS_OFF: // R-state -// //case VEHICLE_SNS_ANTI: // Antilock(Vehicle undefined) -// { -// *pPkb = VEHICLEIF_PKB_OFF; -// break; -// } -// case VEHICLE_SNS_ON: // Lock state -// { -// *pPkb = VEHICLEIF_PKB_ON; -// break; -// } -// default: -// { -// FRAMEWORKUNIFIEDLOG(ZONE_ERR, __FUNCTION__, -// "ERROR: State of parking brake is unknown. (%d)", ucPkb); -// -// *pPkb = VEHICLEIF_PKB_OFF; -// break; -// } -// } -// } -//#endif /* Plus _CWORD27_ Gear Data Support 180115 */ -// -// } -// else -// { -// FRAMEWORKUNIFIEDLOG(ZONE_ERR, __FUNCTION__, "ERROR: _pb_GetAppHandle hApp:%p", hApp); -// } -// } -// else -// { -// /* nop */ -// } -// -// *pbIsAvailable = gb_vehicleAvailability; + VEHICLE_RET_API ret; + HANDLE hApp; + uint8_t ucVartrm; + +#if 1 /* Plus _CWORD27_ Gear Data Support 180115 */ + uint8_t ucPkb; +#endif /* Plus _CWORD27_ Gear Data Support 180115 */ + + + if (gb_vehicleAvailability == TRUE) + { + hApp = _pb_GetAppHandle(); + if (hApp != NULL) + { + ret = Vehicle_GetVehicleData(hApp, VEHICLE_DID_VARTRM1, &ucVartrm, sizeof(ucVartrm)); + if (ret < VEHICLE_RET_NORMAL) + { + FRAMEWORKUNIFIEDLOG(ZONE_ERR, __FUNCTION__, "ERROR: Vehicle_GetVehicleData:%d", ret); + } + else + { + eStatus = eFrameworkunifiedStatusOK; + + switch (ucVartrm) + { + case VEHICLE_SNS_VARTRM1_AT: + case VEHICLE_SNS_VARTRM1_CVT: + case VEHICLE_SNS_VARTRM1_HV_AT: + { + *pType = VEHICLEIF_TRANSMISSION_TYPE_AT; + break; + } + case VEHICLE_SNS_VARTRM1_MT: + case VEHICLE_SNS_VARTRM1_MMT: + case VEHICLE_SNS_VARTRM1_SMT: + { + *pType = VEHICLEIF_TRANSMISSION_TYPE_MT; + break; + } + case VEHICLE_SNS_VARTRM1_UNCERTAINTY: + { + *pType = VEHICLEIF_TRANSMISSION_TYPE_UNKNOWN; + break; + } + default: + { + FRAMEWORKUNIFIEDLOG(ZONE_ERR, __FUNCTION__, + "ERROR: Type of transmission is unknown. (%d)", ucVartrm); + + *pType = VEHICLEIF_TRANSMISSION_TYPE_UNKNOWN; + break; + } + } + } + +#if 1 /* Plus _CWORD27_ Gear Data Support 180115 */ + ret = Vehicle_GetVehicleData(hApp, VEHICLE_DID_PKB, &ucPkb, sizeof(ucPkb)); + if (ret < VEHICLE_RET_NORMAL) + { + FRAMEWORKUNIFIEDLOG(ZONE_ERR, __FUNCTION__, "ERROR: Vehicle_GetVehicleData:%d", ret); + } + else + { + eStatus = eFrameworkunifiedStatusOK; + + switch (ucPkb) + { + case VEHICLE_SNS_OFF: // R-state + //case VEHICLE_SNS_ANTI: // Antilock(Vehicle undefined) + { + *pPkb = VEHICLEIF_PKB_OFF; + break; + } + case VEHICLE_SNS_ON: // Lock state + { + *pPkb = VEHICLEIF_PKB_ON; + break; + } + default: + { + FRAMEWORKUNIFIEDLOG(ZONE_ERR, __FUNCTION__, + "ERROR: State of parking brake is unknown. (%d)", ucPkb); + + *pPkb = VEHICLEIF_PKB_OFF; + break; + } + } + } +#endif /* Plus _CWORD27_ Gear Data Support 180115 */ + + } + else + { + FRAMEWORKUNIFIEDLOG(ZONE_ERR, __FUNCTION__, "ERROR: _pb_GetAppHandle hApp:%p", hApp); + } + } + else + { + /* nop */ + } + + *pbIsAvailable = gb_vehicleAvailability; return eStatus; } @@ -265,11 +265,11 @@ EFrameworkunifiedStatus VehicleIfNotifyOnVehicleAvailability(CbFuncPtr fp_on_cmd happ = _pb_GetAppHandle(); if (NULL != happ) { /* Vehicle/Availability Changing notification registration */ -// estatus = FrameworkunifiedSubscribeNotificationWithCallback(happ, NTFY_Vehicle_Availability, fp_on_cmd); // LCOV_EXCL_BR_LINE 6:unexpected branch //NOLINT (whitespace/line_length) -// if (eFrameworkunifiedStatusOK != estatus) { // LCOV_EXCL_BR_LINE 4: nsfw error -// FRAMEWORKUNIFIEDLOG(ZONE_ERR, __FUNCTION__, -// "PositioningSubscriveNotificationswithCallback ERROR!! [estatus=%d]", estatus); -// } + estatus = FrameworkunifiedSubscribeNotificationWithCallback(happ, NTFY_Vehicle_Availability, fp_on_cmd); // LCOV_EXCL_BR_LINE 6:unexpected branch //NOLINT (whitespace/line_length) + if (eFrameworkunifiedStatusOK != estatus) { // LCOV_EXCL_BR_LINE 4: nsfw error + FRAMEWORKUNIFIEDLOG(ZONE_ERR, __FUNCTION__, + "PositioningSubscriveNotificationswithCallback ERROR!! [estatus=%d]", estatus); + } } else { FRAMEWORKUNIFIEDLOG(ZONE_ERR, __FUNCTION__, "_pb_GetAppHandle ERROR!! [happ=%p]", happ); } @@ -293,35 +293,35 @@ EFrameworkunifiedStatus VehicleIfNotifyOnVehicleAvailability(CbFuncPtr fp_on_cmd EFrameworkunifiedStatus VehicleIf_GetShiftPosition(uint8_t* pShift, BOOL* pbIsAvailable) { EFrameworkunifiedStatus eStatus = eFrameworkunifiedStatusFail; -// VEHICLE_RET_API ret; -// HANDLE hApp; -// -// if (gb_vehicleAvailability == TRUE) -// { -// hApp = _pb_GetAppHandle(); -// if (hApp != NULL) -// { -// ret = Vehicle_GetVehicleData(hApp, VEHICLE_DID_SHIFT, pShift, sizeof(*pShift)); -// if (ret < VEHICLE_RET_NORMAL) -// { -// FRAMEWORKUNIFIEDLOG(ZONE_ERR, __FUNCTION__, "ERROR: Vehicle_GetVehicleData:%d", ret); -// } -// else -// { -// eStatus = eFrameworkunifiedStatusOK; -// } -// } -// else -// { -// FRAMEWORKUNIFIEDLOG(ZONE_ERR, __FUNCTION__, "ERROR: _pb_GetAppHandle hApp:%p", hApp); -// } -// } -// else -// { -// /* nop */ -// } -// -// *pbIsAvailable = gb_vehicleAvailability; + VEHICLE_RET_API ret; + HANDLE hApp; + + if (gb_vehicleAvailability == TRUE) + { + hApp = _pb_GetAppHandle(); + if (hApp != NULL) + { + ret = Vehicle_GetVehicleData(hApp, VEHICLE_DID_SHIFT, pShift, sizeof(*pShift)); + if (ret < VEHICLE_RET_NORMAL) + { + FRAMEWORKUNIFIEDLOG(ZONE_ERR, __FUNCTION__, "ERROR: Vehicle_GetVehicleData:%d", ret); + } + else + { + eStatus = eFrameworkunifiedStatusOK; + } + } + else + { + FRAMEWORKUNIFIEDLOG(ZONE_ERR, __FUNCTION__, "ERROR: _pb_GetAppHandle hApp:%p", hApp); + } + } + else + { + /* nop */ + } + + *pbIsAvailable = gb_vehicleAvailability; return eStatus; } @@ -338,27 +338,27 @@ EFrameworkunifiedStatus VehicleIf_GetShiftPosition(uint8_t* pShift, BOOL* pbIsAv EFrameworkunifiedStatus VehicleIfDeliveryEntry(uint32_t ul_did) { EFrameworkunifiedStatus estatus = eFrameworkunifiedStatusFail; -// HANDLE happ; -// VEHICLE_RET_API iret; -// -// if (TRUE == gb_vehicleAvailability) { -// happ = _pb_GetAppHandle(); -// if (NULL != happ) { -// /* Sensor data delivery registration */ -// iret = Vehicle_DeliveryEntry(happ, (PCSTR)POS_THREAD_NAME, ul_did, -// VEHICLE_DELIVERY_REGIST, VEHICLE_DELIVERY_TIMING_UPDATE); -// if (VEHICLE_RET_NORMAL != iret) { -// FRAMEWORKUNIFIEDLOG(ZONE_ERR, __FUNCTION__, -// "Vehicle_DeliveryEntry ERROR!! [iret=%d]", iret); -// } else { -// estatus = eFrameworkunifiedStatusOK; -// } -// } else { -// FRAMEWORKUNIFIEDLOG(ZONE_ERR, __FUNCTION__, "_pb_GetAppHandle ERROR!! [happ=%p]", happ); -// } -// } else { -// /* nop */ -// } + HANDLE happ; + VEHICLE_RET_API iret; + + if (TRUE == gb_vehicleAvailability) { + happ = _pb_GetAppHandle(); + if (NULL != happ) { + /* Sensor data delivery registration */ + iret = Vehicle_DeliveryEntry(happ, (PCSTR)POS_THREAD_NAME, ul_did, + VEHICLE_DELIVERY_REGIST, VEHICLE_DELIVERY_TIMING_UPDATE); + if (VEHICLE_RET_NORMAL != iret) { + FRAMEWORKUNIFIEDLOG(ZONE_ERR, __FUNCTION__, + "Vehicle_DeliveryEntry ERROR!! [iret=%d]", iret); + } else { + estatus = eFrameworkunifiedStatusOK; + } + } else { + FRAMEWORKUNIFIEDLOG(ZONE_ERR, __FUNCTION__, "_pb_GetAppHandle ERROR!! [happ=%p]", happ); + } + } else { + /* nop */ + } return estatus; } diff --git a/positioning/server/src/nsfw/Makefile b/positioning/server/src/nsfw/Makefile index b1bf277a..403e29f6 100644 --- a/positioning/server/src/nsfw/Makefile +++ b/positioning/server/src/nsfw/Makefile @@ -1,5 +1,5 @@ # -# @copyright Copyright (c) 2017-2019 TOYOTA MOTOR CORPORATION. +# @copyright Copyright (c) 2017-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. @@ -21,14 +21,13 @@ INST_PROGS = Positioning Positioning_SRCS += ps_main.cpp Positioning_SRCS += positioning_application.cpp -#ifeq ($(ARCH),arm64) -#LDLIBS += -Wl,-Bdynamic -lpositioning_hal -#else -#LDLIBS += -Wl,-Bdynamic -lpositioning_hal -#endif #($(ARCH),arm64) +ifeq ($(ARCH),arm64) +LDLIBS += -Wl,-Bdynamic -lpositioning_hal +else +LDLIBS += -Wl,-Bdynamic -lpositioning_hal +endif #($(ARCH),arm64) ######### add include path ############# -CPPFLAGS += -I../../../../ CPPFLAGS += -I../../../client/include CPPFLAGS += -I../../include/common/ CPPFLAGS += -I../../include/Sensor/ @@ -55,11 +54,11 @@ LDLIBS += -Wl,-Bstatic -lPOS_ServiceInterface # LDLIBS += -Wl,-Bstatic -lVehicle_API ######### linked library (dynamic) ############# -#ifeq (arm64, $(ARCH)) -#LDLIBS += -Wl,-Bdynamic -lpositioning_hal -#LDLIBS += -Wl,-Bdynamic -lVehicle_API -#endif -#LDLIBS += -Wl,-Bdynamic -lClock_API +ifeq (arm64, $(ARCH)) +LDLIBS += -Wl,-Bdynamic -lpositioning_hal +LDLIBS += -Wl,-Bdynamic -lVehicle_API +endif +LDLIBS += -Wl,-Bdynamic -lClock_API #LDLIBS += -Wl,-Bdynamic -lMM_DREC_API #LDLIBS += -Wl,-Bdynamic -lextension LDLIBS += -Wl,-Bdynamic -lPOS_base_API @@ -73,14 +72,14 @@ LDLIBS += -Wl,-Bdynamic -lns_backup LDLIBS += -Wl,-Bdynamic -lssver LDLIBS += -Wl,-Bdynamic -lstdc++ #LDLIBS += -Wl,-Bdynamic -lDiagCodeAPI -#LDLIBS += -Wl,-Bdynamic -lDTime_Api -#LDLIBS += -Wl,-Bdynamic -lVehicle_API +LDLIBS += -Wl,-Bdynamic -lDTime_Api +LDLIBS += -Wl,-Bdynamic -lVehicle_API LDLIBS += -Wl,-Bdynamic -lvp LDLIBS += -Wl,-Bdynamic -lev -#LDLIBS += -Wl,-Bdynamic -lCommUSB +LDLIBS += -Wl,-Bdynamic -lCommUSB ######### add library path ############# -#LDFLAGS += -L../../positioning_hal +LDFLAGS += -L../../positioning_hal LDFLAGS += -L../Sensor LDFLAGS += -L../ServiceInterface LDFLAGS += -L../../../client/src/POS_common_API diff --git a/positioning/server/src/nsfw/positioning_application.cpp b/positioning/server/src/nsfw/positioning_application.cpp index 9f4af656..d23daada 100644 --- a/positioning/server/src/nsfw/positioning_application.cpp +++ b/positioning/server/src/nsfw/positioning_application.cpp @@ -1,5 +1,5 @@ /* - * @copyright Copyright (c) 2016-2019 TOYOTA MOTOR CORPORATION. + * @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. @@ -36,7 +36,7 @@ #include #include #include -//#include +#include #include #include #include @@ -64,8 +64,8 @@ #include "DiagSrvIf.h" #include "PSMShadowIf.h" #include "VehicleIf.h" -//#include "positioning_hal.h" -//#include "gps_hal.h" +#include "positioning_hal.h" +#include "gps_hal.h" #include "CommonDefine.h" #include "VehicleIf.h" @@ -95,12 +95,6 @@ #define THREAD_STS_CREATING (0x01) #define THREAD_STS_CREATED (0x02) -/* - Maximum message size - Note : Set a value that is larger than the local thread's message reception buffer size. -*/ -#define MAX_MSG_BUF_SIZE (2048) - #define POS_SNDMSG_DTSIZE_1 1 /* SndMSG data size 1Byte */ #define POS_SNDMSG_DTSIZE_2 2 /* SndMSG data size 2Byte */ #define POS_SNDMSG_DTSIZE_20 20 /* SndMSG data size of 20 bytes */ @@ -134,22 +128,6 @@ #define POSITIONINGLOG_SYS_FST_DATA 0xF4 #define _pb_strcat(pdest, psrc, size) (strncat(pdest, psrc, size) , (0)) -enum LsDrvKind { - LSDRV_GYRO, /* Gyro output */ - LSDRV_SPEED_PULSE, /* Vehicle speed pulse */ - LSDRV_SPEED_PULSE_FLAG, /* Vehicle speed pulse flag */ - LSDRV_SPEED_KMPH, /* Vehicle speed(km/h) */ - LSDRV_GYRO_EXT, /* Gyro Extended Output */ - LSDRV_REV, /* REV information */ - LSDRV_GYRO_TEMP, /* Gyro Temperature */ - LSDRV_GSENSOR_X, /* G-sensor X-axis */ - LSDRV_GSENSOR_Y, /* G-sensor Y-axis */ - LSDRV_PULSE_TIME, /* Inter-Pulse Time */ - LSDRV_SNS_COUNTER, /* Sensor Counter */ - LSDRV_GPS_INTERRUPT_FLAG, /* GPS interrupt flag */ - LSDRV_KINDS_MAX -}; - // Vehicle sensor information notification message typedef struct { uint32_t did; // Data ID corresponding to vehicle sensor information @@ -213,13 +191,6 @@ typedef struct { u_int8 flag; /* Whether or not the time is set */ } ST_GPS_SET_TIME; -/*! - @brief Structure for managing whether time setting is enabled or disabled(For GRADE2) -*/ -typedef struct { - u_int8 flag; /* Whether or not the time is set */ - u_int8 reserve[3]; -} ST_GPS_SET_TIME_FLAG; /*---------------------------------------------------------------------------------* * Local Function Prototype * *---------------------------------------------------------------------------------*/ @@ -299,69 +270,69 @@ static ST_SHAREDATA g_sharedata_tbl[] = { (10) Boot Sequence(Performance) (0,1,2, ... Note : 0 = Initial value(Not started)) Time of termination,Be destroyed in the reverse order of startup */ static ST_THREAD_CREATE_INFO g_pos_thread_create_info_Grade1[] = { // LCOV_EXCL_BR_LINE 11: unexpected branch -// { /* Pos_main */ -// ETID_POS_MAIN, /* (1) */ -// kThreadNamePosMain, /* (2) */ -// PNO_VEHICLE_SENSOR, /* (3) */ -// &VehicleSensThread, /* (4) */ -// (NTFY_MSK_NONE), /* (5) */ -// (NTFY_MSK_NONE), /* (6) */ -// 0, /* (7) */ -// TRUE, /* (8) */ -// THREAD_STS_NOEXIST, /* (9) */ -// 0 /* (10) */ -// }, -// { /* Pos_sens */ -// ETID_POS_SENS, /* (1) */ -// kThreadNamePosSens, /* (2) */ -// PNO_LINE_SENS_DRV, /* (3) */ -// &StartLineSensorThreadPositioning, /* (4) */ -// (NTFY_MSK_PS_PSMSHADOW_AVAILABILITY), /* (5) */ -// (NTFY_MSK_NONE), /* (6) */ -// THREAD_STS_MSK_POS_MAIN, /* (7) */ -// FALSE, /* (8) */ -// THREAD_STS_NOEXIST, /* (9) */ -// 0 /* (10) */ -// }, -// { /* Pos_gps */ -// ETID_POS_GPS, /* (1) */ -// kThreadNamePosGps, /* (2) */ -// PNO_NAVI_GPS_MAIN, /* (3) */ -// &StartGpsMainThreadPositioning, /* (4) */ -// (NTFY_MSK_NONE), /* (5) */ -// (NTFY_MSK_NONE), /* (6) */ -// THREAD_STS_MSK_POS_MAIN, /* (7) */ -// TRUE, /* (8) */ -// THREAD_STS_NOEXIST, /* (9) */ -// 0 /* (10) */ -// }, -// { /* Pos_gps_recv */ -// ETID_POS_GPS_RECV, /* (1) */ -// kThreadNamePosGpsRecv, /* (2) */ -// PNO_NAVI_GPS_RCV, /* (3) */ -// &StartGpsRecvThreadPositioning, /* (4) */ -// (NTFY_MSK_NONE), /* (5) */ -// (NTFY_MSK_NONE), /* (6) */ -// THREAD_STS_MSK_POS_GPS, /* (7) */ -// FALSE, /* (8) */ -// THREAD_STS_NOEXIST, /* (9) */ -// 0 /* (10) */ -// }, -// { /* Pos_gps_rollover */ -// ETID_POS_GPS_ROLLOVER, /* (1) */ -// kThreadNamePosGpsRollover, /* (2) */ -// PNO_CLK_GPS, /* (3) */ -// &StartGpsRolloverThreadPositioning, /* (4) */ -// (NTFY_MSK_NS_BACKUPMGR_AVAILABILITY), /* (5) */ -// (NTFY_MSK_NONE), /* (6) */ -// THREAD_STS_MSK_POS_GPS, /* (7) */ -// FALSE, /* (8) */ -// THREAD_STS_NOEXIST, /* (9) */ -// 0 /* (10) */ -// }, -// { /* Termination */ -// ETID_POS_MAX, NULL, 0, NULL, NTFY_MSK_NONE, NTFY_MSK_NONE, 0, FALSE, THREAD_STS_NOEXIST, 0 -// }, + { /* Pos_main */ + ETID_POS_MAIN, /* (1) */ + kThreadNamePosMain, /* (2) */ + PNO_VEHICLE_SENSOR, /* (3) */ + &VehicleSensThread, /* (4) */ + (NTFY_MSK_NONE), /* (5) */ + (NTFY_MSK_NONE), /* (6) */ + 0, /* (7) */ + TRUE, /* (8) */ + THREAD_STS_NOEXIST, /* (9) */ + 0 /* (10) */ + }, + { /* Pos_sens */ + ETID_POS_SENS, /* (1) */ + kThreadNamePosSens, /* (2) */ + PNO_LINE_SENS_DRV, /* (3) */ + &StartLineSensorThreadPositioning, /* (4) */ + (NTFY_MSK_PS_PSMSHADOW_AVAILABILITY), /* (5) */ + (NTFY_MSK_NONE), /* (6) */ + THREAD_STS_MSK_POS_MAIN, /* (7) */ + FALSE, /* (8) */ + THREAD_STS_NOEXIST, /* (9) */ + 0 /* (10) */ + }, + { /* Pos_gps */ + ETID_POS_GPS, /* (1) */ + kThreadNamePosGps, /* (2) */ + PNO_NAVI_GPS_MAIN, /* (3) */ + &StartGpsMainThreadPositioning, /* (4) */ + (NTFY_MSK_NONE), /* (5) */ + (NTFY_MSK_NONE), /* (6) */ + THREAD_STS_MSK_POS_MAIN, /* (7) */ + TRUE, /* (8) */ + THREAD_STS_NOEXIST, /* (9) */ + 0 /* (10) */ + }, + { /* Pos_gps_recv */ + ETID_POS_GPS_RECV, /* (1) */ + kThreadNamePosGpsRecv, /* (2) */ + PNO_NAVI_GPS_RCV, /* (3) */ + &StartGpsRecvThreadPositioning, /* (4) */ + (NTFY_MSK_NONE), /* (5) */ + (NTFY_MSK_NONE), /* (6) */ + THREAD_STS_MSK_POS_GPS, /* (7) */ + FALSE, /* (8) */ + THREAD_STS_NOEXIST, /* (9) */ + 0 /* (10) */ + }, + { /* Pos_gps_rollover */ + ETID_POS_GPS_ROLLOVER, /* (1) */ + kThreadNamePosGpsRollover, /* (2) */ + PNO_CLK_GPS, /* (3) */ + &StartGpsRolloverThreadPositioning, /* (4) */ + (NTFY_MSK_NS_BACKUPMGR_AVAILABILITY), /* (5) */ + (NTFY_MSK_NONE), /* (6) */ + THREAD_STS_MSK_POS_GPS, /* (7) */ + FALSE, /* (8) */ + THREAD_STS_NOEXIST, /* (9) */ + 0 /* (10) */ + }, + { /* Termination */ + ETID_POS_MAX, NULL, 0, NULL, NTFY_MSK_NONE, NTFY_MSK_NONE, 0, FALSE, THREAD_STS_NOEXIST, 0 + }, }; /* State Management Variables */ @@ -542,21 +513,17 @@ EFrameworkunifiedStatus FrameworkunifiedOnInitialization(HANDLE h_app) { /* Clock/Availability Changing notification registration */ (void)ClockIfNotifyOnClockAvailability(&PosNotifyClockAvailability); // LCOV_EXCL_BR_LINE 6: not a branch // NOLINT(whitespace/line_length) + /* NS_BackupMgr/Availability Changing notification registration */ + (void)BackupMgrIfNotifyOnBackupMgrAvailability(&PosNotifyNSBackupMgrAvailability); // LCOV_EXCL_BR_LINE 6: not a branch // NOLINT(whitespace/line_length) /* Regist Vehilce Availability Notification */ (void)VehicleIfNotifyOnVehicleAvailability(&PosNotifyVehicleAvailability); // LCOV_EXCL_BR_LINE 6: not a branch // NOLINT(whitespace/line_length) - - /* NS_BackupMgr/Availability Changing notification registration */ - (void)BackupMgrIfNotifyOnBackupMgrAvailability(&PosNotifyNSBackupMgrAvailability); // LCOV_EXCL_BR_LINE 6: not a branch // NOLINT(whitespace/line_length) - /* DeviceDetectionServiceIf initialization */ if (DevDetectSrvIfInitialize() == eFrameworkunifiedStatusOK) { /* SS_DevDetectSrv/Availability Changing notification registration */ (void)DevDetectSrvIfNotifyOnDeviceDetectionAvailability(&PosNotifyDevDetectSrvAvailability); // LCOV_EXCL_BR_LINE 6: not a branch // NOLINT(whitespace/line_length) } - - (void)VehicleIfNotifyOnVehicleAvailability(&PosNotifyVehicleAvailability); // LCOV_EXCL_BR_LINE 6: not a branch // NOLINT(whitespace/line_length) } } @@ -794,7 +761,6 @@ EFrameworkunifiedStatus FrameworkunifiedOnDebugDump(HANDLE h_app) { // LCOV_EXC ST_THREAD_CREATE_INFO* p_thr_cre_info = g_pos_thread_create_info; ST_GPS_FIX_CNT st_gps_fix_cnt; ST_GPS_SET_TIME st_gps_set_time; - ST_GPS_SET_TIME_FLAG st_gps_set_time_flag; uint8_t len_msg = 4; uint8_t len_mtx = 3; uint8_t len_evt = 9; @@ -917,23 +883,6 @@ EFrameworkunifiedStatus FrameworkunifiedOnDebugDump(HANDLE h_app) { // LCOV_EXC st_gps_set_time.flag); _pb_strcat(reinterpret_cast(&buf_ram[0]), reinterpret_cast(&buf_tmp[0]), sizeof(buf_tmp)); - /* Set GPS date and time(Flagging) */ - memset(&buf_tmp[0], 0x00, sizeof(buf_tmp)); - (void)memset( reinterpret_cast(&st_gps_set_time_flag), 0, (size_t)sizeof(st_gps_set_time_flag) ); - - e_status = BackupMgrIfBackupDataRd(D_BK_ID_POS_GPS_TIME_SET_FLAG, - 0, - &st_gps_set_time_flag, - sizeof(st_gps_set_time_flag), - &b_is_available); - snprintf(reinterpret_cast(&buf_tmp[0]), sizeof(buf_tmp), - "\n %20s rd:0x%08x av:%d, flag:0x%02x", - "GPS_TIME_SET_FLAG", - e_status, - b_is_available, - st_gps_set_time_flag.flag); - _pb_strcat(reinterpret_cast(&buf_ram[0]), reinterpret_cast(&buf_tmp[0]), sizeof(buf_tmp)); - if (e_type == UNIT_TYPE_GRADE1) { /* GPS format anomaly counter */ /* There is no lock control. */ (void)DEVGpsGetDebugGpsFormatFailCnt(&buf_gps_format_fail[0]); @@ -1319,6 +1268,22 @@ static EFrameworkunifiedStatus PosNotifyNSBackupMgrAvailability(HANDLE h_app) { /* When the GPS management thread is started */ if (((pThrCreInfo + ETID_POS_GPS)->status) == THREAD_STS_CREATED) { + if ((*pExeSts == EPOS_EXE_STS_RUNNING_COLDSTART) || + (*peMode == EPOS_SETUP_MODE_DATA_RESET)) { + // GPS reset request. + SENSOR_INTERNAL_MSG_BUF msg_buf = {}; + T_APIMSG_MSGBUF_HEADER *msg_hdr = &msg_buf.hdr; + msg_hdr->hdr.cid = CID_GPS_REQRESET; + msg_hdr->hdr.msgbodysize = sizeof(POS_RESETINFO); + POS_RESETINFO *msg_data = reinterpret_cast(&msg_buf.data); + msg_data->mode = GPS_RST_COLDSTART; + + RET_API ret = _pb_SndMsg(PNO_NAVI_GPS_MAIN, sizeof(msg_buf), &msg_buf, 0); + if (ret != RET_NORMAL) { + FRAMEWORKUNIFIEDLOG(ZONE_INFO, __FUNCTION__, "_pb_SndMsg ERROR!! [ret=%d]", ret); + } + } + /* Backup data read request to GSP management thread */ (void)DEVGpsSndBackupDataLoadReq(); } @@ -1411,13 +1376,13 @@ static EFrameworkunifiedStatus PosNotifyVehicleAvailability(HANDLE h_app) { *pLastSrvSts |= NTFY_MSK_VS_VEHICLE_AVAILABILITY; -// if (eFrameworkunifiedStatusFail == VehicleIfDeliveryEntry(VEHICLE_DID_SPEED)) { -// FRAMEWORKUNIFIEDLOG(ZONE_ERR, __FUNCTION__, "VehicleIfDeliveryEntry SPEED ERROR"); -// } -// -// if (eFrameworkunifiedStatusFail == VehicleIfDeliveryEntry(VEHICLE_DID_REV)) { -// FRAMEWORKUNIFIEDLOG(ZONE_ERR, __FUNCTION__, "VehicleIfDeliveryEntry REV ERROR"); -// } + if (eFrameworkunifiedStatusFail == VehicleIfDeliveryEntry(VEHICLE_DID_SPEED)) { + FRAMEWORKUNIFIEDLOG(ZONE_ERR, __FUNCTION__, "VehicleIfDeliveryEntry SPEED ERROR"); + } + + if (eFrameworkunifiedStatusFail == VehicleIfDeliveryEntry(VEHICLE_DID_REV)) { + FRAMEWORKUNIFIEDLOG(ZONE_ERR, __FUNCTION__, "VehicleIfDeliveryEntry REV ERROR"); + } if (eFrameworkunifiedStatusFail == VehicleIfDeliveryEntry(VEHICLE_DID_SPEED_PULSE_VEHICLE)) { FRAMEWORKUNIFIEDLOG(ZONE_ERR, __FUNCTION__, "VehicleIfDeliveryEntry SPEED PULSE ERROR"); @@ -1525,7 +1490,8 @@ static void PosCreateThread(HANDLE h_app) { || (pThrCreInfo->msk_ntfy == NTFY_MSK_NONE))) { if (pThrCreInfo->pno == PNO_LINE_SENS_DRV || \ pThrCreInfo->pno == PNO_NAVI_GPS_MAIN || \ - pThrCreInfo->pno == PNO_NAVI_GPS_RCV) { + pThrCreInfo->pno == PNO_NAVI_GPS_RCV || + pThrCreInfo->pno == PNO_CLK_GPS) { (pThrCreInfo->routine)(h_app); } else { /* Thread creation */ @@ -1620,9 +1586,7 @@ static void PosBackupDataInit(void) { EFrameworkunifiedStatus e_status; BOOL b_is_available; ST_GPS_SET_TIME st_gps_set_time; - ST_GPS_SET_TIME_FLAG st_gps_set_time_flag; - (void)memset( reinterpret_cast(&st_gps_set_time_flag), 0, (size_t)sizeof(st_gps_set_time_flag) ); (void)memset( reinterpret_cast(&st_gps_set_time), 0, (size_t)sizeof(st_gps_set_time) ); FRAMEWORKUNIFIEDLOG(ZONE_INIT, __FUNCTION__, "+"); @@ -2132,53 +2096,53 @@ static EFrameworkunifiedStatus PosPosifSetData(HANDLE h_app) { pRcvMsg = g_rcv_msg_buf; size = PosGetMsg(h_app, reinterpret_cast(&pRcvMsg), MAX_MSG_BUF_SIZE); -// if (size != 0) { // LCOV_EXCL_BR_LINE 4: nsfw error -// ucResult = SENSLOG_RES_SUCCESS; -// -// pName = _pb_CnvPno2Name((reinterpret_cast(pRcvMsg))->pno); -// if (pName == NULL) { -// pName = pNone; -// } -// FRAMEWORKUNIFIEDLOG(ZONE_17, __FUNCTION__, -// "Get message = [Sender:%s][CID:0x%X][DID:0x%X]", -// pName, -// CID_POSIF_SET_DATA, -// (reinterpret_cast(pRcvMsg))->did); -// -// /* Send Messages to Internal Thread */ -// ret = PosSndMsg(PNO_VEHICLE_SENSOR, CID_POSIF_SET_DATA, pRcvMsg, size); -// if (ret != RET_NORMAL) { -// FRAMEWORKUNIFIEDLOG(ZONE_ERR, __FUNCTION__, "PosSndMsg ERROR!! [ret = %d]", ret); -// if ((reinterpret_cast(pRcvMsg))->did == VEHICLE_DID_SETTINGTIME) { -// /* GPS time setting(When waiting for completion of an event, an event is issued. */ -// /* Event Generation */ -// ulEventId = VehicleCreateEvent((reinterpret_cast(pRcvMsg))->pno); -// if (ulEventId != 0) { -// /* Event publishing */ -// ret = _pb_SetEvent(ulEventId, SAPI_EVSET_ABSOLUTE, POS_RET_ERROR_INNER); -// if (ret != RET_NORMAL) { -// /* Event issuance failure */ -// FRAMEWORKUNIFIEDLOG(ZONE_ERR, __FUNCTION__, -// "_pb_SetEvent ERROR!! [ret = %d]", -// ret); -// } -// /* Event deletion */ -// (void)VehicleDeleteEvent(ulEventId); -// } else { -// /* Event generation failure */ -// FRAMEWORKUNIFIEDLOG(ZONE_ERR, __FUNCTION__, "VehicleCreateEvent ERROR!!"); -// } -// } -// } -// } -// SensLogWriteInputData(SENSLOG_DATA_I_UNSPECIFIED, -// (reinterpret_cast(pRcvMsg))->did, -// 0, -// pRcvMsg, -// static_cast(size), -// ucResult, -// SENSLOG_ON, -// SENSLOG_ON); + if (size != 0) { // LCOV_EXCL_BR_LINE 4: nsfw error + ucResult = SENSLOG_RES_SUCCESS; + + pName = _pb_CnvPno2Name((reinterpret_cast(pRcvMsg))->pno); + if (pName == NULL) { + pName = pNone; + } + FRAMEWORKUNIFIEDLOG(ZONE_17, __FUNCTION__, + "Get message = [Sender:%s][CID:0x%X][DID:0x%X]", + pName, + CID_POSIF_SET_DATA, + (reinterpret_cast(pRcvMsg))->did); + + /* Send Messages to Internal Thread */ + ret = PosSndMsg(PNO_VEHICLE_SENSOR, CID_POSIF_SET_DATA, pRcvMsg, size); + if (ret != RET_NORMAL) { + FRAMEWORKUNIFIEDLOG(ZONE_ERR, __FUNCTION__, "PosSndMsg ERROR!! [ret = %d]", ret); + if ((reinterpret_cast(pRcvMsg))->did == VEHICLE_DID_SETTINGTIME) { + /* GPS time setting(When waiting for completion of an event, an event is issued. */ + /* Event Generation */ + ulEventId = VehicleCreateEvent((reinterpret_cast(pRcvMsg))->pno); + if (ulEventId != 0) { + /* Event publishing */ + ret = _pb_SetEvent(ulEventId, SAPI_EVSET_ABSOLUTE, POS_RET_ERROR_INNER); + if (ret != RET_NORMAL) { + /* Event issuance failure */ + FRAMEWORKUNIFIEDLOG(ZONE_ERR, __FUNCTION__, + "_pb_SetEvent ERROR!! [ret = %d]", + ret); + } + /* Event deletion */ + (void)VehicleDeleteEvent(ulEventId); + } else { + /* Event generation failure */ + FRAMEWORKUNIFIEDLOG(ZONE_ERR, __FUNCTION__, "VehicleCreateEvent ERROR!!"); + } + } + } + } + SensLogWriteInputData(SENSLOG_DATA_I_UNSPECIFIED, + (reinterpret_cast(pRcvMsg))->did, + 0, + pRcvMsg, + static_cast(size), + ucResult, + SENSLOG_ON, + SENSLOG_ON); FRAMEWORKUNIFIEDLOG(ZONE_28, __FUNCTION__, "-"); return eFrameworkunifiedStatusOK; @@ -2263,11 +2227,11 @@ static EFrameworkunifiedStatus PosPosifReqGpsReset(HANDLE h_app) { * @return eFrameworkunifiedStatusOK Normal completion */ static EFrameworkunifiedStatus PosVehicleInfoRcv(HANDLE h_app) { -// LSDRV_MSG_LSDATA_DAT_G line_sns_data; + LSDRV_MSG_LSDATA_DAT_G line_sns_data; RET_API ret = RET_NORMAL; -// memset(&line_sns_data, 0, sizeof(line_sns_data)); -// LSDRV_MSG_LSDATA_DAT_G *p_line_sns_data = &line_sns_data; + memset(&line_sns_data, 0, sizeof(line_sns_data)); + LSDRV_MSG_LSDATA_DAT_G *p_line_sns_data = &line_sns_data; VEHICLE_UNIT_MSG_VSINFO *p_vehicle_msg = NULL; uint32_t size = 0; uint16_t us_speed = 0; @@ -2275,96 +2239,96 @@ static EFrameworkunifiedStatus PosVehicleInfoRcv(HANDLE h_app) { uint8_t* pRcvMsg = g_rcv_msg_buf; size = PosGetMsg(h_app, reinterpret_cast(&pRcvMsg), MAX_MSG_BUF_SIZE); -// if (size != 0) { // LCOV_EXCL_BR_LINE 4: nsfw error -// memset(p_line_sns_data, 0x00, sizeof(line_sns_data)); -// p_vehicle_msg = (reinterpret_cast(pRcvMsg)); -// switch (p_vehicle_msg->data.did) { -// // SPEED info -// case VEHICLE_DID_SPEED: -// { -// p_line_sns_data->uc_data_num = LSDRV_KINDS_MAX; -// p_line_sns_data->st_data[LSDRV_SPEED_KMPH].ul_did = POSHAL_DID_SPEED_KMPH; -// p_line_sns_data->st_data[LSDRV_SPEED_KMPH].uc_size = POS_SNDMSG_DTSIZE_2; -// p_line_sns_data->st_data[LSDRV_SPEED_KMPH].uc_sns_cnt = 0; -// -// char p_env_variable[VP_MAX_LENGTH]; -// -// VP_GetEnv("VP__CWORD31__SPEED", p_env_variable); -// if (0 == strcmp(p_env_variable, "direct")) { -// int16_t speed = 0; -// // To obtain the vehicle speed from Direct lanes,1 to 2 bytes of received data -// memcpy(&speed, &p_vehicle_msg->data.data[0], sizeof(speed)); -// us_speed = static_cast(abs(speed)); -// // Unit conversion [km/h] -> [0.01km/h] -// us_speed = static_cast(us_speed * 100); -// } else if (0 == strcmp(p_env_variable, "CAN")) { -// UINT16 speed = 0; -// // To obtain the vehicle speed from CAN,2 to 3 bytes of received data -// memcpy(&speed, &p_vehicle_msg->data.data[1], sizeof(speed)); -// us_speed = static_cast(abs(speed)); -// // Unit conversion [km/h] -> [0.01km/h] -// us_speed = static_cast(us_speed * 100); -// } else { -// // In case of invalid value, the vehicle speed is acquired by CAN. -// UINT16 speed = 0; -// memcpy(&speed, &p_vehicle_msg->data.data[1], sizeof(speed)); -// us_speed = static_cast(abs(speed)); -// // Unit conversion [km/h] -> [0.01km/h] -// us_speed = static_cast(us_speed * 100); -// } -// -// memcpy(&p_line_sns_data->st_data[LSDRV_SPEED_KMPH].uc_data[0], &us_speed, sizeof(us_speed)); -// -// ret = PosSndMsg(PNO_VEHICLE_SENSOR, CID_LINESENS_VEHICLE_DATA_G, -// reinterpret_cast(p_line_sns_data), sizeof(line_sns_data)); -// -// break; -// } -// // REV information -// case VEHICLE_DID_REV: -// { -// p_line_sns_data->uc_data_num = LSDRV_KINDS_MAX; -// p_line_sns_data->st_data[LSDRV_REV].ul_did = VEHICLE_DID_REV; -// p_line_sns_data->st_data[LSDRV_REV].uc_size = POS_SNDMSG_DTSIZE_1; -// p_line_sns_data->st_data[LSDRV_REV].uc_sns_cnt = 0; -// p_line_sns_data->st_data[LSDRV_REV].uc_data[0] = p_vehicle_msg->data.data[0]; -// -// ret = PosSndMsg(PNO_VEHICLE_SENSOR, CID_LINESENS_VEHICLE_DATA_G, -// reinterpret_cast(p_line_sns_data), sizeof(line_sns_data)); -// break; -// } -// -// // Speed Pulse information -// case VEHICLE_DID_SPEED_PULSE_VEHICLE: -// { -// p_line_sns_data->uc_data_num = LSDRV_KINDS_MAX; -// p_line_sns_data->st_data[LSDRV_SPEED_PULSE].ul_did = POSHAL_DID_SPEED_PULSE; -// p_line_sns_data->st_data[LSDRV_SPEED_PULSE].uc_size = sizeof(float); -// p_line_sns_data->st_data[LSDRV_SPEED_PULSE].uc_sns_cnt = 0; -// -// memcpy(&p_line_sns_data->st_data[LSDRV_SPEED_PULSE].uc_data[0], -// &p_vehicle_msg->data.data[0], sizeof(float)); -// -// p_line_sns_data->st_data[LSDRV_PULSE_TIME].ul_did = POSHAL_DID_PULSE_TIME; -// p_line_sns_data->st_data[LSDRV_PULSE_TIME].uc_size = sizeof(float); -// p_line_sns_data->st_data[LSDRV_PULSE_TIME].uc_sns_cnt = 0; -// -// memcpy(&p_line_sns_data->st_data[LSDRV_PULSE_TIME].uc_data[0], -// &p_vehicle_msg->data.data[sizeof(float)], sizeof(float)); -// -// ret = PosSndMsg(PNO_VEHICLE_SENSOR, CID_LINESENS_VEHICLE_DATA_G, -// reinterpret_cast(p_line_sns_data), sizeof(line_sns_data)); -// -// break; -// } -// default: -// break; -// } -// -// if (ret != RET_NORMAL) { -// FRAMEWORKUNIFIEDLOG(ZONE_ERR, __FUNCTION__, "PosSndMsg ERROR!! [ret = %d]", ret); -// } -// } + if (size != 0) { // LCOV_EXCL_BR_LINE 4: nsfw error + memset(p_line_sns_data, 0x00, sizeof(line_sns_data)); + p_vehicle_msg = (reinterpret_cast(pRcvMsg)); + switch (p_vehicle_msg->data.did) { + // SPEED info + case VEHICLE_DID_SPEED: + { + p_line_sns_data->uc_data_num = LSDRV_KINDS_MAX; + p_line_sns_data->st_data[LSDRV_SPEED_KMPH].ul_did = POSHAL_DID_SPEED_KMPH; + p_line_sns_data->st_data[LSDRV_SPEED_KMPH].uc_size = POS_SNDMSG_DTSIZE_2; + p_line_sns_data->st_data[LSDRV_SPEED_KMPH].uc_sns_cnt = 0; + + char p_env_variable[VP_MAX_LENGTH]; + + VP_GetEnv("VP__CWORD31__SPEED", p_env_variable); + if (0 == strcmp(p_env_variable, "direct")) { + int16_t speed = 0; + // To obtain the vehicle speed from Direct lanes,1 to 2 bytes of received data + memcpy(&speed, &p_vehicle_msg->data.data[0], sizeof(speed)); + us_speed = static_cast(abs(speed)); + // Unit conversion [km/h] -> [0.01km/h] + us_speed = static_cast(us_speed * 100); + } else if (0 == strcmp(p_env_variable, "CAN")) { + UINT16 speed = 0; + // To obtain the vehicle speed from CAN,2 to 3 bytes of received data + memcpy(&speed, &p_vehicle_msg->data.data[1], sizeof(speed)); + us_speed = static_cast(abs(speed)); + // Unit conversion [km/h] -> [0.01km/h] + us_speed = static_cast(us_speed * 100); + } else { + // In case of invalid value, the vehicle speed is acquired by CAN. + UINT16 speed = 0; + memcpy(&speed, &p_vehicle_msg->data.data[1], sizeof(speed)); + us_speed = static_cast(abs(speed)); + // Unit conversion [km/h] -> [0.01km/h] + us_speed = static_cast(us_speed * 100); + } + + memcpy(&p_line_sns_data->st_data[LSDRV_SPEED_KMPH].uc_data[0], &us_speed, sizeof(us_speed)); + + ret = PosSndMsg(PNO_VEHICLE_SENSOR, CID_LINESENS_VEHICLE_DATA_G, + reinterpret_cast(p_line_sns_data), sizeof(line_sns_data)); + + break; + } + // REV information + case VEHICLE_DID_REV: + { + p_line_sns_data->uc_data_num = LSDRV_KINDS_MAX; + p_line_sns_data->st_data[LSDRV_REV].ul_did = VEHICLE_DID_REV; + p_line_sns_data->st_data[LSDRV_REV].uc_size = POS_SNDMSG_DTSIZE_1; + p_line_sns_data->st_data[LSDRV_REV].uc_sns_cnt = 0; + p_line_sns_data->st_data[LSDRV_REV].uc_data[0] = p_vehicle_msg->data.data[0]; + + ret = PosSndMsg(PNO_VEHICLE_SENSOR, CID_LINESENS_VEHICLE_DATA_G, + reinterpret_cast(p_line_sns_data), sizeof(line_sns_data)); + break; + } + + // Speed Pulse information + case VEHICLE_DID_SPEED_PULSE_VEHICLE: + { + p_line_sns_data->uc_data_num = LSDRV_KINDS_MAX; + p_line_sns_data->st_data[LSDRV_SPEED_PULSE].ul_did = POSHAL_DID_SPEED_PULSE; + p_line_sns_data->st_data[LSDRV_SPEED_PULSE].uc_size = sizeof(float); + p_line_sns_data->st_data[LSDRV_SPEED_PULSE].uc_sns_cnt = 0; + + memcpy(&p_line_sns_data->st_data[LSDRV_SPEED_PULSE].uc_data[0], + &p_vehicle_msg->data.data[0], sizeof(float)); + + p_line_sns_data->st_data[LSDRV_PULSE_TIME].ul_did = POSHAL_DID_PULSE_TIME; + p_line_sns_data->st_data[LSDRV_PULSE_TIME].uc_size = sizeof(float); + p_line_sns_data->st_data[LSDRV_PULSE_TIME].uc_sns_cnt = 0; + + memcpy(&p_line_sns_data->st_data[LSDRV_PULSE_TIME].uc_data[0], + &p_vehicle_msg->data.data[sizeof(float)], sizeof(float)); + + ret = PosSndMsg(PNO_VEHICLE_SENSOR, CID_LINESENS_VEHICLE_DATA_G, + reinterpret_cast(p_line_sns_data), sizeof(line_sns_data)); + + break; + } + default: + break; + } + + if (ret != RET_NORMAL) { + FRAMEWORKUNIFIEDLOG(ZONE_ERR, __FUNCTION__, "PosSndMsg ERROR!! [ret = %d]", ret); + } + } return eFrameworkunifiedStatusOK; } @@ -2449,12 +2413,9 @@ static RET_API PosSndMsg(PNO pno, CID cid, void* p_msg_body, uint32_t size) { T_APIMSG_MSGBUF_HEADER* p; static u_int8 sndMsgBuf[MAX_MSG_BUF_SIZE + sizeof(T_APIMSG_MSGBUF_HEADER)]; - if (p_msg_body == NULL) { // LCOV_EXCL_BR_LINE 200: can not NULL - // LCOV_EXCL_START 8: invalid - AGL_ASSERT_NOT_TESTED(); // LCOV_EXCL_LINE 200: test assert - FRAMEWORKUNIFIEDLOG(ZONE_ERR, __FUNCTION__, "Argument ERROR!! [p_msg_body = %p]", p_msg_body); + if ((p_msg_body == NULL) || (size > MAX_MSG_BUF_SIZE)) { + FRAMEWORKUNIFIEDLOG(ZONE_ERR, __FUNCTION__, "Argument ERROR!! [p_msg_body = %p, size = %d]", p_msg_body, size); ret = RET_ERROR; - // LCOV_EXCL_STOP } else { p = reinterpret_cast(sndMsgBuf); diff --git a/positioning/server/src/nsfw/ps_main.cpp b/positioning/server/src/nsfw/ps_main.cpp index d0c3e6d8..de2732a3 100644 --- a/positioning/server/src/nsfw/ps_main.cpp +++ b/positioning/server/src/nsfw/ps_main.cpp @@ -1,5 +1,5 @@ /* - * @copyright Copyright (c) 2016-2019 TOYOTA MOTOR CORPORATION. + * @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. -- cgit 1.2.3-korg