\hypertarget{group__type__definitions}{}\section{E\+B\+ML Element Type Definitions}
\label{group__type__definitions}\index{E\+B\+M\+L Element Type Definitions@{E\+B\+M\+L Element Type Definitions}}


Classes that define the structure and properties of E\+B\+ML element types.  


\subsection*{Modules}
\begin{DoxyCompactItemize}
\item 
\mbox{\hyperlink{group__type__templates}{E\+B\+M\+L Element Type Templates}}
\begin{DoxyCompactList}\small\item\em Template implementations of the {\ttfamily \mbox{\hyperlink{classebml_1_1ebmlElementType}{ebml\+::ebml\+Element\+Type}}} abstract base class. \end{DoxyCompactList}\item 
\mbox{\hyperlink{group__type__implementations}{E\+B\+M\+L Element Type Implementation}}
\begin{DoxyCompactList}\small\item\em Concrete implementations of the {\ttfamily \mbox{\hyperlink{classebml_1_1ebmlElementType}{ebml\+::ebml\+Element\+Type}}} abstract base class. This group contains the classes that define the metadata and behavior for specific E\+B\+ML element types, such as signed integers, strings, and master elements. \end{DoxyCompactList}\item 
\mbox{\hyperlink{group__master__element__type__definitions}{Master Element Types}}
\begin{DoxyCompactList}\small\item\em Classes that define the structure and properties of E\+B\+ML master elements. \end{DoxyCompactList}\end{DoxyCompactItemize}
\subsection*{Classes}
\begin{DoxyCompactItemize}
\item 
class \mbox{\hyperlink{classebml_1_1ebmlDataType}{ebml\+::ebml\+Data\+Type$<$ T $>$}}
\begin{DoxyCompactList}\small\item\em Template class for E\+B\+ML data types. \end{DoxyCompactList}\item 
class \mbox{\hyperlink{classebml_1_1ebmlElementType}{ebml\+::ebml\+Element\+Type}}
\begin{DoxyCompactList}\small\item\em Abstract base class for E\+B\+ML Element Type objects. \end{DoxyCompactList}\item 
class \mbox{\hyperlink{classebml_1_1ebmlTypeCRTP}{ebml\+::ebml\+Type\+C\+R\+T\+P$<$ ebmltype\+\_\+t, ebmlinst\+\_\+t, typebase\+\_\+t $>$}}
\begin{DoxyCompactList}\small\item\em C\+R\+TP template for E\+B\+ML Element Type objects. \end{DoxyCompactList}\item 
class \mbox{\hyperlink{classebml_1_1ebmlVoidType}{ebml\+::ebml\+Void\+Type}}
\begin{DoxyCompactList}\small\item\em Represents a void E\+B\+ML element. \end{DoxyCompactList}\item 
class \mbox{\hyperlink{classebml_1_1ebmlMasterElementType}{ebml\+::ebml\+Master\+Element\+Type}}
\begin{DoxyCompactList}\small\item\em Represents the base type for all E\+B\+ML master elements. \end{DoxyCompactList}\item 
class \mbox{\hyperlink{classebml_1_1ebmlListType}{ebml\+::ebml\+List\+Type}}
\begin{DoxyCompactList}\small\item\em Represents a list-\/like E\+B\+ML master element. \end{DoxyCompactList}\item 
class \mbox{\hyperlink{classebml_1_1ebmlMapType}{ebml\+::ebml\+Map\+Type$<$ K, V, H, E, A, B $>$}}
\begin{DoxyCompactList}\small\item\em A template class representing a map-\/like E\+B\+ML element type. \end{DoxyCompactList}\item 
class \mbox{\hyperlink{classebml_1_1ebmlPairType}{ebml\+::ebml\+Pair\+Type$<$ K, V $>$}}
\begin{DoxyCompactList}\small\item\em A template class representing a key-\/value pair. \end{DoxyCompactList}\item 
class \mbox{\hyperlink{classebml_1_1ebmlStructType}{ebml\+::ebml\+Struct\+Type}}
\begin{DoxyCompactList}\small\item\em Represents a structure-\/like E\+B\+ML master element. \end{DoxyCompactList}\item 
class \mbox{\hyperlink{classebml_1_1ebmlLazyLoadType}{ebml\+::ebml\+Lazy\+Load\+Type}}
\begin{DoxyCompactList}\small\item\em A template class representing a lazy-\/loading E\+B\+ML master element. \end{DoxyCompactList}\end{DoxyCompactItemize}


\subsection{Detailed Description}
Classes that define the structure and properties of E\+B\+ML element types. 

These classes act as singletons that provide metadata and factory methods for creating and decoding specific types of E\+B\+ML elements.

\begin{DoxySeeAlso}{See also}
\mbox{\hyperlink{group__inst__definitions}{E\+B\+ML Element Instance Definitions}} 
\end{DoxySeeAlso}
