Galois::Graph::LC_Linear_Graph< NodeTy, EdgeTy, HasNoLockable, UseNumaAlloc, HasOutOfLineLockable, HasId > Class Template Reference
Local computation graph (i.e., graph structure does not change).
More...
#include <LC_Linear_Graph.h>
List of all members.
Classes |
class | NodeInfo |
struct | with_id |
struct | with_no_lockable |
struct | with_node_data |
struct | with_numa_alloc |
struct | with_out_of_line_lockable |
Public Types |
typedef read_with_aux_graph_tag | read_tag |
typedef NodeInfo * | GraphNode |
typedef EdgeTy | edge_data_type |
typedef NodeTy | node_data_type |
typedef NodeInfoTypes::reference | node_data_reference |
typedef EdgeInfo::reference | edge_data_reference |
typedef EdgeInfo * | edge_iterator |
typedef NodeInfo ** | iterator |
typedef NodeInfo *const * | const_iterator |
typedef iterator | local_iterator |
typedef const_iterator | const_local_iterator |
typedef int | ReadGraphAuxData |
Public Member Functions |
| ~LC_Linear_Graph () |
node_data_reference | getData (GraphNode N, MethodFlag mflag=MethodFlag::ALL) |
edge_data_reference | getEdgeData (edge_iterator ni, MethodFlag mflag=MethodFlag::NONE) const |
GraphNode | getEdgeDst (edge_iterator ni) const |
uint64_t | size () const |
uint64_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::ALL) |
edge_iterator | edge_end (GraphNode N, MethodFlag mflag=MethodFlag::ALL) |
detail::EdgesIterator
< LC_Linear_Graph > | out_edges (GraphNode N, MethodFlag mflag=MethodFlag::ALL) |
template<typename CompTy > |
void | sortEdgesByEdgeData (GraphNode N, const CompTy &comp=std::less< EdgeTy >(), MethodFlag mflag=MethodFlag::ALL) |
| Sorts outgoing edges of a node.
|
template<typename CompTy > |
void | sortEdges (GraphNode N, const CompTy &comp, MethodFlag mflag=MethodFlag::ALL) |
| Sorts outgoing edges of a node.
|
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 &) |
Protected Types |
typedef detail::EdgeInfoBase
< NodeInfo *, EdgeTy > | EdgeInfo |
typedef LargeArray< NodeInfo * > | Nodes |
typedef
detail::NodeInfoBaseTypes
< NodeTy,!HasNoLockable
&&!HasOutOfLineLockable > | NodeInfoTypes |
Protected Member Functions |
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 N, MethodFlag mflag, typename std::enable_if< _A2 >::type *=0) |
edge_iterator | raw_begin (GraphNode N) |
edge_iterator | raw_end (GraphNode N) |
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) |
Protected Attributes |
LargeArray< char > | data |
uint64_t | numNodes |
uint64_t | numEdges |
Nodes | nodes |
Friends |
class | LC_InOut_Graph |
Detailed Description
template<typename NodeTy, typename EdgeTy, bool HasNoLockable = false, bool UseNumaAlloc = false, bool HasOutOfLineLockable = false, bool HasId = false>
class Galois::Graph::LC_Linear_Graph< NodeTy, EdgeTy, HasNoLockable, UseNumaAlloc, HasOutOfLineLockable, HasId >
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.
Member Typedef Documentation
template<typename NodeTy , typename EdgeTy , bool HasNoLockable = false, bool UseNumaAlloc = false, bool HasOutOfLineLockable = false, bool HasId = false>
template<typename NodeTy , typename EdgeTy , bool HasNoLockable = false, bool UseNumaAlloc = false, bool HasOutOfLineLockable = false, bool HasId = false>
template<typename NodeTy , typename EdgeTy , bool HasNoLockable = false, bool UseNumaAlloc = false, bool HasOutOfLineLockable = false, bool HasId = false>
template<typename NodeTy , typename EdgeTy , bool HasNoLockable = false, bool UseNumaAlloc = false, bool HasOutOfLineLockable = false, bool HasId = false>
template<typename NodeTy , typename EdgeTy , bool HasNoLockable = false, bool UseNumaAlloc = false, bool HasOutOfLineLockable = false, bool HasId = false>
template<typename NodeTy , typename EdgeTy , bool HasNoLockable = false, bool UseNumaAlloc = false, bool HasOutOfLineLockable = false, bool HasId = false>
template<typename NodeTy , typename EdgeTy , bool HasNoLockable = false, bool UseNumaAlloc = false, bool HasOutOfLineLockable = false, bool HasId = false>
template<typename NodeTy , typename EdgeTy , bool HasNoLockable = false, bool UseNumaAlloc = false, bool HasOutOfLineLockable = false, bool HasId = false>
template<typename NodeTy , typename EdgeTy , bool HasNoLockable = false, bool UseNumaAlloc = false, bool HasOutOfLineLockable = false, bool HasId = false>
template<typename NodeTy , typename EdgeTy , bool HasNoLockable = false, bool UseNumaAlloc = false, bool HasOutOfLineLockable = false, bool HasId = false>
template<typename NodeTy , typename EdgeTy , bool HasNoLockable = false, bool UseNumaAlloc = false, bool HasOutOfLineLockable = false, bool HasId = false>
template<typename NodeTy , typename EdgeTy , bool HasNoLockable = false, bool UseNumaAlloc = false, bool HasOutOfLineLockable = false, bool HasId = false>
template<typename NodeTy , typename EdgeTy , bool HasNoLockable = false, bool UseNumaAlloc = false, bool HasOutOfLineLockable = false, bool HasId = false>
template<typename NodeTy , typename EdgeTy , bool HasNoLockable = false, bool UseNumaAlloc = false, bool HasOutOfLineLockable = false, bool HasId = false>
template<typename NodeTy , typename EdgeTy , bool HasNoLockable = false, bool UseNumaAlloc = false, bool HasOutOfLineLockable = false, bool HasId = false>
Constructor & Destructor Documentation
template<typename NodeTy , typename EdgeTy , bool HasNoLockable = false, bool UseNumaAlloc = false, bool HasOutOfLineLockable = false, bool HasId = false>
Member Function Documentation
template<typename NodeTy , typename EdgeTy , bool HasNoLockable = false, bool UseNumaAlloc = false, bool HasOutOfLineLockable = false, bool HasId = false>
template<bool _A1 = HasOutOfLineLockable, bool _A2 = HasNoLockable>
template<typename NodeTy , typename EdgeTy , bool HasNoLockable = false, bool UseNumaAlloc = false, bool HasOutOfLineLockable = false, bool HasId = false>
template<bool _A1 = HasOutOfLineLockable, bool _A2 = HasNoLockable>
template<typename NodeTy , typename EdgeTy , bool HasNoLockable = false, bool UseNumaAlloc = false, bool HasOutOfLineLockable = false, bool HasId = false>
template<bool _A1 = HasNoLockable, bool _A2 = HasOutOfLineLockable>
template<typename NodeTy , typename EdgeTy , bool HasNoLockable = false, bool UseNumaAlloc = false, bool HasOutOfLineLockable = false, bool HasId = false>
template<typename NodeTy , typename EdgeTy , bool HasNoLockable = false, bool UseNumaAlloc = false, bool HasOutOfLineLockable = false, bool HasId = false>
template<typename NodeTy , typename EdgeTy , bool HasNoLockable = false, bool UseNumaAlloc = false, bool HasOutOfLineLockable = false, bool HasId = false>
template<typename NodeTy , typename EdgeTy , bool HasNoLockable = false, bool UseNumaAlloc = false, bool HasOutOfLineLockable = false, bool HasId = false>
template<typename NodeTy , typename EdgeTy , bool HasNoLockable = false, bool UseNumaAlloc = false, bool HasOutOfLineLockable = false, bool HasId = false>
template<typename NodeTy , typename EdgeTy , bool HasNoLockable = false, bool UseNumaAlloc = false, bool HasOutOfLineLockable = false, bool HasId = false>
template<typename NodeTy , typename EdgeTy , bool HasNoLockable = false, bool UseNumaAlloc = false, bool HasOutOfLineLockable = false, bool HasId = false>
template<typename NodeTy , typename EdgeTy , bool HasNoLockable = false, bool UseNumaAlloc = false, bool HasOutOfLineLockable = false, bool HasId = false>
template<typename NodeTy , typename EdgeTy , bool HasNoLockable = false, bool UseNumaAlloc = false, bool HasOutOfLineLockable = false, bool HasId = false>
template<typename NodeTy , typename EdgeTy , bool HasNoLockable = false, bool UseNumaAlloc = false, bool HasOutOfLineLockable = false, bool HasId = false>
template<typename NodeTy , typename EdgeTy , bool HasNoLockable = false, bool UseNumaAlloc = false, bool HasOutOfLineLockable = false, bool HasId = false>
template<typename NodeTy , typename EdgeTy , bool HasNoLockable = false, bool UseNumaAlloc = false, bool HasOutOfLineLockable = false, bool HasId = false>
template<typename NodeTy , typename EdgeTy , bool HasNoLockable = false, bool UseNumaAlloc = false, bool HasOutOfLineLockable = false, bool HasId = false>
template<bool _Enable = HasId>
template<typename NodeTy , typename EdgeTy , bool HasNoLockable = false, bool UseNumaAlloc = false, bool HasOutOfLineLockable = false, bool HasId = false>
template<bool _Enable = HasId>
template<typename NodeTy , typename EdgeTy , bool HasNoLockable = false, bool UseNumaAlloc = false, bool HasOutOfLineLockable = false, bool HasId = false>
template<typename NodeTy , typename EdgeTy , bool HasNoLockable = false, bool UseNumaAlloc = false, bool HasOutOfLineLockable = false, bool HasId = false>
template<typename NodeTy , typename EdgeTy , bool HasNoLockable = false, bool UseNumaAlloc = false, bool HasOutOfLineLockable = false, bool HasId = false>
template<typename NodeTy , typename EdgeTy , bool HasNoLockable = false, bool UseNumaAlloc = false, bool HasOutOfLineLockable = false, bool HasId = false>
template<typename NodeTy , typename EdgeTy , bool HasNoLockable = false, bool UseNumaAlloc = false, bool HasOutOfLineLockable = false, bool HasId = false>
template<typename NodeTy , typename EdgeTy , bool HasNoLockable = false, bool UseNumaAlloc = false, bool HasOutOfLineLockable = false, bool HasId = false>
template<typename NodeTy , typename EdgeTy , bool HasNoLockable = false, bool UseNumaAlloc = false, bool HasOutOfLineLockable = false, bool HasId = false>
template<typename NodeTy , typename EdgeTy , bool HasNoLockable = false, bool UseNumaAlloc = false, bool HasOutOfLineLockable = false, bool HasId = false>
template<typename NodeTy , typename EdgeTy , bool HasNoLockable = false, bool UseNumaAlloc = false, bool HasOutOfLineLockable = false, bool HasId = false>
template<typename NodeTy , typename EdgeTy , bool HasNoLockable = false, bool UseNumaAlloc = false, bool HasOutOfLineLockable = false, bool HasId = false>
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>
template<typename CompTy >
Sorts outgoing edges of a node.
Comparison function is over EdgeTy.
Friends And Related Function Documentation
template<typename NodeTy , typename EdgeTy , bool HasNoLockable = false, bool UseNumaAlloc = false, bool HasOutOfLineLockable = false, bool HasId = false>
Member Data Documentation
template<typename NodeTy , typename EdgeTy , bool HasNoLockable = false, bool UseNumaAlloc = false, bool HasOutOfLineLockable = false, bool HasId = false>
template<typename NodeTy , typename EdgeTy , bool HasNoLockable = false, bool UseNumaAlloc = false, bool HasOutOfLineLockable = false, bool HasId = false>
template<typename NodeTy , typename EdgeTy , bool HasNoLockable = false, bool UseNumaAlloc = false, bool HasOutOfLineLockable = false, bool HasId = false>
template<typename NodeTy , typename EdgeTy , bool HasNoLockable = false, bool UseNumaAlloc = false, bool HasOutOfLineLockable = false, bool HasId = false>
The documentation for this class was generated from the following file: