\hypertarget{a00320}{
\section{mln::p\_\-set$<$ P $>$ Class Template Reference}
\label{dd/de2/a00320}\index{mln::p\_\-set@{mln::p\_\-set}}
}


Mathematical set of sites (based on \hyperlink{a00409}{util::set}).  




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



Inherits site\_\-set\_\-base\_\-$<$ P, p\_\-set$<$ P $>$ $>$.

\subsection*{Public Types}
\begin{DoxyCompactItemize}
\item 
typedef \hyperlink{a00308}{p\_\-indexed\_\-bkd\_\-piter}$<$ \hyperlink{a00320}{self\_\-} $>$ \hyperlink{a00320_a0cc98f6cf89f79a7d7752312d0802a31}{bkd\_\-piter}
\begin{DoxyCompactList}\small\item\em Backward \hyperlink{a00345}{Site\_\-Iterator} associated type. \item\end{DoxyCompactList}\item 
typedef P \hyperlink{a00320_a3e415a7bb36dcd1850ff46d8177dea8e}{element}
\begin{DoxyCompactList}\small\item\em Element associated type. \item\end{DoxyCompactList}\item 
typedef \hyperlink{a00309}{p\_\-indexed\_\-fwd\_\-piter}$<$ \hyperlink{a00320}{self\_\-} $>$ \hyperlink{a00320_a460ab7ad98f8df832a8e077f8cce0bd9}{fwd\_\-piter}
\begin{DoxyCompactList}\small\item\em Forward \hyperlink{a00345}{Site\_\-Iterator} associated type. \item\end{DoxyCompactList}\item 
typedef P \hyperlink{a00320_a28d53f04031afe325031ca2a7f126b7c}{i\_\-element}
\begin{DoxyCompactList}\small\item\em Insertion element associated type. \item\end{DoxyCompactList}\item 
typedef \hyperlink{a00309}{fwd\_\-piter} \hyperlink{a00320_af972508c934e446f49f0f6f419d85f7d}{piter}
\begin{DoxyCompactList}\small\item\em \hyperlink{a00345}{Site\_\-Iterator} associated type. \item\end{DoxyCompactList}\item 
typedef \hyperlink{a00310}{p\_\-indexed\_\-psite}$<$ \hyperlink{a00320}{self\_\-} $>$ \hyperlink{a00320_a346992943519df0deb9375d4c46e06ed}{psite}
\begin{DoxyCompactList}\small\item\em Psite associated type. \item\end{DoxyCompactList}\item 
typedef P \hyperlink{a00320_a9be85e34655f3f6ad429bb27fcab38c5}{r\_\-element}
\begin{DoxyCompactList}\small\item\em Removal element associated type. \item\end{DoxyCompactList}\end{DoxyCompactItemize}
\subsection*{Public Member Functions}
\begin{DoxyCompactItemize}
\item 
void \hyperlink{a00320_a15b0a3badab40bd269dd9aecf5859450}{clear} ()
\begin{DoxyCompactList}\small\item\em Clear this set. \item\end{DoxyCompactList}\item 
bool \hyperlink{a00320_ac33a1714c84c66aab4f68feb1f55c862}{has} (const \hyperlink{a00310}{psite} \&p) const 
\begin{DoxyCompactList}\small\item\em Test if psite {\ttfamily p} belongs to this point set. \item\end{DoxyCompactList}\item 
bool \hyperlink{a00320_a0f3d847593a4755a8a763bb1f88ccddb}{has} (const util::index \&i) const 
\begin{DoxyCompactList}\small\item\em Test if index {\ttfamily i} belongs to this point set. \item\end{DoxyCompactList}\item 
bool \hyperlink{a00320_afe48813a9fde481ddc4d5c00a011bbda}{has} (const P \&p) const 
\begin{DoxyCompactList}\small\item\em Test if {\ttfamily p} belongs to this point set. \item\end{DoxyCompactList}\item 
void \hyperlink{a00320_a46dd8d22c2bcbb8cc90bf4608dafd4f3}{insert} (const P \&p)
\begin{DoxyCompactList}\small\item\em Insert a site {\ttfamily p}. \item\end{DoxyCompactList}\item 
bool \hyperlink{a00320_a3ab05e524882d8b5b30745ae2f17f3f0}{is\_\-valid} () const 
\begin{DoxyCompactList}\small\item\em Test this set validity so returns always true. \item\end{DoxyCompactList}\item 
std::size\_\-t \hyperlink{a00320_ade6d70a4fa5b362c9bcdaab2ed8b31fc}{memory\_\-size} () const 
\begin{DoxyCompactList}\small\item\em Return the size of this site set in memory. \item\end{DoxyCompactList}\item 
unsigned \hyperlink{a00320_a4765bb1eb98d372bedb96bc2ef037119}{nsites} () const 
\begin{DoxyCompactList}\small\item\em Give the number of sites. \item\end{DoxyCompactList}\item 
const P \& \hyperlink{a00320_a2f0b892ee5a26cef7e275941073f55e3}{operator\mbox{[}$\,$\mbox{]}} (unsigned i) const 
\begin{DoxyCompactList}\small\item\em Return the {\ttfamily i-\/th} site. \item\end{DoxyCompactList}\item 
\hyperlink{a00320_ad98d175dbf4072d14811de60d5d8435b}{p\_\-set} ()
\begin{DoxyCompactList}\small\item\em Constructor. \item\end{DoxyCompactList}\item 
void \hyperlink{a00320_a7b328c4fa7fb66c1d29ceeb9ab656a36}{remove} (const P \&p)
\begin{DoxyCompactList}\small\item\em Remove a site {\ttfamily p}. \item\end{DoxyCompactList}\item 
const std::vector$<$ P $>$ \& \hyperlink{a00320_a7c18b4848b56453211a5c745bb7e767c}{std\_\-vector} () const 
\begin{DoxyCompactList}\small\item\em Return the corresponding std::vector of sites. \item\end{DoxyCompactList}\item 
const \hyperlink{a00409}{util::set}$<$ P $>$ \& \hyperlink{a00320_a795d821b56d1925a7059968c6c75d461}{util\_\-set} () const 
\begin{DoxyCompactList}\small\item\em Return the corresponding \hyperlink{a00409}{util::set} of sites. \item\end{DoxyCompactList}\end{DoxyCompactItemize}


