Referencia de la Clase Bit_Fields
[Grafos.]

Mascara de bits para marcar partes de un grafo. Más...

Lista de todos los miembros.

Métodos públicos

 Bit_Fields ()
 pertenece a un camino mínimo
bool get_bit (const int &bit) const throw (std::exception, std::out_of_range)
 Obtiene un valor de bit de control.
void reset ()
 Reinicia todos los bits a cero.
void reset (const int &bit)
 Reinicia bit a cero.
void set_bit (const int &bit, const int &value)
 Escribe un valor en un bit de control.

Atributos públicos

unsigned int breadth_first: 1
 Bit de búsqueda en profundidad.
unsigned int build_subtree: 1
 Bit de árbol abarcador.
unsigned int convert_tree: 1
 Bit de subgrafo.
unsigned int cut: 1
 Conversión a Tree_Node.
unsigned int dijkstra: 1
 Bit de algoritmo de Prim.
unsigned int euler: 1
 Bit de algoritmo de Dijkstra.
unsigned int find_path: 1
 Bit de prueba de existencia de camino.
unsigned int hamilton: 1
 Bit de camino euleriano.
unsigned int is_acyclique: 1
 Bit de verificación de ciclo.
unsigned int kruskal: 1
 Bit de búsqueda de camino.
unsigned int min: 1
 nodo o arco de corte
unsigned int prim: 1
 Bit de algoritmo de Kruskal.
unsigned int spanning_tree: 1
 Bit de camino hamiltoniano.
unsigned int test_cycle: 1
 Bit de búsqueda en amplitud.
unsigned int test_path: 1
 Bit de prueba de aciclicidad.


Descripción detallada

Cada nodo y arco de un grafo contiene una mascara de bits destinados a marcar visita durante la ejecución de algoritmos específicos.

Nota:
Por alguna razón aún no claramente comprendida, la copia de bits mediante memcpy y demás familiares del sistema no funciona correctamente sobre algunos sistemas. Posiblemente esto sólo ocurra sobre sistemas little-endian. Por tanto, no utilice estos mecanismos.

Definición en la línea 235 del archivo tpl_graph.H.


Documentación del constructor y destructor

Bit_Fields (  )  [inline]

Constructor por omisión que inicia todos los bits en cero

Definición en la línea 258 del archivo tpl_graph.H.


Documentación de las funciones miembro

bool get_bit ( const int &  bit  )  const throw (std::exception, std::out_of_range) [inline]

Dados los bits de control de un nodo o arco, este método obtiene un valor específico de un bit.

Parámetros:
[in] bit número de bit a ser leído.
Devuelve:
un valor lógico correspondiente al bit leído.
Excepciones:
out_of_range si bit es más alto que la cantidad de bits definidos.

Definición en la línea 274 del archivo tpl_graph.H.

Hace referencia a Bit_Fields::breadth_first, Bit_Fields::build_subtree, Bit_Fields::convert_tree, Bit_Fields::cut, Bit_Fields::dijkstra, Bit_Fields::euler, Bit_Fields::find_path, Bit_Fields::hamilton, Bit_Fields::is_acyclique, Bit_Fields::kruskal, Bit_Fields::min, Bit_Fields::prim, Bit_Fields::spanning_tree, Bit_Fields::test_cycle, y Bit_Fields::test_path.

void set_bit ( const int &  bit,
const int &  value 
) [inline]

Dados los bits de control de un nodo o arco, este método escribe un valor (0 o 1) en un bit específico.

No se verifica que el valor sea 0 o 1.

Parámetros:
[in] bit número de bit a escribir.
[in] value valor a escribir.
Excepciones:
out_of_range si bit es más alto que la cantidad de bits definidos.

Definición en la línea 316 del archivo tpl_graph.H.

Hace referencia a Bit_Fields::breadth_first, Bit_Fields::build_subtree, Bit_Fields::convert_tree, Bit_Fields::cut, Bit_Fields::dijkstra, Bit_Fields::euler, Bit_Fields::find_path, Bit_Fields::hamilton, Bit_Fields::is_acyclique, Bit_Fields::kruskal, Bit_Fields::min, Bit_Fields::prim, Bit_Fields::spanning_tree, Bit_Fields::test_cycle, y Bit_Fields::test_path.

Referenciado por Bit_Fields::reset().


La documentación para esta clase fue generada a partir del siguiente fichero:

Leandro R. León