From 0d1066a020cfc8d391b47ee9954500714d683a22 Mon Sep 17 00:00:00 2001 From: "Justin F. Knotzke" Date: Tue, 7 Apr 2009 22:15:36 +0000 Subject: [PATCH] Quick LTM fix. This is all still in comments. --- src/DBAccess.h | 61 ++++++++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 61 insertions(+) create mode 100644 src/DBAccess.h diff --git a/src/DBAccess.h b/src/DBAccess.h new file mode 100644 index 000000000..b94a1567f --- /dev/null +++ b/src/DBAccess.h @@ -0,0 +1,61 @@ +/* + * Copyright (c) 2009 Justin F. Knotzke (jknotzke@shampoo.ca) + * + * This program is free software; you can redistribute it and/or modify it + * under the terms of the GNU General Public License as published by the Free + * Software Foundation; either version 2 of the License, or (at your option) + * any later version. + * + * This program is distributed in the hope that it will be useful, but WITHOUT + * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or + * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for + * more details. + * + * You should have received a copy of the GNU General Public License along + * with this program; if not, write to the Free Software Foundation, Inc., 51 + * Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA + */ + +#ifndef _GC_DBAccess_h +#define _GC_DBAccess_h 1 + + + +#import +#import +#import +#import "SummaryMetrics.h" +#import "Season.h" + +class RideFile; +class Zones; +class RideMetric; +class DBAccess +{ + + public: + DBAccess(QDir home); + typedef QHash MetricMap; + void importAllRides(QDir path, Zones *zones); + bool importRide(SummaryMetrics *summaryMetrics); + QSqlDatabase initDatabase(QDir home); + bool createDatabase(); + QStringList getAllFileNames(); + void closeConnection(); + QList getAllDates(); + QList getAllMetricsFor(QDateTime start, QDateTime end); + bool createSeasonsTable(); + bool createMetricsTable(); + bool createSeason(Season season); + QList getAllSeasons(); + bool dropMetricTable(); + //bool deleteSeason(Season season); + + + + private: + QSqlDatabase db; + bool createIndex(); + +}; +#endif \ No newline at end of file