Galois
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Pages
galois::worklists::BulkSynchronous< Container, T, Concurrent > Class Template Reference

Bulk-synchronous scheduling. More...

#include <BulkSynchronous.h>

Inheritance diagram for galois::worklists::BulkSynchronous< Container, T, Concurrent >:

Public Types

template<bool _concurrent>
using rethread = BulkSynchronous< Container, T, _concurrent >
 
template<typename _T >
using retype = BulkSynchronous< typename Container::template retype< _T >, _T, Concurrent >
 
template<typename _container >
using with_container = BulkSynchronous< _container, T, Concurrent >
 
typedef T value_type
 

Public Member Functions

 BulkSynchronous ()
 
void push (const value_type &val)
 
template<typename ItTy >
void push (ItTy b, ItTy e)
 
template<typename RangeTy >
void push_initial (const RangeTy &range)
 
galois::optional< value_typepop ()
 

Detailed Description

template<class Container = PerSocketChunkFIFO<>, class T = int, bool Concurrent = true>
class galois::worklists::BulkSynchronous< Container, T, Concurrent >

Bulk-synchronous scheduling.

Work is processed in rounds, and all newly created work is processed after all the current work in a round is completed.

Member Typedef Documentation

template<class Container = PerSocketChunkFIFO<>, class T = int, bool Concurrent = true>
template<bool _concurrent>
using galois::worklists::BulkSynchronous< Container, T, Concurrent >::rethread = BulkSynchronous<Container, T, _concurrent>
template<class Container = PerSocketChunkFIFO<>, class T = int, bool Concurrent = true>
template<typename _T >
using galois::worklists::BulkSynchronous< Container, T, Concurrent >::retype = BulkSynchronous<typename Container::template retype<_T>, _T, Concurrent>
template<class Container = PerSocketChunkFIFO<>, class T = int, bool Concurrent = true>
typedef T galois::worklists::BulkSynchronous< Container, T, Concurrent >::value_type
template<class Container = PerSocketChunkFIFO<>, class T = int, bool Concurrent = true>
template<typename _container >
using galois::worklists::BulkSynchronous< Container, T, Concurrent >::with_container = BulkSynchronous<_container, T, Concurrent>

Constructor & Destructor Documentation

template<class Container = PerSocketChunkFIFO<>, class T = int, bool Concurrent = true>
galois::worklists::BulkSynchronous< Container, T, Concurrent >::BulkSynchronous ( )
inline

Member Function Documentation

template<class Container = PerSocketChunkFIFO<>, class T = int, bool Concurrent = true>
galois::optional<value_type> galois::worklists::BulkSynchronous< Container, T, Concurrent >::pop ( void  )
inline
template<class Container = PerSocketChunkFIFO<>, class T = int, bool Concurrent = true>
void galois::worklists::BulkSynchronous< Container, T, Concurrent >::push ( const value_type val)
inline
template<class Container = PerSocketChunkFIFO<>, class T = int, bool Concurrent = true>
template<typename ItTy >
void galois::worklists::BulkSynchronous< Container, T, Concurrent >::push ( ItTy  b,
ItTy  e 
)
inline
template<class Container = PerSocketChunkFIFO<>, class T = int, bool Concurrent = true>
template<typename RangeTy >
void galois::worklists::BulkSynchronous< Container, T, Concurrent >::push_initial ( const RangeTy &  range)
inline

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