FreePOOMA
2.4.1
|
These are classes which handle specifying a domain and modifying it. More...
![]() |
Modules | |
NewDomain | |
NewDomain2 ... | |
Files | |
file | AllDomain.h |
AllDomain is one of the domain wildcards, which are used when constructing other domains using specific combination rules. | |
file | CombineDomainOpt.h |
CombineDomainOpt is a class that can be used to optimize the operation NewDomainN<>::combineSlice(domain, s1, s2, ...). | |
file | Contains.h |
bool contains(domain,domain) is a global function which determines if the points in the second domain are all points which are in the first domain. | |
file | Domain.h |
Domain is a base class for all domain objects, but one which can be specialized for N-dimensional (N>1), and 1-dimensional domain objects. | |
file | DomainArithOpsTraits.h |
DomainArithOpsTraits is intended to be used to select the return type of arithmetic operations between domains and pseudo-domains. | |
file | DomainBase.h |
DomainBase is a common base class for all domain objects. | |
file | DomainBlockIterator.h |
DomainBlockIterator<Dom> - Iterates through domain data (of type Dom), and returns block domains (Interval or Region) | |
file | DomainCalculus.h |
This file defines the prototypes for routines used in the domain calculus computations. | |
file | DomainIterator.h |
DomainIterator<Dom> - Iterates through domain data (of type Dom) | |
file | DomainMap.h |
DomainMap<Domain,Data> stores a list of N domains (of type Domain), each with an associated piece of data (of type Data). | |
file | DomainRemoveOverlap.h |
TBD. | |
file | DomainTraits.Grid.h |
DomainTraits<Grid<N>> is a specialization of the general DomainTraits class, for the case of Grid domain objects. | |
file | DomainTraits.h |
DomainTraits is a traits class for domain objects. | |
file | DomainTraits.int.h |
DomainTraits<int> is a specialization of the general DomainTraits class, for the case of integers. | |
file | DomainTraits.Interval.h |
DomainTraits<Interval<N>> is a specialization of the general DomainTraits class, for the case of Interval domain objects. | |
file | DomainTraits.Loc.h |
DomainTraits<Loc<N>> is a specialization of the general DomainTraits class, for the case of Loc domain objects. | |
file | DomainTraits.Range.h |
DomainTraits<Range<N>> is a specialization of the general DomainTraits class, for the case of Range domain objects. | |
file | DomainTraits.Region.h |
DomainTraits<Region<N,T>> is a specialization of the general DomainTraits class, for the case of Region domain objects. | |
file | DomainTraits.SliceInterval.h |
DomainTraits<SliceInterval<Dim,SliceDim>> is a specialization of the general DomainTraits class, for the case of SliceInterval domain objects. | |
file | DomainTraits.SliceRange.h |
DomainTraits<SliceRange<Dim,SliceDim>> is a specialization of the general DomainTraits class, for the case of SliceRange domain objects. | |
file | EquivSubset.h |
domain4 equivSubset(domain1,domain2,domain3) is a global function which finds the 'equivalent subset' for domain3 given a linear relationship between domain1 and domain2. | |
file | Grid.h |
Grid is a general type of integer domain, which refers to a set of points a0, a1, ... | |
file | IndirectionList.h |
IndirectionList<T> is a class that takes any object with an Array-like interface and stores the information as a list of elements of type T. | |
file | IndirectionListIterator.h |
IndirectionListIterator - Iterates through IndirectionList<T> elements. | |
file | Intersect.h |
domain3 intersect(domain1,domain2) is a global function which determines if two domains intersect with each other, and if so, what their intersection is. | |
file | Interval.h |
Interval is a very simple type of domain, which refers to a set of points a, a+1, a+2, ..., b. | |
file | IntervalIterator.h |
IntervalIterator - Iterates through Interval<1> points. | |
file | IteratorPairDomain.h |
IteratorPairDomain<Iter> wraps a pair of iterators and provides a subset of services provided by other 1D domains, and in particular by IndirectionList. | |
file | LeftDomain.h |
LeftDomain is one of the domain wildcards, which are used when constructing other domains using specific combination rules. | |
file | Loc.h |
Loc<N> is a very simple type of domain, which refers to just one point. | |
file | NewDomain.h |
A set of simple structs which tell how to combine different Domain objects together. | |
file | NullDomain.h |
NullDomain and ErrorDomain special domains. | |
file | Range.h |
Range is a general type of integer domain, which refers to a set of points a, a+s, a+2s, ..., b. | |
file | RangeIterator.h |
RangeIterator - Iterates through Range<1> points. | |
file | Region.h |
Region is a general type of continuous domain, which refers to all points between two endpoints a and b. | |
file | RightDomain.h |
RightDomain is one of the domain wildcards, which are used when constructing other domains using specific combination rules. | |
file | Shrink.h |
Interval<Dim> shrinking and growing domains. | |
file | SliceDomain.h |
SliceDomain is a base class for all sliced domain objects. | |
file | SliceInterval.h |
Slice domain objects are domains which have N dimensions worth of 1D domain data, but really represent the result of taking an M-dimensional slice (M < N) of another N dimensional domain. | |
file | SliceRange.h |
Slice domain objects are domains which have N dimensions worth of 1D domain data, but really represent the result of taking an M-dimensional slice (M < N) of another N dimensional domain. | |
file | Split.h |
void split(domain,domain,domain) is a global function which splits the first argument into two separate domains, roughly in the moddle. | |
file | Touches.h |
bool touches(domain,domain) is a global function which determines if two domains d1 and d2 overlap in any way. |
These are classes which handle specifying a domain and modifying it.
The types of domains can be divided into two classes, namely integer domains and continuous domains.
Integer domains include
The only continuous domain class is Region<Dim>. There are a few special domain classes, namely NullDomain, AllDomain and ErrorDomain.
All domain classes come with their corresponding traits class DomainTraits<class> which is used to manage operations on domains such as
Domains can be modified by arithmetic operations and new domains can be constructed using the helper classes in NewDomain.h and the LeftDomain and RightDomain wildcard classes.
You can iterate through domains by FIXME.
Some domains can be sliced FIXME.