From edc7cc49606726f507dcd9dffff1caeb5a1521f7 Mon Sep 17 00:00:00 2001 From: Sean Rhea Date: Fri, 30 Oct 2009 19:08:29 -0400 Subject: [PATCH] fix absolutely atrocious use of tabs --- src/MetricAggregator.cpp | 175 +++++++++++++++++++-------------------- 1 file changed, 87 insertions(+), 88 deletions(-) diff --git a/src/MetricAggregator.cpp b/src/MetricAggregator.cpp index 6d811d3c7..166fc563e 100644 --- a/src/MetricAggregator.cpp +++ b/src/MetricAggregator.cpp @@ -31,113 +31,112 @@ #include static char rideFileRegExp[] = - "^(\\d\\d\\d\\d)_(\\d\\d)_(\\d\\d)" - "_(\\d\\d)_(\\d\\d)_(\\d\\d)\\.(raw|srm|csv|tcx)$"; +"^(\\d\\d\\d\\d)_(\\d\\d)_(\\d\\d)" +"_(\\d\\d)_(\\d\\d)_(\\d\\d)\\.(raw|srm|csv|tcx)$"; MetricAggregator::MetricAggregator() { - } void MetricAggregator::aggregateRides(QDir home, Zones *zones) { - qDebug() << QDateTime::currentDateTime(); - DBAccess *dbaccess = new DBAccess(home); + qDebug() << QDateTime::currentDateTime(); + DBAccess *dbaccess = new DBAccess(home); dbaccess->dropMetricTable(); dbaccess->createDatabase(); - QRegExp rx(rideFileRegExp); - QStringList errors; + QRegExp rx(rideFileRegExp); + QStringList errors; QStringListIterator i(RideFileFactory::instance().listRideFiles(home)); while (i.hasNext()) { QString name = i.next(); - QFile file(home.absolutePath() + "/" + name); - RideFile *ride = RideFileFactory::instance().openRideFile(file, errors); - importRide(home, zones, ride, name, dbaccess); - } + QFile file(home.absolutePath() + "/" + name); + RideFile *ride = RideFileFactory::instance().openRideFile(file, errors); + importRide(home, zones, ride, name, dbaccess); + } dbaccess->closeConnection(); delete dbaccess; - qDebug() << QDateTime::currentDateTime(); - + qDebug() << QDateTime::currentDateTime(); + } bool MetricAggregator::importRide(QDir path, Zones *zones, RideFile *ride, QString fileName, DBAccess *dbaccess) { - - SummaryMetrics *summaryMetric = new SummaryMetrics(); - - - QFile file(path.absolutePath() + "/" + fileName); - int zone_range = -1; - - QRegExp rx(rideFileRegExp); + + SummaryMetrics *summaryMetric = new SummaryMetrics(); + + + QFile file(path.absolutePath() + "/" + fileName); + int zone_range = -1; + + QRegExp rx(rideFileRegExp); if (!rx.exactMatch(fileName)) { fprintf(stderr, "bad name: %s\n", fileName.toAscii().constData()); assert(false); - return false; + return false; } - summaryMetric->setFileName(fileName); + summaryMetric->setFileName(fileName); assert(rx.numCaptures() == 7); - QDate date(rx.cap(1).toInt(), rx.cap(2).toInt(),rx.cap(3).toInt()); - QTime time(rx.cap(4).toInt(), rx.cap(5).toInt(),rx.cap(6).toInt()); + QDate date(rx.cap(1).toInt(), rx.cap(2).toInt(),rx.cap(3).toInt()); + QTime time(rx.cap(4).toInt(), rx.cap(5).toInt(),rx.cap(6).toInt()); QDateTime dateTime(date, time); - + summaryMetric->setRideDate(dateTime); - - if (zones) - zone_range = zones->whichRange(dateTime.date()); - - const RideMetricFactory &factory = RideMetricFactory::instance(); - QSet todo; - - for (int i = 0; i < factory.metricCount(); ++i) - todo.insert(factory.metricName(i)); - - - while (!todo.empty()) { - QMutableSetIterator i(todo); - later: - while (i.hasNext()) { - const QString &name = i.next(); - const QVector &deps = factory.dependencies(name); - for (int j = 0; j < deps.size(); ++j) - if (!metrics.contains(deps[j])) - goto later; - RideMetric *metric = factory.newMetric(name); - metric->compute(ride, zones, zone_range, metrics); - metrics.insert(name, metric); - i.remove(); - double value = metric->value(true); - if(name == "workout_time") - summaryMetric->setWorkoutTime(value); - else if(name == "average_cad") - summaryMetric->setCadence(value); - else if(name == "total_distance") - summaryMetric->setDistance(value); - else if(name == "skiba_xpower") - summaryMetric->setXPower(value); - else if(name == "average_speed") - summaryMetric->setSpeed(value); - else if(name == "total_work") - summaryMetric->setTotalWork(value); - else if(name == "average_power") - summaryMetric->setWatts(value); - else if(name == "time_riding") - summaryMetric->setRideTime(value); - else if(name == "average_hr") - summaryMetric->setHeartRate(value); - else if(name == "skiba_relative_intensity") - summaryMetric->setRelativeIntensity(value); - else if(name == "skiba_bike_score") - summaryMetric->setBikeScore(value); - - } - } - dbaccess->importRide(summaryMetric); - delete summaryMetric; + if (zones) + zone_range = zones->whichRange(dateTime.date()); + + const RideMetricFactory &factory = RideMetricFactory::instance(); + QSet todo; + + for (int i = 0; i < factory.metricCount(); ++i) + todo.insert(factory.metricName(i)); + + + while (!todo.empty()) { + QMutableSetIterator i(todo); +later: + while (i.hasNext()) { + const QString &name = i.next(); + const QVector &deps = factory.dependencies(name); + for (int j = 0; j < deps.size(); ++j) + if (!metrics.contains(deps[j])) + goto later; + RideMetric *metric = factory.newMetric(name); + metric->compute(ride, zones, zone_range, metrics); + metrics.insert(name, metric); + i.remove(); + double value = metric->value(true); + if(name == "workout_time") + summaryMetric->setWorkoutTime(value); + else if(name == "average_cad") + summaryMetric->setCadence(value); + else if(name == "total_distance") + summaryMetric->setDistance(value); + else if(name == "skiba_xpower") + summaryMetric->setXPower(value); + else if(name == "average_speed") + summaryMetric->setSpeed(value); + else if(name == "total_work") + summaryMetric->setTotalWork(value); + else if(name == "average_power") + summaryMetric->setWatts(value); + else if(name == "time_riding") + summaryMetric->setRideTime(value); + else if(name == "average_hr") + summaryMetric->setHeartRate(value); + else if(name == "skiba_relative_intensity") + summaryMetric->setRelativeIntensity(value); + else if(name == "skiba_bike_score") + summaryMetric->setBikeScore(value); + + } + } + + dbaccess->importRide(summaryMetric); + delete summaryMetric; + + return true; - return true; - } void MetricAggregator::scanForMissing(QDir home, Zones *zones) @@ -151,17 +150,17 @@ void MetricAggregator::scanForMissing(QDir home, Zones *zones) QString name = i.next(); if(!filenames.contains(name)) { - qDebug() << "Found missing file: " << name; - QFile file(home.absolutePath() + "/" + name); - RideFile *ride = RideFileFactory::instance().openRideFile(file, errors); - importRide(home, zones, ride, name, dbaccess); - + qDebug() << "Found missing file: " << name; + QFile file(home.absolutePath() + "/" + name); + RideFile *ride = RideFileFactory::instance().openRideFile(file, errors); + importRide(home, zones, ride, name, dbaccess); + } - - } + + } dbaccess->closeConnection(); delete dbaccess; - + } void MetricAggregator::resetMetricTable(QDir home)