From 2dd405a64e0a6e468a205e7348520e87576e5358 Mon Sep 17 00:00:00 2001 From: yy1717 <fctom1215@outlook.com> Date: 星期一, 09 三月 2020 17:13:12 +0800 Subject: [PATCH] 更新地图 --- lib/src/main/cpp/driver_test.cpp | 34 +++++++++++++++++++++++++++++++--- 1 files changed, 31 insertions(+), 3 deletions(-) diff --git a/lib/src/main/cpp/driver_test.cpp b/lib/src/main/cpp/driver_test.cpp index c961a25..699c23c 100644 --- a/lib/src/main/cpp/driver_test.cpp +++ b/lib/src/main/cpp/driver_test.cpp @@ -93,6 +93,9 @@ static int SensorValidLevel; +static struct dummy_light_exam *DummyLightContent; +static int DummyLightContentSize; + #define MOV_AVG_SIZE 1 #define RTK_BUFFER_SIZE 100 #define CAR_MODEL_CACHE_SIZE 10 @@ -129,6 +132,9 @@ memset(SensorConfig, 0, sizeof(SensorConfig)); SensorValidLevel = 0; + + DummyLightContentSize = 0; + DummyLightContent = NULL; RtkBuffer = (rtk_info *) malloc(RTK_BUFFER_SIZE * sizeof(rtk_info)); RtkBufferNum = RtkBufferIn = 0; @@ -359,7 +365,24 @@ } } -void StartDriverExam(int start) +void SetDummyLightExam(int n, struct dummy_light_exam *cfg) +{ + if (TestStart) return; + + if (DummyLightContent != NULL) { + free(DummyLightContent); + DummyLightContent = NULL; + } + + DummyLightContent = (struct dummy_light_exam *)malloc(n * sizeof(struct dummy_light_exam)); + DummyLightContentSize = n; + + for (int i = 0; i < n; i++) { + DummyLightContent[i] = cfg[i]; + } +} + +void StartDriverExam(int start, int type) { bool err = false; @@ -383,6 +406,11 @@ err = true; MA_SendExamStatus(0, -2); } + if (DummyLightContent == NULL && type == 3) { + err = true; + MA_SendExamStatus(0, -3); + } + if (!err) { if (!TestStart) { ExamFaultList.clear(); @@ -498,7 +526,7 @@ CurrEnterMapIndex = EnterMap(CarModel, MapList, MapNum); if (CurrEnterMapIndex >= 0) { DEBUG("鍙戦�佽繘鍏ュ満鍦版姤鍛� %d", GetMapId(CurrEnterMapIndex, MapList, MapNum)); - MA_EnterMap(GetMapId(CurrEnterMapIndex, MapList, MapNum), 1); + MA_EnterMap(GetMapId(CurrEnterMapIndex, MapList, MapNum), GetMapType(CurrEnterMapIndex, MapList, MapNum), 1); CurrExamMapIndex = CurrEnterMapIndex; CurrExamStatus = EXAM_AREA_START; @@ -506,7 +534,7 @@ } else { if (ExitMap(CarModel, CurrEnterMapIndex, MapList, MapNum)) { DEBUG("鍙戦�佺寮�鍦哄湴鎶ュ憡 %d", GetMapId(CurrEnterMapIndex, MapList, MapNum)); - MA_EnterMap(GetMapId(CurrEnterMapIndex, MapList, MapNum), 0); + MA_EnterMap(GetMapId(CurrEnterMapIndex, MapList, MapNum), GetMapType(CurrEnterMapIndex, MapList, MapNum), 0); CurrEnterMapIndex = -1; } } -- Gitblit v1.8.0