/*! * * 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 MDGROPumpData.h * \date 7/1/2020 * \author Behrouz NematiPour * */ #pragma once // Qt #include // Project #include "MAbstract.h" #include "types.h" // forward declarations class tst_models; namespace Model { /*! * \brief The MDGROPump class * \details The DG RO pump data model * * | MSG | CAN ID | Box | Type | Ack | Src | Dst | Description | #1:(U32) | #2:(F32) | #3:(F32) | * |:----:|:------:|:---:|:------:|:---:|:---:|:---:|:-----------: |:--: |:--: |:--: | * |0x1F00| 0x080 | 8 | 1 Hz | N | DG | All | DG RO Pump Data | \ref Data::mPressure | \ref Data::mFlowRate | \ref Data::mPWM | * * \sa Data * */ class MDGROPump : public MAbstract { // friends friend class ::tst_models; QVariantList parameters() const override; struct { Types::U32 mPressure ; Types::F32 mFlowRate ; Types::F32 mPWM ; } _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("ROPump"); } struct Data { quint32 mPressure = 0; ///< Set pt. pressure float mFlowRate = 0; ///< flow rate float mPWM = 0; ///< PWM }; MDGROPump () { } bool fromByteArray (const QByteArray &vByteArray , int *vIndex = nullptr) override; Data data ( ) const ; }; } typedef Model::MDGROPump::Data DGROPumpData;