\hypertarget{a00725_source}{}\doxysection{AAX\+\_\+\+CSession\+Document\+Client.\+h}
\label{a00725_source}\index{AAX\_CSessionDocumentClient.h@{AAX\_CSessionDocumentClient.h}}
\mbox{\hyperlink{a00725}{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\ Avid\ Technology,\ Inc.}}
\DoxyCodeLine{00005\ \textcolor{comment}{\ *\ \ All\ rights\ reserved.}}
\DoxyCodeLine{00006\ \textcolor{comment}{\ *\ \ }}
\DoxyCodeLine{00007\ \textcolor{comment}{\ *\ \ CONFIDENTIAL:\ this\ document\ contains\ confidential\ information\ of\ Avid.\ Do}}
\DoxyCodeLine{00008\ \textcolor{comment}{\ *\ \ not\ disclose\ to\ any\ third\ party.\ Use\ of\ the\ information\ contained\ in\ this}}
\DoxyCodeLine{00009\ \textcolor{comment}{\ *\ \ document\ is\ subject\ to\ an\ Avid\ SDK\ license.}}
\DoxyCodeLine{00010\ \textcolor{comment}{\ *}}
\DoxyCodeLine{00011\ \textcolor{comment}{\ */}}
\DoxyCodeLine{00012\ }
\DoxyCodeLine{00016\ \textcolor{comment}{/*================================================================================================*/}}
\DoxyCodeLine{00017\ }
\DoxyCodeLine{00018\ \textcolor{preprocessor}{\#pragma\ once}}
\DoxyCodeLine{00019\ \textcolor{preprocessor}{\#ifndef\ AAX\_CSessionDocumentClient\_H}}
\DoxyCodeLine{00020\ \textcolor{preprocessor}{\#define\ AAX\_CSessionDocumentClient\_H}}
\DoxyCodeLine{00021\ }
\DoxyCodeLine{00022\ \textcolor{preprocessor}{\#include\ "{}\mbox{\hyperlink{a00731}{AAX\_ISessionDocumentClient.h}}"{}}}
\DoxyCodeLine{00023\ \textcolor{preprocessor}{\#include\ <memory>}}
\DoxyCodeLine{00024\ }
\DoxyCodeLine{00025\ \textcolor{preprocessor}{\#ifdef\ \_\_clang\_\_}}
\DoxyCodeLine{00026\ \textcolor{preprocessor}{\#pragma\ clang\ diagnostic\ push}}
\DoxyCodeLine{00027\ \textcolor{preprocessor}{\#pragma\ clang\ diagnostic\ ignored\ "{}-\/Wunused-\/parameter"{}}}
\DoxyCodeLine{00028\ \textcolor{preprocessor}{\#endif}}
\DoxyCodeLine{00029\ }
\DoxyCodeLine{00030\ \textcolor{keyword}{class\ }\mbox{\hyperlink{a02201}{AAX\_IController}};}
\DoxyCodeLine{00031\ \textcolor{keyword}{class\ }\mbox{\hyperlink{a02245}{AAX\_IEffectParameters}};}
\DoxyCodeLine{00032\ \textcolor{keyword}{class\ }\mbox{\hyperlink{a02293}{AAX\_ISessionDocument}};}
\DoxyCodeLine{00033\ \textcolor{keyword}{class\ }\mbox{\hyperlink{a02393}{AAX\_VSessionDocument}};}
\DoxyCodeLine{00034\ }
\DoxyCodeLine{00035\ }
\DoxyCodeLine{00038\ \textcolor{keyword}{class\ }\mbox{\hyperlink{a01917}{AAX\_CSessionDocumentClient}}\ :\ \ \ \ \textcolor{keyword}{public}\ \mbox{\hyperlink{a02301}{AAX\_ISessionDocumentClient}}}
\DoxyCodeLine{00039\ \{}
\DoxyCodeLine{00040\ \textcolor{keyword}{public}:\ }
\DoxyCodeLine{00041\ }
\DoxyCodeLine{00042\ \ \ \ \ \mbox{\hyperlink{a01917_affa536979999ca45a249e3eeadcc80ad}{AAX\_CSessionDocumentClient}}(\textcolor{keywordtype}{void});}
\DoxyCodeLine{00043\ \ \ \ \ \mbox{\hyperlink{a01917_a770a031423c851419ff603e210fcc6a5}{\string~AAX\_CSessionDocumentClient}}(\textcolor{keywordtype}{void})\ \mbox{\hyperlink{a00533_ac2f24a5172689ae684344abdcce55463}{AAX\_OVERRIDE}};}
\DoxyCodeLine{00044\ }
\DoxyCodeLine{00045\ \textcolor{keyword}{public}:\ }
\DoxyCodeLine{00046\ }
\DoxyCodeLine{00053\ \ \ \ \ \mbox{\hyperlink{a00533_a4d8f69a697df7f70c3a8e9b8ee130d2f}{AAX\_Result}}\ \mbox{\hyperlink{a01917_a40ffef846d5b47aa257975e506a2edba}{Initialize}}\ (\mbox{\hyperlink{a01757}{IACFUnknown}}\ *\ iUnknown)\ \mbox{\hyperlink{a00533_ac2f24a5172689ae684344abdcce55463}{AAX\_OVERRIDE}};}
\DoxyCodeLine{00057\ \ \ \ \ \mbox{\hyperlink{a00533_a4d8f69a697df7f70c3a8e9b8ee130d2f}{AAX\_Result}}\ \mbox{\hyperlink{a01917_a58046e3e778b8b0b36b9a13e38ecdd7e}{Uninitialize}}\ (\textcolor{keywordtype}{void})\ \mbox{\hyperlink{a00533_ac2f24a5172689ae684344abdcce55463}{AAX\_OVERRIDE}};}
\DoxyCodeLine{00059\ }
\DoxyCodeLine{00066\ \ \ \ \ \mbox{\hyperlink{a00533_a4d8f69a697df7f70c3a8e9b8ee130d2f}{AAX\_Result}}\ \mbox{\hyperlink{a01917_aeba05d292123a286ed06f5157b6de65a}{SetSessionDocument}}(\mbox{\hyperlink{a01757}{IACFUnknown}}\ *\ iSessionDocument)\ \mbox{\hyperlink{a00533_ac2f24a5172689ae684344abdcce55463}{AAX\_OVERRIDE}};}
\DoxyCodeLine{00068\ \ \ \ \ }
\DoxyCodeLine{00075\ \ \ \ \ \mbox{\hyperlink{a00533_a4d8f69a697df7f70c3a8e9b8ee130d2f}{AAX\_Result}}\ \mbox{\hyperlink{a01917_ae0f7fee76ea1bf32d31f179219af0aa7}{NotificationReceived}}(\textcolor{comment}{/*\ AAX\_ENotificationEvent\ */}\ \mbox{\hyperlink{a00533_ac678f9c1fbcc26315d209f71a147a175}{AAX\_CTypeID}}\ \textcolor{comment}{/*inNotificationType*/},\ \textcolor{keyword}{const}\ \textcolor{keywordtype}{void}\ *\ \textcolor{comment}{/*inNotificationData*/},\ uint32\_t\ \textcolor{comment}{/*inNotificationDataSize*/})\ \mbox{\hyperlink{a00533_ac2f24a5172689ae684344abdcce55463}{AAX\_OVERRIDE}}\ \{\ \textcolor{keywordflow}{return}\ \mbox{\hyperlink{a00530_a5f8c7439f3a706c4f8315a9609811937aeddbd1bb67e3a66e6af54a4b4a7a57b3}{AAX\_SUCCESS}};\ \}}
\DoxyCodeLine{00077\ }
\DoxyCodeLine{00078\ \textcolor{keyword}{protected}:\ }
\DoxyCodeLine{00079\ }
\DoxyCodeLine{00091\ \ \ \ \ \textcolor{keyword}{virtual}\ \mbox{\hyperlink{a00533_a4d8f69a697df7f70c3a8e9b8ee130d2f}{AAX\_Result}}\ \mbox{\hyperlink{a01917_a175bdf3141a484f01b7c7807b28fe524}{SessionDocumentWillChange}}()\ \{\ \textcolor{keywordflow}{return}\ \mbox{\hyperlink{a00530_a5f8c7439f3a706c4f8315a9609811937aeddbd1bb67e3a66e6af54a4b4a7a57b3}{AAX\_SUCCESS}};\ \}}
\DoxyCodeLine{00100\ \ \ \ \ \textcolor{keyword}{virtual}\ \mbox{\hyperlink{a00533_a4d8f69a697df7f70c3a8e9b8ee130d2f}{AAX\_Result}}\ \mbox{\hyperlink{a01917_aebb6dd700bf8e125a8765713e7cb9b3c}{SessionDocumentChanged}}()\ \{\ \textcolor{keywordflow}{return}\ \mbox{\hyperlink{a00530_a5f8c7439f3a706c4f8315a9609811937aeddbd1bb67e3a66e6af54a4b4a7a57b3}{AAX\_SUCCESS}};\ \}}
\DoxyCodeLine{00102\ }
\DoxyCodeLine{00110\ \ \ \ \ \mbox{\hyperlink{a02201}{AAX\_IController}}*\ \mbox{\hyperlink{a01917_a9d5228bf8b68a648d5a2bc8b97972168}{GetController}}\ (\textcolor{keywordtype}{void});}
\DoxyCodeLine{00111\ \ \ \ \ \textcolor{keyword}{const}\ \mbox{\hyperlink{a02201}{AAX\_IController}}*\ \mbox{\hyperlink{a01917_afbcbfc5aba669c0595043baa2ed2ebf1}{GetController}}\ (\textcolor{keywordtype}{void})\ \textcolor{keyword}{const};\ }
\DoxyCodeLine{00112\ \ \ \ \ }
\DoxyCodeLine{00117\ \ \ \ \ \mbox{\hyperlink{a02245}{AAX\_IEffectParameters}}*\ \mbox{\hyperlink{a01917_a5f66c4a952f259e05ec2aef96d792bd2}{GetEffectParameters}}\ (\textcolor{keywordtype}{void});}
\DoxyCodeLine{00118\ \ \ \ \ \textcolor{keyword}{const}\ \mbox{\hyperlink{a02245}{AAX\_IEffectParameters}}*\ \mbox{\hyperlink{a01917_a82b74a9ff54b698fae8a3f1ccb60439a}{GetEffectParameters}}\ (\textcolor{keywordtype}{void})\ \textcolor{keyword}{const};\ }
\DoxyCodeLine{00119\ \ \ \ \ }
\DoxyCodeLine{00124\ \ \ \ \ std::shared\_ptr<AAX\_ISessionDocument>\ \mbox{\hyperlink{a01917_acbe0bea97e3b92980b3ec791e423baba}{GetSessionDocument}}\ (\textcolor{keywordtype}{void});}
\DoxyCodeLine{00125\ \ \ \ \ std::shared\_ptr<const\ AAX\_ISessionDocument>\ \mbox{\hyperlink{a01917_a88ae2798fc575dd6dca81a5eb5e24d9c}{GetSessionDocument}}\ (\textcolor{keywordtype}{void})\ \textcolor{keyword}{const};\ }
\DoxyCodeLine{00127\ }
\DoxyCodeLine{00128\ \textcolor{keyword}{private}:}
\DoxyCodeLine{00129\ \ \ \ \ \textcolor{keywordtype}{void}\ ClearInternalState();}
\DoxyCodeLine{00130\ }
\DoxyCodeLine{00131\ \ \ \ \ \textcolor{comment}{//These\ are\ private,\ but\ they\ all\ have\ protected\ accessors.\ }}
\DoxyCodeLine{00132\ \ \ \ \ \mbox{\hyperlink{a00533_a0a58bb9dab931dfe26d8edeb4e5e6319}{AAX\_UNIQUE\_PTR}}(\mbox{\hyperlink{a02201}{AAX\_IController}})\ mController;}
\DoxyCodeLine{00133\ \ \ \ \ \mbox{\hyperlink{a02245}{AAX\_IEffectParameters}}\ *\ mEffectParameters;}
\DoxyCodeLine{00134\ \ \ \ \ std::shared\_ptr<AAX\_VSessionDocument>\ mSessionDocument;}
\DoxyCodeLine{00135\ \};}
\DoxyCodeLine{00136\ }
\DoxyCodeLine{00137\ \textcolor{preprocessor}{\#ifdef\ \_\_clang\_\_}}
\DoxyCodeLine{00138\ \textcolor{preprocessor}{\#pragma\ clang\ diagnostic\ pop}}
\DoxyCodeLine{00139\ \textcolor{preprocessor}{\#endif}}
\DoxyCodeLine{00140\ }
\DoxyCodeLine{00141\ \textcolor{preprocessor}{\#endif\ }\textcolor{comment}{//\ AAX\_CSessionDocumentClient}}

\end{DoxyCode}
