CsvRideFile now only sets its ride startTime if the file is

appropriately named.  cpint now ignores startTime, as it wasn't 
using it anyway.
This commit is contained in:
Sean C. Rhea
2007-09-22 16:27:09 +00:00
parent d2532341b4
commit f66e94c05a
2 changed files with 12 additions and 17 deletions

View File

@@ -31,19 +31,6 @@ static int csvFileReaderRegistered =
RideFile *CsvFileReader::openRideFile(QFile &file, QStringList &errors) const
{
QRegExp rideTime("^.*/(\\d\\d\\d\\d)_(\\d\\d)_(\\d\\d)_"
"(\\d\\d)_(\\d\\d)_(\\d\\d)\\.csv$");
if (rideTime.indexIn(file.fileName()) == -1) {
errors << ("file name does not encode ride time: \""
+ file.fileName() + "\"");
return NULL;
}
QDateTime datetime(QDate(rideTime.cap(1).toInt(),
rideTime.cap(2).toInt(),
rideTime.cap(3).toInt()),
QTime(rideTime.cap(4).toInt(),
rideTime.cap(5).toInt(),
rideTime.cap(6).toInt()));
QRegExp metricUnits("(km|kph)", Qt::CaseInsensitive);
QRegExp englishUnits("(miles|mph)", Qt::CaseInsensitive);
bool metric;
@@ -103,7 +90,17 @@ RideFile *CsvFileReader::openRideFile(QFile &file, QStringList &errors) const
double recint = round(secs[mid] * 1000.0) / 1000.0;
rideFile->setRecIntSecs(recint);
}
rideFile->setStartTime(datetime);
QRegExp rideTime("^.*/(\\d\\d\\d\\d)_(\\d\\d)_(\\d\\d)_"
"(\\d\\d)_(\\d\\d)_(\\d\\d)\\.csv$");
if (rideTime.indexIn(file.fileName()) >= 0) {
QDateTime datetime(QDate(rideTime.cap(1).toInt(),
rideTime.cap(2).toInt(),
rideTime.cap(3).toInt()),
QTime(rideTime.cap(4).toInt(),
rideTime.cap(5).toInt(),
rideTime.cap(6).toInt()));
rideFile->setStartTime(datetime);
}
file.close();
return rideFile;
}

View File

@@ -38,9 +38,8 @@ struct cpint_point
struct cpint_data {
QStringList errors;
QList<cpint_point> points;
time_t start_since_epoch;
int rec_int_ms;
cpint_data() : start_since_epoch(0), rec_int_ms(0) {}
cpint_data() : rec_int_ms(0) {}
};
cpi_file_info *
@@ -110,7 +109,6 @@ update_cpi_file(cpi_file_info *info,
CombinedFileReader::instance().openRideFile(file, errors);
assert(rideFile);
cpint_data data;
data.start_since_epoch = rideFile->startTime().toTime_t();
data.rec_int_ms = (int) round(rideFile->recIntSecs() * 1000.0);
QListIterator<RideFilePoint*> i(rideFile->dataPoints());
while (i.hasNext()) {