\hypertarget{a00235}{
\section{mln::geom::complex\_\-geometry$<$ D, P $>$ Class Template Reference}
\label{d3/d42/a00235}\index{mln::geom::complex\_\-geometry@{mln::geom::complex\_\-geometry}}
}


A functor returning the sites of the faces of a complex where the locations of each 0-\/face is stored.  




{\ttfamily \#include $<$complex\_\-geometry.hh$>$}

\subsection*{Public Member Functions}
\begin{DoxyCompactItemize}
\item 
unsigned \hyperlink{a00235_adc01465af2f8509fccd4695cb82ea983}{add\_\-location} (const P \&p)
\begin{DoxyCompactList}\small\item\em Populate the set of locations. \item\end{DoxyCompactList}\item 
\hyperlink{a00235_a77b076c6cfd8a257b3225b04f85f7f5a}{complex\_\-geometry} ()
\begin{DoxyCompactList}\small\item\em Build a complex geometry object. \item\end{DoxyCompactList}\item 
site \hyperlink{a00235_a07ccd846871354281ca4e44842e05b47}{operator()} (const \hyperlink{a00373}{mln::topo::face}$<$ D $>$ \&f) const 
\begin{DoxyCompactList}\small\item\em Retrieve the site associated to {\itshape f\/}. \item\end{DoxyCompactList}\end{DoxyCompactItemize}


\subsection{Detailed Description}
\subsubsection*{template$<$unsigned D, typename P$>$ class mln::geom::complex\_\-geometry$<$ D, P $>$}

A functor returning the sites of the faces of a complex where the locations of each 0-\/face is stored. Faces of higher dimensions are computed.


\begin{DoxyTemplParams}{Template Parameters}
\item[{\em D}]The dimension of the complex. \item[{\em P}]The type of the location of a 0-\/face.\end{DoxyTemplParams}
Locations of 0-\/face are usually points (hence the {\ttfamily P} above), but can possibly be any (default-\/constructible) values.

The functor returns a std::vector of locations: 0-\/faces are singletons, 1-\/faces are (usually) pairs, faces of higher dimensions are arrays of locations.

Note that for consistency reasons w.r.t. the return type of operator(), returned sites are always {\itshape arrays\/} of locations attached to 0-\/faces; hence the returned singletons (of locations) for 0-\/faces. 

Definition at line 88 of file geom/complex\_\-geometry.hh.



\subsection{Constructor \& Destructor Documentation}
\hypertarget{a00235_a77b076c6cfd8a257b3225b04f85f7f5a}{
\index{mln::geom::complex\_\-geometry@{mln::geom::complex\_\-geometry}!complex\_\-geometry@{complex\_\-geometry}}
\index{complex\_\-geometry@{complex\_\-geometry}!mln::geom::complex_geometry@{mln::geom::complex\_\-geometry}}
\subsubsection[{complex\_\-geometry}]{\setlength{\rightskip}{0pt plus 5cm}template$<$unsigned D, typename P $>$ {\bf mln::geom::complex\_\-geometry}$<$ D, P $>$::{\bf complex\_\-geometry} (
\begin{DoxyParamCaption}
{}
\end{DoxyParamCaption}
)\hspace{0.3cm}{\ttfamily  \mbox{[}inline\mbox{]}}}}
\label{d3/d42/a00235_a77b076c6cfd8a257b3225b04f85f7f5a}


Build a complex geometry object. 



Definition at line 132 of file geom/complex\_\-geometry.hh.



\subsection{Member Function Documentation}
\hypertarget{a00235_adc01465af2f8509fccd4695cb82ea983}{
\index{mln::geom::complex\_\-geometry@{mln::geom::complex\_\-geometry}!add\_\-location@{add\_\-location}}
\index{add\_\-location@{add\_\-location}!mln::geom::complex_geometry@{mln::geom::complex\_\-geometry}}
\subsubsection[{add\_\-location}]{\setlength{\rightskip}{0pt plus 5cm}template$<$unsigned D, typename P $>$ unsigned {\bf mln::geom::complex\_\-geometry}$<$ D, P $>$::add\_\-location (
\begin{DoxyParamCaption}
\item[{const P \&}]{ p}
\end{DoxyParamCaption}
)\hspace{0.3cm}{\ttfamily  \mbox{[}inline\mbox{]}}}}
\label{d3/d42/a00235_adc01465af2f8509fccd4695cb82ea983}


Populate the set of locations. 

Append a new location {\itshape p\/}. Return the index of the newly created location (which should semantically match the id of the corresonding 0-\/face in the complex). 

Definition at line 140 of file geom/complex\_\-geometry.hh.

\hypertarget{a00235_a07ccd846871354281ca4e44842e05b47}{
\index{mln::geom::complex\_\-geometry@{mln::geom::complex\_\-geometry}!operator()@{operator()}}
\index{operator()@{operator()}!mln::geom::complex_geometry@{mln::geom::complex\_\-geometry}}
\subsubsection[{operator()}]{\setlength{\rightskip}{0pt plus 5cm}template$<$unsigned D, typename P $>$ util::multi\_\-site$<$ P $>$ {\bf mln::geom::complex\_\-geometry}$<$ D, P $>$::operator() (
\begin{DoxyParamCaption}
\item[{const {\bf mln::topo::face}$<$ D $>$ \&}]{ f}
\end{DoxyParamCaption}
) const\hspace{0.3cm}{\ttfamily  \mbox{[}inline\mbox{]}}}}
\label{d3/d42/a00235_a07ccd846871354281ca4e44842e05b47}


Retrieve the site associated to {\itshape f\/}. 



Definition at line 151 of file geom/complex\_\-geometry.hh.



References mln::topo::face$<$ D $>$::face\_\-id(), and mln::topo::face$<$ D $>$::n().

