\hypertarget{a00242}{
\section{mln::graph\_\-elt\_\-window$<$ G, S $>$ Class Template Reference}
\label{d2/dc8/a00242}\index{mln::graph\_\-elt\_\-window@{mln::graph\_\-elt\_\-window}}
}


Elementary window on graph class.  




{\ttfamily \#include $<$graph\_\-elt\_\-window.hh$>$}



Inheritance diagram for mln::graph\_\-elt\_\-window$<$ G, S $>$:
\nopagebreak
\begin{figure}[H]
\begin{center}
\leavevmode
\includegraphics[width=400pt]{dd/d25/a03512}
\end{center}
\end{figure}
\subsection*{Public Types}
\begin{Indent}{\bf }\par
{\em \label{_amgrpd41d8cd98f00b204e9800998ecf8427e}
 }\begin{DoxyCompactItemize}
\item 
typedef S \hyperlink{a00242_a2e57bace60e9b1b337950a2c93d4b02d}{target}
\begin{DoxyCompactList}\small\item\em Associated types. \item\end{DoxyCompactList}\item 
typedef S::psite \hyperlink{a00242_a74fc664f58ae0800c0e573c47ec1cf8b}{psite}
\begin{DoxyCompactList}\small\item\em The type of psite corresponding to the window. \item\end{DoxyCompactList}\item 
typedef S::psite \hyperlink{a00242_a8db5dbfdd014f6de419abdd9047c56f0}{center\_\-t}
\begin{DoxyCompactList}\small\item\em Type of the window center element. \item\end{DoxyCompactList}\item 
typedef S::graph\_\-element \hyperlink{a00242_aeb4f32eb5ffb4c94e83436bae91212a8}{graph\_\-element}
\begin{DoxyCompactList}\small\item\em Type of the graph element pointed by this iterator. \item\end{DoxyCompactList}\item 
typedef \hyperlink{a00245}{graph\_\-window\_\-piter}$<$ S, \hyperlink{a00242}{self\_\-}, nbh\_\-fwd\_\-iter\_\- $>$ \hyperlink{a00242_a81ec9127a9f0357d0d0a5a6bb3225809}{fwd\_\-qiter}
\begin{DoxyCompactList}\small\item\em \hyperlink{a00345}{Site\_\-Iterator} type to browse the psites of the window w.r.t. \item\end{DoxyCompactList}\item 
typedef \hyperlink{a00245}{graph\_\-window\_\-piter}$<$ S, \hyperlink{a00242}{self\_\-}, nbh\_\-bkd\_\-iter\_\- $>$ \hyperlink{a00242_a2ddb32fc5752ec75843f9ecf621fc079}{bkd\_\-qiter}
\begin{DoxyCompactList}\small\item\em \hyperlink{a00345}{Site\_\-Iterator} type to browse the psites of the window w.r.t. \item\end{DoxyCompactList}\item 
typedef \hyperlink{a00245}{fwd\_\-qiter} \hyperlink{a00242_a8a6e64b4b8a6deaec0f35f613bb8b2b9}{qiter}
\begin{DoxyCompactList}\small\item\em The default qiter type. \item\end{DoxyCompactList}\end{DoxyCompactItemize}
\end{Indent}
\begin{Indent}{\bf }\par
{\em \label{_amgrpd41d8cd98f00b204e9800998ecf8427e}
 }\begin{DoxyCompactItemize}
\item 
typedef S::fun\_\-t::result \hyperlink{a00041_a9f66e2a8f169bd9f0382aecad5a0590f}{site}
\begin{DoxyCompactList}\small\item\em Associated types. \item\end{DoxyCompactList}\end{DoxyCompactItemize}
\end{Indent}
\subsection*{Public Member Functions}
\begin{DoxyCompactItemize}
\item 
bool \hyperlink{a00041_a325b2dd7be434ee90fd4367b44bd3b24}{is\_\-valid} () const
\begin{DoxyCompactList}\small\item\em Return true by default. \item\end{DoxyCompactList}\end{DoxyCompactItemize}
\begin{Indent}{\bf }\par
{\em \label{_amgrpd41d8cd98f00b204e9800998ecf8427e}
 }\begin{DoxyCompactItemize}
\item 
bool \hyperlink{a00041_a977411b9cc32c20ffa392602fe1c55a0}{is\_\-empty} () const
\begin{DoxyCompactList}\small\item\em Interface of the concept Window. \item\end{DoxyCompactList}\item 
bool \hyperlink{a00041_ac9e80c7a0da8931ae73ffd627c392139}{is\_\-centered} () const
\begin{DoxyCompactList}\small\item\em Is the window centered? \item\end{DoxyCompactList}\item 
bool \hyperlink{a00041_a80ddb0ba13c6cb072571116a6f6ffecd}{is\_\-symmetric} () const
\begin{DoxyCompactList}\small\item\em Is the window symmetric? \item\end{DoxyCompactList}\item 
unsigned \hyperlink{a00041_a6230a8626a42be4c82ad55be641dc90b}{delta} () const
\begin{DoxyCompactList}\small\item\em Return the maximum coordinate gap between the window center and a window point. \item\end{DoxyCompactList}\item 
\hyperlink{a00242}{self\_\-} \& \hyperlink{a00041_a458ad3c26e91500a343a609563b7a089}{sym} ()
\begin{DoxyCompactList}\small\item\em Apply a central symmetry to the target window. \item\end{DoxyCompactList}\end{DoxyCompactItemize}
\end{Indent}


\subsection{Detailed Description}
\subsubsection*{template$<$typename G, typename S$>$ class mln::graph\_\-elt\_\-window$<$ G, S $>$}

Elementary window on graph class. {\ttfamily G} is the graph type. {\ttfamily S} is an image site set from where the center is extracted. {\ttfamily S2} is an image site set from where the neighbors are extracted. 

Definition at line 111 of file graph\_\-elt\_\-window.hh.



\subsection{Member Typedef Documentation}
\hypertarget{a00242_a2ddb32fc5752ec75843f9ecf621fc079}{
\index{mln::graph\_\-elt\_\-window@{mln::graph\_\-elt\_\-window}!bkd\_\-qiter@{bkd\_\-qiter}}
\index{bkd\_\-qiter@{bkd\_\-qiter}!mln::graph_elt_window@{mln::graph\_\-elt\_\-window}}
\subsubsection[{bkd\_\-qiter}]{\setlength{\rightskip}{0pt plus 5cm}template$<$typename G , typename S $>$ typedef {\bf graph\_\-window\_\-piter}$<$S,{\bf self\_\-},nbh\_\-bkd\_\-iter\_\-$>$ {\bf mln::graph\_\-elt\_\-window}$<$ G, S $>$::{\bf bkd\_\-qiter}}}
\label{d2/dc8/a00242_a2ddb32fc5752ec75843f9ecf621fc079}


\hyperlink{a00345}{Site\_\-Iterator} type to browse the psites of the window w.r.t. 

the reverse ordering of vertices. 

Definition at line 142 of file graph\_\-elt\_\-window.hh.

\hypertarget{a00242_a8db5dbfdd014f6de419abdd9047c56f0}{
\index{mln::graph\_\-elt\_\-window@{mln::graph\_\-elt\_\-window}!center\_\-t@{center\_\-t}}
\index{center\_\-t@{center\_\-t}!mln::graph_elt_window@{mln::graph\_\-elt\_\-window}}
\subsubsection[{center\_\-t}]{\setlength{\rightskip}{0pt plus 5cm}template$<$typename G , typename S $>$ typedef S ::{\bf psite} {\bf mln::graph\_\-elt\_\-window}$<$ G, S $>$::{\bf center\_\-t}}}
\label{d2/dc8/a00242_a8db5dbfdd014f6de419abdd9047c56f0}


Type of the window center element. 



Definition at line 131 of file graph\_\-elt\_\-window.hh.

\hypertarget{a00242_a81ec9127a9f0357d0d0a5a6bb3225809}{
\index{mln::graph\_\-elt\_\-window@{mln::graph\_\-elt\_\-window}!fwd\_\-qiter@{fwd\_\-qiter}}
\index{fwd\_\-qiter@{fwd\_\-qiter}!mln::graph_elt_window@{mln::graph\_\-elt\_\-window}}
\subsubsection[{fwd\_\-qiter}]{\setlength{\rightskip}{0pt plus 5cm}template$<$typename G , typename S $>$ typedef {\bf graph\_\-window\_\-piter}$<$S,{\bf self\_\-},nbh\_\-fwd\_\-iter\_\-$>$ {\bf mln::graph\_\-elt\_\-window}$<$ G, S $>$::{\bf fwd\_\-qiter}}}
\label{d2/dc8/a00242_a81ec9127a9f0357d0d0a5a6bb3225809}


\hyperlink{a00345}{Site\_\-Iterator} type to browse the psites of the window w.r.t. 

the ordering of vertices. 

Definition at line 138 of file graph\_\-elt\_\-window.hh.

\hypertarget{a00242_aeb4f32eb5ffb4c94e83436bae91212a8}{
\index{mln::graph\_\-elt\_\-window@{mln::graph\_\-elt\_\-window}!graph\_\-element@{graph\_\-element}}
\index{graph\_\-element@{graph\_\-element}!mln::graph_elt_window@{mln::graph\_\-elt\_\-window}}
\subsubsection[{graph\_\-element}]{\setlength{\rightskip}{0pt plus 5cm}template$<$typename G , typename S $>$ typedef S ::{\bf graph\_\-element} {\bf mln::graph\_\-elt\_\-window}$<$ G, S $>$::{\bf graph\_\-element}}}
\label{d2/dc8/a00242_aeb4f32eb5ffb4c94e83436bae91212a8}


Type of the graph element pointed by this iterator. 



Definition at line 134 of file graph\_\-elt\_\-window.hh.

\hypertarget{a00242_a74fc664f58ae0800c0e573c47ec1cf8b}{
\index{mln::graph\_\-elt\_\-window@{mln::graph\_\-elt\_\-window}!psite@{psite}}
\index{psite@{psite}!mln::graph_elt_window@{mln::graph\_\-elt\_\-window}}
\subsubsection[{psite}]{\setlength{\rightskip}{0pt plus 5cm}template$<$typename G , typename S $>$ typedef S ::{\bf psite} {\bf mln::graph\_\-elt\_\-window}$<$ G, S $>$::{\bf psite}}}
\label{d2/dc8/a00242_a74fc664f58ae0800c0e573c47ec1cf8b}


The type of psite corresponding to the window. 



Definition at line 128 of file graph\_\-elt\_\-window.hh.

\hypertarget{a00242_a8a6e64b4b8a6deaec0f35f613bb8b2b9}{
\index{mln::graph\_\-elt\_\-window@{mln::graph\_\-elt\_\-window}!qiter@{qiter}}
\index{qiter@{qiter}!mln::graph_elt_window@{mln::graph\_\-elt\_\-window}}
\subsubsection[{qiter}]{\setlength{\rightskip}{0pt plus 5cm}template$<$typename G , typename S $>$ typedef {\bf fwd\_\-qiter} {\bf mln::graph\_\-elt\_\-window}$<$ G, S $>$::{\bf qiter}}}
\label{d2/dc8/a00242_a8a6e64b4b8a6deaec0f35f613bb8b2b9}


The default qiter type. 



Definition at line 145 of file graph\_\-elt\_\-window.hh.

\hypertarget{a00041_a9f66e2a8f169bd9f0382aecad5a0590f}{
\index{mln::graph\_\-elt\_\-window@{mln::graph\_\-elt\_\-window}!site@{site}}
\index{site@{site}!mln::graph_elt_window@{mln::graph\_\-elt\_\-window}}
\subsubsection[{site}]{\setlength{\rightskip}{0pt plus 5cm}typedef S::fun\_\-t::result  {\bf mln::graph\_\-window\_\-base}$<$ S::fun\_\-t::result , {\bf graph\_\-elt\_\-window}$<$ G, S $>$  $>$::{\bf site}\hspace{0.3cm}{\ttfamily  \mbox{[}inherited\mbox{]}}}}
\label{dd/d32/a00041_a9f66e2a8f169bd9f0382aecad5a0590f}


Associated types. 

The type of site corresponding to the window. 

Definition at line 48 of file graph\_\-window\_\-base.hh.

\hypertarget{a00242_a2e57bace60e9b1b337950a2c93d4b02d}{
\index{mln::graph\_\-elt\_\-window@{mln::graph\_\-elt\_\-window}!target@{target}}
\index{target@{target}!mln::graph_elt_window@{mln::graph\_\-elt\_\-window}}
\subsubsection[{target}]{\setlength{\rightskip}{0pt plus 5cm}template$<$typename G , typename S $>$ typedef S {\bf mln::graph\_\-elt\_\-window}$<$ G, S $>$::{\bf target}}}
\label{d2/dc8/a00242_a2e57bace60e9b1b337950a2c93d4b02d}


Associated types. 



Definition at line 125 of file graph\_\-elt\_\-window.hh.



\subsection{Member Function Documentation}
\hypertarget{a00041_a6230a8626a42be4c82ad55be641dc90b}{
\index{mln::graph\_\-elt\_\-window@{mln::graph\_\-elt\_\-window}!delta@{delta}}
\index{delta@{delta}!mln::graph_elt_window@{mln::graph\_\-elt\_\-window}}
\subsubsection[{delta}]{\setlength{\rightskip}{0pt plus 5cm}unsigned {\bf mln::graph\_\-window\_\-base}$<$ S::fun\_\-t::result , {\bf graph\_\-elt\_\-window}$<$ G, S $>$  $>$::delta (
\begin{DoxyParamCaption}
{}
\end{DoxyParamCaption}
) const\hspace{0.3cm}{\ttfamily  \mbox{[}inherited\mbox{]}}}}
\label{dd/d32/a00041_a6230a8626a42be4c82ad55be641dc90b}


Return the maximum coordinate gap between the window center and a window point. 

\hypertarget{a00041_ac9e80c7a0da8931ae73ffd627c392139}{
\index{mln::graph\_\-elt\_\-window@{mln::graph\_\-elt\_\-window}!is\_\-centered@{is\_\-centered}}
\index{is\_\-centered@{is\_\-centered}!mln::graph_elt_window@{mln::graph\_\-elt\_\-window}}
\subsubsection[{is\_\-centered}]{\setlength{\rightskip}{0pt plus 5cm}bool {\bf mln::graph\_\-window\_\-base}$<$ S::fun\_\-t::result , {\bf graph\_\-elt\_\-window}$<$ G, S $>$  $>$::is\_\-centered (
\begin{DoxyParamCaption}
{}
\end{DoxyParamCaption}
) const\hspace{0.3cm}{\ttfamily  \mbox{[}inherited\mbox{]}}}}
\label{dd/d32/a00041_ac9e80c7a0da8931ae73ffd627c392139}


Is the window centered? 

\hypertarget{a00041_a977411b9cc32c20ffa392602fe1c55a0}{
\index{mln::graph\_\-elt\_\-window@{mln::graph\_\-elt\_\-window}!is\_\-empty@{is\_\-empty}}
\index{is\_\-empty@{is\_\-empty}!mln::graph_elt_window@{mln::graph\_\-elt\_\-window}}
\subsubsection[{is\_\-empty}]{\setlength{\rightskip}{0pt plus 5cm}bool {\bf mln::graph\_\-window\_\-base}$<$ S::fun\_\-t::result , {\bf graph\_\-elt\_\-window}$<$ G, S $>$  $>$::is\_\-empty (
\begin{DoxyParamCaption}
{}
\end{DoxyParamCaption}
) const\hspace{0.3cm}{\ttfamily  \mbox{[}inherited\mbox{]}}}}
\label{dd/d32/a00041_a977411b9cc32c20ffa392602fe1c55a0}


Interface of the concept Window. 

Is the window is empty? \hypertarget{a00041_a80ddb0ba13c6cb072571116a6f6ffecd}{
\index{mln::graph\_\-elt\_\-window@{mln::graph\_\-elt\_\-window}!is\_\-symmetric@{is\_\-symmetric}}
\index{is\_\-symmetric@{is\_\-symmetric}!mln::graph_elt_window@{mln::graph\_\-elt\_\-window}}
\subsubsection[{is\_\-symmetric}]{\setlength{\rightskip}{0pt plus 5cm}bool {\bf mln::graph\_\-window\_\-base}$<$ S::fun\_\-t::result , {\bf graph\_\-elt\_\-window}$<$ G, S $>$  $>$::is\_\-symmetric (
\begin{DoxyParamCaption}
{}
\end{DoxyParamCaption}
) const\hspace{0.3cm}{\ttfamily  \mbox{[}inherited\mbox{]}}}}
\label{dd/d32/a00041_a80ddb0ba13c6cb072571116a6f6ffecd}


Is the window symmetric? 

\hypertarget{a00041_a325b2dd7be434ee90fd4367b44bd3b24}{
\index{mln::graph\_\-elt\_\-window@{mln::graph\_\-elt\_\-window}!is\_\-valid@{is\_\-valid}}
\index{is\_\-valid@{is\_\-valid}!mln::graph_elt_window@{mln::graph\_\-elt\_\-window}}
\subsubsection[{is\_\-valid}]{\setlength{\rightskip}{0pt plus 5cm}bool {\bf mln::graph\_\-window\_\-base}$<$ S::fun\_\-t::result , {\bf graph\_\-elt\_\-window}$<$ G, S $>$  $>$::is\_\-valid (
\begin{DoxyParamCaption}
{}
\end{DoxyParamCaption}
) const\hspace{0.3cm}{\ttfamily  \mbox{[}inherited\mbox{]}}}}
\label{dd/d32/a00041_a325b2dd7be434ee90fd4367b44bd3b24}


Return true by default. 

\hypertarget{a00041_a458ad3c26e91500a343a609563b7a089}{
\index{mln::graph\_\-elt\_\-window@{mln::graph\_\-elt\_\-window}!sym@{sym}}
\index{sym@{sym}!mln::graph_elt_window@{mln::graph\_\-elt\_\-window}}
\subsubsection[{sym}]{\setlength{\rightskip}{0pt plus 5cm}{\bf self\_\-}\& {\bf mln::graph\_\-window\_\-base}$<$ S::fun\_\-t::result , {\bf graph\_\-elt\_\-window}$<$ G, S $>$  $>$::sym (
\begin{DoxyParamCaption}
{}
\end{DoxyParamCaption}
)\hspace{0.3cm}{\ttfamily  \mbox{[}inherited\mbox{]}}}}
\label{dd/d32/a00041_a458ad3c26e91500a343a609563b7a089}


Apply a central symmetry to the target window. 

