#pragma once #include #include "logger.h" namespace N_LogView { class LogViewXdrElement { public: enum E_ElementKind { e_KindStandardType, e_KindTypedef, e_KindStruct, e_KindStructElement, e_KindEnum, e_KindEnumElement, e_KindDefine }; virtual ~LogViewXdrElement() = default; protected: LogViewXdrElement(const QString& a_name, const E_ElementKind a_kind, const char *loggerName); public: const QString& getName() const { return m_Name; } LogViewXdrElement::E_ElementKind getKind() const { return m_Kind; } virtual void dump() const; protected: QString m_Name; E_ElementKind m_Kind; QString getKindName() const; NGL::INGLLogger &m_logger; }; }