// Project #include "GuiController.h" #include "format.h" #include "VCalibrationSettings.h" #include VIEW_DEF_CLASS_ADJUSTMENT(VCalibrationSettings) void View::VCalibrationSettings::initConnections() { _calibrationList.setRoleNames({ { eRole_Title , "title" }, { eRole_Component , "component" }, { eRole_Payload , "payload" }, }); } QVariantList View::VCalibrationSettings::createInitPayload(int vCount) { QVariantList list; list.reserve(vCount); for (int i = 0; i < vCount; ++i) { list.append(0); } rejectionReasons(list); return list; } quint32 View::VCalibrationSettings::getEpochUTC() { const QDateTime currentDateTimeUTC = QDateTime::currentDateTime(); return currentDateTimeUTC.toSecsSinceEpoch(); } void View::VCalibrationSettings::refreshList (int vIndex) { _columnTitle.clear(); _calibrationList.clear(); switch (vIndex) { case ePressure : { columnTitle ( { tr("4th order"), tr("3rd order"), tr("2nd order"), tr("Gain"), tr("Offset"), tr("Cal Time") } ) ; QVariantList initPayloadValues = createInitPayload(_columnTitle.count()); // may remove alter when we add getter message from FW // DD Pressure sensors _calibrationList.appendRow( {{ eRole_Title, tr("Hydraulics Outlet Pressure")}, { eRole_Component, tr("D9" )}, {eRole_Payload, initPayloadValues }}); _calibrationList.appendRow( {{ eRole_Title, tr("Dry Bicarb Pressure")}, { eRole_Component, tr("D66")}, {eRole_Payload, initPayloadValues }}); _calibrationList.appendRow( {{ eRole_Title, tr("Spent Dialysate Pressure")}, { eRole_Component, tr("D51")}, {eRole_Payload, initPayloadValues }}); _calibrationList.appendRow( {{ eRole_Title, tr("Fresh Dialysate Pressure")}, { eRole_Component, tr("D15")}, {eRole_Payload, initPayloadValues }}); _calibrationList.appendRow( {{ eRole_Title, tr("Transmembrane Pressure")}, { eRole_Component, tr("D41")}, {eRole_Payload, initPayloadValues }}); _calibrationList.appendRow( {{ eRole_Title, tr("D87 Pressure Sensor")}, { eRole_Component, tr("D87")}, {eRole_Payload, initPayloadValues }}); // // FP Pressure sensors _calibrationList.appendRow( {{ eRole_Title, tr("Water inlet pressure before regulator")}, { eRole_Component, tr("M3") }, {eRole_Payload, initPayloadValues }}); _calibrationList.appendRow( {{ eRole_Title, tr("Water inlet pressure after regulator")}, { eRole_Component, tr("P8") }, {eRole_Payload, initPayloadValues }}); _calibrationList.appendRow( {{ eRole_Title, tr("Water inlet pressure before the cond. sensor")}, { eRole_Component, tr("P13")}, {eRole_Payload, initPayloadValues }}); _calibrationList.appendRow( {{ eRole_Title, tr("Pressure before the RO filter")}, { eRole_Component, tr("P17")}, {eRole_Payload, initPayloadValues }}); _calibrationList.appendRow( {{ eRole_Title, tr("Pressure after the RO filter")}, { eRole_Component, tr("P46")}, {eRole_Payload, initPayloadValues }}); break; } case eTemperature : columnTitle ( { tr("4th order"), tr("3rd order"), tr("2nd order"), tr("Gain"), tr("Offset"), tr("Cal Time") } ) ; break; case eConcentratePump : columnTitle ( { tr("4th order"), tr("3rd order"), tr("2nd order"), tr("Gain"), tr("Offset"), tr("Cal Time") } ) ; break; case eDialysatePumpD48 : columnTitle ( { tr("4th order"), tr("3rd order"), tr("2nd order"), tr("Gain"), tr("Offset"), tr("Cal Time") } ) ; break; case eDialysatePumpD1 : columnTitle ( { tr("Target Speed"), tr("Cal Time") } ) ; break; case eAcidTypes : break; case eBicarbTypes : break; case eAccelerometer : break; case eBloodLeak : break; } } void View::VCalibrationSettings::doAdjustment(int vIndex, int vSensorIndex, QVariantList vPayload) { // to test rejeciton reason - works -- REMOIVE later // static int test = 0; // rejectionReasons ({0,0,0,0,test = ! test,0}); quint32 calTime = getEpochUTC(); // set cal time to payload. if ( ! vPayload.isEmpty()) { vPayload.last() = Format::fromEpoch( calTime, "yyyy/MM/dd, HH:mm" ); } _calibrationList.updateData(vSensorIndex, eRole_Payload, vPayload); qDebug() << "Cal Time: " << vPayload.last() << " -- Epoch:" << calTime; switch (vIndex) { case ePressure : break; case eTemperature : break; case eConcentratePump : break; case eDialysatePumpD48 : break; case eDialysatePumpD1 : break; case eAcidTypes : break; case eBicarbTypes : break; case eAccelerometer : break; case eBloodLeak : break; } }