\hypertarget{a02062}{}\doxysection{AAX\+\_\+\+IACFEffect\+GUI Class Reference}
\label{a02062}\index{AAX\_IACFEffectGUI@{AAX\_IACFEffectGUI}}


{\ttfamily \#include $<$AAX\+\_\+\+IACFEffect\+GUI.\+h$>$}



Inheritance diagram for AAX\+\_\+\+IACFEffect\+GUI\+:
% FIG 0


Collaboration diagram for AAX\+\_\+\+IACFEffect\+GUI\+:
% FIG 1


\doxysubsection{Description}
The interface for a AAX Plug-\/in\textquotesingle{}s GUI (graphical user interface). 

This is the interface for an instance of a plug-\/in\textquotesingle{}s GUI that gets exposed to the host application. The AAX host interacts with your plug-\/in\textquotesingle{}s GUI via this interface. See \mbox{\hyperlink{a00892}{GUI interface}}.

The plug-\/in\textquotesingle{}s implementation of this interface is responsible for managing the plug-\/in\textquotesingle{}s window and graphics objects and for defining the interactions between GUI views and the plug-\/in\textquotesingle{}s data model.

At \mbox{\hyperlink{a02062_aac9d8ab88172ac594d86ac2441522fec}{initialization}}, the host provides this interface with a reference to \mbox{\hyperlink{a02222}{AAX\+\_\+\+IController}}. The GUI may use this controller to retrieve a pointer to the plug-\/in\textquotesingle{}s \mbox{\hyperlink{a02266}{AAX\+\_\+\+IEffect\+Parameters}} interface, allowing the GUI to request changes to the plug-\/in\textquotesingle{}s data model in response to view events. In addition, the controller provides a means of querying information from the host such as stem format or sample rate

When managing a plug-\/in\textquotesingle{}s GUI it is important to remember that this is just one of many possible sets of views for the plug-\/in\textquotesingle{}s parameters. Other views and editors, such as automation lanes or control surfaces, also have the ability to synchronously interact with the plug-\/in\textquotesingle{}s abstract data model interface. Therefore, the GUI should not take asymmetric control over the data model, act as a secondary data model, or otherwise assume exclusive ownership of the plug-\/in\textquotesingle{}s state. In general, the data model\textquotesingle{}s abstraction to a pure virtual interface will protect against such aberrations, but this remains an important consideration when managing sophisiticated GUI interactions.

You will most likely inherit your implementation of this interface from \mbox{\hyperlink{a01846}{AAX\+\_\+\+CEffect\+GUI}}, a default implementation that provides basic GUI functionality and which you can override and customize as needed.

The SDK includes several examples of how the GUI interface may be extended and implemented in order to provide support for third-\/party frameworks. These examples can be found in the /\+Extensions/\+GUI directory in the SDK.

\begin{DoxyNote}{Note}
Your implementation of this interface must inherit from \mbox{\hyperlink{a02262}{AAX\+\_\+\+IEffect\+GUI}}.
\end{DoxyNote}
\begin{DoxyRefDesc}{Legacy Porting Notes}
\item[\mbox{\hyperlink{a00880__porting_notes000030}{Legacy Porting Notes}}]In the legacy plug-\/in SDK, these methods were found in CProcess and CEffect\+Process. For additional CProcess methods, see \mbox{\hyperlink{a02266}{AAX\+\_\+\+IEffect\+Parameters}}.\end{DoxyRefDesc}
\doxysubsection*{Public Member Functions}
\begin{Indent}\textbf{ Initialization and uninitialization}\par
\begin{DoxyCompactItemize}
\item 
virtual \mbox{\hyperlink{a00542_a4d8f69a697df7f70c3a8e9b8ee130d2f}{AAX\+\_\+\+Result}} \mbox{\hyperlink{a02062_aac9d8ab88172ac594d86ac2441522fec}{Initialize}} (\mbox{\hyperlink{a01770}{IACFUnknown}} $\ast$i\+Controller)=0
\begin{DoxyCompactList}\small\item\em Main GUI initialization. \end{DoxyCompactList}\item 
virtual \mbox{\hyperlink{a00542_a4d8f69a697df7f70c3a8e9b8ee130d2f}{AAX\+\_\+\+Result}} \mbox{\hyperlink{a02062_ab7d1c3c80a60637f9a9fd1860fe418cb}{Uninitialize}} ()=0
\begin{DoxyCompactList}\small\item\em Main GUI uninitialization. \end{DoxyCompactList}\end{DoxyCompactItemize}
\end{Indent}
\begin{Indent}\textbf{ AAX host and plug-\/in event notification}\par
\begin{DoxyCompactItemize}
\item 
virtual \mbox{\hyperlink{a00542_a4d8f69a697df7f70c3a8e9b8ee130d2f}{AAX\+\_\+\+Result}} \mbox{\hyperlink{a02062_a11a15162cb3c7019d1fabf2994fba6c6}{Notification\+Received}} (\mbox{\hyperlink{a00542_ac678f9c1fbcc26315d209f71a147a175}{AAX\+\_\+\+CType\+ID}} in\+Notification\+Type, const void $\ast$in\+Notification\+Data, uint32\+\_\+t in\+Notification\+Data\+Size)=0
\begin{DoxyCompactList}\small\item\em Notification Hook. \end{DoxyCompactList}\end{DoxyCompactItemize}
\end{Indent}
\begin{Indent}\textbf{ View accessors}\par
\begin{DoxyCompactItemize}
\item 
virtual \mbox{\hyperlink{a00542_a4d8f69a697df7f70c3a8e9b8ee130d2f}{AAX\+\_\+\+Result}} \mbox{\hyperlink{a02062_a50830385c58f104c87b6ef25144b30dd}{Set\+View\+Container}} (\mbox{\hyperlink{a01770}{IACFUnknown}} $\ast$i\+View\+Container)=0
\begin{DoxyCompactList}\small\item\em Provides a handle to the main plug-\/in window. \end{DoxyCompactList}\item 
virtual \mbox{\hyperlink{a00542_a4d8f69a697df7f70c3a8e9b8ee130d2f}{AAX\+\_\+\+Result}} \mbox{\hyperlink{a02062_ae67c876225e9b5c538560d19a842a34c}{Get\+View\+Size}} (\mbox{\hyperlink{a01998}{AAX\+\_\+\+Point}} $\ast$o\+View\+Size) const =0
\begin{DoxyCompactList}\small\item\em Retrieves the size of the plug-\/in window. \end{DoxyCompactList}\end{DoxyCompactItemize}
\end{Indent}
\begin{Indent}\textbf{ GUI update methods}\par
\begin{DoxyCompactItemize}
\item 
virtual \mbox{\hyperlink{a00542_a4d8f69a697df7f70c3a8e9b8ee130d2f}{AAX\+\_\+\+Result}} \mbox{\hyperlink{a02062_a4b132a0bc22ba443027998a56e4eadfb}{Draw}} (\mbox{\hyperlink{a02002}{AAX\+\_\+\+Rect}} $\ast$i\+Draw\+Rect)=0
\begin{DoxyCompactList}\small\item\em DEPRECATED, Not called from host any longer. Your chosen graphics framework should be directly handling draw events from the OS. \end{DoxyCompactList}\item 
virtual \mbox{\hyperlink{a00542_a4d8f69a697df7f70c3a8e9b8ee130d2f}{AAX\+\_\+\+Result}} \mbox{\hyperlink{a02062_aafa484110d39046de1f927f30c9da387}{Timer\+Wakeup}} ()=0
\begin{DoxyCompactList}\small\item\em Periodic wakeup callback for idle-\/time operations. \end{DoxyCompactList}\item 
virtual \mbox{\hyperlink{a00542_a4d8f69a697df7f70c3a8e9b8ee130d2f}{AAX\+\_\+\+Result}} \mbox{\hyperlink{a02062_a45b468fef806611581f748af9301ab4d}{Parameter\+Updated}} (\mbox{\hyperlink{a00542_a1440c756fe5cb158b78193b2fc1780d1}{AAX\+\_\+\+CParam\+ID}} in\+Param\+ID)=0
\begin{DoxyCompactList}\small\item\em Notifies the GUI that a parameter value has changed. \end{DoxyCompactList}\end{DoxyCompactItemize}
\end{Indent}
\begin{Indent}\textbf{ Host interface methods}\par
{\em Miscellaneous methods to provide host-\/specific functionality }\begin{DoxyCompactItemize}
\item 
virtual \mbox{\hyperlink{a00542_a4d8f69a697df7f70c3a8e9b8ee130d2f}{AAX\+\_\+\+Result}} \mbox{\hyperlink{a02062_a81450c5272935689a4fb9c1820d6bba8}{Get\+Custom\+Label}} (\mbox{\hyperlink{a00446_a86f7310877399d9d4d2ea4863d472476}{AAX\+\_\+\+EPlug\+In\+Strings}} i\+Selector, \mbox{\hyperlink{a02330}{AAX\+\_\+\+IString}} $\ast$o\+String) const =0
\begin{DoxyCompactList}\small\item\em Called by host application to retrieve a custom plug-\/in string. \end{DoxyCompactList}\item 
virtual \mbox{\hyperlink{a00542_a4d8f69a697df7f70c3a8e9b8ee130d2f}{AAX\+\_\+\+Result}} \mbox{\hyperlink{a02062_a3922a4b9fef09e88440d7655422c2b96}{Set\+Control\+Highlight\+Info}} (\mbox{\hyperlink{a00542_a1440c756fe5cb158b78193b2fc1780d1}{AAX\+\_\+\+CParam\+ID}} i\+Parameter\+ID, \mbox{\hyperlink{a00542_aa216506530f1d19a2965931ced2b274b}{AAX\+\_\+\+CBoolean}} i\+Is\+Highlighted, \mbox{\hyperlink{a00446_a143056a07989a48e5db3a101f1b12567}{AAX\+\_\+\+EHighlight\+Color}} i\+Color)=0
\begin{DoxyCompactList}\small\item\em Called by host application. Indicates that a control widget should be updated with a highlight color. \end{DoxyCompactList}\end{DoxyCompactItemize}
\end{Indent}
\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{a02062_aac9d8ab88172ac594d86ac2441522fec}\label{a02062_aac9d8ab88172ac594d86ac2441522fec}} 
\index{AAX\_IACFEffectGUI@{AAX\_IACFEffectGUI}!Initialize@{Initialize}}
\index{Initialize@{Initialize}!AAX\_IACFEffectGUI@{AAX\_IACFEffectGUI}}
\doxysubsubsection{\texorpdfstring{Initialize()}{Initialize()}}
{\footnotesize\ttfamily virtual \mbox{\hyperlink{a00542_a4d8f69a697df7f70c3a8e9b8ee130d2f}{AAX\+\_\+\+Result}} AAX\+\_\+\+IACFEffect\+GUI\+::\+Initialize (\begin{DoxyParamCaption}\item[{\mbox{\hyperlink{a01770}{IACFUnknown}} $\ast$}]{i\+Controller }\end{DoxyParamCaption})\hspace{0.3cm}{\ttfamily [pure virtual]}}



