Browse Source

v2xTcpClient Add param config featrue

lijinliang 4 years ago
parent
commit
048878822b

+ 34 - 7
src/v2x/v2xTcpClient/mainwindow.cpp

@@ -2,7 +2,7 @@
 #include "ui_mainwindow.h"
 
 iv::Ivlog *givlog;
-unsigned int gv2xEn = true;
+unsigned int gv2xEn = false;
 
 void ListenV2xStEn(const char * strdata,const unsigned int nSize,const unsigned int index,const QDateTime * dt,const char * strmemname)
 {
@@ -28,12 +28,39 @@ MainWindow::MainWindow(QWidget *parent) :
     ui(new Ui::MainWindow)
 {
     ui->setupUi(this);
-    socket=new QTcpSocket();    
-    ui->lineEdit_ip->setText("47.95.196.28");
-    ui->lineEdit_port->setText("12123");
+
+    //Start Get init param
+    QString strpath = QCoreApplication::applicationDirPath();
+    qDebug()<<strpath;
+        strpath = strpath + "/v2xTcpClient.xml";
+
+    iv::xmlparam::Xmlparam xp(strpath.toStdString());
+
+    std::string strCarVIN = xp.GetParam("carVIN","catarc001");
+    std::string strHostIP = xp.GetParam("hostIP","47.95.196.28");
+    std::string strHostPort = xp.GetParam("hostPort","12123");
+    std::string strStationCount = xp.GetParam("stationCount","20");
+    int count = std::stoi(strStationCount,nullptr,10);
+    stationGps location;
+    for(int i = 0; i < count; i++)
+    {
+        std::string strLatName = "lat" + std::to_string(i);
+        std::string strLonName = "lon" + std::to_string(i);
+        std::cout<<strLatName<<strLonName<<std::endl;
+        std::string strLatValue = xp.GetParam(strLatName,"0");
+        std::string strLonValue = xp.GetParam(strLonName,"0");
+
+        location.lat = std::stof(strLatValue,0);
+        location.lon = std::stof(strLonValue,0);
+        mstationGps.append(location);
+    }//END get init param
+
+    socket=new QTcpSocket();
+    ui->lineEdit_ip->setText(QString::fromStdString(strHostIP));
+    ui->lineEdit_port->setText(QString::fromStdString(strHostPort));
     ui->pushButton_connect->setEnabled(false);
-    //连接信号槽
 
+    //连接信号槽
     givlog = new iv::Ivlog("v2x");
     connect(socket, &QTcpSocket::readyRead, this, &MainWindow::socket_Read_Data);
     connect(socket, &QTcpSocket::disconnected, this, &MainWindow::socket_Disconnected);
@@ -174,8 +201,8 @@ void MainWindow::ProAutoPilotControl(QStringList list)
                 msgV2xProto.add_stationid(stationId);
 
                 stGps=msgV2xProto.add_stgps();
-                stGps->set_lat(0);
-                stGps->set_lon(0);
+                stGps->set_lat(mstationGps.at(i-4).lat);
+                stGps->set_lon(mstationGps.at(i-4).lon);
                 ui->textEdit_messages->insertPlainText("服务器消息:car station has "+list[i]+"\n");
             }
         } else {

+ 5 - 3
src/v2x/v2xTcpClient/mainwindow.h

@@ -12,8 +12,10 @@
 #include "QMessageBox"
 #include "v2x.pb.h"
 #include "modulecomm.h"
+#include "xmlparam.h"
 #include "ivlog.h"
 #include <QTimer>
+#include <iostream>
 namespace Ui {
 class MainWindow;
 }
@@ -57,11 +59,11 @@ private:
     QTcpSocket *socket;
     void * mp_v2xSend;
     void * mp_v2xStSend;
-    void shareV2xStReqMsg();
-    void shareV2xProtoMsg(iv::v2x::v2x msgV2xProto);
-private:
     bool m_bEnablePlatform;
     bool m_bIsConnect;
+    QVector<stationGps> mstationGps;
+    void shareV2xStReqMsg();
+    void shareV2xProtoMsg(iv::v2x::v2x msgV2xProto);
 
 };
 #endif // MAINWINDOW_H

+ 48 - 0
src/v2x/v2xTcpClient/v2xTcpClient.xml

@@ -0,0 +1,48 @@
+<xml>	
+	<node name="v2xTcpClient">
+		<param name="carVIN" value="catarc001" />
+		<param name="hostIP" value="47.95.196.28" />
+		<param name="hostPort" value="12123" />
+		<param name="stationCount" value="20" />
+		<param name="lat0" value="" />
+		<param name="lon0" value="" />
+		<param name="lat1" value="" />
+		<param name="lon1" value="" />
+		<param name="lat2" value="" />
+		<param name="lon2" value="" />
+		<param name="lat3" value="" />
+		<param name="lon3" value="" />
+		<param name="lat4" value="" />
+		<param name="lon4" value="" />
+		<param name="lat5" value="" />
+		<param name="lon5" value="" />
+		<param name="lat6" value="" />
+		<param name="lon6" value="" />
+		<param name="lat7" value="" />
+		<param name="lon7" value="" />
+		<param name="lat8" value="" />
+		<param name="lon8" value="" />
+		<param name="lat9" value="" />
+		<param name="lon9" value="" />
+		<param name="lat10" value="" />
+		<param name="lon10" value="" />
+		<param name="lat11" value="" />
+		<param name="lon11" value="" />
+		<param name="lat12" value="" />
+		<param name="lon12" value="" />
+		<param name="lat13" value="" />
+		<param name="lon13" value="" />
+		<param name="lat14" value="" />
+		<param name="lon14" value="" />
+		<param name="lat15" value="" />
+		<param name="lon15" value="" />
+		<param name="lat16" value="" />
+		<param name="lon16" value="" />
+		<param name="lat17" value="" />
+		<param name="lon17" value="" />
+		<param name="lat18" value="" />
+		<param name="lon18" value="" />
+		<param name="lat19" value="" />
+		<param name="lon19" value="" />
+	</node>
+</xml>