/*! * * Copyright (c) 2019-2020 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 mtreatmentadjustrequests.h * \date 2020/06/08 * \author Behrouz NematiPour * */ #pragma once // Qt #include namespace Model { #include "HDDefs.h" /*! * Simple request models * These are models to send the request for the doAdjustmet * The the only reason thy have been defined to help overloadding the adjusmtent methods * Otherwise the parameters are so tiny models. */ #include class MModel { protected: static QString toString (const QString &vStringPrefix, const QVariant &vParameters) { return QString(vStringPrefix + "," + vParameters.toStringList().join(',')); }; }; class MAdjustBloodDialysateReq : public MModel { public: quint32 bloodFlow = 0; quint32 dialysateFlow = 0; QString toString() { return toString({bloodFlow , dialysateFlow}); } static QString toString(const QVariantList &vParameters) { return MModel::toString("Adjust Blood/Dialysate", vParameters); } }; class MAdjustDurationReq : public MModel { public: quint32 duration = 0; QString toString() { return toString({duration}); } static QString toString(const QVariantList &vParameters) { return MModel::toString("Adjust Duration", vParameters); } }; class MAdjustUltrafiltrationStateReq : public MModel { public: enum State{ ePaused = 0, eRunning = 1, }; State requestedState = ePaused; // the requested state. Initially it's running => paused. QString toString() { return toString({requestedState}); } static QString toString(const QVariantList &vParameters) { return MModel::toString("Adjust Ultrafiltration State", vParameters); } }; class MAdjustUltrafiltrationEditReq : public MModel { public: float volume = 0; QString toString() { return toString({volume}); } static QString toString(const QVariantList &vParameters) { return MModel::toString("Adjust Ultrafiltration Edit", vParameters); } }; class MAdjustUltrafiltrationConfirmReq : public MModel { public: enum Options : quint32 { eDuration = UF_Adjustments::UF_ADJ_TREATMENT_TIME, eRate = UF_Adjustments::UF_ADJ_UF_RATE, }; float volume = 0; Options option = eDuration; QString toString() { return toString({volume , option}); } static QString toString(const QVariantList &vParameters) { return MModel::toString("Adjust Ultrafiltration Confirm", vParameters); } }; } typedef Model:: MAdjustBloodDialysateReq AdjustBloodDialysateRequestData; typedef Model:: MAdjustDurationReq AdjustDurationRequestData; typedef Model:: MAdjustUltrafiltrationStateReq AdjustUltrafiltrationStateRequestData; typedef Model:: MAdjustUltrafiltrationEditReq AdjustUltrafiltrationEditRequestData; typedef Model::MAdjustUltrafiltrationConfirmReq AdjustUltrafiltrationConfirmRequestData;