/*!
*
* Copyright (c) 2021-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 MPreTreatmentAdjustParametersValidationResponse.h
* \author (last) Behrouz NematiPour
* \date (last) 31-May-2023
* \author (original) Behrouz NematiPour
* \date (original) 11-Apr-2021
*
*/
#pragma once
// Qt
// Project
#include "types.h"
#include "MAbstract.h"
class tst_models;
namespace Model {
/*!
* \brief The MAdjustParametersValidationResponse class
* \details The treatment parameters response model
*
* | MSG | CAN ID | Type | Ack | Src | Dst | Description |
* |:----:|:------:|:------:|:---:|:---:|:---:|:------------------------------: |
* |0x4000| 0x040 | Rsp | Y | TD | UI | Treatment Parameters Response |
*
* | Payload ||
* | ||
* | #01:(U32) | \ref Data::mAccepted |
* | #02:(U32) | \ref Data::mBloodFlowRateRejectReason |
* | #03:(U32) | \ref Data::mDialysateFlowRateRejectReason |
* | #04:(U32) | \ref Data::mTreatmentDurationRejectReason |
* | #05:(U32) | \ref Data::mSalineBolusVolumeRejectReason |
* | #06:(U32) | \ref Data::mHeparinStopTimeRejectReason |
* | #07:(U32) | \ref Data::mHeparinTypeRejectReason |
* | #08:(U32) | \ref Data::mAcidConcentrateRejectReason |
* | #09:(U32) | \ref Data::mBicarbonateConcentrateRejectReason |
* | #10:(U32) | \ref Data::mDialyzerTypeRejectReason |
* | #11:(U32) | \ref Data::mBloodPressureMeasureIntervalRejectReason |
* | #12:(U32) | \ref Data::mRinsebackFlowRateRejectReason |
* | #13:(U32) | \ref Data::mRinsebackVolumeRejectReason |
* | #14:(U32) | \ref Data::mArterialPressureLimitWindowRejectReason |
* | #15:(U32) | \ref Data::mVenousPressureLimitWindowRejectReason |
* | #16:(U32) | \ref Data::mVenousPressureLimitAsymtrcRejectReason |
* | #17:(U32) | \ref Data::mTrancembrncPressureLimitWindowRejectReason |
* | #18:(U32) | \ref Data::mDialysateTempRejectReason |
* | #19:(U32) | \ref Data::mHeparinDispensingRateRejectReason |
* | #20:(U32) | \ref Data::mHeparinBolusVolumeRejectReason |
*
* \sa Data
*
*
* | ||
* | ||
* | typeText | Event |
* | unitText | HD |
* | infoText | TreatmentParametersResponse |
*
*/
class MAdjustParametersValidationResponse : public MAbstract
{
friend class::tst_models;
QVariantList parameters() const override;
struct {
Types::U32 mAccepted ;
Types::U32 mBloodFlowRateRejectReason ;
Types::U32 mDialysateFlowRateRejectReason ;
Types::U32 mTreatmentDurationRejectReason ;
Types::U32 mSalineBolusVolumeRejectReason ;
Types::U32 mHeparinStopTimeRejectReason ;
Types::U32 mHeparinTypeRejectReason ;
Types::U32 mAcidConcentrateRejectReason ;
Types::U32 mBicarbonateConcentrateRejectReason ;
Types::U32 mDialyzerTypeRejectReason ;
Types::U32 mBloodPressureMeasureIntervalRejectReason ;
Types::U32 mRinsebackFlowRateRejectReason ;
Types::U32 mRinsebackVolumeRejectReason ;
Types::U32 mArterialPressureLimitWindowRejectReason ;
Types::U32 mVenousPressureLimitWindowRejectReason ;
Types::U32 mVenousPressureLimitAsymtrcRejectReason ;
Types::U32 mTrancembrncPressureLimitWindowRejectReason ;
Types::U32 mDialysateTempRejectReason ;
Types::U32 mHeparinDispensingRateRejectReason ;
Types::U32 mHeparinBolusVolumeRejectReason ;
} _data;
public:
Type_Enum typeText () const override { return Type_Enum::eEvent; }
Unit_Enum unitText () const override { return Unit_Enum::eTD ; }
QString infoText () const override { return QString("ParametersValidation"); }
struct Data {
quint32 mAccepted = 0;
quint32 mBloodFlowRateRejectReason = 0;
quint32 mDialysateFlowRateRejectReason = 0;
quint32 mTreatmentDurationRejectReason = 0;
quint32 mSalineBolusVolumeRejectReason = 0;
quint32 mHeparinStopTimeRejectReason = 0;
quint32 mHeparinTypeRejectReason = 0;
quint32 mAcidConcentrateRejectReason = 0;
quint32 mBicarbonateConcentrateRejectReason = 0;
quint32 mDialyzerTypeRejectReason = 0;
quint32 mBloodPressureMeasureIntervalRejectReason = 0;
quint32 mRinsebackFlowRateRejectReason = 0;
quint32 mRinsebackVolumeRejectReason = 0;
quint32 mArterialPressureLimitWindowRejectReason = 0;
quint32 mVenousPressureLimitWindowRejectReason = 0;
quint32 mVenousPressureLimitAsymtrcRejectReason = 0;
quint32 mTrancembrncPressureLimitWindowRejectReason = 0;
quint32 mDialysateTempRejectReason = 0;
quint32 mHeparinDispensingRateRejectReason = 0;
quint32 mHeparinBolusVolumeRejectReason = 0;
};
MAdjustParametersValidationResponse () {}
bool fromByteArray (const QByteArray &vByteArray , int *vIndex = nullptr) override;
Data data ( ) const ;
};
}
typedef Model::MAdjustParametersValidationResponse::Data AdjustParametersValidationResponseData;