Main GUI initialization. 

Called when the GUI is created


\begin{DoxyParams}[1]{Parameters}
\mbox{\texttt{ in}}  & {\em i\+Controller} & A versioned reference that resolves to an \mbox{\hyperlink{a02222}{AAX\+\_\+\+IController}} interface \\
\hline
\end{DoxyParams}


Implemented in \mbox{\hyperlink{a01846_a5fcb43bfa54847abe95c2ff76cc6cb13}{AAX\+\_\+\+CEffect\+GUI}}.

\mbox{\Hypertarget{a02062_ab7d1c3c80a60637f9a9fd1860fe418cb}\label{a02062_ab7d1c3c80a60637f9a9fd1860fe418cb}} 
\index{AAX\_IACFEffectGUI@{AAX\_IACFEffectGUI}!Uninitialize@{Uninitialize}}
\index{Uninitialize@{Uninitialize}!AAX\_IACFEffectGUI@{AAX\_IACFEffectGUI}}
\doxysubsubsection{\texorpdfstring{Uninitialize()}{Uninitialize()}}
{\footnotesize\ttfamily virtual \mbox{\hyperlink{a00542_a4d8f69a697df7f70c3a8e9b8ee130d2f}{AAX\+\_\+\+Result}} AAX\+\_\+\+IACFEffect\+GUI\+::\+Uninitialize (\begin{DoxyParamCaption}{ }\end{DoxyParamCaption})\hspace{0.3cm}{\ttfamily [pure virtual]}}



