\hypertarget{a00989}{
\section{mln::border Namespace Reference}
\label{d4/d95/a00989}\index{mln::border@{mln::border}}
}


Namespace of routines related to image virtual (outer) border.  


\subsection*{Namespaces}
\begin{DoxyCompactItemize}
\item 
namespace \hyperlink{a02502}{impl}


\begin{DoxyCompactList}\small\item\em Implementation namespace of border namespace. \item\end{DoxyCompactList}

\end{DoxyCompactItemize}
\subsection*{Functions}
\begin{DoxyCompactItemize}
\item 
{\footnotesize template$<$typename I $>$ }\\void \hyperlink{a00989_abe5237cdfd900481d1f049e50deed1b7}{adjust} (const \hyperlink{a00044}{Image}$<$ I $>$ \&ima, unsigned min\_\-thickness)
\item 
{\footnotesize template$<$typename I $>$ }\\void \hyperlink{a00989_a904ec87a5758b96a3e54bc87a814ea4a}{duplicate} (const \hyperlink{a00044}{Image}$<$ I $>$ \&ima)
\item 
{\footnotesize template$<$typename I , typename J $>$ }\\void \hyperlink{a00989_a48324624f734d7fc70fb545ca70b08a3}{equalize} (const \hyperlink{a00044}{Image}$<$ I $>$ \&ima1, const \hyperlink{a00044}{Image}$<$ J $>$ \&ima2, unsigned min\_\-thickness)
\item 
{\footnotesize template$<$typename I $>$ }\\void \hyperlink{a00989_aa61f5ec0c12fd6f49984b228b146c932}{fill} (const \hyperlink{a00044}{Image}$<$ I $>$ \&ima, const typename I::value \&v)
\item 
{\footnotesize template$<$typename I $>$ }\\unsigned \hyperlink{a00989_ab32950209bdef2a3f707792b456661dc}{find} (const \hyperlink{a00044}{Image}$<$ I $>$ \&ima)
\item 
{\footnotesize template$<$typename I $>$ }\\unsigned \hyperlink{a00989_a27f274dc09a5da4d89d87aa3426ea7fe}{get} (const \hyperlink{a00044}{Image}$<$ I $>$ \&ima)
\item 
{\footnotesize template$<$typename I $>$ }\\void \hyperlink{a00989_a26e883442965d9bf3324cfe0ac8aeb2a}{mirror} (const \hyperlink{a00044}{Image}$<$ I $>$ \&ima)
\item 
{\footnotesize template$<$typename I $>$ }\\void \hyperlink{a00989_acbcd055b8c0f8ef23386921a088f7c30}{resize} (const \hyperlink{a00044}{Image}$<$ I $>$ \&ima, unsigned thickness)
\begin{DoxyCompactList}\small\item\em Facade. \item\end{DoxyCompactList}\end{DoxyCompactItemize}


\subsection{Detailed Description}
Namespace of routines related to image virtual (outer) border. 

\subsection{Function Documentation}
\hypertarget{a00989_abe5237cdfd900481d1f049e50deed1b7}{
\index{mln::border@{mln::border}!adjust@{adjust}}
\index{adjust@{adjust}!mln::border@{mln::border}}
\subsubsection[{adjust}]{\setlength{\rightskip}{0pt plus 5cm}template$<$typename I $>$ void mln::border::adjust (
\begin{DoxyParamCaption}
\item[{const Image$<$ I $>$ \&}]{ ima, }
\item[{unsigned}]{ min\_\-thickness}
\end{DoxyParamCaption}
)\hspace{0.3cm}{\ttfamily  \mbox{[}inline\mbox{]}}}}
\label{d4/d95/a00989_abe5237cdfd900481d1f049e50deed1b7}
Adjust the virtual (outer) border of image {\ttfamily ima} so that its size is at least {\ttfamily min\_\-thickness}.


\begin{DoxyParams}{Parameters}
\item[\mbox{\tt[in,out]} {\em ima}]The image whose border is to be adjusted. \item[\mbox{\tt[in]} {\em min\_\-thickness}]The expected border minimum thickness.\end{DoxyParams}
\begin{DoxyPrecond}{Precondition}
{\ttfamily ima} has to be initialized.
\end{DoxyPrecond}
\begin{DoxyWarning}{Warning}
If the image border is already larger than {\ttfamily min\_\-thickness}, this routine is a no-\/op. 
\end{DoxyWarning}


Definition at line 62 of file border/adjust.hh.



References get(), and resize().

