#pragma once
// Project
#include "MAbstract.h"
#include "types.h"
namespace Model {
/*!
* \brief The MTreatmentHDFData class
* \details The HDF Data model
*
* | MSG | CAN ID | M.Box | Type | Ack | Src | Dest | Description |
* |:----:|:------:|:-----:|:----:|:---:|:---:|:----:|:---------------------:|
* |0xBC00| 0x100 | 7 | 1 Hz | N | TD | All | HDF Data |
*
* | Payload ||
* | ||
* | #1:(U32) | \ref Data::mHDFState |
* | #2:(U32) | \ref Data::mAutoSubState |
* | #3:(F32) | \ref Data::mRequestedRate |
* | #4:(F32) | \ref Data::mTargetTMP |
* | #5:(F32) | \ref Data::mCurrentRate |
* | #6:(F32) | \ref Data::mCurrentTMP |
* | #7:(F32) | \ref Data::mRequestedVolume |
* | #8:(F32) | \ref Data::mTotalVolume |
* | #9:(U32) | \ref Data::mIsHDFRequested |
*
* \sa Data
*
*
* | ||
* | ||
* | typeText | Event |
* | unitText | TD |
* | infoText | HDF |
*
*/
class MTreatmentHDF : public MAbstract {
QVariantList parameters() const override;
struct {
Types::U32 mHDFState ;
Types::U32 mAutoSubState ;
Types::F32 mRequestedRate ;
Types::F32 mTargetTMP ;
Types::F32 mCurrentRate ;
Types::F32 mCurrentTMP ;
Types::F32 mRequestedVolume ;
Types::F32 mTotalVolume ;
Types::U32 mIsHDFRequested ;
} _data;
public:
Type_Enum typeText () const override { return Type_Enum::eEvent ; }
Unit_Enum unitText () const override { return Unit_Enum::eTD ; }
QString infoText () const override { return QString("HDF") ; }
struct Data {
quint32 mHDFState = 0;
quint32 mAutoSubState = 0;
float mRequestedRate = 0;
float mTargetTMP = 0;
float mCurrentRate = 0;
float mCurrentTMP = 0;
float mRequestedVolume = 0;
float mTotalVolume = 0;
quint32 mIsHDFRequested = 0;
};
MTreatmentHDF () {}
bool fromByteArray (const QByteArray &vByteArray , int *vIndex = nullptr) override;
Data data ( ) const ;
};
}
typedef Model::MTreatmentHDF::Data TreatmentHDFData;