#include "Domain/DomainTraits.h"


Classes | |
| struct | DomainTraits< Range< Dim > > |
| DomainTraits<Range<Dim>>: The specialization of DomainTraits for Range, for dimensions greater than one. More... | |
| struct | DomainTraits< Range< 1 > > |
| DomainTraits<Range<1>>: The specialization of DomainTraits for Range, for dimension == 1. More... | |
| struct | DomainChangeDim< Range< Dim1 >, Dim2 > |
| DomainChangeDim<T, int> is used to convert from a domain of one dimension to another dimension (the second template parameter). More... | |
It defines the general behavior of Range, including its typedef and static data characteristics, how to store data for a Range, etc. It is used by the Domain base class of Range to implement most of the public interface.
DomainTraits<Range<Dim>> stores the characteristics and much of the implementation details for Range domain objects. A Range represents a sequence of numbers [a, a+s, a+2s, ... b], with a run-time stride s.
A general version of DomainTraits<Range<Dim>> is defined here, which only includes the basic information to make Range<Dim> look like an array of Range<1> objects. DomainTraits<Range<1>> is a more specific specialization which provides most of the necessary interface information for items which need to know about Range. Since most of the interface for a domain object is only available for 1D versions of that domain object, the Range<1> specialization defines more interface functions than the Range<Dim> case.
1.5.9