/*! * * 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 MTreatmentLogAlarmDataData.h * \author (last) Behrouz NematiPour * \date (last) 15-May-2021 * \author (original) Behrouz NematiPour * \date (original) 15-May-2021 * */ #pragma once // Qt #include // Project #include "MAbstract.h" #include "types.h" // forward declarations class tst_models; namespace Model { /*! * \brief The MTreatmentLogAlarmData class * \details The post treatment states data model * These are states of the post treatment. * * | MSG | CAN ID | Type | Ack | Src | Dst | Description | * |:----:|:------:|:------:|:---:|:---:|:---:|:-----------:| * |0x9400| 0x020 | Event | Y | HD | UI | Treatment Log Alarm Data | * * | Payload || * | || * | #1:(U32) | \ref Data::mTimeStamp | * | #2:(U32) | \ref Data::mAlarmID | * | #3:(U32) | \ref Data::mParam1 | * * \sa Data * \sa HD_Post_Treatment_Mode_States * *

Logging info

* | || * | || * | typeText | Datum | * | unitText | HD | * | infoText | TreatmentLogAlarm | * */ class MTreatmentLogAlarmData : public MAbstract { // friends friend class ::tst_models; QVariantList parameters() const override; struct { Types::U32 mTimeStamp ; ///< TimeStamp in epoch Types::U32 mAlarmID ; ///< Alarm ID Types::U32 mParam1 ; ///< Alarm Parameter 1 // may need more than 1 parameter but defined one so it would be easier to add more later. } _data; public: Type_Enum typeText () const override { return Type_Enum::eDatum ; } Unit_Enum unitText () const override { return Unit_Enum::eHD ; } QString infoText () const override { return QString("TreatmentLogAlarm") ; } struct Data { quint32 mTimeStamp ; ///< TimeStamp in epoch quint32 mAlarmID ; ///< Alarm ID quint32 mParam1 ; ///< Alarm Parameter 1 }; MTreatmentLogAlarmData() { } bool fromByteArray (const QByteArray &vByteArray , int *vIndex = nullptr) override; Data data ( ) const ; }; } typedef Model::MTreatmentLogAlarmData::Data TreatmentLogAlarmData;