Galois
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Pages
galois::graphs::LC_InOut_Graph< GraphTy > Class Template Reference

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

#include <LC_InOut_Graph.h>

Inheritance diagram for galois::graphs::LC_InOut_Graph< GraphTy >:

Classes

class  in_edge_iterator
 
struct  with_edge_data
 
struct  with_node_data
 

Public Types

typedef Super out_graph_type
 
typedef InGraph in_graph_type
 
typedef Super::GraphNode GraphNode
 
typedef Super::file_edge_data_type file_edge_data_type
 
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 GALOIS_UNUSED(mflag)=MethodFlag::UNPROTECTED)
 
GraphNode getInEdgeDst (in_edge_iterator ni)
 
in_edge_iterator in_edge_begin (GraphNode N, MethodFlag mflag=MethodFlag::WRITE)
 
in_edge_iterator in_edge_end (GraphNode N, MethodFlag mflag=MethodFlag::WRITE)
 
internal::InEdgesIterator
< LC_InOut_Graph
in_edges (GraphNode N, MethodFlag mflag=MethodFlag::WRITE)
 
template<typename CompTy >
void sortInEdgesByEdgeData (GraphNode N, const CompTy &comp=std::less< typename GraphTy::edge_data_type >(), MethodFlag mflag=MethodFlag::WRITE)
 Sorts incoming edges of a node. More...
 
template<typename CompTy >
void sortInEdges (GraphNode N, const CompTy &comp, MethodFlag mflag=MethodFlag::WRITE)
 Sorts incoming edges of a node. More...
 
void sortInEdgesByDst (GraphNode N, MethodFlag mflag=MethodFlag::WRITE)
 Sorts incoming edges of a node. More...
 
void sortAllInEdgesByDst (MethodFlag mflag=MethodFlag::WRITE)
 Sorts incoming edges of all nodes. More...
 
size_t idFromNode (GraphNode N)
 
GraphNode nodeFromId (size_t N)
 

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::graphs::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::graphs::LC_InOut_Graph< GraphTy >::const_iterator
template<typename GraphTy >
typedef Super::const_local_iterator galois::graphs::LC_InOut_Graph< GraphTy >::const_local_iterator
template<typename GraphTy >
typedef Super::edge_data_reference galois::graphs::LC_InOut_Graph< GraphTy >::edge_data_reference
template<typename GraphTy >
typedef Super::edge_data_type galois::graphs::LC_InOut_Graph< GraphTy >::edge_data_type
template<typename GraphTy >
typedef Super::edge_iterator galois::graphs::LC_InOut_Graph< GraphTy >::edge_iterator
template<typename GraphTy >
typedef Super::file_edge_data_type galois::graphs::LC_InOut_Graph< GraphTy >::file_edge_data_type
template<typename GraphTy >
typedef Super::GraphNode galois::graphs::LC_InOut_Graph< GraphTy >::GraphNode
template<typename GraphTy >
typedef InGraph galois::graphs::LC_InOut_Graph< GraphTy >::in_graph_type
template<typename GraphTy >
typedef Super::iterator galois::graphs::LC_InOut_Graph< GraphTy >::iterator
template<typename GraphTy >
typedef Super::local_iterator galois::graphs::LC_InOut_Graph< GraphTy >::local_iterator
template<typename GraphTy >
typedef Super::node_data_reference galois::graphs::LC_InOut_Graph< GraphTy >::node_data_reference
template<typename GraphTy >
typedef Super::node_data_type galois::graphs::LC_InOut_Graph< GraphTy >::node_data_type
template<typename GraphTy >
typedef Super galois::graphs::LC_InOut_Graph< GraphTy >::out_graph_type
template<typename GraphTy >
typedef read_lc_inout_graph_tag galois::graphs::LC_InOut_Graph< GraphTy >::read_tag

Constructor & Destructor Documentation

template<typename GraphTy >
galois::graphs::LC_InOut_Graph< GraphTy >::LC_InOut_Graph ( )
inline

Member Function Documentation

template<typename GraphTy >
edge_data_reference galois::graphs::LC_InOut_Graph< GraphTy >::getInEdgeData ( in_edge_iterator  ni,
MethodFlag   GALOIS_UNUSEDmflag = MethodFlag::UNPROTECTED 
)
inline
template<typename GraphTy >
GraphNode galois::graphs::LC_InOut_Graph< GraphTy >::getInEdgeDst ( in_edge_iterator  ni)
inline
template<typename GraphTy >
size_t galois::graphs::LC_InOut_Graph< GraphTy >::idFromNode ( GraphNode  N)
inline
template<typename GraphTy >
in_edge_iterator galois::graphs::LC_InOut_Graph< GraphTy >::in_edge_begin ( GraphNode  N,
MethodFlag  mflag = MethodFlag::WRITE 
)
inline
template<typename GraphTy >
in_edge_iterator galois::graphs::LC_InOut_Graph< GraphTy >::in_edge_end ( GraphNode  N,
MethodFlag  mflag = MethodFlag::WRITE 
)
inline
template<typename GraphTy >
internal::InEdgesIterator<LC_InOut_Graph> galois::graphs::LC_InOut_Graph< GraphTy >::in_edges ( GraphNode  N,
MethodFlag  mflag = MethodFlag::WRITE 
)
inline
template<typename GraphTy >
GraphNode galois::graphs::LC_InOut_Graph< GraphTy >::nodeFromId ( size_t  N)
inline
template<typename GraphTy >
void galois::graphs::LC_InOut_Graph< GraphTy >::sortAllInEdgesByDst ( MethodFlag  mflag = MethodFlag::WRITE)
inline

Sorts incoming edges of all nodes.

Comparison is by getInEdgeDst(e).

template<typename GraphTy >
template<typename CompTy >
void galois::graphs::LC_InOut_Graph< GraphTy >::sortInEdges ( GraphNode  N,
const CompTy &  comp,
MethodFlag  mflag = MethodFlag::WRITE 
)
inline

Sorts incoming edges of a node.

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

template<typename GraphTy >
void galois::graphs::LC_InOut_Graph< GraphTy >::sortInEdgesByDst ( GraphNode  N,
MethodFlag  mflag = MethodFlag::WRITE 
)
inline

Sorts incoming edges of a node.

Comparison is by getInEdgeDst(e).

template<typename GraphTy >
template<typename CompTy >
void galois::graphs::LC_InOut_Graph< GraphTy >::sortInEdgesByEdgeData ( GraphNode  N,
const CompTy &  comp = std::less<typename GraphTy::edge_data_type>(),
MethodFlag  mflag = MethodFlag::WRITE 
)
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

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