Merge branch 'development/GPSroute'
authorToni Jussila <toni.jussila@fudeco.com>
Thu, 25 Mar 2010 09:58:32 +0000 (11:58 +0200)
committerToni Jussila <toni.jussila@fudeco.com>
Thu, 25 Mar 2010 09:58:32 +0000 (11:58 +0200)
1  2 
Client/carmainwindow.cpp
Client/carmainwindow.h
Client/carmainwindow.ui
Client/gpsdata.cpp
Client/gpsdata.h

Simple merge
Simple merge
Simple merge
@@@ -177,40 -200,64 +200,80 @@@ void GPSData::stopRouteRecording(QStrin
      }
  }
  
+ /**
+   *This slot function is called when gps timer timeout(10s).
+   */
+ void GPSData::gpsTimerTimeout()
+ {
+     gpsTimeMS++;
+ }
+ /**
+   *This function save route to .txt file.
+   */
  void GPSData::saveRoute()
  {
-     QFile file("testroute.txt");
-     if (!file.open(QIODevice::WriteOnly | QIODevice::Text))
-     {
-         return;
-     }
+     QFile file("route" + routeStartTime + ".txt");
      QTextStream route(&file);
  
-     route << "Start: " << routeStartTime << "\n";
-     for (int i = 0 ; i <= roundCounter ; i++)
+     if ( recordingStatus == true )
      {
-         route << " lat: " << gpsDataArray[i][0]
-               << " lon: " << gpsDataArray[i][1]
-               << " alt: " << gpsDataArray[i][2]
-               << " spe: " << gpsDataArray[i][3]
+         //First round.
+         if ( roundCounter == 0 )
+         {
+             if (!file.open(QIODevice::WriteOnly | QIODevice::Text))
+                 return;
+             route << "Start: " << routeStartTime << "\n";
+         }
+         else
+         {
+             if (!file.open(QIODevice::Append | QIODevice::Text))
+                 return;
+         }
+         gpsDataArray[0] = latitude;
+         gpsDataArray[1] = longitude;
+         gpsDataArray[2] = altitude;
+         gpsDataArray[3] = speed;
+         roundCounter ++;
+         route << " la: " << latitude
+               << " \t lo: " << longitude
+               << " \t al: " << altitude
+               << " \t epv: " << epv
+               << " \t sp: " << speed
+               << " \t eps: " << eps
+               << " \t ms: " << gpsTimeMS
                << "\n";
+         gpsTimeMS = 0;
+         file.close();
+     }
+     //Final round.
+     else
+     {
+         if (!file.open(QIODevice::Append | QIODevice::Text))
+             return;
+         route << "Stop: " << routeStopTime << "\n";
+         file.close();
      }
-     route << "Stop: " << routeStopTime << "\n";
-     file.close();
  }
 +
 +/**
 +  *@return Pointer to gpsDataArray[][].
 +  */
 +double* GPSData::getGpsDataArray()
 +{
 +    return *gpsDataArray;
 +}
 +
 +/**
 +  *@return RoundCounter, the number of gpsDataArray[][] rows.
 +  */
 +int GPSData::getRoundCounter()
 +{
 +    return roundCounter;
 +}
Simple merge