|
FreePOOMA
2.4.1
|
The indirection engine combines two arrays to represent ind = a1(a2), where ind(i,j) = a1(a2(i,j)). More...
#include <IndirectionEngine.h>
Public Types | |
| enum | { dimensions = Dim } |
| enum | { hasDataObject } |
| enum | { multiPatch } |
| enum | { dynamic = false } |
| enum | { zeroBased = Engine2_t::zeroBased } |
| typedef IndirectionTag< A1, A2 > | Tag_t |
| typedef Engine< Dim, T, Tag_t > | Engine_t |
| typedef A1::Element_t | Element_t |
| typedef A1::ElementRef_t | ElementRef_t |
| typedef A2::Domain_t | Domain_t |
| typedef DomainLayout< Dim > | Layout_t |
| typedef A1::Engine_t | Engine1_t |
| typedef A2::Engine_t | Engine2_t |
Public Member Functions | |
| Engine (const A1 &array1, const A2 &array2) | |
| Engine (const Engine_t &engine) | |
| template<int OtherDim, class OtherA2 , class Domain > | |
| Engine (const Engine< OtherDim, T, IndirectionTag< A1, OtherA2 > > &e, const Domain &d) | |
| const A1 & | array1 () const |
| A1 & | array1 () |
| const A2 & | array2 () const |
| A2 & | array2 () |
| Element_t | read (int i0) const |
| Element_t | read (int i0, int i1) const |
| Element_t | read (int i0, int i1, int i2) const |
| Element_t | read (int i0, int i1, int i2, int i3) const |
| Element_t | read (int i0, int i1, int i2, int i3, int i4) const |
| Element_t | read (int i0, int i1, int i2, int i3, int i4, int i5) const |
| Element_t | read (int i0, int i1, int i2, int i3, int i4, int i5, int i6) const |
| template<class Domain > | |
| Element_t | read (const Domain &loc) const |
| ElementRef_t | operator() (int i0) const |
| ElementRef_t | operator() (int i0, int i1) const |
| ElementRef_t | operator() (int i0, int i1, int i2) const |
| ElementRef_t | operator() (int i0, int i1, int i2, int i3) const |
| ElementRef_t | operator() (int i0, int i1, int i2, int i3, int i4) const |
| ElementRef_t | operator() (int i0, int i1, int i2, int i3, int i4, int i5) const |
| ElementRef_t | operator() (int i0, int i1, int i2, int i3, int i4, int i5, int i6) const |
| template<class Domain > | |
| ElementRef_t | operator() (const Domain &loc) const |
| const Domain_t & | domain () const |
| int | first (int i) const |
The indirection engine combines two arrays to represent ind = a1(a2), where ind(i,j) = a1(a2(i,j)).
| typedef IndirectionTag<A1,A2> Engine< Dim, T, IndirectionTag< A1, A2 > >::Tag_t |
| typedef Engine<Dim,T,Tag_t> Engine< Dim, T, IndirectionTag< A1, A2 > >::Engine_t |
| typedef A1::Element_t Engine< Dim, T, IndirectionTag< A1, A2 > >::Element_t |
| typedef A1::ElementRef_t Engine< Dim, T, IndirectionTag< A1, A2 > >::ElementRef_t |
| typedef A2::Domain_t Engine< Dim, T, IndirectionTag< A1, A2 > >::Domain_t |
| typedef DomainLayout<Dim> Engine< Dim, T, IndirectionTag< A1, A2 > >::Layout_t |
| typedef A1::Engine_t Engine< Dim, T, IndirectionTag< A1, A2 > >::Engine1_t |
| typedef A2::Engine_t Engine< Dim, T, IndirectionTag< A1, A2 > >::Engine2_t |
| Engine< Dim, T, IndirectionTag< A1, A2 > >::Engine | ( | const A1 & | array1, |
| const A2 & | array2 | ||
| ) | [inline] |
References CTAssert.
| Engine< Dim, T, IndirectionTag< A1, A2 > >::Engine | ( | const Engine_t & | engine | ) | [inline] |
| Engine< Dim, T, IndirectionTag< A1, A2 > >::Engine | ( | const Engine< OtherDim, T, IndirectionTag< A1, OtherA2 > > & | e, |
| const Domain & | d | ||
| ) | [inline] |
References CTAssert.
| const A1& Engine< Dim, T, IndirectionTag< A1, A2 > >::array1 | ( | ) | const [inline] |
| A1& Engine< Dim, T, IndirectionTag< A1, A2 > >::array1 | ( | ) | [inline] |
| const A2& Engine< Dim, T, IndirectionTag< A1, A2 > >::array2 | ( | ) | const [inline] |
| A2& Engine< Dim, T, IndirectionTag< A1, A2 > >::array2 | ( | ) | [inline] |
| Element_t Engine< Dim, T, IndirectionTag< A1, A2 > >::read | ( | int | i0 | ) | const [inline] |
| Element_t Engine< Dim, T, IndirectionTag< A1, A2 > >::read | ( | int | i0, |
| int | i1 | ||
| ) | const [inline] |
| Element_t Engine< Dim, T, IndirectionTag< A1, A2 > >::read | ( | int | i0, |
| int | i1, | ||
| int | i2 | ||
| ) | const [inline] |
| Element_t Engine< Dim, T, IndirectionTag< A1, A2 > >::read | ( | int | i0, |
| int | i1, | ||
| int | i2, | ||
| int | i3 | ||
| ) | const [inline] |
| Element_t Engine< Dim, T, IndirectionTag< A1, A2 > >::read | ( | int | i0, |
| int | i1, | ||
| int | i2, | ||
| int | i3, | ||
| int | i4 | ||
| ) | const [inline] |
| Element_t Engine< Dim, T, IndirectionTag< A1, A2 > >::read | ( | int | i0, |
| int | i1, | ||
| int | i2, | ||
| int | i3, | ||
| int | i4, | ||
| int | i5 | ||
| ) | const [inline] |
| Element_t Engine< Dim, T, IndirectionTag< A1, A2 > >::read | ( | int | i0, |
| int | i1, | ||
| int | i2, | ||
| int | i3, | ||
| int | i4, | ||
| int | i5, | ||
| int | i6 | ||
| ) | const [inline] |
| Element_t Engine< Dim, T, IndirectionTag< A1, A2 > >::read | ( | const Domain & | loc | ) | const [inline] |
| ElementRef_t Engine< Dim, T, IndirectionTag< A1, A2 > >::operator() | ( | int | i0 | ) | const [inline] |
| ElementRef_t Engine< Dim, T, IndirectionTag< A1, A2 > >::operator() | ( | int | i0, |
| int | i1 | ||
| ) | const [inline] |
| ElementRef_t Engine< Dim, T, IndirectionTag< A1, A2 > >::operator() | ( | int | i0, |
| int | i1, | ||
| int | i2 | ||
| ) | const [inline] |
| ElementRef_t Engine< Dim, T, IndirectionTag< A1, A2 > >::operator() | ( | int | i0, |
| int | i1, | ||
| int | i2, | ||
| int | i3 | ||
| ) | const [inline] |
| ElementRef_t Engine< Dim, T, IndirectionTag< A1, A2 > >::operator() | ( | int | i0, |
| int | i1, | ||
| int | i2, | ||
| int | i3, | ||
| int | i4 | ||
| ) | const [inline] |
| ElementRef_t Engine< Dim, T, IndirectionTag< A1, A2 > >::operator() | ( | int | i0, |
| int | i1, | ||
| int | i2, | ||
| int | i3, | ||
| int | i4, | ||
| int | i5 | ||
| ) | const [inline] |
| ElementRef_t Engine< Dim, T, IndirectionTag< A1, A2 > >::operator() | ( | int | i0, |
| int | i1, | ||
| int | i2, | ||
| int | i3, | ||
| int | i4, | ||
| int | i5, | ||
| int | i6 | ||
| ) | const [inline] |
| ElementRef_t Engine< Dim, T, IndirectionTag< A1, A2 > >::operator() | ( | const Domain & | loc | ) | const [inline] |
| const Domain_t& Engine< Dim, T, IndirectionTag< A1, A2 > >::domain | ( | ) | const [inline] |
| int Engine< Dim, T, IndirectionTag< A1, A2 > >::first | ( | int | i | ) | const [inline] |
1.7.6.1