/*! * * 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 MDDConcentratePumpData.h * \author (last) Dara Navaei * \date (last) 05-Feb-2024 * \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 MDDConcentratePump class * \details The DD ConcentratePump data model * * | MSG | CAN ID | Box | Type | Ack | Src | Dst | Description | * |:----:|:------:|:---:|:------:|:---:|:---:|:---:|:-----------: | * |0x2500| 0x101 | 8 | 2 Hz | N | DD | All | DD ConcentratePump Data | * * | Payload || * | || * | #01:(F32) | \ref Data::mD11PumpCurrentSetSpeed | * | #02:(F32) | \ref Data::mD11PumpMeasuredSpeed | * | #03:(F32) | \ref Data::mD10PumpCurrentSetSpeed | * | #04:(F32) | \ref Data::mD10PumpMeasuredSpeed | * | #05:(U32) | \ref Data::mD11PumpTargetRevCount | * | #06:(U32) | \ref Data::mD11PumpMeasuredRevCount | * | #07:(U32) | \ref Data::mD10PumpTargetRevCount | * | #08:(U32) | \ref Data::mD10PumpMeasuredRevCount | * | #09:(U32) | \ref Data::mD11PumpState | * | #10:(U32) | \ref Data::mD10PumpState | * | #11:(F32) | \ref Data::mD11PumpPulseUS | * | #12:(F32) | \ref Data::mD10PumpPulseUS | * | #13:(F32) | \ref Data::mD11PumpTargetSpeed | * | #14:(F32) | \ref Data::mD10PumpTargetSpeed | * | #15:(U32) | \ref Data::mD11PumpParked | * | #16:(U32) | \ref Data::mD10PumpParked | * | #17:(U32) | \ref Data::mD11PumpParkFault | * | #18:(U32) | \ref Data::mD10PumpParkFault | * | #19:(F32) | \ref Data::mD76PumpTargetSpeed | * | #20:(F32) | \ref Data::mD76PumpCurrentSetSpeed | * | #21:(F32) | \ref Data::mD76PumpMeasuredSpeed | * | #22:(U32) | \ref Data::mD76PumpTargetRevCount | * | #23:(U32) | \ref Data::mD76PumpMeasuredRevCount | * | #24:(U32) | \ref Data::mD76PumpState | * | #25:(F32) | \ref Data::mD76PumpPulseUS | * * * \sa Data * *

Logging info

* | || * | || * | typeText | Datum | * | unitText | DD | * | infoText | ConcentratePump | * */ class MDDConcentratePump : public MAbstract { // friends friend class ::tst_models; QVariantList parameters() const override; struct { Types::F32 mD11PumpCurrentSetSpeed ; ///< Concentrate pump D11_Pump current set speed Types::F32 mD11PumpMeasuredSpeed ; ///< Concentrate pump D11_Pump measured speed Types::F32 mD10PumpCurrentSetSpeed ; ///< Concentrate pump D10_Pump current set speed Types::F32 mD10PumpMeasuredSpeed ; ///< Concentrate pump D10_Pump measured speed Types::U32 mD11PumpTargetRevCount ; ///< Concentrate pump D11_Pump target revolution count Types::U32 mD11PumpMeasuredRevCount ; ///< Concentrate pump D11_Pump measured revolution count Types::U32 mD10PumpTargetRevCount ; ///< Concentrate pump D10_Pump target revolution count Types::U32 mD10PumpMeasuredRevCount ; ///< Concentrate pump D10_Pump measured revolution count Types::U32 mD11PumpState ; ///< Concentrate pump D11_Pump current state Types::U32 mD10PumpState ; ///< Concentrate pump D10_Pump current state Types::F32 mD11PumpPulseUS ; ///< Concentrate pump D11_Pump pulse in microseconds Types::F32 mD10PumpPulseUS ; ///< Concentrate pump D10_Pump pulse in microseconds Types::F32 mD11PumpTargetSpeed ; ///< Concentrate pump D11_Pump target speed Types::F32 mD10PumpTargetSpeed ; ///< Concentrate pump D10_Pump target speed Types::U32 mD11PumpParked ; ///< Concentrate pump D11_Pump parked status Types::U32 mD10PumpParked ; ///< Concentrate pump D10_Pump parked status Types::U32 mD11PumpParkFault ; ///< Concentrate pump D11_Pump park fault status Types::U32 mD10PumpParkFault ; ///< Concentrate pump D10_Pump park fault status Types::F32 mD76PumpTargetSpeed ; ///< Concentrate pump D76_Pump target speed Types::F32 mD76PumpCurrentSetSpeed ; ///< Concentrate pump D76_Pump current set speed Types::F32 mD76PumpMeasuredSpeed ; ///< Concentrate pump D76_Pump measured speed Types::U32 mD76PumpTargetRevCount ; ///< Concentrate pump D76_Pump target revolution count Types::U32 mD76PumpMeasuredRevCount ; ///< Concentrate pump D76_Pump measured revolution count Types::U32 mD76PumpState ; ///< Concentrate pump D76_Pump current state Types::F32 mD76PumpPulseUS ; ///< Concentrate pump D76_Pump pulse in microseconds } _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("ConcentratePump"); } struct Data { float mD11PumpCurrentSetSpeed = 0; ///< Concentrate pump D11_Pump current set speed float mD11PumpMeasuredSpeed = 0; ///< Concentrate pump D11_Pump measured speed float mD10PumpCurrentSetSpeed = 0; ///< Concentrate pump D10_Pump current set speed float mD10PumpMeasuredSpeed = 0; ///< Concentrate pump D10_Pump measured speed quint32 mD11PumpTargetRevCount = 0; ///< Concentrate pump D11_Pump target revolution count quint32 mD11PumpMeasuredRevCount = 0; ///< Concentrate pump D11_Pump measured revolution count quint32 mD10PumpTargetRevCount = 0; ///< Concentrate pump D10_Pump target revolution count quint32 mD10PumpMeasuredRevCount = 0; ///< Concentrate pump D10_Pump measured revolution count quint32 mD11PumpState = 0; ///< Concentrate pump D11_Pump current state quint32 mD10PumpState = 0; ///< Concentrate pump D10_Pump current state float mD11PumpPulseUS = 0; ///< Concentrate pump D11_Pump pulse in microseconds float mD10PumpPulseUS = 0; ///< Concentrate pump D10_Pump pulse in microseconds float mD11PumpTargetSpeed = 0; ///< Concentrate pump D11_Pump target speed float mD10PumpTargetSpeed = 0; ///< Concentrate pump D10_Pump target speed quint32 mD11PumpParked = 0; ///< Concentrate pump D11_Pump parked status quint32 mD10PumpParked = 0; ///< Concentrate pump D10_Pump parked status quint32 mD11PumpParkFault = 0; ///< Concentrate pump D11_Pump park fault status quint32 mD10PumpParkFault = 0; ///< Concentrate pump D10_Pump park fault status float mD76PumpTargetSpeed = 0; ///< Concentrate pump D76_Pump target speed float mD76PumpCurrentSetSpeed = 0; ///< Concentrate pump D76_Pump current set speed float mD76PumpMeasuredSpeed = 0; ///< Concentrate pump D76_Pump measured speed quint32 mD76PumpTargetRevCount = 0; ///< Concentrate pump D76_Pump target revolution count quint32 mD76PumpMeasuredRevCount = 0; ///< Concentrate pump D76_Pump measured revolution count quint32 mD76PumpState = 0; ///< Concentrate pump D76_Pump current state float mD76PumpPulseUS = 0; ///< Concentrate pump D76_Pump pulse in microseconds }; MDDConcentratePump() { } bool fromByteArray (const QByteArray &vByteArray , int *vIndex = nullptr) override; Data data ( ) const ; }; } typedef Model::MDDConcentratePump::Data DDConcentratePumpData;