mln::util::adjacency_matrix< V > Class Template Reference
[Utilities]

A class of adjacency matrix. More...

#include <adjacency_matrix.hh>

Inheritance diagram for mln::util::adjacency_matrix< V >:

Inheritance graph

List of all members.

Public Member Functions

void add (const V &e1, const V &e2)
 Make e1 and e2 adjacent.
 adjacency_matrix (const V &nelements)
 Construct an adjacency matrix with nelements elements maximum.
 adjacency_matrix ()
 Constructors.
bool are_adjacent (const V &e1, const V &e2) const
 Check whether e1 and e2 are adjacent.
void clear ()
 Clear all adjacencies.
const adj_thook_data_ () const
 @}
std::ostream & print_data_ (std::ostream &ostr) const
 Print data to std::out.
void remove (const V &e1, const V &e2)
 Remove adjacency between e1 and e2.

Protected Attributes

adj_t adj_

Package Types

typedef impl_t::adj_t adj_t
 Data structure used to store adjacency information.

Package Attributes

 __pad0__:adjacency_matrix_impl_selector<V
mln::metal::equal
< mln_trait_value_quant(V),
trait::value::quant::low >
::eval 
impl_t


Detailed Description

template<typename V = def::coord>
class mln::util::adjacency_matrix< V >

A class of adjacency matrix.

Support low and high quantification value types. In case of low quantification value type, it uses an image2d to store adjacency information. In case of high quantification value type, it uses a util::set to store the adjacency information.

Definition at line 136 of file adjacency_matrix.hh.


Member Typedef Documentation

template<typename V = def::coord>
typedef impl_t::adj_t mln::util::adjacency_matrix< V >::adj_t [package]

Data structure used to store adjacency information.

Reimplemented from mln::util::internal::adjacency_matrix_impl_selector< V, Q >.

Definition at line 143 of file adjacency_matrix.hh.


Constructor & Destructor Documentation

template<typename V>
mln::util::adjacency_matrix< V >::adjacency_matrix (  )  [inline]

Constructors.

@{

Default

Definition at line 308 of file adjacency_matrix.hh.

template<typename V>
mln::util::adjacency_matrix< V >::adjacency_matrix ( const V &  nelements  )  [inline]

Construct an adjacency matrix with nelements elements maximum.

Definition at line 315 of file adjacency_matrix.hh.


Member Function Documentation

template<typename V, typename Q>
void mln::util::internal::adjacency_matrix_impl_selector< V, Q >::add ( const V &  e1,
const V &  e2 
) [inline, inherited]

template<typename V, typename Q>
bool mln::util::internal::adjacency_matrix_impl_selector< V, Q >::are_adjacent ( const V &  e1,
const V &  e2 
) const [inline, inherited]

template<typename V, typename Q>
void mln::util::internal::adjacency_matrix_impl_selector< V, Q >::clear (  )  [inline, inherited]

template<typename V = def::coord>
const adj_t& mln::util::adjacency_matrix< V >::hook_data_ (  )  const

@}

Hook member used to retrieve the underlying data structure.

template<typename V, typename Q>
std::ostream & mln::util::internal::adjacency_matrix_impl_selector< V, Q >::print_data_ ( std::ostream &  ostr  )  const [inline, inherited]

template<typename V, typename Q>
void mln::util::internal::adjacency_matrix_impl_selector< V, Q >::remove ( const V &  e1,
const V &  e2 
) [inline, inherited]


Member Data Documentation

template<typename V = def::coord>
mln::util::adjacency_matrix< V >::__pad0__ [package]

Definition at line 140 of file adjacency_matrix.hh.

template<typename V, typename Q>
adj_t mln::util::internal::adjacency_matrix_impl_selector< V, Q >::adj_ [protected, inherited]

template<typename V = def::coord>
mln::metal::equal< mln_trait_value_quant(V) , trait::value::quant::low >::eval mln::util::adjacency_matrix< V >::impl_t [package]

Definition at line 140 of file adjacency_matrix.hh.


Generated on Sun Apr 25 02:07:22 2010 for Milena (Olena) by  doxygen 1.5.6