\subsection{Detailed Description}
\subsubsection*{template$<$typename P$>$ class mln::p\_\-set$<$ P $>$}

Mathematical set of sites (based on \hyperlink{a00409}{util::set}). This is a mathematical set of sites (not a multi-\/set).

The parameter {\ttfamily P} shall be a site or pseudo-\/site type. 

Definition at line 70 of file p\_\-set.hh.



\subsection{Member Typedef Documentation}
\hypertarget{a00320_a0cc98f6cf89f79a7d7752312d0802a31}{
\index{mln::p\_\-set@{mln::p\_\-set}!bkd\_\-piter@{bkd\_\-piter}}
\index{bkd\_\-piter@{bkd\_\-piter}!mln::p_set@{mln::p\_\-set}}
\subsubsection[{bkd\_\-piter}]{\setlength{\rightskip}{0pt plus 5cm}template$<$typename P$>$ typedef {\bf p\_\-indexed\_\-bkd\_\-piter}$<${\bf self\_\-}$>$ {\bf mln::p\_\-set}$<$ P $>$::{\bf bkd\_\-piter}}}
\label{dd/de2/a00320_a0cc98f6cf89f79a7d7752312d0802a31}


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



Definition at line 85 of file p\_\-set.hh.

\hypertarget{a00320_a3e415a7bb36dcd1850ff46d8177dea8e}{
\index{mln::p\_\-set@{mln::p\_\-set}!element@{element}}
\index{element@{element}!mln::p_set@{mln::p\_\-set}}
\subsubsection[{element}]{\setlength{\rightskip}{0pt plus 5cm}template$<$typename P$>$ typedef P {\bf mln::p\_\-set}$<$ P $>$::{\bf element}}}
\label{dd/de2/a00320_a3e415a7bb36dcd1850ff46d8177dea8e}


