\hypertarget{a00704_source}{}\doxysection{AAX\+\_\+\+CTask\+Agent.\+h}
\label{a00704_source}\index{AAX\_CTaskAgent.h@{AAX\_CTaskAgent.h}}
\mbox{\hyperlink{a00704}{Go to the documentation of this file.}}
\begin{DoxyCode}{0}
\DoxyCodeLine{00001\ \textcolor{comment}{/*================================================================================================*/}}
\DoxyCodeLine{00002\ \textcolor{comment}{/*}}
\DoxyCodeLine{00003\ \textcolor{comment}{\ *}}
\DoxyCodeLine{00004\ \textcolor{comment}{\ *\ \ Copyright\ 2023-\/2024\ Avid\ Technology,\ Inc.}}
\DoxyCodeLine{00005\ \textcolor{comment}{\ *\ \ All\ rights\ reserved.}}
\DoxyCodeLine{00006\ \textcolor{comment}{\ *\ \ }}
\DoxyCodeLine{00007\ \textcolor{comment}{\ *\ \ This\ file\ is\ part\ of\ the\ Avid\ AAX\ SDK.}}
\DoxyCodeLine{00008\ \textcolor{comment}{\ *\ \ }}
\DoxyCodeLine{00009\ \textcolor{comment}{\ *\ \ The\ AAX\ SDK\ is\ subject\ to\ commercial\ or\ open-\/source\ licensing.}}
\DoxyCodeLine{00010\ \textcolor{comment}{\ *\ \ }}
\DoxyCodeLine{00011\ \textcolor{comment}{\ *\ \ By\ using\ the\ AAX\ SDK,\ you\ agree\ to\ the\ terms\ of\ both\ the\ Avid\ AAX\ SDK\ License}}
\DoxyCodeLine{00012\ \textcolor{comment}{\ *\ \ Agreement\ and\ Avid\ Privacy\ Policy.}}
\DoxyCodeLine{00013\ \textcolor{comment}{\ *\ \ }}
\DoxyCodeLine{00014\ \textcolor{comment}{\ *\ \ AAX\ SDK\ License:\ https://developer.avid.com/aax}}
\DoxyCodeLine{00015\ \textcolor{comment}{\ *\ \ Privacy\ Policy:\ https://www.avid.com/legal/privacy-\/policy-\/statement}}
\DoxyCodeLine{00016\ \textcolor{comment}{\ *\ \ }}
\DoxyCodeLine{00017\ \textcolor{comment}{\ *\ \ Or:\ You\ may\ also\ use\ this\ code\ under\ the\ terms\ of\ the\ GPL\ v3\ (see}}
\DoxyCodeLine{00018\ \textcolor{comment}{\ *\ \ www.gnu.org/licenses).}}
\DoxyCodeLine{00019\ \textcolor{comment}{\ *\ \ }}
\DoxyCodeLine{00020\ \textcolor{comment}{\ *\ \ THE\ AAX\ SDK\ IS\ PROVIDED\ "{}AS\ IS"{}\ WITHOUT\ ANY\ WARRANTY,\ AND\ ALL\ WARRANTIES,\ WHETHER}}
\DoxyCodeLine{00021\ \textcolor{comment}{\ *\ \ EXPRESSED\ OR\ IMPLIED,\ INCLUDING\ MERCHANTABILITY\ AND\ FITNESS\ FOR\ PURPOSE,\ ARE}}
\DoxyCodeLine{00022\ \textcolor{comment}{\ *\ \ DISCLAIMED.}}
\DoxyCodeLine{00023\ \textcolor{comment}{\ *}}
\DoxyCodeLine{00024\ \textcolor{comment}{\ */}}
\DoxyCodeLine{00025\ }
\DoxyCodeLine{00032\ \textcolor{comment}{/*================================================================================================*/}}
\DoxyCodeLine{00033\ }
\DoxyCodeLine{00034\ }
\DoxyCodeLine{00035\ \textcolor{preprocessor}{\#ifndef\ AAX\_CTaskAgent\_H}}
\DoxyCodeLine{00036\ \textcolor{preprocessor}{\#define\ AAX\_CTaskAgent\_H}}
\DoxyCodeLine{00037\ }
\DoxyCodeLine{00038\ \textcolor{preprocessor}{\#include\ "{}\mbox{\hyperlink{a00764}{AAX\_ITaskAgent.h}}"{}}}
\DoxyCodeLine{00039\ \textcolor{preprocessor}{\#include\ <memory>}}
\DoxyCodeLine{00040\ }
\DoxyCodeLine{00041\ \textcolor{keyword}{class\ }\mbox{\hyperlink{a02222}{AAX\_IController}};}
\DoxyCodeLine{00042\ \textcolor{keyword}{class\ }\mbox{\hyperlink{a02266}{AAX\_IEffectParameters}};}
\DoxyCodeLine{00043\ \textcolor{keyword}{class\ }\mbox{\hyperlink{a02342}{AAX\_ITask}};}
\DoxyCodeLine{00044\ }
\DoxyCodeLine{00054\ \textcolor{keyword}{class\ }\mbox{\hyperlink{a01970}{AAX\_CTaskAgent}}\ :\ \textcolor{keyword}{public}\ \mbox{\hyperlink{a02346}{AAX\_ITaskAgent}}}
\DoxyCodeLine{00055\ \{}
\DoxyCodeLine{00056\ \textcolor{keyword}{public}:\ }
\DoxyCodeLine{00057\ \ \ \ \ \mbox{\hyperlink{a01970_ae526292613ba9d084e877c59d9bb28ca}{AAX\_CTaskAgent}}\ (\textcolor{keywordtype}{void})\ =\ \textcolor{keywordflow}{default};}
\DoxyCodeLine{00058\ \ \ \ \ \mbox{\hyperlink{a01970_aa848d3dd1d8cf1f4a35395a5b2daee82}{\string~AAX\_CTaskAgent}}\ (\textcolor{keywordtype}{void})\ \mbox{\hyperlink{a02346_adf3f39c9895d06aa199593dcf16df0c7}{AAX\_OVERRIDE}};}
\DoxyCodeLine{00059\ \ \ \ \ }
\DoxyCodeLine{00060\ \textcolor{keyword}{public}:\ }
\DoxyCodeLine{00061\ }
\DoxyCodeLine{00065\ \ \ \ \ \mbox{\hyperlink{a00542_a4d8f69a697df7f70c3a8e9b8ee130d2f}{AAX\_Result}}\ \mbox{\hyperlink{a01970_ac5db9f2f65af9e890ffc5c28ef23480a}{Initialize}}\ (\mbox{\hyperlink{a01770}{IACFUnknown}}\ *\ iController\ )\ \mbox{\hyperlink{a02346_adf3f39c9895d06aa199593dcf16df0c7}{AAX\_OVERRIDE}};\ }
\DoxyCodeLine{00066\ \ \ \ \ \mbox{\hyperlink{a00542_a4d8f69a697df7f70c3a8e9b8ee130d2f}{AAX\_Result}}\ \mbox{\hyperlink{a01970_a2c5b5ef2c091c62b5a470232e108a6c7}{Uninitialize}}\ (\textcolor{keywordtype}{void})\ \mbox{\hyperlink{a02346_adf3f39c9895d06aa199593dcf16df0c7}{AAX\_OVERRIDE}};\ }
\DoxyCodeLine{00068\ \ \ \ \ }
\DoxyCodeLine{00080\ \ \ \ \ \mbox{\hyperlink{a00542_a4d8f69a697df7f70c3a8e9b8ee130d2f}{AAX\_Result}}\ \mbox{\hyperlink{a01970_a5435391b3391a98a4cef2c1e8cff6400}{AddTask}}(\mbox{\hyperlink{a01770}{IACFUnknown}}\ *\ iTask)\ \mbox{\hyperlink{a02346_adf3f39c9895d06aa199593dcf16df0c7}{AAX\_OVERRIDE}};}
\DoxyCodeLine{00081\ \ \ \ \ \mbox{\hyperlink{a00542_a4d8f69a697df7f70c3a8e9b8ee130d2f}{AAX\_Result}}\ \mbox{\hyperlink{a01970_a95e7ee23f774466f34a0fddd1b4e40de}{CancelAllTasks}}()\ \mbox{\hyperlink{a02346_adf3f39c9895d06aa199593dcf16df0c7}{AAX\_OVERRIDE}};}
\DoxyCodeLine{00083\ \ \ \ \ }
\DoxyCodeLine{00084\ protected:}
\DoxyCodeLine{00085\ \ \ \ \ }
\DoxyCodeLine{00091\ \ \ \ \ virtual\ \mbox{\hyperlink{a00542_a4d8f69a697df7f70c3a8e9b8ee130d2f}{AAX\_Result}}\ \mbox{\hyperlink{a01970_a5435391b3391a98a4cef2c1e8cff6400}{AddTask}}(std::unique\_ptr<\mbox{\hyperlink{a02342}{AAX\_ITask}}>\ iTask);}
\DoxyCodeLine{00092\ \ \ \ \ }
\DoxyCodeLine{00096\ \ \ \ \ virtual\ \mbox{\hyperlink{a00542_a4d8f69a697df7f70c3a8e9b8ee130d2f}{AAX\_Result}}\ \mbox{\hyperlink{a01970_ac81f4dbd5edffea4fad2f0c2e3c7a5fd}{ReceiveTask}}(std::unique\_ptr<\mbox{\hyperlink{a02342}{AAX\_ITask}}>\ iTask);}
\DoxyCodeLine{00097\ \ \ \ \ }
\DoxyCodeLine{00098\ public:\ }
\DoxyCodeLine{00099\ }
\DoxyCodeLine{00106\ \ \ \ \ \mbox{\hyperlink{a02222}{AAX\_IController}}*\ \mbox{\hyperlink{a01970_a56417d1bf17d04cc44e0eef882c01942}{GetController}}\ (\textcolor{keywordtype}{void})\ \{\ \textcolor{keywordflow}{return}\ mController;\ \};}
\DoxyCodeLine{00110\ \ \ \ \ \mbox{\hyperlink{a02266}{AAX\_IEffectParameters}}*\ \mbox{\hyperlink{a01970_ad01a8c5f5be20773fe21ff28dab91c3c}{GetEffectParameters}}\ (\textcolor{keywordtype}{void})\ \{\ \textcolor{keywordflow}{return}\ mEffectParameters;\ \}}
\DoxyCodeLine{00112\ \ \ \ \ }
\DoxyCodeLine{00113\ \textcolor{keyword}{private}:}
\DoxyCodeLine{00114\ \ \ \ \ \textcolor{keywordtype}{void}\ ReleaseObjects();}
\DoxyCodeLine{00115\ }
\DoxyCodeLine{00116\ \ \ \ \ \mbox{\hyperlink{a02222}{AAX\_IController}}*\ mController\ =\ \textcolor{keyword}{nullptr};}
\DoxyCodeLine{00117\ \ \ \ \ \mbox{\hyperlink{a02266}{AAX\_IEffectParameters}}*\ mEffectParameters\ =\ \textcolor{keyword}{nullptr};}
\DoxyCodeLine{00118\ \};}
\DoxyCodeLine{00119\ }
\DoxyCodeLine{00120\ }
\DoxyCodeLine{00121\ \textcolor{preprocessor}{\#endif}}

\end{DoxyCode}
