Realm
A distributed, event-based tasking library
Loading...
Searching...
No Matches
Realm::AffineLinearizedIndexSpace< N, T > Class Template Reference

#include <indexspace.h>

Inheritance diagram for Realm::AffineLinearizedIndexSpace< N, T >:
Collaboration diagram for Realm::AffineLinearizedIndexSpace< N, T >:

Public Member Functions

 AffineLinearizedIndexSpace (const IndexSpace< N, T > &_indexspace, bool fortran_order=true)
 
virtual LinearizedIndexSpaceIntfcclone (void) const
 
virtual size_t size (void) const
 
virtual size_t linearize (const Point< N, T > &p) const
 
- Public Member Functions inherited from Realm::LinearizedIndexSpaceIntfc
virtual ~LinearizedIndexSpaceIntfc (void)
 
template<int N, typename T >
bool check_dim (void) const
 
template<int N, typename T >
LinearizedIndexSpace< N, T > & as_dim (void)
 
template<int N, typename T >
const LinearizedIndexSpace< N, T > & as_dim (void) const
 

Public Attributes

size_t volume
 
size_t offset
 
Point< N, ptrdiff_t > strides
 
Rect< N, T > dbg_bounds
 
- Public Attributes inherited from Realm::LinearizedIndexSpace< N, T >
IndexSpace< N, T > indexspace
 
- Public Attributes inherited from Realm::LinearizedIndexSpaceIntfc
int dim
 
int idxtype
 

Additional Inherited Members

- Protected Member Functions inherited from Realm::LinearizedIndexSpace< N, T >
 LinearizedIndexSpace (const IndexSpace< N, T > &_indexspace)
 
- Protected Member Functions inherited from Realm::LinearizedIndexSpaceIntfc
 LinearizedIndexSpaceIntfc (int _dim, int _idxtype)
 

Detailed Description

template<int N, typename T>
class Realm::AffineLinearizedIndexSpace< N, T >

The simplest possible linearization of an index space is to use an affine transformation to map the bounding box of the index space to the range [0, volume)

Constructor & Destructor Documentation

◆ AffineLinearizedIndexSpace()

template<int N, typename T >
Realm::AffineLinearizedIndexSpace< N, T >::AffineLinearizedIndexSpace ( const IndexSpace< N, T > &  _indexspace,
bool  fortran_order = true 
)
explicit

Member Function Documentation

◆ clone()

template<int N, typename T >
virtual LinearizedIndexSpaceIntfc * Realm::AffineLinearizedIndexSpace< N, T >::clone ( void  ) const
virtual

◆ linearize()

template<int N, typename T >
virtual size_t Realm::AffineLinearizedIndexSpace< N, T >::linearize ( const Point< N, T > &  p) const
virtual

◆ size()

template<int N, typename T >
virtual size_t Realm::AffineLinearizedIndexSpace< N, T >::size ( void  ) const
virtual

Member Data Documentation

◆ dbg_bounds

template<int N, typename T >
Rect<N, T> Realm::AffineLinearizedIndexSpace< N, T >::dbg_bounds

◆ offset

template<int N, typename T >
size_t Realm::AffineLinearizedIndexSpace< N, T >::offset

◆ strides

template<int N, typename T >
Point<N, ptrdiff_t> Realm::AffineLinearizedIndexSpace< N, T >::strides

◆ volume

template<int N, typename T >
size_t Realm::AffineLinearizedIndexSpace< N, T >::volume

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