/*!
*
* 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 MTreatmentParametersResp.h
* \author (last) Peter Lucia
* \date (last) 14-Oct-2020
* \author (original) Peter Lucia
* \date (original) 08-Sep-2020
*
*/
#ifndef MTREATMENTPARAMETERSRESP_H
#define MTREATMENTPARAMETERSRESP_H
// Qt
// Project
#include "types.h"
#include "MAbstract.h"
class tst_models;
namespace Model {
/*!
* \brief The MTreatmentParametersResponse class
* \details The treatment parameters response model
*
* | MSG | CAN ID | Box | Type | Ack | Src | Dst | Description |
* |:----:|:------:|:---:|:------:|:---:|:---:|:---:|:------------------------------: |
* | 53 | 0x020 | 6 | Rsp | Y | HD | UI | Treatment Parameters Response |
*
* | Payload ||
* | ||
* | #1:(U32) | \ref Data::requestValid |
* | #2:(U32) | \ref bloodFlowRate |
* | #3:(U32) | \ref dialysateFlowRate |
* | #4:(U32) | \ref duration |
* | #5:(U32) | \ref heparinStopTime |
* | #6:(U32) | \ref salineBolus |
* | #7:(U32) | \ref acidConcentrate |
* | #8:(U32) | \ref bicarbonateConcentrate |
* | #9:(U32) | \ref dialyzerType |
* | #10:(U32) | \ref bloodPressureMeasureInterval |
* | #11:(U32) | \ref rinsebackFlowRate |
* | #12:(U32) | \ref arterialPressureLimitLow |
* | #13:(U32) | \ref arterialPressureLimitHigh |
* | #14:(U32) | \ref venousPressureLimitLow |
* | #15:(U32) | \ref venousPressureLimitHigh |
* | #16:(U32) | \ref heparinDispensingRate |
* | #17:(U32) | \ref heparinBolusVolume |
* | #18:(U32) | \ref dialysateTemp |
*
* \sa Data
*
*
* | ||
* | ||
* | typeText | Datum |
* | unitText | HD |
* | infoText | TreatmentParametersResponse |
*
*/
class MTreatmentParametersResponse : public MAbstract
{
friend class::tst_models;
QVariantList parameters() const override;
struct {
Types::U32 requestValid ;
Types::U32 bloodFlowRate ;
Types::U32 dialysateFlowRate ;
Types::U32 duration ;
Types::U32 heparinStopTime ;
Types::U32 salineBolus ;
Types::U32 acidConcentrate ;
Types::U32 bicarbonateConcentrate ;
Types::U32 dialyzerType ;
Types::U32 bloodPressureMeasureInterval ;
Types::U32 rinsebackFlowRate ;
Types::U32 arterialPressureLimitLow ;
Types::U32 arterialPressureLimitHigh ;
Types::U32 venousPressureLimitLow ;
Types::U32 venousPressureLimitHigh ;
Types::U32 heparinDispensingRate ;
Types::U32 heparinBolusVolume ;
Types::U32 dialysateTemp ;
} _data;
public:
Type_Enum typeText () const override { return Type_Enum::eDatum; }
Unit_Enum unitText () const override { return Unit_Enum::eHD ; }
QString infoText () const override { return QString("TreatmentParametersResponse"); }
struct Data {
quint32 requestValid = 0;
quint32 bloodFlowRate = 0;
quint32 dialysateFlowRate = 0;
quint32 duration = 0;
quint32 heparinStopTime = 0;
quint32 salineBolus = 0;
quint32 acidConcentrate = 0;
quint32 bicarbonateConcentrate = 0;
quint32 dialyzerType = 0;
quint32 bloodPressureMeasureInterval = 0;
quint32 rinsebackFlowRate = 0;
quint32 arterialPressureLimitLow = 0;
quint32 arterialPressureLimitHigh = 0;
quint32 venousPressureLimitLow = 0;
quint32 venousPressureLimitHigh = 0;
quint32 heparinDispensingRate = 0;
quint32 heparinBolusVolume = 0;
quint32 dialysateTemp = 0;
};
MTreatmentParametersResponse () {}
bool fromByteArray (const QByteArray &vByteArray , int *vIndex = nullptr) override;
Data data ( ) const ;
};
}
typedef Model::MTreatmentParametersResponse::Data AdjustTreatmentParametersResponseData;
#endif // MTREATMENTPARAMETERSRESP_H