From 5111dd4467e564b4a99bb731b9746989b751b3c3 Mon Sep 17 00:00:00 2001 From: Christian Weber Date: Fri, 8 Aug 2014 16:58:12 -0500 Subject: [PATCH] Updated to make Bipolar output the default with the option of raw files. Makes things simpler. --- src/ui/v800main.ui | 4 +- src/usb/v800usb.cpp | 92 +++++++++++++++++++++------------------- src/usb/v800usb.h | 4 +- src/widgets/v800main.cpp | 18 +++++--- 4 files changed, 64 insertions(+), 54 deletions(-) diff --git a/src/ui/v800main.ui b/src/ui/v800main.ui index d43a84b..b48437d 100755 --- a/src/ui/v800main.ui +++ b/src/ui/v800main.ui @@ -28,10 +28,10 @@ - + Include -Bipolar +Raw Output diff --git a/src/usb/v800usb.cpp b/src/usb/v800usb.cpp index 0b2f2ba..54a5141 100755 --- a/src/usb/v800usb.cpp +++ b/src/usb/v800usb.cpp @@ -79,7 +79,7 @@ void V800usb::get_all_sessions() emit all_sessions(sessions); } -void V800usb::get_sessions(QList sessions, QString save_dir, bool bipolar_output) +void V800usb::get_sessions(QList sessions, QString save_dir, bool raw_output) { QString session; QStringList session_split; @@ -88,7 +88,7 @@ void V800usb::get_sessions(QList sessions, QString save_dir, bool bipol int session_iter, files_iter; this->save_dir = save_dir; - this->bipolar_output = bipolar_output; + this->raw_output = raw_output; for(session_iter = 0; session_iter < sessions.length(); session_iter++) { @@ -313,7 +313,6 @@ QList V800usb::get_all_files(QString date, QString time) void V800usb::get_file(QString date, QString time, QString file, int type) { - QFile *out_file; QByteArray packet, full; int cont = 1, usb_state = 0, packet_num = 0; bool initial_packet = true; @@ -370,50 +369,57 @@ void V800usb::get_file(QString date, QString time, QString file, int type) usb_state = 1; break; case 4: - QString session_path = QDir::toNativeSeparators(QString(tr("%1/%2/%3")).arg(save_dir).arg(date).arg(time)); - QString session_full_name = QDir::toNativeSeparators(QString(tr("%1/%2/%3/%4")).arg(save_dir).arg(date).arg(time).arg(file)); + QDir bipolar_dir(QStandardPaths::writableLocation(QStandardPaths::GenericDataLocation) + QString(tr("/Polar/PolarFlowSync/export"))); + QString tag = QDateTime(QDate::fromString(date, tr("yyyyMMdd")), QTime::fromString(time, tr("HHmmss"))).toString(tr("yyyyMMddhhmmss")); + + QString bipolar_dest(tr("")); + if(QString(file).compare(tr("TSESS.BPB")) == 0) + bipolar_dest = (QString(tr("%1/v2-users-0000000-training-sessions-%2-create")).arg(bipolar_dir.absolutePath()).arg(tag)); + else if(QString(file).compare(tr("PHYSDATA.BPB")) == 0) + bipolar_dest = (QString(tr("%1/v2-users-0000000-training-sessions-%2-physical-information")).arg(bipolar_dir.absolutePath()).arg(tag)); + else if(QString(file).compare(tr("BASE.BPB")) == 0) + bipolar_dest = (QString(tr("%1/v2-users-0000000-training-sessions-%2-exercises-%3-create")).arg(bipolar_dir.absolutePath()).arg(tag).arg(tag)); + else if(QString(file).compare(tr("ALAPS.BPB")) == 0) + bipolar_dest = (QString(tr("%1/v2-users-0000000-training-sessions-%2-exercises-%3-autolaps")).arg(bipolar_dir.absolutePath()).arg(tag).arg(tag)); + else if(QString(file).compare(tr("LAPS.BPB")) == 0) + bipolar_dest = (QString(tr("%1/v2-users-0000000-training-sessions-%2-exercises-%3-laps")).arg(bipolar_dir.absolutePath()).arg(tag).arg(tag)); + else if(QString(file).compare(tr("ROUTE.GZB")) == 0) + bipolar_dest = (QString(tr("%1/v2-users-0000000-training-sessions-%2-exercises-%3-route")).arg(bipolar_dir.absolutePath()).arg(tag).arg(tag)); + else if(QString(file).compare(tr("SAMPLES.GZB")) == 0) + bipolar_dest = (QString(tr("%1/v2-users-0000000-training-sessions-%2-exercises-%3-samples")).arg(bipolar_dir.absolutePath()).arg(tag).arg(tag)); + else if(QString(file).compare(tr("STATS.BPB")) == 0) + bipolar_dest = (QString(tr("%1/v2-users-0000000-training-sessions-%2-exercises-%3-statistics")).arg(bipolar_dir.absolutePath()).arg(tag).arg(tag)); + else if(QString(file).compare(tr("ZONES.BPB")) == 0) + bipolar_dest = (QString(tr("%1/v2-users-0000000-training-sessions-%2-exercises-%3-zones")).arg(bipolar_dir.absolutePath()).arg(tag).arg(tag)); + else if(QString(file).compare(tr("RR.GZB")) == 0) + bipolar_dest = (QString(tr("%1/v2-users-0000000-training-sessions-%2-exercises-%3-rrsamples")).arg(bipolar_dir.absolutePath()).arg(tag).arg(tag)); + + qDebug("Path: %s", bipolar_dest.toUtf8().constData()); + + if(bipolar_dest != tr("")) + { + QFile *bipolar_file; + bipolar_file = new QFile(bipolar_dest); + bipolar_file->open(QIODevice::WriteOnly); + bipolar_file->write(full); + bipolar_file->close(); + } - QDir session_dir = QDir(session_path); + if(raw_output) + { + QString session_path = QDir::toNativeSeparators(QString(tr("%1/%2/%3")).arg(save_dir).arg(date).arg(time)); + QString session_full_name = QDir::toNativeSeparators(QString(tr("%1/%2/%3/%4")).arg(save_dir).arg(date).arg(time).arg(file)); - if(!session_dir.exists()) - session_dir.mkpath(tr(".")); + QDir session_dir = QDir(session_path); - out_file = new QFile(session_full_name); - out_file->open(QIODevice::WriteOnly); - out_file->write(full); - out_file->close(); + if(!session_dir.exists()) + session_dir.mkpath(tr(".")); - if(bipolar_output) - { - QDir bipolar_dir(QStandardPaths::writableLocation(QStandardPaths::GenericDataLocation) + QString(tr("/Polar/PolarFlowSync/export"))); - QString tag = QDateTime(QDate::fromString(date, tr("yyyyMMdd")), QTime::fromString(time, tr("HHmmss"))).toString(tr("yyyyMMddhhmmss")); - - QString bipolar_dest(tr("")); - if(QString(file).compare(tr("TSESS.BPB")) == 0) - bipolar_dest = (QString(tr("%1/v2-users-0000000-training-sessions-%2-create")).arg(bipolar_dir.absolutePath()).arg(tag)); - else if(QString(file).compare(tr("PHYSDATA.BPB")) == 0) - bipolar_dest = (QString(tr("%1/v2-users-0000000-training-sessions-%2-physical-information")).arg(bipolar_dir.absolutePath()).arg(tag)); - else if(QString(file).compare(tr("BASE.BPB")) == 0) - bipolar_dest = (QString(tr("%1/v2-users-0000000-training-sessions-%2-exercises-%3-create")).arg(bipolar_dir.absolutePath()).arg(tag).arg(tag)); - else if(QString(file).compare(tr("ALAPS.BPB")) == 0) - bipolar_dest = (QString(tr("%1/v2-users-0000000-training-sessions-%2-exercises-%3-autolaps")).arg(bipolar_dir.absolutePath()).arg(tag).arg(tag)); - else if(QString(file).compare(tr("LAPS.BPB")) == 0) - bipolar_dest = (QString(tr("%1/v2-users-0000000-training-sessions-%2-exercises-%3-laps")).arg(bipolar_dir.absolutePath()).arg(tag).arg(tag)); - else if(QString(file).compare(tr("ROUTE.GZB")) == 0) - bipolar_dest = (QString(tr("%1/v2-users-0000000-training-sessions-%2-exercises-%3-route")).arg(bipolar_dir.absolutePath()).arg(tag).arg(tag)); - else if(QString(file).compare(tr("SAMPLES.GZB")) == 0) - bipolar_dest = (QString(tr("%1/v2-users-0000000-training-sessions-%2-exercises-%3-samples")).arg(bipolar_dir.absolutePath()).arg(tag).arg(tag)); - else if(QString(file).compare(tr("STATS.BPB")) == 0) - bipolar_dest = (QString(tr("%1/v2-users-0000000-training-sessions-%2-exercises-%3-statistics")).arg(bipolar_dir.absolutePath()).arg(tag).arg(tag)); - else if(QString(file).compare(tr("ZONES.BPB")) == 0) - bipolar_dest = (QString(tr("%1/v2-users-0000000-training-sessions-%2-exercises-%3-zones")).arg(bipolar_dir.absolutePath()).arg(tag).arg(tag)); - else if(QString(file).compare(tr("RR.GZB")) == 0) - bipolar_dest = (QString(tr("%1/v2-users-0000000-training-sessions-%2-exercises-%3-rrsamples")).arg(bipolar_dir.absolutePath()).arg(tag).arg(tag)); - - qDebug("Path: %s", bipolar_dest.toUtf8().constData()); - - if(bipolar_dest != tr("")) - QFile::copy(session_full_name, QDir::toNativeSeparators(bipolar_dest)); + QFile *raw_file; + raw_file = new QFile(session_full_name); + raw_file->open(QIODevice::WriteOnly); + raw_file->write(full); + raw_file->close(); } qDebug("Done getting file from V800"); diff --git a/src/usb/v800usb.h b/src/usb/v800usb.h index 2a30151..0d859ea 100755 --- a/src/usb/v800usb.h +++ b/src/usb/v800usb.h @@ -21,7 +21,7 @@ class V800usb : public QObject public slots: void start(); - void get_sessions(QList sessions, QString save_dir, bool bipolar_output); + void get_sessions(QList sessions, QString save_dir, bool raw_output); private: QList extract_dir_and_files(QByteArray full); @@ -41,7 +41,7 @@ public slots: native_usb *usb; QString save_dir; - bool bipolar_output; + bool raw_output; enum { SESSION_DATA = 0, diff --git a/src/widgets/v800main.cpp b/src/widgets/v800main.cpp index 3c8d3c0..9f6c63e 100755 --- a/src/widgets/v800main.cpp +++ b/src/widgets/v800main.cpp @@ -102,16 +102,20 @@ void V800Main::handle_sessions_done() void V800Main::on_downloadBtn_clicked() { QList sessions; + QString save_dir; int item_iter; disable_all(); sessions_cnt = 0; - QString save_dir = QFileDialog::getExistingDirectory(this, tr("Open Directory"), QDir::homePath(), QFileDialog::ShowDirsOnly); - if(save_dir == tr("")) + if(ui->rawChk->isChecked()) { - enable_all(); - return; + save_dir = QFileDialog::getExistingDirectory(this, tr("Open Directory"), QDir::homePath(), QFileDialog::ShowDirsOnly); + if(save_dir == tr("")) + { + enable_all(); + return; + } } for(item_iter = 0; item_iter < ui->exerciseTree->topLevelItemCount(); item_iter++) @@ -128,7 +132,7 @@ void V800Main::on_downloadBtn_clicked() download_progress->setWindowModality(Qt::WindowModal); download_progress->setValue(1); - emit get_sessions(sessions, save_dir, ui->bipolarChk->isChecked()); + emit get_sessions(sessions, save_dir, ui->rawChk->isChecked()); } void V800Main::on_checkBtn_clicked() @@ -151,7 +155,7 @@ void V800Main::enable_all() { ui->exerciseTree->setEnabled(true); ui->downloadBtn->setEnabled(true); - ui->bipolarChk->setEnabled(true); + ui->rawChk->setEnabled(true); ui->checkBtn->setEnabled(true); ui->uncheckBtn->setEnabled(true); } @@ -160,7 +164,7 @@ void V800Main::disable_all() { ui->exerciseTree->setEnabled(false); ui->downloadBtn->setEnabled(false); - ui->bipolarChk->setEnabled(false); + ui->rawChk->setEnabled(false); ui->checkBtn->setEnabled(false); ui->uncheckBtn->setEnabled(false); }