\section{Bi\+Search\+Visitor Class Reference}
\label{classmlpack_1_1range_1_1BiSearchVisitor}\index{Bi\+Search\+Visitor@{Bi\+Search\+Visitor}}


\doxyref{Bi\+Search\+Visitor}{p.}{classmlpack_1_1range_1_1BiSearchVisitor} executes a bichromatic range search on the given R\+S\+Type.  




Inheritance diagram for Bi\+Search\+Visitor\+:
\nopagebreak
\begin{figure}[H]
\begin{center}
\leavevmode
\includegraphics[width=152pt]{classmlpack_1_1range_1_1BiSearchVisitor__inherit__graph}
\end{center}
\end{figure}
\subsection*{Public Types}
\begin{DoxyCompactItemize}
\item 
{\footnotesize template$<$template$<$ typename Tree\+Metric\+Type, typename Tree\+Stat\+Type, typename Tree\+Mat\+Type $>$ class Tree\+Type$>$ }\\using \textbf{ R\+S\+TypeT} = \textbf{ R\+S\+Type}$<$ Tree\+Type $>$
\begin{DoxyCompactList}\small\item\em Alias template necessary for visual c++ compiler. \end{DoxyCompactList}\end{DoxyCompactItemize}
\subsection*{Public Member Functions}
\begin{DoxyCompactItemize}
\item 
\textbf{ Bi\+Search\+Visitor} (const arma\+::mat \&query\+Set, const \textbf{ math\+::\+Range} \&range, std\+::vector$<$ std\+::vector$<$ size\+\_\+t $>$$>$ \&neighbors, std\+::vector$<$ std\+::vector$<$ double $>$$>$ \&distances, const size\+\_\+t leaf\+Size)
\begin{DoxyCompactList}\small\item\em Construct the \doxyref{Bi\+Search\+Visitor}{p.}{classmlpack_1_1range_1_1BiSearchVisitor}. \end{DoxyCompactList}\item 
{\footnotesize template$<$template$<$ typename Tree\+Metric\+Type, typename Tree\+Stat\+Type, typename Tree\+Mat\+Type $>$ class Tree\+Type$>$ }\\void \textbf{ operator()} (\textbf{ R\+S\+TypeT}$<$ Tree\+Type $>$ $\ast$rs) const
\begin{DoxyCompactList}\small\item\em Default Bichromatic range search on the given R\+S\+Type instance. \end{DoxyCompactList}\item 
void \textbf{ operator()} (\textbf{ R\+S\+TypeT}$<$ \textbf{ tree\+::\+K\+D\+Tree} $>$ $\ast$rs) const
\begin{DoxyCompactList}\small\item\em Bichromatic range search on the given R\+S\+Type specialized for K\+D\+Trees. \end{DoxyCompactList}\item 
void \textbf{ operator()} (\textbf{ R\+S\+TypeT}$<$ \textbf{ tree\+::\+Ball\+Tree} $>$ $\ast$rs) const
\begin{DoxyCompactList}\small\item\em Bichromatic range search on the given R\+S\+Type specialized for Ball\+Trees. \end{DoxyCompactList}\item 
void \textbf{ operator()} (\textbf{ R\+S\+TypeT}$<$ \textbf{ tree\+::\+Octree} $>$ $\ast$rs) const
\begin{DoxyCompactList}\small\item\em Bichromatic range search specialized for octrees. \end{DoxyCompactList}\end{DoxyCompactItemize}


\subsection{Detailed Description}
\doxyref{Bi\+Search\+Visitor}{p.}{classmlpack_1_1range_1_1BiSearchVisitor} executes a bichromatic range search on the given R\+S\+Type. 

We use template specialization to differentiate those tree types that accept leaf\+Size as a parameter. In these cases, before doing range search, a query tree with proper leaf\+Size is built from the query\+Set. 

Definition at line 71 of file rs\+\_\+model.\+hpp.



\subsection{Member Typedef Documentation}
\mbox{\label{classmlpack_1_1range_1_1BiSearchVisitor_a9af43ea057895b221838e70fc62d3762}} 
\index{mlpack\+::range\+::\+Bi\+Search\+Visitor@{mlpack\+::range\+::\+Bi\+Search\+Visitor}!R\+S\+TypeT@{R\+S\+TypeT}}
\index{R\+S\+TypeT@{R\+S\+TypeT}!mlpack\+::range\+::\+Bi\+Search\+Visitor@{mlpack\+::range\+::\+Bi\+Search\+Visitor}}
\subsubsection{R\+S\+TypeT}
{\footnotesize\ttfamily using \textbf{ R\+S\+TypeT} =  \textbf{ R\+S\+Type}$<$Tree\+Type$>$}



Alias template necessary for visual c++ compiler. 



Definition at line 94 of file rs\+\_\+model.\+hpp.



