mirror of
https://gitlab.com/pholy/OSCAR-code.git
synced 2025-04-06 19:20:45 +00:00
Rename STR files to use 8 digit date
This commit is contained in:
parent
16c2784915
commit
33e5561ad3
@ -395,6 +395,7 @@ int ResmedLoader::Open(const QString & dirpath)
|
|||||||
} else { // passed the tests, stuff it into the map
|
} else { // passed the tests, stuff it into the map
|
||||||
QDate date = stredf->edfHdr.startdate_orig.date();
|
QDate date = stredf->edfHdr.startdate_orig.date();
|
||||||
long int days = stredf->GetNumDataRecords();
|
long int days = stredf->GetNumDataRecords();
|
||||||
|
qDebug() << strpath << "starts at" << date << "for" << days;
|
||||||
STRmap[date] = STRFile(strpath, days, stredf);
|
STRmap[date] = STRFile(strpath, days, stredf);
|
||||||
}
|
}
|
||||||
} else {
|
} else {
|
||||||
@ -428,7 +429,7 @@ int ResmedLoader::Open(const QString & dirpath)
|
|||||||
continue;
|
continue;
|
||||||
if (!(filename.endsWith("edf.gz", Qt::CaseInsensitive) || filename.endsWith("edf", Qt::CaseInsensitive)))
|
if (!(filename.endsWith("edf.gz", Qt::CaseInsensitive) || filename.endsWith("edf", Qt::CaseInsensitive)))
|
||||||
continue;
|
continue;
|
||||||
// QString datestr = filename.section("STR-",-1).section(".edf",0,0); // +"01";
|
QString datestr = filename.section("STR-",-1).section(".edf",0,0); // +"01";
|
||||||
// date = QDate().fromString(datestr,"yyyyMMdd");
|
// date = QDate().fromString(datestr,"yyyyMMdd");
|
||||||
//
|
//
|
||||||
// if (STRmap.contains(date)) {
|
// if (STRmap.contains(date)) {
|
||||||
@ -458,7 +459,7 @@ int ResmedLoader::Open(const QString & dirpath)
|
|||||||
date = stredf->edfHdr.startdate_orig.date();
|
date = stredf->edfHdr.startdate_orig.date();
|
||||||
days = stredf->GetNumDataRecords();
|
days = stredf->GetNumDataRecords();
|
||||||
if (STRmap.contains(date)) { // Keep the longer of the two STR files
|
if (STRmap.contains(date)) { // Keep the longer of the two STR files
|
||||||
qDebug() << filename << "overlaps" << STRmap[date].filename;
|
qDebug() << filename << "overlaps" << STRmap[date].filename << "for" << days;
|
||||||
if (days <= STRmap[date].days) {
|
if (days <= STRmap[date].days) {
|
||||||
qDebug() << "Skipping" << filename;
|
qDebug() << "Skipping" << filename;
|
||||||
continue;
|
continue;
|
||||||
@ -467,6 +468,7 @@ int ResmedLoader::Open(const QString & dirpath)
|
|||||||
// qDebug() << "Resetting STR date from" << date.toString() << "to first of month ... WHY???";
|
// qDebug() << "Resetting STR date from" << date.toString() << "to first of month ... WHY???";
|
||||||
// date = QDate(date.year(), date.month(), 1);
|
// date = QDate(date.year(), date.month(), 1);
|
||||||
|
|
||||||
|
qDebug() << fi.canonicalFilePath() << "starts at" << date << "for" << days;
|
||||||
STRmap[date] = STRFile(fi.canonicalFilePath(), days, stredf);
|
STRmap[date] = STRFile(fi.canonicalFilePath(), days, stredf);
|
||||||
} // end for walking the STR_Backup directory
|
} // end for walking the STR_Backup directory
|
||||||
#ifdef STR_DEBUG
|
#ifdef STR_DEBUG
|
||||||
@ -484,9 +486,21 @@ int ResmedLoader::Open(const QString & dirpath)
|
|||||||
|
|
||||||
// We are done with the Parsed STR EDF objects, so delete them
|
// We are done with the Parsed STR EDF objects, so delete them
|
||||||
for (auto it=STRmap.begin(), end=STRmap.end(); it != end; ++it) {
|
for (auto it=STRmap.begin(), end=STRmap.end(); it != end; ++it) {
|
||||||
|
QString fullname = it.value().filename;
|
||||||
#ifdef STR_DEBUG
|
#ifdef STR_DEBUG
|
||||||
qDebug() << "Deleting edf of" << it.value().filename;
|
qDebug() << "Deleting edf of" << fullname;
|
||||||
#endif
|
#endif
|
||||||
|
QString datepart = fullname.section("STR-",-1).section(".edf",0,0);
|
||||||
|
if (datepart.size() == 6 ) { // old style name, change to full date
|
||||||
|
QFile str(fullname);
|
||||||
|
QString newdate = it.key().toString("yyyyMMdd");
|
||||||
|
QString newName = fullname.replace(datepart, newdate);
|
||||||
|
qDebug() << "Renaming" << it.value().filename << "to" << newName;
|
||||||
|
if ( str.rename(newName) )
|
||||||
|
qDebug() << "Success";
|
||||||
|
else
|
||||||
|
qDebug() << "Failed";
|
||||||
|
}
|
||||||
delete it.value().edf;
|
delete it.value().edf;
|
||||||
}
|
}
|
||||||
#ifdef STR_DEBUG
|
#ifdef STR_DEBUG
|
||||||
@ -562,6 +576,8 @@ int ResmedLoader::Open(const QString & dirpath)
|
|||||||
|
|
||||||
sessionCount = 0;
|
sessionCount = 0;
|
||||||
emit updateMessage(QObject::tr("Importing Sessions..."));
|
emit updateMessage(QObject::tr("Importing Sessions..."));
|
||||||
|
|
||||||
|
// Walk down the resDay list
|
||||||
runTasks();
|
runTasks();
|
||||||
int num_new_sessions = sessionCount;
|
int num_new_sessions = sessionCount;
|
||||||
|
|
||||||
@ -714,7 +730,7 @@ int ResmedLoader::ScanFiles(Machine * mach, const QString & datalog_path, QDate
|
|||||||
filename = fi.fileName();
|
filename = fi.fileName();
|
||||||
|
|
||||||
int len = filename.length();
|
int len = filename.length();
|
||||||
if (len == 4) { // when does this happen?
|
if (len == 4) { // This is a year folder in BackupDATALOG
|
||||||
filename.toInt(&ok);
|
filename.toInt(&ok);
|
||||||
if ( ! ok ) {
|
if ( ! ok ) {
|
||||||
qDebug() << "Skipping directory - bad 4-letter name" << filename;
|
qDebug() << "Skipping directory - bad 4-letter name" << filename;
|
||||||
@ -867,7 +883,7 @@ QString ResmedLoader::Backup(const QString & fullname, const QString & backup_pa
|
|||||||
yearstr.toInt(&ok, 10);
|
yearstr.toInt(&ok, 10);
|
||||||
|
|
||||||
if (!ok) {
|
if (!ok) {
|
||||||
qDebug() << "Invalid EDF filename given to ResMedLoader::backup()" << fullname;
|
qDebug() << "Invalid EDF filename given to ResMedLoader::Backup()" << fullname;
|
||||||
return "";
|
return "";
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -925,10 +941,11 @@ bool ResmedLoader::ProcessSTRfiles(Machine *mach, QMap<QDate, STRFile> & STRmap,
|
|||||||
for (auto it=STRmap.begin(), end=STRmap.end(); it != end; ++it) {
|
for (auto it=STRmap.begin(), end=STRmap.end(); it != end; ++it) {
|
||||||
STRFile & file = it.value();
|
STRFile & file = it.value();
|
||||||
ResMedEDFInfo & str = *file.edf;
|
ResMedEDFInfo & str = *file.edf;
|
||||||
totalRecs += str.GetNumDataRecords();
|
int days = str.GetNumDataRecords();
|
||||||
|
totalRecs += days;
|
||||||
#ifdef STR_DEBUG
|
#ifdef STR_DEBUG
|
||||||
qDebug() << "STR file is" << file.filename;
|
qDebug() << "STR file is" << file.filename;
|
||||||
qDebug() << "First day" << QDateTime::fromMSecsSinceEpoch(str.startdate, EDFInfo::localNoDST).date().toString() << "for" << totalRecs << "days";
|
qDebug() << "First day" << QDateTime::fromMSecsSinceEpoch(str.startdate, EDFInfo::localNoDST).date().toString() << "for" << days << "days";
|
||||||
#endif
|
#endif
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -948,7 +965,7 @@ bool ResmedLoader::ProcessSTRfiles(Machine *mach, QMap<QDate, STRFile> & STRmap,
|
|||||||
QDate lastDay = date.addDays(size-1);
|
QDate lastDay = date.addDays(size-1);
|
||||||
|
|
||||||
#ifdef STR_DEBUG
|
#ifdef STR_DEBUG
|
||||||
qDebug() << "Parsing" << strfile << date.toString() << size << str.GetNumSignals();
|
qDebug() << "Processing" << strfile << date.toString() << size << str.GetNumSignals();
|
||||||
qDebug() << "Last day is" << lastDay;
|
qDebug() << "Last day is" << lastDay;
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
@ -1414,6 +1431,9 @@ bool ResmedLoader::ProcessSTRfiles(Machine *mach, QMap<QDate, STRFile> & STRmap,
|
|||||||
qDebug() << "Finished" << date.toString();
|
qDebug() << "Finished" << date.toString();
|
||||||
#endif
|
#endif
|
||||||
}
|
}
|
||||||
|
#ifdef STR_DEBUG
|
||||||
|
qDebug() << "Finished" << strfile;
|
||||||
|
#endif
|
||||||
}
|
}
|
||||||
#ifdef STR_DEBUG
|
#ifdef STR_DEBUG
|
||||||
qDebug() << "Finished ProcessSTR";
|
qDebug() << "Finished ProcessSTR";
|
||||||
|
Loading…
Reference in New Issue
Block a user