Galois::Graph::LC_InOut_Graph< GraphTy > Class Template Reference

Modify a LC_Graph to have in and out edges. More...

#include <LC_InOut_Graph.h>

List of all members.

Classes

class  in_edge_iterator

Public Types

typedef Super out_graph_type
typedef InGraph in_graph_type
typedef Super::GraphNode GraphNode
typedef Super::edge_data_type edge_data_type
typedef Super::node_data_type node_data_type
typedef Super::edge_data_reference edge_data_reference
typedef Super::node_data_reference node_data_reference
typedef Super::edge_iterator edge_iterator
typedef Super::iterator iterator
typedef Super::const_iterator const_iterator
typedef Super::local_iterator local_iterator
typedef Super::const_local_iterator const_local_iterator
typedef read_lc_inout_graph_tag read_tag

Public Member Functions

 LC_InOut_Graph ()
edge_data_reference getInEdgeData (in_edge_iterator ni, MethodFlag mflag=MethodFlag::NONE)
GraphNode getInEdgeDst (in_edge_iterator ni)
in_edge_iterator in_edge_begin (GraphNode N, MethodFlag mflag=MethodFlag::ALL)
in_edge_iterator in_edge_end (GraphNode N, MethodFlag mflag=MethodFlag::ALL)
detail::InEdgesIterator
< LC_InOut_Graph
in_edges (GraphNode N, MethodFlag mflag=MethodFlag::ALL)
template<typename CompTy >
void sortInEdgesByEdgeData (GraphNode N, const CompTy &comp=std::less< typename GraphTy::edge_data_type >(), MethodFlag mflag=MethodFlag::ALL)
 Sorts incoming edges of a node.
template<typename CompTy >
void sortInEdges (GraphNode N, const CompTy &comp, MethodFlag mflag=MethodFlag::ALL)
 Sorts incoming edges of a node.
size_t idFromNode (GraphNode N)
GraphNode nodeFromId (size_t N)

Private Types

typedef GraphTy::template
with_id< true >::type 
Super
typedef GraphTy::template
with_id< true >
::type::template
with_node_data< void >
::type::template
with_no_lockable< true >::type 
InGraph

Private Member Functions

InGraph::GraphNode inGraphNode (typename Super::GraphNode n)
void createAsymmetric ()

Private Attributes

InGraph inGraph
bool asymmetric

Friends

template<typename G >
void readGraphDispatch (G &, read_lc_inout_graph_tag, const std::string &, const std::string &)

Detailed Description

template<typename GraphTy>
class Galois::Graph::LC_InOut_Graph< GraphTy >

Modify a LC_Graph to have in and out edges.

In edges are stored by value, so modifying them does not modify the corresponding out edge.


Member Typedef Documentation

template<typename GraphTy >
typedef Super::const_iterator Galois::Graph::LC_InOut_Graph< GraphTy >::const_iterator
template<typename GraphTy >
typedef Super::const_local_iterator Galois::Graph::LC_InOut_Graph< GraphTy >::const_local_iterator
template<typename GraphTy >
typedef Super::edge_data_reference Galois::Graph::LC_InOut_Graph< GraphTy >::edge_data_reference
template<typename GraphTy >
typedef Super::edge_data_type Galois::Graph::LC_InOut_Graph< GraphTy >::edge_data_type
template<typename GraphTy >
typedef Super::edge_iterator Galois::Graph::LC_InOut_Graph< GraphTy >::edge_iterator
template<typename GraphTy >
typedef Super::GraphNode Galois::Graph::LC_InOut_Graph< GraphTy >::GraphNode
template<typename GraphTy >
typedef InGraph Galois::Graph::LC_InOut_Graph< GraphTy >::in_graph_type
template<typename GraphTy >
typedef GraphTy ::template with_id<true>::type ::template with_node_data<void>::type ::template with_no_lockable<true>::type Galois::Graph::LC_InOut_Graph< GraphTy >::InGraph [private]
template<typename GraphTy >
typedef Super::iterator Galois::Graph::LC_InOut_Graph< GraphTy >::iterator
template<typename GraphTy >
typedef Super::local_iterator Galois::Graph::LC_InOut_Graph< GraphTy >::local_iterator
template<typename GraphTy >
typedef Super::node_data_reference Galois::Graph::LC_InOut_Graph< GraphTy >::node_data_reference
template<typename GraphTy >
typedef Super::node_data_type Galois::Graph::LC_InOut_Graph< GraphTy >::node_data_type
template<typename GraphTy >
typedef Super Galois::Graph::LC_InOut_Graph< GraphTy >::out_graph_type
template<typename GraphTy >
typedef read_lc_inout_graph_tag Galois::Graph::LC_InOut_Graph< GraphTy >::read_tag
template<typename GraphTy >
typedef GraphTy ::template with_id<true>::type Galois::Graph::LC_InOut_Graph< GraphTy >::Super [private]