Main GUI uninitialization. 

Called when the GUI is destroyed. Frees the GUI. 

Implemented in \mbox{\hyperlink{a01846_a7d3230457433a1a8204114e57fef7bef}{AAX\+\_\+\+CEffect\+GUI}}.

\mbox{\Hypertarget{a02062_a11a15162cb3c7019d1fabf2994fba6c6}\label{a02062_a11a15162cb3c7019d1fabf2994fba6c6}} 
\index{AAX\_IACFEffectGUI@{AAX\_IACFEffectGUI}!NotificationReceived@{NotificationReceived}}
\index{NotificationReceived@{NotificationReceived}!AAX\_IACFEffectGUI@{AAX\_IACFEffectGUI}}
\doxysubsubsection{\texorpdfstring{NotificationReceived()}{NotificationReceived()}}
{\footnotesize\ttfamily virtual \mbox{\hyperlink{a00542_a4d8f69a697df7f70c3a8e9b8ee130d2f}{AAX\+\_\+\+Result}} AAX\+\_\+\+IACFEffect\+GUI\+::\+Notification\+Received (\begin{DoxyParamCaption}\item[{\mbox{\hyperlink{a00542_ac678f9c1fbcc26315d209f71a147a175}{AAX\+\_\+\+CType\+ID}}}]{in\+Notification\+Type,  }\item[{const void $\ast$}]{in\+Notification\+Data,  }\item[{uint32\+\_\+t}]{in\+Notification\+Data\+Size }\end{DoxyParamCaption})\hspace{0.3cm}{\ttfamily [pure virtual]}}



