\hypertarget{a00386}{
\section{mln::tr\_\-image$<$ S, I, T $>$ Struct Template Reference}
\label{dd/df5/a00386}\index{mln::tr\_\-image@{mln::tr\_\-image}}
}


Transform an image by a given transformation.  




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



Inherits image\_\-identity$<$ I, S, tr\_\-image$<$ S, I, T $>$ $>$.

\subsection*{Public Types}
\begin{DoxyCompactItemize}
\item 
typedef I::value \hyperlink{a00386_a0cbd33cbeedb471c9a2c267fc80535b5}{lvalue}
\begin{DoxyCompactList}\small\item\em Return type of read-\/write access. \item\end{DoxyCompactList}\item 
typedef I::psite \hyperlink{a00386_a1c82fb4df913e596c672cd484d709c39}{psite}
\begin{DoxyCompactList}\small\item\em \hyperlink{a00331}{Point\_\-Site} associated type. \item\end{DoxyCompactList}\item 
typedef I::value \hyperlink{a00386_acc841c3677e90a524df48f230ee7ebeb}{rvalue}
\begin{DoxyCompactList}\small\item\em Return type of read-\/only access. \item\end{DoxyCompactList}\item 
typedef I::site \hyperlink{a00386_a31fa4429e47843458d4b8211bde7e154}{site}
\begin{DoxyCompactList}\small\item\em \hyperlink{a00343}{Site} associated type. \item\end{DoxyCompactList}\item 
typedef \hyperlink{a00386}{tr\_\-image}$<$ S, tag::image\_\-$<$ I $>$, T $>$ \hyperlink{a00386_aeb433b6e423d85bbd6c7bcfb491dbec3}{skeleton}
\begin{DoxyCompactList}\small\item\em Skeleton. \item\end{DoxyCompactList}\item 
typedef I::value \hyperlink{a00386_afb6c39993b983ed2dbb3bb847c26895c}{value}
\begin{DoxyCompactList}\small\item\em \hyperlink{a00418}{Value} associated type. \item\end{DoxyCompactList}\end{DoxyCompactItemize}
\subsection*{Public Member Functions}
\begin{DoxyCompactItemize}
\item 
const S \& \hyperlink{a00386_ac89a01e3014ccb52b39d5934ba973698}{domain} () const 
\begin{DoxyCompactList}\small\item\em Return the domain morpher. \item\end{DoxyCompactList}\item 
bool \hyperlink{a00386_a64506932d1a77505b6f10932444f6571}{has} (const vec\_\-t \&v) const 
\begin{DoxyCompactList}\small\item\em Test if a pixel value is accessible at {\ttfamily v}. \item\end{DoxyCompactList}\item 
bool \hyperlink{a00386_a906c7036f281cd0994eda1c4ef00a4ca}{is\_\-valid} () const 
\begin{DoxyCompactList}\small\item\em Test if this image has been initialized. \item\end{DoxyCompactList}\item 
I::value \hyperlink{a00386_a304887ad83ff1015cd09fe1f0bcfa532}{operator()} (const \hyperlink{a00386_a1c82fb4df913e596c672cd484d709c39}{psite} \&p) const 
\begin{DoxyCompactList}\small\item\em Read-\/only access of pixel value at point site {\ttfamily p}. \item\end{DoxyCompactList}\item 
void \hyperlink{a00386_ab86493f39236d9953974e9521f17e635}{set\_\-tr} (T \&tr)
\begin{DoxyCompactList}\small\item\em Set the transformation. \item\end{DoxyCompactList}\item 
const T \& \hyperlink{a00386_a00b1ad9fe464e2253590b6d9af9f34f1}{tr} () const 
\begin{DoxyCompactList}\small\item\em Return the underlying transformation. \item\end{DoxyCompactList}\item 
\hyperlink{a00386_a7e4af7f6478b06d0bb016117e3e3ddf4}{tr\_\-image} (const S \&s, const I \&ima, const T \&tr)
\begin{DoxyCompactList}\small\item\em Constructors. \item\end{DoxyCompactList}\end{DoxyCompactItemize}


\subsection{Detailed Description}
\subsubsection*{template$<$typename S, typename I, typename T$>$ struct mln::tr\_\-image$<$ S, I, T $>$}

Transform an image by a given transformation. 

Definition at line 83 of file tr\_\-image.hh.



\subsection{Member Typedef Documentation}
\hypertarget{a00386_a0cbd33cbeedb471c9a2c267fc80535b5}{
\index{mln::tr\_\-image@{mln::tr\_\-image}!lvalue@{lvalue}}
\index{lvalue@{lvalue}!mln::tr_image@{mln::tr\_\-image}}
\subsubsection[{lvalue}]{\setlength{\rightskip}{0pt plus 5cm}template$<$typename S, typename I, typename T$>$ typedef I ::{\bf value} {\bf mln::tr\_\-image}$<$ S, I, T $>$::{\bf lvalue}}}
\label{dd/df5/a00386_a0cbd33cbeedb471c9a2c267fc80535b5}


