#pragma once #include "LogViewXdrElement.hpp" namespace N_LogView { class LogViewXdrStandardType final : public LogViewXdrElement { public: enum E_ValueKind { e_Unsigned, e_Signed, e_Float, e_Character, e_Boolean, e_Data }; enum E_ByteOrder { e_ByteOrderBigEndian, e_ByteOrderLittleEndian }; enum E_DynArraySizeMethod { e_DynArrayMsgLength, e_DynArrayIndex, e_DynArrayIndexDiv8 }; LogViewXdrStandardType(const QString &a_name, const int a_valueSize, const int a_editSize, const E_ValueKind a_valueKind, const E_DynArraySizeMethod a_dynArraySizeMethod, E_ByteOrder a_byteOrder); uint16_t getValueSize() const; LogViewXdrStandardType::E_ValueKind getValueKind() const; void dump() const override; LogViewXdrStandardType::E_DynArraySizeMethod getDynArraySizeMethod() const; LogViewXdrStandardType::E_ByteOrder getByteOrder() const; uint16_t getEditSize() const; protected: int m_ValueSize; int m_EditSize; E_ValueKind m_ValueKind; E_ByteOrder m_ByteOrder; E_DynArraySizeMethod m_DynArraySizeMethod; }; }