\hypertarget{a01830}{}\doxysection{AAX\+\_\+\+CChunk\+Data\+Parser Class Reference}
\label{a01830}\index{AAX\_CChunkDataParser@{AAX\_CChunkDataParser}}


{\ttfamily \#include $<$AAX\+\_\+\+CChunk\+Data\+Parser.\+h$>$}



Collaboration diagram for AAX\+\_\+\+CChunk\+Data\+Parser\+:
% FIG 0


\doxysubsection{Description}
Parser utility for plugin chunks. 

\begin{DoxyRefDesc}{Todo}
\item[\mbox{\hyperlink{a00878__todo000012}{Todo}}]Update this documentation for \mbox{\hyperlink{a00948}{AAX}}\end{DoxyRefDesc}


This class acts as generic repository for data that is stuffed into or extracted from a SFic\+Plug\+In\+Chunk. It has an abstracted Add/\+Find interface to add or retrieve data values, each uniquely referenced by a c-\/string. In conjuction with the Effect Layer and the \char`\"{}\+Control\+Manager\char`\"{} aspects of the CProcess class, this provides a more transparent \& resilent system for performing save-\/and-\/restore on settings that won\textquotesingle{}t break so easily from endian issues or from the hard-\/coded structs that have typically been used to build chunk data.

\begin{DoxyParagraph}{Format of the Chunk Data}
The first 4 bytes of the data are the version number (repeated 4 times to be immune to byte swapping). Data follows next.~\newline
 ~\newline
Example\+: \char`\"{}f\+\_\+bypa \%\$\#@d\+\_\+gain \#\$!\#@\$\%\$s\+\_\+omsi \#\$\char`\"{} 
\begin{DoxyCode}{0}
\DoxyCodeLine{type\ \ \ \ name\ \ \ \ value\ \ \ }
\DoxyCodeLine{-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/-\/}
\DoxyCodeLine{\textcolor{keywordtype}{float}\ \ \ bypa\ \ \ \ \%\$\#@\ \ \ \ }
\DoxyCodeLine{\textcolor{keywordtype}{double}\ \ gain\ \ \ \ \#\$!\#@\$\%\$}
\DoxyCodeLine{int16\_t\ omsi\ \ \ \ \#\$}

\end{DoxyCode}
 ~\newline
\begin{DoxyItemize}
\item The first character denotes the data type\+: 
\begin{DoxyCode}{0}
\DoxyCodeLine{\textcolor{charliteral}{'f'}\ =\ \textcolor{keywordtype}{float}}
\DoxyCodeLine{\textcolor{charliteral}{'d'}\ =\ \textcolor{keywordtype}{double}}
\DoxyCodeLine{\textcolor{charliteral}{'l'}\ =\ int32}
\DoxyCodeLine{\textcolor{charliteral}{'s'}\ =\ int16}

\end{DoxyCode}
 ~\newline
\item \char`\"{}\+\_\+\char`\"{} is an empty placekeeper that could be used to addition future information. Currently, it\textquotesingle{}s ignored when a chunk is parsed.\end{DoxyItemize}
\begin{DoxyItemize}
\item The string name identifier follows next, and can up to 255 characters int32\+\_\+t. The Effect Layer builds chunks it always converts the AAX\+\_\+\+Four\+Char\+Code of the control to a string. So, this will always be 4 characters int32\+\_\+t. The string is null terminated to indicate the start of the data value.\end{DoxyItemize}
\begin{DoxyItemize}
\item The data value follows next, but is possible shifted to aligned word aligned. The size of is determined, of course, by the data type. \end{DoxyItemize}

\end{DoxyParagraph}
\doxysubsection*{Classes}
\begin{DoxyCompactItemize}
\item 
struct \mbox{\hyperlink{a01834}{Data\+Value}}
\end{DoxyCompactItemize}
\doxysubsection*{Public Member Functions}
\begin{DoxyCompactItemize}
\item 
\mbox{\hyperlink{a01830_acf61d78b965c04e6af597379edad5a39}{AAX\+\_\+\+CChunk\+Data\+Parser}} ()
\item 
virtual \mbox{\hyperlink{a01830_a4a31f21eaad9742482051f05f08fb72b}{$\sim$\+AAX\+\_\+\+CChunk\+Data\+Parser}} ()
\item 
void \mbox{\hyperlink{a01830_aa85606ec7ad6e142abceb1097dcd2480}{Add\+Float}} (const char $\ast$name, float value)
\begin{DoxyCompactList}\small\item\em CALL\+: Adds some data of type float with {\itshape name} and {\itshape value} to the current chunk. \end{DoxyCompactList}\item 
void \mbox{\hyperlink{a01830_a3dc9ec20551559ac3bdae8bf981ace8a}{Add\+Double}} (const char $\ast$name, double value)
\begin{DoxyCompactList}\small\item\em CALL\+: See \mbox{\hyperlink{a01830_aa85606ec7ad6e142abceb1097dcd2480}{Add\+Float()}} \end{DoxyCompactList}\item 
void \mbox{\hyperlink{a01830_a6000b5c93362f3fe35d59d197f340306}{Add\+Int32}} (const char $\ast$name, int32\+\_\+t value)
\begin{DoxyCompactList}\small\item\em CALL\+: See \mbox{\hyperlink{a01830_aa85606ec7ad6e142abceb1097dcd2480}{Add\+Float()}} \end{DoxyCompactList}\item 
void \mbox{\hyperlink{a01830_a06541319eb6f0628d33518b0485cd8cc}{Add\+Int16}} (const char $\ast$name, int16\+\_\+t value)
\begin{DoxyCompactList}\small\item\em CALL\+: See \mbox{\hyperlink{a01830_aa85606ec7ad6e142abceb1097dcd2480}{Add\+Float()}} \end{DoxyCompactList}\item 
void \mbox{\hyperlink{a01830_a8a06f076c8e1c93df9348857abf50e39}{Add\+String}} (const char $\ast$name, \mbox{\hyperlink{a01946}{AAX\+\_\+\+CString}} value)
\item 
bool \mbox{\hyperlink{a01830_a0651792f378318532e5be3799b108e58}{Find\+Float}} (const char $\ast$name, float $\ast$value)
\begin{DoxyCompactList}\small\item\em CALL\+: Finds some data of type float with {\itshape name} and {\itshape value} in the current chunk. \end{DoxyCompactList}\item 
bool \mbox{\hyperlink{a01830_ac853da85bf797172a8bc3db5bcf98e66}{Find\+Double}} (const char $\ast$name, double $\ast$value)
\begin{DoxyCompactList}\small\item\em CALL\+: See \mbox{\hyperlink{a01830_a0651792f378318532e5be3799b108e58}{Find\+Float()}} \end{DoxyCompactList}\item 
bool \mbox{\hyperlink{a01830_ad6bbac0856350d4d1734cb7de594149a}{Find\+Int32}} (const char $\ast$name, int32\+\_\+t $\ast$value)
\begin{DoxyCompactList}\small\item\em CALL\+: See \mbox{\hyperlink{a01830_a0651792f378318532e5be3799b108e58}{Find\+Float()}} \end{DoxyCompactList}\item 
bool \mbox{\hyperlink{a01830_aaa004cdaafabb16caf7c0bad7e71db8f}{Find\+Int16}} (const char $\ast$name, int16\+\_\+t $\ast$value)
\begin{DoxyCompactList}\small\item\em CALL\+: See \mbox{\hyperlink{a01830_a0651792f378318532e5be3799b108e58}{Find\+Float()}} \end{DoxyCompactList}\item 
bool \mbox{\hyperlink{a01830_a4272b40bb46bb54c0083d7313b3d73f7}{Find\+String}} (const char $\ast$name, \mbox{\hyperlink{a01946}{AAX\+\_\+\+CString}} $\ast$value)
\item 
bool \mbox{\hyperlink{a01830_af394b04f20c198396c4a4090bdeff06c}{Replace\+Double}} (const char $\ast$name, double value)
\item 
int32\+\_\+t \mbox{\hyperlink{a01830_a7cc4e0325d71d6957cdd10c1eaf5d8bc}{Get\+Chunk\+Data}} (\mbox{\hyperlink{a01782}{AAX\+\_\+\+SPlug\+In\+Chunk}} $\ast$chunk)
\begin{DoxyCompactList}\small\item\em CALL\+: Fills passed in {\itshape chunk} with data from current chunk; returns 0 if successful. \end{DoxyCompactList}\item 
int32\+\_\+t \mbox{\hyperlink{a01830_ac113458fcdec81f316014ea4c3d73582}{Get\+Chunk\+Data\+Size}} ()
\begin{DoxyCompactList}\small\item\em CALL\+: Returns size of current chunk. \end{DoxyCompactList}\item 
int32\+\_\+t \mbox{\hyperlink{a01830_a8203d58398537e3d254b43f9d321af4c}{Get\+Chunk\+Version}} ()
\begin{DoxyCompactList}\small\item\em CALL\+: Lists f\+Version in chunk header for convenience. \end{DoxyCompactList}\item 
bool \mbox{\hyperlink{a01830_a88ab0773d25dad48ab6c693662243f47}{Is\+Empty}} ()
\begin{DoxyCompactList}\small\item\em CALL\+: Returns true if no data is in the chunk. \end{DoxyCompactList}\item 
void \mbox{\hyperlink{a01830_a5718452d41c2292ba338b23ffc6cf29b}{Clear}} ()
\begin{DoxyCompactList}\small\item\em Resets chunk. \end{DoxyCompactList}\end{DoxyCompactItemize}
\doxysubsection*{Internal Methods}
An Effect Layer plugin can ignore these methods. They are handled by or used internally by the Effect Layer. \begin{DoxyCompactItemize}
\item 
int32\+\_\+t \mbox{\hyperlink{a01830_a3e08508e7f92c6e43dd2de6a38868e2f}{m\+Last\+Found\+Index}}
\begin{DoxyCompactList}\small\item\em The last index found in the chunk. \end{DoxyCompactList}\item 
char $\ast$ \mbox{\hyperlink{a01830_a67054cdc2d8e55ff2c26947930784bc9}{m\+Chunk\+Data}}
\item 
int32\+\_\+t \mbox{\hyperlink{a01830_a5994e0adfb0189cbf5f9a3aa915b3f7d}{m\+Chunk\+Version}}
\begin{DoxyCompactList}\small\item\em Equal to f\+Version from the chunk header. Equal to -\/1 if no chunk is loaded. \end{DoxyCompactList}\item 
std\+::vector$<$ \mbox{\hyperlink{a01834}{Data\+Value}} $>$ \mbox{\hyperlink{a01830_af3963982859b42ddebdcaeba36dd1d29}{m\+Data\+Values}}
\item 
void \mbox{\hyperlink{a01830_a25fc41a1060445db4d7bee7a2919460d}{Load\+Chunk}} (const \mbox{\hyperlink{a01782}{AAX\+\_\+\+SPlug\+In\+Chunk}} $\ast$chunk)
\begin{DoxyCompactList}\small\item\em Sets current chunk to data in {\itshape chunk} parameter. \end{DoxyCompactList}\item 
void \mbox{\hyperlink{a01830_acaf10308e9758014bff6872b4260a9e1}{Word\+Align}} (uint32\+\_\+t \&index)
\begin{DoxyCompactList}\small\item\em sets {\itshape index} to 4-\/byte boundary \end{DoxyCompactList}\item 
void \mbox{\hyperlink{a01830_a90dc10c7cb3f1a9af70179be70a8d739}{Word\+Align}} (int32\+\_\+t \&index)
\begin{DoxyCompactList}\small\item\em sets {\itshape index} to 4-\/byte boundary \end{DoxyCompactList}\item 
int32\+\_\+t \mbox{\hyperlink{a01830_a66556bfad37d6541cf4d317a48d099c2}{Find\+Name}} (const \mbox{\hyperlink{a01946}{AAX\+\_\+\+CString}} \&Name)
\begin{DoxyCompactList}\small\item\em used by public Find methods \end{DoxyCompactList}\end{DoxyCompactItemize}


\doxysubsection{Constructor \& Destructor Documentation}
\mbox{\Hypertarget{a01830_acf61d78b965c04e6af597379edad5a39}\label{a01830_acf61d78b965c04e6af597379edad5a39}} 
\index{AAX\_CChunkDataParser@{AAX\_CChunkDataParser}!AAX\_CChunkDataParser@{AAX\_CChunkDataParser}}
\index{AAX\_CChunkDataParser@{AAX\_CChunkDataParser}!AAX\_CChunkDataParser@{AAX\_CChunkDataParser}}
\doxysubsubsection{\texorpdfstring{AAX\_CChunkDataParser()}{AAX\_CChunkDataParser()}}
{\footnotesize\ttfamily AAX\+\_\+\+CChunk\+Data\+Parser\+::\+AAX\+\_\+\+CChunk\+Data\+Parser (\begin{DoxyParamCaption}{ }\end{DoxyParamCaption})}

\mbox{\Hypertarget{a01830_a4a31f21eaad9742482051f05f08fb72b}\label{a01830_a4a31f21eaad9742482051f05f08fb72b}} 
\index{AAX\_CChunkDataParser@{AAX\_CChunkDataParser}!````~AAX\_CChunkDataParser@{$\sim$AAX\_CChunkDataParser}}
\index{````~AAX\_CChunkDataParser@{$\sim$AAX\_CChunkDataParser}!AAX\_CChunkDataParser@{AAX\_CChunkDataParser}}
\doxysubsubsection{\texorpdfstring{$\sim$AAX\_CChunkDataParser()}{~AAX\_CChunkDataParser()}}
{\footnotesize\ttfamily virtual AAX\+\_\+\+CChunk\+Data\+Parser\+::$\sim$\+AAX\+\_\+\+CChunk\+Data\+Parser (\begin{DoxyParamCaption}{ }\end{DoxyParamCaption})\hspace{0.3cm}{\ttfamily [virtual]}}



\doxysubsection{Member Function Documentation}
\mbox{\Hypertarget{a01830_aa85606ec7ad6e142abceb1097dcd2480}\label{a01830_aa85606ec7ad6e142abceb1097dcd2480}} 
\index{AAX\_CChunkDataParser@{AAX\_CChunkDataParser}!AddFloat@{AddFloat}}
\index{AddFloat@{AddFloat}!AAX\_CChunkDataParser@{AAX\_CChunkDataParser}}
\doxysubsubsection{\texorpdfstring{AddFloat()}{AddFloat()}}
{\footnotesize\ttfamily void AAX\+\_\+\+CChunk\+Data\+Parser\+::\+Add\+Float (\begin{DoxyParamCaption}\item[{const char $\ast$}]{name,  }\item[{float}]{value }\end{DoxyParamCaption})}



CALL\+: Adds some data of type float with {\itshape name} and {\itshape value} to the current chunk. 

\begin{DoxySeeAlso}{See also}
\mbox{\hyperlink{a01830_a3dc9ec20551559ac3bdae8bf981ace8a}{Add\+Double()}}, \mbox{\hyperlink{a01830_a6000b5c93362f3fe35d59d197f340306}{Add\+Int32()}}, and \mbox{\hyperlink{a01830_a06541319eb6f0628d33518b0485cd8cc}{Add\+Int16()}} are the same but with different data types. 
\end{DoxySeeAlso}
\mbox{\Hypertarget{a01830_a3dc9ec20551559ac3bdae8bf981ace8a}\label{a01830_a3dc9ec20551559ac3bdae8bf981ace8a}} 
\index{AAX\_CChunkDataParser@{AAX\_CChunkDataParser}!AddDouble@{AddDouble}}
\index{AddDouble@{AddDouble}!AAX\_CChunkDataParser@{AAX\_CChunkDataParser}}
\doxysubsubsection{\texorpdfstring{AddDouble()}{AddDouble()}}
{\footnotesize\ttfamily void AAX\+\_\+\+CChunk\+Data\+Parser\+::\+Add\+Double (\begin{DoxyParamCaption}\item[{const char $\ast$}]{name,  }\item[{double}]{value }\end{DoxyParamCaption})}



CALL\+: See \mbox{\hyperlink{a01830_aa85606ec7ad6e142abceb1097dcd2480}{Add\+Float()}} 

\mbox{\Hypertarget{a01830_a6000b5c93362f3fe35d59d197f340306}\label{a01830_a6000b5c93362f3fe35d59d197f340306}} 
\index{AAX\_CChunkDataParser@{AAX\_CChunkDataParser}!AddInt32@{AddInt32}}
\index{AddInt32@{AddInt32}!AAX\_CChunkDataParser@{AAX\_CChunkDataParser}}
\doxysubsubsection{\texorpdfstring{AddInt32()}{AddInt32()}}
{\footnotesize\ttfamily void AAX\+\_\+\+CChunk\+Data\+Parser\+::\+Add\+Int32 (\begin{DoxyParamCaption}\item[{const char $\ast$}]{name,  }\item[{int32\+\_\+t}]{value }\end{DoxyParamCaption})}



CALL\+: See \mbox{\hyperlink{a01830_aa85606ec7ad6e142abceb1097dcd2480}{Add\+Float()}} 

\mbox{\Hypertarget{a01830_a06541319eb6f0628d33518b0485cd8cc}\label{a01830_a06541319eb6f0628d33518b0485cd8cc}} 
\index{AAX\_CChunkDataParser@{AAX\_CChunkDataParser}!AddInt16@{AddInt16}}
\index{AddInt16@{AddInt16}!AAX\_CChunkDataParser@{AAX\_CChunkDataParser}}
\doxysubsubsection{\texorpdfstring{AddInt16()}{AddInt16()}}
{\footnotesize\ttfamily void AAX\+\_\+\+CChunk\+Data\+Parser\+::\+Add\+Int16 (\begin{DoxyParamCaption}\item[{const char $\ast$}]{name,  }\item[{int16\+\_\+t}]{value }\end{DoxyParamCaption})}



CALL\+: See \mbox{\hyperlink{a01830_aa85606ec7ad6e142abceb1097dcd2480}{Add\+Float()}} 

\mbox{\Hypertarget{a01830_a8a06f076c8e1c93df9348857abf50e39}\label{a01830_a8a06f076c8e1c93df9348857abf50e39}} 
\index{AAX\_CChunkDataParser@{AAX\_CChunkDataParser}!AddString@{AddString}}
\index{AddString@{AddString}!AAX\_CChunkDataParser@{AAX\_CChunkDataParser}}
\doxysubsubsection{\texorpdfstring{AddString()}{AddString()}}
{\footnotesize\ttfamily void AAX\+\_\+\+CChunk\+Data\+Parser\+::\+Add\+String (\begin{DoxyParamCaption}\item[{const char $\ast$}]{name,  }\item[{\mbox{\hyperlink{a01946}{AAX\+\_\+\+CString}}}]{value }\end{DoxyParamCaption})}

\mbox{\Hypertarget{a01830_a0651792f378318532e5be3799b108e58}\label{a01830_a0651792f378318532e5be3799b108e58}} 
\index{AAX\_CChunkDataParser@{AAX\_CChunkDataParser}!FindFloat@{FindFloat}}
\index{FindFloat@{FindFloat}!AAX\_CChunkDataParser@{AAX\_CChunkDataParser}}
\doxysubsubsection{\texorpdfstring{FindFloat()}{FindFloat()}}
{\footnotesize\ttfamily bool AAX\+\_\+\+CChunk\+Data\+Parser\+::\+Find\+Float (\begin{DoxyParamCaption}\item[{const char $\ast$}]{name,  }\item[{float $\ast$}]{value }\end{DoxyParamCaption})}



CALL\+: Finds some data of type float with {\itshape name} and {\itshape value} in the current chunk. 

\begin{DoxySeeAlso}{See also}
\mbox{\hyperlink{a01830_ac853da85bf797172a8bc3db5bcf98e66}{Find\+Double()}}, \mbox{\hyperlink{a01830_ad6bbac0856350d4d1734cb7de594149a}{Find\+Int32()}}, and \mbox{\hyperlink{a01830_aaa004cdaafabb16caf7c0bad7e71db8f}{Find\+Int16()}} are the same but with different data types. 
\end{DoxySeeAlso}
\mbox{\Hypertarget{a01830_ac853da85bf797172a8bc3db5bcf98e66}\label{a01830_ac853da85bf797172a8bc3db5bcf98e66}} 
\index{AAX\_CChunkDataParser@{AAX\_CChunkDataParser}!FindDouble@{FindDouble}}
\index{FindDouble@{FindDouble}!AAX\_CChunkDataParser@{AAX\_CChunkDataParser}}
\doxysubsubsection{\texorpdfstring{FindDouble()}{FindDouble()}}
{\footnotesize\ttfamily bool AAX\+\_\+\+CChunk\+Data\+Parser\+::\+Find\+Double (\begin{DoxyParamCaption}\item[{const char $\ast$}]{name,  }\item[{double $\ast$}]{value }\end{DoxyParamCaption})}



CALL\+: See \mbox{\hyperlink{a01830_a0651792f378318532e5be3799b108e58}{Find\+Float()}} 

\mbox{\Hypertarget{a01830_ad6bbac0856350d4d1734cb7de594149a}\label{a01830_ad6bbac0856350d4d1734cb7de594149a}} 
\index{AAX\_CChunkDataParser@{AAX\_CChunkDataParser}!FindInt32@{FindInt32}}
\index{FindInt32@{FindInt32}!AAX\_CChunkDataParser@{AAX\_CChunkDataParser}}
\doxysubsubsection{\texorpdfstring{FindInt32()}{FindInt32()}}
{\footnotesize\ttfamily bool AAX\+\_\+\+CChunk\+Data\+Parser\+::\+Find\+Int32 (\begin{DoxyParamCaption}\item[{const char $\ast$}]{name,  }\item[{int32\+\_\+t $\ast$}]{value }\end{DoxyParamCaption})}



CALL\+: See \mbox{\hyperlink{a01830_a0651792f378318532e5be3799b108e58}{Find\+Float()}} 

\mbox{\Hypertarget{a01830_aaa004cdaafabb16caf7c0bad7e71db8f}\label{a01830_aaa004cdaafabb16caf7c0bad7e71db8f}} 
\index{AAX\_CChunkDataParser@{AAX\_CChunkDataParser}!FindInt16@{FindInt16}}
\index{FindInt16@{FindInt16}!AAX\_CChunkDataParser@{AAX\_CChunkDataParser}}
\doxysubsubsection{\texorpdfstring{FindInt16()}{FindInt16()}}
{\footnotesize\ttfamily bool AAX\+\_\+\+CChunk\+Data\+Parser\+::\+Find\+Int16 (\begin{DoxyParamCaption}\item[{const char $\ast$}]{name,  }\item[{int16\+\_\+t $\ast$}]{value }\end{DoxyParamCaption})}



CALL\+: See \mbox{\hyperlink{a01830_a0651792f378318532e5be3799b108e58}{Find\+Float()}} 

\mbox{\Hypertarget{a01830_a4272b40bb46bb54c0083d7313b3d73f7}\label{a01830_a4272b40bb46bb54c0083d7313b3d73f7}} 
\index{AAX\_CChunkDataParser@{AAX\_CChunkDataParser}!FindString@{FindString}}
\index{FindString@{FindString}!AAX\_CChunkDataParser@{AAX\_CChunkDataParser}}
\doxysubsubsection{\texorpdfstring{FindString()}{FindString()}}
{\footnotesize\ttfamily bool AAX\+\_\+\+CChunk\+Data\+Parser\+::\+Find\+String (\begin{DoxyParamCaption}\item[{const char $\ast$}]{name,  }\item[{\mbox{\hyperlink{a01946}{AAX\+\_\+\+CString}} $\ast$}]{value }\end{DoxyParamCaption})}

\mbox{\Hypertarget{a01830_af394b04f20c198396c4a4090bdeff06c}\label{a01830_af394b04f20c198396c4a4090bdeff06c}} 
\index{AAX\_CChunkDataParser@{AAX\_CChunkDataParser}!ReplaceDouble@{ReplaceDouble}}
\index{ReplaceDouble@{ReplaceDouble}!AAX\_CChunkDataParser@{AAX\_CChunkDataParser}}
\doxysubsubsection{\texorpdfstring{ReplaceDouble()}{ReplaceDouble()}}
{\footnotesize\ttfamily bool AAX\+\_\+\+CChunk\+Data\+Parser\+::\+Replace\+Double (\begin{DoxyParamCaption}\item[{const char $\ast$}]{name,  }\item[{double}]{value }\end{DoxyParamCaption})}

\mbox{\Hypertarget{a01830_a7cc4e0325d71d6957cdd10c1eaf5d8bc}\label{a01830_a7cc4e0325d71d6957cdd10c1eaf5d8bc}} 
\index{AAX\_CChunkDataParser@{AAX\_CChunkDataParser}!GetChunkData@{GetChunkData}}
\index{GetChunkData@{GetChunkData}!AAX\_CChunkDataParser@{AAX\_CChunkDataParser}}
\doxysubsubsection{\texorpdfstring{GetChunkData()}{GetChunkData()}}
{\footnotesize\ttfamily int32\+\_\+t AAX\+\_\+\+CChunk\+Data\+Parser\+::\+Get\+Chunk\+Data (\begin{DoxyParamCaption}\item[{\mbox{\hyperlink{a01782}{AAX\+\_\+\+SPlug\+In\+Chunk}} $\ast$}]{chunk }\end{DoxyParamCaption})}



CALL\+: Fills passed in {\itshape chunk} with data from current chunk; returns 0 if successful. 

\mbox{\Hypertarget{a01830_ac113458fcdec81f316014ea4c3d73582}\label{a01830_ac113458fcdec81f316014ea4c3d73582}} 
\index{AAX\_CChunkDataParser@{AAX\_CChunkDataParser}!GetChunkDataSize@{GetChunkDataSize}}
\index{GetChunkDataSize@{GetChunkDataSize}!AAX\_CChunkDataParser@{AAX\_CChunkDataParser}}
\doxysubsubsection{\texorpdfstring{GetChunkDataSize()}{GetChunkDataSize()}}
{\footnotesize\ttfamily int32\+\_\+t AAX\+\_\+\+CChunk\+Data\+Parser\+::\+Get\+Chunk\+Data\+Size (\begin{DoxyParamCaption}{ }\end{DoxyParamCaption})}



CALL\+: Returns size of current chunk. 

\mbox{\Hypertarget{a01830_a8203d58398537e3d254b43f9d321af4c}\label{a01830_a8203d58398537e3d254b43f9d321af4c}} 
\index{AAX\_CChunkDataParser@{AAX\_CChunkDataParser}!GetChunkVersion@{GetChunkVersion}}
\index{GetChunkVersion@{GetChunkVersion}!AAX\_CChunkDataParser@{AAX\_CChunkDataParser}}
\doxysubsubsection{\texorpdfstring{GetChunkVersion()}{GetChunkVersion()}}
{\footnotesize\ttfamily int32\+\_\+t AAX\+\_\+\+CChunk\+Data\+Parser\+::\+Get\+Chunk\+Version (\begin{DoxyParamCaption}{ }\end{DoxyParamCaption})\hspace{0.3cm}{\ttfamily [inline]}}



CALL\+: Lists f\+Version in chunk header for convenience. 



References \mbox{\hyperlink{a01830_a5994e0adfb0189cbf5f9a3aa915b3f7d}{m\+Chunk\+Version}}.

\mbox{\Hypertarget{a01830_a88ab0773d25dad48ab6c693662243f47}\label{a01830_a88ab0773d25dad48ab6c693662243f47}} 
\index{AAX\_CChunkDataParser@{AAX\_CChunkDataParser}!IsEmpty@{IsEmpty}}
\index{IsEmpty@{IsEmpty}!AAX\_CChunkDataParser@{AAX\_CChunkDataParser}}
\doxysubsubsection{\texorpdfstring{IsEmpty()}{IsEmpty()}}
{\footnotesize\ttfamily bool AAX\+\_\+\+CChunk\+Data\+Parser\+::\+Is\+Empty (\begin{DoxyParamCaption}{ }\end{DoxyParamCaption})}



CALL\+: Returns true if no data is in the chunk. 

\mbox{\Hypertarget{a01830_a5718452d41c2292ba338b23ffc6cf29b}\label{a01830_a5718452d41c2292ba338b23ffc6cf29b}} 
\index{AAX\_CChunkDataParser@{AAX\_CChunkDataParser}!Clear@{Clear}}
\index{Clear@{Clear}!AAX\_CChunkDataParser@{AAX\_CChunkDataParser}}
\doxysubsubsection{\texorpdfstring{Clear()}{Clear()}}
{\footnotesize\ttfamily void AAX\+\_\+\+CChunk\+Data\+Parser\+::\+Clear (\begin{DoxyParamCaption}{ }\end{DoxyParamCaption})}



Resets chunk. 

\mbox{\Hypertarget{a01830_a25fc41a1060445db4d7bee7a2919460d}\label{a01830_a25fc41a1060445db4d7bee7a2919460d}} 
\index{AAX\_CChunkDataParser@{AAX\_CChunkDataParser}!LoadChunk@{LoadChunk}}
\index{LoadChunk@{LoadChunk}!AAX\_CChunkDataParser@{AAX\_CChunkDataParser}}
\doxysubsubsection{\texorpdfstring{LoadChunk()}{LoadChunk()}}
{\footnotesize\ttfamily void AAX\+\_\+\+CChunk\+Data\+Parser\+::\+Load\+Chunk (\begin{DoxyParamCaption}\item[{const \mbox{\hyperlink{a01782}{AAX\+\_\+\+SPlug\+In\+Chunk}} $\ast$}]{chunk }\end{DoxyParamCaption})}



Sets current chunk to data in {\itshape chunk} parameter. 

\mbox{\Hypertarget{a01830_acaf10308e9758014bff6872b4260a9e1}\label{a01830_acaf10308e9758014bff6872b4260a9e1}} 
\index{AAX\_CChunkDataParser@{AAX\_CChunkDataParser}!WordAlign@{WordAlign}}
\index{WordAlign@{WordAlign}!AAX\_CChunkDataParser@{AAX\_CChunkDataParser}}
\doxysubsubsection{\texorpdfstring{WordAlign()}{WordAlign()}\hspace{0.1cm}{\footnotesize\ttfamily [1/2]}}
{\footnotesize\ttfamily void AAX\+\_\+\+CChunk\+Data\+Parser\+::\+Word\+Align (\begin{DoxyParamCaption}\item[{uint32\+\_\+t \&}]{index }\end{DoxyParamCaption})\hspace{0.3cm}{\ttfamily [protected]}}



sets {\itshape index} to 4-\/byte boundary 

\mbox{\Hypertarget{a01830_a90dc10c7cb3f1a9af70179be70a8d739}\label{a01830_a90dc10c7cb3f1a9af70179be70a8d739}} 
\index{AAX\_CChunkDataParser@{AAX\_CChunkDataParser}!WordAlign@{WordAlign}}
\index{WordAlign@{WordAlign}!AAX\_CChunkDataParser@{AAX\_CChunkDataParser}}
\doxysubsubsection{\texorpdfstring{WordAlign()}{WordAlign()}\hspace{0.1cm}{\footnotesize\ttfamily [2/2]}}
{\footnotesize\ttfamily void AAX\+\_\+\+CChunk\+Data\+Parser\+::\+Word\+Align (\begin{DoxyParamCaption}\item[{int32\+\_\+t \&}]{index }\end{DoxyParamCaption})\hspace{0.3cm}{\ttfamily [protected]}}



sets {\itshape index} to 4-\/byte boundary 

\mbox{\Hypertarget{a01830_a66556bfad37d6541cf4d317a48d099c2}\label{a01830_a66556bfad37d6541cf4d317a48d099c2}} 
\index{AAX\_CChunkDataParser@{AAX\_CChunkDataParser}!FindName@{FindName}}
\index{FindName@{FindName}!AAX\_CChunkDataParser@{AAX\_CChunkDataParser}}
\doxysubsubsection{\texorpdfstring{FindName()}{FindName()}}
{\footnotesize\ttfamily int32\+\_\+t AAX\+\_\+\+CChunk\+Data\+Parser\+::\+Find\+Name (\begin{DoxyParamCaption}\item[{const \mbox{\hyperlink{a01946}{AAX\+\_\+\+CString}} \&}]{Name }\end{DoxyParamCaption})\hspace{0.3cm}{\ttfamily [protected]}}



used by public Find methods 



\doxysubsection{Member Data Documentation}
\mbox{\Hypertarget{a01830_a3e08508e7f92c6e43dd2de6a38868e2f}\label{a01830_a3e08508e7f92c6e43dd2de6a38868e2f}} 
\index{AAX\_CChunkDataParser@{AAX\_CChunkDataParser}!mLastFoundIndex@{mLastFoundIndex}}
\index{mLastFoundIndex@{mLastFoundIndex}!AAX\_CChunkDataParser@{AAX\_CChunkDataParser}}
\doxysubsubsection{\texorpdfstring{mLastFoundIndex}{mLastFoundIndex}}
{\footnotesize\ttfamily int32\+\_\+t AAX\+\_\+\+CChunk\+Data\+Parser\+::m\+Last\+Found\+Index\hspace{0.3cm}{\ttfamily [protected]}}



The last index found in the chunk. 

Since control values in chunks should tend to stay in order and in sync with the way they\textquotesingle{}re checked with controls within the plug-\/in, we\textquotesingle{}ll keep track of the value index to speed up searching. \mbox{\Hypertarget{a01830_a67054cdc2d8e55ff2c26947930784bc9}\label{a01830_a67054cdc2d8e55ff2c26947930784bc9}} 
\index{AAX\_CChunkDataParser@{AAX\_CChunkDataParser}!mChunkData@{mChunkData}}
\index{mChunkData@{mChunkData}!AAX\_CChunkDataParser@{AAX\_CChunkDataParser}}
\doxysubsubsection{\texorpdfstring{mChunkData}{mChunkData}}
{\footnotesize\ttfamily char$\ast$ AAX\+\_\+\+CChunk\+Data\+Parser\+::m\+Chunk\+Data\hspace{0.3cm}{\ttfamily [protected]}}

\mbox{\Hypertarget{a01830_a5994e0adfb0189cbf5f9a3aa915b3f7d}\label{a01830_a5994e0adfb0189cbf5f9a3aa915b3f7d}} 
\index{AAX\_CChunkDataParser@{AAX\_CChunkDataParser}!mChunkVersion@{mChunkVersion}}
\index{mChunkVersion@{mChunkVersion}!AAX\_CChunkDataParser@{AAX\_CChunkDataParser}}
\doxysubsubsection{\texorpdfstring{mChunkVersion}{mChunkVersion}}
{\footnotesize\ttfamily int32\+\_\+t AAX\+\_\+\+CChunk\+Data\+Parser\+::m\+Chunk\+Version\hspace{0.3cm}{\ttfamily [protected]}}



Equal to f\+Version from the chunk header. Equal to -\/1 if no chunk is loaded. 



Referenced by \mbox{\hyperlink{a01830_a8203d58398537e3d254b43f9d321af4c}{Get\+Chunk\+Version()}}.

\mbox{\Hypertarget{a01830_af3963982859b42ddebdcaeba36dd1d29}\label{a01830_af3963982859b42ddebdcaeba36dd1d29}} 
\index{AAX\_CChunkDataParser@{AAX\_CChunkDataParser}!mDataValues@{mDataValues}}
\index{mDataValues@{mDataValues}!AAX\_CChunkDataParser@{AAX\_CChunkDataParser}}
\doxysubsubsection{\texorpdfstring{mDataValues}{mDataValues}}
{\footnotesize\ttfamily std\+::vector$<$\mbox{\hyperlink{a01834}{Data\+Value}}$>$ AAX\+\_\+\+CChunk\+Data\+Parser\+::m\+Data\+Values}



The documentation for this class was generated from the following file\+:\begin{DoxyCompactItemize}
\item 
\mbox{\hyperlink{a00527}{AAX\+\_\+\+CChunk\+Data\+Parser.\+h}}\end{DoxyCompactItemize}
