Galois
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Pages
TwoLevelIterator.h File Reference
#include <cassert>
#include <cstdlib>
#include <functional>
#include <iterator>
#include <type_traits>
#include "galois/config.h"

Go to the source code of this file.

Classes

class  galois::TwoLevelIterBase< Outer, Inner, InnerBegFn, InnerEndFn >
 Common functionality of TwoLevelIterators. More...
 
class  galois::TwoLevelFwdIter< Outer, Inner, InnerBegFn, InnerEndFn >
 Two-Level forward iterator. More...
 
class  galois::TwoLevelBiDirIter< Outer, Inner, InnerBegFn, InnerEndFn >
 Two-Level bidirectional iterator. More...
 
class  galois::TwoLevelRandIter< Outer, Inner, InnerBegFn, InnerEndFn >
 Two-Level random access iterator. More...
 
struct  galois::ChooseTwoLevelIterator< Outer, Inner, InnerBegFn, InnerEndFn >
 Type function to select appropriate two-level iterator. More...
 
struct  galois::ChooseStlTwoLevelIterator< Outer, Inner >
 Type function to select appropriate two-level iterator. More...
 

Namespaces

 galois
 The Galois namespace containing all Galois structures and functions.
 

Functions

template<typename Outer , typename InnerBegFn , typename InnerEndFn >
ChooseTwoLevelIterator< Outer,
typename
InnerBegFn::result_type,
InnerBegFn, InnerEndFn >::type 
galois::make_two_level_begin (Outer beg, Outer end, InnerBegFn innerBegFn, InnerEndFn innerEndFn)
 Creates two level iterator. More...
 
template<typename Outer , typename InnerBegFn , typename InnerEndFn >
ChooseTwoLevelIterator< Outer,
typename
InnerBegFn::result_type,
InnerBegFn, InnerEndFn >::type 
galois::make_two_level_end (Outer beg, Outer end, InnerBegFn innerBegFn, InnerEndFn innerEndFn)
 Creates two level iterator. More...
 
template<typename Outer >
internal::StlInnerIsIterator
< Outer >::type 
galois::stl_two_level_begin (Outer beg, Outer end)
 
template<typename Outer >
internal::StlInnerIsIterator
< Outer >::type 
galois::stl_two_level_end (Outer beg, Outer end)
 
template<typename Outer >
internal::StlInnerIsConstIterator
< Outer >::type 
galois::stl_two_level_cbegin (Outer beg, Outer end)
 
template<typename Outer >
internal::StlInnerIsConstIterator
< Outer >::type 
galois::stl_two_level_cend (Outer beg, Outer end)
 
template<typename Outer >
internal::StlInnerIsRvrsIterator
< Outer >::type 
galois::stl_two_level_rbegin (Outer beg, Outer end)
 
template<typename Outer >
internal::StlInnerIsRvrsIterator
< Outer >::type 
galois::stl_two_level_rend (Outer beg, Outer end)
 
template<typename Outer >
internal::StlInnerIsConstRvrsIterator
< Outer >::type 
galois::stl_two_level_crbegin (Outer beg, Outer end)
 
template<typename Outer >
internal::StlInnerIsConstRvrsIterator
< Outer >::type 
galois::stl_two_level_crend (Outer beg, Outer end)