|
| ~LC_Linear_Graph () |
|
node_data_reference | getData (GraphNode N, MethodFlag mflag=MethodFlag::WRITE) |
|
edge_data_reference | getEdgeData (edge_iterator ni, MethodFlag GALOIS_UNUSED(mflag)=MethodFlag::UNPROTECTED) const |
|
GraphNode | getEdgeDst (edge_iterator ni) const |
|
size_t | size () const |
|
size_t | sizeEdges () const |
|
iterator | begin () |
|
iterator | end () |
|
const_iterator | begin () const |
|
const_iterator | end () const |
|
local_iterator | local_begin () |
|
local_iterator | local_end () |
|
const_local_iterator | local_begin () const |
|
const_local_iterator | local_end () const |
|
edge_iterator | edge_begin (GraphNode N, MethodFlag mflag=MethodFlag::WRITE) |
|
edge_iterator | edge_end (GraphNode N, MethodFlag mflag=MethodFlag::WRITE) |
|
runtime::iterable
< NoDerefIterator
< edge_iterator > > | edges (GraphNode N, MethodFlag mflag=MethodFlag::WRITE) |
|
runtime::iterable
< NoDerefIterator
< edge_iterator > > | out_edges (GraphNode N, MethodFlag mflag=MethodFlag::WRITE) |
|
template<typename CompTy > |
void | sortEdgesByEdgeData (GraphNode N, const CompTy &comp=std::less< EdgeTy >(), MethodFlag mflag=MethodFlag::WRITE) |
| Sorts outgoing edges of a node. More...
|
|
template<typename CompTy > |
void | sortEdges (GraphNode N, const CompTy &comp, MethodFlag mflag=MethodFlag::WRITE) |
| Sorts outgoing edges of a node. More...
|
|
void | allocateFrom (FileGraph &graph, const ReadGraphAuxData &) |
|
void | constructNodesFrom (FileGraph &graph, unsigned tid, unsigned total, const ReadGraphAuxData &) |
|
void | constructEdgesFrom (FileGraph &graph, unsigned tid, unsigned total, const ReadGraphAuxData &) |
|
|
template<bool _A1 = HasNoLockable, bool _A2 = HasOutOfLineLockable> |
void | acquireNode (GraphNode N, MethodFlag mflag, typename std::enable_if<!_A1 &&!_A2 >::type *=0) |
|
template<bool _A1 = HasOutOfLineLockable, bool _A2 = HasNoLockable> |
void | acquireNode (GraphNode N, MethodFlag mflag, typename std::enable_if< _A1 &&!_A2 >::type *=0) |
|
template<bool _A1 = HasOutOfLineLockable, bool _A2 = HasNoLockable> |
void | acquireNode (GraphNode, MethodFlag, typename std::enable_if< _A2 >::type *=0) |
|
edge_iterator | raw_begin (GraphNode N) |
|
edge_iterator | raw_end (GraphNode N) |
|
template<bool _A1 = EdgeInfo::has_value, bool _A2 = LargeArray<FileEdgeTy>::has_value> |
void | constructEdgeValue (FileGraph &graph, typename FileGraph::edge_iterator nn, EdgeInfo *edge, typename std::enable_if<!_A1||_A2 >::type *=0) |
|
template<bool _A1 = EdgeInfo::has_value, bool _A2 = LargeArray<FileEdgeTy>::has_value> |
void | constructEdgeValue (FileGraph &, typename FileGraph::edge_iterator, EdgeInfo *edge, typename std::enable_if< _A1 &&!_A2 >::type *=0) |
|
template<bool _Enable = HasId> |
size_t | getId (GraphNode N, typename std::enable_if< _Enable >::type *=0) |
|
template<bool _Enable = HasId> |
GraphNode | getNode (size_t n, typename std::enable_if< _Enable >::type *=0) |
|
template<typename NodeTy, typename EdgeTy, bool HasNoLockable = false, bool UseNumaAlloc = false, bool HasOutOfLineLockable = false, bool HasId = false, typename FileEdgeTy = EdgeTy>
class galois::graphs::LC_Linear_Graph< NodeTy, EdgeTy, HasNoLockable, UseNumaAlloc, HasOutOfLineLockable, HasId, FileEdgeTy >
Local computation graph (i.e., graph structure does not change).
The data representation is a modification of LC_CSR_Graph where the edge data and node data is stored inline with the adjacency information.
The position of template parameters may change between Galois releases; the most robust way to specify them is through the with_XXX nested templates.
- Examples:
- lonestar/tutorial_examples/SSSPPushSimple.cpp.
template<typename NodeTy , typename EdgeTy , bool HasNoLockable = false, bool UseNumaAlloc = false, bool HasOutOfLineLockable = false, bool HasId = false, typename FileEdgeTy = EdgeTy>
template<bool _A1 = HasNoLockable, bool _A2 = HasOutOfLineLockable>
template<typename NodeTy , typename EdgeTy , bool HasNoLockable = false, bool UseNumaAlloc = false, bool HasOutOfLineLockable = false, bool HasId = false, typename FileEdgeTy = EdgeTy>
template<bool _A1 = HasOutOfLineLockable, bool _A2 = HasNoLockable>
template<typename NodeTy , typename EdgeTy , bool HasNoLockable = false, bool UseNumaAlloc = false, bool HasOutOfLineLockable = false, bool HasId = false, typename FileEdgeTy = EdgeTy>
template<bool _A1 = HasOutOfLineLockable, bool _A2 = HasNoLockable>
template<typename NodeTy , typename EdgeTy , bool HasNoLockable = false, bool UseNumaAlloc = false, bool HasOutOfLineLockable = false, bool HasId = false, typename FileEdgeTy = EdgeTy>
template<bool _A1 = EdgeInfo::has_value, bool _A2 = LargeArray<FileEdgeTy>::has_value>
template<typename NodeTy , typename EdgeTy , bool HasNoLockable = false, bool UseNumaAlloc = false, bool HasOutOfLineLockable = false, bool HasId = false, typename FileEdgeTy = EdgeTy>
template<bool _A1 = EdgeInfo::has_value, bool _A2 = LargeArray<FileEdgeTy>::has_value>
template<typename NodeTy , typename EdgeTy , bool HasNoLockable = false, bool UseNumaAlloc = false, bool HasOutOfLineLockable = false, bool HasId = false, typename FileEdgeTy = EdgeTy>
template<bool _Enable = HasId>
template<typename NodeTy , typename EdgeTy , bool HasNoLockable = false, bool UseNumaAlloc = false, bool HasOutOfLineLockable = false, bool HasId = false, typename FileEdgeTy = EdgeTy>
template<bool _Enable = HasId>
template<typename NodeTy , typename EdgeTy , bool HasNoLockable = false, bool UseNumaAlloc = false, bool HasOutOfLineLockable = false, bool HasId = false, typename FileEdgeTy = EdgeTy>
template<typename CompTy >
Sorts outgoing edges of a node.
Comparison function is over EdgeSortValue<EdgeTy>
.
template<typename NodeTy , typename EdgeTy , bool HasNoLockable = false, bool UseNumaAlloc = false, bool HasOutOfLineLockable = false, bool HasId = false, typename FileEdgeTy = EdgeTy>
template<typename CompTy >
Sorts outgoing edges of a node.
Comparison function is over EdgeTy.
template<typename NodeTy , typename EdgeTy , bool HasNoLockable = false, bool UseNumaAlloc = false, bool HasOutOfLineLockable = false, bool HasId = false, typename FileEdgeTy = EdgeTy>
template<typename Graph >