Subversion Repositories Projects

Rev

Details | Last modification | View Log | RSS feed

Rev Author Line No. Line
239 Brean 1
/***************************************************************************
2
 *   Copyright (C) 2008 by Manuel Schrape                                  *
3
 *   manuel.schrape@gmx.de                                                 *
4
 *   and Andreas Bresser bresser@informatik.uni-bremen.de                  *
5
 *                                                                         *
6
 *   This program is free software; you can redistribute it and/or modify  *
7
 *   it under the terms of the GNU General Public License as published by  *
8
 *   the Free Software Foundation; either version 2 of the License.        *
9
 *                                                                         *
10
 *   This program is distributed in the hope that it will be useful,       *
11
 *   but WITHOUT ANY WARRANTY; without even the implied warranty of        *
12
 *   MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the         *
13
 *   GNU General Public License for more details.                          *
14
 *                                                                         *
15
 *   You should have received a copy of the GNU General Public License     *
16
 *   along with this program; if not, write to the                         *
17
 *   Free Software Foundation, Inc.,                                       *
18
 *   59 Temple Place - Suite 330, Boston, MA  02111-1307, USA.             *
19
 ***************************************************************************/
20
 
21
#include "CSVLogger.h"
22
 
23
CSVLogger::CSVLogger(cSettings * settings) {
24
    // QFile-Instanz (Log-Datei)
25
    csvfile = new QFile("");
26
    this->settings = settings;
27
}
28
 
29
CSVLogger::~CSVLogger() {
30
    close();
31
}
32
 
33
//datei ist geöffnet bedeutet wir sind soweit und können schreiben
34
bool CSVLogger::ready() {
35
    return csvfile->isOpen();
36
}
37
 
38
//Datei schließen
39
void CSVLogger::close()
40
{
41
    if (csvfile->isOpen())
42
        csvfile->close();
43
}
44
 
45
//neuen Log erstellen
46
void CSVLogger::newLog(QString filename) {
47
    if (!csvfile->isOpen())
48
    {
49
        csvfile = new QFile(filename);
50
        if (!csvfile->exists())
51
        {
52
            csvfile->open(QIODevice::Append | QIODevice::Text);
53
        }
54
    }
55
}
56
 
57
//daten schreiben
58
void CSVLogger::write(int * analogData) {
59
    if (csvfile->isOpen())
60
    {
61
        QTextStream out(csvfile);
62
        for (int a=0; a<MaxAnalog; a++)
63
        {
64
            if (settings->Analog1.LogView[a])
65
            {
66
                out << analogData[a];
67
                if (a < MaxAnalog - 1)
68
                    out << ';';
69
            }
70
        }
71
        out << "\n";
72
    }
73
}