Notification Hook. 

Called from the host to deliver notifications to this object.

Look at the \mbox{\hyperlink{a00446_afab5ea2cfd731fc8f163b6caa685406e}{AAX\+\_\+\+ENotification\+Event}} enumeration to see a description of events you can listen for and the data they come with.


\begin{DoxyItemize}
\item \begin{DoxyNote}{Note}
some notifications are sent only to the plug-\/in GUI while other notifications are sent only to the plug-\/in data model. If you are not seeing an expected notification, try checking the other plug-\/in objects\textquotesingle{} {\ttfamily \mbox{\hyperlink{a02062_a11a15162cb3c7019d1fabf2994fba6c6}{Notification\+Received()}}} methods.
\end{DoxyNote}

\item \begin{DoxyNote}{Note}
the host may dispatch notifications synchronously or asynchronously, and calls to this method may occur concurrently on multiple threads.
\end{DoxyNote}
A plug-\/in may also dispatch custom notifications using \mbox{\hyperlink{a02222_a0384f820cecf8cf7671057060bf5ba4f}{AAX\+\_\+\+IController\+::\+Send\+Notification()}}. Custom notifications will be posted back to the plug-\/in\textquotesingle{}s other objects which support a {\ttfamily \mbox{\hyperlink{a02062_a11a15162cb3c7019d1fabf2994fba6c6}{Notification\+Received()}}} method (e.\+g. the data model).
\end{DoxyItemize}


\begin{DoxyParams}[1]{Parameters}
\mbox{\texttt{ in}}  & {\em in\+Notification\+Type} & Type of notification being received. Notifications form the host are one of \mbox{\hyperlink{a00446_afab5ea2cfd731fc8f163b6caa685406e}{AAX\+\_\+\+ENotification\+Event}} \\
\hline
\mbox{\texttt{ in}}  & {\em in\+Notification\+Data} & Block of incoming notification data \\
\hline
\mbox{\texttt{ in}}  & {\em in\+Notification\+Data\+Size} & Size of {\ttfamily in\+Notification\+Data}, in bytes \\
\hline
\end{DoxyParams}


Implemented in \mbox{\hyperlink{a01846_af00b27d16a45bccf632a445491c56833}{AAX\+\_\+\+CEffect\+GUI}}.

