Index: sources/view/VCreateTreatment.cpp =================================================================== diff -u -r9612f309f51323d5f89fa7acd64acb3e355380e2 -r9551959461d534dc624f0cbcca0e6f953844fb16 --- sources/view/VCreateTreatment.cpp (.../VCreateTreatment.cpp) (revision 9612f309f51323d5f89fa7acd64acb3e355380e2) +++ sources/view/VCreateTreatment.cpp (.../VCreateTreatment.cpp) (revision 9551959461d534dc624f0cbcca0e6f953844fb16) @@ -410,6 +410,63 @@ } +/** + * @brief VCreateTreatment::getParameterRangesDataCSV + * Gets the parameter ranges data prepared for CSV file format + * @return QString - the data to write to CSV + */ +QString VCreateTreatment::getParameterRangesDataCSV() +{ + QString csvData; + QString sep = ","; + + csvData += QString("bloodFlowRateMin,%0\n").arg(bloodFlowRateMin()); + csvData += QString("bloodFlowRateMax,%0\n").arg(bloodFlowRateMax()); + csvData += QString("dialysateFlowRateMin,%0\n").arg(dialysateFlowRateMin()); + csvData += QString("dialysateFlowRateMax,%0\n").arg(dialysateFlowRateMax()); + csvData += QString("durationMin,%0\n").arg(durationMin()); + csvData += QString("durationMax,%0\n").arg(durationMax()); + csvData += QString("heparinDispensingRateMin,%0\n").arg(heparinDispensingRateMin()); + csvData += QString("heparinDispensingRateMax,%0\n").arg(heparinDispensingRateMax()); + csvData += QString("heparinBolusVolumeMin,%0\n").arg(heparinBolusVolumeMin()); + csvData += QString("heparinBolusVolumeMax,%0\n").arg(heparinBolusVolumeMax()); + csvData += QString("heparinStopTimeMin,%0\n").arg(heparinStopTimeMin()); + csvData += QString("heparinStopTimeMax,%0\n").arg(heparinStopTimeMax()); + csvData += QString("salineBolusOptions,%0\n").arg(salineBolusOptions().join(sep)); + csvData += QString("acidConcentrateOptions,%0\n").arg(acidConcentrateOptions().join(sep)); + csvData += QString("bicarbonateConcentrateOptions,%0\n").arg(bicarbonateConcentrateOptions().join(sep)); + csvData += QString("dialyzerTypeOptions,%0\n").arg(dialyzerTypeOptions().join(sep)); + csvData += QString("dialysateTempMin,%0\n").arg(dialysateTempMin()); + csvData += QString("dialysateTempMax,%0\n").arg(dialysateTempMax()); + csvData += QString("arterialPressureLimitLowMin,%0\n").arg(arterialPressureLimitLowMin()); + csvData += QString("arterialPressureLimitLowMax,%0\n").arg(arterialPressureLimitLowMax()); + csvData += QString("arterialPressureLimitHighMin,%0\n").arg(arterialPressureLimitHighMin()); + csvData += QString("arterialPressureLimitHighMax,%0\n").arg(arterialPressureLimitHighMax()); + csvData += QString("venousPressureLimitLowMin,%0\n").arg(venousPressureLimitLowMin()); + csvData += QString("venousPressureLimitLowMax,%0\n").arg(venousPressureLimitLowMax()); + csvData += QString("venousPressureLimitHighMin,%0\n").arg(venousPressureLimitHighMin()); + csvData += QString("venousPressureLimitHighMax,%0\n").arg(venousPressureLimitHighMax()); + csvData += QString("bloodPressureMeasureIntervalMin,%0\n").arg(bloodPressureMeasureIntervalMin()); + csvData += QString("bloodPressureMeasureIntervalMax,%0\n").arg(bloodPressureMeasureIntervalMax()); + csvData += QString("rinsebackFlowRateMin,%0\n").arg(rinsebackFlowRateMin()); + csvData += QString("rinsebackFlowRateMax,%0\n").arg(rinsebackFlowRateMax()); + + return csvData; +} + +/*! + * \brief VCreateTreatment::saveTreatmentRangesCSV + * Saves the treatment ranges to a CSV file + * \param filename - the csv file to save the ranges to + * \return bool - true if successful, false otherwise + */ +bool VCreateTreatment::saveTreatmentRangesCSV(const QString &filename) +{ + QString csvData = getParameterRangesDataCSV(); + + return FileHandler::write(filename, csvData); +} + void VCreateTreatment::onFinishedSaveNewTreatment(bool success) { if (success) {