Galois
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Pages
galois::graphs::LC_Adaptor_Graph< NodeTy, EdgeTy, DerivedTy, GraphNodeTy, IteratorTy, EdgeIteratorTy, HasNoLockable > Class Template Reference

#include <LC_Adaptor_Graph.h>

Inheritance diagram for galois::graphs::LC_Adaptor_Graph< NodeTy, EdgeTy, DerivedTy, GraphNodeTy, IteratorTy, EdgeIteratorTy, HasNoLockable >:

Classes

struct  with_no_lockable
 If true, do not use abstract locks in graph. More...
 

Public Types

typedef GraphNodeTy GraphNode
 
typedef EdgeTy edge_data_type
 
typedef NodeTy node_data_type
 
typedef internal::EdgeInfoBase
< void *, EdgeTy >::reference 
edge_data_reference
 
typedef internal::NodeInfoBase
< NodeTy, false >::reference 
node_data_reference
 
typedef EdgeIteratorTy edge_iterator
 
typedef IteratorTy iterator
 
typedef iterator const_iterator
 
typedef iterator local_iterator
 

Public Member Functions

node_data_reference getData (GraphNode N, MethodFlag mflag=MethodFlag::WRITE)
 
edge_data_reference getEdgeData (edge_iterator ni, MethodFlag GALOIS_UNUSED(mflag)=MethodFlag::UNPROTECTED)
 
GraphNode getEdgeDst (edge_iterator ni)
 
uint64_t size () const
 
uint64_t sizeEdges () const
 
iterator begin () const
 
iterator end () const
 
local_iterator local_begin ()
 
local_iterator local_end ()
 
edge_iterator edge_begin (GraphNode N, MethodFlag mflag=MethodFlag::WRITE)
 
edge_iterator edge_end (GraphNode N, MethodFlag mflag=MethodFlag::WRITE)
 
internal::EdgesIterator
< LC_Adaptor_Graph
out_edges (GraphNode N, MethodFlag mflag=MethodFlag::WRITE)
 

Protected Member Functions

template<bool _A1 = HasNoLockable>
void acquireNode (GraphNode N, MethodFlag mflag, typename std::enable_if<!_A1 >::type *=0)
 
template<bool _A1 = HasNoLockable>
void acquireNode (GraphNode, MethodFlag, typename std::enable_if< _A1 >::type *=0)
 
const DerivedTy & derived () const
 
DerivedTy & derived ()
 
size_t getId (GraphNode n)
 

Member Typedef Documentation

template<typename NodeTy , typename EdgeTy , typename DerivedTy , typename GraphNodeTy , typename IteratorTy , typename EdgeIteratorTy , bool HasNoLockable = false>
typedef iterator galois::graphs::LC_Adaptor_Graph< NodeTy, EdgeTy, DerivedTy, GraphNodeTy, IteratorTy, EdgeIteratorTy, HasNoLockable >::const_iterator
template<typename NodeTy , typename EdgeTy , typename DerivedTy , typename GraphNodeTy , typename IteratorTy , typename EdgeIteratorTy , bool HasNoLockable = false>
typedef internal::EdgeInfoBase<void*, EdgeTy>::reference galois::graphs::LC_Adaptor_Graph< NodeTy, EdgeTy, DerivedTy, GraphNodeTy, IteratorTy, EdgeIteratorTy, HasNoLockable >::edge_data_reference
template<typename NodeTy , typename EdgeTy , typename DerivedTy , typename GraphNodeTy , typename IteratorTy , typename EdgeIteratorTy , bool HasNoLockable = false>
typedef EdgeTy galois::graphs::LC_Adaptor_Graph< NodeTy, EdgeTy, DerivedTy, GraphNodeTy, IteratorTy, EdgeIteratorTy, HasNoLockable >::edge_data_type
template<typename NodeTy , typename EdgeTy , typename DerivedTy , typename GraphNodeTy , typename IteratorTy , typename EdgeIteratorTy , bool HasNoLockable = false>
typedef EdgeIteratorTy galois::graphs::LC_Adaptor_Graph< NodeTy, EdgeTy, DerivedTy, GraphNodeTy, IteratorTy, EdgeIteratorTy, HasNoLockable >::edge_iterator
template<typename NodeTy , typename EdgeTy , typename DerivedTy , typename GraphNodeTy , typename IteratorTy , typename EdgeIteratorTy , bool HasNoLockable = false>
typedef GraphNodeTy galois::graphs::LC_Adaptor_Graph< NodeTy, EdgeTy, DerivedTy, GraphNodeTy, IteratorTy, EdgeIteratorTy, HasNoLockable >::GraphNode
template<typename NodeTy , typename EdgeTy , typename DerivedTy , typename GraphNodeTy , typename IteratorTy , typename EdgeIteratorTy , bool HasNoLockable = false>
typedef IteratorTy galois::graphs::LC_Adaptor_Graph< NodeTy, EdgeTy, DerivedTy, GraphNodeTy, IteratorTy, EdgeIteratorTy, HasNoLockable >::iterator
template<typename NodeTy , typename EdgeTy , typename DerivedTy , typename GraphNodeTy , typename IteratorTy , typename EdgeIteratorTy , bool HasNoLockable = false>
typedef iterator galois::graphs::LC_Adaptor_Graph< NodeTy, EdgeTy, DerivedTy, GraphNodeTy, IteratorTy, EdgeIteratorTy, HasNoLockable >::local_iterator
template<typename NodeTy , typename EdgeTy , typename DerivedTy , typename GraphNodeTy , typename IteratorTy , typename EdgeIteratorTy , bool HasNoLockable = false>
typedef internal::NodeInfoBase<NodeTy, false>::reference galois::graphs::LC_Adaptor_Graph< NodeTy, EdgeTy, DerivedTy, GraphNodeTy, IteratorTy, EdgeIteratorTy, HasNoLockable >::node_data_reference
template<typename NodeTy , typename EdgeTy , typename DerivedTy , typename GraphNodeTy , typename IteratorTy , typename EdgeIteratorTy , bool HasNoLockable = false>
typedef NodeTy galois::graphs::LC_Adaptor_Graph< NodeTy, EdgeTy, DerivedTy, GraphNodeTy, IteratorTy, EdgeIteratorTy, HasNoLockable >::node_data_type