\mbox{\Hypertarget{a02062_a50830385c58f104c87b6ef25144b30dd}\label{a02062_a50830385c58f104c87b6ef25144b30dd}} 
\index{AAX\_IACFEffectGUI@{AAX\_IACFEffectGUI}!SetViewContainer@{SetViewContainer}}
\index{SetViewContainer@{SetViewContainer}!AAX\_IACFEffectGUI@{AAX\_IACFEffectGUI}}
\doxysubsubsection{\texorpdfstring{SetViewContainer()}{SetViewContainer()}}
{\footnotesize\ttfamily virtual \mbox{\hyperlink{a00542_a4d8f69a697df7f70c3a8e9b8ee130d2f}{AAX\+\_\+\+Result}} AAX\+\_\+\+IACFEffect\+GUI\+::\+Set\+View\+Container (\begin{DoxyParamCaption}\item[{\mbox{\hyperlink{a01770}{IACFUnknown}} $\ast$}]{i\+View\+Container }\end{DoxyParamCaption})\hspace{0.3cm}{\ttfamily [pure virtual]}}



Provides a handle to the main plug-\/in window. 


\begin{DoxyParams}[1]{Parameters}
\mbox{\texttt{ in}}  & {\em i\+View\+Container} & An \mbox{\hyperlink{a02354}{AAX\+\_\+\+IView\+Container}} providing a native handle to the plug-\/in\textquotesingle{}s window \\
\hline
\end{DoxyParams}


Implemented in \mbox{\hyperlink{a01846_a5ba8d0cf5326583ed9e2a4b9752e4287}{AAX\+\_\+\+CEffect\+GUI}}.

\mbox{\Hypertarget{a02062_ae67c876225e9b5c538560d19a842a34c}\label{a02062_ae67c876225e9b5c538560d19a842a34c}} 
\index{AAX\_IACFEffectGUI@{AAX\_IACFEffectGUI}!GetViewSize@{GetViewSize}}
\index{GetViewSize@{GetViewSize}!AAX\_IACFEffectGUI@{AAX\_IACFEffectGUI}}
\doxysubsubsection{\texorpdfstring{GetViewSize()}{GetViewSize()}}
{\footnotesize\ttfamily virtual \mbox{\hyperlink{a00542_a4d8f69a697df7f70c3a8e9b8ee130d2f}{AAX\+\_\+\+Result}} AAX\+\_\+\+IACFEffect\+GUI\+::\+Get\+View\+Size (\begin{DoxyParamCaption}\item[{\mbox{\hyperlink{a01998}{AAX\+\_\+\+Point}} $\ast$}]{o\+View\+Size }\end{DoxyParamCaption}) const\hspace{0.3cm}{\ttfamily [pure virtual]}}



Retrieves the size of the plug-\/in window. 

\begin{DoxySeeAlso}{See also}
\mbox{\hyperlink{a02354_ad750e9f0231c61ab32114276ee8cb5f7}{AAX\+\_\+\+IView\+Container\+::\+Set\+View\+Size()}}
\end{DoxySeeAlso}

\begin{DoxyParams}[1]{Parameters}
\mbox{\texttt{ out}}  & {\em o\+View\+Size} & The size of the plug-\/in window as a point (width, height) \\
\hline
\end{DoxyParams}


Implemented in \mbox{\hyperlink{a01846_a23c51648957128cf563b31e1a5fbc249}{AAX\+\_\+\+CEffect\+GUI}}.

\mbox{\Hypertarget{a02062_a4b132a0bc22ba443027998a56e4eadfb}\label{a02062_a4b132a0bc22ba443027998a56e4eadfb}} 
\index{AAX\_IACFEffectGUI@{AAX\_IACFEffectGUI}!Draw@{Draw}}
\index{Draw@{Draw}!AAX\_IACFEffectGUI@{AAX\_IACFEffectGUI}}
\doxysubsubsection{\texorpdfstring{Draw()}{Draw()}}
{\footnotesize\ttfamily virtual \mbox{\hyperlink{a00542_a4d8f69a697df7f70c3a8e9b8ee130d2f}{AAX\+\_\+\+Result}} AAX\+\_\+\+IACFEffect\+GUI\+::\+Draw (\begin{DoxyParamCaption}\item[{\mbox{\hyperlink{a02002}{AAX\+\_\+\+Rect}} $\ast$}]{i\+Draw\+Rect }\end{DoxyParamCaption})\hspace{0.3cm}{\ttfamily [pure virtual]}}



