digraph< NODE, EDGE > Type Template Reference

#include <graph.h>


Public Types

typedef digraph< NODE, EDGEself
typedef digraph_node< NODE, EDGEnode
typedef digraph_edge< NODE, EDGEedge
typedef succ_edge_iter< selfsucc_edge_iter
typedef succ_node_iter< selfsucc_node_iter
typedef pred_edge_iter< selfpred_edge_iter
typedef pred_node_iter< selfpred_node_iter
typedef hash_set< node
*, ptr_hash< node > > 
node_set_type
typedef node_set_type::iterator node_set_iter

Public Member Functions

node_set_iter node_set_begin ()
node_set_iter node_set_end ()
nodeadd_node (NODE v)
nodeadd_node ()
edgeadd_edge (node *v, node *w)
void delete_edge (edge *e)
void delete_node (node *v)
void delete_node_and_edge (node *v)
edgefind_edge (node *v, node *w)
nodehead (edge *e)
nodetail (edge *e)
succ_node_iter succ_node_begin (node *v) const
succ_node_iter succ_node_end (node *v) const
pred_node_iter pred_node_begin (node *v) const
pred_node_iter pred_node_end (node *v) const
succ_edge_iter succ_edge_begin (node *v) const
succ_edge_iter succ_edge_end (node *v) const
pred_edge_iter pred_edge_begin (node *v) const
pred_edge_iter pred_edge_end (node *v) const

Data Fields

node_set_type node_set


Detailed Description

template<class NODE, class EDGE>
type digraph< NODE, EDGE >

Definition at line 236 of file graph.h.


Member Typedef Documentation

template<class NODE, class EDGE>
typedef digraph<NODE, EDGE> digraph< NODE, EDGE >::self

Definition at line 237 of file graph.h.

template<class NODE, class EDGE>
typedef digraph_node<NODE, EDGE> digraph< NODE, EDGE >::node

Definition at line 238 of file graph.h.

template<class NODE, class EDGE>
typedef digraph_edge<NODE, EDGE> digraph< NODE, EDGE >::edge

Definition at line 239 of file graph.h.

template<class NODE, class EDGE>
typedef succ_edge_iter<self> digraph< NODE, EDGE >::succ_edge_iter

Definition at line 240 of file graph.h.

template<class NODE, class EDGE>
typedef succ_node_iter<self> digraph< NODE, EDGE >::succ_node_iter

Definition at line 241 of file graph.h.

template<class NODE, class EDGE>
typedef pred_edge_iter<self> digraph< NODE, EDGE >::pred_edge_iter

Definition at line 242 of file graph.h.

template<class NODE, class EDGE>
typedef pred_node_iter<self> digraph< NODE, EDGE >::pred_node_iter

Definition at line 243 of file graph.h.

template<class NODE, class EDGE>
typedef hash_set<node*, ptr_hash<node> > digraph< NODE, EDGE >::node_set_type

Definition at line 244 of file graph.h.

template<class NODE, class EDGE>
typedef node_set_type::iterator digraph< NODE, EDGE >::node_set_iter

Definition at line 245 of file graph.h.


Member Function/Subroutine Documentation

template<class NODE, class EDGE>
node_set_iter digraph< NODE, EDGE >::node_set_begin (  )  [inline]

Definition at line 249 of file graph.h.

References digraph< NODE, EDGE >::node_set.

template<class NODE, class EDGE>
node_set_iter digraph< NODE, EDGE >::node_set_end (  )  [inline]

Definition at line 250 of file graph.h.

References digraph< NODE, EDGE >::node_set.

template<class NODE, class EDGE>
node* digraph< NODE, EDGE >::add_node ( NODE  v  )  [inline]

Definition at line 252 of file graph.h.

References digraph< NODE, EDGE >::node_set, and p.

template<class NODE, class EDGE>
node* digraph< NODE, EDGE >::add_node (  )  [inline]

Definition at line 258 of file graph.h.

References digraph< NODE, EDGE >::node_set, and p.

template<class NODE, class EDGE>
edge* digraph< NODE, EDGE >::add_edge ( node v,
node w 
) [inline]

template<class NODE, class EDGE>
void digraph< NODE, EDGE >::delete_edge ( edge e  )  [inline]

template<class NODE, class EDGE>
void digraph< NODE, EDGE >::delete_node ( node v  )  [inline]

Definition at line 277 of file graph.h.

References digraph< NODE, EDGE >::node_set.

Referenced by digraph< NODE, EDGE >::delete_node_and_edge().

template<class NODE, class EDGE>
void digraph< NODE, EDGE >::delete_node_and_edge ( node v  )  [inline]

template<class NODE, class EDGE>
edge* digraph< NODE, EDGE >::find_edge ( node v,
node w 
)

template<class NODE, class EDGE>
node* digraph< NODE, EDGE >::head ( edge e  ) 

template<class NODE, class EDGE>
node* digraph< NODE, EDGE >::tail ( edge e  ) 

template<class NODE, class EDGE>
succ_node_iter digraph< NODE, EDGE >::succ_node_begin ( node v  )  const [inline]

template<class NODE, class EDGE>
succ_node_iter digraph< NODE, EDGE >::succ_node_end ( node v  )  const [inline]

Definition at line 297 of file graph.h.

References succ_node_iter< DIGRAPH >::cur, and s.

template<class NODE, class EDGE>
pred_node_iter digraph< NODE, EDGE >::pred_node_begin ( node v  )  const [inline]

template<class NODE, class EDGE>
pred_node_iter digraph< NODE, EDGE >::pred_node_end ( node v  )  const [inline]

Definition at line 303 of file graph.h.

References pred_node_iter< DIGRAPH >::cur, and s.

template<class NODE, class EDGE>
succ_edge_iter digraph< NODE, EDGE >::succ_edge_begin ( node v  )  const [inline]

template<class NODE, class EDGE>
succ_edge_iter digraph< NODE, EDGE >::succ_edge_end ( node v  )  const [inline]

Definition at line 309 of file graph.h.

References succ_edge_iter< DIGRAPH >::cur, and s.

template<class NODE, class EDGE>
pred_edge_iter digraph< NODE, EDGE >::pred_edge_begin ( node v  )  const [inline]

template<class NODE, class EDGE>
pred_edge_iter digraph< NODE, EDGE >::pred_edge_end ( node v  )  const [inline]

Definition at line 315 of file graph.h.

References pred_edge_iter< DIGRAPH >::cur, and s.


Field Documentation

template<class NODE, class EDGE>
node_set_type digraph< NODE, EDGE >::node_set


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

Generated on Wed Apr 8 16:35:57 2009 for Open64 by  doxygen 1.5.6