\hypertarget{a00989_a904ec87a5758b96a3e54bc87a814ea4a}{
\index{mln::border@{mln::border}!duplicate@{duplicate}}
\index{duplicate@{duplicate}!mln::border@{mln::border}}
\subsubsection[{duplicate}]{\setlength{\rightskip}{0pt plus 5cm}template$<$typename I $>$ void mln::border::duplicate (
\begin{DoxyParamCaption}
\item[{const Image$<$ I $>$ \&}]{ ima}
\end{DoxyParamCaption}
)}}
\label{d4/d95/a00989_a904ec87a5758b96a3e54bc87a814ea4a}
Assign the virtual (outer) border of image {\ttfamily ima} with the duplicate of the inner border of this image.


\begin{DoxyParams}{Parameters}
\item[\mbox{\tt[in,out]} {\em ima}]The image whose border is to be duplicated.\end{DoxyParams}
\begin{DoxyPrecond}{Precondition}
{\ttfamily ima} has to be initialized.
\end{DoxyPrecond}


Definition at line 252 of file border/duplicate.hh.



References get().

\hypertarget{a00989_a48324624f734d7fc70fb545ca70b08a3}{
\index{mln::border@{mln::border}!equalize@{equalize}}
\index{equalize@{equalize}!mln::border@{mln::border}}
\subsubsection[{equalize}]{\setlength{\rightskip}{0pt plus 5cm}template$<$typename I , typename J $>$ void mln::border::equalize (
\begin{DoxyParamCaption}
\item[{const Image$<$ I $>$ \&}]{ ima1, }
\item[{const Image$<$ J $>$ \&}]{ ima2, }
\item[{unsigned}]{ min\_\-thickness}
\end{DoxyParamCaption}
)\hspace{0.3cm}{\ttfamily  \mbox{[}inline\mbox{]}}}}
\label{d4/d95/a00989_a48324624f734d7fc70fb545ca70b08a3}
Equalize the virtual (outer) border of images {\ttfamily ima1} and {\ttfamily ima2} so that their size is equal and is at least {\ttfamily min\_\-thickness}.


\begin{DoxyParams}{Parameters}
\item[\mbox{\tt[in,out]} {\em ima1}]The first image whose border is to be equalizeed. \item[\mbox{\tt[in,out]} {\em ima2}]The second image whose border is to be equalizeed. \item[\mbox{\tt[in]} {\em min\_\-thickness}]The expected border minimum thickness of both images.\end{DoxyParams}
\begin{DoxyPrecond}{Precondition}
{\ttfamily ima1} has to be initialized. 

{\ttfamily ima2} has to be initialized.
\end{DoxyPrecond}
\begin{DoxyWarning}{Warning}
If both image borders already have the same thickness and if this thickness is larger than {\ttfamily min\_\-thickness}, this routine is a no-\/op. 
\end{DoxyWarning}


Definition at line 112 of file border/equalize.hh.



References get().

\hypertarget{a00989_aa61f5ec0c12fd6f49984b228b146c932}{
\index{mln::border@{mln::border}!fill@{fill}}
\index{fill@{fill}!mln::border@{mln::border}}
\subsubsection[{fill}]{\setlength{\rightskip}{0pt plus 5cm}template$<$typename I $>$ void mln::border::fill (
\begin{DoxyParamCaption}
\item[{const Image$<$ I $>$ \&}]{ ima, }
\item[{const typename I::value \&}]{ v}
\end{DoxyParamCaption}
)\hspace{0.3cm}{\ttfamily  \mbox{[}inline\mbox{]}}}}
\label{d4/d95/a00989_aa61f5ec0c12fd6f49984b228b146c932}
Fill the virtual (outer) border of image {\ttfamily ima} with the single value {\ttfamily v}.


\begin{DoxyParams}{Parameters}
\item[\mbox{\tt[in,out]} {\em ima}]The image whose border is to be filled. \item[\mbox{\tt[in]} {\em v}]The value to assign to all border pixels.\end{DoxyParams}
\begin{DoxyPrecond}{Precondition}
{\ttfamily ima} has to be initialized.
\end{DoxyPrecond}


Definition at line 201 of file border/fill.hh.

\hypertarget{a00989_ab32950209bdef2a3f707792b456661dc}{
\index{mln::border@{mln::border}!find@{find}}
\index{find@{find}!mln::border@{mln::border}}
\subsubsection[{find}]{\setlength{\rightskip}{0pt plus 5cm}template$<$typename I $>$ unsigned mln::border::find (
\begin{DoxyParamCaption}
\item[{const Image$<$ I $>$ \&}]{ ima}
\end{DoxyParamCaption}
)\hspace{0.3cm}{\ttfamily  \mbox{[}inline\mbox{]}}}}
\label{d4/d95/a00989_ab32950209bdef2a3f707792b456661dc}
Find the virtual (outer) border thickness of image {\ttfamily ima}.


