/*! * * Copyright (c) 2024-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 VAdjustmentInstitutionalRecord.h * \author (last) Behrouz NematiPour * \date (last) 26-Mar-2024 * \author (original) Dara Navaei * \date (original) 28-Feb-2024 * */ #pragma once // Qt #include // Project #include "main.h" // Doxygen : do not remove #include "VAdjustmentResponseBase.h" #include "MAdjustHDInstitutionalRecordResponse.h" namespace View { /*! * \brief The VAdjustmentInstitutionalRecord class * \details View for Model's Data representation. * * \sa Model::MAdjustServiceModeResponse * */ class VAdjustmentInstitutionalRecord : public VAdjustmentResponseBase { Q_OBJECT // friends friend class ::tst_views; const QStringList _titles { tr("Blood Flow Rate" ), tr("Dialysate Flow Rate" ), tr("Treatment Duration" ), tr("Heparin Stop" ), tr("Saline Bolus Volume" ), tr("Dialysate Temperature" ), tr("Arterial Pressure Limit" ), tr("Venous Pressure Limit" ), tr("Venous Asym Pressure Limit" ), tr("Prescribed UF Volume" ), tr("Heparin Dispense Rate" ), tr("Heparin Bolus Volume" ), tr("Chemical Disinfect" ), }; const QStringList _units { tr("mL/min" ), tr("mL/min" ), tr("min" ), tr("min" ), tr("mL" ), tr("C" ), tr("mmHg" ), tr("mmHg" ), tr("mmHg" ), tr("L" ), tr("mL/hr" ), tr("mL" ), tr("" ), }; // The property adjustment_Triggered has to be always true // and to always trigger the change event to work as a notifier for GUI TRIGGER( bool , adjustment , 0) PROPERTY(quint32 , minBloodFlowMLPM , 0 ) PROPERTY(quint32 , maxBloodFlowMLPM , 0 ) PROPERTY(quint32 , minDialysateFlowMLPM , 0 ) PROPERTY(quint32 , maxDialysateFlowMLPM , 0 ) PROPERTY(quint32 , minTxDurationMIN , 0 ) PROPERTY(quint32 , maxTxDurationMIN , 0 ) PROPERTY(quint32 , minStopHepDispBeforeTxEndMIN , 0 ) PROPERTY(quint32 , maxStopHepDispBeforeTxEndMIN , 0 ) PROPERTY(quint32 , minSalineBolVolumeML , 0 ) PROPERTY(quint32 , maxSalineBolVolumeML , 0 ) PROPERTY(float , minDialysateTempC , 0.0 ) PROPERTY(float , maxDialysateTempC , 0.0 ) PROPERTY(qint32 , minArtPressLimitWindowMMHG , 0 ) PROPERTY(qint32 , maxArtPressLimitWindowMMHG , 0 ) PROPERTY(qint32 , minVenPressLimitWindowMMHG , 0 ) PROPERTY(qint32 , maxVenPressLimitWindowMMHG , 0 ) PROPERTY(qint32 , minVenAsymPressLimitMMHG , 0 ) PROPERTY(qint32 , maxVenAsymPressLimitMMHG , 0 ) PROPERTY(float , minUltrafiltrationVolumeL , 0.0 ) PROPERTY(float , maxUltrafiltrationVolumeL , 0.0 ) PROPERTY(float , minHepDispRateMLPM , 0.0 ) PROPERTY(float , maxHepDispRateMLPM , 0.0 ) PROPERTY(float , minHepBolVolumeML , 0.0 ) PROPERTY(float , maxHepBolVolumeML , 0.0 ) PROPERTY(bool , enableChemicalDisinfect , true ) PROPERTY(QStringList , parametersTitle , titles()) PROPERTY(QStringList , parametersText , {} ) PROPERTY(QStringList , parametersUnit , units ()) VIEW_DEC_CLASS_ADJUSTMENT(VAdjustmentInstitutionalRecord, AdjustInstitutionalRecordResponseData) private: QStringList titles() { return _titles; } QStringList units () { return _units ; } public slots: void doAdjustment() { AdjustInstitutionalRequestData data; emit didAdjustment(data); } signals: void didAdjustment(const AdjustInstitutionalRequestData &vData); }; }