+ *@brief Write track to server.
+ *@param ptrTable points to GPSData::gpsDataArray[100][4].
+ *@param counter is GPSData::roundCounter.
+ *@todo Decide suitable attributes.
+ */
+void XmlWriter::writeGpsTrack(QBuffer *netbuf, double *ptrTable, int counter)
+{
+ qDebug() << "_writeGpsTrack";
+
+ double *ptrValue;
+ ptrValue = ptrTable;
+ double tmp = 0;
+
+ xmlwriter.setDevice(netbuf);
+
+ xmlwriter.writeStartDocument();
+
+ xmlwriter.writeStartElement("gpx");
+ xmlwriter.writeAttribute("someattribute", "abc");
+ xmlwriter.writeAttribute("otherattribute", "cde");
+
+ xmlwriter.writeStartElement("metadata");
+ xmlwriter.writeStartElement("link");
+ xmlwriter.writeAttribute("href", "http://api.speedfreak-app.com/api/track");
+ xmlwriter.writeCharacters("Speed Freak");
+ xmlwriter.writeEndElement();
+ xmlwriter.writeStartElement("time");
+ xmlwriter.writeCharacters(QDateTime::currentDateTime().toString());
+ xmlwriter.writeEndElement();
+ xmlwriter.writeEndElement(); //metadata
+
+ xmlwriter.writeStartElement("trk");
+ xmlwriter.writeStartElement("name");
+ xmlwriter.writeCharacters("Example Track");
+ xmlwriter.writeEndElement();
+ xmlwriter.writeStartElement("trkseg");
+ for(int i = 0; i < counter; i++)
+ {
+ xmlwriter.writeStartElement("trkpt");
+ tmp = *ptrValue;
+ ptrValue++;
+ xmlwriter.writeAttribute("lat", QString::number(tmp)); //gpspoints[i][0]
+ tmp = *ptrValue;
+ ptrValue++;
+ xmlwriter.writeAttribute("lon", QString::number(tmp)); //gpspoints[i][1]
+ xmlwriter.writeStartElement("ele");
+ tmp = *ptrValue;
+ ptrValue++;
+ xmlwriter.writeCharacters(QString::number(tmp)); //gpspoints[i][2]
+ xmlwriter.writeEndElement();
+ xmlwriter.writeStartElement("speed");
+ tmp = *ptrValue;
+ ptrValue++;
+ xmlwriter.writeCharacters(QString::number(tmp)); //gpspoints[i][3]
+ xmlwriter.writeEndElement();
+ xmlwriter.writeEndElement(); //trkpt
+ }
+ xmlwriter.writeEndElement(); //trkseg
+ xmlwriter.writeEndElement(); //trk
+ xmlwriter.writeEndElement(); //gpx
+ xmlwriter.writeEndDocument();
+}
+
+
+/**