\hypertarget{a00349}{\section{A\+C\+G\+:\+:Bilateral\+Blur\+Filter Class Reference}
\label{a00349}\index{A\+C\+G\+::\+Bilateral\+Blur\+Filter@{A\+C\+G\+::\+Bilateral\+Blur\+Filter}}
}
Inheritance diagram for A\+C\+G\+:\+:Bilateral\+Blur\+Filter\+:\begin{figure}[H]
\begin{center}
\leavevmode
\includegraphics[height=2.000000cm]{a00349}
\end{center}
\end{figure}
\subsection*{Public Member Functions}
\begin{DoxyCompactItemize}
\item 
\hypertarget{a00349_af669c904677b2d5181a60596608b3f3e}{{\bfseries Bilateral\+Blur\+Filter} (int \+\_\+tex\+Width, int \+\_\+tex\+Height, int \+\_\+blur\+Radius, float \+\_\+blur\+Sigma\+S=1.\+0f, float blur\+Sigma\+R=1.\+0f, G\+Lenum \+\_\+internalfmt=\+G\+L\+\_\+\+R\+G\+B\+A)}\label{a00349_af669c904677b2d5181a60596608b3f3e}

\item 
\hypertarget{a00349_a7a63c59da4202115cdd1c51320530969}{virtual \hyperlink{a00349_a7a63c59da4202115cdd1c51320530969}{$\sim$\+Bilateral\+Blur\+Filter} ()}\label{a00349_a7a63c59da4202115cdd1c51320530969}

\begin{DoxyCompactList}\small\item\em Class destructor. \end{DoxyCompactList}\item 
\hypertarget{a00349_a7c021057b34383f7fe8ca63b71fb5b5a}{void {\bfseries set\+Params} (const \hyperlink{a03336_a1e5dae9881df8fa0d42b985a8e7fad28}{A\+C\+G\+::\+G\+L\+Matrixf} \&\+\_\+proj, G\+Luint \+\_\+depth\+Tex)}\label{a00349_a7c021057b34383f7fe8ca63b71fb5b5a}

\item 
\hypertarget{a00349_a31a605cf56e1ceac66ca67aef2d96c68}{void {\bfseries set\+Kernel} (int \+\_\+blur\+Radius, float \+\_\+blur\+Sigma\+S, float \+\_\+blur\+Sigma\+R)}\label{a00349_a31a605cf56e1ceac66ca67aef2d96c68}

\item 
\hypertarget{a00349_a205859540cff562fd705464f3c7fbffc}{int \hyperlink{a00349_a205859540cff562fd705464f3c7fbffc}{radius} () const }\label{a00349_a205859540cff562fd705464f3c7fbffc}

\begin{DoxyCompactList}\small\item\em radius \end{DoxyCompactList}\item 
\hypertarget{a00349_a0dae2ad425485a9f079484c34b571dac}{int \hyperlink{a00349_a0dae2ad425485a9f079484c34b571dac}{samples} () const }\label{a00349_a0dae2ad425485a9f079484c34b571dac}

\begin{DoxyCompactList}\small\item\em number of samples \end{DoxyCompactList}\item 
\hypertarget{a00349_a08572febf95058445f116ef6ea552c61}{const \hyperlink{a03336_a8b858737aebd55e312149cf208a0b3f3}{A\+C\+G\+::\+Vec2f} \& \hyperlink{a00349_a08572febf95058445f116ef6ea552c61}{sigma} () const }\label{a00349_a08572febf95058445f116ef6ea552c61}

\begin{DoxyCompactList}\small\item\em blur (sigma\+S, sigma\+R) \end{DoxyCompactList}\item 
\hypertarget{a00349_a72af6bdcbf7df91ddbd6f9c79dbfca4e}{const std\+::vector$<$ \hyperlink{a03336_a8b858737aebd55e312149cf208a0b3f3}{A\+C\+G\+::\+Vec2f} $>$ \& \hyperlink{a00349_a72af6bdcbf7df91ddbd6f9c79dbfca4e}{offsets\+X} () const }\label{a00349_a72af6bdcbf7df91ddbd6f9c79dbfca4e}

\begin{DoxyCompactList}\small\item\em sample offsets along x direction \end{DoxyCompactList}\item 
\hypertarget{a00349_a2e4e2676a26dde4a47437483cfe90cae}{const std\+::vector$<$ \hyperlink{a03336_a8b858737aebd55e312149cf208a0b3f3}{A\+C\+G\+::\+Vec2f} $>$ \& \hyperlink{a00349_a2e4e2676a26dde4a47437483cfe90cae}{offsets\+Y} () const }\label{a00349_a2e4e2676a26dde4a47437483cfe90cae}

\begin{DoxyCompactList}\small\item\em sample offsets along y direction \end{DoxyCompactList}\end{DoxyCompactItemize}
\subsection*{Protected Member Functions}
\begin{DoxyCompactItemize}
\item 
\hypertarget{a00349_a04bd9500391c0c180f8bc3f7a5e72aa7}{virtual \hyperlink{a01020}{G\+L\+S\+L\+::\+Program} $\ast$ {\bfseries setup\+Pass} (int \+\_\+pass, G\+Luint \+\_\+src\+Tex)}\label{a00349_a04bd9500391c0c180f8bc3f7a5e72aa7}

