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: