FreePOOMA
2.4.1
|
DomainTraits<Region<N,T>> is a specialization of the general DomainTraits class, for the case of Region domain objects. More...
#include "Domain/DomainTraits.h"
Classes | |
struct | DomainTraits< Region< Dim, T > > |
DomainTraits<Region<Dim,T>>: The traits for an N-dimensional Region domain. More... | |
struct | DomainTraits< Region< 1, T > > |
DomainTraits<Region<Dim,T>>: The traits for an 1-dimensional Region domain. More... | |
struct | DomainChangeDim< Region< Dim1, T >, Dim2 > |
DomainChangeDim<T, int> is used to convert from a domain of one dimension to another dimension (the second template parameter). More... |
DomainTraits<Region<N,T>> is a specialization of the general DomainTraits class, for the case of Region domain objects.
It defines the general behavior of Region, including its typedef and static data characteristics, how to store data for a Region, etc. It is used by the Domain base class of Region to implement most of the public interface.
DomainTraits<Region<Dim,T>> stores the characteristics and much of the implementation details for Region domain objects. A Region represents a continuous region of values in an N-dimensional space, by storing the endpoints in each dimension which define an N-dimensional rectangle. There is no stride associated with a Region; when asked, it reports a stride equal to the width of the 1D area.
A general version of DomainTraitsRegion<Dim,T> is defined which only includes the basic information to make Region<Dim> look like an array of Region<1> objects. DomainTraitsRegion<1,T> is a more specific specialization which provides most of the necessary interface information for items which need to know about Region. Since most of the interface for a domain object is only available for 1D versions of that domain object, the Region<1,T> specialization defines more interface functions than the Region<Dim,T> case.