digraph< NODE, EDGE > Struct Template Reference

#include <graph.h>

List of all members.

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

Public Attributes

node_set_type node_set

Detailed Description

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

Definition at line 232 of file graph.h.


Member Typedef Documentation

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

Definition at line 235 of file graph.h.

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

Definition at line 234 of file graph.h.

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

Definition at line 241 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 240 of file graph.h.

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

Definition at line 238 of file graph.h.

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

Definition at line 239 of file graph.h.

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

Definition at line 233 of file graph.h.

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

Definition at line 236 of file graph.h.

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

Definition at line 237 of file graph.h.


Member Function Documentation

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

Definition at line 260 of file graph.h.

References digraph_node< NODE, EDGE >::add_pred(), and digraph_node< NODE, EDGE >::add_succ().

Here is the call graph for this function:

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

Definition at line 254 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 248 of file graph.h.

References digraph< NODE, EDGE >::node_set.

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 273 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_set_iter digraph< NODE, EDGE >::node_set_begin (  )  [inline]

Definition at line 245 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 246 of file graph.h.

References digraph< NODE, EDGE >::node_set.

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 311 of file graph.h.

References pred_edge_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 299 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 305 of file graph.h.

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

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 293 of file graph.h.

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

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

Member Data Documentation

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

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

Generated on Tue Nov 17 06:38:49 2009 for Open64 (mfef90, whirl2f, and IR tools) by  doxygen 1.6.1