$extrastylesheet
Olena  User documentation 2.1
An Image Processing Platform
 All Classes Namespaces Functions Variables Typedefs Enumerations Enumerator Friends Groups Pages
mln::util::vertex< G > Class Template Reference

#include <mln/util/vertex.hh>

Public Member Functions

void change_graph (const G &g)
edge< G > edge_with (const vertex< G > &v_id) const
const G & graph () const
const vertex_id_tid () const
void invalidate ()
bool is_valid () const
edge_id_t ith_nbh_edge (unsigned i) const
vertex_id_t ith_nbh_vertex (unsigned i) const
unsigned nmax_nbh_edges () const
unsigned nmax_nbh_vertices () const
 operator vertex_id_t () const
vertex_id_t other (const edge_id_t &id_e) const
void update_id (const vertex_id_t &id)
 vertex ()
 vertex (const G &g)
 vertex (const G &g, const id_value_t &id)
 vertex (const G &g, const vertex_id_t &id)

Protected Attributes

g_
vertex_id_t id_

Public Types

typedef Site< void > category
typedef Vertex< void > Category
typedef vertex< G > exact_t
typedef G graph_t
typedef vertex_id_t id_t
typedef vertex_id_t::value_t id_value_t

Detailed Description

template<typename G>
class mln::util::vertex< G >

Vertex of a graph G.

Definition at line 71 of file vertex.hh.

Constructor & Destructor Documentation

template<typename G>
mln::util::vertex< G >::vertex ( )

Constructors.

template<typename G>
mln::util::vertex< G >::vertex ( const G &  g)
explicit
template<typename G>
mln::util::vertex< G >::vertex ( const G &  g,
const id_value_t id 
)
template<typename G>
mln::util::vertex< G >::vertex ( const G &  g,
const vertex_id_t id 
)

Member Function Documentation

template<typename G>
void mln::util::vertex< G >::change_graph ( const G &  g)

Change the parent graph of that vertex.

template<typename G>
edge<G> mln::util::vertex< G >::edge_with ( const vertex< G > &  v_id) const

Returns true if this vertex has an edge with the given vertex.

template<typename G>
const G& mln::util::vertex< G >::graph ( ) const

Returns the graph pointer this vertex belongs to.

template<typename G>
const vertex_id_t& mln::util::vertex< G >::id ( ) const

Returns the vertex id.

template<typename G>
void mln::util::vertex< G >::invalidate ( )

Invalidate that vertex.

template<typename G>
bool mln::util::vertex< G >::is_valid ( ) const

Check whether the vertex is still part of the graph.

template<typename G>
edge_id_t mln::util::vertex< G >::ith_nbh_edge ( unsigned  i) const

Returns the ith edge starting from this vertex.

template<typename G>
vertex_id_t mln::util::vertex< G >::ith_nbh_vertex ( unsigned  i) const

Returns the ith vertex adjacent to this vertex.

template<typename G>
unsigned mln::util::vertex< G >::nmax_nbh_edges ( ) const

Returns the number max of edges starting from this vertex.

If g_ is a sub graph of another graph, nmax will be retrived from the initial graph.

template<typename G>
unsigned mln::util::vertex< G >::nmax_nbh_vertices ( ) const

Returns the number max of vertices adjacent to this vertex.

template<typename G>
mln::util::vertex< G >::operator vertex_id_t ( ) const

Conversion to the vertex id.

FIXME: May cause ambiguities... :(

template<typename G>
vertex_id_t mln::util::vertex< G >::other ( const edge_id_t id_e) const

Returns the other vertex located on edge id_e.

template<typename G>
void mln::util::vertex< G >::update_id ( const vertex_id_t id)

Update the vertex id.

Member Data Documentation

template<typename G>
G mln::util::vertex< G >::g_
protected

Definition at line 138 of file vertex.hh.

template<typename G>
vertex_id_t mln::util::vertex< G >::id_
protected

Definition at line 139 of file vertex.hh.

Member Typedef Documentation

typedef Site<void> mln::Site< vertex< G > >::category
inherited

Definition at line 62 of file site.hh.

template<typename G>
typedef Vertex<void> mln::util::vertex< G >::Category

Object category.

Definition at line 77 of file vertex.hh.

typedef vertex< G > mln::Object< vertex< G > >::exact_t
inherited

Definition at line 105 of file object.hh.

template<typename G>
typedef G mln::util::vertex< G >::graph_t

Graph associated type.

Definition at line 86 of file vertex.hh.

template<typename G>
typedef vertex_id_t mln::util::vertex< G >::id_t

The vertex type id.

Definition at line 83 of file vertex.hh.

template<typename G>
typedef vertex_id_t::value_t mln::util::vertex< G >::id_value_t

The underlying type used to store vertex ids.

Definition at line 80 of file vertex.hh.