Return type of read-\/write access. 



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

\hypertarget{a00386_a1c82fb4df913e596c672cd484d709c39}{
\index{mln::tr\_\-image@{mln::tr\_\-image}!psite@{psite}}
\index{psite@{psite}!mln::tr_image@{mln::tr\_\-image}}
\subsubsection[{psite}]{\setlength{\rightskip}{0pt plus 5cm}template$<$typename S, typename I, typename T$>$ typedef I ::{\bf psite} {\bf mln::tr\_\-image}$<$ S, I, T $>$::{\bf psite}}}
\label{dd/df5/a00386_a1c82fb4df913e596c672cd484d709c39}


\hyperlink{a00331}{Point\_\-Site} associated type. 



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

\hypertarget{a00386_acc841c3677e90a524df48f230ee7ebeb}{
\index{mln::tr\_\-image@{mln::tr\_\-image}!rvalue@{rvalue}}
\index{rvalue@{rvalue}!mln::tr_image@{mln::tr\_\-image}}
\subsubsection[{rvalue}]{\setlength{\rightskip}{0pt plus 5cm}template$<$typename S, typename I, typename T$>$ typedef I ::{\bf value} {\bf mln::tr\_\-image}$<$ S, I, T $>$::{\bf rvalue}}}
\label{dd/df5/a00386_acc841c3677e90a524df48f230ee7ebeb}


Return type of read-\/only access. 



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

\hypertarget{a00386_a31fa4429e47843458d4b8211bde7e154}{
\index{mln::tr\_\-image@{mln::tr\_\-image}!site@{site}}
\index{site@{site}!mln::tr_image@{mln::tr\_\-image}}
\subsubsection[{site}]{\setlength{\rightskip}{0pt plus 5cm}template$<$typename S, typename I, typename T$>$ typedef I ::{\bf site} {\bf mln::tr\_\-image}$<$ S, I, T $>$::{\bf site}}}
\label{dd/df5/a00386_a31fa4429e47843458d4b8211bde7e154}


\hyperlink{a00343}{Site} associated type. 



Definition at line 95 of file tr\_\-image.hh.

\hypertarget{a00386_aeb433b6e423d85bbd6c7bcfb491dbec3}{
\index{mln::tr\_\-image@{mln::tr\_\-image}!skeleton@{skeleton}}
\index{skeleton@{skeleton}!mln::tr_image@{mln::tr\_\-image}}
\subsubsection[{skeleton}]{\setlength{\rightskip}{0pt plus 5cm}template$<$typename S, typename I, typename T$>$ typedef {\bf tr\_\-image}$<$ S, tag::image\_\-$<$I$>$, T$>$ {\bf mln::tr\_\-image}$<$ S, I, T $>$::{\bf skeleton}}}
\label{dd/df5/a00386_aeb433b6e423d85bbd6c7bcfb491dbec3}


Skeleton. 



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

\hypertarget{a00386_afb6c39993b983ed2dbb3bb847c26895c}{
\index{mln::tr\_\-image@{mln::tr\_\-image}!value@{value}}
\index{value@{value}!mln::tr_image@{mln::tr\_\-image}}
\subsubsection[{value}]{\setlength{\rightskip}{0pt plus 5cm}template$<$typename S, typename I, typename T$>$ typedef I ::{\bf value} {\bf mln::tr\_\-image}$<$ S, I, T $>$::{\bf value}}}
\label{dd/df5/a00386_afb6c39993b983ed2dbb3bb847c26895c}


\hyperlink{a00418}{Value} associated type. 



Definition at line 98 of file tr\_\-image.hh.



\subsection{Constructor \& Destructor Documentation}
\hypertarget{a00386_a7e4af7f6478b06d0bb016117e3e3ddf4}{
\index{mln::tr\_\-image@{mln::tr\_\-image}!tr\_\-image@{tr\_\-image}}
\index{tr\_\-image@{tr\_\-image}!mln::tr_image@{mln::tr\_\-image}}
\subsubsection[{tr\_\-image}]{\setlength{\rightskip}{0pt plus 5cm}template$<$typename S , typename I , typename T $>$ {\bf mln::tr\_\-image}$<$ S, I, T $>$::{\bf tr\_\-image} (
\begin{DoxyParamCaption}
\item[{const S \&}]{ s, }
\item[{const I \&}]{ ima, }
\item[{const T \&}]{ tr}
\end{DoxyParamCaption}
)\hspace{0.3cm}{\ttfamily  \mbox{[}inline\mbox{]}}}}
\label{dd/df5/a00386_a7e4af7f6478b06d0bb016117e3e3ddf4}


Constructors. 



Definition at line 174 of file tr\_\-image.hh.