Member Function Documentation

template<typename NodeTy , typename EdgeTy , typename DerivedTy , typename GraphNodeTy , typename IteratorTy , typename EdgeIteratorTy , bool HasNoLockable = false>
template<bool _A1 = HasNoLockable>
void galois::graphs::LC_Adaptor_Graph< NodeTy, EdgeTy, DerivedTy, GraphNodeTy, IteratorTy, EdgeIteratorTy, HasNoLockable >::acquireNode ( GraphNode  N,
MethodFlag  mflag,
typename std::enable_if<!_A1 >::type *  = 0 
)
inlineprotected
template<typename NodeTy , typename EdgeTy , typename DerivedTy , typename GraphNodeTy , typename IteratorTy , typename EdgeIteratorTy , bool HasNoLockable = false>
template<bool _A1 = HasNoLockable>
void galois::graphs::LC_Adaptor_Graph< NodeTy, EdgeTy, DerivedTy, GraphNodeTy, IteratorTy, EdgeIteratorTy, HasNoLockable >::acquireNode ( GraphNode  ,
MethodFlag  ,
typename std::enable_if< _A1 >::type *  = 0 
)
inlineprotected
template<typename NodeTy , typename EdgeTy , typename DerivedTy , typename GraphNodeTy , typename IteratorTy , typename EdgeIteratorTy , bool HasNoLockable = false>
iterator galois::graphs::LC_Adaptor_Graph< NodeTy, EdgeTy, DerivedTy, GraphNodeTy, IteratorTy, EdgeIteratorTy, HasNoLockable >::begin ( ) const
inline
template<typename NodeTy , typename EdgeTy , typename DerivedTy , typename GraphNodeTy , typename IteratorTy , typename EdgeIteratorTy , bool HasNoLockable = false>
const DerivedTy& galois::graphs::LC_Adaptor_Graph< NodeTy, EdgeTy, DerivedTy, GraphNodeTy, IteratorTy, EdgeIteratorTy, HasNoLockable >::derived ( ) const
inlineprotected
template<typename NodeTy , typename EdgeTy , typename DerivedTy , typename GraphNodeTy , typename IteratorTy , typename EdgeIteratorTy , bool HasNoLockable = false>
DerivedTy& galois::graphs::LC_Adaptor_Graph< NodeTy, EdgeTy, DerivedTy, GraphNodeTy, IteratorTy, EdgeIteratorTy, HasNoLockable >::derived ( )
inlineprotected
template<typename NodeTy , typename EdgeTy , typename DerivedTy , typename GraphNodeTy , typename IteratorTy , typename EdgeIteratorTy , bool HasNoLockable = false>
edge_iterator galois::graphs::LC_Adaptor_Graph< NodeTy, EdgeTy, DerivedTy, GraphNodeTy, IteratorTy, EdgeIteratorTy, HasNoLockable >::edge_begin ( GraphNode  N,
MethodFlag  mflag = MethodFlag::WRITE 
)
inline
template<typename NodeTy , typename EdgeTy , typename DerivedTy , typename GraphNodeTy , typename IteratorTy , typename EdgeIteratorTy , bool HasNoLockable = false>
edge_iterator galois::graphs::LC_Adaptor_Graph< NodeTy, EdgeTy, DerivedTy, GraphNodeTy, IteratorTy, EdgeIteratorTy, HasNoLockable >::edge_end ( GraphNode  N,
MethodFlag  mflag = MethodFlag::WRITE 
)
inline
template<typename NodeTy , typename EdgeTy , typename DerivedTy , typename GraphNodeTy , typename IteratorTy , typename EdgeIteratorTy , bool HasNoLockable = false>
iterator galois::graphs::LC_Adaptor_Graph< NodeTy, EdgeTy, DerivedTy, GraphNodeTy, IteratorTy, EdgeIteratorTy, HasNoLockable >::end ( ) const
inline
template<typename NodeTy , typename EdgeTy , typename DerivedTy , typename GraphNodeTy , typename IteratorTy , typename EdgeIteratorTy , bool HasNoLockable = false>
node_data_reference galois::graphs::LC_Adaptor_Graph< NodeTy, EdgeTy, DerivedTy, GraphNodeTy, IteratorTy, EdgeIteratorTy, HasNoLockable >::getData ( GraphNode  N,
MethodFlag  mflag = MethodFlag::WRITE 
)
inline
template<typename NodeTy , typename EdgeTy , typename DerivedTy , typename GraphNodeTy , typename IteratorTy , typename EdgeIteratorTy , bool HasNoLockable = false>
edge_data_reference galois::graphs::LC_Adaptor_Graph< NodeTy, EdgeTy, DerivedTy, GraphNodeTy, IteratorTy, EdgeIteratorTy, HasNoLockable >::getEdgeData ( edge_iterator  ni,
MethodFlag   GALOIS_UNUSEDmflag = MethodFlag::UNPROTECTED 
)
inline
template<typename NodeTy , typename EdgeTy , typename DerivedTy , typename GraphNodeTy , typename IteratorTy , typename EdgeIteratorTy , bool HasNoLockable = false>
GraphNode galois::graphs::LC_Adaptor_Graph< NodeTy, EdgeTy, DerivedTy, GraphNodeTy, IteratorTy, EdgeIteratorTy, HasNoLockable >::getEdgeDst ( edge_iterator  ni)
inline
template<typename NodeTy , typename EdgeTy , typename DerivedTy , typename GraphNodeTy , typename IteratorTy , typename EdgeIteratorTy , bool HasNoLockable = false>
size_t galois::graphs::LC_Adaptor_Graph< NodeTy, EdgeTy, DerivedTy, GraphNodeTy, IteratorTy, EdgeIteratorTy, HasNoLockable >::getId ( GraphNode  n)
inlineprotected
template<typename NodeTy , typename EdgeTy , typename DerivedTy , typename GraphNodeTy , typename IteratorTy , typename EdgeIteratorTy , bool HasNoLockable = false>
local_iterator galois::graphs::LC_Adaptor_Graph< NodeTy, EdgeTy, DerivedTy, GraphNodeTy, IteratorTy, EdgeIteratorTy, HasNoLockable >::local_begin ( )
inline
template<typename NodeTy , typename EdgeTy , typename DerivedTy , typename GraphNodeTy , typename IteratorTy , typename EdgeIteratorTy , bool HasNoLockable = false>
local_iterator galois::graphs::LC_Adaptor_Graph< NodeTy, EdgeTy, DerivedTy, GraphNodeTy, IteratorTy, EdgeIteratorTy, HasNoLockable >::local_end ( )
inline
template<typename NodeTy , typename EdgeTy , typename DerivedTy , typename GraphNodeTy , typename IteratorTy , typename EdgeIteratorTy , bool HasNoLockable = false>
internal::EdgesIterator<LC_Adaptor_Graph> galois::graphs::LC_Adaptor_Graph< NodeTy, EdgeTy, DerivedTy, GraphNodeTy, IteratorTy, EdgeIteratorTy, HasNoLockable >::out_edges ( GraphNode  N,
MethodFlag  mflag = MethodFlag::WRITE 
)
inline
template<typename NodeTy , typename EdgeTy , typename DerivedTy , typename GraphNodeTy , typename IteratorTy , typename EdgeIteratorTy , bool HasNoLockable = false>
uint64_t galois::graphs::LC_Adaptor_Graph< NodeTy, EdgeTy, DerivedTy, GraphNodeTy, IteratorTy, EdgeIteratorTy, HasNoLockable >::size ( ) const
inline
template<typename NodeTy , typename EdgeTy , typename DerivedTy , typename GraphNodeTy , typename IteratorTy , typename EdgeIteratorTy , bool HasNoLockable = false>
uint64_t galois::graphs::LC_Adaptor_Graph< NodeTy, EdgeTy, DerivedTy, GraphNodeTy, IteratorTy, EdgeIteratorTy, HasNoLockable >::sizeEdges ( ) const
inline

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