From 23c32dbd5f0e16f90be9bacdb3648f2d6b6b1453 Mon Sep 17 00:00:00 2001 From: Jukka Kurttila Date: Mon, 24 May 2010 08:49:54 +0300 Subject: [PATCH] File reader class files added. --- Client/filereader.cpp | 78 +++++++++++++++++++++++++++++++++++++++++++++++++ Client/filereader.h | 27 +++++++++++++++++ 2 files changed, 105 insertions(+) create mode 100644 Client/filereader.cpp create mode 100644 Client/filereader.h diff --git a/Client/filereader.cpp b/Client/filereader.cpp new file mode 100644 index 0000000..ebb3a08 --- /dev/null +++ b/Client/filereader.cpp @@ -0,0 +1,78 @@ +/* + * File reader class for reading acceleration data from file. + * + * @author Jukka Kurttila + * @copyright (c) 2010 Speed Freak team + * @license http://opensource.org/licenses/gpl-license.php GNU Public License + */ +#include "filereader.h" +#include + +filereader::filereader() +{ +} +filereader::~filereader() +{ + if(!fileName.isEmpty()) + file.close(); +} + +void filereader::ReadLine( qreal &x, qreal &y, qreal &z ) +{ + if(fileName.isEmpty()) + return; + QString line = file.readLine(); + + //Get x + + std::string line2(line.toUtf8()); + + line2.erase(0,line2.find_first_of("x")); + line2.erase(0,3); + + std::string temp = line2.substr(0,line2.find_first_of(" ")); + + QString temp2( temp.c_str() ); + x = temp2.toFloat(); + + //Get y + + line2.erase(0,line2.find_first_of("y")); + line2.erase(0,3); + + temp = line2.substr(0,line2.find_first_of(" ")); + + temp2 = temp.c_str(); + y = temp2.toFloat(); + + //Get z + + line2.erase(0,line2.find_first_of("z")); + line2.erase(0,3); + + //Is there space character? + if(line2.find_first_of(" ") != std::string::npos) + { + temp = line2.substr(0,line2.find_first_of(" ")); + } + else + { + temp = line2; + } + + //temp = line2.substr(0,line2.find_first_of(" ")); + + temp2 = temp.c_str(); + z = temp2.toFloat(); +} +void filereader::setFileName(QString inputFileName) +{ + fileName = inputFileName; + file.setFileName(fileName); + if(!file.open(QIODevice::ReadOnly | QIODevice::Text)) + { + qDebug("File open failed.\n"); + return; + } + qDebug("File open Ok.\n"); +} diff --git a/Client/filereader.h b/Client/filereader.h new file mode 100644 index 0000000..487b6ca --- /dev/null +++ b/Client/filereader.h @@ -0,0 +1,27 @@ +/* + * File reader class for reading acceleration data from file. + * + * @author Jukka Kurttila + * @copyright (c) 2010 Speed Freak team + * @license http://opensource.org/licenses/gpl-license.php GNU Public License + */ +#ifndef FILEREADER_H +#define FILEREADER_H + +#include + +class filereader +{ +public: + filereader(); + ~filereader(); + void ReadLine( qreal &x, qreal &y, qreal &z ); + void setFileName(QString inputFileName); + +private: + QString fileName; + QFile file; + +}; + +#endif // FILEREADER_H -- 1.7.9.5