\subsection{Member Function Documentation}
\hypertarget{a00386_ac89a01e3014ccb52b39d5934ba973698}{
\index{mln::tr\_\-image@{mln::tr\_\-image}!domain@{domain}}
\index{domain@{domain}!mln::tr_image@{mln::tr\_\-image}}
\subsubsection[{domain}]{\setlength{\rightskip}{0pt plus 5cm}template$<$typename S , typename I , typename T $>$ const S \& {\bf mln::tr\_\-image}$<$ S, I, T $>$::domain (
\begin{DoxyParamCaption}
{}
\end{DoxyParamCaption}
) const\hspace{0.3cm}{\ttfamily  \mbox{[}inline\mbox{]}}}}
\label{dd/df5/a00386_ac89a01e3014ccb52b39d5934ba973698}


Return the domain morpher. 



Definition at line 247 of file tr\_\-image.hh.

\hypertarget{a00386_a64506932d1a77505b6f10932444f6571}{
\index{mln::tr\_\-image@{mln::tr\_\-image}!has@{has}}
\index{has@{has}!mln::tr_image@{mln::tr\_\-image}}
\subsubsection[{has}]{\setlength{\rightskip}{0pt plus 5cm}template$<$typename S , typename I , typename T $>$ bool {\bf mln::tr\_\-image}$<$ S, I, T $>$::has (
\begin{DoxyParamCaption}
\item[{const vec\_\-t \&}]{ v}
\end{DoxyParamCaption}
) const\hspace{0.3cm}{\ttfamily  \mbox{[}inline\mbox{]}}}}
\label{dd/df5/a00386_a64506932d1a77505b6f10932444f6571}


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



Definition at line 200 of file tr\_\-image.hh.

\hypertarget{a00386_a906c7036f281cd0994eda1c4ef00a4ca}{
\index{mln::tr\_\-image@{mln::tr\_\-image}!is\_\-valid@{is\_\-valid}}
\index{is\_\-valid@{is\_\-valid}!mln::tr_image@{mln::tr\_\-image}}
\subsubsection[{is\_\-valid}]{\setlength{\rightskip}{0pt plus 5cm}template$<$typename S , typename I , typename T $>$ bool {\bf mln::tr\_\-image}$<$ S, I, T $>$::is\_\-valid (
\begin{DoxyParamCaption}
{}
\end{DoxyParamCaption}
) const\hspace{0.3cm}{\ttfamily  \mbox{[}inline\mbox{]}}}}
\label{dd/df5/a00386_a906c7036f281cd0994eda1c4ef00a4ca}


Test if this image has been initialized. 



Definition at line 191 of file tr\_\-image.hh.

\hypertarget{a00386_a304887ad83ff1015cd09fe1f0bcfa532}{
\index{mln::tr\_\-image@{mln::tr\_\-image}!operator()@{operator()}}
\index{operator()@{operator()}!mln::tr_image@{mln::tr\_\-image}}
\subsubsection[{operator()}]{\setlength{\rightskip}{0pt plus 5cm}template$<$typename S , typename I , typename T $>$ I::value {\bf mln::tr\_\-image}$<$ S, I, T $>$::operator() (
\begin{DoxyParamCaption}
\item[{const {\bf psite} \&}]{ p}
\end{DoxyParamCaption}
) const\hspace{0.3cm}{\ttfamily  \mbox{[}inline\mbox{]}}}}
\label{dd/df5/a00386_a304887ad83ff1015cd09fe1f0bcfa532}


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

Mutable access is only OK for reading (not writing). 

Definition at line 213 of file tr\_\-image.hh.

\hypertarget{a00386_ab86493f39236d9953974e9521f17e635}{
\index{mln::tr\_\-image@{mln::tr\_\-image}!set\_\-tr@{set\_\-tr}}
\index{set\_\-tr@{set\_\-tr}!mln::tr_image@{mln::tr\_\-image}}
\subsubsection[{set\_\-tr}]{\setlength{\rightskip}{0pt plus 5cm}template$<$typename S , typename I , typename T $>$ void {\bf mln::tr\_\-image}$<$ S, I, T $>$::set\_\-tr (
\begin{DoxyParamCaption}
\item[{T \&}]{ tr}
\end{DoxyParamCaption}
)\hspace{0.3cm}{\ttfamily  \mbox{[}inline\mbox{]}}}}
\label{dd/df5/a00386_ab86493f39236d9953974e9521f17e635}


Set the transformation. 



Definition at line 231 of file tr\_\-image.hh.

\hypertarget{a00386_a00b1ad9fe464e2253590b6d9af9f34f1}{
\index{mln::tr\_\-image@{mln::tr\_\-image}!tr@{tr}}
\index{tr@{tr}!mln::tr_image@{mln::tr\_\-image}}
\subsubsection[{tr}]{\setlength{\rightskip}{0pt plus 5cm}template$<$typename S , typename I , typename T $>$ const T \& {\bf mln::tr\_\-image}$<$ S, I, T $>$::tr (
\begin{DoxyParamCaption}
{}
\end{DoxyParamCaption}
) const\hspace{0.3cm}{\ttfamily  \mbox{[}inline\mbox{]}}}}
\label{dd/df5/a00386_a00b1ad9fe464e2253590b6d9af9f34f1}


Return the underlying transformation. 



Definition at line 239 of file tr\_\-image.hh.

