ug4
ug::SCCOrdering< TAlgebra, O_t > Class Template Reference
+ Inheritance diagram for ug::SCCOrdering< TAlgebra, O_t >:

Public Types

typedef boost::graph_traits< G_t >::adjacency_iterator adj_iter
 
typedef IOrderingAlgorithm< TAlgebra, O_t > baseclass
 
typedef boost::adjacency_list< boost::vecS, boost::vecS, boost::directedS > G_t
 
typedef boost::graph_traits< G_t >::in_edge_iterator inedge_iter
 
typedef TAlgebra::matrix_type M_t
 
typedef boost::graph_traits< G_t >::adjacency_iterator nIt_t
 
typedef IOrderingAlgorithm< TAlgebra, ordering_container_typeordering_algo_type
 
typedef std::vector< size_t > ordering_container_type
 
typedef TAlgebra::vector_type V_t
 
typedef boost::graph_traits< G_t >::vertex_descriptor vd_t
 
typedef boost::graph_traits< G_t >::vertex_iterator vIt_t
 
- Public Types inherited from ug::IOrderingAlgorithm< TAlgebra, O_t >
typedef TAlgebra::matrix_type M_t
 
typedef TAlgebra::vector_type V_t
 

Public Member Functions

void check ()
 
SmartPtr< IOrderingAlgorithm< TAlgebra, O_t > > clone ()
 
void compute ()
 
void init (M_t *, const O_t &)
 
void init (M_t *, const V_t &, const O_t &)
 
void init (M_t *A)
 
void init (M_t *A, const V_t &)
 
virtual const char * name () const
 
O_t & ordering ()
 
 SCCOrdering ()
 
 SCCOrdering (const SCCOrdering< TAlgebra, O_t > &parent)
 clone constructor More...
 
void set_ordering_subalgorithm (SmartPtr< ordering_algo_type > ordering_subalgo)
 sets an ordering algorithm More...
 
- Public Member Functions inherited from ug::IOrderingAlgorithm< TAlgebra, O_t >
virtual void init (M_t *, const std::vector< size_t > &)=0
 
virtual void init (M_t *, const V_t &, const std::vector< size_t > &)=0
 
 IOrderingAlgorithm ()
 
virtual ~IOrderingAlgorithm ()
 

Private Attributes

G_t g
 
M_tm
 
SmartPtr< ordering_algo_typem_spOrderingSubAlgo
 
O_t o
 
G_t scc_g
 

Member Typedef Documentation

◆ adj_iter

template<typename TAlgebra , typename O_t >
typedef boost::graph_traits<G_t>::adjacency_iterator ug::SCCOrdering< TAlgebra, O_t >::adj_iter

◆ baseclass

template<typename TAlgebra , typename O_t >
typedef IOrderingAlgorithm<TAlgebra, O_t> ug::SCCOrdering< TAlgebra, O_t >::baseclass

◆ G_t

template<typename TAlgebra , typename O_t >
typedef boost::adjacency_list<boost::vecS, boost::vecS, boost::directedS> ug::SCCOrdering< TAlgebra, O_t >::G_t

◆ inedge_iter

template<typename TAlgebra , typename O_t >
typedef boost::graph_traits<G_t>::in_edge_iterator ug::SCCOrdering< TAlgebra, O_t >::inedge_iter

◆ M_t

template<typename TAlgebra , typename O_t >
typedef TAlgebra::matrix_type ug::SCCOrdering< TAlgebra, O_t >::M_t

◆ nIt_t

template<typename TAlgebra , typename O_t >
typedef boost::graph_traits<G_t>::adjacency_iterator ug::SCCOrdering< TAlgebra, O_t >::nIt_t

◆ ordering_algo_type

template<typename TAlgebra , typename O_t >
typedef IOrderingAlgorithm<TAlgebra, ordering_container_type> ug::SCCOrdering< TAlgebra, O_t >::ordering_algo_type

◆ ordering_container_type