DEPRECATED, Not called from host any longer. Your chosen graphics framework should be directly handling draw events from the OS. 



Implemented in \mbox{\hyperlink{a01846_a7a6e6ffea34c7c85f6e3d00bb6e564e0}{AAX\+\_\+\+CEffect\+GUI}}.

\mbox{\Hypertarget{a02062_aafa484110d39046de1f927f30c9da387}\label{a02062_aafa484110d39046de1f927f30c9da387}} 
\index{AAX\_IACFEffectGUI@{AAX\_IACFEffectGUI}!TimerWakeup@{TimerWakeup}}
\index{TimerWakeup@{TimerWakeup}!AAX\_IACFEffectGUI@{AAX\_IACFEffectGUI}}
\doxysubsubsection{\texorpdfstring{TimerWakeup()}{TimerWakeup()}}
{\footnotesize\ttfamily virtual \mbox{\hyperlink{a00542_a4d8f69a697df7f70c3a8e9b8ee130d2f}{AAX\+\_\+\+Result}} AAX\+\_\+\+IACFEffect\+GUI\+::\+Timer\+Wakeup (\begin{DoxyParamCaption}{ }\end{DoxyParamCaption})\hspace{0.3cm}{\ttfamily [pure virtual]}}



Periodic wakeup callback for idle-\/time operations. 

GUI animation events such as meter updates should be triggered from this method.

This method is called from the host\textquotesingle{}s main thread. In general, it should be driven at approximately one call per 30 ms. However, the wakeup is not guaranteed to be called at any regular interval -\/ for example, it could be held off by a high real-\/time processing load -\/ and there is no host contract regarding maximum latency between wakeup calls.

This wakeup runs continuously and cannot be armed/disarmed by the plug-\/in. 

Implemented in \mbox{\hyperlink{a01846_a0b7bada7e7d72da637bde2daa79f71ee}{AAX\+\_\+\+CEffect\+GUI}}.

\mbox{\Hypertarget{a02062_a45b468fef806611581f748af9301ab4d}\label{a02062_a45b468fef806611581f748af9301ab4d}} 
\index{AAX\_IACFEffectGUI@{AAX\_IACFEffectGUI}!ParameterUpdated@{ParameterUpdated}}
\index{ParameterUpdated@{ParameterUpdated}!AAX\_IACFEffectGUI@{AAX\_IACFEffectGUI}}
\doxysubsubsection{\texorpdfstring{ParameterUpdated()}{ParameterUpdated()}}
{\footnotesize\ttfamily virtual \mbox{\hyperlink{a00542_a4d8f69a697df7f70c3a8e9b8ee130d2f}{AAX\+\_\+\+Result}} AAX\+\_\+\+IACFEffect\+GUI\+::\+Parameter\+Updated (\begin{DoxyParamCaption}\item[{\mbox{\hyperlink{a00542_a1440c756fe5cb158b78193b2fc1780d1}{AAX\+\_\+\+CParam\+ID}}}]{in\+Param\+ID }\end{DoxyParamCaption})\hspace{0.3cm}{\ttfamily [pure virtual]}}



Notifies the GUI that a parameter value has changed. 

This method is called by the host whenever a parameter value has been modified

This method may be called on a non-\/main thread 

Implemented in \mbox{\hyperlink{a01846_aa86943fbaf8920b533ea31a7669fb009}{AAX\+\_\+\+CEffect\+GUI}}.

\mbox{\Hypertarget{a02062_a81450c5272935689a4fb9c1820d6bba8}\label{a02062_a81450c5272935689a4fb9c1820d6bba8}} 
\index{AAX\_IACFEffectGUI@{AAX\_IACFEffectGUI}!GetCustomLabel@{GetCustomLabel}}
\index{GetCustomLabel@{GetCustomLabel}!AAX\_IACFEffectGUI@{AAX\_IACFEffectGUI}}
\doxysubsubsection{\texorpdfstring{GetCustomLabel()}{GetCustomLabel()}}
{\footnotesize\ttfamily virtual \mbox{\hyperlink{a00542_a4d8f69a697df7f70c3a8e9b8ee130d2f}{AAX\+\_\+\+Result}} AAX\+\_\+\+IACFEffect\+GUI\+::\+Get\+Custom\+Label (\begin{DoxyParamCaption}\item[{\mbox{\hyperlink{a00446_a86f7310877399d9d4d2ea4863d472476}{AAX\+\_\+\+EPlug\+In\+Strings}}}]{i\+Selector,  }\item[{\mbox{\hyperlink{a02330}{AAX\+\_\+\+IString}} $\ast$}]{o\+String }\end{DoxyParamCaption}) const\hspace{0.3cm}{\ttfamily [pure virtual]}}



