Index: leahi.pro =================================================================== diff -u -rc9764bd0ad823c5c1725d7c7f556290c2c459d4d -r32a7b4d52315019d125c6c7b728bf0d215919c0f --- leahi.pro (.../leahi.pro) (revision c9764bd0ad823c5c1725d7c7f556290c2c459d4d) +++ leahi.pro (.../leahi.pro) (revision 32a7b4d52315019d125c6c7b728bf0d215919c0f) @@ -246,6 +246,7 @@ sources/view/td/data/VTDBatteryData.h \ sources/view/td/data/VTDEjectorData.h \ sources/view/td/data/VTDOpModeData.h \ + sources/view/td/data/VTreatmentRanges.h \ \ # ---------- Views - TD - Adjustment - In-Treatment sources/view/td/adjustment/treatment/VTreatmentAdjustmentBloodFlowRate.h \ sources/view/td/adjustment/treatment/VTreatmentAdjustmentBolusVolume.h \ @@ -709,6 +710,7 @@ sources/view/td/data/VTDBatteryData.cpp \ sources/view/td/data/VTDEjectorData.cpp \ sources/view/td/data/VTDOpModeData.cpp \ + sources/view/td/data/VTreatmentRanges.cpp \ \ # ---------- Views - TD - Adjustment - In-Treatment sources/view/td/adjustment/treatment/VTreatmentAdjustmentBloodFlowRate.cpp \ sources/view/td/adjustment/treatment/VTreatmentAdjustmentBolusVolume.cpp \ @@ -784,7 +786,6 @@ sources/view/hd/data/pretreatment/VPreTreatmentSelfTestDryData.cpp \ sources/view/hd/data/pretreatment/VPreTreatmentDisposablesPrimeData.cpp \ \ # ---------- Views - HD - Data - In-Treatment - sources/view/hd/data/VTreatmentRanges.cpp \ sources/view/hd/data/treatment/VTreatmentDialysateFlow.cpp \ sources/view/hd/data/treatment/VTreatmentHeparinData.cpp \ \ # ---------- Views - HD - Data - End-Treatment Index: sources/gui/GuiGlobals.h =================================================================== diff -u -r6c0c4613d84a4fab29fd3bb75da8d084740bc67e -r32a7b4d52315019d125c6c7b728bf0d215919c0f --- sources/gui/GuiGlobals.h (.../GuiGlobals.h) (revision 6c0c4613d84a4fab29fd3bb75da8d084740bc67e) +++ sources/gui/GuiGlobals.h (.../GuiGlobals.h) (revision 32a7b4d52315019d125c6c7b728bf0d215919c0f) @@ -82,11 +82,11 @@ ID_DuetConfirmUIr = 0xBB00, // 187 // POST - ID_HDPostSingleResultData = 0x8E00, // 142 - ID_HDPostFinalResultData = 0x8F0F, // 143 //// ----- @CRAPIZED + ID_HDPostSingleResultData = 0x8E0F, // 142 //// ----- @CRAPIZED: had to change to avoid duplication + ID_HDPostFinalResultData = 0x8F0F, // 143 //// ----- @CRAPIZED ID_DGPostSingleResultData = 0x9000, // 144 ID_DGPostFinalResultData = 0x9100, // 145 - ID_UIPostFinalResultData = 0x9200, // 146 // ID_UIFinalResultTxr - UI Final Result response/Data transmit + ID_UIPostFinalResultData = 0x920F, // 146 //// ----- @CRAPIZED: had to change to avoid duplication ID_UIPostFinalResultHDReq = 0xB200, // 178 // ID_HDFinalResultRxq - HD Final Result request received // ----- Settings @@ -105,26 +105,26 @@ ID_AdjustSerialDDRsp = 0x5200, // 82 //// ----- @LEAHIZED // Service Information - ID_AdjustServiceDatesReq = 0x8900, // 137 - ID_AdjustServiceDatesHDRsp = 0x8A00, // 138 - ID_AdjustServiceDatesDGRsp = 0x8C00, // 140 + ID_AdjustServiceDatesReq = 0x890F, // 137 //// ----- @CRAPIZED: had to change to avoid duplication + ID_AdjustServiceDatesHDRsp = 0x8A0F, // 138 //// ----- @CRAPIZED: had to change to avoid duplication + ID_AdjustServiceDatesDGRsp = 0x8C0F, // 140 //// ----- @CRAPIZED: had to change to avoid duplication // HD/DG Usage Counter ID_HDUsageInfoReq = 0xA000, // 160 - ID_HDUsageInfoRsp = 0x8B00, // 139 + ID_HDUsageInfoRsp = 0x8B0F, // 139 //// ----- @CRAPIZED: had to change to avoid duplication // RTC - ID_AdjustHDDateTimeReq = 0x6D00, // 109 - ID_AdjustHDDateTimeRsp = 0x6E00, // 110 - ID_AdjustDGDateTimeReq = 0x6F00, // 111 - ID_AdjustDGDateTimeRsp = 0x7000, // 112 + ID_AdjustTDDateTimeReq = 0x6C00, // 108 + ID_AdjustTDDateTimeRsp = 0x6D00, // 109 + ID_AdjustDDDateTimeReq = 0x6E00, // 110 + ID_AdjustDDDateTimeRsp = 0x6F00, // 111 ID_HDRTCEpochData = 0x0A0F, // 10 //// ----- @CRAPIZED // State Messages ID_TDOpModeData = 0x1200, // 18 //// ----- @LEAHIZED ID_PreTreatmentStates = 0x5C00, // 92 ID_TreatmentStates = 0x3C00, // 60 //// ----- @LEAHIZED - ID_PostTreatmentStates = 0x7700, // 119 + ID_PostTreatmentStates = 0x770F, // 119 //// ----- @CRAPIZED: had to change to avoid duplication // ----- ID_PowerOff = 0x010F, // 010F //// ----- @CRAPIZED @@ -136,7 +136,7 @@ ID_PressureOcclusion = 0x2400, // 36 //// ----- @LEAHIZED ID_Saline = 0x3D00, // 61 //// ----- @LEAHIZED ID_Ultrafiltration = 0x3E00, // 62 //// ----- @LEAHIZED - ID_Heparin = 0x4D00, // 77 + ID_Heparin = 0x8C00, // 140 ID_Rinseback = 0x8F00, // 143 //// ----- @LEAHIZED ID_Recirculate = 0x5A00, // 90 ID_BloodPrime = 0x5900, // 89 @@ -172,8 +172,8 @@ // Pre-Treatment SelfTest NoCartridge Progress Data ID_SelfTestNoCartridgeData = 0x6100, // 97 // there is no specific response message for this request and changing of the state in Pre_Treatment_States is used as the response // Pre-Treatment Disposables Installation Confirm - ID_AdjustDisposablesConfirmReq = 0x6200, // 98 // there is no specific response message for this request and changing of the state in Pre_Treatment_States is used as the response - ID_AdjustDisposablesConfirmRsp = 0xAD00, // 173 // there is no specific response message for this request and changing of the state in Pre_Treatment_States is used as the response + ID_AdjustDisposablesConfirmReq = 0x9200, // 146 // there is no specific response message for this request and changing of the state in Pre_Treatment_States is used as the response + ID_AdjustDisposablesConfirmRsp = 0x9300, // 147 // there is no specific response message for this request and changing of the state in Pre_Treatment_States is used as the response // Pre-Treatment SelfTest Dry Progress Data ID_SelfTestDryData = 0x630F, // 99 //// ----- @CRAPIZED: had to change to avoid duplication // Pre-Treatment Disposable Priming @@ -191,8 +191,8 @@ ID_AdjustPatientConnectionConfirmRsp = 0x670F, // 103 //// ----- @CRAPIZED: had to change to avoid duplication // Pre-Treatment Start Treatment ID_AdjustStartTreatmentReq = 0x7100, // 113 - ID_AdjustStartTreatmentRsp = 0x7200, // 114 - + ID_AdjustStartTreatmentRsp = 0x720F, // 114 //// ----- @CRAPIZED: had to change to avoid duplication + // DG Data Messages ID_DGROPumpData = 0x1F0F, // 31 //// ----- @CRAPIZED: had to change to avoid duplication ID_DGDrainPumpData = 0x240F, // ?? //// ----- @CRAPIZED: had to change to avoid duplication @@ -212,7 +212,7 @@ ID_DDBloodLeakData = 0x6000, // 96 //// ----- TODO: Payload subject to change given FW implementation // FP Data Messages - ID_FPValvesStatesData = 0x3100, // 49 //// ----- @LEAHIZED + ID_FPValvesStatesData = 0x310F, // 49 //// ----- @OBSOLETE. REMOVE? ID_FPROPumpData = 0x3200, // 50 //// ----- @LEAHIZED ID_FPPressuresData = 0x3400, // 52 //// ----- @LEAHIZED ID_FPLevelData = 0x3500, // 53 //// ----- @LEAHIZED @@ -224,7 +224,7 @@ // HD Data Messages ID_HDAccelerometerData = 0x3300, // 51 ID_HDSyringePumpData = 0x6900, // 105 - ID_HDBloodLeakData = 0x6C00, // 108 + ID_HDBloodLeakData = 0x6C0F, // 108 //// ----- @CRAPIZED: had to change to avoid duplication ID_TDAirBubbleData = 0x1E00, // 30 //// ----- @LEAHIZED ID_TDAirPumpData = 0x2000, // 32 //// ----- @LEAHIZED ID_TDAirTrapData = 0x2A00, // 42 //// ----- @LEAHIZED @@ -237,23 +237,40 @@ ID_TreatmentParametersSetPointData = 0x4F00, // 79 //// ----- @LEAHIZED // In-Treatment Adjustables - ID_AdjustDurationReq = 0x160F, // 22 //// ----- @CRAPIZED: had to change to avoid duplication - ID_AdjustDurationRsp = 0x1B00, // 27 + ID_AdjustPressuresLimitsReq = 0x7200, // 114 //// ----- @LEAHIZED + ID_AdjustPressuresLimitsRsp = 0x7300, // 115 //// ----- @LEAHIZED + ID_AdjustBolusVolumeReq = 0x7400, // 116 //// ----- @LEAHIZED + ID_AdjustBolusVolumeRsp = 0x7500, // 117 //// ----- @LEAHIZED + + ID_AdjustDurationEditReq = 0x7600, // 118 //// ----- @LEAHIZED + ID_AdjustDurationEditRsp = 0x7700, // 119 //// ----- @LEAHIZED + ID_AdjustDurationConfirmReq = 0x7800, // 120 //// ----- @LEAHIZED + ID_AdjustDurationConfirmRsp = 0x7900, // 121 //// ----- @LEAHIZED + + ID_AdjustSetPointsReq = 0x7A00, // 122 //// ----- @LEAHIZED + ID_AdjustSetPointsRsp = 0x7B00, // 123 //// ----- @LEAHIZED + + ID_AdjustBloodFlowRateReq = 0x7C00, // 124 //// ----- @LEAHIZED + ID_AdjustBloodFlowRateRsp = 0x7D00, // 125 //// ----- @LEAHIZED + + ID_AdjustDialysateFlowRateReq = 0x7E00, // 126 //// ----- @LEAHIZED + ID_AdjustDialysateFlowRateRsp = 0x7F00, // 127 //// ----- @LEAHIZED + + ID_AdjustDialysateTemperatureReq = 0x8000, // 128 //// ----- @LEAHIZED + ID_AdjustDialysateTemperatureRsp = 0x8100, // 129 //// ----- @LEAHIZED + ID_AdjustBloodDialysateReq = 0x1700, // 23 ID_AdjustBloodDialysateRsp = 0x1800, // 24 - ID_AdjustPressuresLimitsReq = 0x470F, // 70 //// ----- @CRAPIZED: had to change to avoid duplication - ID_AdjustPressuresLimitsRsp = 0x480F, // 71 //// ----- @CRAPIZED: had to change to avoid duplication - ID_AdjustSalineReq = 0x5F00, // 95 ID_AdjustSalineRsp = 0x6000, // 96 ID_AdjustVitalsReq = 0x6300, // 99 ID_AdjustVitalsRsp = 0x6400, // 100 - ID_AdjustHeparinReq = 0x4B00, // 75 - ID_AdjustHeparinRsp = 0x4C00, // 76 + ID_AdjustHeparinReq = 0x8A00, // 138 + ID_AdjustHeparinRsp = 0x8B00, // 139 // Ultrafiltration ID_AdjustUltrafiltrationStateReq = 0x4700, // 71 //// ----- @LEAHIZED @@ -275,22 +292,22 @@ ID_AdjustRecirculateRsp = 0x5500, // 85 // Treatment End - ID_AdjustTreatmentEndReq = 0x5700, // 87 - ID_AdjustTreatmentEndRsp = 0x5800, // 88 + ID_AdjustTreatmentEndReq = 0x8D00, // 141 + ID_AdjustTreatmentEndRsp = 0x8E00, // 142 // Post-Treatment // Patient Disconnect ID_AdjustPatientDisconnectNotifyReq = 0x4A00, // 74 // there is no specific response message for this request and changing of the state in Pre_Treatment_States is used as the response ID_AdjustPatientDisconnectConfirmReq = 0x060F, // 060f //// ----- @CRAPIZED - ID_AdjustPatientDisconnectConfirmRsp = 0x7E00, // 126 + ID_AdjustPatientDisconnectConfirmRsp = 0x7E0F, // 126 //// ----- @CRAPIZED: had to change to avoid duplication // Disposables Removal - ID_AdjustDisposablesRemovalConfirmReq = 0x7300, // 115 - ID_AdjustDisposablesRemovalConfirmRsp = 0x7400, // 116 + ID_AdjustDisposablesRemovalConfirmReq = 0x9400, // 148 + ID_AdjustDisposablesRemovalConfirmRsp = 0x9500, // 149 // Treatment Log Adjs - ID_AdjustTreatmentLogReq = 0x7500, // 117 - ID_AdjustTreatmentLogRsp = 0x7600, // 118 + ID_AdjustTreatmentLogReq = 0x750F, // 117 //// ----- @CRAPIZED: had to change to avoid duplication + ID_AdjustTreatmentLogRsp = 0x760F, // 118 //// ----- @CRAPIZED: had to change to avoid duplication // Treatment Log Data ID_TreatmentLogAvrgeData = 0x940F, // 148 //// ----- @CRAPIZED: had to change to avoid duplication ID_TreatmentLogAlarmData = 0x950F, // 149 //// ----- @CRAPIZED: had to change to avoid duplication @@ -299,21 +316,29 @@ // Disinfect ID_AdjustDisinfectModeReq = 0x9A00, // 154 ID_AdjustDisinfectModeRsp = 0x9B00, // 155 - ID_AdjustDisinfectStartReq = 0x7F00, // 127 - ID_AdjustDisinfectStartRsp = 0x8000, // 128 + ID_AdjustDisinfectStartReq = 0x7F0F, // 127 //// ----- @CRAPIZED: had to change to avoid duplication + ID_AdjustDisinfectStartRsp = 0x800F, // 128 //// ----- @CRAPIZED: had to change to avoid duplication ID_AdjustDGCleaningUsageReq = 0xB800, // 184 - ID_AdjustDGCleaningUsageRsp = 0x8D00, // 141 + ID_AdjustDGCleaningUsageRsp = 0x8D0F, // 141 //// ----- @CRAPIZED: had to change to avoid duplication // RO Water Input Mode ID_DuetRoWaterStatDGq = 0xC300, // 195 DG -> UI // DG initiates Status query ID_DuetRoWaterModeUIi = 0xBC00, // 188 UI -> DG // UI initiates Mode Set || responses to status query ID_DuetRoWaterModeDGr = 0xC400, // 196 UI <- DG // DG responses Mode Set // Institutional record request and response - ID_AdjustInstitutionalRecordReq = 0xCF00, // 207 UI -> HD request institutional record - ID_AdjustInstitutionalRecordRsp = 0xD000, // 208 HD -> UI response institutional record + ID_InstitutionalRecordReq = 0x8200, // 130 UI -> TD request institutional record + ID_InstitutionalRecordRsp = 0x8300, // 131 TD -> UI response institutional record + ID_AdjustInstitutionalRecordReq = 0x8400, // 132 UI -> TD request institutional record + ID_AdjustInstitutionalRecordRsp = 0x8500, // 133 TD -> UI response institutional record + // Advanced Institutional record request and response + ID_AdvancedInstitutionalRecordReq = 0x8600, // 134 UI -> TD request institutional record + ID_AdvancedInstitutionalRecordRsp = 0x8700, // 135 TD -> UI response institutional record + ID_AdjustAdvancedInstitutionalRecordReq = 0x8800, // 136 UI -> TD request institutional record + ID_AdjustAdvancedInstitutionalRecordRsp = 0x8900, // 137 TD -> UI response institutional record + // HD reset request in service mode ID_ResetHDInServiceModeReq = 0xB900, // 185 UI -> HD reset in service mode }; @@ -406,7 +431,6 @@ Q_ENUM(DD_Valves) #include "FPDefs.h" - Q_ENUM(FP_Valves) }; // to be able to use the enum as signal/slot parameter @@ -482,9 +506,6 @@ // DD Valves typedef GuiActions::DD_Valves GuiDDValves; - // FP Valves - typedef GuiActions::FP_Valves GuiFPValves; - typedef QMap GuiStringIndexMap; typedef QPair GuiStringIndexMapItem; typedef QMapIterator GuiStringIndexMapIterator; @@ -525,4 +546,4 @@ void registerQmlTypes(); bool startGui(); -} + } Index: sources/view/td/data/VTreatmentRanges.cpp =================================================================== diff -u -r00c9163719184ed49175687b5a4b443f17a062c5 -r32a7b4d52315019d125c6c7b728bf0d215919c0f --- sources/view/td/data/VTreatmentRanges.cpp (.../VTreatmentRanges.cpp) (revision 00c9163719184ed49175687b5a4b443f17a062c5) +++ sources/view/td/data/VTreatmentRanges.cpp (.../VTreatmentRanges.cpp) (revision 32a7b4d52315019d125c6c7b728bf0d215919c0f) @@ -12,6 +12,7 @@ * \date (original) 26-Aug-2020 * */ +#include "VInstitutionalRecord.h" #include "VTreatmentRanges.h" #include "VTreatmentCreate.h" @@ -25,14 +26,14 @@ void VTreatmentRanges::initConnections() { ACTION_VIEW_CONNECTION(TreatmentRangesData); ACTION_VIEW_CONNECTION(SettingsData); + ACTION_VIEW_CONNECTION(InstitutionalRecordResponseData); // since we do not have access to this object because it is created in QML. // Connection to the GuiController made here // It should be defined in the class which wants to connect to signal. // VTreatmentRanges -> GUIController -> ApplicationController to handle connect(this , SIGNAL(didTreatmentRangesDone(bool)), &_GuiController, SLOT( doTreatmentRangesDone(bool))); - } void View::VTreatmentRanges::onActionReceive(const TreatmentRangesData &vData) @@ -47,6 +48,37 @@ treatmentRanges_Dialysate_Flow_Max ( vData.mDialysate_Flow_Max - ( mDialysateFlowRateRes ? vData.mDialysate_Flow_Min % mDialysateFlowRateRes : 0 ) ); } +void View::VTreatmentRanges::onActionReceive(const InstitutionalRecordResponseData &vData) +{ + bloodFlowRateMin ( vData.mBloodFlowMin ); + bloodFlowRateMax ( vData.mBloodFlowMax ); + bloodFlowRateDef ( vData.mBloodFlowDef ); + dialysateFlowRateMin ( vData.mDialysateFlowMin ); + dialysateFlowRateMax ( vData.mDialysateFlowMax ); + dialysateFlowRateDef ( vData.mDialysateFlowDef ); + treatmentDurationMin ( vData.mTreatmentDurationMin ); + treatmentDurationMax ( vData.mTreatmentDurationMax ); + treatmentDurationDef ( vData.mTreatmentDurationDef ); + heparinBolusVolumeMin ( vData.mHepBolusVolumeMin ); + heparinBolusVolumeMax ( vData.mHepBolusVolumeMax ); + heparinBolusVolumeDef ( vData.mHepBolusVolumeDef ); + heparinDispensingRateMin ( vData.mHepDispRateMin ); + heparinDispensingRateMax ( vData.mHepDispRateMax ); + heparinDispensingRateDef ( vData.mHepDispRateDef ); + heparinStopTimeMin ( vData.mHepStopTimeMin ); + + acidConcentratePotassiumMin ( vData.mPotassiumMin ); + acidConcentratePotassiumMax ( vData.mPotassiumMax ); + acidConcentrateCalciumMin ( vData.mCalciumMin ); + acidConcentrateCalciumMax ( vData.mCalciumMax ); + dialysateTempMin ( vData.mDialysateTempMin ); + dialysateTempMax ( vData.mDialysateTempMax ); + dialysateTempDef ( vData.mDialysateTempDef ); + salineBolusVolumeMin ( vData.mFluidBolusVolumeMin ); + salineBolusVolumeMax ( vData.mFluidBolusVolumeMax ); + salineBolusVolumeDef ( vData.mFluidBolusVolumeDef ); +} + /** * \brief VTreatmentRanges::doSaveAcidConcentrate * \param vOption - QString new option to save to config file @@ -161,6 +193,16 @@ FROMVARIANT_WITHRETURN ( acidConcentrateCalciumMax , "Acid Concentrate Ranges" , "Acid_Concentrate_Calcium_Max" , Float , isConfigsOk ); FROMVARIANT_WITHRETURN ( acidConcentrateCalciumRes , "Acid Concentrate Ranges" , "Acid_Concentrate_Calcium_Res" , Float , isConfigsOk ); + FROMVARIANT_WITHRETURN ( dialysateBicarbonateDef , "Dialysate Composition Ranges" , "Dialysate_Composition_Bicarbonate_Def", UInt , isConfigsOk ); + FROMVARIANT_WITHRETURN ( dialysateBicarbonateMin , "Dialysate Composition Ranges" , "Dialysate_Composition_Bicarbonate_Min", UInt , isConfigsOk ); + FROMVARIANT_WITHRETURN ( dialysateBicarbonateMax , "Dialysate Composition Ranges" , "Dialysate_Composition_Bicarbonate_Max", UInt , isConfigsOk ); + FROMVARIANT_WITHRETURN ( dialysateBicarbonateRes , "Dialysate Composition Ranges" , "Dialysate_Composition_Bicarbonate_Res", UInt , isConfigsOk ); + + FROMVARIANT_WITHRETURN ( dialysateSodiumDef , "Dialysate Composition Ranges" , "Dialysate_Composition_Sodium_Def" , UInt , isConfigsOk ); + FROMVARIANT_WITHRETURN ( dialysateSodiumMin , "Dialysate Composition Ranges" , "Dialysate_Composition_Sodium_Min" , UInt , isConfigsOk ); + FROMVARIANT_WITHRETURN ( dialysateSodiumMax , "Dialysate Composition Ranges" , "Dialysate_Composition_Sodium_Max" , UInt , isConfigsOk ); + FROMVARIANT_WITHRETURN ( dialysateSodiumRes , "Dialysate Composition Ranges" , "Dialysate_Composition_Sodium_Res" , UInt , isConfigsOk ); + FROMVARIANT_WITHRETURN ( salineBolusVolumeDef , "Saline Bolus Volume Ranges" , "Saline_Bolus_Volume_Def" , UInt , isConfigsOk ); FROMVARIANT_WITHRETURN ( salineBolusVolumeMin , "Saline Bolus Volume Ranges" , "Saline_Bolus_Volume_Min" , UInt , isConfigsOk ); FROMVARIANT_WITHRETURN ( salineBolusVolumeMax , "Saline Bolus Volume Ranges" , "Saline_Bolus_Volume_Max" , UInt , isConfigsOk ); @@ -171,27 +213,36 @@ bicarbonateConcentrateOptions ( _Settings.keys(mCategory , "Bicarbonate Concentrate Options" )); dialyzerTypeOptions ( _Settings.keys(mCategory , "Dialyzer Type Options" )); bloodPressureMeasureInterval ( _Settings.keys(mCategory , "Vitals Measurement Interval Options" )); + treatmentModalityOptions ( _Settings.keys(mCategory , "Treatment Modality" )); + hdfTreatmentModeOptions ( _Settings.keys(mCategory , "HDF Treatment Mode" )); + dryBicabCartridgeSizeOptions ( _Settings.keys(mCategory , "Dry Bicarb Cartridge Size" )); + waterSampleTestResultRequired ( _Settings.keys(mCategory , "Water Sample Test Result Required" )); isConfigsOk = isConfigsOk && !_heparinTypeOptions .isEmpty(); + if ( _heparinTypeOptions.isEmpty() ) { heparinTypeOptions({"-- --"}); } isConfigsOk = isConfigsOk && !_acidConcentrateOptions .isEmpty(); isConfigsOk = isConfigsOk && !_bicarbonateConcentrateOptions.isEmpty(); isConfigsOk = isConfigsOk && !_dialyzerTypeOptions .isEmpty(); isConfigsOk = isConfigsOk && !_bloodPressureMeasureInterval .isEmpty(); + isConfigsOk = isConfigsOk && !_treatmentModalityOptions .isEmpty(); + isConfigsOk = isConfigsOk && !_hdfTreatmentModeOptions .isEmpty(); + isConfigsOk = isConfigsOk && !_dryBicabCartridgeSizeOptions .isEmpty(); + isConfigsOk = isConfigsOk && !_waterSampleTestResultRequired.isEmpty(); FROMVARIANT_WITHRETURN ( dialysateTempDef , "Dialysate Temperature" , "Dialysate_Temperature_Def" , Float , isConfigsOk ); FROMVARIANT_WITHRETURN ( dialysateTempMin , "Dialysate Temperature" , "Dialysate_Temperature_Min" , Float , isConfigsOk ); FROMVARIANT_WITHRETURN ( dialysateTempMax , "Dialysate Temperature" , "Dialysate_Temperature_Max" , Float , isConfigsOk ); FROMVARIANT_WITHRETURN ( dialysateTempRes , "Dialysate Temperature" , "Dialysate_Temperature_Res" , Float , isConfigsOk ); - FROMVARIANT_WITHRETURN ( trancembrncPressureLimitWindowDef , "Trancememberance Pressure Ranges" , "Trancememberance_Adjust_Window_Def" , Int , isConfigsOk ); - FROMVARIANT_WITHRETURN ( trancembrncPressureLimitWindowMin , "Trancememberance Pressure Ranges" , "Trancememberance_Adjust_Window_Min" , Int , isConfigsOk ); - FROMVARIANT_WITHRETURN ( trancembrncPressureLimitWindowMax , "Trancememberance Pressure Ranges" , "Trancememberance_Adjust_Window_Max" , Int , isConfigsOk ); - FROMVARIANT_WITHRETURN ( trancembrncPressureLimitWindowRes , "Trancememberance Pressure Ranges" , "Trancememberance_Adjust_Window_Res" , Int , isConfigsOk ); + FROMVARIANT_WITHRETURN ( transmembranePressureLimitWindowDef , "Transmembrane Pressure Ranges" , "Transmembrane_Adjust_Window_Def" , Int , isConfigsOk ); + FROMVARIANT_WITHRETURN ( transmembranePressureLimitWindowMin , "Transmembrane Pressure Ranges" , "Transmembrane_Adjust_Window_Min" , Int , isConfigsOk ); + FROMVARIANT_WITHRETURN ( transmembranePressureLimitWindowMax , "Transmembrane Pressure Ranges" , "Transmembrane_Adjust_Window_Max" , Int , isConfigsOk ); + FROMVARIANT_WITHRETURN ( transmembranePressureLimitWindowRes , "Transmembrane Pressure Ranges" , "Transmembrane_Adjust_Window_Res" , Int , isConfigsOk ); - // trancembrncPressureMonitor: Def intentionally omitted (see config/configurations/Parameters/DataList.conf) - FROMVARIANT_WITHRETURN ( trancembrncPressureMonitorMin , "Trancememberance Pressure Ranges" , "Trancememberance_Monitor_Min" , Int , isConfigsOk ); - FROMVARIANT_WITHRETURN ( trancembrncPressureMonitorMax , "Trancememberance Pressure Ranges" , "Trancememberance_Monitor_Max" , Int , isConfigsOk ); - FROMVARIANT_WITHRETURN ( trancembrncPressureMonitorRes , "Trancememberance Pressure Ranges" , "Trancememberance_Monitor_Res" , Int , isConfigsOk ); + // transmembranePressureMonitor: Def intentionally omitted (see config/configurations/Parameters/DataList.conf) + FROMVARIANT_WITHRETURN ( transmembranePressureMonitorMin , "Transmembrane Pressure Ranges" , "Transmembrane_Monitor_Min" , Int , isConfigsOk ); + FROMVARIANT_WITHRETURN ( transmembranePressureMonitorMax , "Transmembrane Pressure Ranges" , "Transmembrane_Monitor_Max" , Int , isConfigsOk ); + FROMVARIANT_WITHRETURN ( transmembranePressureMonitorRes , "Transmembrane Pressure Ranges" , "Transmembrane_Monitor_Res" , Int , isConfigsOk ); FROMVARIANT_WITHRETURN ( arterialPressureLimitWindowDef , "Arterial Blood Pressure Ranges" , "Arterial_Adjust_Window_Def" , Int , isConfigsOk ); FROMVARIANT_WITHRETURN ( arterialPressureLimitWindowMin , "Arterial Blood Pressure Ranges" , "Arterial_Adjust_Window_Min" , Int , isConfigsOk ); @@ -228,8 +279,50 @@ FROMVARIANT_WITHRETURN ( rinsebackVolumeMax , "Rinseback Volume Ranges" , "Rinseback_Volume_Max" , UInt , isConfigsOk ); FROMVARIANT_WITHRETURN ( rinsebackVolumeRes , "Rinseback Volume Ranges" , "Rinseback_Volume_Res" , UInt , isConfigsOk ); - // ultrafiltrationVolume: Def, Min, Max intentionally omitted (see config/configurations/Parameters/DataList.conf) + FROMVARIANT_WITHRETURN ( ultrafiltrationVolumeDef , "Ultrafiltration Volume Ranges" , "Ultrafiltration_Volume_Def" , Float , isConfigsOk ); + FROMVARIANT_WITHRETURN ( ultrafiltrationVolumeMin , "Ultrafiltration Volume Ranges" , "Ultrafiltration_Volume_Min" , Float , isConfigsOk ); + FROMVARIANT_WITHRETURN ( ultrafiltrationVolumeMax , "Ultrafiltration Volume Ranges" , "Ultrafiltration_Volume_Max" , Float , isConfigsOk ); FROMVARIANT_WITHRETURN ( ultrafiltrationVolumeRes , "Ultrafiltration Volume Ranges" , "Ultrafiltration_Volume_Res" , Float , isConfigsOk ); + FROMVARIANT_WITHRETURN ( substitutionVolumeDef , "Substitution Volume Ranges" , "Substitution_Volume_Def" , Float , isConfigsOk ); + FROMVARIANT_WITHRETURN ( substitutionVolumeMin , "Substitution Volume Ranges" , "Substitution_Volume_Min" , Float , isConfigsOk ); + FROMVARIANT_WITHRETURN ( substitutionVolumeMax , "Substitution Volume Ranges" , "Substitution_Volume_Max" , Float , isConfigsOk ); + FROMVARIANT_WITHRETURN ( substitutionVolumeRes , "Substitution Volume Ranges" , "Substitution_Volume_Res" , Float , isConfigsOk ); + + FROMVARIANT_WITHRETURN ( minRORejectionRatioAlarmDef , "Minimum RO Rejection Ratio Alarm" , "Min_RO_Rejection_Ratio_Alarm_Def" , Int , isConfigsOk ); + FROMVARIANT_WITHRETURN ( minRORejectionRatioAlarmMin , "Minimum RO Rejection Ratio Alarm" , "Min_RO_Rejection_Ratio_Alarm_Min" , Int , isConfigsOk ); + FROMVARIANT_WITHRETURN ( minRORejectionRatioAlarmMax , "Minimum RO Rejection Ratio Alarm" , "Min_RO_Rejection_Ratio_Alarm_Max" , Int , isConfigsOk ); + FROMVARIANT_WITHRETURN ( minRORejectionRatioAlarmRes , "Minimum RO Rejection Ratio Alarm" , "Min_RO_Rejection_Ratio_Alarm_Res" , Int , isConfigsOk ); + + FROMVARIANT_WITHRETURN ( disinfectionFrequencyDef , "Disinfection Frequency" , "Disinfection_Frequency_Def" , Int , isConfigsOk ); + FROMVARIANT_WITHRETURN ( disinfectionFrequencyMin , "Disinfection Frequency" , "Disinfection_Frequency_Min" , Int , isConfigsOk ); + FROMVARIANT_WITHRETURN ( disinfectionFrequencyMax , "Disinfection Frequency" , "Disinfection_Frequency_Max" , Int , isConfigsOk ); + FROMVARIANT_WITHRETURN ( disinfectionFrequencyRes , "Disinfection Frequency" , "Disinfection_Frequency_Res" , Int , isConfigsOk ); + + FROMVARIANT_WITHRETURN ( disinfectionParametersCycleTimeDef, "Disinfection Parameters Cycle Time" , "Disinfection_Parameters_Cycle_Time_Def", Int , isConfigsOk ); + FROMVARIANT_WITHRETURN ( disinfectionParametersCycleTimeMin, "Disinfection Parameters Cycle Time" , "Disinfection_Parameters_Cycle_Time_Min", Int , isConfigsOk ); + FROMVARIANT_WITHRETURN ( disinfectionParametersCycleTimeMax, "Disinfection Parameters Cycle Time" , "Disinfection_Parameters_Cycle_Time_Max", Int , isConfigsOk ); + FROMVARIANT_WITHRETURN ( disinfectionParametersCycleTimeRes, "Disinfection Parameters Cycle Time" , "Disinfection_Parameters_Cycle_Time_Res", Int , isConfigsOk ); + + FROMVARIANT_WITHRETURN ( maxBloodPumpStopTimeDef , "Maximum Blood Pump Stop Time" , "Max_Blood_Pump_Stop_Time_Def" , Int , isConfigsOk ); + FROMVARIANT_WITHRETURN ( maxBloodPumpStopTimeMin , "Maximum Blood Pump Stop Time" , "Max_Blood_Pump_Stop_Time_Min" , Int , isConfigsOk ); + FROMVARIANT_WITHRETURN ( maxBloodPumpStopTimeMax , "Maximum Blood Pump Stop Time" , "Max_Blood_Pump_Stop_Time_Max" , Int , isConfigsOk ); + FROMVARIANT_WITHRETURN ( maxBloodPumpStopTimeRes , "Maximum Blood Pump Stop Time" , "Max_Blood_Pump_Stop_Time_Res" , Int , isConfigsOk ); + + FROMVARIANT_WITHRETURN ( inletWaterCondLowThresholdDef , "Inlet Water Cond. Low Threshold" , "Inlet_Water_Cond_Low_Threshold_Def" , Int , isConfigsOk ); + FROMVARIANT_WITHRETURN ( inletWaterCondLowThresholdMin , "Inlet Water Cond. Low Threshold" , "Inlet_Water_Cond_Low_Threshold_Min" , Int , isConfigsOk ); + FROMVARIANT_WITHRETURN ( inletWaterCondLowThresholdMax , "Inlet Water Cond. Low Threshold" , "Inlet_Water_Cond_Low_Threshold_Max" , Int , isConfigsOk ); + FROMVARIANT_WITHRETURN ( inletWaterCondLowThresholdRes , "Inlet Water Cond. Low Threshold" , "Inlet_Water_Cond_Low_Threshold_Res" , Int , isConfigsOk ); + + FROMVARIANT_WITHRETURN ( inletWaterCondHighThresholdDef , "Inlet Water Cond. High Threshold" , "Inlet_Water_Cond_High_Threshold_Def" , Int , isConfigsOk ); + FROMVARIANT_WITHRETURN ( inletWaterCondHighThresholdMin , "Inlet Water Cond. High Threshold" , "Inlet_Water_Cond_High_Threshold_Min" , Int , isConfigsOk ); + FROMVARIANT_WITHRETURN ( inletWaterCondHighThresholdMax , "Inlet Water Cond. High Threshold" , "Inlet_Water_Cond_High_Threshold_Max" , Int , isConfigsOk ); + FROMVARIANT_WITHRETURN ( inletWaterCondHighThresholdRes , "Inlet Water Cond. High Threshold" , "Inlet_Water_Cond_High_Threshold_Res" , Int , isConfigsOk ); + + FROMVARIANT_WITHRETURN ( chlorineWaterSampleCheckDef , "Chlorine Water Sample Check" , "Chlorine_Water_Sample_Check_Def" , Int , isConfigsOk ); + FROMVARIANT_WITHRETURN ( chlorineWaterSampleCheckMin , "Chlorine Water Sample Check" , "Chlorine_Water_Sample_Check_Min" , Int , isConfigsOk ); + FROMVARIANT_WITHRETURN ( chlorineWaterSampleCheckMax , "Chlorine Water Sample Check" , "Chlorine_Water_Sample_Check_Max" , Int , isConfigsOk ); + FROMVARIANT_WITHRETURN ( chlorineWaterSampleCheckRes , "Chlorine Water Sample Check" , "Chlorine_Water_Sample_Check_Res" , Int , isConfigsOk ); + emit didTreatmentRangesDone( isConfigsOk ); } Index: sources/view/td/data/VTreatmentRanges.h =================================================================== diff -u -r00c9163719184ed49175687b5a4b443f17a062c5 -r32a7b4d52315019d125c6c7b728bf0d215919c0f --- sources/view/td/data/VTreatmentRanges.h (.../VTreatmentRanges.h) (revision 00c9163719184ed49175687b5a4b443f17a062c5) +++ sources/view/td/data/VTreatmentRanges.h (.../VTreatmentRanges.h) (revision 32a7b4d52315019d125c6c7b728bf0d215919c0f) @@ -20,6 +20,7 @@ // Project #include "main.h" // Doxygen : do not remove #include "VView.h" +#include "MTDInstitutionalRecordResponse.h" #include "MTreatmentRangesData.h" #include "MSettings.h" // namespace @@ -45,37 +46,58 @@ READONLY( quint32 , treatmentRanges_Dialysate_Flow_Max , 0) // constant properties coming from the settings + + // Create Rx Parameters RANGESET( quint32 , bloodFlowRate , 0) RANGESET( quint32 , dialysateFlowRate , 0) RANGESET( quint32 , treatmentDuration , 0) - RANGESET( float , heparinDispensingRate , 0) RANGESET( float , heparinBolusVolume , 0) + RANGESET( float , heparinDispensingRate , 0) RANGESET( quint32 , heparinStopTime , 0) - RANGESET( quint32 , salineBolusVolume , 0) + RANGESET( float , acidConcentratePotassium , 0) RANGESET( float , acidConcentrateCalcium , 0) VALUESET( float , potassium , 0) VALUESET( float , calcium , 0) - - READONLY( QStringList , heparinTypeOptions ,{}) READONLY( QStringList , acidConcentrateOptions ,{}) READONLY( QStringList , bicarbonateConcentrateOptions ,{}) READONLY( QStringList , dialyzerTypeOptions ,{}) READONLY( QStringList , bloodPressureMeasureInterval ,{}) + RANGESET( float , dialysateTemp , 0) + RANGESET( quint32 , salineBolusVolume , 0) + // Institutional + RANGESET( quint32 , dialysateBicarbonate , 0) + RANGESET( quint32 , dialysateSodium , 0) + + READONLY( QStringList , heparinTypeOptions ,{}) + READONLY( QStringList , treatmentModalityOptions ,{}) + READONLY( QStringList , hdfTreatmentModeOptions ,{}) + READONLY( QStringList , dryBicabCartridgeSizeOptions ,{}) + PROPERTY( QString , acidConcentrate ,"") TRIGGER ( bool , acidConcentrateAccepted , false) - RANGESET( float , dialysateTemp , 0) - RANGESET( qint32 , trancembrncPressureLimitWindow , 0) + RANGESET( qint32 , transmembranePressureLimitWindow , 0) RANGESET( qint32 , arterialPressureLimitWindow , 0) RANGESET( qint32 , venousPressureLimitWindow , 0) RANGESET( qint32 , venousPressureLimitAsymtrc , 0) RANGESET( quint32 , rinsebackFlowRate , 0) RANGESET( quint32 , rinsebackVolume , 0) + RANGESET( float , substitutionVolume , 0) + // Advanced + RANGESET( quint32 , minRORejectionRatioAlarm , 0) + RANGESET( quint32 , disinfectionFrequency , 0) + RANGESET( quint32 , disinfectionParametersCycleTime , 0) + RANGESET( quint32 , maxBloodPumpStopTime , 0) + RANGESET( quint32 , inletWaterCondLowThreshold , 0) + RANGESET( quint32 , inletWaterCondHighThreshold , 0) + RANGESET( quint32 , chlorineWaterSampleCheck , 0) + READONLY( QStringList , waterSampleTestResultRequired ,{}) + // monitoring ranges - RANGESET( qint32 , trancembrncPressureMonitor , 0) + RANGESET( qint32 , transmembranePressureMonitor , 0) RANGESET( qint32 , arterialPressureMonitor , 0) RANGESET( qint32 , venousPressureMonitor , 0) @@ -85,6 +107,7 @@ VIEW_DEC_CLASS(VTreatmentRanges ) VIEW_DEC_SLOT(TreatmentRangesData ) VIEW_DEC_SLOT(SettingsData ) + VIEW_DEC_SLOT(InstitutionalRecordResponseData ) signals: void didTreatmentRangesDone (bool vPass );