\hypertarget{classebml_1_1ebmlStructType}{}\section{ebml\+:\+:ebml\+Struct\+Type Class Reference}
\label{classebml_1_1ebmlStructType}\index{ebml\+::ebml\+Struct\+Type@{ebml\+::ebml\+Struct\+Type}}


Represents a structure-\/like E\+B\+ML master element.  




{\ttfamily \#include $<$ebml\+Struct.\+h$>$}

Inheritance diagram for ebml\+:\+:ebml\+Struct\+Type\+:\begin{figure}[H]
\begin{center}
\leavevmode
\includegraphics[height=5.000000cm]{classebml_1_1ebmlStructType}
\end{center}
\end{figure}
\subsection*{Public Member Functions}
\begin{DoxyCompactItemize}
\item 
\mbox{\hyperlink{classebml_1_1ebmlStructType_a20bd8400fea83222faa1504cbca1b983}{ebml\+Struct\+Type}} (const char $\ast$, const std\+::wstring \&, const \mbox{\hyperlink{namespaceebml_abdc1248164e4e424423defac9fff7d4d}{slot\+Spec\+\_\+l}} \&)
\item 
\mbox{\hyperlink{classebml_1_1ebmlStructType_a2ce62466e8c91942f6e958f9c04251d6}{ebml\+Struct\+Type}} (\mbox{\hyperlink{namespaceebml_aecc1461ae359fae057c08a98d5926abf}{ebml\+I\+D\+\_\+t}}, const std\+::wstring \&, const \mbox{\hyperlink{namespaceebml_abdc1248164e4e424423defac9fff7d4d}{slot\+Spec\+\_\+l}} \&)
\item 
\mbox{\hyperlink{classebml_1_1ebmlStructType_a7e15a5eac689b3fd7054c3f59e399c14}{ebml\+Struct\+Type}} (const char $\ast$, const std\+::wstring \&, const \mbox{\hyperlink{namespaceebml_abdc1248164e4e424423defac9fff7d4d}{slot\+Spec\+\_\+l}} \&, const \mbox{\hyperlink{classebml_1_1seekHelper__t}{seek\+Helper\+\_\+t}} $\ast$\mbox{\hyperlink{namespaceebml_a1bcf158c71b543aa54827d0d6fd4ff86}{seek\+Helper}})
\item 
\mbox{\hyperlink{classebml_1_1ebmlStructType_a2d0e16668096549248a61a311c52f143}{ebml\+Struct\+Type}} (\mbox{\hyperlink{namespaceebml_aecc1461ae359fae057c08a98d5926abf}{ebml\+I\+D\+\_\+t}}, const std\+::wstring \&, const \mbox{\hyperlink{namespaceebml_abdc1248164e4e424423defac9fff7d4d}{slot\+Spec\+\_\+l}} \&, const \mbox{\hyperlink{classebml_1_1seekHelper__t}{seek\+Helper\+\_\+t}} $\ast$\mbox{\hyperlink{namespaceebml_a1bcf158c71b543aa54827d0d6fd4ff86}{seek\+Helper}})
\item 
const std\+::vector$<$ \mbox{\hyperlink{classebml_1_1slotSpec__t}{slot\+Spec\+\_\+t}} $>$ \& \mbox{\hyperlink{classebml_1_1ebmlStructType_aa1cc433ba35903944afc1814abd4fb4d}{slot\+Specs}} () const
\item 
const std\+::unordered\+\_\+map$<$ std\+::string, const \mbox{\hyperlink{classebml_1_1slotSpec__t}{slot\+Spec\+\_\+t}} $\ast$ $>$ \& \mbox{\hyperlink{classebml_1_1ebmlStructType_ad5d95333deb5865395f33c11c9bba5e9}{slot\+Specs\+By\+Key}} () const
\item 
const std\+::unordered\+\_\+map$<$ \mbox{\hyperlink{namespaceebml_aecc1461ae359fae057c08a98d5926abf}{ebml\+I\+D\+\_\+t}}, const \mbox{\hyperlink{classebml_1_1slotSpec__t}{slot\+Spec\+\_\+t}} $\ast$ $>$ \& \mbox{\hyperlink{classebml_1_1ebmlStructType_a6bffd0100c414d9d99ee09d20d97c544}{slot\+Specs\+By\+ID}} () const
\item 
const \mbox{\hyperlink{classebml_1_1ebmlElementType}{ebml\+Element\+Type}} $\ast$ \mbox{\hyperlink{classebml_1_1ebmlStructType_a581313acb7fd04917f7b8732b952dc42}{type\+By\+Slot}} (const std\+::string \&) const
\item 
const \mbox{\hyperlink{classebml_1_1ebmlElementType}{ebml\+Element\+Type}} $\ast$ \mbox{\hyperlink{classebml_1_1ebmlStructType_a1071e32d0f3cd0980f6f0ed3add5c403}{type\+By\+Slot}} (size\+\_\+t) const
\end{DoxyCompactItemize}
\subsection*{Friends}
\begin{DoxyCompactItemize}
\item 
class \mbox{\hyperlink{classebml_1_1ebmlStructType_aab5928ffc940df6dc1c340a726beca13}{ebml\+Struct}}
\end{DoxyCompactItemize}
\subsection*{Additional Inherited Members}


\subsection{Detailed Description}
Represents a structure-\/like E\+B\+ML master element. 

This class defines an E\+B\+ML element type that acts as a structure or record, containing a fixed set of named children. It provides a way to enforce a specific schema or structure within the E\+B\+ML document. 

\subsection{Constructor \& Destructor Documentation}
\mbox{\Hypertarget{classebml_1_1ebmlStructType_a20bd8400fea83222faa1504cbca1b983}\label{classebml_1_1ebmlStructType_a20bd8400fea83222faa1504cbca1b983}} 
\index{ebml\+::ebml\+Struct\+Type@{ebml\+::ebml\+Struct\+Type}!ebml\+Struct\+Type@{ebml\+Struct\+Type}}
\index{ebml\+Struct\+Type@{ebml\+Struct\+Type}!ebml\+::ebml\+Struct\+Type@{ebml\+::ebml\+Struct\+Type}}
\subsubsection{\texorpdfstring{ebml\+Struct\+Type()}{ebmlStructType()}\hspace{0.1cm}{\footnotesize\ttfamily [1/4]}}
{\footnotesize\ttfamily ebml\+::ebml\+Struct\+Type\+::ebml\+Struct\+Type (\begin{DoxyParamCaption}\item[{const char $\ast$}]{ebml\+ID,  }\item[{const std\+::wstring \&}]{name,  }\item[{const \mbox{\hyperlink{namespaceebml_abdc1248164e4e424423defac9fff7d4d}{slot\+Spec\+\_\+l}} \&}]{slot\+Specs }\end{DoxyParamCaption})}

\mbox{\Hypertarget{classebml_1_1ebmlStructType_a2ce62466e8c91942f6e958f9c04251d6}\label{classebml_1_1ebmlStructType_a2ce62466e8c91942f6e958f9c04251d6}} 
\index{ebml\+::ebml\+Struct\+Type@{ebml\+::ebml\+Struct\+Type}!ebml\+Struct\+Type@{ebml\+Struct\+Type}}
\index{ebml\+Struct\+Type@{ebml\+Struct\+Type}!ebml\+::ebml\+Struct\+Type@{ebml\+::ebml\+Struct\+Type}}
\subsubsection{\texorpdfstring{ebml\+Struct\+Type()}{ebmlStructType()}\hspace{0.1cm}{\footnotesize\ttfamily [2/4]}}
{\footnotesize\ttfamily ebml\+::ebml\+Struct\+Type\+::ebml\+Struct\+Type (\begin{DoxyParamCaption}\item[{\mbox{\hyperlink{namespaceebml_aecc1461ae359fae057c08a98d5926abf}{ebml\+I\+D\+\_\+t}}}]{ebml\+ID,  }\item[{const std\+::wstring \&}]{name,  }\item[{const \mbox{\hyperlink{namespaceebml_abdc1248164e4e424423defac9fff7d4d}{slot\+Spec\+\_\+l}} \&}]{slot\+Specs }\end{DoxyParamCaption})}

\mbox{\Hypertarget{classebml_1_1ebmlStructType_a7e15a5eac689b3fd7054c3f59e399c14}\label{classebml_1_1ebmlStructType_a7e15a5eac689b3fd7054c3f59e399c14}} 
\index{ebml\+::ebml\+Struct\+Type@{ebml\+::ebml\+Struct\+Type}!ebml\+Struct\+Type@{ebml\+Struct\+Type}}
\index{ebml\+Struct\+Type@{ebml\+Struct\+Type}!ebml\+::ebml\+Struct\+Type@{ebml\+::ebml\+Struct\+Type}}
\subsubsection{\texorpdfstring{ebml\+Struct\+Type()}{ebmlStructType()}\hspace{0.1cm}{\footnotesize\ttfamily [3/4]}}
{\footnotesize\ttfamily ebml\+::ebml\+Struct\+Type\+::ebml\+Struct\+Type (\begin{DoxyParamCaption}\item[{const char $\ast$}]{ebml\+ID,  }\item[{const std\+::wstring \&}]{name,  }\item[{const \mbox{\hyperlink{namespaceebml_abdc1248164e4e424423defac9fff7d4d}{slot\+Spec\+\_\+l}} \&}]{slot\+Specs,  }\item[{const \mbox{\hyperlink{classebml_1_1seekHelper__t}{seek\+Helper\+\_\+t}} $\ast$}]{seek\+Helper }\end{DoxyParamCaption})}

\mbox{\Hypertarget{classebml_1_1ebmlStructType_a2d0e16668096549248a61a311c52f143}\label{classebml_1_1ebmlStructType_a2d0e16668096549248a61a311c52f143}} 
\index{ebml\+::ebml\+Struct\+Type@{ebml\+::ebml\+Struct\+Type}!ebml\+Struct\+Type@{ebml\+Struct\+Type}}
\index{ebml\+Struct\+Type@{ebml\+Struct\+Type}!ebml\+::ebml\+Struct\+Type@{ebml\+::ebml\+Struct\+Type}}
\subsubsection{\texorpdfstring{ebml\+Struct\+Type()}{ebmlStructType()}\hspace{0.1cm}{\footnotesize\ttfamily [4/4]}}
{\footnotesize\ttfamily ebml\+::ebml\+Struct\+Type\+::ebml\+Struct\+Type (\begin{DoxyParamCaption}\item[{\mbox{\hyperlink{namespaceebml_aecc1461ae359fae057c08a98d5926abf}{ebml\+I\+D\+\_\+t}}}]{ebml\+ID,  }\item[{const std\+::wstring \&}]{name,  }\item[{const \mbox{\hyperlink{namespaceebml_abdc1248164e4e424423defac9fff7d4d}{slot\+Spec\+\_\+l}} \&}]{slot\+Specs,  }\item[{const \mbox{\hyperlink{classebml_1_1seekHelper__t}{seek\+Helper\+\_\+t}} $\ast$}]{seek\+Helper }\end{DoxyParamCaption})}



\subsection{Member Function Documentation}
\mbox{\Hypertarget{classebml_1_1ebmlStructType_aa1cc433ba35903944afc1814abd4fb4d}\label{classebml_1_1ebmlStructType_aa1cc433ba35903944afc1814abd4fb4d}} 
\index{ebml\+::ebml\+Struct\+Type@{ebml\+::ebml\+Struct\+Type}!slot\+Specs@{slot\+Specs}}
\index{slot\+Specs@{slot\+Specs}!ebml\+::ebml\+Struct\+Type@{ebml\+::ebml\+Struct\+Type}}
\subsubsection{\texorpdfstring{slot\+Specs()}{slotSpecs()}}
{\footnotesize\ttfamily const std\+::vector$<$ \mbox{\hyperlink{classebml_1_1slotSpec__t}{slot\+Spec\+\_\+t}} $>$ \& ebml\+::ebml\+Struct\+Type\+::slot\+Specs (\begin{DoxyParamCaption}{ }\end{DoxyParamCaption}) const}

\mbox{\Hypertarget{classebml_1_1ebmlStructType_a6bffd0100c414d9d99ee09d20d97c544}\label{classebml_1_1ebmlStructType_a6bffd0100c414d9d99ee09d20d97c544}} 
\index{ebml\+::ebml\+Struct\+Type@{ebml\+::ebml\+Struct\+Type}!slot\+Specs\+By\+ID@{slot\+Specs\+By\+ID}}
\index{slot\+Specs\+By\+ID@{slot\+Specs\+By\+ID}!ebml\+::ebml\+Struct\+Type@{ebml\+::ebml\+Struct\+Type}}
\subsubsection{\texorpdfstring{slot\+Specs\+By\+I\+D()}{slotSpecsByID()}}
{\footnotesize\ttfamily const std\+::unordered\+\_\+map$<$ \mbox{\hyperlink{namespaceebml_aecc1461ae359fae057c08a98d5926abf}{ebml\+I\+D\+\_\+t}}, const \mbox{\hyperlink{classebml_1_1slotSpec__t}{slot\+Spec\+\_\+t}} $\ast$ $>$ \& ebml\+::ebml\+Struct\+Type\+::slot\+Specs\+By\+ID (\begin{DoxyParamCaption}{ }\end{DoxyParamCaption}) const}

\mbox{\Hypertarget{classebml_1_1ebmlStructType_ad5d95333deb5865395f33c11c9bba5e9}\label{classebml_1_1ebmlStructType_ad5d95333deb5865395f33c11c9bba5e9}} 
\index{ebml\+::ebml\+Struct\+Type@{ebml\+::ebml\+Struct\+Type}!slot\+Specs\+By\+Key@{slot\+Specs\+By\+Key}}
\index{slot\+Specs\+By\+Key@{slot\+Specs\+By\+Key}!ebml\+::ebml\+Struct\+Type@{ebml\+::ebml\+Struct\+Type}}
\subsubsection{\texorpdfstring{slot\+Specs\+By\+Key()}{slotSpecsByKey()}}
{\footnotesize\ttfamily const std\+::unordered\+\_\+map$<$ std\+::string, const \mbox{\hyperlink{classebml_1_1slotSpec__t}{slot\+Spec\+\_\+t}} $\ast$ $>$ \& ebml\+::ebml\+Struct\+Type\+::slot\+Specs\+By\+Key (\begin{DoxyParamCaption}{ }\end{DoxyParamCaption}) const}

\mbox{\Hypertarget{classebml_1_1ebmlStructType_a581313acb7fd04917f7b8732b952dc42}\label{classebml_1_1ebmlStructType_a581313acb7fd04917f7b8732b952dc42}} 
\index{ebml\+::ebml\+Struct\+Type@{ebml\+::ebml\+Struct\+Type}!type\+By\+Slot@{type\+By\+Slot}}
\index{type\+By\+Slot@{type\+By\+Slot}!ebml\+::ebml\+Struct\+Type@{ebml\+::ebml\+Struct\+Type}}
\subsubsection{\texorpdfstring{type\+By\+Slot()}{typeBySlot()}\hspace{0.1cm}{\footnotesize\ttfamily [1/2]}}
{\footnotesize\ttfamily const \mbox{\hyperlink{classebml_1_1ebmlElementType}{ebml\+Element\+Type}} $\ast$ ebml\+::ebml\+Struct\+Type\+::type\+By\+Slot (\begin{DoxyParamCaption}\item[{const std\+::string \&}]{key }\end{DoxyParamCaption}) const}

\mbox{\Hypertarget{classebml_1_1ebmlStructType_a1071e32d0f3cd0980f6f0ed3add5c403}\label{classebml_1_1ebmlStructType_a1071e32d0f3cd0980f6f0ed3add5c403}} 
\index{ebml\+::ebml\+Struct\+Type@{ebml\+::ebml\+Struct\+Type}!type\+By\+Slot@{type\+By\+Slot}}
\index{type\+By\+Slot@{type\+By\+Slot}!ebml\+::ebml\+Struct\+Type@{ebml\+::ebml\+Struct\+Type}}
\subsubsection{\texorpdfstring{type\+By\+Slot()}{typeBySlot()}\hspace{0.1cm}{\footnotesize\ttfamily [2/2]}}
{\footnotesize\ttfamily const \mbox{\hyperlink{classebml_1_1ebmlElementType}{ebml\+Element\+Type}} $\ast$ ebml\+::ebml\+Struct\+Type\+::type\+By\+Slot (\begin{DoxyParamCaption}\item[{size\+\_\+t}]{index }\end{DoxyParamCaption}) const}



\subsection{Friends And Related Function Documentation}
\mbox{\Hypertarget{classebml_1_1ebmlStructType_aab5928ffc940df6dc1c340a726beca13}\label{classebml_1_1ebmlStructType_aab5928ffc940df6dc1c340a726beca13}} 
\index{ebml\+::ebml\+Struct\+Type@{ebml\+::ebml\+Struct\+Type}!ebml\+Struct@{ebml\+Struct}}
\index{ebml\+Struct@{ebml\+Struct}!ebml\+::ebml\+Struct\+Type@{ebml\+::ebml\+Struct\+Type}}
\subsubsection{\texorpdfstring{ebml\+Struct}{ebmlStruct}}
{\footnotesize\ttfamily friend class \mbox{\hyperlink{classebml_1_1ebmlStruct}{ebml\+Struct}}\hspace{0.3cm}{\ttfamily [friend]}}



The documentation for this class was generated from the following files\+:\begin{DoxyCompactItemize}
\item 
src/libebml\+\_\+ng/masterelement/\mbox{\hyperlink{ebmlStruct_8h}{ebml\+Struct.\+h}}\item 
src/libebml\+\_\+ng/masterelement/\mbox{\hyperlink{ebmlStruct_8cpp}{ebml\+Struct.\+cpp}}\end{DoxyCompactItemize}
