/*! * * 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 MDDPressuresData.h * \author (last) Behrouz NematiPour * \date (last) 10-Feb-2023 * \author (original) Behrouz NemaiPour * \date (original) 02-Jul-2020 * */ #pragma once // Qt #include // Project #include "MAbstract.h" #include "types.h" // forward declarations class tst_models; namespace Model { /*! * \brief The MDDPressures class * \details The DD pressures data model * * | MSG | CAN ID | Box | Type | Ack | Src | Dst | Description | * |:----:|:------:|:---:|:------:|:---:|:---:|:---:|:-----------: | * |0x1C00| 0x101 | 8 | 1 Hz | N | DD | All | DD Pressures Data | * * | Payload || * | || * | #01:(F32) | \ref Data::mWaterInletPSI | * | #02:(F32) | \ref Data::mWaterOutletPSI | * | #03:(F32) | \ref Data::mHydrolicOutletPSI | * | #04:(F32) | \ref Data::mBicarbBagPSI | * | #05:(F32) | \ref Data::mSpentDialysatePSI | * | #06:(F32) | \ref Data::mFreshDialysatePSI | * | #07:(F32) | \ref Data::mTransmembranePSI | * | #08:(F32) | \ref Data::mWaterInletTemp | * | #09:(F32) | \ref Data::mWaterOutletTemp | * | #10:(F32) | \ref Data::mHydrolicOutletTemp | * | #11:(F32) | \ref Data::mBicarbBagTemp | * | #12:(F32) | \ref Data::mSpentDialysateTemp | * | #13:(F32) | \ref Data::mFreshDialysateTemp | * | #14:(F32) | \ref Data::mTransmembraneTemp | * * \sa Data * *

Logging info

* | || * | || * | typeText | Datum | * | unitText | DD | * | infoText | Pressures | * */ class MDDPressures : public MAbstract { // friends friend class ::tst_models; QVariantList parameters() const override; struct { Types::F32 m1Pressure ; ///< Water Inlet Input pressure Types::F32 m3Pressure ; ///< Water Inlet Output pressure Types::F32 d9Pressure ; ///< Hydraulics outlet pressure Types::F32 d66Pressure ; ///< Bicarb bag pressure Types::F32 d51Pressure ; ///< Spent Dialysate pressure Types::F32 d18Pressure ; ///< Fresh Dialysate pressure Types::F32 d41Pressure ; ///< Transmembrane pressure Types::F32 m1PresTemp ; ///< Water Inlet Input temperature Types::F32 m3PresTemp ; ///< Water Inlet Output temperature Types::F32 d9PresTemp ; ///< Hydraulics outlet pressure temperature Types::F32 d66PresTemp ; ///< Bicarb bag temperature Types::F32 d51PresTemp ; ///< Spent Dialysate temperature Types::F32 d18PresTemp ; ///< Fresh Dialysate temperature Types::F32 d41PresTemp ; ///< Transmembrane temperature } _data; public: Type_Enum typeText () const override { return Type_Enum::eDatum ; } Unit_Enum unitText () const override { return Unit_Enum::eDD ; } QString infoText () const override { return QString("Pressures"); } struct Data { float mWaterInletPSI = 0; ///< Water Inlet Input pressure float mWaterOutletPSI = 0; ///< Water Inlet Output pressure float mHydrolicOutletPSI = 0; ///< Hydraulics outlet pressure float mBicarbBagPSI = 0; ///< Bicarb bag pressure float mSpentDialysatePSI = 0; ///< Spent Dialysate pressure float mFreshDialysatePSI = 0; ///< Fresh Dialysate pressure float mTransmembranePSI = 0; ///< Transmembrane pressure float mWaterInletTemp = 0; ///< Water Inlet Input temperature float mWaterOutletTemp = 0; ///< Water Inlet Output temperature float mHydrolicOutletTemp = 0; ///< Hydraulics outlet pressure temperature float mBicarbBagTemp = 0; ///< Bicarb bag temperature float mSpentDialysateTemp = 0; ///< Spent Dialysate temperature float mFreshDialysateTemp = 0; ///< Fresh Dialysate temperature float mTransmembraneTemp = 0; ///< Transmembrane temperature }; MDDPressures () {} bool fromByteArray (const QByteArray &vByteArray , int *vIndex = nullptr) override; Data data ( ) const ; }; } typedef Model::MDDPressures::Data DDPressuresData;