Element associated type. 



Definition at line 76 of file p\_\-set.hh.

\hypertarget{a00320_a460ab7ad98f8df832a8e077f8cce0bd9}{
\index{mln::p\_\-set@{mln::p\_\-set}!fwd\_\-piter@{fwd\_\-piter}}
\index{fwd\_\-piter@{fwd\_\-piter}!mln::p_set@{mln::p\_\-set}}
\subsubsection[{fwd\_\-piter}]{\setlength{\rightskip}{0pt plus 5cm}template$<$typename P$>$ typedef {\bf p\_\-indexed\_\-fwd\_\-piter}$<${\bf self\_\-}$>$ {\bf mln::p\_\-set}$<$ P $>$::{\bf fwd\_\-piter}}}
\label{dd/de2/a00320_a460ab7ad98f8df832a8e077f8cce0bd9}


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



Definition at line 82 of file p\_\-set.hh.

\hypertarget{a00320_a28d53f04031afe325031ca2a7f126b7c}{
\index{mln::p\_\-set@{mln::p\_\-set}!i\_\-element@{i\_\-element}}
\index{i\_\-element@{i\_\-element}!mln::p_set@{mln::p\_\-set}}
\subsubsection[{i\_\-element}]{\setlength{\rightskip}{0pt plus 5cm}template$<$typename P$>$ typedef P {\bf mln::p\_\-set}$<$ P $>$::{\bf i\_\-element}}}
\label{dd/de2/a00320_a28d53f04031afe325031ca2a7f126b7c}


Insertion element associated type. 



Definition at line 113 of file p\_\-set.hh.

\hypertarget{a00320_af972508c934e446f49f0f6f419d85f7d}{
\index{mln::p\_\-set@{mln::p\_\-set}!piter@{piter}}
\index{piter@{piter}!mln::p_set@{mln::p\_\-set}}
\subsubsection[{piter}]{\setlength{\rightskip}{0pt plus 5cm}template$<$typename P$>$ typedef {\bf fwd\_\-piter} {\bf mln::p\_\-set}$<$ P $>$::{\bf piter}}}
\label{dd/de2/a00320_af972508c934e446f49f0f6f419d85f7d}


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



Definition at line 88 of file p\_\-set.hh.

\hypertarget{a00320_a346992943519df0deb9375d4c46e06ed}{
\index{mln::p\_\-set@{mln::p\_\-set}!psite@{psite}}
\index{psite@{psite}!mln::p_set@{mln::p\_\-set}}
\subsubsection[{psite}]{\setlength{\rightskip}{0pt plus 5cm}template$<$typename P$>$ typedef {\bf p\_\-indexed\_\-psite}$<${\bf self\_\-}$>$ {\bf mln::p\_\-set}$<$ P $>$::{\bf psite}}}
\label{dd/de2/a00320_a346992943519df0deb9375d4c46e06ed}


Psite associated type. 



Definition at line 79 of file p\_\-set.hh.

\hypertarget{a00320_a9be85e34655f3f6ad429bb27fcab38c5}{
\index{mln::p\_\-set@{mln::p\_\-set}!r\_\-element@{r\_\-element}}
\index{r\_\-element@{r\_\-element}!mln::p_set@{mln::p\_\-set}}
\subsubsection[{r\_\-element}]{\setlength{\rightskip}{0pt plus 5cm}template$<$typename P$>$ typedef P {\bf mln::p\_\-set}$<$ P $>$::{\bf r\_\-element}}}
\label{dd/de2/a00320_a9be85e34655f3f6ad429bb27fcab38c5}


Removal element associated type. 



Definition at line 119 of file p\_\-set.hh.



