/*! * * 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 MFPValvesStatesData.h * \author (last) Behrouz NematiPour * \date (last) 28-Mar-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 MFPValvesStates class * \details The FP valves states data model * * | MSG | CAN ID | Box | Type | Ack | Src | Dst | Description | * |:----:|:------:|:---:|:------:|:---:|:---:|:---:|:-----------: | * |0x3100| 0x102 | 8 | 2 Hz | N | FP | All | FP Valves States Data | * * | Payload || * | || * | #01:(U16) | \ref Data::mValvesCmdStates | * | #02:(U08) | \ref Data::mValvesSensedState1 | * | #..:(U08) | \ref Data::mValvesSensedState.. | * | #11:(U08) | \ref Data::mValvesSensedState10 | * * * \sa Data * \sa Flag * *

Logging info

* | || * | || * | typeText | Datum | * | unitText | FP | * | infoText | ValvesStates | * */ class MFPValvesStates : public MAbstract { // friends friend class ::tst_models; private: QVariantList parameters() const override; struct { Types::Flags mValvesCmdStates ; // 16 bit Hydrolic Valves Types::U08 mValvesSensedState1 ; Types::U08 mValvesSensedState2 ; Types::U08 mValvesSensedState3 ; Types::U08 mValvesSensedState4 ; Types::U08 mValvesSensedState5 ; Types::U08 mValvesSensedState6 ; Types::U08 mValvesSensedState7 ; Types::U08 mValvesSensedState8 ; Types::U08 mValvesSensedState9 ; Types::U08 mValvesSensedState10 ; } _data; public: Type_Enum typeText () const override { return Type_Enum::eDatum ; } Unit_Enum unitText () const override { return Unit_Enum::eFP ; } QString infoText () const override { return QString("ValvesStates"); } struct Data { QBitArray mValvesCmdStates ; quint8 mValvesSensedState1 = 0 ; quint8 mValvesSensedState2 = 0 ; quint8 mValvesSensedState3 = 0 ; quint8 mValvesSensedState4 = 0 ; quint8 mValvesSensedState5 = 0 ; quint8 mValvesSensedState6 = 0 ; quint8 mValvesSensedState7 = 0 ; quint8 mValvesSensedState8 = 0 ; quint8 mValvesSensedState9 = 0 ; quint8 mValvesSensedState10 = 0 ; }; MFPValvesStates () { } bool fromByteArray (const QByteArray &vByteArray , int *vIndex = nullptr) override; Data data ( ) const ; }; } typedef Model::MFPValvesStates::Data FPValvesStatesData;