\hypertarget{a00257}{
\section{mln::lazy\_\-image$<$ I, F, B $>$ Struct Template Reference}
\label{d9/d39/a00257}\index{mln::lazy\_\-image@{mln::lazy\_\-image}}
}


\hyperlink{a00044}{Image} values are computed on the fly.  




{\ttfamily \#include $<$lazy\_\-image.hh$>$}



Inherits image\_\-identity$<$ mln::trait::ch\_\-value$<$ I, F::result $>$::ret, I::domain\_\-t, lazy\_\-image$<$ I, F, B $>$ $>$.

\subsection*{Public Types}
\begin{DoxyCompactItemize}
\item 
typedef F::result \hyperlink{a00257_aa8f0c2ffda15bc0b84277b6634844da9}{lvalue}
\begin{DoxyCompactList}\small\item\em Return type of read-\/write access. \item\end{DoxyCompactList}\item 
typedef F::result \hyperlink{a00257_a1de92f1c7f5523d776e8c85b7d7710d2}{rvalue}
\begin{DoxyCompactList}\small\item\em Return type of read access. \item\end{DoxyCompactList}\item 
typedef \hyperlink{a00257}{lazy\_\-image}$<$ tag::image\_\-$<$ I $>$, F, B $>$ \hyperlink{a00257_a33cb93208fa69013b0581842dfbaab71}{skeleton}
\begin{DoxyCompactList}\small\item\em Skeleton. \item\end{DoxyCompactList}\end{DoxyCompactItemize}
\subsection*{Public Member Functions}
\begin{DoxyCompactItemize}
\item 
const \hyperlink{a00135}{box}$<$ typename I::psite $>$ \& \hyperlink{a00257_a6c6befdd6814ebb8bcef8f8b12b06f3e}{domain} () const 
\begin{DoxyCompactList}\small\item\em Return domain of lazyd\_\-image. \item\end{DoxyCompactList}\item 
bool \hyperlink{a00257_a00371d69b97d19fdc48ca5418da8e087}{has} (const typename I::psite \&) const 
\begin{DoxyCompactList}\small\item\em Test if a pixel value is accessible at {\ttfamily p}. \item\end{DoxyCompactList}\item 
\hyperlink{a00257_a4a98eaad26300736a9c20f44eb6bc627}{lazy\_\-image} (const F \&fun, const B \&\hyperlink{a00135}{box})
\begin{DoxyCompactList}\small\item\em Constructors. \item\end{DoxyCompactList}\item 
\hyperlink{a00257_a41b337fce06a5dd865a02655f9f1dd69}{lazy\_\-image} ()
\begin{DoxyCompactList}\small\item\em Constructors. \item\end{DoxyCompactList}\item 
F::result \hyperlink{a00257_acbdad7ec8b0c9cf8997ae8230a83946f}{operator()} (const typename F::input \&x) const 
\begin{DoxyCompactList}\small\item\em Read-\/only access of pixel value at F::input {\ttfamily x}. \item\end{DoxyCompactList}\item 
\hyperlink{a00257_aa8f0c2ffda15bc0b84277b6634844da9}{lvalue} \hyperlink{a00257_add16d52b0c8eb8dd379c732eb8a80b00}{operator()} (const typename I::psite \&p)
\begin{DoxyCompactList}\small\item\em Read and \char`\"{}write if possible\char`\"{} access of pixel value at point site {\ttfamily p}. \item\end{DoxyCompactList}\item 
F::result \hyperlink{a00257_a534b402403d5d02c1bdb3ffd636d3e35}{operator()} (const typename F::input \&x)
\begin{DoxyCompactList}\small\item\em Read and \char`\"{}write if possible\char`\"{} access of pixel value at F::input {\ttfamily x}. \item\end{DoxyCompactList}\item 
\hyperlink{a00257_a1de92f1c7f5523d776e8c85b7d7710d2}{rvalue} \hyperlink{a00257_ab133a1d5190e1b47e72e6ae430cffdb2}{operator()} (const typename I::psite \&p) const 
\begin{DoxyCompactList}\small\item\em Read-\/only access of pixel value at point site {\ttfamily p}. \item\end{DoxyCompactList}\end{DoxyCompactItemize}


\subsection{Detailed Description}
\subsubsection*{template$<$typename I, typename F, typename B$>$ struct mln::lazy\_\-image$<$ I, F, B $>$}

\hyperlink{a00044}{Image} values are computed on the fly. The parameter {\ttfamily I} is the type of image. The parameter {\ttfamily F} is the type of function. The parameter {\ttfamily B} is the type of box.

This image class tage a functor {\ttfamily fun} and a box {\ttfamily box}. Access to ima(p) where {\ttfamily p} include {\ttfamily box} return fun(b) lazily. 

Definition at line 92 of file lazy\_\-image.hh.



\subsection{Member Typedef Documentation}
\hypertarget{a00257_aa8f0c2ffda15bc0b84277b6634844da9}{
\index{mln::lazy\_\-image@{mln::lazy\_\-image}!lvalue@{lvalue}}
\index{lvalue@{lvalue}!mln::lazy_image@{mln::lazy\_\-image}}
\subsubsection[{lvalue}]{\setlength{\rightskip}{0pt plus 5cm}template$<$typename I, typename F, typename B$>$ typedef F ::result {\bf mln::lazy\_\-image}$<$ I, F, B $>$::{\bf lvalue}}}
\label{d9/d39/a00257_aa8f0c2ffda15bc0b84277b6634844da9}


Return type of read-\/write access. 



Definition at line 104 of file lazy\_\-image.hh.

\hypertarget{a00257_a1de92f1c7f5523d776e8c85b7d7710d2}{
\index{mln::lazy\_\-image@{mln::lazy\_\-image}!rvalue@{rvalue}}
\index{rvalue@{rvalue}!mln::lazy_image@{mln::lazy\_\-image}}
\subsubsection[{rvalue}]{\setlength{\rightskip}{0pt plus 5cm}template$<$typename I, typename F, typename B$>$ typedef F ::result {\bf mln::lazy\_\-image}$<$ I, F, B $>$::{\bf rvalue}}}
\label{d9/d39/a00257_a1de92f1c7f5523d776e8c85b7d7710d2}


Return type of read access. 



Definition at line 101 of file lazy\_\-image.hh.

\hypertarget{a00257_a33cb93208fa69013b0581842dfbaab71}{
\index{mln::lazy\_\-image@{mln::lazy\_\-image}!skeleton@{skeleton}}
\index{skeleton@{skeleton}!mln::lazy_image@{mln::lazy\_\-image}}
\subsubsection[{skeleton}]{\setlength{\rightskip}{0pt plus 5cm}template$<$typename I, typename F, typename B$>$ typedef {\bf lazy\_\-image}$<$ tag::image\_\-$<$I$>$, F, B $>$ {\bf mln::lazy\_\-image}$<$ I, F, B $>$::{\bf skeleton}}}
\label{d9/d39/a00257_a33cb93208fa69013b0581842dfbaab71}


Skeleton. 



Definition at line 107 of file lazy\_\-image.hh.



\subsection{Constructor \& Destructor Documentation}
\hypertarget{a00257_a41b337fce06a5dd865a02655f9f1dd69}{
\index{mln::lazy\_\-image@{mln::lazy\_\-image}!lazy\_\-image@{lazy\_\-image}}
\index{lazy\_\-image@{lazy\_\-image}!mln::lazy_image@{mln::lazy\_\-image}}
\subsubsection[{lazy\_\-image}]{\setlength{\rightskip}{0pt plus 5cm}template$<$typename I, typename F, typename B$>$ {\bf mln::lazy\_\-image}$<$ I, F, B $>$::{\bf lazy\_\-image} (
\begin{DoxyParamCaption}
{}
\end{DoxyParamCaption}
)}}
\label{d9/d39/a00257_a41b337fce06a5dd865a02655f9f1dd69}


Constructors. 

\hypertarget{a00257_a4a98eaad26300736a9c20f44eb6bc627}{
\index{mln::lazy\_\-image@{mln::lazy\_\-image}!lazy\_\-image@{lazy\_\-image}}
\index{lazy\_\-image@{lazy\_\-image}!mln::lazy_image@{mln::lazy\_\-image}}
\subsubsection[{lazy\_\-image}]{\setlength{\rightskip}{0pt plus 5cm}template$<$typename I , typename F, typename B$>$ {\bf mln::lazy\_\-image}$<$ I, F, B $>$::{\bf lazy\_\-image} (
\begin{DoxyParamCaption}
\item[{const F \&}]{ fun, }
\item[{const B \&}]{ box}
\end{DoxyParamCaption}
)\hspace{0.3cm}{\ttfamily  \mbox{[}inline\mbox{]}}}}
\label{d9/d39/a00257_a4a98eaad26300736a9c20f44eb6bc627}


Constructors. 



Definition at line 161 of file lazy\_\-image.hh.



\subsection{Member Function Documentation}
\hypertarget{a00257_a6c6befdd6814ebb8bcef8f8b12b06f3e}{
\index{mln::lazy\_\-image@{mln::lazy\_\-image}!domain@{domain}}
\index{domain@{domain}!mln::lazy_image@{mln::lazy\_\-image}}
\subsubsection[{domain}]{\setlength{\rightskip}{0pt plus 5cm}template$<$typename I , typename F , typename B $>$ const {\bf box}$<$ typename I::psite $>$ \& {\bf mln::lazy\_\-image}$<$ I, F, B $>$::domain (
\begin{DoxyParamCaption}
{}
\end{DoxyParamCaption}
) const\hspace{0.3cm}{\ttfamily  \mbox{[}inline\mbox{]}}}}
\label{d9/d39/a00257_a6c6befdd6814ebb8bcef8f8b12b06f3e}


Return domain of lazyd\_\-image. 



Definition at line 226 of file lazy\_\-image.hh.

\hypertarget{a00257_a00371d69b97d19fdc48ca5418da8e087}{
\index{mln::lazy\_\-image@{mln::lazy\_\-image}!has@{has}}
\index{has@{has}!mln::lazy_image@{mln::lazy\_\-image}}
\subsubsection[{has}]{\setlength{\rightskip}{0pt plus 5cm}template$<$typename I, typename F , typename B $>$ bool {\bf mln::lazy\_\-image}$<$ I, F, B $>$::has (
\begin{DoxyParamCaption}
\item[{const typename I::psite \&}]{ p}
\end{DoxyParamCaption}
) const\hspace{0.3cm}{\ttfamily  \mbox{[}inline\mbox{]}}}}
\label{d9/d39/a00257_a00371d69b97d19fdc48ca5418da8e087}


Test if a pixel value is accessible at {\ttfamily p}. 



Definition at line 175 of file lazy\_\-image.hh.

\hypertarget{a00257_ab133a1d5190e1b47e72e6ae430cffdb2}{
\index{mln::lazy\_\-image@{mln::lazy\_\-image}!operator()@{operator()}}
\index{operator()@{operator()}!mln::lazy_image@{mln::lazy\_\-image}}
\subsubsection[{operator()}]{\setlength{\rightskip}{0pt plus 5cm}template$<$typename I, typename F, typename B $>$ {\bf lazy\_\-image}$<$ I, F, B $>$::{\bf rvalue} {\bf mln::lazy\_\-image}$<$ I, F, B $>$::operator() (
\begin{DoxyParamCaption}
\item[{const typename I::psite \&}]{ p}
\end{DoxyParamCaption}
) const\hspace{0.3cm}{\ttfamily  \mbox{[}inline\mbox{]}}}}
\label{d9/d39/a00257_ab133a1d5190e1b47e72e6ae430cffdb2}


Read-\/only access of pixel value at point site {\ttfamily p}. 



Definition at line 210 of file lazy\_\-image.hh.

\hypertarget{a00257_a534b402403d5d02c1bdb3ffd636d3e35}{
\index{mln::lazy\_\-image@{mln::lazy\_\-image}!operator()@{operator()}}
\index{operator()@{operator()}!mln::lazy_image@{mln::lazy\_\-image}}
\subsubsection[{operator()}]{\setlength{\rightskip}{0pt plus 5cm}template$<$typename I , typename F, typename B $>$ F::result {\bf mln::lazy\_\-image}$<$ I, F, B $>$::operator() (
\begin{DoxyParamCaption}
\item[{const typename F::input \&}]{ x}
\end{DoxyParamCaption}
)\hspace{0.3cm}{\ttfamily  \mbox{[}inline\mbox{]}}}}
\label{d9/d39/a00257_a534b402403d5d02c1bdb3ffd636d3e35}


Read and \char`\"{}write if possible\char`\"{} access of pixel value at F::input {\ttfamily x}. 



Definition at line 197 of file lazy\_\-image.hh.

\hypertarget{a00257_acbdad7ec8b0c9cf8997ae8230a83946f}{
\index{mln::lazy\_\-image@{mln::lazy\_\-image}!operator()@{operator()}}
\index{operator()@{operator()}!mln::lazy_image@{mln::lazy\_\-image}}
\subsubsection[{operator()}]{\setlength{\rightskip}{0pt plus 5cm}template$<$typename I , typename F, typename B $>$ F::result {\bf mln::lazy\_\-image}$<$ I, F, B $>$::operator() (
\begin{DoxyParamCaption}
\item[{const typename F::input \&}]{ x}
\end{DoxyParamCaption}
) const\hspace{0.3cm}{\ttfamily  \mbox{[}inline\mbox{]}}}}
\label{d9/d39/a00257_acbdad7ec8b0c9cf8997ae8230a83946f}


Read-\/only access of pixel value at F::input {\ttfamily x}. 



Definition at line 183 of file lazy\_\-image.hh.

\hypertarget{a00257_add16d52b0c8eb8dd379c732eb8a80b00}{
\index{mln::lazy\_\-image@{mln::lazy\_\-image}!operator()@{operator()}}
\index{operator()@{operator()}!mln::lazy_image@{mln::lazy\_\-image}}
\subsubsection[{operator()}]{\setlength{\rightskip}{0pt plus 5cm}template$<$typename I, typename F, typename B $>$ {\bf lazy\_\-image}$<$ I, F, B $>$::{\bf lvalue} {\bf mln::lazy\_\-image}$<$ I, F, B $>$::operator() (
\begin{DoxyParamCaption}
\item[{const typename I::psite \&}]{ p}
\end{DoxyParamCaption}
)\hspace{0.3cm}{\ttfamily  \mbox{[}inline\mbox{]}}}}
\label{d9/d39/a00257_add16d52b0c8eb8dd379c732eb8a80b00}


Read and \char`\"{}write if possible\char`\"{} access of pixel value at point site {\ttfamily p}. 



Definition at line 218 of file lazy\_\-image.hh.