\subsection{Constructor \& Destructor Documentation}
\hypertarget{a00320_ad98d175dbf4072d14811de60d5d8435b}{
\index{mln::p\_\-set@{mln::p\_\-set}!p\_\-set@{p\_\-set}}
\index{p\_\-set@{p\_\-set}!mln::p_set@{mln::p\_\-set}}
\subsubsection[{p\_\-set}]{\setlength{\rightskip}{0pt plus 5cm}template$<$typename P $>$ {\bf mln::p\_\-set}$<$ P $>$::{\bf p\_\-set} (
\begin{DoxyParamCaption}
{}
\end{DoxyParamCaption}
)\hspace{0.3cm}{\ttfamily  \mbox{[}inline\mbox{]}}}}
\label{dd/de2/a00320_ad98d175dbf4072d14811de60d5d8435b}


Constructor. 



Definition at line 152 of file p\_\-set.hh.



\subsection{Member Function Documentation}
\hypertarget{a00320_a15b0a3badab40bd269dd9aecf5859450}{
\index{mln::p\_\-set@{mln::p\_\-set}!clear@{clear}}
\index{clear@{clear}!mln::p_set@{mln::p\_\-set}}
\subsubsection[{clear}]{\setlength{\rightskip}{0pt plus 5cm}template$<$typename P $>$ void {\bf mln::p\_\-set}$<$ P $>$::clear (
\begin{DoxyParamCaption}
{}
\end{DoxyParamCaption}
)\hspace{0.3cm}{\ttfamily  \mbox{[}inline\mbox{]}}}}
\label{dd/de2/a00320_a15b0a3badab40bd269dd9aecf5859450}


Clear this set. 



Definition at line 219 of file p\_\-set.hh.

\hypertarget{a00320_ac33a1714c84c66aab4f68feb1f55c862}{
\index{mln::p\_\-set@{mln::p\_\-set}!has@{has}}
\index{has@{has}!mln::p_set@{mln::p\_\-set}}
\subsubsection[{has}]{\setlength{\rightskip}{0pt plus 5cm}template$<$typename P $>$ bool {\bf mln::p\_\-set}$<$ P $>$::has (
\begin{DoxyParamCaption}
\item[{const {\bf psite} \&}]{ p}
\end{DoxyParamCaption}
) const\hspace{0.3cm}{\ttfamily  \mbox{[}inline\mbox{]}}}}
\label{dd/de2/a00320_ac33a1714c84c66aab4f68feb1f55c862}


Test if psite {\ttfamily p} belongs to this point set. 



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

\hypertarget{a00320_afe48813a9fde481ddc4d5c00a011bbda}{
\index{mln::p\_\-set@{mln::p\_\-set}!has@{has}}
\index{has@{has}!mln::p_set@{mln::p\_\-set}}
\subsubsection[{has}]{\setlength{\rightskip}{0pt plus 5cm}template$<$typename P $>$ bool {\bf mln::p\_\-set}$<$ P $>$::has (
\begin{DoxyParamCaption}
\item[{const P \&}]{ p}
\end{DoxyParamCaption}
) const\hspace{0.3cm}{\ttfamily  \mbox{[}inline\mbox{]}}}}
\label{dd/de2/a00320_afe48813a9fde481ddc4d5c00a011bbda}


Test if {\ttfamily p} belongs to this point set. 



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

\hypertarget{a00320_a0f3d847593a4755a8a763bb1f88ccddb}{
\index{mln::p\_\-set@{mln::p\_\-set}!has@{has}}
\index{has@{has}!mln::p_set@{mln::p\_\-set}}
\subsubsection[{has}]{\setlength{\rightskip}{0pt plus 5cm}template$<$typename P $>$ bool {\bf mln::p\_\-set}$<$ P $>$::has (
\begin{DoxyParamCaption}
\item[{const util::index \&}]{ i}
\end{DoxyParamCaption}
) const\hspace{0.3cm}{\ttfamily  \mbox{[}inline\mbox{]}}}}
\label{dd/de2/a00320_a0f3d847593a4755a8a763bb1f88ccddb}