template<typename TAlgebra , typename O_t >
typedef std::vector<size_t> ug::SCCOrdering< TAlgebra, O_t >::ordering_container_type

◆ V_t

template<typename TAlgebra , typename O_t >
typedef TAlgebra::vector_type ug::SCCOrdering< TAlgebra, O_t >::V_t

◆ vd_t

template<typename TAlgebra , typename O_t >
typedef boost::graph_traits<G_t>::vertex_descriptor ug::SCCOrdering< TAlgebra, O_t >::vd_t

◆ vIt_t

template<typename TAlgebra , typename O_t >
typedef boost::graph_traits<G_t>::vertex_iterator ug::SCCOrdering< TAlgebra, O_t >::vIt_t

Constructor & Destructor Documentation

◆ SCCOrdering() [1/2]

template<typename TAlgebra , typename O_t >
ug::SCCOrdering< TAlgebra, O_t >::SCCOrdering ( )
inline

◆ SCCOrdering() [2/2]

template<typename TAlgebra , typename O_t >
ug::SCCOrdering< TAlgebra, O_t >::SCCOrdering ( const SCCOrdering< TAlgebra, O_t > &  parent)
inline

clone constructor

Member Function Documentation

◆ check()

template<typename TAlgebra , typename O_t >
void ug::SCCOrdering< TAlgebra, O_t >::check ( )
inlinevirtual

◆ clone()

template<typename TAlgebra , typename O_t >
SmartPtr<IOrderingAlgorithm<TAlgebra, O_t> > ug::SCCOrdering< TAlgebra, O_t >::clone ( )
inlinevirtual

◆ compute()

◆ init() [1/4]

template<typename TAlgebra , typename O_t >
void ug::SCCOrdering< TAlgebra, O_t >::init ( M_t ,
const O_t &   
)
inline

◆ init() [2/4]

template<typename TAlgebra , typename O_t >
void ug::SCCOrdering< TAlgebra, O_t >::init ( M_t ,
const V_t ,
const O_t &   
)
inline

◆ init() [3/4]

template<typename TAlgebra , typename O_t >
void ug::SCCOrdering< TAlgebra, O_t >::init ( M_t A)
inlinevirtual

◆ init() [4/4]

template<typename TAlgebra , typename O_t >
void ug::SCCOrdering< TAlgebra, O_t >::init ( M_t A,
const V_t  
)
inlinevirtual

◆ name()

template<typename TAlgebra , typename O_t >
virtual const char* ug::SCCOrdering< TAlgebra, O_t >::name ( ) const
inlinevirtual

◆ ordering()

template<typename TAlgebra , typename O_t >
O_t& ug::SCCOrdering< TAlgebra, O_t >::ordering ( )
inlinevirtual

◆ set_ordering_subalgorithm()

template<typename TAlgebra , typename O_t >
void ug::SCCOrdering< TAlgebra, O_t >::set_ordering_subalgorithm ( SmartPtr< ordering_algo_type ordering_subalgo)
inline

sets an ordering algorithm

References ug::SCCOrdering< TAlgebra, O_t >::m_spOrderingSubAlgo.

Member Data Documentation

◆ g

template<typename TAlgebra , typename O_t >
G_t ug::SCCOrdering< TAlgebra, O_t >::g
private

◆ m

template<typename TAlgebra , typename O_t >
M_t* ug::SCCOrdering< TAlgebra, O_t >::m
private

◆ m_spOrderingSubAlgo

template<typename TAlgebra , typename O_t >
SmartPtr<ordering_algo_type> ug::SCCOrdering< TAlgebra, O_t >::m_spOrderingSubAlgo
private

◆ o

template<typename TAlgebra , typename O_t >
O_t ug::SCCOrdering< TAlgebra, O_t >::o
private

◆ scc_g

template<typename TAlgebra , typename O_t >
G_t ug::SCCOrdering< TAlgebra, O_t >::scc_g
private

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