/*! * * Copyright (c) 2020-2024 Diality Inc. - All Rights Reserved. * \copyright * THIS CODE MAY NOT BE COPIED OR REPRODUCED IN ANY FORM, IN PART OR IN * WHOLE, WITHOUT THE EXPLICIT PERMISSION OF THE COPYRIGHT OWNER. * * \file VTreatmentRanges.h * \author (last) Behrouz NematiPour * \date (last) 06-Aug-2023 * \author (original) Behrouz NematiPour * \date (original) 26-Aug-2020 * */ #pragma once // Qt #include // Project #include "main.h" // Doxygen : do not remove #include "VView.h" #include "MTreatmentRangesData.h" #include "MSettings.h" // namespace namespace View { /*! * \brief The VTreatmentRanges class * \details View for Model's data representation. * * \sa Model::MTreatmentRanges * */ class VTreatmentRanges : public QObject { Q_OBJECT // Real-time properties received from TD from TreatmentRangesData READONLY( quint32 , treatmentRanges_Duration_Min , 0) READONLY( quint32 , treatmentRanges_Duration_Max , 0) READONLY( float , treatmentRanges_Ultrafiltration_Volume_Min , 0) READONLY( float , treatmentRanges_Ultrafiltration_Volume_Max , 0) READONLY( quint32 , treatmentRanges_Dialysate_Flow_Min , 0) READONLY( quint32 , treatmentRanges_Dialysate_Flow_Max , 0) // constant properties coming from the settings RANGESET( quint32 , bloodFlowRate , 0) RANGESET( quint32 , dialysateFlowRate , 0) RANGESET( quint32 , treatmentDuration , 0) RANGESET( float , heparinDispensingRate , 0) RANGESET( float , heparinBolusVolume , 0) RANGESET( quint32 , heparinStopTime , 0) RANGESET( quint32 , salineBolusVolume , 0) READONLY( QStringList , heparinTypeOptions ,{}) READONLY( QStringList , acidConcentrateOptions ,{}) READONLY( QStringList , bicarbonateConcentrateOptions ,{}) READONLY( QStringList , dialyzerTypeOptions ,{}) PROPERTY( QString , acidConcentrate ,"") TRIGGER ( bool , acidConcentrateAccepted , false) RANGESET( float , dialysateTemp , 0) RANGESET( qint32 , trancembrncPressureLimitWindow , 0) RANGESET( qint32 , arterialPressureLimitWindow , 0) RANGESET( qint32 , venousPressureLimitWindow , 0) RANGESET( qint32 , venousPressureLimitAsymtrc , 0) RANGESET( quint32 , bloodPressureMeasureInterval , 0) RANGESET( quint32 , rinsebackFlowRate , 0) // monitoring ranges RANGESET( qint32 , trancembrncPressureMonitor , 0) RANGESET( qint32 , arterialPressureMonitor , 0) RANGESET( qint32 , venousPressureMonitor , 0) VIEW_DEC_CLASS(VTreatmentRanges ) VIEW_DEC_SLOT(TreatmentRangesData ) VIEW_DEC_SLOT(SettingsData ) signals: void didTreatmentRangesDone(bool vPass); public slots: void doSaveAcidConcentrate (const QString &vOption); void doClearAcidConcentrate (const bool vSet ); }; }