Test if index {\ttfamily i} belongs to this point set. 



Definition at line 179 of file p\_\-set.hh.



References mln::p\_\-set$<$ P $>$::nsites().

\hypertarget{a00320_a46dd8d22c2bcbb8cc90bf4608dafd4f3}{
\index{mln::p\_\-set@{mln::p\_\-set}!insert@{insert}}
\index{insert@{insert}!mln::p_set@{mln::p\_\-set}}
\subsubsection[{insert}]{\setlength{\rightskip}{0pt plus 5cm}template$<$typename P $>$ void {\bf mln::p\_\-set}$<$ P $>$::insert (
\begin{DoxyParamCaption}
\item[{const P \&}]{ p}
\end{DoxyParamCaption}
)\hspace{0.3cm}{\ttfamily  \mbox{[}inline\mbox{]}}}}
\label{dd/de2/a00320_a46dd8d22c2bcbb8cc90bf4608dafd4f3}


Insert a site {\ttfamily p}. 



Definition at line 203 of file p\_\-set.hh.



Referenced by mln::convert::to\_\-p\_\-set().

\hypertarget{a00320_a3ab05e524882d8b5b30745ae2f17f3f0}{
\index{mln::p\_\-set@{mln::p\_\-set}!is\_\-valid@{is\_\-valid}}
\index{is\_\-valid@{is\_\-valid}!mln::p_set@{mln::p\_\-set}}
\subsubsection[{is\_\-valid}]{\setlength{\rightskip}{0pt plus 5cm}template$<$typename P $>$ bool {\bf mln::p\_\-set}$<$ P $>$::is\_\-valid (
\begin{DoxyParamCaption}
{}
\end{DoxyParamCaption}
) const\hspace{0.3cm}{\ttfamily  \mbox{[}inline\mbox{]}}}}
\label{dd/de2/a00320_a3ab05e524882d8b5b30745ae2f17f3f0}


Test this set validity so returns always true. 



Definition at line 187 of file p\_\-set.hh.

\hypertarget{a00320_ade6d70a4fa5b362c9bcdaab2ed8b31fc}{
\index{mln::p\_\-set@{mln::p\_\-set}!memory\_\-size@{memory\_\-size}}
\index{memory\_\-size@{memory\_\-size}!mln::p_set@{mln::p\_\-set}}
\subsubsection[{memory\_\-size}]{\setlength{\rightskip}{0pt plus 5cm}template$<$typename P $>$ std::size\_\-t {\bf mln::p\_\-set}$<$ P $>$::memory\_\-size (
\begin{DoxyParamCaption}
{}
\end{DoxyParamCaption}
) const\hspace{0.3cm}{\ttfamily  \mbox{[}inline\mbox{]}}}}
\label{dd/de2/a00320_ade6d70a4fa5b362c9bcdaab2ed8b31fc}


Return the size of this site set in memory. 



Definition at line 236 of file p\_\-set.hh.

\hypertarget{a00320_a4765bb1eb98d372bedb96bc2ef037119}{
\index{mln::p\_\-set@{mln::p\_\-set}!nsites@{nsites}}
\index{nsites@{nsites}!mln::p_set@{mln::p\_\-set}}
\subsubsection[{nsites}]{\setlength{\rightskip}{0pt plus 5cm}template$<$typename P $>$ unsigned {\bf mln::p\_\-set}$<$ P $>$::nsites (
\begin{DoxyParamCaption}
{}
\end{DoxyParamCaption}
) const\hspace{0.3cm}{\ttfamily  \mbox{[}inline\mbox{]}}}}
\label{dd/de2/a00320_a4765bb1eb98d372bedb96bc2ef037119}


Give the number of sites. 



Definition at line 195 of file p\_\-set.hh.



