\hypertarget{a02006}{}\doxysection{AAX\+\_\+\+IACFAutomation\+Delegate Class Reference}
\label{a02006}\index{AAX\_IACFAutomationDelegate@{AAX\_IACFAutomationDelegate}}


{\ttfamily \#include $<$AAX\+\_\+\+IACFAutomation\+Delegate.\+h$>$}



Inheritance diagram for AAX\+\_\+\+IACFAutomation\+Delegate\+:
% FIG 0


Collaboration diagram for AAX\+\_\+\+IACFAutomation\+Delegate\+:
% FIG 1


\doxysubsection{Description}
Versioned interface allowing an AAX plug-\/in to interact with the host\textquotesingle{}s automation system. 

\begin{DoxySeeAlso}{See also}
\mbox{\hyperlink{a00916}{Parameter updates}} 

\mbox{\hyperlink{a02206}{AAX\+\_\+\+IAutomation\+Delegate}} 
\end{DoxySeeAlso}
\doxysubsection*{Public Member Functions}
\begin{DoxyCompactItemize}
\item 
virtual \mbox{\hyperlink{a00542_a4d8f69a697df7f70c3a8e9b8ee130d2f}{AAX\+\_\+\+Result}} \mbox{\hyperlink{a02006_a2de166cf16da311514ab40b1871e4435}{Register\+Parameter}} (\mbox{\hyperlink{a00542_a1440c756fe5cb158b78193b2fc1780d1}{AAX\+\_\+\+CParam\+ID}} i\+Parameter\+ID)=0
\item 
virtual \mbox{\hyperlink{a00542_a4d8f69a697df7f70c3a8e9b8ee130d2f}{AAX\+\_\+\+Result}} \mbox{\hyperlink{a02006_a5d1ff21e71cd04f717808da4b9f83d62}{Unregister\+Parameter}} (\mbox{\hyperlink{a00542_a1440c756fe5cb158b78193b2fc1780d1}{AAX\+\_\+\+CParam\+ID}} i\+Parameter\+ID)=0
\item 
virtual \mbox{\hyperlink{a00542_a4d8f69a697df7f70c3a8e9b8ee130d2f}{AAX\+\_\+\+Result}} \mbox{\hyperlink{a02006_a094075c1a3ddaf01a29a024ce03aabc0}{Post\+Set\+Value\+Request}} (\mbox{\hyperlink{a00542_a1440c756fe5cb158b78193b2fc1780d1}{AAX\+\_\+\+CParam\+ID}} i\+Parameter\+ID, double normalized\+Value) const =0
\item 
virtual \mbox{\hyperlink{a00542_a4d8f69a697df7f70c3a8e9b8ee130d2f}{AAX\+\_\+\+Result}} \mbox{\hyperlink{a02006_ac28f4c2e24869a0e28d1a5f358683b12}{Post\+Current\+Value}} (\mbox{\hyperlink{a00542_a1440c756fe5cb158b78193b2fc1780d1}{AAX\+\_\+\+CParam\+ID}} i\+Parameter\+ID, double normalized\+Value) const =0
\item 
virtual \mbox{\hyperlink{a00542_a4d8f69a697df7f70c3a8e9b8ee130d2f}{AAX\+\_\+\+Result}} \mbox{\hyperlink{a02006_a6685bdc1e53f26be6e7f6d58a31d06d1}{Post\+Touch\+Request}} (\mbox{\hyperlink{a00542_a1440c756fe5cb158b78193b2fc1780d1}{AAX\+\_\+\+CParam\+ID}} i\+Parameter\+ID)=0
\item 
virtual \mbox{\hyperlink{a00542_a4d8f69a697df7f70c3a8e9b8ee130d2f}{AAX\+\_\+\+Result}} \mbox{\hyperlink{a02006_a192c9c9a4af9c29caa763753f59fa59a}{Post\+Release\+Request}} (\mbox{\hyperlink{a00542_a1440c756fe5cb158b78193b2fc1780d1}{AAX\+\_\+\+CParam\+ID}} i\+Parameter\+ID)=0
\item 
virtual \mbox{\hyperlink{a00542_a4d8f69a697df7f70c3a8e9b8ee130d2f}{AAX\+\_\+\+Result}} \mbox{\hyperlink{a02006_a6183efcf15bd190cb99c6287be007d52}{Get\+Touch\+State}} (\mbox{\hyperlink{a00542_a1440c756fe5cb158b78193b2fc1780d1}{AAX\+\_\+\+CParam\+ID}} i\+Parameter\+ID, \mbox{\hyperlink{a00542_aa216506530f1d19a2965931ced2b274b}{AAX\+\_\+\+CBoolean}} $\ast$o\+Touched)=0
\end{DoxyCompactItemize}
\doxysubsubsection*{Public Member Functions inherited from \mbox{\hyperlink{a01770}{IACFUnknown}}}
\begin{DoxyCompactItemize}
\item 
virtual BEGIN\+\_\+\+ACFINTERFACE ACFRESULT ACFMETHODCALLTYPE \mbox{\hyperlink{a01770_a8b7f0ae9c78d007ca76aa462ebe53135}{Query\+Interface}} (const \mbox{\hyperlink{a00308_a59df0b41744eee7a066787aaedf97f67}{acf\+IID}} \&iid, void $\ast$$\ast$pp\+Out)=0
\begin{DoxyCompactList}\small\item\em Returns pointers to supported interfaces. \end{DoxyCompactList}\item 
virtual acf\+UInt32 ACFMETHODCALLTYPE \mbox{\hyperlink{a01770_aa9c7a5b9dff341092b7b86bb9b3a58fb}{Add\+Ref}} (void)=0
\begin{DoxyCompactList}\small\item\em Increments reference count. \end{DoxyCompactList}\item 
virtual acf\+UInt32 ACFMETHODCALLTYPE \mbox{\hyperlink{a01770_afabd38cec0a9ed37f1d3e8644a70ac41}{Release}} (void)=0
\begin{DoxyCompactList}\small\item\em Decrements reference count. \end{DoxyCompactList}\end{DoxyCompactItemize}


\doxysubsection{Member Function Documentation}
\mbox{\Hypertarget{a02006_a2de166cf16da311514ab40b1871e4435}\label{a02006_a2de166cf16da311514ab40b1871e4435}} 
\index{AAX\_IACFAutomationDelegate@{AAX\_IACFAutomationDelegate}!RegisterParameter@{RegisterParameter}}
\index{RegisterParameter@{RegisterParameter}!AAX\_IACFAutomationDelegate@{AAX\_IACFAutomationDelegate}}
\doxysubsubsection{\texorpdfstring{RegisterParameter()}{RegisterParameter()}}
{\footnotesize\ttfamily virtual \mbox{\hyperlink{a00542_a4d8f69a697df7f70c3a8e9b8ee130d2f}{AAX\+\_\+\+Result}} AAX\+\_\+\+IACFAutomation\+Delegate\+::\+Register\+Parameter (\begin{DoxyParamCaption}\item[{\mbox{\hyperlink{a00542_a1440c756fe5cb158b78193b2fc1780d1}{AAX\+\_\+\+CParam\+ID}}}]{i\+Parameter\+ID }\end{DoxyParamCaption})\hspace{0.3cm}{\ttfamily [pure virtual]}}





Register a control with the automation system using a char$\ast$ based control identifier

The automation delegate owns a list of the IDs of all of the parameters that have been registered with it. This list is used to set up listeners for all of the registered parameters such that the automation delegate may update the plug-\/in when the state of any of the registered parameters have been modified.

\begin{DoxySeeAlso}{See also}
\mbox{\hyperlink{a02206_ab1c1d4292460119b22d68247150cc1a0}{AAX\+\_\+\+IAutomation\+Delegate\+::\+Unregister\+Parameter()}}
\end{DoxySeeAlso}

\begin{DoxyParams}[1]{Parameters}
\mbox{\texttt{ in}}  & {\em i\+Parameter\+ID} & Parameter ID that is being registered   \\
\hline
\end{DoxyParams}
\mbox{\Hypertarget{a02006_a5d1ff21e71cd04f717808da4b9f83d62}\label{a02006_a5d1ff21e71cd04f717808da4b9f83d62}} 
\index{AAX\_IACFAutomationDelegate@{AAX\_IACFAutomationDelegate}!UnregisterParameter@{UnregisterParameter}}
\index{UnregisterParameter@{UnregisterParameter}!AAX\_IACFAutomationDelegate@{AAX\_IACFAutomationDelegate}}
\doxysubsubsection{\texorpdfstring{UnregisterParameter()}{UnregisterParameter()}}
{\footnotesize\ttfamily virtual \mbox{\hyperlink{a00542_a4d8f69a697df7f70c3a8e9b8ee130d2f}{AAX\+\_\+\+Result}} AAX\+\_\+\+IACFAutomation\+Delegate\+::\+Unregister\+Parameter (\begin{DoxyParamCaption}\item[{\mbox{\hyperlink{a00542_a1440c756fe5cb158b78193b2fc1780d1}{AAX\+\_\+\+CParam\+ID}}}]{i\+Parameter\+ID }\end{DoxyParamCaption})\hspace{0.3cm}{\ttfamily [pure virtual]}}





Unregister a control with the automation system using a char$\ast$ based control identifier

\begin{DoxyNote}{Note}
All registered controls should be unregistered or the system might leak.
\end{DoxyNote}
\begin{DoxySeeAlso}{See also}
\mbox{\hyperlink{a02206_a4d91efb2d922729d02e2ea7d7a05ed10}{AAX\+\_\+\+IAutomation\+Delegate\+::\+Register\+Parameter()}}
\end{DoxySeeAlso}

\begin{DoxyParams}[1]{Parameters}
\mbox{\texttt{ in}}  & {\em i\+Parameter\+ID} & Parameter ID that is being registered   \\
\hline
\end{DoxyParams}
\mbox{\Hypertarget{a02006_a094075c1a3ddaf01a29a024ce03aabc0}\label{a02006_a094075c1a3ddaf01a29a024ce03aabc0}} 
\index{AAX\_IACFAutomationDelegate@{AAX\_IACFAutomationDelegate}!PostSetValueRequest@{PostSetValueRequest}}
\index{PostSetValueRequest@{PostSetValueRequest}!AAX\_IACFAutomationDelegate@{AAX\_IACFAutomationDelegate}}
\doxysubsubsection{\texorpdfstring{PostSetValueRequest()}{PostSetValueRequest()}}
{\footnotesize\ttfamily virtual \mbox{\hyperlink{a00542_a4d8f69a697df7f70c3a8e9b8ee130d2f}{AAX\+\_\+\+Result}} AAX\+\_\+\+IACFAutomation\+Delegate\+::\+Post\+Set\+Value\+Request (\begin{DoxyParamCaption}\item[{\mbox{\hyperlink{a00542_a1440c756fe5cb158b78193b2fc1780d1}{AAX\+\_\+\+CParam\+ID}}}]{i\+Parameter\+ID,  }\item[{double}]{normalized\+Value }\end{DoxyParamCaption}) const\hspace{0.3cm}{\ttfamily [pure virtual]}}





Submits a request for the given parameter\textquotesingle{}s value to be changed


\begin{DoxyParams}[1]{Parameters}
\mbox{\texttt{ in}}  & {\em i\+Parameter\+ID} & ID of the parameter for which a change is requested \\
\hline
\mbox{\texttt{ in}}  & {\em normalized\+Value} & The requested new parameter value, formatted as a double and normalized to \mbox{[}0 1\mbox{]}   \\
\hline
\end{DoxyParams}
\mbox{\Hypertarget{a02006_ac28f4c2e24869a0e28d1a5f358683b12}\label{a02006_ac28f4c2e24869a0e28d1a5f358683b12}} 
\index{AAX\_IACFAutomationDelegate@{AAX\_IACFAutomationDelegate}!PostCurrentValue@{PostCurrentValue}}
\index{PostCurrentValue@{PostCurrentValue}!AAX\_IACFAutomationDelegate@{AAX\_IACFAutomationDelegate}}
\doxysubsubsection{\texorpdfstring{PostCurrentValue()}{PostCurrentValue()}}
{\footnotesize\ttfamily virtual \mbox{\hyperlink{a00542_a4d8f69a697df7f70c3a8e9b8ee130d2f}{AAX\+\_\+\+Result}} AAX\+\_\+\+IACFAutomation\+Delegate\+::\+Post\+Current\+Value (\begin{DoxyParamCaption}\item[{\mbox{\hyperlink{a00542_a1440c756fe5cb158b78193b2fc1780d1}{AAX\+\_\+\+CParam\+ID}}}]{i\+Parameter\+ID,  }\item[{double}]{normalized\+Value }\end{DoxyParamCaption}) const\hspace{0.3cm}{\ttfamily [pure virtual]}}





Notifies listeners that a parameter\textquotesingle{}s value has changed


\begin{DoxyParams}[1]{Parameters}
\mbox{\texttt{ in}}  & {\em i\+Parameter\+ID} & ID of the parameter that has been updated \\
\hline
\mbox{\texttt{ in}}  & {\em normalized\+Value} & The current parameter value, formatted as a double and normalized to \mbox{[}0 1\mbox{]}   \\
\hline
\end{DoxyParams}
\mbox{\Hypertarget{a02006_a6685bdc1e53f26be6e7f6d58a31d06d1}\label{a02006_a6685bdc1e53f26be6e7f6d58a31d06d1}} 
\index{AAX\_IACFAutomationDelegate@{AAX\_IACFAutomationDelegate}!PostTouchRequest@{PostTouchRequest}}
\index{PostTouchRequest@{PostTouchRequest}!AAX\_IACFAutomationDelegate@{AAX\_IACFAutomationDelegate}}
\doxysubsubsection{\texorpdfstring{PostTouchRequest()}{PostTouchRequest()}}
{\footnotesize\ttfamily virtual \mbox{\hyperlink{a00542_a4d8f69a697df7f70c3a8e9b8ee130d2f}{AAX\+\_\+\+Result}} AAX\+\_\+\+IACFAutomation\+Delegate\+::\+Post\+Touch\+Request (\begin{DoxyParamCaption}\item[{\mbox{\hyperlink{a00542_a1440c756fe5cb158b78193b2fc1780d1}{AAX\+\_\+\+CParam\+ID}}}]{i\+Parameter\+ID }\end{DoxyParamCaption})\hspace{0.3cm}{\ttfamily [pure virtual]}}





Requests that the given parameter be \char`\"{}touched\char`\"{}, i.\+e. locked for updates by the current client


\begin{DoxyParams}[1]{Parameters}
\mbox{\texttt{ in}}  & {\em i\+Parameter\+ID} & ID of the parameter that will be touched   \\
\hline
\end{DoxyParams}
\mbox{\Hypertarget{a02006_a192c9c9a4af9c29caa763753f59fa59a}\label{a02006_a192c9c9a4af9c29caa763753f59fa59a}} 
\index{AAX\_IACFAutomationDelegate@{AAX\_IACFAutomationDelegate}!PostReleaseRequest@{PostReleaseRequest}}
\index{PostReleaseRequest@{PostReleaseRequest}!AAX\_IACFAutomationDelegate@{AAX\_IACFAutomationDelegate}}
\doxysubsubsection{\texorpdfstring{PostReleaseRequest()}{PostReleaseRequest()}}
{\footnotesize\ttfamily virtual \mbox{\hyperlink{a00542_a4d8f69a697df7f70c3a8e9b8ee130d2f}{AAX\+\_\+\+Result}} AAX\+\_\+\+IACFAutomation\+Delegate\+::\+Post\+Release\+Request (\begin{DoxyParamCaption}\item[{\mbox{\hyperlink{a00542_a1440c756fe5cb158b78193b2fc1780d1}{AAX\+\_\+\+CParam\+ID}}}]{i\+Parameter\+ID }\end{DoxyParamCaption})\hspace{0.3cm}{\ttfamily [pure virtual]}}





Requests that the given parameter be \char`\"{}released\char`\"{}, i.\+e. available for updates from any client


\begin{DoxyParams}[1]{Parameters}
\mbox{\texttt{ in}}  & {\em i\+Parameter\+ID} & ID of the parameter that will be released   \\
\hline
\end{DoxyParams}
\mbox{\Hypertarget{a02006_a6183efcf15bd190cb99c6287be007d52}\label{a02006_a6183efcf15bd190cb99c6287be007d52}} 
\index{AAX\_IACFAutomationDelegate@{AAX\_IACFAutomationDelegate}!GetTouchState@{GetTouchState}}
\index{GetTouchState@{GetTouchState}!AAX\_IACFAutomationDelegate@{AAX\_IACFAutomationDelegate}}
\doxysubsubsection{\texorpdfstring{GetTouchState()}{GetTouchState()}}
{\footnotesize\ttfamily virtual \mbox{\hyperlink{a00542_a4d8f69a697df7f70c3a8e9b8ee130d2f}{AAX\+\_\+\+Result}} AAX\+\_\+\+IACFAutomation\+Delegate\+::\+Get\+Touch\+State (\begin{DoxyParamCaption}\item[{\mbox{\hyperlink{a00542_a1440c756fe5cb158b78193b2fc1780d1}{AAX\+\_\+\+CParam\+ID}}}]{i\+Parameter\+ID,  }\item[{\mbox{\hyperlink{a00542_aa216506530f1d19a2965931ced2b274b}{AAX\+\_\+\+CBoolean}} $\ast$}]{o\+Touched }\end{DoxyParamCaption})\hspace{0.3cm}{\ttfamily [pure virtual]}}





Gets the current touched state of a parameter


\begin{DoxyParams}[1]{Parameters}
\mbox{\texttt{ in}}  & {\em i\+Parameter\+ID} & ID of the parameter that is being queried \\
\hline
\mbox{\texttt{ out}}  & {\em o\+Touched} & The current touch state of the parameter   \\
\hline
\end{DoxyParams}


The documentation for this class was generated from the following file\+:\begin{DoxyCompactItemize}
\item 
\mbox{\hyperlink{a00650}{AAX\+\_\+\+IACFAutomation\+Delegate.\+h}}\end{DoxyCompactItemize}