\subsection{Constructor \& Destructor Documentation}
\mbox{\label{classmlpack_1_1range_1_1BiSearchVisitor_a224e8b4e72540e3c73a4ae2cdfc02c3a}} 
\index{mlpack\+::range\+::\+Bi\+Search\+Visitor@{mlpack\+::range\+::\+Bi\+Search\+Visitor}!Bi\+Search\+Visitor@{Bi\+Search\+Visitor}}
\index{Bi\+Search\+Visitor@{Bi\+Search\+Visitor}!mlpack\+::range\+::\+Bi\+Search\+Visitor@{mlpack\+::range\+::\+Bi\+Search\+Visitor}}
\subsubsection{Bi\+Search\+Visitor()}
{\footnotesize\ttfamily \textbf{ Bi\+Search\+Visitor} (\begin{DoxyParamCaption}\item[{const arma\+::mat \&}]{query\+Set,  }\item[{const \textbf{ math\+::\+Range} \&}]{range,  }\item[{std\+::vector$<$ std\+::vector$<$ size\+\_\+t $>$$>$ \&}]{neighbors,  }\item[{std\+::vector$<$ std\+::vector$<$ double $>$$>$ \&}]{distances,  }\item[{const size\+\_\+t}]{leaf\+Size }\end{DoxyParamCaption})}



Construct the \doxyref{Bi\+Search\+Visitor}{p.}{classmlpack_1_1range_1_1BiSearchVisitor}. 



\subsection{Member Function Documentation}
\mbox{\label{classmlpack_1_1range_1_1BiSearchVisitor_a0924fae2a95b067f165794abc92061d4}} 
\index{mlpack\+::range\+::\+Bi\+Search\+Visitor@{mlpack\+::range\+::\+Bi\+Search\+Visitor}!operator()@{operator()}}
\index{operator()@{operator()}!mlpack\+::range\+::\+Bi\+Search\+Visitor@{mlpack\+::range\+::\+Bi\+Search\+Visitor}}
\subsubsection{operator()()\hspace{0.1cm}{\footnotesize\ttfamily [1/4]}}
{\footnotesize\ttfamily void operator() (\begin{DoxyParamCaption}\item[{\textbf{ R\+S\+TypeT}$<$ Tree\+Type $>$ $\ast$}]{rs }\end{DoxyParamCaption}) const}



Default Bichromatic range search on the given R\+S\+Type instance. 

\mbox{\label{classmlpack_1_1range_1_1BiSearchVisitor_ac04a6da04157f62dcee8c0b6f774ea11}} 
\index{mlpack\+::range\+::\+Bi\+Search\+Visitor@{mlpack\+::range\+::\+Bi\+Search\+Visitor}!operator()@{operator()}}
\index{operator()@{operator()}!mlpack\+::range\+::\+Bi\+Search\+Visitor@{mlpack\+::range\+::\+Bi\+Search\+Visitor}}
\subsubsection{operator()()\hspace{0.1cm}{\footnotesize\ttfamily [2/4]}}
{\footnotesize\ttfamily void operator() (\begin{DoxyParamCaption}\item[{\textbf{ R\+S\+TypeT}$<$ \textbf{ tree\+::\+K\+D\+Tree} $>$ $\ast$}]{rs }\end{DoxyParamCaption}) const}



Bichromatic range search on the given R\+S\+Type specialized for K\+D\+Trees. 

\mbox{\label{classmlpack_1_1range_1_1BiSearchVisitor_a0a2f9e768702b0bc2b0a0436e677682f}} 
\index{mlpack\+::range\+::\+Bi\+Search\+Visitor@{mlpack\+::range\+::\+Bi\+Search\+Visitor}!operator()@{operator()}}
\index{operator()@{operator()}!mlpack\+::range\+::\+Bi\+Search\+Visitor@{mlpack\+::range\+::\+Bi\+Search\+Visitor}}
\subsubsection{operator()()\hspace{0.1cm}{\footnotesize\ttfamily [3/4]}}
{\footnotesize\ttfamily void operator() (\begin{DoxyParamCaption}\item[{\textbf{ R\+S\+TypeT}$<$ \textbf{ tree\+::\+Ball\+Tree} $>$ $\ast$}]{rs }\end{DoxyParamCaption}) const}



Bichromatic range search on the given R\+S\+Type specialized for Ball\+Trees. 

\mbox{\label{classmlpack_1_1range_1_1BiSearchVisitor_ab703053394df0c87d36e96f5356e149f}} 
\index{mlpack\+::range\+::\+Bi\+Search\+Visitor@{mlpack\+::range\+::\+Bi\+Search\+Visitor}!operator()@{operator()}}
\index{operator()@{operator()}!mlpack\+::range\+::\+Bi\+Search\+Visitor@{mlpack\+::range\+::\+Bi\+Search\+Visitor}}
\subsubsection{operator()()\hspace{0.1cm}{\footnotesize\ttfamily [4/4]}}
{\footnotesize\ttfamily void operator() (\begin{DoxyParamCaption}\item[{\textbf{ R\+S\+TypeT}$<$ \textbf{ tree\+::\+Octree} $>$ $\ast$}]{rs }\end{DoxyParamCaption}) const}



Bichromatic range search specialized for octrees. 



The documentation for this class was generated from the following file\+:\begin{DoxyCompactItemize}
\item 
/var/www/mlpack.\+ratml.\+org/mlpack.\+org/\+\_\+src/mlpack-\/git/src/mlpack/methods/range\+\_\+search/\textbf{ rs\+\_\+model.\+hpp}\end{DoxyCompactItemize}