Constructor & Destructor Documentation

template<typename GraphTy >
Galois::Graph::LC_InOut_Graph< GraphTy >::LC_InOut_Graph (  )  [inline]

Member Function Documentation

template<typename GraphTy >
void Galois::Graph::LC_InOut_Graph< GraphTy >::createAsymmetric (  )  [inline, private]
template<typename GraphTy >
edge_data_reference Galois::Graph::LC_InOut_Graph< GraphTy >::getInEdgeData ( in_edge_iterator  ni,
MethodFlag  mflag = MethodFlag::NONE 
) [inline]
template<typename GraphTy >
GraphNode Galois::Graph::LC_InOut_Graph< GraphTy >::getInEdgeDst ( in_edge_iterator  ni  )  [inline]
template<typename GraphTy >
size_t Galois::Graph::LC_InOut_Graph< GraphTy >::idFromNode ( GraphNode  N  )  [inline]
template<typename GraphTy >
in_edge_iterator Galois::Graph::LC_InOut_Graph< GraphTy >::in_edge_begin ( GraphNode  N,
MethodFlag  mflag = MethodFlag::ALL 
) [inline]
template<typename GraphTy >
in_edge_iterator Galois::Graph::LC_InOut_Graph< GraphTy >::in_edge_end ( GraphNode  N,
MethodFlag  mflag = MethodFlag::ALL 
) [inline]
template<typename GraphTy >
detail::InEdgesIterator<LC_InOut_Graph> Galois::Graph::LC_InOut_Graph< GraphTy >::in_edges ( GraphNode  N,
MethodFlag  mflag = MethodFlag::ALL 
) [inline]
template<typename GraphTy >
InGraph::GraphNode Galois::Graph::LC_InOut_Graph< GraphTy >::inGraphNode ( typename Super::GraphNode  n  )  [inline, private]
template<typename GraphTy >
GraphNode Galois::Graph::LC_InOut_Graph< GraphTy >::nodeFromId ( size_t  N  )  [inline]
template<typename GraphTy >
template<typename CompTy >
void Galois::Graph::LC_InOut_Graph< GraphTy >::sortInEdges ( GraphNode  N,
const CompTy &  comp,
MethodFlag  mflag = MethodFlag::ALL 
) [inline]

Sorts incoming edges of a node.

Comparison function is over EdgeSortValue<GraphTy::edge_data_type>.

template<typename GraphTy >
template<typename CompTy >
void Galois::Graph::LC_InOut_Graph< GraphTy >::sortInEdgesByEdgeData ( GraphNode  N,
const CompTy &  comp = std::less<typename GraphTy::edge_data_type>(),
MethodFlag  mflag = MethodFlag::ALL 
) [inline]

Sorts incoming edges of a node.

Comparison function is over Graph::edge_data_type.


Friends And Related Function Documentation

template<typename GraphTy >
template<typename G >
void readGraphDispatch ( G &  ,
read_lc_inout_graph_tag  ,
const std::string &  ,
const std::string &   
) [friend]

Member Data Documentation

template<typename GraphTy >
bool Galois::Graph::LC_InOut_Graph< GraphTy >::asymmetric [private]
template<typename GraphTy >
InGraph Galois::Graph::LC_InOut_Graph< GraphTy >::inGraph [private]

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

Generated on 2 Nov 2013 for Galois by  doxygen 1.6.1