\hypertarget{class_ogre_1_1_work_queue_1_1_response_handler}{}\section{Ogre\+:\+:Work\+Queue\+:\+:Response\+Handler Class Reference}
\label{class_ogre_1_1_work_queue_1_1_response_handler}\index{Ogre\+::\+Work\+Queue\+::\+Response\+Handler@{Ogre\+::\+Work\+Queue\+::\+Response\+Handler}}


Interface definition for a handler of responses.  




{\ttfamily \#include $<$Ogre\+Work\+Queue.\+h$>$}



Inheritance diagram for Ogre\+:\+:Work\+Queue\+:\+:Response\+Handler\+:
\nopagebreak
\begin{figure}[H]
\begin{center}
\leavevmode
\includegraphics[width=350pt]{class_ogre_1_1_work_queue_1_1_response_handler__inherit__graph}
\end{center}
\end{figure}
\subsection*{Public Member Functions}
\begin{DoxyCompactItemize}
\item 
\hyperlink{class_ogre_1_1_work_queue_1_1_response_handler_a0e4215e93030a19595bc2d2e30f0a938}{Response\+Handler} ()
\item 
virtual \hyperlink{class_ogre_1_1_work_queue_1_1_response_handler_a5fb201476bd4bf5a14425c4598753aab}{$\sim$\+Response\+Handler} ()
\item 
virtual bool \hyperlink{class_ogre_1_1_work_queue_1_1_response_handler_a7a2fabae7f92bed384f100526055a899}{can\+Handle\+Response} (const \hyperlink{struct_ogre_1_1_work_queue_1_1_response}{Response} $\ast$res, const \hyperlink{class_ogre_1_1_work_queue}{Work\+Queue} $\ast$srcQ)
\begin{DoxyCompactList}\small\item\em Return whether this handler can process a given response. \end{DoxyCompactList}\item 
virtual void \hyperlink{class_ogre_1_1_work_queue_1_1_response_handler_a8fab0334551e482042df078a5945f5de}{handle\+Response} (const \hyperlink{struct_ogre_1_1_work_queue_1_1_response}{Response} $\ast$res, const \hyperlink{class_ogre_1_1_work_queue}{Work\+Queue} $\ast$srcQ)=0
\begin{DoxyCompactList}\small\item\em The handler method every subclass must implement. \end{DoxyCompactList}\end{DoxyCompactItemize}


\subsection{Detailed Description}
Interface definition for a handler of responses. 

\begin{DoxyRemark}{Remarks}
User classes are expected to implement this interface in order to process responses from the queue. All calls to this class will be in the main render thread and thus all G\+PU resources will be available. 
\end{DoxyRemark}


\subsection{Constructor \& Destructor Documentation}
\mbox{\Hypertarget{class_ogre_1_1_work_queue_1_1_response_handler_a0e4215e93030a19595bc2d2e30f0a938}\label{class_ogre_1_1_work_queue_1_1_response_handler_a0e4215e93030a19595bc2d2e30f0a938}} 
\index{Ogre\+::\+Work\+Queue\+::\+Response\+Handler@{Ogre\+::\+Work\+Queue\+::\+Response\+Handler}!Response\+Handler@{Response\+Handler}}
\index{Response\+Handler@{Response\+Handler}!Ogre\+::\+Work\+Queue\+::\+Response\+Handler@{Ogre\+::\+Work\+Queue\+::\+Response\+Handler}}
\subsubsection{\texorpdfstring{Response\+Handler()}{ResponseHandler()}}
{\footnotesize\ttfamily Ogre\+::\+Work\+Queue\+::\+Response\+Handler\+::\+Response\+Handler (\begin{DoxyParamCaption}{ }\end{DoxyParamCaption})\hspace{0.3cm}{\ttfamily [inline]}}

\mbox{\Hypertarget{class_ogre_1_1_work_queue_1_1_response_handler_a5fb201476bd4bf5a14425c4598753aab}\label{class_ogre_1_1_work_queue_1_1_response_handler_a5fb201476bd4bf5a14425c4598753aab}} 
\index{Ogre\+::\+Work\+Queue\+::\+Response\+Handler@{Ogre\+::\+Work\+Queue\+::\+Response\+Handler}!````~Response\+Handler@{$\sim$\+Response\+Handler}}
\index{````~Response\+Handler@{$\sim$\+Response\+Handler}!Ogre\+::\+Work\+Queue\+::\+Response\+Handler@{Ogre\+::\+Work\+Queue\+::\+Response\+Handler}}
\subsubsection{\texorpdfstring{$\sim$\+Response\+Handler()}{~ResponseHandler()}}
{\footnotesize\ttfamily virtual Ogre\+::\+Work\+Queue\+::\+Response\+Handler\+::$\sim$\+Response\+Handler (\begin{DoxyParamCaption}{ }\end{DoxyParamCaption})\hspace{0.3cm}{\ttfamily [inline]}, {\ttfamily [virtual]}}



\subsection{Member Function Documentation}
\mbox{\Hypertarget{class_ogre_1_1_work_queue_1_1_response_handler_a7a2fabae7f92bed384f100526055a899}\label{class_ogre_1_1_work_queue_1_1_response_handler_a7a2fabae7f92bed384f100526055a899}} 
\index{Ogre\+::\+Work\+Queue\+::\+Response\+Handler@{Ogre\+::\+Work\+Queue\+::\+Response\+Handler}!can\+Handle\+Response@{can\+Handle\+Response}}
\index{can\+Handle\+Response@{can\+Handle\+Response}!Ogre\+::\+Work\+Queue\+::\+Response\+Handler@{Ogre\+::\+Work\+Queue\+::\+Response\+Handler}}
\subsubsection{\texorpdfstring{can\+Handle\+Response()}{canHandleResponse()}}
{\footnotesize\ttfamily virtual bool Ogre\+::\+Work\+Queue\+::\+Response\+Handler\+::can\+Handle\+Response (\begin{DoxyParamCaption}\item[{const \hyperlink{struct_ogre_1_1_work_queue_1_1_response}{Response} $\ast$}]{res,  }\item[{const \hyperlink{class_ogre_1_1_work_queue}{Work\+Queue} $\ast$}]{srcQ }\end{DoxyParamCaption})\hspace{0.3cm}{\ttfamily [inline]}, {\ttfamily [virtual]}}



Return whether this handler can process a given response. 

\begin{DoxyRemark}{Remarks}
Defaults to true, but if you wish to add several handlers each of which deal with different types of response, you can override this method. 
\end{DoxyRemark}


Reimplemented in \hyperlink{class_ogre_1_1_terrain_a3e3d8150704d279630a3a125b0439138}{Ogre\+::\+Terrain}, \hyperlink{class_ogre_1_1_terrain_group_ad608848047850ff730ef870457b7e14f}{Ogre\+::\+Terrain\+Group}, \hyperlink{class_ogre_1_1_resource_background_queue_a3e162e3a40c4fe36e8e32bf11dcb2c43}{Ogre\+::\+Resource\+Background\+Queue}, \hyperlink{class_ogre_1_1_page_a3e963a28826407a7cb45f6c8fdaab4ce}{Ogre\+::\+Page}, and \hyperlink{class_ogre_1_1_terrain_lod_manager_a0aa9184563866da3d6de2ed040bc6667}{Ogre\+::\+Terrain\+Lod\+Manager}.



References Ogre\+::\+Work\+Queue\+::\+Request\+::get\+Aborted(), and Ogre\+::\+Work\+Queue\+::\+Response\+::get\+Request().

\mbox{\Hypertarget{class_ogre_1_1_work_queue_1_1_response_handler_a8fab0334551e482042df078a5945f5de}\label{class_ogre_1_1_work_queue_1_1_response_handler_a8fab0334551e482042df078a5945f5de}} 
\index{Ogre\+::\+Work\+Queue\+::\+Response\+Handler@{Ogre\+::\+Work\+Queue\+::\+Response\+Handler}!handle\+Response@{handle\+Response}}
\index{handle\+Response@{handle\+Response}!Ogre\+::\+Work\+Queue\+::\+Response\+Handler@{Ogre\+::\+Work\+Queue\+::\+Response\+Handler}}
\subsubsection{\texorpdfstring{handle\+Response()}{handleResponse()}}
{\footnotesize\ttfamily virtual void Ogre\+::\+Work\+Queue\+::\+Response\+Handler\+::handle\+Response (\begin{DoxyParamCaption}\item[{const \hyperlink{struct_ogre_1_1_work_queue_1_1_response}{Response} $\ast$}]{res,  }\item[{const \hyperlink{class_ogre_1_1_work_queue}{Work\+Queue} $\ast$}]{srcQ }\end{DoxyParamCaption})\hspace{0.3cm}{\ttfamily [pure virtual]}}



The handler method every subclass must implement. 


\begin{DoxyParams}{Parameters}
{\em res} & The \hyperlink{struct_ogre_1_1_work_queue_1_1_response}{Response} structure. The caller is responsible for deleting this after the call is made, none of the data contained (except pointers to structures in user \hyperlink{class_ogre_1_1_any}{Any} data) will persist after this call is returned. \\
\hline
{\em srcQ} & The work queue that this request originated from \\
\hline
\end{DoxyParams}


Implemented in \hyperlink{class_ogre_1_1_terrain_ad963dbee0f58e887e05c982385fb9799}{Ogre\+::\+Terrain}, \hyperlink{class_ogre_1_1_terrain_group_a5d062f88928dd1a572dc7a411b07457b}{Ogre\+::\+Terrain\+Group}, \hyperlink{class_ogre_1_1_resource_background_queue_a80e5148e3e0f8abd1e9eb2279e6db221}{Ogre\+::\+Resource\+Background\+Queue}, \hyperlink{class_ogre_1_1_page_a90fa27b468e2eb4f8ca38b37ea504a0b}{Ogre\+::\+Page}, \hyperlink{class_ogre_1_1_terrain_paged_world_section_a0d87c6c1fa81abdda4ee6925bfa10e49}{Ogre\+::\+Terrain\+Paged\+World\+Section}, \hyperlink{class_ogre_1_1_volume_1_1_chunk_handler_abfe457979450e735b65e5c53712f64c2}{Ogre\+::\+Volume\+::\+Chunk\+Handler}, \hyperlink{class_ogre_1_1_terrain_lod_manager_a10e9a78d1a3206e6fdb377512013dc5b}{Ogre\+::\+Terrain\+Lod\+Manager}, and \hyperlink{class_ogre_1_1_lod_work_queue_injector_ac016c12d9604068347b8b560e353c3be}{Ogre\+::\+Lod\+Work\+Queue\+Injector}.



The documentation for this class was generated from the following file\+:\begin{DoxyCompactItemize}
\item 
\hyperlink{_ogre_work_queue_8h}{Ogre\+Work\+Queue.\+h}\end{DoxyCompactItemize}
