\hypertarget{a00306}{
\section{mln::p\_\-if$<$ S, F $>$ Class Template Reference}
\label{d1/de3/a00306}\index{mln::p\_\-if@{mln::p\_\-if}}
}


\hyperlink{a00343}{Site} set restricted w.r.t.  




{\ttfamily \#include $<$p\_\-if.hh$>$}



Inherits site\_\-set\_\-base\_\-$<$ S::psite, p\_\-if$<$ S, F $>$ $>$.

\subsection*{Public Types}
\begin{DoxyCompactItemize}
\item 
typedef p\_\-if\_\-piter\_\-$<$ typename S::bkd\_\-piter, S, F $>$ \hyperlink{a00306_a355b80cd87d7256d7d5af55c38749e52}{bkd\_\-piter}
\begin{DoxyCompactList}\small\item\em Backward \hyperlink{a00345}{Site\_\-Iterator} associated type. \item\end{DoxyCompactList}\item 
typedef S::element \hyperlink{a00306_a8600c3644995df367ade3e220711c859}{element}
\begin{DoxyCompactList}\small\item\em Element associated type. \item\end{DoxyCompactList}\item 
typedef p\_\-if\_\-piter\_\-$<$ typename S::fwd\_\-piter, S, F $>$ \hyperlink{a00306_ac2ac6a3656baeb8a74ebcace64659348}{fwd\_\-piter}
\begin{DoxyCompactList}\small\item\em Forward \hyperlink{a00345}{Site\_\-Iterator} associated type. \item\end{DoxyCompactList}\item 
typedef \hyperlink{a00306_ac2ac6a3656baeb8a74ebcace64659348}{fwd\_\-piter} \hyperlink{a00306_a6ea6e0d356a88a5311d53e7e7c6358a3}{piter}
\begin{DoxyCompactList}\small\item\em \hyperlink{a00345}{Site\_\-Iterator} associated type. \item\end{DoxyCompactList}\item 
typedef S::psite \hyperlink{a00306_a52c1bd6f73edcaf3a02ad88246e796b1}{psite}
\begin{DoxyCompactList}\small\item\em Psite associated type. \item\end{DoxyCompactList}\end{DoxyCompactItemize}
\subsection*{Public Member Functions}
\begin{DoxyCompactItemize}
\item 
bool \hyperlink{a00306_a79adece88618d1b9eb308bb9aed53ad0}{has} (const \hyperlink{a00306_a52c1bd6f73edcaf3a02ad88246e796b1}{psite} \&p) const 
\begin{DoxyCompactList}\small\item\em Test if {\ttfamily p} belongs to the subset. \item\end{DoxyCompactList}\item 
bool \hyperlink{a00306_adedd4cdd90b12347aa1eb93945c3baab}{is\_\-valid} () const 
\begin{DoxyCompactList}\small\item\em Test if this site set is valid. \item\end{DoxyCompactList}\item 
std::size\_\-t \hyperlink{a00306_aaacd3b9223429294f8ff01f375ca31f5}{memory\_\-size} () const 
\begin{DoxyCompactList}\small\item\em Return the size of this site set in memory. \item\end{DoxyCompactList}\item 
const S \& \hyperlink{a00306_a553047c14fb0980bda2797a32f452ea5}{overset} () const 
\begin{DoxyCompactList}\small\item\em Give the primary overset. \item\end{DoxyCompactList}\item 
\hyperlink{a00306_ad7a3cec6868a5dcf3d94b137aea13fe7}{p\_\-if} ()
\begin{DoxyCompactList}\small\item\em Constructor without argument. \item\end{DoxyCompactList}\item 
\hyperlink{a00306_a21f9c0f697c82f59b1d8494b4379fec8}{p\_\-if} (const S \&s, const F \&f)
\begin{DoxyCompactList}\small\item\em Constructor with a site set {\ttfamily s} and a predicate {\ttfamily f}. \item\end{DoxyCompactList}\item 
bool \hyperlink{a00306_a6a66a40531112aa461fbcc840e3c93c3}{pred} (const \hyperlink{a00306_a52c1bd6f73edcaf3a02ad88246e796b1}{psite} \&p) const 
\begin{DoxyCompactList}\small\item\em Test predicate on point site {\ttfamily p}. \item\end{DoxyCompactList}\item 
const F \& \hyperlink{a00306_a75a427d0c80d44a3c8edf8ee52c9c24e}{predicate} () const 
\begin{DoxyCompactList}\small\item\em Give the predicate function. \item\end{DoxyCompactList}\end{DoxyCompactItemize}


\subsection{Detailed Description}
\subsubsection*{template$<$typename S, typename F$>$ class mln::p\_\-if$<$ S, F $>$}

\hyperlink{a00343}{Site} set restricted w.r.t. a predicate.

Parameter {\ttfamily S} is a site set type; parameter F is a function from point to Boolean. 

Definition at line 83 of file p\_\-if.hh.



\subsection{Member Typedef Documentation}
\hypertarget{a00306_a355b80cd87d7256d7d5af55c38749e52}{
\index{mln::p\_\-if@{mln::p\_\-if}!bkd\_\-piter@{bkd\_\-piter}}
\index{bkd\_\-piter@{bkd\_\-piter}!mln::p_if@{mln::p\_\-if}}
\subsubsection[{bkd\_\-piter}]{\setlength{\rightskip}{0pt plus 5cm}template$<$typename S, typename F$>$ typedef p\_\-if\_\-piter\_\-$<$typename S ::{\bf bkd\_\-piter}, S, F$>$ {\bf mln::p\_\-if}$<$ S, F $>$::{\bf bkd\_\-piter}}}
\label{d1/de3/a00306_a355b80cd87d7256d7d5af55c38749e52}


Backward \hyperlink{a00345}{Site\_\-Iterator} associated type. 



Definition at line 100 of file p\_\-if.hh.

\hypertarget{a00306_a8600c3644995df367ade3e220711c859}{
\index{mln::p\_\-if@{mln::p\_\-if}!element@{element}}
\index{element@{element}!mln::p_if@{mln::p\_\-if}}
\subsubsection[{element}]{\setlength{\rightskip}{0pt plus 5cm}template$<$typename S, typename F$>$ typedef S ::{\bf element} {\bf mln::p\_\-if}$<$ S, F $>$::{\bf element}}}
\label{d1/de3/a00306_a8600c3644995df367ade3e220711c859}


Element associated type. 



Definition at line 90 of file p\_\-if.hh.

\hypertarget{a00306_ac2ac6a3656baeb8a74ebcace64659348}{
\index{mln::p\_\-if@{mln::p\_\-if}!fwd\_\-piter@{fwd\_\-piter}}
\index{fwd\_\-piter@{fwd\_\-piter}!mln::p_if@{mln::p\_\-if}}
\subsubsection[{fwd\_\-piter}]{\setlength{\rightskip}{0pt plus 5cm}template$<$typename S, typename F$>$ typedef p\_\-if\_\-piter\_\-$<$typename S ::{\bf fwd\_\-piter}, S, F$>$ {\bf mln::p\_\-if}$<$ S, F $>$::{\bf fwd\_\-piter}}}
\label{d1/de3/a00306_ac2ac6a3656baeb8a74ebcace64659348}


Forward \hyperlink{a00345}{Site\_\-Iterator} associated type. 



Definition at line 97 of file p\_\-if.hh.

\hypertarget{a00306_a6ea6e0d356a88a5311d53e7e7c6358a3}{
\index{mln::p\_\-if@{mln::p\_\-if}!piter@{piter}}
\index{piter@{piter}!mln::p_if@{mln::p\_\-if}}
\subsubsection[{piter}]{\setlength{\rightskip}{0pt plus 5cm}template$<$typename S, typename F$>$ typedef {\bf fwd\_\-piter} {\bf mln::p\_\-if}$<$ S, F $>$::{\bf piter}}}
\label{d1/de3/a00306_a6ea6e0d356a88a5311d53e7e7c6358a3}


\hyperlink{a00345}{Site\_\-Iterator} associated type. 



Definition at line 103 of file p\_\-if.hh.

\hypertarget{a00306_a52c1bd6f73edcaf3a02ad88246e796b1}{
\index{mln::p\_\-if@{mln::p\_\-if}!psite@{psite}}
\index{psite@{psite}!mln::p_if@{mln::p\_\-if}}
\subsubsection[{psite}]{\setlength{\rightskip}{0pt plus 5cm}template$<$typename S, typename F$>$ typedef S ::{\bf psite} {\bf mln::p\_\-if}$<$ S, F $>$::{\bf psite}}}
\label{d1/de3/a00306_a52c1bd6f73edcaf3a02ad88246e796b1}


Psite associated type. 



Definition at line 94 of file p\_\-if.hh.



\subsection{Constructor \& Destructor Documentation}
\hypertarget{a00306_a21f9c0f697c82f59b1d8494b4379fec8}{
\index{mln::p\_\-if@{mln::p\_\-if}!p\_\-if@{p\_\-if}}
\index{p\_\-if@{p\_\-if}!mln::p_if@{mln::p\_\-if}}
\subsubsection[{p\_\-if}]{\setlength{\rightskip}{0pt plus 5cm}template$<$typename S , typename F $>$ {\bf mln::p\_\-if}$<$ S, F $>$::{\bf p\_\-if} (
\begin{DoxyParamCaption}
\item[{const S \&}]{ s, }
\item[{const F \&}]{ f}
\end{DoxyParamCaption}
)\hspace{0.3cm}{\ttfamily  \mbox{[}inline\mbox{]}}}}
\label{d1/de3/a00306_a21f9c0f697c82f59b1d8494b4379fec8}


Constructor with a site set {\ttfamily s} and a predicate {\ttfamily f}. 



Definition at line 190 of file p\_\-if.hh.

\hypertarget{a00306_ad7a3cec6868a5dcf3d94b137aea13fe7}{
\index{mln::p\_\-if@{mln::p\_\-if}!p\_\-if@{p\_\-if}}
\index{p\_\-if@{p\_\-if}!mln::p_if@{mln::p\_\-if}}
\subsubsection[{p\_\-if}]{\setlength{\rightskip}{0pt plus 5cm}template$<$typename S , typename F $>$ {\bf mln::p\_\-if}$<$ S, F $>$::{\bf p\_\-if} (
\begin{DoxyParamCaption}
{}
\end{DoxyParamCaption}
)\hspace{0.3cm}{\ttfamily  \mbox{[}inline\mbox{]}}}}
\label{d1/de3/a00306_ad7a3cec6868a5dcf3d94b137aea13fe7}


Constructor without argument. 



Definition at line 198 of file p\_\-if.hh.



\subsection{Member Function Documentation}
\hypertarget{a00306_a79adece88618d1b9eb308bb9aed53ad0}{
\index{mln::p\_\-if@{mln::p\_\-if}!has@{has}}
\index{has@{has}!mln::p_if@{mln::p\_\-if}}
\subsubsection[{has}]{\setlength{\rightskip}{0pt plus 5cm}template$<$typename S , typename F $>$ bool {\bf mln::p\_\-if}$<$ S, F $>$::has (
\begin{DoxyParamCaption}
\item[{const {\bf psite} \&}]{ p}
\end{DoxyParamCaption}
) const\hspace{0.3cm}{\ttfamily  \mbox{[}inline\mbox{]}}}}
\label{d1/de3/a00306_a79adece88618d1b9eb308bb9aed53ad0}


Test if {\ttfamily p} belongs to the subset. 



Definition at line 159 of file p\_\-if.hh.



References mln::p\_\-if$<$ S, F $>$::has().



Referenced by mln::p\_\-if$<$ S, F $>$::has().

\hypertarget{a00306_adedd4cdd90b12347aa1eb93945c3baab}{
\index{mln::p\_\-if@{mln::p\_\-if}!is\_\-valid@{is\_\-valid}}
\index{is\_\-valid@{is\_\-valid}!mln::p_if@{mln::p\_\-if}}
\subsubsection[{is\_\-valid}]{\setlength{\rightskip}{0pt plus 5cm}template$<$typename S , typename F $>$ bool {\bf mln::p\_\-if}$<$ S, F $>$::is\_\-valid (
\begin{DoxyParamCaption}
{}
\end{DoxyParamCaption}
) const\hspace{0.3cm}{\ttfamily  \mbox{[}inline\mbox{]}}}}
\label{d1/de3/a00306_adedd4cdd90b12347aa1eb93945c3baab}


Test if this site set is valid. 



Definition at line 167 of file p\_\-if.hh.

\hypertarget{a00306_aaacd3b9223429294f8ff01f375ca31f5}{
\index{mln::p\_\-if@{mln::p\_\-if}!memory\_\-size@{memory\_\-size}}
\index{memory\_\-size@{memory\_\-size}!mln::p_if@{mln::p\_\-if}}
\subsubsection[{memory\_\-size}]{\setlength{\rightskip}{0pt plus 5cm}template$<$typename S , typename F $>$ std::size\_\-t {\bf mln::p\_\-if}$<$ S, F $>$::memory\_\-size (
\begin{DoxyParamCaption}
{}
\end{DoxyParamCaption}
) const\hspace{0.3cm}{\ttfamily  \mbox{[}inline\mbox{]}}}}
\label{d1/de3/a00306_aaacd3b9223429294f8ff01f375ca31f5}


Return the size of this site set in memory. 



Definition at line 213 of file p\_\-if.hh.

\hypertarget{a00306_a553047c14fb0980bda2797a32f452ea5}{
\index{mln::p\_\-if@{mln::p\_\-if}!overset@{overset}}
\index{overset@{overset}!mln::p_if@{mln::p\_\-if}}
\subsubsection[{overset}]{\setlength{\rightskip}{0pt plus 5cm}template$<$typename S , typename F $>$ const S \& {\bf mln::p\_\-if}$<$ S, F $>$::overset (
\begin{DoxyParamCaption}
{}
\end{DoxyParamCaption}
) const\hspace{0.3cm}{\ttfamily  \mbox{[}inline\mbox{]}}}}
\label{d1/de3/a00306_a553047c14fb0980bda2797a32f452ea5}


Give the primary overset. 



Definition at line 175 of file p\_\-if.hh.

\hypertarget{a00306_a6a66a40531112aa461fbcc840e3c93c3}{
\index{mln::p\_\-if@{mln::p\_\-if}!pred@{pred}}
\index{pred@{pred}!mln::p_if@{mln::p\_\-if}}
\subsubsection[{pred}]{\setlength{\rightskip}{0pt plus 5cm}template$<$typename S , typename F $>$ bool {\bf mln::p\_\-if}$<$ S, F $>$::pred (
\begin{DoxyParamCaption}
\item[{const {\bf psite} \&}]{ p}
\end{DoxyParamCaption}
) const\hspace{0.3cm}{\ttfamily  \mbox{[}inline\mbox{]}}}}
\label{d1/de3/a00306_a6a66a40531112aa461fbcc840e3c93c3}


Test predicate on point site {\ttfamily p}. 



Definition at line 183 of file p\_\-if.hh.

\hypertarget{a00306_a75a427d0c80d44a3c8edf8ee52c9c24e}{
\index{mln::p\_\-if@{mln::p\_\-if}!predicate@{predicate}}
\index{predicate@{predicate}!mln::p_if@{mln::p\_\-if}}
\subsubsection[{predicate}]{\setlength{\rightskip}{0pt plus 5cm}template$<$typename S , typename F $>$ const F \& {\bf mln::p\_\-if}$<$ S, F $>$::predicate (
\begin{DoxyParamCaption}
{}
\end{DoxyParamCaption}
) const\hspace{0.3cm}{\ttfamily  \mbox{[}inline\mbox{]}}}}
\label{d1/de3/a00306_a75a427d0c80d44a3c8edf8ee52c9c24e}


Give the predicate function. 



Definition at line 205 of file p\_\-if.hh.

