FreePOOMA
2.4.1
|
AllDomain is a special domain class which is used as a 'wildcard'. More...
#include <AllDomain.h>
Public Types | |
enum | { dimensions = Dim } |
typedef AllDomain< Dim > | Domain_t |
typedef AllDomain< Dim > | NewDomain1_t |
typedef AllDomain< 1 > | OneDomain_t |
typedef int | Element_t |
Public Member Functions | |
AllDomain () | |
AllDomain (const AllDomain< Dim > &) | |
~AllDomain () | |
OneDomain_t | operator[] (int) const |
void | setDomain (const AllDomain< Dim > &) |
template<class T > | |
DomainTraits< T >::Element_t | first (const T &u) const |
int | first (int u) const |
template<class T > | |
DomainTraits< T >::Element_t | length (const T &u) const |
int | length (int) const |
template<class T > | |
DomainTraits< T >::Element_t | stride (const T &u) const |
int | stride (int) const |
AllDomain< Dim > & | operator= (const AllDomain< Dim > &) |
AllDomain is a special domain class which is used as a 'wildcard'.
Wildcards are useful when constructing new domains based on some other 'reference' domain, which is done when doing things like making a new view of an Array. Wildcard domains use the reference domain to determine what the 'final' domain should be. AllDomain refers to 'use the same exact domain values as the reference domain'.
AllDomain can be used as one of the arguments to the 'combineSlice' or 'fillSlice' routines in the NewDomain combiners, in which case the user- supplied reference domain is used with the 'setWildcardDomain' method of the domain being filled to get the final domain settings.
Wildcard domains in general can also be used in the constructors for regular domain objects. If they are given, they indicate that those dimensions should not be initialized, which can be helpful to avoid extra unneeded work when the domain will be filled with new values very soon.
typedef AllDomain<Dim> AllDomain< Dim >::NewDomain1_t |
typedef AllDomain<1> AllDomain< Dim >::OneDomain_t |
References CTAssert.
OneDomain_t AllDomain< Dim >::operator[] | ( | int | ) | const [inline] |
DomainTraits<T>::Element_t AllDomain< Dim >::first | ( | const T & | u | ) | const [inline] |
DomainTraits<T>::Element_t AllDomain< Dim >::length | ( | const T & | u | ) | const [inline] |
DomainTraits<T>::Element_t AllDomain< Dim >::stride | ( | const T & | u | ) | const [inline] |