Called by host application to retrieve a custom plug-\/in string. 

If no string is provided then the host\textquotesingle{}s default will be used.


\begin{DoxyParams}[1]{Parameters}
\mbox{\texttt{ in}}  & {\em i\+Selector} & The requested strong. One of \mbox{\hyperlink{a00446_a86f7310877399d9d4d2ea4863d472476}{AAX\+\_\+\+EPlug\+In\+Strings}} \\
\hline
\mbox{\texttt{ out}}  & {\em o\+String} & The plug-\/in\textquotesingle{}s custom value for the requested string \\
\hline
\end{DoxyParams}


Implemented in \mbox{\hyperlink{a01846_aa903a721baf5a5cfd0b959d0d8dbb874}{AAX\+\_\+\+CEffect\+GUI}}.

\mbox{\Hypertarget{a02062_a3922a4b9fef09e88440d7655422c2b96}\label{a02062_a3922a4b9fef09e88440d7655422c2b96}} 
\index{AAX\_IACFEffectGUI@{AAX\_IACFEffectGUI}!SetControlHighlightInfo@{SetControlHighlightInfo}}
\index{SetControlHighlightInfo@{SetControlHighlightInfo}!AAX\_IACFEffectGUI@{AAX\_IACFEffectGUI}}
\doxysubsubsection{\texorpdfstring{SetControlHighlightInfo()}{SetControlHighlightInfo()}}
{\footnotesize\ttfamily virtual \mbox{\hyperlink{a00542_a4d8f69a697df7f70c3a8e9b8ee130d2f}{AAX\+\_\+\+Result}} AAX\+\_\+\+IACFEffect\+GUI\+::\+Set\+Control\+Highlight\+Info (\begin{DoxyParamCaption}\item[{\mbox{\hyperlink{a00542_a1440c756fe5cb158b78193b2fc1780d1}{AAX\+\_\+\+CParam\+ID}}}]{i\+Parameter\+ID,  }\item[{\mbox{\hyperlink{a00542_aa216506530f1d19a2965931ced2b274b}{AAX\+\_\+\+CBoolean}}}]{i\+Is\+Highlighted,  }\item[{\mbox{\hyperlink{a00446_a143056a07989a48e5db3a101f1b12567}{AAX\+\_\+\+EHighlight\+Color}}}]{i\+Color }\end{DoxyParamCaption})\hspace{0.3cm}{\ttfamily [pure virtual]}}



Called by host application. Indicates that a control widget should be updated with a highlight color. 

\begin{DoxyRefDesc}{Todo}
\item[\mbox{\hyperlink{a00878__todo000030}{Todo}}]Document this method\end{DoxyRefDesc}


\begin{DoxyRefDesc}{Legacy Porting Notes}
\item[\mbox{\hyperlink{a00880__porting_notes000031}{Legacy Porting Notes}}]This method was re-\/named from {\ttfamily Set\+Control\+Highlite\+Info()}, its name in the legacy plug-\/in SDK.\end{DoxyRefDesc}



\begin{DoxyParams}[1]{Parameters}
\mbox{\texttt{ in}}  & {\em i\+Parameter\+ID} & ID of parameter whose widget(s) must be highlighted \\
\hline
\mbox{\texttt{ in}}  & {\em i\+Is\+Highlighted} & True if turning highlight on, false if turning it off \\
\hline
\mbox{\texttt{ in}}  & {\em i\+Color} & Desired highlight color. One of \mbox{\hyperlink{a00446_a143056a07989a48e5db3a101f1b12567}{AAX\+\_\+\+EHighlight\+Color}} \\
\hline
\end{DoxyParams}


Implemented in \mbox{\hyperlink{a01846_ab2080eb028030b8f180b9e3a39606ca7}{AAX\+\_\+\+CEffect\+GUI}}.



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