Legion Runtime
Public Member Functions | List of all members
Legion::SpanIterator< PM, FT, DIM, COORD_T > Class Template Reference

#include <legion.h>

Public Member Functions

 SpanIterator (const PhysicalRegion &region, FieldID fid, size_t actual_field_size=sizeof(FT), bool check_field_size=false, bool privileges_only=true, bool silence_warnings=false, const char *warning_string=NULL)
 
bool valid (void) const
 
bool step (void)
 
 operator bool (void) const
 
bool operator() (void) const
 
const Span< FT, PM > & operator* (void) const
 
const Span< FT, PM > * operator-> (void) const
 
SpanIterator< PM, FT, DIM, COORD_T > & operator++ (void)
 
SpanIterator< PM, FT, DIM, COORD_T > operator++ (int)
 

Detailed Description

template<PrivilegeMode PM, typename FT, int DIM, typename COORD_T = coord_t>
class Legion::SpanIterator< PM, FT, DIM, COORD_T >

While the common model for compact instances is to use a piece iterator to walk over pieces and create a field accessor to index the elements in each piece, some applications want to transpose these loops and walk linearly over all spans of a field with a common stride without needing to know which piece they belong to. The SpanIterator class allows this piece-agnostic traversal of a field.


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