From a3c194e003b0cfb272e153ff11c510e02c5f72cd Mon Sep 17 00:00:00 2001
From: yy1717 <fctom1215@outlook.com>
Date: 星期一, 25 五月 2020 18:32:11 +0800
Subject: [PATCH] 坐标
---
lib/src/main/cpp/test_items2/drive_straight.cpp | 34 +++++++++++++++++++++++++++++++---
1 files changed, 31 insertions(+), 3 deletions(-)
diff --git a/lib/src/main/cpp/test_items2/drive_straight.cpp b/lib/src/main/cpp/test_items2/drive_straight.cpp
index 3b9f8d3..4e006f3 100644
--- a/lib/src/main/cpp/test_items2/drive_straight.cpp
+++ b/lib/src/main/cpp/test_items2/drive_straight.cpp
@@ -8,6 +8,7 @@
#include "../jni_log.h"
#include "road_exam.h"
#include "../master/comm_if.h"
+#include "../common/apptimer.h"
#include <cmath>
#define DEBUG(fmt, args...) LOGD("<drive_straight> <%s>: " fmt, __func__, ##args)
@@ -20,24 +21,30 @@
static bool reportOffsetOver;
static double edgeDistance;
static double distanceToStartSum;
+static int examTtsSeq;
static double CalcDistance2Edge(road_t &road, const car_model *car);
+static void PlayTTSTimeout(union sigval sig);
void StartDriveStraightExam(std::string tts) {
DEBUG("寮�濮嬬洿绾胯椹�");
+ ttsPlayEnd = 0;
if (!tts.empty()) {
- PlayTTS(tts.c_str());
+ examTtsSeq = PlayTTS(tts.c_str());
} else {
- DEBUG("娌℃湁TTS");
+ examTtsSeq = PlayTTS("璇蜂繚鎸佺洿绾胯椹�");
}
distanceToStartSum = 0;
reportOffsetOver = false;
+
+ AppTimer_delete(PlayTTSTimeout);
+ AppTimer_add(PlayTTSTimeout, D_SEC(5));
}
int ExecuteDriveStraightExam(road_t &road, const car_model *car,
- LIST_CAR_MODEL &CarModelList, double speed, int moveDirect, const struct RtkTime *rtkTime) {
+ const trigger_line_t *item, const struct RtkTime *rtkTime) {
static PointF startPoint;
double dis2roadEdge = 0;
@@ -86,6 +93,27 @@
return 1;
}
+void DriveStraightTTSDone(int id)
+{
+ // 绛夎闊虫挱鎶ュ畬姣曞悗璁℃椂
+ if (id == examTtsSeq) {
+ DEBUG("StopCarTTSDone %d", id);
+ ttsPlayEnd = 1;
+ }
+}
+
+void TerminateDriveStraightExam(void)
+{
+ AppTimer_delete(PlayTTSTimeout);
+}
+
+static void PlayTTSTimeout(union sigval sig)
+{
+ AppTimer_delete(PlayTTSTimeout);
+
+ ttsPlayEnd = 1;
+}
+
static double CalcDistance2Edge(road_t &road, const car_model *car)
{
PointF vp;
--
Gitblit v1.8.0