\item 
\hypertarget{a00349_a50bc867191e3325daec70470e059d093}{void {\bfseries update\+Kernel} ()}\label{a00349_a50bc867191e3325daec70470e059d093}

\end{DoxyCompactItemize}
\subsection*{Private Attributes}
\begin{DoxyCompactItemize}
\item 
\hypertarget{a00349_abd76c1b4efad3300bfb018e2b63bc3f0}{int {\bfseries radius\+\_\+}}\label{a00349_abd76c1b4efad3300bfb018e2b63bc3f0}

\item 
\hypertarget{a00349_ac23ac89a93131ebbb280d811618bb238}{int {\bfseries samples\+\_\+}}\label{a00349_ac23ac89a93131ebbb280d811618bb238}

\item 
\hypertarget{a00349_a3bd84349a139ceb2a85487a56646d71d}{\hyperlink{a03336_a8b858737aebd55e312149cf208a0b3f3}{A\+C\+G\+::\+Vec2f} \hyperlink{a00349_a3bd84349a139ceb2a85487a56646d71d}{sigma\+\_\+}}\label{a00349_a3bd84349a139ceb2a85487a56646d71d}

\begin{DoxyCompactList}\small\item\em (sigma\+S, sigma\+R) \end{DoxyCompactList}\item 
\hypertarget{a00349_ace213d15772f514bdf99ff02871f75bf}{\hyperlink{a03336_a8b858737aebd55e312149cf208a0b3f3}{A\+C\+G\+::\+Vec2f} \hyperlink{a00349_ace213d15772f514bdf99ff02871f75bf}{sigma2\+Rcp\+\_\+}}\label{a00349_ace213d15772f514bdf99ff02871f75bf}

\begin{DoxyCompactList}\small\item\em -\/1 / (2 $\ast$ sigma$^\wedge$2) \end{DoxyCompactList}\item 
\hypertarget{a00349_ab68e75431d5b845b634fc510fc60686a}{std\+::vector$<$ \hyperlink{a03336_a8b858737aebd55e312149cf208a0b3f3}{A\+C\+G\+::\+Vec2f} $>$ \hyperlink{a00349_ab68e75431d5b845b634fc510fc60686a}{offsets\+X\+\_\+}}\label{a00349_ab68e75431d5b845b634fc510fc60686a}

\begin{DoxyCompactList}\small\item\em filter taps \end{DoxyCompactList}\item 
\hypertarget{a00349_aac94e02af488fa3106a87b6f40ae3fe1}{std\+::vector$<$ \hyperlink{a03336_a8b858737aebd55e312149cf208a0b3f3}{A\+C\+G\+::\+Vec2f} $>$ {\bfseries offsets\+Y\+\_\+}}\label{a00349_aac94e02af488fa3106a87b6f40ae3fe1}

\item 
\hypertarget{a00349_af61cc828b9f0fc446c7d7954d6f9acba}{std\+::vector$<$ float $>$ \hyperlink{a00349_af61cc828b9f0fc446c7d7954d6f9acba}{spatial\+Kernel\+\_\+}}\label{a00349_af61cc828b9f0fc446c7d7954d6f9acba}

\begin{DoxyCompactList}\small\item\em precomputed sample -\/r$^\wedge$2 / (2 $\ast$ sigma\+\_\+s$^\wedge$2) \end{DoxyCompactList}\item 
\hypertarget{a00349_a8a900b817605f9d886e9624d8e6659af}{Q\+String\+List \hyperlink{a00349_a8a900b817605f9d886e9624d8e6659af}{macros\+\_\+}}\label{a00349_a8a900b817605f9d886e9624d8e6659af}

\begin{DoxyCompactList}\small\item\em shader macros \end{DoxyCompactList}\item 
\hypertarget{a00349_a8ce8f6d2ea449914a4b48311130f93b6}{\hyperlink{a03336_a1e5dae9881df8fa0d42b985a8e7fad28}{A\+C\+G\+::\+G\+L\+Matrixf} {\bfseries proj\+\_\+}}\label{a00349_a8ce8f6d2ea449914a4b48311130f93b6}

\item 
\hypertarget{a00349_a92fb527aeb9815040c0fef91f828991c}{G\+Luint {\bfseries depth\+Tex\+\_\+}}\label{a00349_a92fb527aeb9815040c0fef91f828991c}

\end{DoxyCompactItemize}


\subsection{Detailed Description}


Definition at line 228 of file Filter\+Kernels.\+hh.



The documentation for this class was generated from the following files\+:\begin{DoxyCompactItemize}
\item 
A\+C\+G/\+G\+L/Filter\+Kernels.\+hh\item 
A\+C\+G/\+G\+L/Filter\+Kernels.\+cc\end{DoxyCompactItemize}
