\hypertarget{class_ogre_1_1_g_l_hardware_occlusion_query}{}\doxysection{Ogre\+::G\+L\+Hardware\+Occlusion\+Query Class Reference}
\label{class_ogre_1_1_g_l_hardware_occlusion_query}\index{Ogre::GLHardwareOcclusionQuery@{Ogre::GLHardwareOcclusionQuery}}


This is a class that is the base class of the query class for hardware occlusion.  




{\ttfamily \#include $<$Ogre\+G\+L\+Hardware\+Occlusion\+Query.\+h$>$}



Inheritance diagram for Ogre\+::G\+L\+Hardware\+Occlusion\+Query\+:
\nopagebreak
\begin{figure}[H]
\begin{center}
\leavevmode
\includegraphics[width=250pt]{class_ogre_1_1_g_l_hardware_occlusion_query__inherit__graph}
\end{center}
\end{figure}
\doxysubsection*{Public Member Functions}
\begin{DoxyCompactItemize}
\item 
\mbox{\hyperlink{class_ogre_1_1_g_l_hardware_occlusion_query_a06e9e11f2d3cb1faa122f32419de6afe}{G\+L\+Hardware\+Occlusion\+Query}} ()
\begin{DoxyCompactList}\small\item\em Default object constructor. \end{DoxyCompactList}\item 
\mbox{\hyperlink{class_ogre_1_1_g_l_hardware_occlusion_query_af17c4e6221e352746939ad77c982384a}{$\sim$\+G\+L\+Hardware\+Occlusion\+Query}} ()
\begin{DoxyCompactList}\small\item\em Object destructor. \end{DoxyCompactList}\item 
void \mbox{\hyperlink{class_ogre_1_1_g_l_hardware_occlusion_query_a1d01d00267ce1dbe9449046fd85185d2}{begin\+Occlusion\+Query}} ()
\begin{DoxyCompactList}\small\item\em Starts the hardware occlusion query. \end{DoxyCompactList}\item 
void \mbox{\hyperlink{class_ogre_1_1_g_l_hardware_occlusion_query_a0aeaf749da96c42502af8a200bc13aef}{end\+Occlusion\+Query}} ()
\begin{DoxyCompactList}\small\item\em Ends the hardware occlusion test. \end{DoxyCompactList}\item 
unsigned int \mbox{\hyperlink{class_ogre_1_1_hardware_occlusion_query_ad1c71c786e262908a3aa805287b815e3}{get\+Last\+Querys\+Pixelcount}} () const
\begin{DoxyCompactList}\small\item\em Let\textquotesingle{}s you get the last pixel count with out doing the hardware occlusion test. \end{DoxyCompactList}\item 
bool \mbox{\hyperlink{class_ogre_1_1_g_l_hardware_occlusion_query_a6244f76065b871080796450633011c37}{is\+Still\+Outstanding}} (void)
\begin{DoxyCompactList}\small\item\em Lets you know when query is done, or still be processed by the Hardware. \end{DoxyCompactList}\item 
bool \mbox{\hyperlink{class_ogre_1_1_g_l_hardware_occlusion_query_ae1ecdc18b06e9cc981b001f1bb184458}{pull\+Occlusion\+Query}} (unsigned int $\ast$Num\+Of\+Fragments)
\begin{DoxyCompactList}\small\item\em Pulls the hardware occlusion query. \end{DoxyCompactList}\end{DoxyCompactItemize}


\doxysubsection{Detailed Description}
This is a class that is the base class of the query class for hardware occlusion. 

\begin{DoxyAuthor}{Author}
Lee Sandberg email\+: \href{mailto:lee@abcmedia.se}{\texttt{ lee@abcmedia.\+se}} Updated on 13/9/2005 by Tuan Kuranes email\+: \href{mailto:tuan.kuranes@free.fr}{\texttt{ tuan.\+kuranes@free.\+fr}} 
\end{DoxyAuthor}


\doxysubsection{Constructor \& Destructor Documentation}
\mbox{\Hypertarget{class_ogre_1_1_g_l_hardware_occlusion_query_a06e9e11f2d3cb1faa122f32419de6afe}\label{class_ogre_1_1_g_l_hardware_occlusion_query_a06e9e11f2d3cb1faa122f32419de6afe}} 
\index{Ogre::GLHardwareOcclusionQuery@{Ogre::GLHardwareOcclusionQuery}!GLHardwareOcclusionQuery@{GLHardwareOcclusionQuery}}
\index{GLHardwareOcclusionQuery@{GLHardwareOcclusionQuery}!Ogre::GLHardwareOcclusionQuery@{Ogre::GLHardwareOcclusionQuery}}
\doxysubsubsection{\texorpdfstring{GLHardwareOcclusionQuery()}{GLHardwareOcclusionQuery()}}
{\footnotesize\ttfamily Ogre\+::\+G\+L\+Hardware\+Occlusion\+Query\+::\+G\+L\+Hardware\+Occlusion\+Query (\begin{DoxyParamCaption}{ }\end{DoxyParamCaption})}



Default object constructor. 

\mbox{\Hypertarget{class_ogre_1_1_g_l_hardware_occlusion_query_af17c4e6221e352746939ad77c982384a}\label{class_ogre_1_1_g_l_hardware_occlusion_query_af17c4e6221e352746939ad77c982384a}} 
\index{Ogre::GLHardwareOcclusionQuery@{Ogre::GLHardwareOcclusionQuery}!````~GLHardwareOcclusionQuery@{$\sim$GLHardwareOcclusionQuery}}
\index{````~GLHardwareOcclusionQuery@{$\sim$GLHardwareOcclusionQuery}!Ogre::GLHardwareOcclusionQuery@{Ogre::GLHardwareOcclusionQuery}}
\doxysubsubsection{\texorpdfstring{$\sim$GLHardwareOcclusionQuery()}{~GLHardwareOcclusionQuery()}}
{\footnotesize\ttfamily Ogre\+::\+G\+L\+Hardware\+Occlusion\+Query\+::$\sim$\+G\+L\+Hardware\+Occlusion\+Query (\begin{DoxyParamCaption}{ }\end{DoxyParamCaption})}



Object destructor. 



\doxysubsection{Member Function Documentation}
\mbox{\Hypertarget{class_ogre_1_1_g_l_hardware_occlusion_query_a1d01d00267ce1dbe9449046fd85185d2}\label{class_ogre_1_1_g_l_hardware_occlusion_query_a1d01d00267ce1dbe9449046fd85185d2}} 
\index{Ogre::GLHardwareOcclusionQuery@{Ogre::GLHardwareOcclusionQuery}!beginOcclusionQuery@{beginOcclusionQuery}}
\index{beginOcclusionQuery@{beginOcclusionQuery}!Ogre::GLHardwareOcclusionQuery@{Ogre::GLHardwareOcclusionQuery}}
\doxysubsubsection{\texorpdfstring{beginOcclusionQuery()}{beginOcclusionQuery()}}
{\footnotesize\ttfamily void Ogre\+::\+G\+L\+Hardware\+Occlusion\+Query\+::begin\+Occlusion\+Query (\begin{DoxyParamCaption}{ }\end{DoxyParamCaption})\hspace{0.3cm}{\ttfamily [virtual]}}



Starts the hardware occlusion query. 

\begin{DoxyRemark}{Remarks}
Simple usage\+: Create one or more Occlusion\+Query object one per outstanding query or one per tested object Occlusion\+Query$\ast$ m\+Occlusion\+Query; create\+Occlusion\+Query( \&m\+Occlusion\+Query ); In the rendering loop\+: Draw all occluders m\+Occlusion\+Query-\/$>$start\+Occlusion\+Query(); Draw the polygons to be tested m\+Occlusion\+Query-\/$>$\mbox{\hyperlink{class_ogre_1_1_g_l_hardware_occlusion_query_a0aeaf749da96c42502af8a200bc13aef}{end\+Occlusion\+Query()}};
\end{DoxyRemark}
Results must be pulled using\+: U\+I\+NT m\+Number\+Of\+Pixels\+Visable; pull\+Occlusion\+Query( \&m\+Number\+Of\+Pixels\+Visable ); 

Implements \mbox{\hyperlink{class_ogre_1_1_hardware_occlusion_query_a40efe70ae4a5877fadd5ef40b2e5fcf3}{Ogre\+::\+Hardware\+Occlusion\+Query}}.

\mbox{\Hypertarget{class_ogre_1_1_g_l_hardware_occlusion_query_a0aeaf749da96c42502af8a200bc13aef}\label{class_ogre_1_1_g_l_hardware_occlusion_query_a0aeaf749da96c42502af8a200bc13aef}} 
\index{Ogre::GLHardwareOcclusionQuery@{Ogre::GLHardwareOcclusionQuery}!endOcclusionQuery@{endOcclusionQuery}}
\index{endOcclusionQuery@{endOcclusionQuery}!Ogre::GLHardwareOcclusionQuery@{Ogre::GLHardwareOcclusionQuery}}
\doxysubsubsection{\texorpdfstring{endOcclusionQuery()}{endOcclusionQuery()}}
{\footnotesize\ttfamily void Ogre\+::\+G\+L\+Hardware\+Occlusion\+Query\+::end\+Occlusion\+Query (\begin{DoxyParamCaption}{ }\end{DoxyParamCaption})\hspace{0.3cm}{\ttfamily [virtual]}}



Ends the hardware occlusion test. 



Implements \mbox{\hyperlink{class_ogre_1_1_hardware_occlusion_query_aae324a11ce1f97199024d1ee38a297c2}{Ogre\+::\+Hardware\+Occlusion\+Query}}.

\mbox{\Hypertarget{class_ogre_1_1_g_l_hardware_occlusion_query_ae1ecdc18b06e9cc981b001f1bb184458}\label{class_ogre_1_1_g_l_hardware_occlusion_query_ae1ecdc18b06e9cc981b001f1bb184458}} 
\index{Ogre::GLHardwareOcclusionQuery@{Ogre::GLHardwareOcclusionQuery}!pullOcclusionQuery@{pullOcclusionQuery}}
\index{pullOcclusionQuery@{pullOcclusionQuery}!Ogre::GLHardwareOcclusionQuery@{Ogre::GLHardwareOcclusionQuery}}
\doxysubsubsection{\texorpdfstring{pullOcclusionQuery()}{pullOcclusionQuery()}}
{\footnotesize\ttfamily bool Ogre\+::\+G\+L\+Hardware\+Occlusion\+Query\+::pull\+Occlusion\+Query (\begin{DoxyParamCaption}\item[{unsigned int $\ast$}]{Num\+Of\+Fragments }\end{DoxyParamCaption})\hspace{0.3cm}{\ttfamily [virtual]}}



Pulls the hardware occlusion query. 

\begin{DoxyNote}{Note}
Waits until the query result is available; use is\+Still\+Outstanding if just want to test if the result is available. 
\end{DoxyNote}

\begin{DoxyRetVals}{Return values}
{\em Num\+Of\+Fragments} & will get the resulting number of fragments. \\
\hline
\end{DoxyRetVals}
\begin{DoxyReturn}{Returns}
True if success or false if not. 
\end{DoxyReturn}


Implements \mbox{\hyperlink{class_ogre_1_1_hardware_occlusion_query_ae30ceda53d771c5db266fdcfd14e6c9c}{Ogre\+::\+Hardware\+Occlusion\+Query}}.

\mbox{\Hypertarget{class_ogre_1_1_g_l_hardware_occlusion_query_a6244f76065b871080796450633011c37}\label{class_ogre_1_1_g_l_hardware_occlusion_query_a6244f76065b871080796450633011c37}} 
\index{Ogre::GLHardwareOcclusionQuery@{Ogre::GLHardwareOcclusionQuery}!isStillOutstanding@{isStillOutstanding}}
\index{isStillOutstanding@{isStillOutstanding}!Ogre::GLHardwareOcclusionQuery@{Ogre::GLHardwareOcclusionQuery}}
\doxysubsubsection{\texorpdfstring{isStillOutstanding()}{isStillOutstanding()}}
{\footnotesize\ttfamily bool Ogre\+::\+G\+L\+Hardware\+Occlusion\+Query\+::is\+Still\+Outstanding (\begin{DoxyParamCaption}\item[{void}]{ }\end{DoxyParamCaption})\hspace{0.3cm}{\ttfamily [virtual]}}



Lets you know when query is done, or still be processed by the Hardware. 

\begin{DoxyReturn}{Returns}
true if query isn\textquotesingle{}t finished. 
\end{DoxyReturn}


Implements \mbox{\hyperlink{class_ogre_1_1_hardware_occlusion_query_abdc85b8e78de55492c8d2d730150e08d}{Ogre\+::\+Hardware\+Occlusion\+Query}}.

\mbox{\Hypertarget{class_ogre_1_1_hardware_occlusion_query_ad1c71c786e262908a3aa805287b815e3}\label{class_ogre_1_1_hardware_occlusion_query_ad1c71c786e262908a3aa805287b815e3}} 
\index{Ogre::GLHardwareOcclusionQuery@{Ogre::GLHardwareOcclusionQuery}!getLastQuerysPixelcount@{getLastQuerysPixelcount}}
\index{getLastQuerysPixelcount@{getLastQuerysPixelcount}!Ogre::GLHardwareOcclusionQuery@{Ogre::GLHardwareOcclusionQuery}}
\doxysubsubsection{\texorpdfstring{getLastQuerysPixelcount()}{getLastQuerysPixelcount()}}
{\footnotesize\ttfamily unsigned int Ogre\+::\+Hardware\+Occlusion\+Query\+::get\+Last\+Querys\+Pixelcount (\begin{DoxyParamCaption}{ }\end{DoxyParamCaption}) const\hspace{0.3cm}{\ttfamily [inline]}, {\ttfamily [inherited]}}



Let\textquotesingle{}s you get the last pixel count with out doing the hardware occlusion test. 

\begin{DoxyReturn}{Returns}
The last fragment count from the last test. Remarks This function won\textquotesingle{}t give you new values, just the old value. 
\end{DoxyReturn}


The documentation for this class was generated from the following file\+:\begin{DoxyCompactItemize}
\item 
\mbox{\hyperlink{_ogre_g_l_hardware_occlusion_query_8h}{Ogre\+G\+L\+Hardware\+Occlusion\+Query.\+h}}\end{DoxyCompactItemize}
