ViewIndexer< Dim, Dim2 > Class Template Reference

ViewIndexer translates indices in a Dim-dimensional domain back to the corresponding indices in the original Dim2-dimensional domain, taking into account things like slices. More...

#include <ViewIndexer.h>

Inheritance diagram for ViewIndexer< Dim, Dim2 >:

Inheritance graph
[legend]
Collaboration diagram for ViewIndexer< Dim, Dim2 >:

Collaboration graph
[legend]

List of all members.

Public Types

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

Public Member Functions

 ViewIndexer ()
template<class DT >
 ViewIndexer (const SliceDomain< DT > &dom)
template<class DT >
 ViewIndexer (const ViewIndexer< Dim, Dim2 > &orig, const Domain< Dim, DT > &dom)
template<int OrigDim, class DT >
 ViewIndexer (const ViewIndexer< OrigDim, Dim2 > &orig, const SliceDomain< 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< Dim2 > &oloc) const
void translate (int i0, Loc< Dim2 > &loc) const
void translate (int i0, int i1, Loc< Dim2 > &loc) const
void translate (int i0, int i1, int i2, Loc< Dim2 > &loc) const
void translate (int i0, int i1, int i2, int i3, Loc< Dim2 > &loc) const
void translate (int i0, int i1, int i2, int i3, int i4, Loc< Dim2 > &loc) const
void translate (int i0, int i1, int i2, int i3, int i4, int i5, Loc< Dim2 > &loc) const
void translate (int i0, int i1, int i2, int i3, int i4, int i5, int i6, Loc< Dim2 > &loc) const
template<class DT >
BaseDomain_tlocalToBase (const Domain< Dim, DT > &dlocal, BaseDomain_t &base) const
template<class DT >
SliceRange< Dim2, Dim > & localToBase (const Domain< Dim, DT > &dlocal, SliceRange< Dim2, 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< Dim2 > &base, Interval< Dim > &local) const


Detailed Description

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

ViewIndexer translates indices in a Dim-dimensional domain back to the corresponding indices in the original Dim2-dimensional domain, taking into account things like slices.

Exported typedefs:

Constructors:

Operators:

Accessors:

Utility functions:


Member Typedef Documentation

template<int Dim, int Dim2>
typedef ViewIndexer<Dim, Dim2> ViewIndexer< Dim, Dim2 >::This_t

template<int Dim, int Dim2>
typedef Interval<Dim> ViewIndexer< Dim, Dim2 >::Domain_t

template<int Dim, int Dim2>
typedef Range<Dim2> ViewIndexer< Dim, Dim2 >::BaseDomain_t

template<int Dim, int Dim2>
typedef Loc<Dim2> ViewIndexer< Dim, Dim2 >::Mask_t


Constructor & Destructor Documentation

template<int Dim, int Dim2>
ViewIndexer< Dim, Dim2 >::ViewIndexer (  )  [inline]

template<int Dim, int Dim2>
template<class DT >
ViewIndexer< Dim, Dim2 >::ViewIndexer ( const SliceDomain< DT > &  dom  )  [inline]

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

template<int Dim, int Dim2>
template<int OrigDim, class DT >
ViewIndexer< Dim, Dim2 >::ViewIndexer ( const ViewIndexer< OrigDim, Dim2 > &  orig,
const SliceDomain< DT > &  dom 
) [inline]

template<int Dim, int Dim2>
ViewIndexer< Dim, Dim2 >::ViewIndexer ( const This_t model  )  [inline]


Member Function Documentation

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

template<int Dim, int Dim2>
const Domain_t& ViewIndexer< Dim, Dim2 >::domain (  )  const [inline]

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

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

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

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

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

template<int Dim, int Dim2>
void ViewIndexer< Dim, Dim2 >::translate ( const Loc< Dim > &  loc,
Loc< Dim2 > &  oloc 
) const [inline]

template<int Dim, int Dim2>
void ViewIndexer< Dim, Dim2 >::translate ( int  i0,
Loc< Dim2 > &  loc 
) const [inline]

template<int Dim, int Dim2>
void ViewIndexer< Dim, Dim2 >::translate ( int  i0,
int  i1,
Loc< Dim2 > &  loc 
) const [inline]

template<int Dim, int Dim2>
void ViewIndexer< Dim, Dim2 >::translate ( int  i0,
int  i1,
int  i2,
Loc< Dim2 > &  loc 
) const [inline]

template<int Dim, int Dim2>
void ViewIndexer< Dim, Dim2 >::translate ( int  i0,
int  i1,
int  i2,
int  i3,
Loc< Dim2 > &  loc 
) const [inline]

template<int Dim, int Dim2>
void ViewIndexer< Dim, Dim2 >::translate ( int  i0,
int  i1,
int  i2,
int  i3,
int  i4,
Loc< Dim2 > &  loc 
) const [inline]

template<int Dim, int Dim2>
void ViewIndexer< Dim, Dim2 >::translate ( int  i0,
int  i1,
int  i2,
int  i3,
int  i4,
int  i5,
Loc< Dim2 > &  loc 
) const [inline]

template<int Dim, int Dim2>
void ViewIndexer< Dim, Dim2 >::translate ( int  i0,
int  i1,
int  i2,
int  i3,
int  i4,
int  i5,
int  i6,
Loc< Dim2 > &  loc 
) const [inline]

template<int Dim, int Dim2>
template<class DT >
BaseDomain_t& ViewIndexer< Dim, Dim2 >::localToBase ( const Domain< Dim, DT > &  dlocal,
BaseDomain_t base 
) const [inline]

template<int Dim, int Dim2>
template<class DT >
SliceRange<Dim2, Dim>& ViewIndexer< Dim, Dim2 >::localToBase ( const Domain< Dim, DT > &  dlocal,
SliceRange< Dim2, Dim > &  base 
) const [inline]

template<int Dim, int Dim2>
Interval<Dim>& ViewIndexer< Dim, Dim2 >::baseToLocal ( const BaseDomain_t base,
Interval< Dim > &  local 
) const [inline]

template<int Dim, int Dim2>
Range<Dim>& ViewIndexer< Dim, Dim2 >::baseToLocal ( const BaseDomain_t base,
Range< Dim > &  local 
) const [inline]

template<int Dim, int Dim2>
Interval<Dim>& ViewIndexer< Dim, Dim2 >::baseToLocalInterval ( const Interval< Dim2 > &  base,
Interval< Dim > &  local 
) const [inline]


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

Generated on Wed Mar 16 06:20:44 2011 for FreePOOMA by  doxygen 1.5.9