\begin{DoxyParams}{Parameters}
\item[\mbox{\tt[in]} {\em ima}]The image. \end{DoxyParams}
\begin{DoxyReturn}{Returns}
The border thickness (0 if there is no border).
\end{DoxyReturn}
\begin{DoxyPrecond}{Precondition}
{\ttfamily ima} has to be initialized. 
\end{DoxyPrecond}


Definition at line 95 of file find.hh.

\hypertarget{a00989_a27f274dc09a5da4d89d87aa3426ea7fe}{
\index{mln::border@{mln::border}!get@{get}}
\index{get@{get}!mln::border@{mln::border}}
\subsubsection[{get}]{\setlength{\rightskip}{0pt plus 5cm}template$<$typename I $>$ unsigned mln::border::get (
\begin{DoxyParamCaption}
\item[{const Image$<$ I $>$ \&}]{ ima}
\end{DoxyParamCaption}
)\hspace{0.3cm}{\ttfamily  \mbox{[}inline\mbox{]}}}}
\label{d4/d95/a00989_a27f274dc09a5da4d89d87aa3426ea7fe}
Get the virtual (outer) border thickness of image {\itshape ima\/}.


\begin{DoxyParams}{Parameters}
\item[\mbox{\tt[in]} {\em ima}]The image. \end{DoxyParams}
\begin{DoxyReturn}{Returns}
The border thickness (0 if there is no border).
\end{DoxyReturn}
\begin{DoxyPrecond}{Precondition}
{\itshape ima\/} has to be initialized. 
\end{DoxyPrecond}


Definition at line 90 of file border/get.hh.



Referenced by adjust(), duplicate(), and equalize().

\hypertarget{a00989_a26e883442965d9bf3324cfe0ac8aeb2a}{
\index{mln::border@{mln::border}!mirror@{mirror}}
\index{mirror@{mirror}!mln::border@{mln::border}}
\subsubsection[{mirror}]{\setlength{\rightskip}{0pt plus 5cm}template$<$typename I $>$ void mln::border::mirror (
\begin{DoxyParamCaption}
\item[{const Image$<$ I $>$ \&}]{ ima}
\end{DoxyParamCaption}
)\hspace{0.3cm}{\ttfamily  \mbox{[}inline\mbox{]}}}}
\label{d4/d95/a00989_a26e883442965d9bf3324cfe0ac8aeb2a}
Mirror the virtual (outer) border of image {\ttfamily ima} with the (inner) level contents of this image.


\begin{DoxyParams}{Parameters}
\item[\mbox{\tt[in,out]} {\em ima}]The image whose border is to be mirrored.\end{DoxyParams}
\begin{DoxyPrecond}{Precondition}
{\ttfamily ima} has to be initialized.
\end{DoxyPrecond}


Definition at line 211 of file border/mirror.hh.

\hypertarget{a00989_acbcd055b8c0f8ef23386921a088f7c30}{
\index{mln::border@{mln::border}!resize@{resize}}
\index{resize@{resize}!mln::border@{mln::border}}
\subsubsection[{resize}]{\setlength{\rightskip}{0pt plus 5cm}template$<$typename I $>$ void mln::border::resize (
\begin{DoxyParamCaption}
\item[{const Image$<$ I $>$ \&}]{ ima, }
\item[{unsigned}]{ thickness}
\end{DoxyParamCaption}
)\hspace{0.3cm}{\ttfamily  \mbox{[}inline\mbox{]}}}}
\label{d4/d95/a00989_acbcd055b8c0f8ef23386921a088f7c30}


Facade. 

Resize the virtual (outer) border of image {\ttfamily ima} to exactly {\ttfamily thickness}.


\begin{DoxyParams}{Parameters}
\item[\mbox{\tt[in,out]} {\em ima}]The image whose border is to be resized. \item[\mbox{\tt[in]} {\em thickness}]The expected border thickness.\end{DoxyParams}
\begin{DoxyPrecond}{Precondition}
{\ttfamily ima} has to be initialized.
\end{DoxyPrecond}
\begin{DoxyWarning}{Warning}
If the image border already has the expected thickness, this routine is a no-\/op. 
\end{DoxyWarning}


Definition at line 126 of file resize.hh.



References mln::primary(), and resize().



Referenced by adjust(), and resize().

