#pragma once // Qt #include // Project #include "MAbstract.h" #include "types.h" // forward declarations class tst_models; namespace Model { /*! * \brief The MROPumpData class * \details The The ID_ROPumpData data model * * | MSG | CAN ID | Type | Ack | Src | Dst | Description | * |:----:|:------:|:------:|:---:|:---:|:---:|:-----------: | * |0x3200| 0x102 | 1 Hz | N | DD | All | ID_ROPumpData data | * * | Payload || * | || * | #1:(U32) | \ref Data::mp12PumpState | * | #2:(U32) | \ref Data::mp12PumpDutyCycle | * | #3:(U32) | \ref Data::mp12PumpFBDutyCycle | * | #4:(F32) | \ref Data::mp12PumpSpeed | * | #5:(U32) | \ref Data::mp40PumpState | * | #6:(U32) | \ref Data::mp40PumpDutyCycle | * | #7:(U32) | \ref Data::mp40PumpFBDutyCycle | * | #8:(F32) | \ref Data::mp40PumpSpeed | * * \sa Data * *

Logging info

* | || * | || * | typeText | eDatum | * | unitText | DD | * | infoText | MROPumpData | * */ class MROPumpData : public MAbstract { // friends friend class ::tst_models; QVariantList parameters() const override; struct { Types::U32 mP12pumpstate ; Types::U32 mP12pumpdutycycle ; Types::U32 mP12pumpfbdutycycle; Types::F32 mP12pumpspeed ; Types::U32 mP40pumpstate ; Types::U32 mP40pumpdutycycle ; Types::U32 mP40pumpfbdutycycle; Types::F32 mP40pumpspeed ; } _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("ROPump"); } struct Data { quint32 mP12pumpstate = 0; quint32 mP12pumpdutycycle = 0; quint32 mP12pumpfbdutycycle = 0; float mP12pumpspeed = 0; quint32 mP40pumpstate = 0; quint32 mP40pumpdutycycle = 0; quint32 mP40pumpfbdutycycle = 0; float mP40pumpspeed = 0; }; MROPumpData() {} bool fromByteArray (const QByteArray &vByteArray , int *vIndex = nullptr) override; Data data ( ) const ; }; } typedef Model::MROPumpData::Data ROPumpData;