yy1717
2020-03-21 1101dc614acb3cd794c13cd68c9a24d7c353cb28
lib/src/main/cpp/driver_test.cpp
@@ -277,7 +277,7 @@
    }
}
void AddRoadMapParent(int id, int type, string tts,
void AddRoadMapParent(int id, int type, string tts, int stopFlag,
        vector<vector<int>> &redLines,
                      vector<vector<int>> &redAreas,
                      vector<vector<int>> &greenLines,
@@ -290,8 +290,13 @@
    newMap.id = id;
    newMap.type = type;
    newMap.tts = tts;
    newMap.flagStop = stopFlag;
    DEBUG("加入路考地图信息 id = %d type = %d", id, type);
    if (!tts.empty()) {
        DEBUG("TTS 信息 = %s", tts.c_str());
    }
    if ((newMap.redLineNum = redLines.size()) > 0) {
        newMap.redLine = (Polygon *) malloc(sizeof(Polygon) * newMap.redLineNum);
@@ -357,7 +362,7 @@
            newMap.triggerLine[i].line.num = triggerLines[i].size() - 1;
            newMap.triggerLine[i].line.point = (PointF *) malloc(sizeof(PointF) * newMap.triggerLine[i].line.num);
            DEBUG("    结点 %d 个", newMap.triggerLine[i].line.num);
            DEBUG("    结点 %d 个, 触发 id = %d", newMap.triggerLine[i].line.num, triggerLines[i][0]);
            newMap.triggerLine[i].triggerMapId = triggerLines[i][0];
            for (int j = 0; j < newMap.triggerLine[i].line.num; ++j) {
@@ -497,7 +502,7 @@
{
    DEBUG("获取模拟路考灯光测试项目 N = %d %d", n, ExamStart);
//    if (ExamStart) return;
    if (ExamStart) return;
    if (DummyLightContent != NULL) {
        free(DummyLightContent);
@@ -538,8 +543,8 @@
    }
    if (DummyLightContent == NULL && type == TEST_TYPE_ROAD_DUMMY_LIGHT) {
        DEBUG("没有模拟灯光");
        err = true;
        MA_SendExamStatus(0, -3);
//        err = true;
//        MA_SendExamStatus(0, -3);
    }
    if (type != TEST_TYPE_AREA && (RoadMapPoints.num == 0 || RoadMapPoints.point == NULL || RoadMapList.size() == 0)) {
        DEBUG("没有路考地图");
@@ -559,6 +564,8 @@
            if (type == TEST_TYPE_ROAD_DUMMY_LIGHT) {
                exam_dummy_light = 0;
//                InitRoadExam();         ////////////////////
            }
        }
        MA_SendExamStatus(1, 0);
@@ -733,16 +740,18 @@
        if (ExamType == TEST_TYPE_AREA)
            AddExamFault(4, rtkTime);
    }
DEBUG("22222222222222222222");
    if (ExamType == TEST_TYPE_ROAD_DUMMY_LIGHT) {
        if (exam_dummy_light == 0) {
            StartDummyLightExam(DummyLightContent, DummyLightContentSize, rtkTime);
            exam_dummy_light = 1;
            // 汇报灯光考试开始
            DEBUG("灯光考试开始");
        } else if (exam_dummy_light == 1) {
            exam_dummy_light = ExecuteDummyLightExam(rtkTime);
            // 汇报灯光考试结束
            if (exam_dummy_light == 2) {
                DEBUG("灯光考试结束");
                InitRoadExam();
            }
        }
@@ -912,6 +921,7 @@
    tm.DD = RtkBuffer[p1].DD;
    tm.hh = RtkBuffer[p1].hh;
    tm.mm = RtkBuffer[p1].mm;
    tm.ss = RtkBuffer[p1].ss;
    tm.mss = RtkBuffer[p1].dss;
    UpdateCarBodyCoord(&tm, RtkBuffer[p1].heading, RtkBuffer[p1].pitch, RtkBuffer[p1].roll, main_ant_coord, CarModel);
@@ -1210,6 +1220,11 @@
    fault.sn = examFaultIndex++;
    sprintf(fault.utc, "%04d%02d%02d%02d%02d%02d.%02d", 2000 + rtkTime->YY,
            rtkTime->MM, rtkTime->DD, rtkTime->hh, rtkTime->mm, rtkTime->ss, rtkTime->mss);
    if (ExamType != TEST_TYPE_AREA) {
        wrong += 1000;
    }
    fault.wrong_id = wrong;
    DEBUG("考试发生错误 %d %s", wrong, fault.utc);