Initial commit
This commit is contained in:
commit
b7d90b9afe
16245 files changed
+3396666
No files matched your search
@@ -0,0 +1,111 @@
|
||||
// **************************************************************************
|
||||
//
|
||||
// (C) Copyright 2009 Swiss SIMTEC AG
|
||||
//
|
||||
// **************************************************************************
|
||||
//
|
||||
// $HeadURL$
|
||||
// $LastChangedBy$
|
||||
// $LastChangedDate$
|
||||
// $LastChangedRevision$
|
||||
//
|
||||
// **************************************************************************
|
||||
|
||||
#pragma once
|
||||
|
||||
#include "LogViewXdrElement.hpp"
|
||||
|
||||
namespace N_LogView
|
||||
{
|
||||
/**
|
||||
* This class represents XDR-elements which have a type and an arraySize. This are
|
||||
* typedefs and struct-elements.
|
||||
* The arraySize has following possibilities:
|
||||
* 0 => opaque
|
||||
* 1 => scalar
|
||||
* >1 => array
|
||||
*
|
||||
* @author alois.wismer
|
||||
* @version 1.0
|
||||
* @created 16-Feb-2010 15:48:24
|
||||
*/
|
||||
class LogViewXdrType final : public LogViewXdrElement
|
||||
{
|
||||
public:
|
||||
|
||||
/**
|
||||
*
|
||||
* @param a_name
|
||||
* @param a_type
|
||||
* @param a_arraySize
|
||||
* @param a_dynArrayOffset
|
||||
* @param a_kind
|
||||
*/
|
||||
LogViewXdrType(const QString& a_name, const QString& a_type, const uint16_t a_arraySize, const uint16_t a_dynArrayOffset, const E_ElementKind a_kind);
|
||||
|
||||
/**
|
||||
*
|
||||
* @param a_name
|
||||
* @param a_type
|
||||
* @param a_arraySize
|
||||
* @param a_dynArrayOffset
|
||||
* @param a_kind
|
||||
* @param a_firstBit
|
||||
* @param a_lastBit
|
||||
* @param a_isLast
|
||||
*/
|
||||
LogViewXdrType(const QString& a_name, const QString& a_type, const uint16_t a_arraySize, const uint16_t a_dynArrayOffset, const E_ElementKind a_kind, const int16_t a_firstBit, const int16_t a_lastBit, const bool a_isLast);
|
||||
|
||||
|
||||
void dump() const override;
|
||||
|
||||
|
||||
const QString& getType() const;
|
||||
|
||||
/**
|
||||
* 0 => opaque
|
||||
* 1 => normal (scalar) element
|
||||
* >1 => array
|
||||
*/
|
||||
uint16_t getArraySize() const;
|
||||
|
||||
/**
|
||||
*
|
||||
* @param a_value
|
||||
* @param a_size
|
||||
* @param a_tooltip
|
||||
*/
|
||||
bool maskValue(uint32_t& a_value, const uint16_t a_size, QString& a_tooltip) const;
|
||||
|
||||
|
||||
uint16_t getMaxArraySize() const;
|
||||
|
||||
protected:
|
||||
|
||||
QString m_Type;
|
||||
/**
|
||||
* 0 => opaque
|
||||
* 1 => normal (scalar) element
|
||||
* >1 => array
|
||||
*/
|
||||
uint16_t m_ArraySize;
|
||||
/**
|
||||
* The maximum size of the array. Interesting for dynamic arrays.
|
||||
*/
|
||||
uint16_t m_MaxArraySize;
|
||||
/**
|
||||
* The first relevant bit, if we have bitfield-enum
|
||||
*/
|
||||
int16_t m_FirstBit;
|
||||
/**
|
||||
* The last relevant bit, if we have bitfield-enum
|
||||
*/
|
||||
int16_t m_LastBit;
|
||||
/**
|
||||
* used to step to next values when reading out content-data of bit-fields
|
||||
*/
|
||||
bool m_IsLast;
|
||||
};
|
||||
|
||||
}
|
||||
|
||||
Reference in new issue
Block a user