diff options
Diffstat (limited to 'positioning/server/src')
137 files changed, 8794 insertions, 7580 deletions
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 <positioning_hal.h> +#include <positioning_hal.h> #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<void *>(&send_gps_msg), 0, sizeof(Struct_GpsData)); -// (void)memset(reinterpret_cast<void *>(&send_sensor_msg), 0, sizeof(Struct_SensData)); -// -// /* Flag is set to FALSE */ -// location_info->calc_called = static_cast<u_int8>(FALSE); -// location_info->available = static_cast<u_int8>(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<u_int8>(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<u_int8>(rcv_sensor_msg->us_size); -// (void)memcpy(reinterpret_cast<void *>(&(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<u_int8>(rcv_sensor_msg->us_size); -// (void)memcpy(reinterpret_cast<void *>(&(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<u_int8>(rcv_sensor_msg->us_size); -// (void)memcpy(reinterpret_cast<void *>(&(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<u_int8>(rcv_sensor_msg->us_size); -// (void)memcpy(reinterpret_cast<void *>(&(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<u_int16>(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<void *>(&(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<u_int16>( -// 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<void *>(&(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<u_int16>( -// 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<void *>(&(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<u_int16>(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<void *>(&(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<u_int16>(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<void *>(&send_gps_msg), 0, sizeof(Struct_GpsData)); + (void)memset(reinterpret_cast<void *>(&send_sensor_msg), 0, sizeof(Struct_SensData)); + + /* Flag is set to FALSE */ + location_info->calc_called = static_cast<u_int8>(FALSE); + location_info->available = static_cast<u_int8>(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<u_int8>(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<u_int8>(rcv_sensor_msg->us_size); + (void)memcpy(reinterpret_cast<void *>(&(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<u_int8>(rcv_sensor_msg->us_size); + (void)memcpy(reinterpret_cast<void *>(&(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<u_int8>(rcv_sensor_msg->us_size); + (void)memcpy(reinterpret_cast<void *>(&(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<u_int8>(rcv_sensor_msg->us_size); + (void)memcpy(reinterpret_cast<void *>(&(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<u_int8>(rcv_sensor_msg->us_size); + (void)memcpy(reinterpret_cast<void *>(&(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<u_int8>(rcv_sensor_msg->us_size); + (void)memcpy(reinterpret_cast<void *>(&(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<u_int16>(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<void *>(&(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<u_int16>( + 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<void *>(&(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<u_int16>( + 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<void *>(&(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<u_int16>(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<void *>(&(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<u_int16>(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<void *>(&(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<u_int16>(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<void *>(&(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<u_int16>(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>( -// ((((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<void *>(&(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<u_int8>(TRUE); -// location_info->lonlat.latitude = static_cast<int32>(rcv_dr_data.latitude); -// location_info->lonlat.longitude = static_cast<int32>(rcv_dr_data.longitude); -// -// if (rcv_dr_data.dr_status != static_cast<u_int8>(SENSORLOCATION_DRSTATUS_INVALID)) { -// location_info->available = static_cast<u_int8>(TRUE); -// } else { -// location_info->available = static_cast<u_int8>(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<void *>(&(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<void *>(&(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<void *>(&(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<void *>(&(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<void *>(&(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<void *>(&(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<void *>(&(send_data_master.uc_data[0])), -// reinterpret_cast<void *>(&(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<void *>(&(send_data_master.uc_data[0])), -// reinterpret_cast<void *>(&(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<void *>(&(send_data_master.uc_data[0])), -// reinterpret_cast<void *>(&(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<void *>(&(send_data_master.uc_data[0])), -// reinterpret_cast<void *>(&(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<void *>(&(send_data_master.uc_data[0])), -// reinterpret_cast<void *>(&(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<void *>(&(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>( + ((((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<void *>(&(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<void *>(&(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<void *>(&(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<u_int8>(TRUE); + location_info->lonlat.latitude = static_cast<int32>(rcv_dr_data.latitude); + location_info->lonlat.longitude = static_cast<int32>(rcv_dr_data.longitude); + + if (rcv_dr_data.dr_status != static_cast<u_int8>(SENSORLOCATION_DRSTATUS_INVALID)) { + location_info->available = static_cast<u_int8>(TRUE); + } else { + location_info->available = static_cast<u_int8>(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<void *>(&(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<void *>(&(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<void *>(&(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<void *>(&(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<void *>(&(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<void *>(&(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<void *>(&(send_data_master.uc_data[0])), + reinterpret_cast<void *>(&(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<void *>(&(send_data_master.uc_data[0])), + reinterpret_cast<void *>(&(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<void *>(&(send_data_master.uc_data[0])), + reinterpret_cast<void *>(&(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<void *>(&(send_data_master.uc_data[0])), + reinterpret_cast<void *>(&(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<void *>(&(send_data_master.uc_data[0])), + reinterpret_cast<void *>(&(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<void *>(&(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<void *>(&(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<void *>(&(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 <positioning_hal.h> +#include <positioning_hal.h> #include <unistd.h> #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 <system_service/ss_ver.h> #include <system_service/ss_package.h> -//#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<char *>(&buf), sizeof(buf), "GPS Info"); -// break; -// case VEHICLESENS_GETMETHOD_NAVI: -// snprintf(reinterpret_cast<char *>(&buf), sizeof(buf), "Navi Info"); -// break; -// default: -// /* nop */ -// break; -// } -// -// /* Latitude,Longitude */ -// VehicleSensGetLocationLonLat(&stSnsData, uc_get_method); -// pstLonLat = reinterpret_cast<SENSORLOCATION_LONLATINFO_DAT*>(stSnsData.uc_data); -// memset(&bufTmp[0], 0x00, sizeof(bufTmp)); -// snprintf( reinterpret_cast<char *>(&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<char *>(&buf[0]), reinterpret_cast<char *>(&bufTmp[0]), sizeof(bufTmp)); -// -// /* Altitude */ -// VehicleSensGetLocationAltitude(&stSnsData, uc_get_method); -// pstAltitude = reinterpret_cast<SENSORLOCATION_ALTITUDEINFO_DAT*>(stSnsData.uc_data); -// memset(&bufTmp[0], 0x00, sizeof(bufTmp)); -// snprintf(reinterpret_cast<char *>(&bufTmp[0]), sizeof(bufTmp), -// "\n [Alt] sync:%3d, Enable:%01d, Alt:%10d", -// pstAltitude->SyncCnt, -// pstAltitude->isEnable, -// pstAltitude->Altitude); -// _pb_strcat(reinterpret_cast<char *>(&buf[0]), reinterpret_cast<char *>(&bufTmp[0]), sizeof(bufTmp)); -// -// /* Orientation */ -// VehicleSensGetMotionHeading(&stSnsData, uc_get_method); -// pstHeading = reinterpret_cast<SENSORMOTION_HEADINGINFO_DAT*>(stSnsData.uc_data); -// memset(&bufTmp[0], 0x00, sizeof(bufTmp)); -// snprintf(reinterpret_cast<char *>(&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<char *>(&buf[0]), reinterpret_cast<char *>(&bufTmp[0]), sizeof(bufTmp)); -// -// switch ( uc_get_method ) { -// case VEHICLESENS_GETMETHOD_GPS: -// /* Satellite information */ -// VehicleSensGetNaviinfoDiagGPSg(&stGpsData); -// pstDiagGps = reinterpret_cast<NAVIINFO_DIAG_GPS*>(stGpsData.uc_data); -// memset(&bufTmp[0], 0x00, sizeof(bufTmp)); -// snprintf(reinterpret_cast<char *>(&bufTmp[0]), sizeof(bufTmp), -// "\n [Diag]\n FixSts:0x%02x", -// pstDiagGps->stFix.ucFixSts); -// _pb_strcat(reinterpret_cast<char *>(&buf[0]), reinterpret_cast<char *>(&bufTmp[0]), sizeof(bufTmp)); -// for (i = 0; i < 12; i++) { -// memset(&bufTmp[0], 0x00, sizeof(bufTmp)); -// snprintf(reinterpret_cast<char *>(&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<char *>(&buf[0]), reinterpret_cast<char *>(&bufTmp[0]), sizeof(bufTmp)); -// } -// -// /* Time */ -// VehicleSensGetGpsTime(&stGpsData, VEHICLESENS_GETMETHOD_GPS); -// pstDateTimeGps = reinterpret_cast<SENSOR_MSG_GPSTIME*>(stGpsData.uc_data); -// memset(&bufTmp[0], 0x00, sizeof(bufTmp)); -// snprintf(reinterpret_cast<char *>(&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<char *>(&buf[0]), reinterpret_cast<char *>(&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<char *>(&buf), sizeof(buf), "GPS Info"); + break; + case VEHICLESENS_GETMETHOD_NAVI: + snprintf(reinterpret_cast<char *>(&buf), sizeof(buf), "Navi Info"); + break; + default: + /* nop */ + break; + } + + /* Latitude,Longitude */ + VehicleSensGetLocationLonLat(&stSnsData, uc_get_method); + pstLonLat = reinterpret_cast<SENSORLOCATION_LONLATINFO_DAT*>(stSnsData.uc_data); + memset(&bufTmp[0], 0x00, sizeof(bufTmp)); + snprintf( reinterpret_cast<char *>(&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<char *>(&buf[0]), reinterpret_cast<char *>(&bufTmp[0]), sizeof(bufTmp)); + + /* Altitude */ + VehicleSensGetLocationAltitude(&stSnsData, uc_get_method); + pstAltitude = reinterpret_cast<SENSORLOCATION_ALTITUDEINFO_DAT*>(stSnsData.uc_data); + memset(&bufTmp[0], 0x00, sizeof(bufTmp)); + snprintf(reinterpret_cast<char *>(&bufTmp[0]), sizeof(bufTmp), + "\n [Alt] sync:%3d, Enable:%01d, Alt:%10d", + pstAltitude->SyncCnt, + pstAltitude->isEnable, + pstAltitude->Altitude); + _pb_strcat(reinterpret_cast<char *>(&buf[0]), reinterpret_cast<char *>(&bufTmp[0]), sizeof(bufTmp)); + + /* Orientation */ + VehicleSensGetMotionHeading(&stSnsData, uc_get_method); + pstHeading = reinterpret_cast<SENSORMOTION_HEADINGINFO_DAT*>(stSnsData.uc_data); + memset(&bufTmp[0], 0x00, sizeof(bufTmp)); + snprintf(reinterpret_cast<char *>(&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<char *>(&buf[0]), reinterpret_cast<char *>(&bufTmp[0]), sizeof(bufTmp)); + + switch ( uc_get_method ) { + case VEHICLESENS_GETMETHOD_GPS: + /* Satellite information */ + VehicleSensGetNaviinfoDiagGPSg(&stGpsData); + pstDiagGps = reinterpret_cast<NAVIINFO_DIAG_GPS*>(stGpsData.uc_data); + memset(&bufTmp[0], 0x00, sizeof(bufTmp)); + snprintf(reinterpret_cast<char *>(&bufTmp[0]), sizeof(bufTmp), + "\n [Diag]\n FixSts:0x%02x", + pstDiagGps->stFix.ucFixSts); + _pb_strcat(reinterpret_cast<char *>(&buf[0]), reinterpret_cast<char *>(&bufTmp[0]), sizeof(bufTmp)); + for (i = 0; i < 12; i++) { + memset(&bufTmp[0], 0x00, sizeof(bufTmp)); + snprintf(reinterpret_cast<char *>(&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<char *>(&buf[0]), reinterpret_cast<char *>(&bufTmp[0]), sizeof(bufTmp)); + } + + /* Time */ + VehicleSensGetGpsTime(&stGpsData, VEHICLESENS_GETMETHOD_GPS); + pstDateTimeGps = reinterpret_cast<SENSOR_MSG_GPSTIME*>(stGpsData.uc_data); + memset(&bufTmp[0], 0x00, sizeof(bufTmp)); + snprintf(reinterpret_cast<char *>(&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<char *>(&buf[0]), reinterpret_cast<char *>(&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 <vehicle_service/positioning_base_library.h> #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,63 +243,62 @@ 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<uint16_t>((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: +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<uint16_t>((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 = VehicleSensSetGyrolG(pst_data); +// uc_chg_type = VehicleSensSetGyroXlG(pst_data); //#if (DR_DEBUG == 1) /* PastModel002_DR_VEHICLE */ -// FRAMEWORKUNIFIEDLOG(ZONE_INFO, __FUNCTION__, "VehicleSens_SetDataMaster POSHAL_DID_GYRO \r\n"); +// FRAMEWORKUNIFIEDLOG(ZONE_INFO, __FUNCTION__, "VehicleSens_SetDataMaster POSHAL_DID_GYRO_X \r\n"); //#endif // (*p_data_master_set_n)(pst_data->ul_did, uc_chg_type, VEHICLESENS_GETMETHOD_LINE); // /* ++ PastModel002 support DR */ @@ -276,101 +306,137 @@ void VehicleSensInitDataMaster(void) { // /* -- PastModel002 support DR */ // 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_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<void *>(&st_data), 0, sizeof(st_data)); -// VehicleSensGetGpsAntennal(&st_data); -// antennaState = st_data.uc_data[0]; -// -// /* Sensor Counter */ -// (void)memset(reinterpret_cast<void *>(&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<u_int8>(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<u_int8>(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<MDEV_GPS_CUSTOMDATA*>(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<uint8_t *>(&(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<SENSOR_GPSTIME_RAW*>(pst_data->uc_data)); -// break; -// } -// case POSHAL_DID_GPS_WKNROLLOVER: -// { -// (void)VehicleSensSetWknRolloverG(reinterpret_cast<SENSOR_WKNROLLOVER*>(pst_data->uc_data)); -// break; -// } -// /* GPS clock drift */ -// case POSHAL_DID_GPS_CLOCK_DRIFT: -// { -// uc_chg_type = VehicleSensSetGpsClockDriftG(reinterpret_cast<int32_t*>(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<uint32_t*>(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<void *>(&st_data), 0, sizeof(st_data)); + VehicleSensGetGpsAntennal(&st_data); + antennaState = st_data.uc_data[0]; + + /* Sensor Counter */ + (void)memset(reinterpret_cast<void *>(&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<u_int8>(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<u_int8>(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<MDEV_GPS_CUSTOMDATA*>(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<uint8_t *>(&(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<SENSOR_GPSTIME_RAW*>(pst_data->uc_data)); + break; + } + case POSHAL_DID_GPS_TIME: + { + uc_chg_type = VehicleSensSetGpsTimeG(reinterpret_cast<SENSOR_MSG_GPSTIME*>(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<SENSOR_WKNROLLOVER*>(pst_data->uc_data)); + break; + } + /* GPS clock drift */ + case POSHAL_DID_GPS_CLOCK_DRIFT: + { + uc_chg_type = VehicleSensSetGpsClockDriftG(reinterpret_cast<int32_t*>(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<uint32_t*>(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<void*>(&delivery_data), -// reinterpret_cast<void*>(&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<SENSORLOCATION_MSG_LONLATINFO*>(&delivery_data); -// /* Acquire the applicable data information from the data master..*/ -// VehicleSensGetDataMaster(ul_did, uc_current_get_method, stmaster); -// (void)memcpy(reinterpret_cast<void*>(&(plonlat_msg->data)), -// reinterpret_cast<void*>(&(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<SENSORLOCATION_MSG_ALTITUDEINFO*>(&delivery_data); -// /* Acquire the applicable data information from the data master..*/ -// VehicleSensGetDataMaster(ul_did, uc_get_method, stmaster); -// (void)memcpy(reinterpret_cast<void*>(&(paltitude_msg->data)), -// reinterpret_cast<void*>(&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<SENSORMOTION_MSG_HEADINGINFO*>(&delivery_data); -// /* Acquire the applicable data information from the data master..*/ -// VehicleSensGetDataMaster(ul_did, uc_get_method, stmaster); -// (void)memcpy(reinterpret_cast<void*>(&(pheading_msg->data)), -// reinterpret_cast<void*>(&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<void *>(&delivery_data.data[0]), -// reinterpret_cast<void *>(&gps_master.uc_data[0]), -// (size_t)delivery_data.header.size); -// -// length = static_cast<u_int16>((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>(*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<uint8_t *>(&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<uint8_t *>(&(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<void*>(&delivery_data), + reinterpret_cast<void*>(&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<SENSORLOCATION_MSG_LONLATINFO*>(&delivery_data); + /* Acquire the applicable data information from the data master..*/ + VehicleSensGetDataMaster(ul_did, uc_current_get_method, stmaster); + (void)memcpy(reinterpret_cast<void*>(&(plonlat_msg->data)), + reinterpret_cast<void*>(&(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<SENSORLOCATION_MSG_ALTITUDEINFO*>(&delivery_data); + /* Acquire the applicable data information from the data master..*/ + VehicleSensGetDataMaster(ul_did, uc_get_method, stmaster); + (void)memcpy(reinterpret_cast<void*>(&(paltitude_msg->data)), + reinterpret_cast<void*>(&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<SENSORMOTION_MSG_HEADINGINFO*>(&delivery_data); + /* Acquire the applicable data information from the data master..*/ + VehicleSensGetDataMaster(ul_did, uc_get_method, stmaster); + (void)memcpy(reinterpret_cast<void*>(&(pheading_msg->data)), + reinterpret_cast<void*>(&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<void *>(&delivery_data.data[0]), + reinterpret_cast<void *>(&gps_master.uc_data[0]), + (size_t)delivery_data.header.size); + + length = static_cast<u_int16>((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>(*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<uint8_t *>(&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<uint8_t *>(&(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<void *>(&st_master_fst), -// 0, -// sizeof(VEHICLESENS_DATA_MASTER_FST)); -// (void)memset(reinterpret_cast<void *>(&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<u_int16>(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<uint8_t *>(&(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<void *>(&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<u_int16>(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<u_int16>(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<uint8_t *>(&(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<u_int16>(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<uint8_t *>(&(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<void *>(&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<u_int16>(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<u_int16>(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<uint8_t *>(&(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<u_int16>(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<uint8_t *>(&(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<void *>(&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<u_int16>(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<u_int16>(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<uint8_t *>(&(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<u_int16>(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<uint8_t *>(&(st_master_fst.uc_data[0])), -// st_master_fst.us_size, -// uc_result); -// } + (void)memset(reinterpret_cast<void *>(&st_master_fst), + 0, + sizeof(VEHICLESENS_DATA_MASTER_FST)); + (void)memset(reinterpret_cast<void *>(&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<u_int16>(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<uint8_t *>(&(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<void *>(&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<u_int16>(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<u_int16>(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<uint8_t *>(&(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<u_int16>(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<uint8_t *>(&(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<void *>(&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<u_int16>(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<u_int16>(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<uint8_t *>(&(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<u_int16>(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<uint8_t *>(&(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<void *>(&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<u_int16>(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<u_int16>(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<uint8_t *>(&(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<u_int16>(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<uint8_t *>(&(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<void *>(&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<SENSOR_MSG_GPSDATA_DAT *>(&st_pkg_master.ucData[us_offset])); - } else { - VehicleSensGetDataMaster(ul_pkg_did, - uc_current_get_method, - reinterpret_cast<VEHICLESENS_DATA_MASTER *>(&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<u_int16>(us_next_offset & ~us_boundary_adj); - /* Add numbers */ - us_next_offset = static_cast<u_int16>(us_next_offset + (u_int16)VEHICLESENS_BIT2); - } - us_offset = static_cast<u_int16>(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<uint8_t *>(&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<void *>(&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<SENSOR_MSG_GPSDATA_DAT *>(&st_pkg_master.ucData[us_offset])); + } + else { + VehicleSensGetDataMaster(ul_pkg_did, uc_current_get_method, + reinterpret_cast<VEHICLESENS_DATA_MASTER *>(&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<u_int16>(us_next_offset & ~us_boundary_adj); + /* Add numbers */ + us_next_offset = static_cast<u_int16>(us_next_offset + (u_int16) VEHICLESENS_BIT2); + } + us_offset = static_cast<u_int16>(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<uint8_t *>(&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<void *>(&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<uint8_t *>(&(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<void *>(&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<uint8_t *>(&(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<void *>(stmaster_fst), 0, sizeof(VEHICLESENS_DATA_MASTER_FST)); -// (void)memset(reinterpret_cast<void *>(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<u_int16>(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<uint8_t *>(&(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<void *>(&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<u_int16>(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<u_int16>(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<uint8_t *>(&(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<u_int16>(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<uint8_t *>(&(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<void *>(&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<u_int16>(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<u_int16>(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<uint8_t *>(&(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<u_int16>(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<uint8_t *>(&(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<void *>(&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<u_int16>(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<u_int16>(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<uint8_t *>(&(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<u_int16>(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<uint8_t *>(&(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<void *>(stmaster_fst), 0, sizeof(VEHICLESENS_DATA_MASTER_FST)); + (void)memset(reinterpret_cast<void *>(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<u_int16>(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<uint8_t *>(&(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<void *>(&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<u_int16>(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<u_int16>(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<uint8_t *>(&(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<u_int16>(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<uint8_t *>(&(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<void *>(&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<u_int16>(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<u_int16>(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<uint8_t *>(&(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<u_int16>(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<uint8_t *>(&(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<void *>(&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<u_int16>(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<u_int16>(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<uint8_t *>(&(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<u_int16>(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<uint8_t *>(&(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<void*>(&delivery_data), -// reinterpret_cast<void*>(&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<SENSORLOCATION_MSG_LONLATINFO*>(&delivery_data); -// /* Acquire the applicable data information from the data master..*/ -// VehicleSensGetDataMaster(ul_did, uc_get_method, &stmaster); -// (void)memcpy(reinterpret_cast<void*>(&(pLonLatMsg->data)), -// reinterpret_cast<void*>(&(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<SENSORLOCATION_MSG_ALTITUDEINFO*>(&delivery_data); -// /* Acquire the applicable data information from the data master..*/ -// VehicleSensGetDataMaster(ul_did, uc_get_method, &stmaster); -// (void)memcpy(reinterpret_cast<void*>(&(pAltitudeMsg->data)), -// reinterpret_cast<void*>(&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<SENSORMOTION_MSG_HEADINGINFO*>(&delivery_data); -// /* Acquire the applicable data information from the data master..*/ -// VehicleSensGetDataMaster(ul_did, uc_get_method, &stmaster); -// (void)memcpy(reinterpret_cast<void*>(&(pHeadingMsg->data)), -// reinterpret_cast<void*>(&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<void *>(&delivery_data.data[0]), -// reinterpret_cast<void *>(&gps_master.uc_data[0]), -// (size_t)delivery_data.header.size); -// -// length = static_cast<u_int16>((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<void*>(&delivery_data), + reinterpret_cast<void*>(&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<SENSORLOCATION_MSG_LONLATINFO*>(&delivery_data); + /* Acquire the applicable data information from the data master..*/ + VehicleSensGetDataMaster(ul_did, uc_get_method, &stmaster); + (void)memcpy(reinterpret_cast<void*>(&(pLonLatMsg->data)), + reinterpret_cast<void*>(&(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<SENSORLOCATION_MSG_ALTITUDEINFO*>(&delivery_data); + /* Acquire the applicable data information from the data master..*/ + VehicleSensGetDataMaster(ul_did, uc_get_method, &stmaster); + (void)memcpy(reinterpret_cast<void*>(&(pAltitudeMsg->data)), + reinterpret_cast<void*>(&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<SENSORMOTION_MSG_HEADINGINFO*>(&delivery_data); + /* Acquire the applicable data information from the data master..*/ + VehicleSensGetDataMaster(ul_did, uc_get_method, &stmaster); + (void)memcpy(reinterpret_cast<void*>(&(pHeadingMsg->data)), + reinterpret_cast<void*>(&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<void *>(&delivery_data.data[0]), + reinterpret_cast<void *>(&gps_master.uc_data[0]), + (size_t)delivery_data.header.size); + + length = static_cast<u_int16>((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>(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<uint8_t *>(&delivery_data), senslog_len, uc_result); -// } else { -// SensLogWriteOutputData(SENSLOG_DATA_O_UNSPECIFIED, ul_did, us_pno, -// reinterpret_cast<uint8_t *>(&(delivery_data.data[0])), senslog_len, uc_result); -// } + ret = VehicleSndMsg(PNO_VEHICLE_SENSOR, + us_pno, + static_cast<CID>(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<uint8_t *>(&delivery_data), senslog_len, uc_result); + } else { + SensLogWriteOutputData(SENSLOG_DATA_O_UNSPECIFIED, ul_did, us_pno, + reinterpret_cast<uint8_t *>(&(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<SENSOR_MSG_GPSDATA_DAT *>(&st_pkg_master.ucData[us_offset])); + VehicleSensGetGpsDataMaster(ul_pkg_did, + uc_get_method, + reinterpret_cast<SENSOR_MSG_GPSDATA_DAT *>(&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<u_int8>((usDataCnt[i] / VEHICLESENS_PKG_EXT_SEND_MAX_10DATA) + 1); -// } else { -// ucDivide100Cnt = static_cast<u_int8>(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<u_int8>((usDataCnt[i] / VEHICLESENS_PKG_EXT_SEND_MAX_10DATA) + 1); + } else { + ucDivide100Cnt = static_cast<u_int8>(usDataCnt[i] / VEHICLESENS_PKG_EXT_SEND_MAX_10DATA); + } + } + } } /* All-data undelivered flag holding Ignore->MISRA-C ++: 2008 Rule 5-0-5 */ ucDataBreak = static_cast<u_int8>(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<void *>(&stPkgMaster.ucData[usOffset]), - reinterpret_cast<void *>(&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>((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<void *>(&stPkgMaster.ucData[usOffset + 8]), -// reinterpret_cast<void *>(&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<u_int16>(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>((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<void *>(&stPkgMaster.ucData[usOffset + 8]), -// reinterpret_cast<void *>(&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>((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<void *>(&stPkgMaster.ucData[usOffset + 8]), -// reinterpret_cast<void *>(&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<u_int16>(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>((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<void *>(&stPkgMaster.ucData[usOffset + 8]), -// reinterpret_cast<void *>(&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<void *>(&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>((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<void *>(&stPkgMaster.ucData[usOffset + 8]), + reinterpret_cast<void *>(&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<u_int16>(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>((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<void *>(&stPkgMaster.ucData[usOffset + 8]), + reinterpret_cast<void *>(&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>((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<void *>(&stPkgMaster.ucData[usOffset + 8]), + reinterpret_cast<void *>(&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<u_int16>(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>((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<void *>(&stPkgMaster.ucData[usOffset + 8]), + reinterpret_cast<void *>(&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<void *>(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<void *>(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<void *>(&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<void *>(&(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<void *>(&(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<void *>(&(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<void *>(&(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 <vehicle_service/positioning_base_library.h> #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<BR> * 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 <vehicle_service/positioning_base_library.h> #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 <vehicle_service/positioning_base_library.h> #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 <vehicle_service/positioning_base_library.h> #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<u_int16>(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<u_int16>(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<u_int16>(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<u_int16>(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<u_int16>(sizeof(u_int16) * 10); /* Size of one data item: 2byte * 10 data items */ - us_size = static_cast<u_int16>(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<br> * 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<u_int16>(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<u_int16>(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<u_int16>(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<u_int16>(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<br> * 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<void *>(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<void *>(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<u_int16>(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<u_int16>(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<u_int16>(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<u_int16>(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<u_int16>(sizeof(u_int16) * 10); /* Size of one data item: 2byte * 10 data items */ - us_size = static_cast<u_int16>(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<br> * 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<u_int16>(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<u_int16>(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<u_int16>(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<u_int16>(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<void *>(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<void *>(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<u_int16>(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<u_int16>(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<u_int16>(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<br> + * 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<u_int16>(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<u_int16>(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<br> + * 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<void *>(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_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<void *>(&(gstGyroConnectStatus)), static_cast<int>(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<void *>(&(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<void *>(&(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<void *>(&(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<void *>(&(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<u_int16 *>(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<u_int16 *>(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<u_int16>(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<u_int16>(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<u_int16>(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<u_int16>(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<u_int16>(sizeof(u_int16) * 10); /* Size of one data item: 2byte * 10 data items */ + us_size = static_cast<u_int16>(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 <vehicle_service/positioning_base_library.h> -#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<u_int16 *>(gstGyroFst_l.uc_data); -// memset(reinterpret_cast<void*>(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<u_int16>(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<u_int16>(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<void *>(&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<void *>(&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<br> * 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<u_int16>(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<u_int16>(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<br> * 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<u_int16>(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<u_int16>(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<u_int16>(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<u_int16>(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<void *>(&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<br> * 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<void *>(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<void *>(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<void *>(&(gstGyroTrouble)), static_cast<int>(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<void *>(&(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<void *>(&(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_Gyro.cpp b/positioning/server/src/Sensor/VehicleSens_Did_GyroX.cpp index c3c8b81a..3cda53a4 100644 --- a/positioning/server/src/Sensor/VehicleSens_Did_Gyro.cpp +++ b/positioning/server/src/Sensor/VehicleSens_Did_GyroX.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. @@ -15,11 +15,11 @@ */ /******************************************************************************* - * File name :VehicleSens_Did_Gyro.cpp + * File name :VehicleSens_Did_GyroX.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 + * Program name :Vehicle sensor data master(VEHICLE_DID_GYRO_X) + * Module configuration :VehicleSensGetGyroX() Vehicle Sensor GYRO GET Functions ******************************************************************************/ #include <vehicle_service/positioning_base_library.h> @@ -30,15 +30,15 @@ /*************************************************/ /******************************************************************************* -* MODULE : VehicleSensGetGyro -* ABSTRACT : Vehicle Sensor GYRO GET Functions +* 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 VehicleSensGetGyro(VEHICLESENS_DATA_MASTER *pst_data, u_int8 uc_get_method) { +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: { @@ -49,7 +49,7 @@ void VehicleSensGetGyro(VEHICLESENS_DATA_MASTER *pst_data, u_int8 uc_get_method) case VEHICLESENS_GETMETHOD_LINE: { /* To acquire from LineSensor */ - VehicleSensGetGyrol(pst_data); + VehicleSensGetGyroXl(pst_data); break; } default: @@ -115,15 +115,15 @@ void VehicleSensGetGyroExt(VEHICLESENS_DATA_MASTER_EXT *pst_data, u_int8 uc_get_ } /******************************************************************************* -* MODULE : VehicleSensGetGyroFst -* ABSTRACT : Vehicle Sensor GYRO GET Functions +* 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 VehicleSensGetGyroFst(VEHICLESENS_DATA_MASTER_FST *pst_data, u_int8 uc_get_method) { +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: { @@ -134,7 +134,7 @@ void VehicleSensGetGyroFst(VEHICLESENS_DATA_MASTER_FST *pst_data, u_int8 uc_get_ case VEHICLESENS_GETMETHOD_LINE: { /* To acquire from LineSensor */ - VehicleSensGetGyroFstl(pst_data); + VehicleSensGetGyroXFstl(pst_data); break; } default: 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 <vehicle_service/positioning_base_library.h> +#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<u_int16 *>(gstGyroXFst_l.uc_data); + memset(reinterpret_cast<void*>(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<u_int16>(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<u_int16>(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_Gyro_l.cpp b/positioning/server/src/Sensor/VehicleSens_Did_GyroX_l.cpp index 26112d53..af90e250 100644 --- a/positioning/server/src/Sensor/VehicleSens_Did_Gyro_l.cpp +++ b/positioning/server/src/Sensor/VehicleSens_Did_GyroX_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. @@ -15,13 +15,13 @@ */ /******************************************************************************* - * File name :VehicleSens_Did_Gyro_l.cpp + * File name :VehicleSens_Did_GyroX_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 + * 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 <vehicle_service/positioning_base_library.h> @@ -30,93 +30,93 @@ /*************************************************/ /* Global variable */ /*************************************************/ -static VEHICLESENS_DATA_MASTER gstGyro_l; // NOLINT(readability/nolint) +static VEHICLESENS_DATA_MASTER gstGyroX_l; // NOLINT(readability/nolint) /******************************************************************************* -* MODULE : VehicleSensInitGyrol -* ABSTRACT : Vehicle Sensor GYRO Initialization Functions +* MODULE : VehicleSensInitGyroXl +* ABSTRACT : Vehicle Sensor GYRO_X 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; +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 : VehicleSensSetGyrol -* ABSTRACT : Vehicle Sensor GYRO SET Functions +* 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 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<void *>(pst_master->uc_data), -// (const void *)(pst_data->uc_data), (size_t)pst_data->uc_size); -// -// return(uc_ret); -//} +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<void *>(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 +* 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 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<void *>(pst_master->uc_data), -// (const void *)(pst_data->uc_data), (size_t)(pst_data->uc_size)); -// -// return(uc_ret); -//} +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<void *>(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 +* 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 VehicleSensGetGyrol(VEHICLESENS_DATA_MASTER *pst_data) { +void VehicleSensGetGyroXl(VEHICLESENS_DATA_MASTER *pst_data) { const VEHICLESENS_DATA_MASTER *pst_master; - pst_master = &gstGyro_l; + pst_master = &gstGyroX_l; /* Store the data master in the specified destination. */ pst_data->ul_did = pst_master->ul_did; 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<u_int16 *>(gstGyroYExt_l.uc_data); + memset(reinterpret_cast<void*>(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<u_int16>(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<u_int16>(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<u_int16>(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<u_int16 *>(gstGyroYFst_l.uc_data); + memset(reinterpret_cast<void*>(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<u_int16>(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<u_int16>(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<void *>(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<void *>(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<void *>(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<u_int16 *>(gstGyroZExt_l.uc_data); + memset(reinterpret_cast<void*>(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<u_int16>(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<u_int16>(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<u_int16>(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<u_int16 *>(gstGyroZFst_l.uc_data); + memset(reinterpret_cast<void*>(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<u_int16>(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<u_int16>(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<void *>(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<void *>(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<void *>(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<BR> 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<BR> 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<void *>(&(gstMainGpsInterruptSignal)), static_cast<int>(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<void *>(&(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<void *>(&(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<void *>(&(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<void *>(&(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<BR> 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<int16>(st_heading.Heading); -// if (i_heading > 0) { -// i_heading = static_cast<int16>(360 - i_heading); -// } else { -// i_heading = static_cast<int16>(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<int16>(st_heading.Heading); + if (i_heading > 0) { + i_heading = static_cast<int16>(360 - i_heading); + } else { + i_heading = static_cast<int16>(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<br> * 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<br> * 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<br> * 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<BR> @@ -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<VEHICLESENS_DATA_MASTER_GPS_FORMAT*>(&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<VEHICLESENS_DATA_MASTER_GPS_FORMAT*>(&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<void *>(&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<void *>(&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<br> * 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<u_int16>(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<u_int16>(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<u_int16>(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<u_int16>(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<u_int16>(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<u_int16>(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<br> * 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<void *>(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<void *>(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<u_int16 *>(g_st_revext_l.uc_data); -// memset(reinterpret_cast<void*>(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<u_int16 *>(g_st_revext_l.uc_data); + memset(reinterpret_cast<void*>(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<u_int16>(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<u_int16>(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<void *>(&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<void *>(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<void *>(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<u_int16>(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<u_int16>(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<u_int16>(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<u_int16>(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<void *>(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<void *>(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<void *>(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<void *>(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<u_int16 *>(gstSnsCounterExt_l.uc_data); memset(reinterpret_cast<void*>(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<u_int16>(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<u_int16>(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<u_int16 *>(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<u_int16 *>(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<u_int16>(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<u_int16>(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<u_int16>(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<u_int16>(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<u_int16>(sizeof(u_int16) * 10); /* Size of one data item: 2byte * 10 data items */ - us_size = static_cast<u_int16>(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<void *>(&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<void *>(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<void *>(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<u_int16 *>(gstSpeedPulseFst_l.uc_data); -// memset(reinterpret_cast<void*>(pus), VEHICLE_DINIT_SPEED_PULSE, VEHICLE_DSIZE_SPEED_PULSE_FST); + memset(reinterpret_cast<void*>(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<u_int16>(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<u_int16>(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<u_int16>(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<u_int16>(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<void *>(&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<void *>(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<void *>(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<void *>(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<void *>(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<void *>(&(gstSysGpsInterruptSignal)), static_cast<int>(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<void *>(&(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<void *>(&(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<void *>(&(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<void *>(&(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 <vehicle_service/positioning_base_library.h> -#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<void *>(&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 <positioning_hal.h> +#include <positioning_hal.h> #include <vehicle_service/positioning_base_library.h> #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<LSDRV_MSG_LSDATA_G**>(&p_msg_buf); -// p_vehicle_msg = reinterpret_cast<VEHICLE_MSG_BUF**>(&p_msg_buf); + p_lsdrv_msg = reinterpret_cast<LSDRV_MSG_LSDATA_G**>(&p_msg_buf); + p_vehicle_msg = reinterpret_cast<VEHICLE_MSG_BUF**>(&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<T_APIMSG_MSGBUF_HEADER *>(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<LSDRV_MSG_LSDATA_G*>(*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<SENSOR_MSG_GPSDATA *>(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<POS_MSGINFO*>((reinterpret_cast<VEHICLE_MSG_BUF*>(*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<TimerToutMsg*>(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<T_APIMSG_MSGBUF_HEADER *>(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<LSDRV_MSG_LSDATA_G*>(*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<SENSOR_MSG_GPSDATA *>(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<POS_MSGINFO*>((reinterpret_cast<VEHICLE_MSG_BUF*>(*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<TimerToutMsg*>(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<uint8_t *>(&(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<uint8_t *>(&(gps_master.uc_data[0])), + gps_master.us_size, SENSLOG_RES_SUCCESS); + } } else { (void)memset(reinterpret_cast<void *>(&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<SENSOR_MSG_GPSDATA_DAT *>(&(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<SENSOR_MSG_GPSDATA_DAT *>(&(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<u_int16>(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<void *>(&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<u_int16>(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<void *>(&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<u_int16>(size + sizeof(header)); -// mode = 0; -// ret_api = _pb_SndMsg(PNO_NAVI_GPS_MAIN, all_len, reinterpret_cast<void *>(&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<u_int16>(size + sizeof(header)); + mode = 0; + ret_api = _pb_SndMsg(PNO_NAVI_GPS_MAIN, all_len, reinterpret_cast<void *>(&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<uint32_t>(gps_ret_time->status), static_cast<uint32_t>(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<uint32_t>(gps_ret_time->status), static_cast<uint32_t>(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; } @@ -2074,137 +2051,6 @@ static inline RET_API VehicleSens_GeneratePASCDFieldCRLF(char* pascd, size_t siz /** * @brief - * Generate PASCD Sentence (Vehicle Speed Data) - * - * @details This is for creating PASCD Sentence of NMEA. <br> - * 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<CR><LF> - */ -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_ * * @details This is for creating PASCD Sentence of NMEA. <br> @@ -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 <br> - * 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 <vehicle_service/positioning_base_library.h> 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 <vehicle_service/positioning_base_library.h> -//#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 <vehicle_service/positioning_base_library.h> #include "ClockIf.h" -//#include <vehicle_service/clock_notifications.h> +#include <stub/clock_notifications.h> /*---------------------------------------------------------------------------------* * 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 <vehicle_service/positioning_base_library.h> -//#include <stub/DiagCodeAPI.h> #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 <vehicle_service/positioning_base_library.h> -//#include "stub/Vehicle_Sensor_Common_API.h" -//#include <stub/Vehicle_API.h> -//#include "stub/vehicle_notifications.h" +#include <stub/Vehicle_Sensor_Common_API.h> +#include <stub/Vehicle_API.h> +#include <stub/vehicle_notifications.h> #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 <vehicle_service/POS_gps_API.h> #include <system_service/ss_sm_client_if.h> #include <vehicle_service/positioning_base_library.h> -//#include <stub/vehicle_notifications.h> +#include <stub/vehicle_notifications.h> #include <peripheral_service/communication_notifications.h> #include <other_service/VP_GetEnv.h> #include <cstdlib> @@ -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<char *>(&buf_ram[0]), reinterpret_cast<char *>(&buf_tmp[0]), sizeof(buf_tmp)); - /* Set GPS date and time(Flagging) */ - memset(&buf_tmp[0], 0x00, sizeof(buf_tmp)); - (void)memset( reinterpret_cast<void *>(&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<char *>(&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<char *>(&buf_ram[0]), reinterpret_cast<char *>(&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<POS_RESETINFO *>(&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<void *>(&st_gps_set_time_flag), 0, (size_t)sizeof(st_gps_set_time_flag) ); (void)memset( reinterpret_cast<void *>(&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<void**>(&pRcvMsg), MAX_MSG_BUF_SIZE); -// if (size != 0) { // LCOV_EXCL_BR_LINE 4: nsfw error -// ucResult = SENSLOG_RES_SUCCESS; -// -// pName = _pb_CnvPno2Name((reinterpret_cast<POS_MSGINFO*>(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<POS_MSGINFO*>(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<POS_MSGINFO*>(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<POS_MSGINFO*>(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<POS_MSGINFO*>(pRcvMsg))->did, -// 0, -// pRcvMsg, -// static_cast<uint16_t>(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<POS_MSGINFO*>(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<POS_MSGINFO*>(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<POS_MSGINFO*>(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<POS_MSGINFO*>(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<POS_MSGINFO*>(pRcvMsg))->did, + 0, + pRcvMsg, + static_cast<uint16_t>(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<void**>(&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<VEHICLE_UNIT_MSG_VSINFO*>(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<uint16_t>(abs(speed)); -// // Unit conversion [km/h] -> [0.01km/h] -// us_speed = static_cast<uint16_t>(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<uint16_t>(abs(speed)); -// // Unit conversion [km/h] -> [0.01km/h] -// us_speed = static_cast<uint16_t>(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<uint16_t>(abs(speed)); -// // Unit conversion [km/h] -> [0.01km/h] -// us_speed = static_cast<uint16_t>(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<void*>(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<void*>(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<void*>(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<VEHICLE_UNIT_MSG_VSINFO*>(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<uint16_t>(abs(speed)); + // Unit conversion [km/h] -> [0.01km/h] + us_speed = static_cast<uint16_t>(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<uint16_t>(abs(speed)); + // Unit conversion [km/h] -> [0.01km/h] + us_speed = static_cast<uint16_t>(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<uint16_t>(abs(speed)); + // Unit conversion [km/h] -> [0.01km/h] + us_speed = static_cast<uint16_t>(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<void*>(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<void*>(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<void*>(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<T_APIMSG_MSGBUF_HEADER*>(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. |