Referenced by mln::p\_\-key$<$ K, P $>$::change\_\-key(), mln::p\_\-set$<$ P $>$::has(), mln::p\_\-set$<$ P $>$::operator\mbox{[}$\,$\mbox{]}(), and mln::p\_\-key$<$ K, P $>$::remove\_\-key().

\hypertarget{a00320_a2f0b892ee5a26cef7e275941073f55e3}{
\index{mln::p\_\-set@{mln::p\_\-set}!operator\mbox{[}\mbox{]}@{operator[]}}
\index{operator\mbox{[}\mbox{]}@{operator[]}!mln::p_set@{mln::p\_\-set}}
\subsubsection[{operator[]}]{\setlength{\rightskip}{0pt plus 5cm}template$<$typename P $>$ const P \& {\bf mln::p\_\-set}$<$ P $>$::operator\mbox{[}$\,$\mbox{]} (
\begin{DoxyParamCaption}
\item[{unsigned}]{ i}
\end{DoxyParamCaption}
) const\hspace{0.3cm}{\ttfamily  \mbox{[}inline\mbox{]}}}}
\label{dd/de2/a00320_a2f0b892ee5a26cef7e275941073f55e3}


Return the {\ttfamily i-\/th} site. 



Definition at line 227 of file p\_\-set.hh.



References mln::p\_\-set$<$ P $>$::nsites().

\hypertarget{a00320_a7b328c4fa7fb66c1d29ceeb9ab656a36}{
\index{mln::p\_\-set@{mln::p\_\-set}!remove@{remove}}
\index{remove@{remove}!mln::p_set@{mln::p\_\-set}}
\subsubsection[{remove}]{\setlength{\rightskip}{0pt plus 5cm}template$<$typename P $>$ void {\bf mln::p\_\-set}$<$ P $>$::remove (
\begin{DoxyParamCaption}
\item[{const P \&}]{ p}
\end{DoxyParamCaption}
)\hspace{0.3cm}{\ttfamily  \mbox{[}inline\mbox{]}}}}
\label{dd/de2/a00320_a7b328c4fa7fb66c1d29ceeb9ab656a36}


Remove a site {\ttfamily p}. 



Definition at line 211 of file p\_\-set.hh.

\hypertarget{a00320_a7c18b4848b56453211a5c745bb7e767c}{
\index{mln::p\_\-set@{mln::p\_\-set}!std\_\-vector@{std\_\-vector}}
\index{std\_\-vector@{std\_\-vector}!mln::p_set@{mln::p\_\-set}}
\subsubsection[{std\_\-vector}]{\setlength{\rightskip}{0pt plus 5cm}template$<$typename P $>$ const std::vector$<$ P $>$ \& {\bf mln::p\_\-set}$<$ P $>$::std\_\-vector (
\begin{DoxyParamCaption}
{}
\end{DoxyParamCaption}
) const\hspace{0.3cm}{\ttfamily  \mbox{[}inline\mbox{]}}}}
\label{dd/de2/a00320_a7c18b4848b56453211a5c745bb7e767c}


Return the corresponding std::vector of sites. 



Definition at line 244 of file p\_\-set.hh.

\hypertarget{a00320_a795d821b56d1925a7059968c6c75d461}{
\index{mln::p\_\-set@{mln::p\_\-set}!util\_\-set@{util\_\-set}}
\index{util\_\-set@{util\_\-set}!mln::p_set@{mln::p\_\-set}}
\subsubsection[{util\_\-set}]{\setlength{\rightskip}{0pt plus 5cm}template$<$typename P $>$ const {\bf util::set}$<$ P $>$ \& {\bf mln::p\_\-set}$<$ P $>$::util\_\-set (
\begin{DoxyParamCaption}
{}
\end{DoxyParamCaption}
) const\hspace{0.3cm}{\ttfamily  \mbox{[}inline\mbox{]}}}}
\label{dd/de2/a00320_a795d821b56d1925a7059968c6c75d461}


Return the corresponding \hyperlink{a00409}{util::set} of sites. 



Definition at line 252 of file p\_\-set.hh.

