\hypertarget{a02274}{}\doxysection{AAX\+\_\+\+IHost\+Processor Class Reference}
\label{a02274}\index{AAX\_IHostProcessor@{AAX\_IHostProcessor}}


{\ttfamily \#include $<$AAX\+\_\+\+IHost\+Processor.\+h$>$}



Inheritance diagram for AAX\+\_\+\+IHost\+Processor\+:
% FIG 0


Collaboration diagram for AAX\+\_\+\+IHost\+Processor\+:
% FIG 1


\doxysubsection{Description}
Base class for the host processor interface. 

\begin{DoxyRefDesc}{\+:\+Implemented by the Plug-\/\+In}
\item[\mbox{\hyperlink{a00883__aax_plugin_implementation000005}{\+:\+Implemented by the Plug-\/\+In}}]\end{DoxyRefDesc}


\begin{DoxyNote}{Note}
This class always inherits from the latest version of the interface and thus requires any subclass to implement all the methods in the latest version of the interface. Most plug-\/ins will inherit from the \mbox{\hyperlink{a01854}{AAX\+\_\+\+CHost\+Processor}} convenience class. 
\end{DoxyNote}
\doxysubsection*{Public Member Functions}
\begin{DoxyCompactItemize}
\item 
\mbox{\hyperlink{a02274_aad3a3b1dcb09094588b31c2508c64484}{ACF\+\_\+\+DECLARE\+\_\+\+STANDARD\+\_\+\+UNKNOWN}} () ACFMETHOD(Internal\+Query\+Interface)(const \mbox{\hyperlink{a00308_a59df0b41744eee7a066787aaedf97f67}{acf\+IID}} \&riid
\item 
\mbox{\hyperlink{a02274_a49bf62b79b57465c39238b54fc836753}{AAX\+\_\+\+DELETE}} (\mbox{\hyperlink{a02274}{AAX\+\_\+\+IHost\+Processor}} \&operator=(const \mbox{\hyperlink{a02274}{AAX\+\_\+\+IHost\+Processor}} \&))
\end{DoxyCompactItemize}
\doxysubsubsection*{Public Member Functions inherited from \mbox{\hyperlink{a02094}{AAX\+\_\+\+IACFHost\+Processor\+\_\+\+V2}}}
\begin{DoxyCompactItemize}
\item 
virtual \mbox{\hyperlink{a00542_a4d8f69a697df7f70c3a8e9b8ee130d2f}{AAX\+\_\+\+Result}} \mbox{\hyperlink{a02094_a60a29fda8490f240ecf869ff14fabf0e}{Get\+Clip\+Name\+Suffix}} (int32\+\_\+t in\+Max\+Length, \mbox{\hyperlink{a02330}{AAX\+\_\+\+IString}} $\ast$out\+String) const =0
\begin{DoxyCompactList}\small\item\em Called by host application to retrieve a custom string to be appended to the clip name.   \end{DoxyCompactList}\end{DoxyCompactItemize}
\doxysubsubsection*{Public Member Functions inherited from \mbox{\hyperlink{a02090}{AAX\+\_\+\+IACFHost\+Processor}}}
\begin{DoxyCompactItemize}
\item 
virtual \mbox{\hyperlink{a00542_a4d8f69a697df7f70c3a8e9b8ee130d2f}{AAX\+\_\+\+Result}} \mbox{\hyperlink{a02090_a00aa7da380e86cd79c6b8da1aa51c3b7}{Initialize}} (\mbox{\hyperlink{a01770}{IACFUnknown}} $\ast$i\+Controller)=0
\begin{DoxyCompactList}\small\item\em Host Processor initialization.   \end{DoxyCompactList}\item 
virtual \mbox{\hyperlink{a00542_a4d8f69a697df7f70c3a8e9b8ee130d2f}{AAX\+\_\+\+Result}} \mbox{\hyperlink{a02090_a238fc3fee9180cd52df2c87180f4a656}{Uninitialize}} ()=0
\begin{DoxyCompactList}\small\item\em Host Processor teardown.   \end{DoxyCompactList}\item 
virtual \mbox{\hyperlink{a00542_a4d8f69a697df7f70c3a8e9b8ee130d2f}{AAX\+\_\+\+Result}} \mbox{\hyperlink{a02090_a157bab3b949dc98f02e66c907c419bad}{Init\+Output\+Bounds}} (int64\+\_\+t i\+Src\+Start, int64\+\_\+t i\+Src\+End, int64\+\_\+t $\ast$o\+Dst\+Start, int64\+\_\+t $\ast$o\+Dst\+End)=0
\begin{DoxyCompactList}\small\item\em Sets the processing region.   \end{DoxyCompactList}\item 
virtual \mbox{\hyperlink{a00542_a4d8f69a697df7f70c3a8e9b8ee130d2f}{AAX\+\_\+\+Result}} \mbox{\hyperlink{a02090_ae9bd1a23f31701d3de6d9d410c819c81}{Set\+Location}} (int64\+\_\+t i\+Sample)=0
\begin{DoxyCompactList}\small\item\em Updates the relative sample location of the current processing frame.   \end{DoxyCompactList}\item 
virtual \mbox{\hyperlink{a00542_a4d8f69a697df7f70c3a8e9b8ee130d2f}{AAX\+\_\+\+Result}} \mbox{\hyperlink{a02090_a8ede94912e89621bf6951042687c3c4a}{Render\+Audio}} (const float $\ast$const in\+Audio\+Ins\mbox{[}$\,$\mbox{]}, int32\+\_\+t in\+Audio\+In\+Count, float $\ast$const i\+Audio\+Outs\mbox{[}$\,$\mbox{]}, int32\+\_\+t i\+Audio\+Out\+Count, int32\+\_\+t $\ast$io\+Window\+Size)=0
\begin{DoxyCompactList}\small\item\em Perform the signal processing.   \end{DoxyCompactList}\item 
virtual \mbox{\hyperlink{a00542_a4d8f69a697df7f70c3a8e9b8ee130d2f}{AAX\+\_\+\+Result}} \mbox{\hyperlink{a02090_aac48c69e51b81cc59c7b6807c1c7f9ed}{Pre\+Render}} (int32\+\_\+t in\+Audio\+In\+Count, int32\+\_\+t i\+Audio\+Out\+Count, int32\+\_\+t i\+Window\+Size)=0
\begin{DoxyCompactList}\small\item\em Invoked right before the start of a Preview or Render pass.   \end{DoxyCompactList}\item 
virtual \mbox{\hyperlink{a00542_a4d8f69a697df7f70c3a8e9b8ee130d2f}{AAX\+\_\+\+Result}} \mbox{\hyperlink{a02090_afafcab62ae4b4174a9f81350bba2da9f}{Post\+Render}} ()=0
\begin{DoxyCompactList}\small\item\em Invoked at the end of a Render pass.   \end{DoxyCompactList}\item 
virtual \mbox{\hyperlink{a00542_a4d8f69a697df7f70c3a8e9b8ee130d2f}{AAX\+\_\+\+Result}} \mbox{\hyperlink{a02090_a8a1710040b8ae79248383ab1bf17e6b6}{Analyze\+Audio}} (const float $\ast$const in\+Audio\+Ins\mbox{[}$\,$\mbox{]}, int32\+\_\+t in\+Audio\+In\+Count, int32\+\_\+t $\ast$io\+Window\+Size)=0
\begin{DoxyCompactList}\small\item\em Override this method if the plug-\/in needs to analyze the audio prior to a Render pass.   \end{DoxyCompactList}\item 
virtual \mbox{\hyperlink{a00542_a4d8f69a697df7f70c3a8e9b8ee130d2f}{AAX\+\_\+\+Result}} \mbox{\hyperlink{a02090_a7d816bdb7b3b683aa2245a179d61d70e}{Pre\+Analyze}} (int32\+\_\+t in\+Audio\+In\+Count, int32\+\_\+t i\+Window\+Size)=0
\begin{DoxyCompactList}\small\item\em Invoked right before the start of an Analysis pass.   \end{DoxyCompactList}\item 
virtual \mbox{\hyperlink{a00542_a4d8f69a697df7f70c3a8e9b8ee130d2f}{AAX\+\_\+\+Result}} \mbox{\hyperlink{a02090_a3b42c24c578987ab8dc6127ccc7d15b3}{Post\+Analyze}} ()=0
\begin{DoxyCompactList}\small\item\em Invoked at the end of an Analysis pass.   \end{DoxyCompactList}\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*{Public Attributes}
\begin{DoxyCompactItemize}
\item 
void $\ast$$\ast$ppv\+Obj\+Out \mbox{\hyperlink{a02274_af373c91c807f45d10b04bfdeb11c8a6b}{override}}
\end{DoxyCompactItemize}


\doxysubsection{Member Function Documentation}
\mbox{\Hypertarget{a02274_aad3a3b1dcb09094588b31c2508c64484}\label{a02274_aad3a3b1dcb09094588b31c2508c64484}} 
\index{AAX\_IHostProcessor@{AAX\_IHostProcessor}!ACF\_DECLARE\_STANDARD\_UNKNOWN@{ACF\_DECLARE\_STANDARD\_UNKNOWN}}
\index{ACF\_DECLARE\_STANDARD\_UNKNOWN@{ACF\_DECLARE\_STANDARD\_UNKNOWN}!AAX\_IHostProcessor@{AAX\_IHostProcessor}}
\doxysubsubsection{\texorpdfstring{ACF\_DECLARE\_STANDARD\_UNKNOWN()}{ACF\_DECLARE\_STANDARD\_UNKNOWN()}}
{\footnotesize\ttfamily AAX\+\_\+\+IHost\+Processor\+::\+ACF\+\_\+\+DECLARE\+\_\+\+STANDARD\+\_\+\+UNKNOWN (\begin{DoxyParamCaption}{ }\end{DoxyParamCaption}) const \&}

\mbox{\Hypertarget{a02274_a49bf62b79b57465c39238b54fc836753}\label{a02274_a49bf62b79b57465c39238b54fc836753}} 
\index{AAX\_IHostProcessor@{AAX\_IHostProcessor}!AAX\_DELETE@{AAX\_DELETE}}
\index{AAX\_DELETE@{AAX\_DELETE}!AAX\_IHostProcessor@{AAX\_IHostProcessor}}
\doxysubsubsection{\texorpdfstring{AAX\_DELETE()}{AAX\_DELETE()}}
{\footnotesize\ttfamily AAX\+\_\+\+IHost\+Processor\+::\+AAX\+\_\+\+DELETE (\begin{DoxyParamCaption}\item[{\mbox{\hyperlink{a02274}{AAX\+\_\+\+IHost\+Processor}} \&}]{operator = {\ttfamily (const~\mbox{\hyperlink{a02274}{AAX\+\_\+\+IHost\+Processor}}~\&)} }\end{DoxyParamCaption})}



\doxysubsection{Member Data Documentation}
\mbox{\Hypertarget{a02274_af373c91c807f45d10b04bfdeb11c8a6b}\label{a02274_af373c91c807f45d10b04bfdeb11c8a6b}} 
\index{AAX\_IHostProcessor@{AAX\_IHostProcessor}!override@{override}}
\index{override@{override}!AAX\_IHostProcessor@{AAX\_IHostProcessor}}
\doxysubsubsection{\texorpdfstring{override}{override}}
{\footnotesize\ttfamily void$\ast$$\ast$ ppv\+Obj\+Out AAX\+\_\+\+IHost\+Processor\+::override}



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