diff --git a/.gitignore b/.gitignore index a4a68abd..05b440e6 100644 --- a/.gitignore +++ b/.gitignore @@ -7,4 +7,5 @@ .cxx /.clangd /.clang-format -/.clang-tidy \ No newline at end of file +/.clang-tidy +/entry/src/main/cpp/ diff --git a/build-profile.json5 b/build-profile.json5 index d00726aa..ec24561c 100644 --- a/build-profile.json5 +++ b/build-profile.json5 @@ -3,15 +3,14 @@ "signingConfigs": [ { "name": "default", - "type": "HarmonyOS", "material": { - "certpath": "C:\\Users\\lvyuankang\\.ohos\\config\\openharmony\\auto_ohos_default_subject-two_com.oh.dts.cer", - "storePassword": "000000196C396C316487A43A98EF15626CB3607497CF9DE834B8522AFF4BCC81FBE0F8588BA161CED8", + "certpath": "/Users/wangzhongjie/.ohos/config/openharmony/auto_ohos_default_subject-two_com.oh.dts.cer", + "storePassword": "0000001A411B16D84BA448A9AED56C5B7E351A55B8BA7BA0073A2313B214C24C5740A4B49E6E80AD05F0", "keyAlias": "debugKey", - "keyPassword": "00000019E303B1483B2AF630EB5C3AA1BD1A670C1C8F31F84C3DA43C32F816CC733FEFC11B843E23E6", - "profile": "C:\\Users\\lvyuankang\\.ohos\\config\\openharmony\\auto_ohos_default_subject-two_com.oh.dts.p7b", + "keyPassword": "0000001AD6836BCC5536725F76279FB36A15D9F61E7CE88C2D043642297F81A9662DEB365314D756CB63", + "profile": "/Users/wangzhongjie/.ohos/config/openharmony/auto_ohos_default_subject-two_com.oh.dts.p7b", "signAlg": "SHA256withECDSA", - "storeFile": "C:\\Users\\lvyuankang\\.ohos\\config\\openharmony\\auto_ohos_default_subject-two_com.oh.dts.p12" + "storeFile": "/Users/wangzhongjie/.ohos/config/openharmony/auto_ohos_default_subject-two_com.oh.dts.p12" } } ], diff --git a/entry/src/main/cpp/BUILD.gn b/entry/src/main/cpp/BUILD.gn index 0c6ada09..5e30cdf1 100644 --- a/entry/src/main/cpp/BUILD.gn +++ b/entry/src/main/cpp/BUILD.gn @@ -1,4 +1,4 @@ -# judge library build +# FFmpeg build import("//build/ohos.gni") @@ -14,21 +14,24 @@ ohos_source_set("judge_dynamic") { "sdk/api/js/JSTypedef.cpp", "sdk/api/platform/JudgeApiFactory.cpp", "sdk/api/platform/JudgeSdk.cpp", - "sdk/common/CostTimeHelper.cpp", + "sdk/common/CleverHelper.cpp", "sdk/common/CryptoAlgorithm.cpp", + "sdk/common/HSystem.cpp", + "sdk/common/HVersion.cpp", "sdk/common/Loggerxx.cpp", - "sdk/common/ProfilerHelper.cpp", - "sdk/common/TAssert.cpp", "sdk/common/TQueue.cpp", "sdk/common/TimerPool.cpp", "sdk/common/Tools.cpp", + "sdk/database/IDBTables.cpp", "sdk/database/carinfo/CarInfoTable.cpp", - "sdk/database/mark/MarkItemRule.cpp", + "sdk/database/iteminfo/ItemInfoTable.cpp", + "sdk/database/mappoint/MapPointItemTable.cpp", + "sdk/database/mappoint/MapPointTable.cpp", "sdk/database/mark/MarkTable.cpp", "sdk/database/sysparm/SysParmTable.cpp", "sdk/database/sysset/SysSetTable.cpp", - "sdk/database/sysset/XSysSet.cpp", - "sdk/exam/ExamCar.cpp", + "sdk/exam/ExamCarSub2.cpp", + "sdk/exam/ExamCarSub3.cpp", "sdk/exam/ExamDatagram.cpp", "sdk/exam/ExamHistory.cpp", "sdk/exam/ExamSensor.cpp", @@ -39,29 +42,55 @@ ohos_source_set("judge_dynamic") { "sdk/graphic/IGraphicAbstract.cpp", "sdk/judge/IJudgeBrokerInterface.cpp", "sdk/judge/IJudgeItem.cpp", - "sdk/judge/JudgeItemFactory.cpp", - "sdk/judge/sub2/ISub2Judge.cpp", - "sdk/judge/sub2/Sub2JudgeCftc.cpp", - "sdk/judge/sub2/Sub2JudgeComm.cpp", - "sdk/judge/sub2/Sub2JudgeDcrk.cpp", - "sdk/judge/sub2/Sub2JudgePdqb.cpp", - "sdk/judge/sub2/Sub2JudgeQxxs.cpp", - "sdk/judge/sub2/Sub2JudgeZjzw.cpp", - "sdk/judge/sub3/ISub3Judge.cpp", + "sdk/judge/sub2/ISub2JudgeItem.cpp", + "sdk/judge/sub2/ISub2JudgeWrap.cpp", + "sdk/judge/sub2/Sub2Judge00Dcrk.cpp", + "sdk/judge/sub2/Sub2Judge02Pdqb.cpp", + "sdk/judge/sub2/Sub2Judge03Cftc.cpp", + "sdk/judge/sub2/Sub2Judge05Qxxs.cpp", + "sdk/judge/sub2/Sub2Judge06Zjzw.cpp", + "sdk/judge/sub2/Sub2Judge20Comm.cpp", + "sdk/judge/sub3/ISub3JudgeItem.cpp", + "sdk/judge/sub3/ISub3JudgeWrap.cpp", + "sdk/judge/sub3/Sub3Judge01Sczb.cpp", + "sdk/judge/sub3/Sub3Judge02Qbxx.cpp", + "sdk/judge/sub3/Sub3Judge03Zxxs.cpp", + "sdk/judge/sub3/Sub3Judge04Bgcd.cpp", + "sdk/judge/sub3/Sub3Judge05Lkzx.cpp", + "sdk/judge/sub3/Sub3Judge06Rxhd.cpp", + "sdk/judge/sub3/Sub3Judge07Xxqy.cpp", + "sdk/judge/sub3/Sub3Judge08Gjzt.cpp", + "sdk/judge/sub3/Sub3Judge09Hcxx.cpp", + "sdk/judge/sub3/Sub3Judge10Ccxx.cpp", + "sdk/judge/sub3/Sub3Judge11Kbtc.cpp", + "sdk/judge/sub3/Sub3Judge12Dtxx.cpp", + "sdk/judge/sub3/Sub3Judge12Lkdt.cpp", + "sdk/judge/sub3/Sub3Judge12Ptdt.cpp", + "sdk/judge/sub3/Sub3Judge13Yjxs.cpp", + "sdk/judge/sub3/Sub3Judge14Jjdw.cpp", + "sdk/judge/sub3/Sub3Judge15Lkzz.cpp", + "sdk/judge/sub3/Sub3Judge16Lkyz.cpp", + "sdk/judge/sub3/Sub3Judge20Comm.cpp", + "sdk/judge/sub3/Sub3Judge41Mndg.cpp", "sdk/parser/XIParser.cpp", "sdk/parser/XParser.cpp", "sdk/parser/XParser2.cpp", "sdk/survey/ISurveyCar.cpp", "sdk/survey/ISurveyItem.cpp", - "sdk/survey/SurveyFactory.cpp", + "sdk/survey/ISurveySubject.cpp", "sdk/survey/car/SurveyCar.cpp", + "sdk/survey/sub2/ISub2SurveyFactory.cpp", "sdk/survey/sub2/ISub2SurveyItem.cpp", "sdk/survey/sub2/Sub2SurveyCftc.cpp", "sdk/survey/sub2/Sub2SurveyDcrk.cpp", "sdk/survey/sub2/Sub2SurveyPdqb.cpp", "sdk/survey/sub2/Sub2SurveyQxxs.cpp", "sdk/survey/sub2/Sub2SurveyZjzw.cpp", + "sdk/survey/sub3/ISub3SurveyFactory.cpp", "sdk/survey/sub3/ISub3SurveyItem.cpp", + "sdk/survey/sub3/Sub3MeshDefines.cpp", + "sdk/survey/sub3/Sub3SurveyRoads.cpp", + "sdk/survey/sub3/Sub3SurveySharps.cpp", "sdk/track/TrackReader.cpp", "sdk/track/TrackWriter.cpp", "sdk/utility/Geometry.cpp", @@ -79,7 +108,7 @@ ohos_source_set("judge_dynamic") { "third/libb64/base64.cpp", "third/libb64/cdecode.c", "third/libb64/cencode.c", - "third/tinyxml2-9.0.0/tinyxml2.cpp" + "third/tinyxml2-9.0.0/tinyxml2.cpp", ] include_dirs = [ "sdk", @@ -92,6 +121,8 @@ ohos_source_set("judge_dynamic") { "sdk/common", "sdk/database", "sdk/database/carinfo", + "sdk/database/iteminfo", + "sdk/database/mappoint", "sdk/database/mark", "sdk/database/sysparm", "sdk/database/sysset", @@ -133,24 +164,30 @@ ohos_source_set("judge_dynamic") { "__OHOS_FAMILY__", ] cflags = [ + "-Wno-implicit-fallthrough", + "-Wno-unused-private-field", + "-Wunknown-warning-option", + "-Wno-unused-const-variable", "-Wno-unused-variable", "-Wno-deprecated-declarations", "-Wno-unused-command-line-argument", "-Wno-tautological-constant-out-of-range-compare", "-Wno-unused-function", "-Wno-unused-parameter", - "-Wno-unused-but-set-variable", "-fexceptions", ] cflags_cc = [ + "-Wno-implicit-fallthrough", + "-Wno-unused-private-field", + "-Wunknown-warning-option", + "-Wno-unused-const-variable", "-Wno-unused-variable", "-Wno-deprecated-declarations", "-Wno-unused-command-line-argument", "-Wno-tautological-constant-out-of-range-compare", "-Wno-unused-function", "-Wno-unused-parameter", - "-Wno-unused-but-set-variable", "-fexceptions", "-std=c++17", "-stdlib=libc++", diff --git a/entry/src/main/cpp/bin/extract_h_cpp_files.txt b/entry/src/main/cpp/bin/extract_h_cpp_files.txt index a1a4940c..9c3c0abc 100644 --- a/entry/src/main/cpp/bin/extract_h_cpp_files.txt +++ b/entry/src/main/cpp/bin/extract_h_cpp_files.txt @@ -8,23 +8,24 @@ "sdk/api/js/JSTypedef.cpp", "sdk/api/platform/JudgeApiFactory.cpp", "sdk/api/platform/JudgeSdk.cpp", - "sdk/common/CostTimeHelper.cpp", + "sdk/common/CleverHelper.cpp", "sdk/common/CryptoAlgorithm.cpp", + "sdk/common/HSystem.cpp", + "sdk/common/HVersion.cpp", "sdk/common/Loggerxx.cpp", - "sdk/common/ProfilerHelper.cpp", - "sdk/common/TAssert.cpp", "sdk/common/TQueue.cpp", "sdk/common/TimerPool.cpp", "sdk/common/Tools.cpp", - "sdk/database/IDatabaseTable.cpp", + "sdk/database/IDBTables.cpp", "sdk/database/carinfo/CarInfoTable.cpp", + "sdk/database/iteminfo/ItemInfoTable.cpp", "sdk/database/mappoint/MapPointItemTable.cpp", "sdk/database/mappoint/MapPointTable.cpp", - "sdk/database/mark/MarkItemRule.cpp", "sdk/database/mark/MarkTable.cpp", "sdk/database/sysparm/SysParmTable.cpp", "sdk/database/sysset/SysSetTable.cpp", - "sdk/exam/ExamCar.cpp", + "sdk/exam/ExamCarSub2.cpp", + "sdk/exam/ExamCarSub3.cpp", "sdk/exam/ExamDatagram.cpp", "sdk/exam/ExamHistory.cpp", "sdk/exam/ExamSensor.cpp", @@ -35,15 +36,36 @@ "sdk/graphic/IGraphicAbstract.cpp", "sdk/judge/IJudgeBrokerInterface.cpp", "sdk/judge/IJudgeItem.cpp", - "sdk/judge/JudgeItemFactory.cpp", - "sdk/judge/sub2/ISub2Judge.cpp", - "sdk/judge/sub2/Sub2JudgeCftc.cpp", - "sdk/judge/sub2/Sub2JudgeComm.cpp", - "sdk/judge/sub2/Sub2JudgeDcrk.cpp", - "sdk/judge/sub2/Sub2JudgePdqb.cpp", - "sdk/judge/sub2/Sub2JudgeQxxs.cpp", - "sdk/judge/sub2/Sub2JudgeZjzw.cpp", - "sdk/judge/sub3/ISub3Judge.cpp", + "sdk/judge/sub2/ISub2JudgeItem.cpp", + "sdk/judge/sub2/ISub2JudgeWrap.cpp", + "sdk/judge/sub2/Sub2Judge00Dcrk.cpp", + "sdk/judge/sub2/Sub2Judge02Pdqb.cpp", + "sdk/judge/sub2/Sub2Judge03Cftc.cpp", + "sdk/judge/sub2/Sub2Judge05Qxxs.cpp", + "sdk/judge/sub2/Sub2Judge06Zjzw.cpp", + "sdk/judge/sub2/Sub2Judge20Comm.cpp", + "sdk/judge/sub3/ISub3JudgeItem.cpp", + "sdk/judge/sub3/ISub3JudgeWrap.cpp", + "sdk/judge/sub3/Sub3Judge01Sczb.cpp", + "sdk/judge/sub3/Sub3Judge02Qbxx.cpp", + "sdk/judge/sub3/Sub3Judge03Zxxs.cpp", + "sdk/judge/sub3/Sub3Judge04Bgcd.cpp", + "sdk/judge/sub3/Sub3Judge05Lkzx.cpp", + "sdk/judge/sub3/Sub3Judge06Rxhd.cpp", + "sdk/judge/sub3/Sub3Judge07Xxqy.cpp", + "sdk/judge/sub3/Sub3Judge08Gjzt.cpp", + "sdk/judge/sub3/Sub3Judge09Hcxx.cpp", + "sdk/judge/sub3/Sub3Judge10Ccxx.cpp", + "sdk/judge/sub3/Sub3Judge11Kbtc.cpp", + "sdk/judge/sub3/Sub3Judge12Dtxx.cpp", + "sdk/judge/sub3/Sub3Judge12Lkdt.cpp", + "sdk/judge/sub3/Sub3Judge12Ptdt.cpp", + "sdk/judge/sub3/Sub3Judge13Yjxs.cpp", + "sdk/judge/sub3/Sub3Judge14Jjdw.cpp", + "sdk/judge/sub3/Sub3Judge15Lkzz.cpp", + "sdk/judge/sub3/Sub3Judge16Lkyz.cpp", + "sdk/judge/sub3/Sub3Judge20Comm.cpp", + "sdk/judge/sub3/Sub3Judge41Mndg.cpp", "sdk/parser/XIParser.cpp", "sdk/parser/XParser.cpp", "sdk/parser/XParser2.cpp", @@ -93,6 +115,7 @@ "sdk/common", "sdk/database", "sdk/database/carinfo", + "sdk/database/iteminfo", "sdk/database/mappoint", "sdk/database/mark", "sdk/database/sysparm", diff --git a/entry/src/main/cpp/sdk/judge/sub3/Sub3Judge41Mndg.cpp b/entry/src/main/cpp/sdk/judge/sub3/Sub3Judge41Mndg.cpp index 39e44c01..fa4a68b5 100644 --- a/entry/src/main/cpp/sdk/judge/sub3/Sub3Judge41Mndg.cpp +++ b/entry/src/main/cpp/sdk/judge/sub3/Sub3Judge41Mndg.cpp @@ -141,7 +141,6 @@ bool Sub3Judge41Mndg::dealJudgeEnter() void Sub3Judge41Mndg::dealJudgeItem() { HELP_COST_TIME(""); - if(m_exam->TestPro != ItemProFlagJudge) return; //回放模式 这里要从轨迹文件加载灯光项目 @@ -161,15 +160,6 @@ void Sub3Judge41Mndg::dealJudgeItem() const TGpsInfo& gps1 = his1->real.gps; const std::string& ksdd = TableSysSet->get211(); - //调试代码 - if(gps.sj - m_lastDealTick > 5*SECOND) - { - m_lastDealTick = gps.sj; - - logtrace("mndg-tick-Op_Step=%d,ItemStatus=%d,Item=%d%d%d", m_itemv.Op_Step,m_itemv.ItemStatus, - m_itemv.ItemNo,m_itemv.SubWav1,m_itemv.SubWav2); - } - if(ksdd == siteof::zjnb) { if(cg->move == moveStop && sor.ssc == SNOT) @@ -270,7 +260,7 @@ void Sub3Judge41Mndg::dealJudgeItem() } else if(m_itemv.ItemNo == 100) //灯光结束 { - logtrace("mndg-item-end"); + logtrace("sound-mndg-end"); m_exam->TestPro = ItemProFlagEnd; if(m_car->isExamDrill()) //训练模式 { @@ -302,7 +292,7 @@ void Sub3Judge41Mndg::dealJudgeItem() } else { - logerror("mndg-error-Op_Step=%d,ItemNo=%d,Status=%d",m_itemv.Op_Step, m_itemv.ItemNo, m_itemv.ItemStatus); + logerror("mndg-error Op_Step=%d,ItemNo=%d,Status=%d",m_itemv.Op_Step, m_itemv.ItemNo, m_itemv.ItemStatus); } char buf[128] = {0}; @@ -537,8 +527,6 @@ void Sub3Judge41Mndg::UpdateDengGuangChange() //0、统一调度 void Sub3Judge41Mndg::CallItemProc() { - logtrace("mndg-Op_Step CallItemProc"); - const TChuanGan* cg = m_car->historyChuanGan(); const TGpsInfo& gps = cg->real.gps; const TSensorInfo& sor = cg->real.sensor; @@ -594,7 +582,7 @@ void Sub3Judge41Mndg::CallItemProc() m_itemv.ItemNo = 100; } - logtrace("mndg-item-Op_Step=%d,ItemStatus=%d,Item=%d%d%d", m_itemv.Op_Step,m_itemv.ItemStatus, + logtrace("Op_Step=%d,ItemStatus=%d,Item=%d%d%d", m_itemv.Op_Step,m_itemv.ItemStatus, m_itemv.ItemNo,m_itemv.SubWav1,m_itemv.SubWav2); } } @@ -3026,7 +3014,7 @@ void Sub3Judge41Mndg::playSoundEnd(const std::string& code) m_itemv.Snd_Wav_End_TM = gps.sj; CSH_DengGuangSubItem(); m_itemv.ItemStatus = m_itemv.ItemStatus + 1; - logtrace("mndg-sound-end code=%s", code.c_str()); + logtrace("sound-end code=%s", code.c_str()); } } diff --git a/entry/src/main/cpp/sdk/judge/sub3/Sub3Judge41Mndg.h b/entry/src/main/cpp/sdk/judge/sub3/Sub3Judge41Mndg.h index 7316bccb..0850a31d 100644 --- a/entry/src/main/cpp/sdk/judge/sub3/Sub3Judge41Mndg.h +++ b/entry/src/main/cpp/sdk/judge/sub3/Sub3Judge41Mndg.h @@ -220,8 +220,6 @@ private: // 四套灯光语音,随机播放任意一套作为考试题目 const std::string m_s383arg = "0^1^4^"; //383参数 新模拟夜间(次数^错扣^固定^) - int64 m_lastDealTick = 0; - //bool PlaySnd_ID = false; //正在播报语音标志 //int PlaySnd_Cnt = 0, PlaySnd_Cnt1 = 0; //std::set g_lstsound; diff --git a/entry/src/main/cpp/toolkit/replay/ReplayWrapper.cpp b/entry/src/main/cpp/toolkit/replay/ReplayWrapper.cpp index 7a1b0302..00ecf201 100644 --- a/entry/src/main/cpp/toolkit/replay/ReplayWrapper.cpp +++ b/entry/src/main/cpp/toolkit/replay/ReplayWrapper.cpp @@ -371,6 +371,8 @@ void ReplayWrapper::replayTrackTypeArtificialItem(const TTrackData::Ptr& data) void ReplayWrapper::replayTrackTypeSoundEnd(const TTrackData::Ptr &data) { + //return; //240709 + Json::Value root; bool ok = Tools::fromJson(data->data, root); TASSERT(ok, ""); diff --git a/entry/src/main/cpp/toolkit/ui/MainWindow.cpp b/entry/src/main/cpp/toolkit/ui/MainWindow.cpp index ac426473..b374e027 100644 --- a/entry/src/main/cpp/toolkit/ui/MainWindow.cpp +++ b/entry/src/main/cpp/toolkit/ui/MainWindow.cpp @@ -52,6 +52,15 @@ void MainWindow::init() KIT_CONNECT(updateDataFrameNum(int, int)); KIT_CONNECT(updateNextDoing()); + connect(&m_audio, &QMediaPlayer::stateChanged, [=](QMediaPlayer::State state) + { + if(state == QMediaPlayer::StoppedState) + { + //examJudgeSoundEnd(); + //logtrace("examJudge-SoundEnd"); + } + }); + static const QString gpsStyle1("color:#9933FA;"); static const QString gpsStyle2("color:#802A2A;"); #define KIT_SET_GPS_STYLE(name) name->setStyleSheet(gpsStyle1); name##_2->setStyleSheet(gpsStyle2); @@ -1113,7 +1122,7 @@ void MainWindow::updateDataCallbackRealExam(const QString& info) m_parser->parseJudgeData(org, value); ExamEventType eventType = (ExamEventType)value.event; - std::string time = toEasyTime(value.sj); + std::string time = toEasyTime(Tools::nowTime()); //value.sj 240709 std::string desc = ExamEventType2Desc(eventType); //loginfo("recv time=%s, event=%s", time.c_str(), desc.c_str()); @@ -1191,11 +1200,16 @@ void MainWindow::updateDataCallbackRealExam(const QString& info) } else if(eventType == ExamEventTypeSound) { - int itemNo = value.sound.xmdm; - QString s = QString::fromUtf8(value.sound.code.c_str()); - QString text = event + getItemText(itemNo) + CL8(",语音代码:") + s; + const TEventSound& sound = value.sound; + int itemNo = sound.xmdm; + QString s = QString::fromUtf8(sound.code.c_str()); + QString text = event + getItemText(itemNo) + CL8(",语音代码:") + s + CL8(",语音类型:")+kit::toString(sound.type); updateExamEvent(text); playSoundVoice(value.sound.code); + if(sound.xmdm == Sub3ItemType41Mndg && sound.type == PlaySoundEndNotify) + { + examJudgeSoundEnd(sound.xmdm, sound.code.c_str(),sound.type); //240709 + } } else if(eventType == ExamEventTypeLight) { @@ -1204,6 +1218,10 @@ void MainWindow::updateDataCallbackRealExam(const QString& info) QString text = event + ",[" + s +"]"; updateExamEvent(text); } + else if(eventType == ExamEventTypeLane) + { + const TEventLane& lane = value.lane; + } else { QString text = event + ""; @@ -1315,7 +1333,6 @@ void MainWindow::updateDataCallbackPerform(const QString& info) m_ui->PubLastChuanYuePtNo->setText(CL8("穿越点=") + kit::toString(PubLastChuanYuePtNo)); m_ui->PubLastChuanYuePtNo->setStyleSheet("color:#FF0000;"); - std::string aaasss = cg->MapPoint_Road_Code; m_ui->MapRoad->setText(CL8("MapRoad:") + kit::toString(RTKKM3.MapRoad_Name) + CL8(" Point路段:") + kit::toString(cg->MapPoint_Road_Code)); m_ui->MapRoad->setStyleSheet("color:#FF0000;");