Aleph-w  1.9
General library for algorithms and data structures
Aleph::Dyn_Graph< GT > Class Template Reference

#include <tpl_dyn_graph.H>

Public Types

typedef GT::Node Node
 
typedef GT::Arc Arc
 
typedef Node::Node_Info Node_Info
 
typedef Arc::Arc_Info Arc_Info
 

Public Member Functions

 Dyn_Graph ()
 Constructor por omisión.
 
 Dyn_Graph (const Dyn_Graph &g)
 
 Dyn_Graph (Dyn_Graph &&g)
 
Node_Info & insert_node (const Node_Info &info)
 
Node_Info & insert_node (Node_Info &&info=Node_Info())
 
Arc_Info & insert_arc (Node_Info &src_info, Node_Info &tgt_info, const Arc_Info &info)
 
Arc_Info & insert_arc (Node_Info &src_info, Node_Info &tgt_info, Arc_Info &&info=Arc_Info())
 
Node_Info & get_src_node (Arc_Info &info)
 
Node_Info & get_tgt_node (Arc_Info &info)
 
Node_Info & get_connected_node (Node_Info &node_info, Arc_Info &arc_info)
 
void remove_arc (Arc_Info &info)
 
void remove_node (Node_Info &info)
 
const size_t & get_num_nodes () const
 
const size_t & get_num_arcs () const
 
const size_t & get_num_arcs (Node_Info &info) const
 

Detailed Description

template<class GT>
class Aleph::Dyn_Graph< GT >

Author
Alejandro Mujica

Member Function Documentation

◆ get_num_arcs() [1/2]

template<class GT >
const size_t& Aleph::Dyn_Graph< GT >::get_num_arcs ( ) const
inline

Retorna el numero de arcos del grafo.

Returns
Cantidad de arcos del grafo.

◆ get_num_arcs() [2/2]

template<class GT >
const size_t& Aleph::Dyn_Graph< GT >::get_num_arcs ( Node_Info &  info) const
inline

Retorna el numero de arcos de un nodo dato.

Parameters
infoReferencia a la información almacenada en el nodo deseado.
Returns
Cantidad de arcos adyacentes al nodo.

◆ get_num_nodes()

template<class GT >
const size_t& Aleph::Dyn_Graph< GT >::get_num_nodes ( ) const
inline

Retorna el numero de nodos del grafo.

Returns
Cantidad de nodos del grafo.

◆ get_src_node()

template<class GT >
Node_Info& Aleph::Dyn_Graph< GT >::get_src_node ( Arc_Info &  info)
inline

Consulta la info del nodo fuente de un arco dado.

Parameters
infoReferencia a la info contenida por el arco.
Returns
Referencia a la info contenida por el nodo fuente.

◆ get_tgt_node()

template<class GT >
Node_Info& Aleph::Dyn_Graph< GT >::get_tgt_node ( Arc_Info &  info)
inline

Consulta la info del nodo destino de un arco dado.

Parameters
infoReferencia a la info contenida por el arco.
Returns
Referencia a la info contenida por el nodo destino.

◆ insert_arc() [1/2]

template<class GT >
Arc_Info& Aleph::Dyn_Graph< GT >::insert_arc ( Node_Info &  src_info,
Node_Info &  tgt_info,
const Arc_Info &  info 
)
inline

Inserta un arco en el grafo.

Parameters
src_infoReferencia a la info contenida del nodo que se quiere como fuente.
tgt_infoReferencia a la info contenida del nodo que se quiere como destino.
infoInformación contenida por el arco.
Returns
Referencia a la info insertada, en este caso inicializada por omisión.

◆ insert_arc() [2/2]

template<class GT >
Arc_Info& Aleph::Dyn_Graph< GT >::insert_arc ( Node_Info &  src_info,
Node_Info &  tgt_info,
Arc_Info &&  info = Arc_Info() 
)
inline

Inserta un arco en el grafo con info proveniente de un rvalue.

Parameters
src_infoReferencia a la info contenida del nodo que se quiere como fuente.
tgt_infoReferencia a la info contenida del nodo que se quiere como destino.
infoInformación contenida por el arco.
Returns
Referencia a la info insertada, en este caso inicializada por omisión.

◆ insert_node() [1/2]

template<class GT >
Node_Info& Aleph::Dyn_Graph< GT >::insert_node ( const Node_Info &  info)
inline

Inserta un nodo en el grafo.

Parameters
infoInformación contenida por el nodo.
Returns
Referencia a la info insertada.

◆ insert_node() [2/2]

template<class GT >
Node_Info& Aleph::Dyn_Graph< GT >::insert_node ( Node_Info &&  info = Node_Info())
inline

Inserta un nodo en el grafo con info proveniente de un rvalue.

Parameters
infoInformación contenida por el nodo.
Returns
Referencia a la info insertada.

◆ remove_arc()

template<class GT >
void Aleph::Dyn_Graph< GT >::remove_arc ( Arc_Info &  info)
inline

Elimina un arco del grafo.

Parameters
infoReferencia a la información almacenada por el arco.

◆ remove_node()

template<class GT >
void Aleph::Dyn_Graph< GT >::remove_node ( Node_Info &  info)
inline

Elimina un nodo del grafo.

Parameters
infoReferencia a la información almacenada por el nodo.

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

Leandro Rabindranath León