\hypertarget{a00111}{
\section{mln::accu::shape::height$<$ I $>$ Struct Template Reference}
\label{dd/d6d/a00111}\index{mln::accu::shape::height@{mln::accu::shape::height}}
}


Height accumulator.  




{\ttfamily \#include $<$height.hh$>$}



Inherits base$<$ unsigned, height$<$ I $>$ $>$.

\subsection*{Public Types}
\begin{DoxyCompactItemize}
\item 
typedef \hyperlink{a00408}{util::pix}$<$ I $>$ \hyperlink{a00111_a79267307a374a6bea74ed7d96b0012e2}{argument}
\begin{DoxyCompactList}\small\item\em The accumulated data type. \item\end{DoxyCompactList}\item 
typedef \hyperlink{a00408_a69b118d96dc3de8f0e41c8e136193515}{argument::value} \hyperlink{a00111_afddd2d5024d2785c6554324b77a962d4}{value}
\begin{DoxyCompactList}\small\item\em The value type associated to the pixel type. \item\end{DoxyCompactList}\end{DoxyCompactItemize}
\subsection*{Public Member Functions}
\begin{DoxyCompactItemize}
\item 
bool \hyperlink{a00111_a11034a24fed03b8b8bd99df33800388b}{is\_\-valid} () const 
\begin{DoxyCompactList}\small\item\em Check whether this accu is able to return a result. \item\end{DoxyCompactList}\item 
void \hyperlink{a00026_a745794a4ef16926d3c09ebbaa8b6b557}{take\_\-as\_\-init} (const T \&t)
\begin{DoxyCompactList}\small\item\em Take as initialization the value {\ttfamily t}. \item\end{DoxyCompactList}\item 
void \hyperlink{a00026_a138e094daa1a85f345bbdfd852c9fc67}{take\_\-n\_\-times} (unsigned n, const T \&t)
\begin{DoxyCompactList}\small\item\em Take {\ttfamily n} times the value {\ttfamily t}. \item\end{DoxyCompactList}\item 
unsigned \hyperlink{a00111_a81c8da4fdc03fba3ffd285d342a9d5b1}{to\_\-result} () const 
\begin{DoxyCompactList}\small\item\em Get the value of the accumulator. \item\end{DoxyCompactList}\end{DoxyCompactItemize}
\begin{Indent}{\bf }\par
{\em \label{_amgrpd41d8cd98f00b204e9800998ecf8427e}
 }\begin{DoxyCompactItemize}
\item 
void \hyperlink{a00111_a3e04ec35fe704ffebf255e2655b56b0d}{init} ()
\begin{DoxyCompactList}\small\item\em Manipulators. \item\end{DoxyCompactList}\item 
void \hyperlink{a00111_a20e4e2b2be20005a167dde41fe97ee50}{set\_\-value} (unsigned h)
\begin{DoxyCompactList}\small\item\em Force the value of the counter to {\itshape h\/}. \item\end{DoxyCompactList}\end{DoxyCompactItemize}
\end{Indent}


\subsection{Detailed Description}
\subsubsection*{template$<$typename I$>$ struct mln::accu::shape::height$<$ I $>$}

Height accumulator. The parameter {\ttfamily I} is the image type on which the accumulator of pixels is built. 

Definition at line 68 of file accu/shape/height.hh.



\subsection{Member Typedef Documentation}
\hypertarget{a00111_a79267307a374a6bea74ed7d96b0012e2}{
\index{mln::accu::shape::height@{mln::accu::shape::height}!argument@{argument}}
\index{argument@{argument}!mln::accu::shape::height@{mln::accu::shape::height}}
\subsubsection[{argument}]{\setlength{\rightskip}{0pt plus 5cm}template$<$typename I$>$ typedef {\bf util::pix}$<$I$>$ {\bf mln::accu::shape::height}$<$ I $>$::{\bf argument}}}
\label{dd/d6d/a00111_a79267307a374a6bea74ed7d96b0012e2}


The accumulated data type. 

The height of component is represented by the height of its root pixel. See mln::morpho::closing\_\-height and mln::morpho::opening\_\-height for actual uses of this accumulator. FIXME: Replaced by \hyperlink{a00291}{mln::morpho::attribute::height} 

Definition at line 78 of file accu/shape/height.hh.

\hypertarget{a00111_afddd2d5024d2785c6554324b77a962d4}{
\index{mln::accu::shape::height@{mln::accu::shape::height}!value@{value}}
\index{value@{value}!mln::accu::shape::height@{mln::accu::shape::height}}
\subsubsection[{value}]{\setlength{\rightskip}{0pt plus 5cm}template$<$typename I$>$ typedef {\bf argument::value} {\bf mln::accu::shape::height}$<$ I $>$::{\bf value}}}
\label{dd/d6d/a00111_afddd2d5024d2785c6554324b77a962d4}


The value type associated to the pixel type. 



Definition at line 80 of file accu/shape/height.hh.



\subsection{Member Function Documentation}
\hypertarget{a00111_a3e04ec35fe704ffebf255e2655b56b0d}{
\index{mln::accu::shape::height@{mln::accu::shape::height}!init@{init}}
\index{init@{init}!mln::accu::shape::height@{mln::accu::shape::height}}
\subsubsection[{init}]{\setlength{\rightskip}{0pt plus 5cm}template$<$typename I $>$ void {\bf mln::accu::shape::height}$<$ I $>$::init (
\begin{DoxyParamCaption}
{}
\end{DoxyParamCaption}
)\hspace{0.3cm}{\ttfamily  \mbox{[}inline\mbox{]}}}}
\label{dd/d6d/a00111_a3e04ec35fe704ffebf255e2655b56b0d}


Manipulators. 



Definition at line 150 of file accu/shape/height.hh.

\hypertarget{a00111_a11034a24fed03b8b8bd99df33800388b}{
\index{mln::accu::shape::height@{mln::accu::shape::height}!is\_\-valid@{is\_\-valid}}
\index{is\_\-valid@{is\_\-valid}!mln::accu::shape::height@{mln::accu::shape::height}}
\subsubsection[{is\_\-valid}]{\setlength{\rightskip}{0pt plus 5cm}template$<$typename I $>$ bool {\bf mln::accu::shape::height}$<$ I $>$::is\_\-valid (
\begin{DoxyParamCaption}
{}
\end{DoxyParamCaption}
) const\hspace{0.3cm}{\ttfamily  \mbox{[}inline\mbox{]}}}}
\label{dd/d6d/a00111_a11034a24fed03b8b8bd99df33800388b}


Check whether this accu is able to return a result. 

Always true here. 

Definition at line 199 of file accu/shape/height.hh.

\hypertarget{a00111_a20e4e2b2be20005a167dde41fe97ee50}{
\index{mln::accu::shape::height@{mln::accu::shape::height}!set\_\-value@{set\_\-value}}
\index{set\_\-value@{set\_\-value}!mln::accu::shape::height@{mln::accu::shape::height}}
\subsubsection[{set\_\-value}]{\setlength{\rightskip}{0pt plus 5cm}template$<$typename I $>$ void {\bf mln::accu::shape::height}$<$ I $>$::set\_\-value (
\begin{DoxyParamCaption}
\item[{unsigned}]{ h}
\end{DoxyParamCaption}
)\hspace{0.3cm}{\ttfamily  \mbox{[}inline\mbox{]}}}}
\label{dd/d6d/a00111_a20e4e2b2be20005a167dde41fe97ee50}


Force the value of the counter to {\itshape h\/}. 



Definition at line 188 of file accu/shape/height.hh.

\hypertarget{a00026_a745794a4ef16926d3c09ebbaa8b6b557}{
\index{mln::accu::shape::height@{mln::accu::shape::height}!take\_\-as\_\-init@{take\_\-as\_\-init}}
\index{take\_\-as\_\-init@{take\_\-as\_\-init}!mln::accu::shape::height@{mln::accu::shape::height}}
\subsubsection[{take\_\-as\_\-init}]{\setlength{\rightskip}{0pt plus 5cm}void {\bf mln::Accumulator}$<$ {\bf height}$<$ I $>$  $>$::take\_\-as\_\-init (
\begin{DoxyParamCaption}
\item[{const T \&}]{ t}
\end{DoxyParamCaption}
)\hspace{0.3cm}{\ttfamily  \mbox{[}inherited\mbox{]}}}}
\label{d6/d5b/a00026_a745794a4ef16926d3c09ebbaa8b6b557}


Take as initialization the value {\ttfamily t}. 

Dev note: this is a final method; override if needed by take\_\-as\_\-init\_\- (ending with '\_\-'). \hypertarget{a00026_a138e094daa1a85f345bbdfd852c9fc67}{
\index{mln::accu::shape::height@{mln::accu::shape::height}!take\_\-n\_\-times@{take\_\-n\_\-times}}
\index{take\_\-n\_\-times@{take\_\-n\_\-times}!mln::accu::shape::height@{mln::accu::shape::height}}
\subsubsection[{take\_\-n\_\-times}]{\setlength{\rightskip}{0pt plus 5cm}void {\bf mln::Accumulator}$<$ {\bf height}$<$ I $>$  $>$::take\_\-n\_\-times (
\begin{DoxyParamCaption}
\item[{unsigned}]{ n, }
\item[{const T \&}]{ t}
\end{DoxyParamCaption}
)\hspace{0.3cm}{\ttfamily  \mbox{[}inherited\mbox{]}}}}
\label{d6/d5b/a00026_a138e094daa1a85f345bbdfd852c9fc67}


Take {\ttfamily n} times the value {\ttfamily t}. 

Dev note: this is a final method; override if needed by take\_\-as\_\-init\_\- (ending with '\_\-'). \hypertarget{a00111_a81c8da4fdc03fba3ffd285d342a9d5b1}{
\index{mln::accu::shape::height@{mln::accu::shape::height}!to\_\-result@{to\_\-result}}
\index{to\_\-result@{to\_\-result}!mln::accu::shape::height@{mln::accu::shape::height}}
\subsubsection[{to\_\-result}]{\setlength{\rightskip}{0pt plus 5cm}template$<$typename I $>$ unsigned {\bf mln::accu::shape::height}$<$ I $>$::to\_\-result (
\begin{DoxyParamCaption}
{}
\end{DoxyParamCaption}
) const\hspace{0.3cm}{\ttfamily  \mbox{[}inline\mbox{]}}}}
\label{dd/d6d/a00111_a81c8da4fdc03fba3ffd285d342a9d5b1}


Get the value of the accumulator. 



Definition at line 180 of file accu/shape/height.hh.

