Galois::GraphLab::SyncEngine< Graph, Operator > Class Template Reference

#include <GraphLabExecutor.h>

List of all members.

Classes

struct  Gather
struct  Initialize
struct  Scatter

Public Member Functions

 SyncEngine (Graph &g, Operator op)
void signal (GNode node, const message_type &msg)
void execute ()

Private Types

typedef Operator::message_type message_type
typedef Operator::gather_type gather_type
typedef Graph::GraphNode GNode
typedef Graph::in_edge_iterator in_edge_iterator
typedef Graph::edge_iterator edge_iterator
typedef
Galois::WorkList::dChunkedFIFO< 256 > 
WL
typedef std::pair< int,
message_type
Message
typedef std::deque< MessageMyMessages
typedef
Galois::Runtime::PerPackageStorage
< MyMessages
Messages

Private Member Functions

template<bool IsFirst, typename Container1 , typename Container2 >
void executeStep (Container1 &cur, Container2 &next)

Private Attributes

Graph & graph
Operator origOp
Galois::LargeArray< Operator > ops
Messages messages
Galois::LargeArray< int > scoreboard
Galois::InsertBag< GNodewls [2]
Galois::Runtime::LL::SimpleLock
< true > 
lock

Static Private Attributes

static const bool NeedMessages = !std::is_same<EmptyMessage,message_type>::value

template<typename Graph, typename Operator>
class Galois::GraphLab::SyncEngine< Graph, Operator >


Member Typedef Documentation

template<typename Graph , typename Operator >
typedef Graph::edge_iterator Galois::GraphLab::SyncEngine< Graph, Operator >::edge_iterator [private]
template<typename Graph , typename Operator >
typedef Operator::gather_type Galois::GraphLab::SyncEngine< Graph, Operator >::gather_type [private]
template<typename Graph , typename Operator >
typedef Graph::GraphNode Galois::GraphLab::SyncEngine< Graph, Operator >::GNode [private]
template<typename Graph , typename Operator >
typedef Graph::in_edge_iterator Galois::GraphLab::SyncEngine< Graph, Operator >::in_edge_iterator [private]
template<typename Graph , typename Operator >
typedef std::pair<int,message_type> Galois::GraphLab::SyncEngine< Graph, Operator >::Message [private]
template<typename Graph , typename Operator >
typedef Operator::message_type Galois::GraphLab::SyncEngine< Graph, Operator >::message_type [private]
template<typename Graph , typename Operator >
typedef Galois::Runtime::PerPackageStorage<MyMessages> Galois::GraphLab::SyncEngine< Graph, Operator >::Messages [private]
template<typename Graph , typename Operator >
typedef std::deque<Message> Galois::GraphLab::SyncEngine< Graph, Operator >::MyMessages [private]
template<typename Graph , typename Operator >
typedef Galois::WorkList::dChunkedFIFO<256> Galois::GraphLab::SyncEngine< Graph, Operator >::WL [private]

Constructor & Destructor Documentation

template<typename Graph , typename Operator >
Galois::GraphLab::SyncEngine< Graph, Operator >::SyncEngine ( Graph &  g,
Operator  op 
) [inline]

Member Function Documentation

template<typename Graph , typename Operator >
void Galois::GraphLab::SyncEngine< Graph, Operator >::execute (  )  [inline]
template<typename Graph , typename Operator >
template<bool IsFirst, typename Container1 , typename Container2 >
void Galois::GraphLab::SyncEngine< Graph, Operator >::executeStep ( Container1 &  cur,
Container2 &  next 
) [inline, private]
template<typename Graph , typename Operator >
void Galois::GraphLab::SyncEngine< Graph, Operator >::signal ( GNode  node,
const message_type msg 
) [inline]

Member Data Documentation

template<typename Graph , typename Operator >
Graph& Galois::GraphLab::SyncEngine< Graph, Operator >::graph [private]
template<typename Graph , typename Operator >
Galois::Runtime::LL::SimpleLock<true> Galois::GraphLab::SyncEngine< Graph, Operator >::lock [private]
template<typename Graph , typename Operator >
Messages Galois::GraphLab::SyncEngine< Graph, Operator >::messages [private]
template<typename Graph , typename Operator >
const bool Galois::GraphLab::SyncEngine< Graph, Operator >::NeedMessages = !std::is_same<EmptyMessage,message_type>::value [static, private]
template<typename Graph , typename Operator >
Galois::LargeArray<Operator> Galois::GraphLab::SyncEngine< Graph, Operator >::ops [private]
template<typename Graph , typename Operator >
Operator Galois::GraphLab::SyncEngine< Graph, Operator >::origOp [private]
template<typename Graph , typename Operator >
Galois::LargeArray<int> Galois::GraphLab::SyncEngine< Graph, Operator >::scoreboard [private]
template<typename Graph , typename Operator >
Galois::InsertBag<GNode> Galois::GraphLab::SyncEngine< Graph, Operator >::wls[2] [private]

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

Generated on 2 Nov 2013 for Galois by  doxygen 1.6.1