/*! * * 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 MDGTemperaturesData.h * \date 6/12/2020 * \author Behrouz NematiPour * */ #pragma once // Qt #include // Project #include "MAbstract.h" #include "types.h" // forward declarations class tst_models; namespace Model { /*! * \brief The MDGTemperatures class * \details The DG temperatures data model * * | MSG | CAN ID | Box | Type | Ack | Src | Dst | Description | #1:(F32) | #2:(F32) | #3:(F32) | #4:(F32) | #5:(F32) | #6:(F32) | #7:(F32) | #8:(F32) | #9:(F32) | #10:(F32) | #11:(F32) | #12:(F32) | * |:----:|:------:|:---:|:------:|:---:|:---:|:---:|:-----------: |:--: |:--: |:--: |:--: |:--: |:--: |:--: |:--: |:--: |:--: |:--: |:--: | * |0x2D00| 0x080 | 8 | 2 Hz | N | DG | All | DG Temperatures Data | mInletPrimaryHeater | mOutletPrimaryHeater | mConductivitySensor1 | mConductivitySensor2 | mOutletRedundancy | mInletDialysate | mPrimaryHeaterThermoCouple | mTrimmerHeaterThermoCouple | mPrimaryHeaterColdJunction | mTrimmerHeaterColdJunction | mPrimaryHeaterInternal | mTrimmerHeaterInternal | * * \sa Data * */ class MDGTemperatures : public MAbstract { // friends friend class ::tst_models; // DG Temperatures Data 1 - F32 Inlet primary heater 5 - F32 Outlet redundancy 9 - F32 Primary heater cold junction // 2 - F32 Outlet primary heater 6 - F32 Inlet dialysate 10 - F32 Trimmer heater cold junction // 3 - F32 Conductivity sensor 1 7 - F32 Primary heater thermo-couple 11 - F32 Primary heater internal temperature // 4 - F32 Conductivity sensor 2 8 - F32 Trimmer heater thermo-couple 12 - F32 Trimmer heater internal temperature QVariantList parameters() const override; struct { Types::F32 mInletPrimaryHeater ; /* 01 */ Types::F32 mOutletPrimaryHeater ; /* 02 */ Types::F32 mConductivitySensor1 ; /* 03 */ Types::F32 mConductivitySensor2 ; /* 04 */ Types::F32 mOutletRedundancy ; /* 05 */ Types::F32 mInletDialysate ; /* 06 */ Types::F32 mPrimaryHeaterThermoCouple ; /* 07 */ Types::F32 mTrimmerHeaterThermoCouple ; /* 08 */ Types::F32 mPrimaryHeaterColdJunction ; /* 09 */ Types::F32 mTrimmerHeaterColdJunction ; /* 10 */ Types::F32 mPrimaryHeaterInternal ; /* 11 */ Types::F32 mTrimmerHeaterInternal ; /* 12 */ } _data; public: Type_Enum typeText () const override { return Type_Enum::eDatum ; } Unit_Enum unitText () const override { return Unit_Enum::eDG ; } QString infoText () const override { return QString("Temperatures"); } struct Data { float mInletPrimaryHeater = 0; ///< Inlet primary heaters temperature float mOutletPrimaryHeater = 0; ///< Outlet primary heaters temperature float mConductivitySensor1 = 0; ///< Conductivity sensor 1 temperature float mConductivitySensor2 = 0; ///< Conductivity sensor 2 temperature float mOutletRedundancy = 0; ///< Outlet redundancy temperature float mInletDialysate = 0; ///< Inlet dialysate temperature float mPrimaryHeaterThermoCouple = 0; ///< Primary heaters internal temperature float mTrimmerHeaterThermoCouple = 0; ///< Trimmer heater internal temperature float mPrimaryHeaterColdJunction = 0; ///< Primary heaters cold junction temperature float mTrimmerHeaterColdJunction = 0; ///< Trimmer heater cold junction temperature float mPrimaryHeaterInternal = 0; ///< Primary heaters internal temperature float mTrimmerHeaterInternal = 0; ///< Trimmer heater internal temperature }; MDGTemperatures() { } bool fromByteArray (const QByteArray &vByteArray , int *vIndex = nullptr) override; Data data ( ) const ; }; } typedef Model::MDGTemperatures::Data DGTemperaturesData;