\hypertarget{a00620_source}{}\doxysection{AAX\+\_\+\+Exception.\+h}
\label{a00620_source}\index{AAX\_Exception.h@{AAX\_Exception.h}}
\mbox{\hyperlink{a00620}{Go to the documentation of this file.}}
\begin{DoxyCode}{0}
\DoxyCodeLine{00001\ \textcolor{comment}{/*================================================================================================*/}}
\DoxyCodeLine{00002\ \textcolor{comment}{/*}}
\DoxyCodeLine{00003\ \textcolor{comment}{\ *\ \ Copyright\ 2016-\/2017,\ 2023-\/2024\ Avid\ Technology,\ Inc.}}
\DoxyCodeLine{00004\ \textcolor{comment}{\ *\ \ All\ rights\ reserved.}}
\DoxyCodeLine{00005\ \textcolor{comment}{\ *\ \ }}
\DoxyCodeLine{00006\ \textcolor{comment}{\ *\ \ This\ file\ is\ part\ of\ the\ Avid\ AAX\ SDK.}}
\DoxyCodeLine{00007\ \textcolor{comment}{\ *\ \ }}
\DoxyCodeLine{00008\ \textcolor{comment}{\ *\ \ The\ AAX\ SDK\ is\ subject\ to\ commercial\ or\ open-\/source\ licensing.}}
\DoxyCodeLine{00009\ \textcolor{comment}{\ *\ \ }}
\DoxyCodeLine{00010\ \textcolor{comment}{\ *\ \ By\ using\ the\ AAX\ SDK,\ you\ agree\ to\ the\ terms\ of\ both\ the\ Avid\ AAX\ SDK\ License}}
\DoxyCodeLine{00011\ \textcolor{comment}{\ *\ \ Agreement\ and\ Avid\ Privacy\ Policy.}}
\DoxyCodeLine{00012\ \textcolor{comment}{\ *\ \ }}
\DoxyCodeLine{00013\ \textcolor{comment}{\ *\ \ AAX\ SDK\ License:\ https://developer.avid.com/aax}}
\DoxyCodeLine{00014\ \textcolor{comment}{\ *\ \ Privacy\ Policy:\ https://www.avid.com/legal/privacy-\/policy-\/statement}}
\DoxyCodeLine{00015\ \textcolor{comment}{\ *\ \ }}
\DoxyCodeLine{00016\ \textcolor{comment}{\ *\ \ Or:\ You\ may\ also\ use\ this\ code\ under\ the\ terms\ of\ the\ GPL\ v3\ (see}}
\DoxyCodeLine{00017\ \textcolor{comment}{\ *\ \ www.gnu.org/licenses).}}
\DoxyCodeLine{00018\ \textcolor{comment}{\ *\ \ }}
\DoxyCodeLine{00019\ \textcolor{comment}{\ *\ \ THE\ AAX\ SDK\ IS\ PROVIDED\ "{}AS\ IS"{}\ WITHOUT\ ANY\ WARRANTY,\ AND\ ALL\ WARRANTIES,\ WHETHER}}
\DoxyCodeLine{00020\ \textcolor{comment}{\ *\ \ EXPRESSED\ OR\ IMPLIED,\ INCLUDING\ MERCHANTABILITY\ AND\ FITNESS\ FOR\ PURPOSE,\ ARE}}
\DoxyCodeLine{00021\ \textcolor{comment}{\ *\ \ DISCLAIMED.}}
\DoxyCodeLine{00022\ \textcolor{comment}{\ */}}
\DoxyCodeLine{00023\ }
\DoxyCodeLine{00029\ \textcolor{comment}{/*================================================================================================*/}}
\DoxyCodeLine{00030\ }
\DoxyCodeLine{00031\ }
\DoxyCodeLine{00032\ \textcolor{preprocessor}{\#ifndef\ AAXLibrary\_AAX\_Exception\_h}}
\DoxyCodeLine{00033\ \textcolor{preprocessor}{\#define\ AAXLibrary\_AAX\_Exception\_h}}
\DoxyCodeLine{00034\ }
\DoxyCodeLine{00035\ \textcolor{preprocessor}{\#include\ "{}\mbox{\hyperlink{a00740}{AAX\_Assert.h}}"{}}}
\DoxyCodeLine{00036\ \textcolor{preprocessor}{\#include\ "{}\mbox{\hyperlink{a00710}{AAX\_StringUtilities.h}}"{}}}
\DoxyCodeLine{00037\ \textcolor{preprocessor}{\#include\ "{}\mbox{\hyperlink{a00542}{AAX.h}}"{}}}
\DoxyCodeLine{00038\ }
\DoxyCodeLine{00039\ \textcolor{preprocessor}{\#include\ <exception>}}
\DoxyCodeLine{00040\ \textcolor{preprocessor}{\#include\ <string>}}
\DoxyCodeLine{00041\ \textcolor{preprocessor}{\#include\ <set>}}
\DoxyCodeLine{00042\ }
\DoxyCodeLine{00043\ }
\DoxyCodeLine{00045\ \textcolor{preprocessor}{\#if\ 0}}
\DoxyCodeLine{00046\ \textcolor{preprocessor}{\#pragma\ mark\ -\/}}
\DoxyCodeLine{00047\ \textcolor{preprocessor}{\#pragma\ mark\ AAX::Exception}}
\DoxyCodeLine{00048\ \textcolor{preprocessor}{\#endif}}
\DoxyCodeLine{00050\ }
\DoxyCodeLine{00051\ \textcolor{keyword}{namespace\ }\mbox{\hyperlink{a00948}{AAX}}}
\DoxyCodeLine{00052\ \{}
\DoxyCodeLine{00053\ \ \ \ \ \textcolor{keyword}{namespace\ }Exception\ \{}
\DoxyCodeLine{00054\ \ \ \ \ \ \ \ \ \textcolor{keyword}{class\ }\mbox{\hyperlink{a01982}{Any}};}
\DoxyCodeLine{00055\ \ \ \ \ \}}
\DoxyCodeLine{00056\ \ \ \ \ }
\DoxyCodeLine{00059\ \ \ \ \ \textcolor{keyword}{inline}\ std::string\ \mbox{\hyperlink{a00948_a8fbde5607de487515bcb55631bc1377d}{AsString}}(\textcolor{keyword}{const}\ \textcolor{keywordtype}{char}*\ inStr);}
\DoxyCodeLine{00060\ \ \ \ \ \textcolor{keyword}{inline}\ \textcolor{keyword}{const}\ std::string\&\ \mbox{\hyperlink{a00948_a8fbde5607de487515bcb55631bc1377d}{AsString}}(\textcolor{keyword}{const}\ std::string\&\ inStr);\ }
\DoxyCodeLine{00061\ \ \ \ \ \textcolor{keyword}{inline}\ \textcolor{keyword}{const}\ std::string\&\ \mbox{\hyperlink{a00948_a8fbde5607de487515bcb55631bc1377d}{AsString}}(\textcolor{keyword}{const}\ \mbox{\hyperlink{a01982}{Exception::Any}}\&\ inStr);\ }
\DoxyCodeLine{00062\ \ \ \ \ }
\DoxyCodeLine{00063\ \ \ \ \ }
\DoxyCodeLine{00071\ \ \ \ \ \textcolor{keyword}{namespace\ }Exception}
\DoxyCodeLine{00072\ \ \ \ \ \{}
\DoxyCodeLine{00086\ \ \ \ \ \ \ \ \ \textcolor{keyword}{class\ }\mbox{\hyperlink{a01982}{Any}}}
\DoxyCodeLine{00087\ \ \ \ \ \ \ \ \ \{}
\DoxyCodeLine{00088\ \ \ \ \ \ \ \ \ \textcolor{keyword}{public}:}
\DoxyCodeLine{00089\ \ \ \ \ \ \ \ \ \ \ \ \ \textcolor{keyword}{virtual}\ \mbox{\hyperlink{a01982_ac8a5ec0e754e887a46d89bc715f21913}{\string~Any}}()\ \{\}}
\DoxyCodeLine{00090\ \ \ \ \ \ \ \ \ \ \ \ \ }
\DoxyCodeLine{00093\ \ \ \ \ \ \ \ \ \ \ \ \ \textcolor{keyword}{template}\ <\textcolor{keyword}{class}\ C>}
\DoxyCodeLine{00094\ \ \ \ \ \ \ \ \ \ \ \ \ \textcolor{keyword}{explicit}\ \mbox{\hyperlink{a01982_a35c51844258ed1c71259e98128fa1b49}{Any}}(\textcolor{keyword}{const}\ C\&\ inWhat)}
\DoxyCodeLine{00095\ \ \ \ \ \ \ \ \ \ \ \ \ :\ mDesc(\mbox{\hyperlink{a00948}{AAX}}::\mbox{\hyperlink{a00948_a8fbde5607de487515bcb55631bc1377d}{AsString}}(inWhat))}
\DoxyCodeLine{00096\ \ \ \ \ \ \ \ \ \ \ \ \ ,\ mFunction()}
\DoxyCodeLine{00097\ \ \ \ \ \ \ \ \ \ \ \ \ ,\ mLine()}
\DoxyCodeLine{00098\ \ \ \ \ \ \ \ \ \ \ \ \ ,\ mWhat(\mbox{\hyperlink{a00948}{AAX}}::Exception::\mbox{\hyperlink{a01982}{Any}}::CreateWhat(mDesc,\ mFunction,\ mLine))}
\DoxyCodeLine{00099\ \ \ \ \ \ \ \ \ \ \ \ \ \{}
\DoxyCodeLine{00100\ \ \ \ \ \ \ \ \ \ \ \ \ \}}
\DoxyCodeLine{00101\ \ \ \ \ \ \ \ \ \ \ \ \ }
\DoxyCodeLine{00104\ \ \ \ \ \ \ \ \ \ \ \ \ \textcolor{keyword}{template}\ <\textcolor{keyword}{class}\ C1,\ \textcolor{keyword}{class}\ C2,\ \textcolor{keyword}{class}\ C3>}
\DoxyCodeLine{00105\ \ \ \ \ \ \ \ \ \ \ \ \ \textcolor{keyword}{explicit}\ \mbox{\hyperlink{a01982_a9578bed0d27f81be2908f93f19034474}{Any}}(\textcolor{keyword}{const}\ C1\&\ inWhat,\ \textcolor{keyword}{const}\ C2\&\ inFunction,\ \textcolor{keyword}{const}\ C3\&\ inLine)}
\DoxyCodeLine{00106\ \ \ \ \ \ \ \ \ \ \ \ \ :\ mDesc(\mbox{\hyperlink{a00948}{AAX}}::\mbox{\hyperlink{a00948_a8fbde5607de487515bcb55631bc1377d}{AsString}}(inWhat))}
\DoxyCodeLine{00107\ \ \ \ \ \ \ \ \ \ \ \ \ ,\ mFunction(\mbox{\hyperlink{a00948}{AAX}}::\mbox{\hyperlink{a00948_a8fbde5607de487515bcb55631bc1377d}{AsString}}(inFunction))}
\DoxyCodeLine{00108\ \ \ \ \ \ \ \ \ \ \ \ \ ,\ mLine(\mbox{\hyperlink{a00948}{AAX}}::\mbox{\hyperlink{a00948_a8fbde5607de487515bcb55631bc1377d}{AsString}}(inLine))}
\DoxyCodeLine{00109\ \ \ \ \ \ \ \ \ \ \ \ \ ,\ mWhat(\mbox{\hyperlink{a00948}{AAX}}::Exception::\mbox{\hyperlink{a01982}{Any}}::CreateWhat(mDesc,\ mFunction,\ mLine))}
\DoxyCodeLine{00110\ \ \ \ \ \ \ \ \ \ \ \ \ \{}
\DoxyCodeLine{00111\ \ \ \ \ \ \ \ \ \ \ \ \ \}}
\DoxyCodeLine{00112\ }
\DoxyCodeLine{00113\ \ \ \ \ \ \ \ \ \ \ \ \ \textcolor{comment}{//\ copy\ constructor}}
\DoxyCodeLine{00114\ \ \ \ \ \ \ \ \ \ \ \ \ \mbox{\hyperlink{a01982_a4beceb3ae27d2d90bfa46f08f6a9fbf6}{Any}}(\textcolor{keyword}{const}\ \mbox{\hyperlink{a01982}{Any}}\&\ inOther)}
\DoxyCodeLine{00115\ \ \ \ \ \ \ \ \ \ \ \ \ :\ mDesc(inOther.mDesc)}
\DoxyCodeLine{00116\ \ \ \ \ \ \ \ \ \ \ \ \ ,\ mFunction(inOther.mFunction)}
\DoxyCodeLine{00117\ \ \ \ \ \ \ \ \ \ \ \ \ ,\ mLine(inOther.mLine)}
\DoxyCodeLine{00118\ \ \ \ \ \ \ \ \ \ \ \ \ ,\ mWhat(inOther.mWhat)}
\DoxyCodeLine{00119\ \ \ \ \ \ \ \ \ \ \ \ \ \{}
\DoxyCodeLine{00120\ \ \ \ \ \ \ \ \ \ \ \ \ \}}
\DoxyCodeLine{00121\ \ \ \ \ \ \ \ \ \ \ \ \ }
\DoxyCodeLine{00122\ \ \ \ \ \ \ \ \ \ \ \ \ \textcolor{comment}{//\ assignment\ operator}}
\DoxyCodeLine{00123\ \ \ \ \ \ \ \ \ \ \ \ \ \mbox{\hyperlink{a01982}{Any}}\&\ \mbox{\hyperlink{a01982_a667888fa918946441bd6b03ad022cd65}{operator=}}(\textcolor{keyword}{const}\ \mbox{\hyperlink{a01982}{Any}}\&\ inOther)}
\DoxyCodeLine{00124\ \ \ \ \ \ \ \ \ \ \ \ \ \{}
\DoxyCodeLine{00125\ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ mDesc\ =\ inOther.mDesc;}
\DoxyCodeLine{00126\ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ mFunction\ =\ inOther.mFunction;}
\DoxyCodeLine{00127\ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ mLine\ =\ inOther.mLine;}
\DoxyCodeLine{00128\ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ mWhat\ =\ inOther.mWhat;}
\DoxyCodeLine{00129\ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \textcolor{keywordflow}{return}\ *\textcolor{keyword}{this};}
\DoxyCodeLine{00130\ \ \ \ \ \ \ \ \ \ \ \ \ \}}
\DoxyCodeLine{00131\ \ \ \ \ \ \ \ \ \ \ \ \ }
\DoxyCodeLine{00132\ \ \ \ \ \ \ \ \ \ \ \ \ \mbox{\hyperlink{a01982_a9de3a5ad28f7b36c0930dcb71c585855}{AAX\_DEFAULT\_MOVE\_CTOR}}(\mbox{\hyperlink{a01982}{Any}});}
\DoxyCodeLine{00133\ \ \ \ \ \ \ \ \ \ \ \ \ \mbox{\hyperlink{a01982_a4a698473997da5ebf0c0092618715234}{AAX\_DEFAULT\_MOVE\_OPER}}(\mbox{\hyperlink{a01982}{Any}});}
\DoxyCodeLine{00134\ \ \ \ \ \ \ \ \ \ \ \ \ }
\DoxyCodeLine{00135\ \ \ \ \ \ \ \ \ \textcolor{keyword}{public}:\ \textcolor{comment}{//\ AAX::Exception::Any}}
\DoxyCodeLine{00136\ \ \ \ \ \ \ \ \ \ \ \ \ }
\DoxyCodeLine{00137\ \textcolor{preprocessor}{\#ifndef\ AAX\_CPP11\_SUPPORT}}
\DoxyCodeLine{00138\ \ \ \ \ \ \ \ \ \ \ \ \ \textcolor{comment}{//\ implicit\ conversion\ to\ std::string\ (mostly\ for\ AsString())}}
\DoxyCodeLine{00139\ \ \ \ \ \ \ \ \ \ \ \ \ \textcolor{keyword}{operator}\ \textcolor{keyword}{const}\ std::string\&(void)\ \textcolor{keyword}{const}\ \{\ \textcolor{keywordflow}{return}\ mWhat;\ \}}
\DoxyCodeLine{00140\ \textcolor{preprocessor}{\#endif}}
\DoxyCodeLine{00141\ \ \ \ \ \ \ \ \ \ \ \ \ }
\DoxyCodeLine{00142\ \ \ \ \ \ \ \ \ \ \ \ \ \textcolor{keyword}{const}\ std::string\&\ \mbox{\hyperlink{a01982_a8c5d76e14059360f2cd47dbaf91832dd}{What}}()\textcolor{keyword}{\ const\ }\{\ \textcolor{keywordflow}{return}\ mWhat;\ \}}
\DoxyCodeLine{00143\ \ \ \ \ \ \ \ \ \ \ \ \ \textcolor{keyword}{const}\ std::string\&\ \mbox{\hyperlink{a01982_a03d6eb1711e12765014cfd7efce50769}{Desc}}()\textcolor{keyword}{\ const\ }\{\ \textcolor{keywordflow}{return}\ mDesc;\ \}}
\DoxyCodeLine{00144\ \ \ \ \ \ \ \ \ \ \ \ \ \textcolor{keyword}{const}\ std::string\&\ \mbox{\hyperlink{a01982_a1cf209845201a1988ef62642bd4e8a5a}{Function}}()\textcolor{keyword}{\ const\ }\{\ \textcolor{keywordflow}{return}\ mFunction;\ \}}
\DoxyCodeLine{00145\ \ \ \ \ \ \ \ \ \ \ \ \ \textcolor{keyword}{const}\ std::string\&\ \mbox{\hyperlink{a01982_aefabb3f2983049a7bcbb62c014e78585}{Line}}()\textcolor{keyword}{\ const\ }\{\ \textcolor{keywordflow}{return}\ mLine;\ \}}
\DoxyCodeLine{00146\ \ \ \ \ \ \ \ \ \ \ \ \ }
\DoxyCodeLine{00147\ \ \ \ \ \ \ \ \ \textcolor{keyword}{private}:}
\DoxyCodeLine{00148\ \ \ \ \ \ \ \ \ \ \ \ \ \textcolor{keyword}{static}\ std::string\ CreateWhat(\textcolor{keyword}{const}\ std::string\&\ inDesc,\ \textcolor{keyword}{const}\ std::string\&\ inFunc,\ \textcolor{keyword}{const}\ std::string\&\ inLine)}
\DoxyCodeLine{00149\ \ \ \ \ \ \ \ \ \ \ \ \ \{}
\DoxyCodeLine{00150\ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ std::string\ whatStr(inDesc);}
\DoxyCodeLine{00151\ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \textcolor{keywordflow}{if}\ (\textcolor{keyword}{false}\ ==\ inFunc.empty())\ \{\ whatStr\ +=\ (\textcolor{stringliteral}{"{}\ func:"{}}\ +\ inFunc);\ \}}
\DoxyCodeLine{00152\ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \textcolor{keywordflow}{if}\ (\textcolor{keyword}{false}\ ==\ inLine.empty())\ \{\ whatStr\ +=\ (\textcolor{stringliteral}{"{}\ line:"{}}\ +\ inLine);\ \}}
\DoxyCodeLine{00153\ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \textcolor{keywordflow}{return}\ whatStr;}
\DoxyCodeLine{00154\ \ \ \ \ \ \ \ \ \ \ \ \ \}}
\DoxyCodeLine{00155\ \ \ \ \ \ \ \ \ \ \ \ \ }
\DoxyCodeLine{00156\ \ \ \ \ \ \ \ \ \textcolor{keyword}{private}:}
\DoxyCodeLine{00157\ \ \ \ \ \ \ \ \ \ \ \ \ std::string\ mDesc;}
\DoxyCodeLine{00158\ \ \ \ \ \ \ \ \ \ \ \ \ std::string\ mFunction;}
\DoxyCodeLine{00159\ \ \ \ \ \ \ \ \ \ \ \ \ std::string\ mLine;}
\DoxyCodeLine{00160\ \ \ \ \ \ \ \ \ \ \ \ \ std::string\ mWhat;}
\DoxyCodeLine{00161\ \ \ \ \ \ \ \ \ \};}
\DoxyCodeLine{00162\ \ \ \ \ \ \ \ \ }
\DoxyCodeLine{00165\ \ \ \ \ \ \ \ \ \textcolor{keyword}{class\ }\mbox{\hyperlink{a01986}{ResultError}}\ :\ \textcolor{keyword}{public}\ \mbox{\hyperlink{a01982}{Any}}}
\DoxyCodeLine{00166\ \ \ \ \ \ \ \ \ \{}
\DoxyCodeLine{00167\ \ \ \ \ \ \ \ \ \textcolor{keyword}{public}:}
\DoxyCodeLine{00168\ \ \ \ \ \ \ \ \ \ \ \ \ \textcolor{keyword}{explicit}\ \mbox{\hyperlink{a01986_ad96a8e3b025441353ffd2eb4f25f9126}{ResultError}}(\mbox{\hyperlink{a00542_a4d8f69a697df7f70c3a8e9b8ee130d2f}{AAX\_Result}}\ inWhatResult)}
\DoxyCodeLine{00169\ \ \ \ \ \ \ \ \ \ \ \ \ :\ \mbox{\hyperlink{a01982}{Any}}(\mbox{\hyperlink{a01986}{ResultError}}::\mbox{\hyperlink{a01986_a55c2ce6a7122bee29558dc16bd860067}{FormatResult}}(inWhatResult))}
\DoxyCodeLine{00170\ \ \ \ \ \ \ \ \ \ \ \ \ ,\ mResult(inWhatResult)}
\DoxyCodeLine{00171\ \ \ \ \ \ \ \ \ \ \ \ \ \{}
\DoxyCodeLine{00172\ \ \ \ \ \ \ \ \ \ \ \ \ \}}
\DoxyCodeLine{00173\ \ \ \ \ \ \ \ \ \ \ \ \ }
\DoxyCodeLine{00174\ \ \ \ \ \ \ \ \ \ \ \ \ \textcolor{keyword}{template}\ <\textcolor{keyword}{class}\ C>}
\DoxyCodeLine{00175\ \ \ \ \ \ \ \ \ \ \ \ \ \textcolor{keyword}{explicit}\ \mbox{\hyperlink{a01986_adb645fa763b880387217fda5fb08e9ce}{ResultError}}(\mbox{\hyperlink{a00542_a4d8f69a697df7f70c3a8e9b8ee130d2f}{AAX\_Result}}\ inWhatResult,\ \textcolor{keyword}{const}\ C\&\ inFunction)}
\DoxyCodeLine{00176\ \ \ \ \ \ \ \ \ \ \ \ \ :\ \mbox{\hyperlink{a01982}{Any}}(\mbox{\hyperlink{a01986}{ResultError}}::\mbox{\hyperlink{a01986_a55c2ce6a7122bee29558dc16bd860067}{FormatResult}}(inWhatResult),\ inFunction,\ (const\ char*)NULL)}
\DoxyCodeLine{00177\ \ \ \ \ \ \ \ \ \ \ \ \ ,\ mResult(inWhatResult)}
\DoxyCodeLine{00178\ \ \ \ \ \ \ \ \ \ \ \ \ \{}
\DoxyCodeLine{00179\ \ \ \ \ \ \ \ \ \ \ \ \ \}}
\DoxyCodeLine{00180\ \ \ \ \ \ \ \ \ \ \ \ \ }
\DoxyCodeLine{00181\ \ \ \ \ \ \ \ \ \ \ \ \ \textcolor{keyword}{template}\ <\textcolor{keyword}{class}\ C1,\ \textcolor{keyword}{class}\ C2>}
\DoxyCodeLine{00182\ \ \ \ \ \ \ \ \ \ \ \ \ \textcolor{keyword}{explicit}\ \mbox{\hyperlink{a01986_a512d5c7f7c7fdea31d86ef0696768a37}{ResultError}}(\mbox{\hyperlink{a00542_a4d8f69a697df7f70c3a8e9b8ee130d2f}{AAX\_Result}}\ inWhatResult,\ \textcolor{keyword}{const}\ C1\&\ inFunction,\ \textcolor{keyword}{const}\ C2\&\ inLine)}
\DoxyCodeLine{00183\ \ \ \ \ \ \ \ \ \ \ \ \ :\ \mbox{\hyperlink{a01982}{Any}}(\mbox{\hyperlink{a01986}{ResultError}}::\mbox{\hyperlink{a01986_a55c2ce6a7122bee29558dc16bd860067}{FormatResult}}(inWhatResult),\ inFunction,\ inLine)}
\DoxyCodeLine{00184\ \ \ \ \ \ \ \ \ \ \ \ \ ,\ mResult(inWhatResult)}
\DoxyCodeLine{00185\ \ \ \ \ \ \ \ \ \ \ \ \ \{}
\DoxyCodeLine{00186\ \ \ \ \ \ \ \ \ \ \ \ \ \}}
\DoxyCodeLine{00187\ }
\DoxyCodeLine{00188\ \ \ \ \ \ \ \ \ \ \ \ \ \textcolor{comment}{//\ copy\ constructor}}
\DoxyCodeLine{00189\ \ \ \ \ \ \ \ \ \ \ \ \ \mbox{\hyperlink{a01986_a7c92bc567c02a35b5c3e8f4aba0df86e}{ResultError}}(\textcolor{keyword}{const}\ \mbox{\hyperlink{a01986}{ResultError}}\&\ inOther)}
\DoxyCodeLine{00190\ \ \ \ \ \ \ \ \ \ \ \ \ :\ \mbox{\hyperlink{a01982}{Any}}(inOther)}
\DoxyCodeLine{00191\ \ \ \ \ \ \ \ \ \ \ \ \ ,\ mResult(inOther.mResult)}
\DoxyCodeLine{00192\ \ \ \ \ \ \ \ \ \ \ \ \ \{}
\DoxyCodeLine{00193\ \ \ \ \ \ \ \ \ \ \ \ \ \}}
\DoxyCodeLine{00194\ \ \ \ \ \ \ \ \ \ \ \ \ }
\DoxyCodeLine{00195\ \ \ \ \ \ \ \ \ \ \ \ \ \textcolor{keyword}{static}\ std::string\ \mbox{\hyperlink{a01986_a55c2ce6a7122bee29558dc16bd860067}{FormatResult}}(\mbox{\hyperlink{a00542_a4d8f69a697df7f70c3a8e9b8ee130d2f}{AAX\_Result}}\ inResult)}
\DoxyCodeLine{00196\ \ \ \ \ \ \ \ \ \ \ \ \ \{}
\DoxyCodeLine{00197\ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \textcolor{keywordflow}{return}\ std::string(\mbox{\hyperlink{a00948_a354029650cebc5f23636c9984a65ea0d}{AAX::AsStringResult}}(inResult)\ +\ \textcolor{stringliteral}{"{}\ ("{}}\ +\ \mbox{\hyperlink{a00948_ab024a3d9ac9c68350b377b2c70ec4727}{AAX::AsStringInt32}}((int32\_t)inResult)\ +\ \textcolor{stringliteral}{"{})"{}});}
\DoxyCodeLine{00198\ \ \ \ \ \ \ \ \ \ \ \ \ \}}
\DoxyCodeLine{00199\ \ \ \ \ \ \ \ \ \ \ \ \ }
\DoxyCodeLine{00200\ \ \ \ \ \ \ \ \ \ \ \ \ \mbox{\hyperlink{a00542_a4d8f69a697df7f70c3a8e9b8ee130d2f}{AAX\_Result}}\ \mbox{\hyperlink{a01986_ad7773300e7e3920726ad6ffe508d3547}{Result}}()\textcolor{keyword}{\ const\ }\{\ \textcolor{keywordflow}{return}\ mResult;\ \}}
\DoxyCodeLine{00201\ \ \ \ \ \ \ \ \ \ \ \ \ }
\DoxyCodeLine{00202\ \ \ \ \ \ \ \ \ \textcolor{keyword}{private}:}
\DoxyCodeLine{00203\ \ \ \ \ \ \ \ \ \ \ \ \ \mbox{\hyperlink{a00542_a4d8f69a697df7f70c3a8e9b8ee130d2f}{AAX\_Result}}\ mResult;}
\DoxyCodeLine{00204\ \ \ \ \ \ \ \ \ \};}
\DoxyCodeLine{00205\ \ \ \ \ \}}
\DoxyCodeLine{00206\ }
\DoxyCodeLine{00207\ \ \ \ \ std::string\ \mbox{\hyperlink{a00948_a8fbde5607de487515bcb55631bc1377d}{AsString}}(\textcolor{keyword}{const}\ \textcolor{keywordtype}{char}*\ inStr)}
\DoxyCodeLine{00208\ \ \ \ \ \{}
\DoxyCodeLine{00209\ \ \ \ \ \ \ \ \ \textcolor{keywordflow}{return}\ inStr\ ?\ std::string(inStr)\ :\ std::string();}
\DoxyCodeLine{00210\ \ \ \ \ \}}
\DoxyCodeLine{00211\ }
\DoxyCodeLine{00212\ \ \ \ \ \textcolor{keyword}{const}\ std::string\&\ \mbox{\hyperlink{a00948_a8fbde5607de487515bcb55631bc1377d}{AsString}}(\textcolor{keyword}{const}\ std::string\&\ inStr)}
\DoxyCodeLine{00213\ \ \ \ \ \{}
\DoxyCodeLine{00214\ \ \ \ \ \ \ \ \ \textcolor{keywordflow}{return}\ inStr;}
\DoxyCodeLine{00215\ \ \ \ \ \}}
\DoxyCodeLine{00216\ }
\DoxyCodeLine{00217\ \ \ \ \ \textcolor{keyword}{const}\ std::string\&\ \mbox{\hyperlink{a00948_a8fbde5607de487515bcb55631bc1377d}{AsString}}(\textcolor{keyword}{const}\ \mbox{\hyperlink{a01982}{Exception::Any}}\&\ inStr)}
\DoxyCodeLine{00218\ \ \ \ \ \{}
\DoxyCodeLine{00219\ \ \ \ \ \ \ \ \ \textcolor{keywordflow}{return}\ inStr.\mbox{\hyperlink{a01982_a8c5d76e14059360f2cd47dbaf91832dd}{What}}();}
\DoxyCodeLine{00220\ \ \ \ \ \}}
\DoxyCodeLine{00221\ \}}
\DoxyCodeLine{00222\ }
\DoxyCodeLine{00223\ }
\DoxyCodeLine{00225\ \textcolor{preprocessor}{\#if\ 0}}
\DoxyCodeLine{00226\ \textcolor{preprocessor}{\#pragma\ mark\ -\/}}
\DoxyCodeLine{00227\ \textcolor{preprocessor}{\#endif}}
\DoxyCodeLine{00229\ }
\DoxyCodeLine{00342\ \textcolor{keyword}{class\ }\mbox{\hyperlink{a01990}{AAX\_CheckedResult}}}
\DoxyCodeLine{00343\ \{}
\DoxyCodeLine{00344\ \textcolor{keyword}{public}:}
\DoxyCodeLine{00345\ \ \ \ \ \textcolor{keyword}{typedef}\ \mbox{\hyperlink{a01986}{AAX::Exception::ResultError}}\ \mbox{\hyperlink{a01990_a36fd71afc6d62993c1dd96e1ca9fcc0e}{Exception}};}
\DoxyCodeLine{00346\ \ \ \ \ }
\DoxyCodeLine{00347\ \ \ \ \ \textcolor{comment}{/*\ non-\/virtual\ destructor\ */}\ \mbox{\hyperlink{a01990_ac8120ba01d2f25608d74533c9d1a9747}{\string~AAX\_CheckedResult}}()\ \{\}}
\DoxyCodeLine{00348\ \ \ \ \ }
\DoxyCodeLine{00350\ \ \ \ \ \mbox{\hyperlink{a01990_aab8a1c36b9be4f6aac93d79d3160dde8}{AAX\_CheckedResult}}()}
\DoxyCodeLine{00351\ \ \ \ \ :\ mCurResult(\mbox{\hyperlink{a00539_a5f8c7439f3a706c4f8315a9609811937aeddbd1bb67e3a66e6af54a4b4a7a57b3}{AAX\_SUCCESS}})}
\DoxyCodeLine{00352\ \ \ \ \ ,\ mLastError(\mbox{\hyperlink{a00539_a5f8c7439f3a706c4f8315a9609811937aeddbd1bb67e3a66e6af54a4b4a7a57b3}{AAX\_SUCCESS}})}
\DoxyCodeLine{00353\ \ \ \ \ ,\ mAcceptedResults()}
\DoxyCodeLine{00354\ \ \ \ \ \{}
\DoxyCodeLine{00355\ \ \ \ \ \ \ \ \ Initialize();}
\DoxyCodeLine{00356\ \ \ \ \ \}}
\DoxyCodeLine{00357\ \ \ \ \ }
\DoxyCodeLine{00360\ \ \ \ \ \mbox{\hyperlink{a01990_a03a1d64b0bf359b6a23ae59f6d892859}{AAX\_CheckedResult}}(\mbox{\hyperlink{a00542_a4d8f69a697df7f70c3a8e9b8ee130d2f}{AAX\_Result}}\ inResult)}
\DoxyCodeLine{00361\ \ \ \ \ :\ mCurResult(inResult)}
\DoxyCodeLine{00362\ \ \ \ \ ,\ mLastError(\mbox{\hyperlink{a00539_a5f8c7439f3a706c4f8315a9609811937aeddbd1bb67e3a66e6af54a4b4a7a57b3}{AAX\_SUCCESS}})}
\DoxyCodeLine{00363\ \ \ \ \ ,\ mAcceptedResults()}
\DoxyCodeLine{00364\ \ \ \ \ \{}
\DoxyCodeLine{00365\ \ \ \ \ \ \ \ \ Initialize();}
\DoxyCodeLine{00366\ \ \ \ \ \ \ \ \ Check();}
\DoxyCodeLine{00367\ \ \ \ \ \}}
\DoxyCodeLine{00368\ \ \ \ \ }
\DoxyCodeLine{00374\ \ \ \ \ \textcolor{keywordtype}{void}\ \mbox{\hyperlink{a01990_af6c4b10c55e959f5f8424514a3cbb68a}{AddAcceptedResult}}(\mbox{\hyperlink{a00542_a4d8f69a697df7f70c3a8e9b8ee130d2f}{AAX\_Result}}\ inResult)}
\DoxyCodeLine{00375\ \ \ \ \ \{}
\DoxyCodeLine{00376\ \ \ \ \ \ \ \ \ mAcceptedResults.insert(inResult);}
\DoxyCodeLine{00377\ \ \ \ \ \}}
\DoxyCodeLine{00378\ \ \ \ \ }
\DoxyCodeLine{00379\ \ \ \ \ \textcolor{keywordtype}{void}\ \mbox{\hyperlink{a01990_a14a7d7cab3e771a38481a7ab5447ea52}{ResetAcceptedResults}}()}
\DoxyCodeLine{00380\ \ \ \ \ \{}
\DoxyCodeLine{00381\ \ \ \ \ \ \ \ \ mAcceptedResults.clear();}
\DoxyCodeLine{00382\ \ \ \ \ \ \ \ \ mAcceptedResults.insert(\mbox{\hyperlink{a00539_a5f8c7439f3a706c4f8315a9609811937aeddbd1bb67e3a66e6af54a4b4a7a57b3}{AAX\_SUCCESS}});}
\DoxyCodeLine{00383\ \ \ \ \ \}}
\DoxyCodeLine{00384\ \ \ \ \ }
\DoxyCodeLine{00386\ \ \ \ \ \mbox{\hyperlink{a01990}{AAX\_CheckedResult}}\&\ \mbox{\hyperlink{a01990_aecaead00a6a260a93ac771ecae413f16}{operator=}}(\mbox{\hyperlink{a00542_a4d8f69a697df7f70c3a8e9b8ee130d2f}{AAX\_Result}}\ inResult)}
\DoxyCodeLine{00387\ \ \ \ \ \{}
\DoxyCodeLine{00388\ \ \ \ \ \ \ \ \ mCurResult\ =\ inResult;}
\DoxyCodeLine{00389\ \ \ \ \ \ \ \ \ Check();}
\DoxyCodeLine{00390\ \ \ \ \ \ \ \ \ \textcolor{keywordflow}{return}\ *\textcolor{keyword}{this};}
\DoxyCodeLine{00391\ \ \ \ \ \}}
\DoxyCodeLine{00392\ \ \ \ \ }
\DoxyCodeLine{00395\ \ \ \ \ \mbox{\hyperlink{a01990}{AAX\_CheckedResult}}\&\ \mbox{\hyperlink{a01990_a966916546e0c86a42bfd6ee455552dcd}{operator|=}}(\mbox{\hyperlink{a00542_a4d8f69a697df7f70c3a8e9b8ee130d2f}{AAX\_Result}}\ inResult)}
\DoxyCodeLine{00396\ \ \ \ \ \{}
\DoxyCodeLine{00397\ \ \ \ \ \ \ \ \ \textcolor{keywordflow}{return}\ this-\/>\mbox{\hyperlink{a01990_aecaead00a6a260a93ac771ecae413f16}{operator=}}(inResult);}
\DoxyCodeLine{00398\ \ \ \ \ \}}
\DoxyCodeLine{00399\ \ \ \ \ }
\DoxyCodeLine{00401\ \ \ \ \ \textcolor{keyword}{operator}\ \mbox{\hyperlink{a00542_a4d8f69a697df7f70c3a8e9b8ee130d2f}{AAX\_Result}}()\textcolor{keyword}{\ const}}
\DoxyCodeLine{00402\ \textcolor{keyword}{\ \ \ \ }\{}
\DoxyCodeLine{00403\ \ \ \ \ \ \ \ \ \textcolor{keywordflow}{return}\ mCurResult;}
\DoxyCodeLine{00404\ \ \ \ \ \}}
\DoxyCodeLine{00405\ \ \ \ \ }
\DoxyCodeLine{00408\ \ \ \ \ \textcolor{keywordtype}{void}\ \mbox{\hyperlink{a01990_abacea9ed08e64315cb984fa630815dd7}{Clear}}()}
\DoxyCodeLine{00409\ \ \ \ \ \{}
\DoxyCodeLine{00410\ \ \ \ \ \ \ \ \ mCurResult\ =\ \mbox{\hyperlink{a00539_a5f8c7439f3a706c4f8315a9609811937aeddbd1bb67e3a66e6af54a4b4a7a57b3}{AAX\_SUCCESS}};}
\DoxyCodeLine{00411\ \ \ \ \ \ \ \ \ mLastError\ =\ \mbox{\hyperlink{a00539_a5f8c7439f3a706c4f8315a9609811937aeddbd1bb67e3a66e6af54a4b4a7a57b3}{AAX\_SUCCESS}};}
\DoxyCodeLine{00412\ \ \ \ \ \}}
\DoxyCodeLine{00413\ \ \ \ \ }
\DoxyCodeLine{00416\ \ \ \ \ \mbox{\hyperlink{a00542_a4d8f69a697df7f70c3a8e9b8ee130d2f}{AAX\_Result}}\ \mbox{\hyperlink{a01990_af0e297a396bf7ea3dfcdc7f71d85486f}{LastError}}()\textcolor{keyword}{\ const}}
\DoxyCodeLine{00417\ \textcolor{keyword}{\ \ \ \ }\{}
\DoxyCodeLine{00418\ \ \ \ \ \ \ \ \ \textcolor{keywordflow}{return}\ mLastError;}
\DoxyCodeLine{00419\ \ \ \ \ \}}
\DoxyCodeLine{00420\ \ \ \ \ }
\DoxyCodeLine{00421\ \textcolor{keyword}{private}:}
\DoxyCodeLine{00422\ \ \ \ \ \textcolor{keywordtype}{void}\ Initialize()}
\DoxyCodeLine{00423\ \ \ \ \ \{}
\DoxyCodeLine{00424\ \ \ \ \ \ \ \ \ \mbox{\hyperlink{a01990_a14a7d7cab3e771a38481a7ab5447ea52}{ResetAcceptedResults}}();}
\DoxyCodeLine{00425\ \ \ \ \ \}}
\DoxyCodeLine{00426\ \ \ \ \ }
\DoxyCodeLine{00427\ \ \ \ \ \textcolor{keywordtype}{void}\ Check()}
\DoxyCodeLine{00428\ \ \ \ \ \{}
\DoxyCodeLine{00429\ \ \ \ \ \ \ \ \ \textcolor{keyword}{const}\ \mbox{\hyperlink{a00542_a4d8f69a697df7f70c3a8e9b8ee130d2f}{AAX\_Result}}\ err\ =\ mCurResult;}
\DoxyCodeLine{00430\ \ \ \ \ \ \ \ \ \textcolor{keywordflow}{if}\ (0\ ==\ mAcceptedResults.count(err))}
\DoxyCodeLine{00431\ \ \ \ \ \ \ \ \ \{}
\DoxyCodeLine{00432\ \ \ \ \ \ \ \ \ \ \ \ \ \mbox{\hyperlink{a01986}{AAX\_CheckedResult::Exception}}\ ex(err);}
\DoxyCodeLine{00433\ \ \ \ \ \ \ \ \ \ \ \ \ }
\DoxyCodeLine{00434\ \ \ \ \ \ \ \ \ \ \ \ \ \textcolor{comment}{//\ error\ state\ is\ now\ captured\ in\ ex}}
\DoxyCodeLine{00435\ \ \ \ \ \ \ \ \ \ \ \ \ mCurResult\ =\ \mbox{\hyperlink{a00539_a5f8c7439f3a706c4f8315a9609811937aeddbd1bb67e3a66e6af54a4b4a7a57b3}{AAX\_SUCCESS}};}
\DoxyCodeLine{00436\ \ \ \ \ \ \ \ \ \ \ \ \ mLastError\ =\ err;}
\DoxyCodeLine{00437\ \ \ \ \ \ \ \ \ \ \ \ \ }
\DoxyCodeLine{00438\ \ \ \ \ \ \ \ \ \ \ \ \ \mbox{\hyperlink{a00740_ac2aa820ece56bb59140ad561218db4b3}{AAX\_TRACE\_RELEASE}}(\mbox{\hyperlink{a00740_a8a6953f26f36747357d5d95f96dcf68d}{kAAX\_Trace\_Priority\_Normal}},\ \textcolor{stringliteral}{"{}AAX\_CheckedResult\ -\/\ throwing\ \%s"{}},\ ex.What().c\_str());}
\DoxyCodeLine{00439\ \ \ \ \ \ \ \ \ \ \ \ \ \mbox{\hyperlink{a00740_ae871829dd7297e4a5ae6c7094f6b5398}{AAX\_STACKTRACE}}(\mbox{\hyperlink{a00740_a68d0297c90a8d294e19ea781f8cda96a}{kAAX\_Trace\_Priority\_Lowest}},\ \textcolor{stringliteral}{"{}"{}});\ \textcolor{comment}{//\ stacktrace\ is\ only\ printed\ for\ debug\ plug-\/in\ builds}}
\DoxyCodeLine{00440\ \ \ \ \ \ \ \ \ \ \ \ \ \textcolor{keywordflow}{throw}\ ex;}
\DoxyCodeLine{00441\ \ \ \ \ \ \ \ \ \}}
\DoxyCodeLine{00442\ \ \ \ \ \}}
\DoxyCodeLine{00443\ \ \ \ \ }
\DoxyCodeLine{00444\ \textcolor{keyword}{private}:}
\DoxyCodeLine{00445\ \ \ \ \ \mbox{\hyperlink{a00542_a4d8f69a697df7f70c3a8e9b8ee130d2f}{AAX\_Result}}\ mCurResult;}
\DoxyCodeLine{00446\ \ \ \ \ \mbox{\hyperlink{a00542_a4d8f69a697df7f70c3a8e9b8ee130d2f}{AAX\_Result}}\ mLastError;}
\DoxyCodeLine{00447\ \ \ \ \ std::set<AAX\_Result>\ mAcceptedResults;}
\DoxyCodeLine{00448\ \};}
\DoxyCodeLine{00449\ }
\DoxyCodeLine{00450\ }
\DoxyCodeLine{00452\ \textcolor{preprocessor}{\#if\ 0}}
\DoxyCodeLine{00453\ \textcolor{preprocessor}{\#pragma\ mark\ -\/}}
\DoxyCodeLine{00454\ \textcolor{preprocessor}{\#pragma\ mark\ AAX\ exception\ macros}}
\DoxyCodeLine{00455\ \textcolor{preprocessor}{\#endif}}
\DoxyCodeLine{00457\ }
\DoxyCodeLine{00473\ \textcolor{preprocessor}{\#define\ AAX\_SWALLOW(...)\ \(\backslash\)}}
\DoxyCodeLine{00474\ \textcolor{preprocessor}{\ \ try\ \{\ if(true)\ \{\ (\ \_\_VA\_ARGS\_\_\ );\ \}\ \}\ \(\backslash\)}}
\DoxyCodeLine{00475\ \textcolor{preprocessor}{\ \ catch\ (const\ AAX\_CheckedResult::Exception\&\ AAX\_PREPROCESSOR\_CONCAT(ex,\_\_LINE\_\_))\ \{\ \(\backslash\)}}
\DoxyCodeLine{00476\ \textcolor{preprocessor}{\ \ \ \ AAX\_TRACE\_RELEASE(kAAX\_Trace\_Priority\_High,\ "{}\%s\ line\ \%d\ (\%s)\ exception\ caught:\ \%s\ (swallowed)"{}},\ \_\_FILE\_\_,\ \_\_LINE\_\_,\ \_\_FUNCTION\_\_,\ AAX\_PREPROCESSOR\_CONCAT(ex,\_\_LINE\_\_).What().c\_str());\ \(\backslash\)}
\DoxyCodeLine{00477\ \ \ \}\ do\ \{\}\ while\ (false)}
\DoxyCodeLine{00478\ }
\DoxyCodeLine{00501\ \textcolor{preprocessor}{\#define\ AAX\_SWALLOW\_MULT(...)\ \(\backslash\)}}
\DoxyCodeLine{00502\ \textcolor{preprocessor}{try\ \{\ if(true)\ \{\ \_\_VA\_ARGS\_\_\ \}\ \}\ \(\backslash\)}}
\DoxyCodeLine{00503\ \textcolor{preprocessor}{catch\ (const\ AAX\_CheckedResult::Exception\&\ AAX\_PREPROCESSOR\_CONCAT(ex,\_\_LINE\_\_))\ \{\ \(\backslash\)}}
\DoxyCodeLine{00504\ \textcolor{preprocessor}{AAX\_TRACE\_RELEASE(kAAX\_Trace\_Priority\_High,\ "{}\%s\ line\ \%d\ (\%s)\ exception\ caught:\ \%s\ (swallowed)"{}},\ \_\_FILE\_\_,\ \_\_LINE\_\_,\ \_\_FUNCTION\_\_,\ AAX\_PREPROCESSOR\_CONCAT(ex,\_\_LINE\_\_).What().c\_str());\ \(\backslash\)}
\DoxyCodeLine{00505\ \}\ do\ \{\}\ while\ (false)}
\DoxyCodeLine{00506\ }
\DoxyCodeLine{00528\ \textcolor{preprocessor}{\#define\ AAX\_CAPTURE(X,\ ...)\ \(\backslash\)}}
\DoxyCodeLine{00529\ \textcolor{preprocessor}{try\ \{\ if(true)\ \{\ (\ \_\_VA\_ARGS\_\_\ );\ \}\ \}\ \(\backslash\)}}
\DoxyCodeLine{00530\ \textcolor{preprocessor}{catch\ (const\ AAX::Exception::ResultError\&\ AAX\_PREPROCESSOR\_CONCAT(ex,\_\_LINE\_\_))\ \{\ \(\backslash\)}}
\DoxyCodeLine{00531\ \textcolor{preprocessor}{AAX\_TRACE\_RELEASE(kAAX\_Trace\_Priority\_High,\ "{}\%s\ line\ \%d\ (\%s)\ exception\ caught:\ \%s\ (captured)"{}},\ \_\_FILE\_\_,\ \_\_LINE\_\_,\ \_\_FUNCTION\_\_,\ AAX\_PREPROCESSOR\_CONCAT(ex,\_\_LINE\_\_).What().c\_str());\ \(\backslash\)}
\DoxyCodeLine{00532\ (X)\ =\ AAX\_PREPROCESSOR\_CONCAT(ex,\_\_LINE\_\_).Result();\ \(\backslash\)}
\DoxyCodeLine{00533\ \}\ do\ \{\}\ while\ (false)}
\DoxyCodeLine{00534\ }
\DoxyCodeLine{00566\ \textcolor{preprocessor}{\#define\ AAX\_CAPTURE\_MULT(X,\ ...)\ \(\backslash\)}}
\DoxyCodeLine{00567\ \textcolor{preprocessor}{try\ \{\ if(true)\ \{\ \_\_VA\_ARGS\_\_\ \}\ \}\ \(\backslash\)}}
\DoxyCodeLine{00568\ \textcolor{preprocessor}{catch\ (const\ AAX\_CheckedResult::Exception\&\ AAX\_PREPROCESSOR\_CONCAT(ex,\_\_LINE\_\_))\ \{\ \(\backslash\)}}
\DoxyCodeLine{00569\ \textcolor{preprocessor}{AAX\_TRACE\_RELEASE(kAAX\_Trace\_Priority\_High,\ "{}\%s\ line\ \%d\ (\%s)\ exception\ caught:\ \%s\ (captured)"{}},\ \_\_FILE\_\_,\ \_\_LINE\_\_,\ \_\_FUNCTION\_\_,\ AAX\_PREPROCESSOR\_CONCAT(ex,\_\_LINE\_\_).What().c\_str());\ \(\backslash\)}
\DoxyCodeLine{00570\ (X)\ =\ AAX\_PREPROCESSOR\_CONCAT(ex,\_\_LINE\_\_).Result();\ \(\backslash\)}
\DoxyCodeLine{00571\ \}\ do\ \{\}\ while\ (false)}
\DoxyCodeLine{00572\ }
\DoxyCodeLine{00573\ }
\DoxyCodeLine{00575\ \textcolor{preprocessor}{\#if\ 0}}
\DoxyCodeLine{00576\ \textcolor{preprocessor}{\#pragma\ mark\ -\/}}
\DoxyCodeLine{00577\ \textcolor{preprocessor}{\#endif}}
\DoxyCodeLine{00579\ }
\DoxyCodeLine{00617\ \textcolor{keyword}{class\ }\mbox{\hyperlink{a01994}{AAX\_AggregateResult}}}
\DoxyCodeLine{00618\ \{}
\DoxyCodeLine{00619\ \textcolor{keyword}{public}:}
\DoxyCodeLine{00620\ \ \ \ \ \mbox{\hyperlink{a01994_a8534104d582e40a0e2e1aab75dc8528e}{AAX\_AggregateResult}}()\ =\ \textcolor{keywordflow}{default};}
\DoxyCodeLine{00621\ \ \ \ \ }
\DoxyCodeLine{00622\ \ \ \ \ \mbox{\hyperlink{a01994_a09e9058ca4ec5df47741cef7e44cf165}{\string~AAX\_AggregateResult}}()}
\DoxyCodeLine{00623\ \ \ \ \ \{}
\DoxyCodeLine{00624\ \ \ \ \ \ \ \ \ \textcolor{keywordflow}{if}\ (0\ ==\ mNumSucceeded\ \&\&\ 0\ <\ mNumFailed)\ \{}
\DoxyCodeLine{00625\ \ \ \ \ \ \ \ \ \ \ \ \ \textcolor{keywordflow}{try}\ \{}
\DoxyCodeLine{00626\ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \textcolor{comment}{//\ do\ normal\ logging}}
\DoxyCodeLine{00627\ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ this-\/>\mbox{\hyperlink{a01994_a33d04a772b49de8c5413086bcd426c07}{Check}}();}
\DoxyCodeLine{00628\ \ \ \ \ \ \ \ \ \ \ \ \ \}}
\DoxyCodeLine{00629\ \ \ \ \ \ \ \ \ \ \ \ \ \textcolor{keywordflow}{catch}(...)}
\DoxyCodeLine{00630\ \ \ \ \ \ \ \ \ \ \ \ \ \{}
\DoxyCodeLine{00631\ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \textcolor{comment}{//\ can't\ throw\ from\ a\ destructor}}
\DoxyCodeLine{00632\ \ \ \ \ \ \ \ \ \ \ \ \ \}}
\DoxyCodeLine{00633\ \ \ \ \ \ \ \ \ \}}
\DoxyCodeLine{00634\ \ \ \ \ \}}
\DoxyCodeLine{00635\ \ \ \ \ }
\DoxyCodeLine{00637\ \ \ \ \ \mbox{\hyperlink{a01994}{AAX\_AggregateResult}}\&\ \mbox{\hyperlink{a01994_a19c8acd13ef660d9c2f1f6609ec96cfc}{operator=}}(\mbox{\hyperlink{a00542_a4d8f69a697df7f70c3a8e9b8ee130d2f}{AAX\_Result}}\ inResult)}
\DoxyCodeLine{00638\ \ \ \ \ \{}
\DoxyCodeLine{00639\ \ \ \ \ \ \ \ \ \textcolor{keywordflow}{if}\ (\mbox{\hyperlink{a00539_a5f8c7439f3a706c4f8315a9609811937aeddbd1bb67e3a66e6af54a4b4a7a57b3}{AAX\_SUCCESS}}\ ==\ inResult)}
\DoxyCodeLine{00640\ \ \ \ \ \ \ \ \ \{}
\DoxyCodeLine{00641\ \ \ \ \ \ \ \ \ \ \ \ \ ++mNumSucceeded;}
\DoxyCodeLine{00642\ \ \ \ \ \ \ \ \ \}}
\DoxyCodeLine{00643\ \ \ \ \ \ \ \ \ \textcolor{keywordflow}{else}}
\DoxyCodeLine{00644\ \ \ \ \ \ \ \ \ \{}
\DoxyCodeLine{00645\ \ \ \ \ \ \ \ \ \ \ \ \ mLastFailure\ =\ inResult;}
\DoxyCodeLine{00646\ \ \ \ \ \ \ \ \ \ \ \ \ ++mNumFailed;}
\DoxyCodeLine{00647\ \ \ \ \ \ \ \ \ \}}
\DoxyCodeLine{00648\ \ \ \ \ \ \ \ \ }
\DoxyCodeLine{00649\ \ \ \ \ \ \ \ \ \textcolor{keywordflow}{return}\ *\textcolor{keyword}{this};}
\DoxyCodeLine{00650\ \ \ \ \ \}}
\DoxyCodeLine{00651\ }
\DoxyCodeLine{00653\ \ \ \ \ \textcolor{keyword}{operator}\ \mbox{\hyperlink{a00542_a4d8f69a697df7f70c3a8e9b8ee130d2f}{AAX\_Result}}()}
\DoxyCodeLine{00654\ \ \ \ \ \{}
\DoxyCodeLine{00655\ \ \ \ \ \ \ \ \ \mbox{\hyperlink{a00542_a4d8f69a697df7f70c3a8e9b8ee130d2f}{AAX\_Result}}\ \textcolor{keyword}{const}\ err\ =\ this-\/>\mbox{\hyperlink{a01994_a0013779e238ac59fd554aa2315658a33}{LastFailure}}();}
\DoxyCodeLine{00656\ \ \ \ \ \ \ \ \ this-\/>\mbox{\hyperlink{a01994_a45d3ebe7f67b352af2773396eac0ba14}{Clear}}();}
\DoxyCodeLine{00657\ \ \ \ \ \ \ \ \ \textcolor{keywordflow}{return}\ err;}
\DoxyCodeLine{00658\ \ \ \ \ \}}
\DoxyCodeLine{00659\ \ \ \ \ }
\DoxyCodeLine{00660\ \ \ \ \ \textcolor{keywordtype}{void}\ \mbox{\hyperlink{a01994_a33d04a772b49de8c5413086bcd426c07}{Check}}()\textcolor{keyword}{\ const\ }\{\ \mbox{\hyperlink{a01990}{AAX\_CheckedResult}}\ tempErr(mLastFailure);\ \}}
\DoxyCodeLine{00661\ \ \ \ \ \textcolor{keywordtype}{void}\ \mbox{\hyperlink{a01994_a45d3ebe7f67b352af2773396eac0ba14}{Clear}}()\ \{}
\DoxyCodeLine{00662\ \ \ \ \ \ \ \ \ mLastFailure\ =\ \mbox{\hyperlink{a00539_a5f8c7439f3a706c4f8315a9609811937aeddbd1bb67e3a66e6af54a4b4a7a57b3}{AAX\_SUCCESS}};}
\DoxyCodeLine{00663\ \ \ \ \ \ \ \ \ mNumFailed\ =\ 0;}
\DoxyCodeLine{00664\ \ \ \ \ \ \ \ \ mNumSucceeded\ =\ 0;}
\DoxyCodeLine{00665\ \ \ \ \ \}}
\DoxyCodeLine{00666\ }
\DoxyCodeLine{00667\ \ \ \ \ \mbox{\hyperlink{a00542_a4d8f69a697df7f70c3a8e9b8ee130d2f}{AAX\_Result}}\ \mbox{\hyperlink{a01994_a0013779e238ac59fd554aa2315658a33}{LastFailure}}()\textcolor{keyword}{\ const\ }\{\ \textcolor{keywordflow}{return}\ mLastFailure;\ \}}
\DoxyCodeLine{00668\ \ \ \ \ \textcolor{keywordtype}{int}\ \mbox{\hyperlink{a01994_af566e9d83e13f3df53873e112b90a6d1}{NumFailed}}()\textcolor{keyword}{\ const\ }\{\ \textcolor{keywordflow}{return}\ mNumFailed;\ \}}
\DoxyCodeLine{00669\ \ \ \ \ \textcolor{keywordtype}{int}\ \mbox{\hyperlink{a01994_a4b3ef5ae845c708b2f5d4e94f22fbfee}{NumSucceeded}}()\textcolor{keyword}{\ const\ }\{\ \textcolor{keywordflow}{return}\ mNumSucceeded;\ \}}
\DoxyCodeLine{00670\ \ \ \ \ \textcolor{keywordtype}{int}\ \mbox{\hyperlink{a01994_aff31a39e4489a273a28efa37e4aac781}{NumAttempted}}()\textcolor{keyword}{\ const\ }\{\ \textcolor{keywordflow}{return}\ mNumFailed+mNumSucceeded;\ \}}
\DoxyCodeLine{00671\ \ \ \ \ }
\DoxyCodeLine{00672\ \textcolor{keyword}{private}:}
\DoxyCodeLine{00673\ \ \ \ \ \mbox{\hyperlink{a00542_a4d8f69a697df7f70c3a8e9b8ee130d2f}{AAX\_Result}}\ mLastFailure\{\mbox{\hyperlink{a00539_a5f8c7439f3a706c4f8315a9609811937aeddbd1bb67e3a66e6af54a4b4a7a57b3}{AAX\_SUCCESS}}\};}
\DoxyCodeLine{00674\ \ \ \ \ \textcolor{keywordtype}{int}\ mNumFailed\{0\};}
\DoxyCodeLine{00675\ \ \ \ \ \textcolor{keywordtype}{int}\ mNumSucceeded\{0\};}
\DoxyCodeLine{00676\ \};}
\DoxyCodeLine{00677\ }
\DoxyCodeLine{00678\ \textcolor{preprocessor}{\#endif}}

\end{DoxyCode}
