Site set based mapping graph vertices to sites. More...
#include <p_vertices.hh>

Public Types | |
| typedef Site_Set< void > | category |
| typedef p_vertices< G, F > | exact_t |
| typedef F | fun_t |
| Function associated type. | |
| typedef util::vertex< G > | graph_element |
| Type of graph element this site set focuses on. | |
| typedef G | graph_t |
| Graph associated type. | |
| typedef subject< F::result >::ret | site |
| Site associated type. | |
| typedef util::vertex< G > | vertex |
| Type of graph vertex. | |
| typedef super_::site | element |
| Associated types. | |
| typedef p_vertices_psite< G, F > | psite |
| Point_Site associated type. | |
| typedef p_graph_piter< self_, mln_vertex_fwd_iter(G) > | fwd_piter |
| Forward Site_Iterator associated type. | |
| typedef p_graph_piter< self_, mln_vertex_bkd_iter(G) > | bkd_piter |
| Backward Site_Iterator associated type. | |
| typedef fwd_piter | piter |
| Site_Iterator associated type. | |
Public Member Functions | |
| bool | has (const psite &p) const |
| Does this site set has p? | |
| template<typename G2 > | |
| bool | has (const util::vertex< G2 > &v) const |
| Does this site set has v? | |
| void | invalidate () |
| Invalidate this site set. | |
| bool | is_empty () const |
| Test if the site set is empty. | |
| bool | is_valid () const |
| Test this site set validity. | |
| std::size_t | memory_size () const |
| Does this site set has vertex_id? FIXME: causes ambiguities while calling has(mln::neighb_fwd_niter<>); bool has(unsigned vertex_id) const;. | |
| unsigned | nsites () const |
| Return The number of points (sites) of the set, i.e., the number of vertices. | |
| unsigned | nvertices () const |
| Return The number of vertices in the graph. | |
| p_vertices (const Graph< G > &gr, const Function< F > &f) | |
| Construct a graph psite set from a graph of points. | |
| template<typename F2 > | |
| p_vertices (const Graph< G > &gr, const Function< F2 > &f) | |
| Construct a graph psite set from a graph of points. | |
| template<typename F2 > | |
| p_vertices (const p_vertices< G, F2 > &other) | |
| Copy constructor. | |
| p_vertices (const Graph< G > &gr) | |
| Construct a graph psite set from a graph of points. | |
| p_vertices () | |
| Constructor without argument. | |
| F::result | operator() (const psite &p) const |
| Return the value associated to an element of this site set. | |
| F::result | operator() (const util::vertex< G > &p) const |
| F::result | operator() (unsigned id_v) const |
| const G & | graph () const |
| Accessors. | |
| const F & | function () const |
| Return the association function. | |
Private Types | |
| typedef p_vertices< G, F > | self_ |
| typedef internal::site_set_base_ < typename F::result, self_ > | super_ |
Private Attributes | |
| F | f_ |
| G | g_ |
Site set based mapping graph vertices to sites.
Definition at line 71 of file p_vertices.hh.
| typedef p_graph_piter< self_, mln_vertex_bkd_iter(G) > mln::p_vertices< G, F >::bkd_piter |
Backward Site_Iterator associated type.
Definition at line 132 of file p_vertices.hh.
typedef Site_Set<void> mln::Site_Set< p_vertices< G, F > >::category [inherited] |
Reimplemented from mln::Object< p_vertices< G, F > >.
Definition at line 67 of file mln/core/concept/site_set.hh.
| typedef super_ ::site mln::p_vertices< G, F >::element |
typedef p_vertices< G, F > mln::Object< p_vertices< G, F > >::exact_t [inherited] |
| typedef F mln::p_vertices< G, F >::fun_t |
Function associated type.
Definition at line 84 of file p_vertices.hh.
| typedef p_graph_piter< self_, mln_vertex_fwd_iter(G) > mln::p_vertices< G, F >::fwd_piter |
Forward Site_Iterator associated type.
Definition at line 129 of file p_vertices.hh.
| typedef util::vertex<G> mln::p_vertices< G, F >::graph_element |
Type of graph element this site set focuses on.
Definition at line 91 of file p_vertices.hh.
| typedef G mln::p_vertices< G, F >::graph_t |
Graph associated type.
Definition at line 81 of file p_vertices.hh.
| typedef fwd_piter mln::p_vertices< G, F >::piter |
Site_Iterator associated type.
Definition at line 135 of file p_vertices.hh.
| typedef p_vertices_psite<G,F> mln::p_vertices< G, F >::psite |
Point_Site associated type.
Definition at line 126 of file p_vertices.hh.
typedef p_vertices<G,F> mln::p_vertices< G, F >::self_ [private] |
Definition at line 75 of file p_vertices.hh.
typedef subject<F::result >::ret mln::internal::site_set_base_< F::result , p_vertices< G, F > >::site [inherited] |
Site associated type.
Definition at line 55 of file site_set_base.hh.
typedef internal::site_set_base_< typename F ::result, self_ > mln::p_vertices< G, F >::super_ [private] |
Definition at line 76 of file p_vertices.hh.
| typedef util::vertex<G> mln::p_vertices< G, F >::vertex |
Type of graph vertex.
Definition at line 87 of file p_vertices.hh.
| mln::p_vertices< G, F >::p_vertices | ( | ) | [inline] |
Constructor without argument.
Definition at line 220 of file p_vertices.hh.
| mln::p_vertices< G, F >::p_vertices | ( | const Graph< G > & | gr | ) | [inline] |
Construct a graph psite set from a graph of points.
| gr | The graph upon which the graph psite set is built. The identity function is used. |
Definition at line 226 of file p_vertices.hh.
References mln::exact(), and mln::p_vertices< G, F >::is_valid().
| mln::p_vertices< G, F >::p_vertices | ( | const Graph< G > & | gr, | |
| const Function< F > & | f | |||
| ) | [inline] |
Construct a graph psite set from a graph of points.
| gr | The graph upon which the graph psite set is built. | |
| f | the function which maps a vertex to a site. |
Definition at line 238 of file p_vertices.hh.
References mln::exact(), and mln::p_vertices< G, F >::is_valid().
| mln::p_vertices< G, F >::p_vertices | ( | const Graph< G > & | gr, | |
| const Function< F2 > & | f | |||
| ) | [inline] |
Construct a graph psite set from a graph of points.
| gr | The graph upon which the graph psite set is built. | |
| f | the function which maps a vertex to a site. It must be convertible to the function type F. |
Definition at line 248 of file p_vertices.hh.
References mln::exact(), mln::convert::from_to(), and mln::p_vertices< G, F >::is_valid().
| mln::p_vertices< G, F >::p_vertices | ( | const p_vertices< G, F2 > & | other | ) | [inline] |
Copy constructor.
Definition at line 260 of file p_vertices.hh.
References mln::convert::from_to(), mln::p_vertices< G, F >::function(), mln::p_vertices< G, F >::graph(), and mln::p_vertices< G, F >::is_valid().
| const F & mln::p_vertices< G, F >::function | ( | ) | const [inline] |
Return the association function.
Definition at line 385 of file p_vertices.hh.
Referenced by mln::p_vertices< G, F >::p_vertices().
| const G & mln::p_vertices< G, F >::graph | ( | ) | const [inline] |
Accessors.
Return the graph associated to this site set (const version)
Definition at line 376 of file p_vertices.hh.
References mln::p_vertices< G, F >::is_valid().
Referenced by mln::debug::draw_graph(), mln::operator==(), and mln::p_vertices< G, F >::p_vertices().
| bool mln::p_vertices< G, F >::has | ( | const psite & | p | ) | const [inline] |
Does this site set has p?
Definition at line 304 of file p_vertices.hh.
References mln::p_vertices< G, F >::is_valid(), and mln::p_vertices_psite< G, F >::v().
| bool mln::p_vertices< G, F >::has | ( | const util::vertex< G2 > & | v | ) | const [inline] |
Does this site set has v?
Definition at line 314 of file p_vertices.hh.
References mln::util::vertex< G >::graph(), mln::util::vertex< G >::is_valid(), and mln::p_vertices< G, F >::is_valid().
| void mln::p_vertices< G, F >::invalidate | ( | ) | [inline] |
Invalidate this site set.
Definition at line 296 of file p_vertices.hh.
| bool mln::internal::site_set_base_< F::result , p_vertices< G, F > >::is_empty | ( | ) | const [inherited] |
Test if the site set is empty.
This final method dispatches to is_empty_ whose default implementation relies on the 'nsites' method.
| bool mln::p_vertices< G, F >::is_valid | ( | ) | const [inline] |
Test this site set validity.
Definition at line 288 of file p_vertices.hh.
Referenced by mln::p_vertices< G, F >::graph(), mln::p_vertices< G, F >::has(), and mln::p_vertices< G, F >::p_vertices().
| std::size_t mln::p_vertices< G, F >::memory_size | ( | ) | const [inline] |
Does this site set has vertex_id? FIXME: causes ambiguities while calling has(mln::neighb_fwd_niter<>); bool has(unsigned vertex_id) const;.
Definition at line 339 of file p_vertices.hh.
| unsigned mln::p_vertices< G, F >::nsites | ( | ) | const [inline] |
Return The number of points (sites) of the set, i.e., the number of vertices.
Required by the mln::Point_Set concept.
Definition at line 272 of file p_vertices.hh.
References mln::p_vertices< G, F >::nvertices().
| unsigned mln::p_vertices< G, F >::nvertices | ( | ) | const [inline] |
Return The number of vertices in the graph.
Definition at line 280 of file p_vertices.hh.
Referenced by mln::p_vertices< G, F >::nsites().
| F::result mln::p_vertices< G, F >::operator() | ( | const psite & | p | ) | const [inline] |
Return the value associated to an element of this site set.
Definition at line 349 of file p_vertices.hh.
| F::result mln::p_vertices< G, F >::operator() | ( | const util::vertex< G > & | p | ) | const [inline] |
Definition at line 358 of file p_vertices.hh.
| F::result mln::p_vertices< G, F >::operator() | ( | unsigned | id_v | ) | const [inline] |
Definition at line 367 of file p_vertices.hh.
F mln::p_vertices< G, F >::f_ [private] |
Definition at line 186 of file p_vertices.hh.
G mln::p_vertices< G, F >::g_ [private] |
Definition at line 185 of file p_vertices.hh.
1.7.1