CMR  1.3.0
Public Types | Public Member Functions | List of all members
tu::matroid_permuted< MatroidType > Class Template Reference

#include <matroid_permuted.hpp>

Public Types

typedef MatroidType matroid_type
 
typedef MatroidType::size_type size_type
 
typedef MatroidType::name_type name_type
 
typedef boost::mpl::if_< boost::is_const< MatroidType >, typename MatroidType::const_reference_type, typename MatroidType::reference_type >::type reference_type
 
typedef const name_typeconst_reference_type
 
typedef matroid_permuted< name_typeself_type
 
typedef permutation permutation_type
 

Public Member Functions

 matroid_permuted (MatroidType &matroid)
 
size_type size1 () const
 
size_type size2 () const
 
const permutation_typeperm1 () const
 
permutation_typeperm1 ()
 
const permutation_typeperm2 () const
 
permutation_typeperm2 ()
 
reference_type name1 (size_type index)
 
const_reference_type name1 (size_type index) const
 
reference_type name2 (size_type index)
 
const_reference_type name2 (size_type index) const
 
matroid_typedata ()
 

Detailed Description

template<typename MatroidType>
class tu::matroid_permuted< MatroidType >

A matroid proxy with permuted rows and columns.

Member Typedef Documentation

◆ const_reference_type

template<typename MatroidType >
typedef const name_type& tu::matroid_permuted< MatroidType >::const_reference_type

◆ matroid_type

template<typename MatroidType >
typedef MatroidType tu::matroid_permuted< MatroidType >::matroid_type

◆ name_type

template<typename MatroidType >
typedef MatroidType::name_type tu::matroid_permuted< MatroidType >::name_type

◆ permutation_type

template<typename MatroidType >
typedef permutation tu::matroid_permuted< MatroidType >::permutation_type

◆ reference_type

template<typename MatroidType >
typedef boost::mpl::if_<boost::is_const <MatroidType>, typename MatroidType::const_reference_type, typename MatroidType::reference_type>::type tu::matroid_permuted< MatroidType >::reference_type

◆ self_type

template<typename MatroidType >
typedef matroid_permuted<name_type> tu::matroid_permuted< MatroidType >::self_type

◆ size_type

template<typename MatroidType >
typedef MatroidType::size_type tu::matroid_permuted< MatroidType >::size_type

Constructor & Destructor Documentation

◆ matroid_permuted()

template<typename MatroidType >
tu::matroid_permuted< MatroidType >::matroid_permuted ( MatroidType &  matroid)
inline

Constructs the matroid proxy.

Parameters
matroidOriginal matroid

Member Function Documentation

◆ data()

template<typename MatroidType >
matroid_type& tu::matroid_permuted< MatroidType >::data ( )
inline
Returns
Reference to the orginal matroid

◆ name1() [1/2]

template<typename MatroidType >
reference_type tu::matroid_permuted< MatroidType >::name1 ( size_type  index)
inline
Parameters
indexA row index
Returns
The corresponding matroid element

◆ name1() [2/2]

template<typename MatroidType >
const_reference_type tu::matroid_permuted< MatroidType >::name1 ( size_type  index) const
inline
Parameters
indexA row index
Returns
The corresponding matroid element

◆ name2() [1/2]

template<typename MatroidType >
reference_type tu::matroid_permuted< MatroidType >::name2 ( size_type  index)
inline
Parameters
indexA column index
Returns
The corresponding matroid element

◆ name2() [2/2]

template<typename MatroidType >
const_reference_type tu::matroid_permuted< MatroidType >::name2 ( size_type  index) const
inline
Parameters
indexA column index
Returns
The corresponding matroid element

◆ perm1() [1/2]

template<typename MatroidType >
permutation_type& tu::matroid_permuted< MatroidType >::perm1 ( )
inline
Returns
Reference to the row permutation

◆ perm1() [2/2]

template<typename MatroidType >
const permutation_type& tu::matroid_permuted< MatroidType >::perm1 ( ) const
inline
Returns
Reference to the row permutation

◆ perm2() [1/2]

template<typename MatroidType >
permutation_type& tu::matroid_permuted< MatroidType >::perm2 ( )
inline
Returns
Reference to the column permutation

◆ perm2() [2/2]

template<typename MatroidType >
const permutation_type& tu::matroid_permuted< MatroidType >::perm2 ( ) const
inline
Returns
Reference to the column permutation

◆ size1()

template<typename MatroidType >
size_type tu::matroid_permuted< MatroidType >::size1 ( ) const
inline
Returns
Height, i.e. size of each base

◆ size2()

template<typename MatroidType >
size_type tu::matroid_permuted< MatroidType >::size2 ( ) const
inline
Returns
Width, i.e. size of each cobase

The documentation for this class was generated from the following file: