FreePOOMA  2.4.1
Public Types | Public Member Functions
ViewIndexer< Dim, Dim > Class Template Reference

This is an extra-special version of View indexer that optimizes indexing for the case where we have not taken a slice. More...

#include <ViewIndexer.h>

List of all members.

Public Types

typedef ViewIndexer< Dim, Dim > This_t
typedef Interval< Dim > Domain_t
typedef Range< Dim > BaseDomain_t
typedef Loc< Dim > Mask_t

Public Member Functions

 ViewIndexer ()
template<class DT >
 ViewIndexer (const Domain< Dim, DT > &dom)
template<class DT >
 ViewIndexer (const ViewIndexer< Dim, Dim > &orig, const Domain< Dim, DT > &dom)
 ViewIndexer (const This_t &model)
This_toperator= (const This_t &rhs)
const Domain_tdomain () const
const BaseDomain_tbaseDomain () const
int indirection (int i) const
const Mask_tmask () const
int offset (int i) const
int stride (int i) const
void translate (const Loc< Dim > &loc, Loc< Dim > &oloc) const
void translate (int i0, Loc< Dim > &loc) const
void translate (int i0, int i1, Loc< Dim > &loc) const
void translate (int i0, int i1, int i2, Loc< Dim > &loc) const
void translate (int i0, int i1, int i2, int i3, Loc< Dim > &loc) const
void translate (int i0, int i1, int i2, int i3, int i4, Loc< Dim > &loc) const
void translate (int i0, int i1, int i2, int i3, int i4, int i5, Loc< Dim > &loc) const
void translate (int i0, int i1, int i2, int i3, int i4, int i5, int i6, Loc< Dim > &loc) const
template<class DT >
BaseDomain_tlocalToBase (const Domain< Dim, DT > &dlocal, BaseDomain_t &base) const
template<class DT >
SliceRange< Dim, Dim > & localToBase (const Domain< Dim, DT > &dlocal, SliceRange< Dim, Dim > &base) const
Interval< Dim > & baseToLocal (const BaseDomain_t &base, Interval< Dim > &local) const
Range< Dim > & baseToLocal (const BaseDomain_t &base, Range< Dim > &local) const
Interval< Dim > & baseToLocalInterval (const Interval< Dim > &base, Interval< Dim > &local) const

Detailed Description

template<int Dim>
class ViewIndexer< Dim, Dim >

This is an extra-special version of View indexer that optimizes indexing for the case where we have not taken a slice.

Exported typedefs:

Constructors:

Operators:

Accessors:

Utility functions:


Member Typedef Documentation

template<int Dim>
typedef ViewIndexer<Dim, Dim> ViewIndexer< Dim, Dim >::This_t
template<int Dim>
typedef Interval<Dim> ViewIndexer< Dim, Dim >::Domain_t
template<int Dim>
typedef Range<Dim> ViewIndexer< Dim, Dim >::BaseDomain_t
template<int Dim>
typedef Loc<Dim> ViewIndexer< Dim, Dim >::Mask_t

Constructor & Destructor Documentation

template<int Dim>
ViewIndexer< Dim, Dim >::ViewIndexer ( ) [inline]
template<int Dim>
template<class DT >
ViewIndexer< Dim, Dim >::ViewIndexer ( const Domain< Dim, DT > &  dom) [inline]
template<int Dim>
template<class DT >
ViewIndexer< Dim, Dim >::ViewIndexer ( const ViewIndexer< Dim, Dim > &  orig,
const Domain< Dim, DT > &  dom 
) [inline]
template<int Dim>
ViewIndexer< Dim, Dim >::ViewIndexer ( const This_t model) [inline]

References offset(), and stride().


Member Function Documentation

template<int Dim>
This_t& ViewIndexer< Dim, Dim >::operator= ( const This_t rhs) [inline]
template<int Dim>
const Domain_t& ViewIndexer< Dim, Dim >::domain ( ) const [inline]

Referenced by operator=().

template<int Dim>
const BaseDomain_t& ViewIndexer< Dim, Dim >::baseDomain ( ) const [inline]

Referenced by operator=().

template<int Dim>
int ViewIndexer< Dim, Dim >::indirection ( int  i) const [inline]
template<int Dim>
const Mask_t& ViewIndexer< Dim, Dim >::mask ( ) const [inline]

Referenced by operator=().

template<int Dim>
int ViewIndexer< Dim, Dim >::offset ( int  i) const [inline]

Referenced by operator=(), and ViewIndexer().

template<int Dim>
int ViewIndexer< Dim, Dim >::stride ( int  i) const [inline]

Referenced by operator=(), and ViewIndexer().

template<int Dim>
void ViewIndexer< Dim, Dim >::translate ( const Loc< Dim > &  loc,
Loc< Dim > &  oloc 
) const [inline]
template<int Dim>
void ViewIndexer< Dim, Dim >::translate ( int  i0,
Loc< Dim > &  loc 
) const [inline]
template<int Dim>
void ViewIndexer< Dim, Dim >::translate ( int  i0,
int  i1,
Loc< Dim > &  loc 
) const [inline]
template<int Dim>
void ViewIndexer< Dim, Dim >::translate ( int  i0,
int  i1,
int  i2,
Loc< Dim > &  loc 
) const [inline]
template<int Dim>
void ViewIndexer< Dim, Dim >::translate ( int  i0,
int  i1,
int  i2,
int  i3,
Loc< Dim > &  loc 
) const [inline]
template<int Dim>
void ViewIndexer< Dim, Dim >::translate ( int  i0,
int  i1,
int  i2,
int  i3,
int  i4,
Loc< Dim > &  loc 
) const [inline]
template<int Dim>
void ViewIndexer< Dim, Dim >::translate ( int  i0,
int  i1,
int  i2,
int  i3,
int  i4,
int  i5,
Loc< Dim > &  loc 
) const [inline]
template<int Dim>
void ViewIndexer< Dim, Dim >::translate ( int  i0,
int  i1,
int  i2,
int  i3,
int  i4,
int  i5,
int  i6,
Loc< Dim > &  loc 
) const [inline]
template<int Dim>
template<class DT >
BaseDomain_t& ViewIndexer< Dim, Dim >::localToBase ( const Domain< Dim, DT > &  dlocal,
BaseDomain_t base 
) const [inline]
template<int Dim>
template<class DT >
SliceRange<Dim, Dim>& ViewIndexer< Dim, Dim >::localToBase ( const Domain< Dim, DT > &  dlocal,
SliceRange< Dim, Dim > &  base 
) const [inline]
template<int Dim>
Interval<Dim>& ViewIndexer< Dim, Dim >::baseToLocal ( const BaseDomain_t base,
Interval< Dim > &  local 
) const [inline]
template<int Dim>
Range<Dim>& ViewIndexer< Dim, Dim >::baseToLocal ( const BaseDomain_t base,
Range< Dim > &  local 
) const [inline]
template<int Dim>
Interval<Dim>& ViewIndexer< Dim, Dim >::baseToLocalInterval ( const Interval< Dim > &  base,
Interval< Dim > &  local 
) const [inline]

References PAssert.


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