SliceInterval< Dim, SliceDim > Class Template Reference

SliceInterval<N,M> is a special form of domain object which stores a total domain and a slice domain, both as Interval<N> or <M> objects. More...

#include <SliceInterval.h>

Inheritance diagram for SliceInterval< Dim, SliceDim >:

Inheritance graph
[legend]
Collaboration diagram for SliceInterval< Dim, SliceDim >:

Collaboration graph
[legend]

List of all members.

Public Member Functions

 SliceInterval ()
 SliceInterval (const Pooma::NoInit &d)
 SliceInterval (const SliceInterval< Dim, SliceDim > &nd)
template<class Base , class D1 , class D2 >
 SliceInterval (const Base &baseDomain, const D1 &d1, const D2 &d2)
template<class Base , class D1 , class D2 , class D3 >
 SliceInterval (const Base &baseDomain, const D1 &d1, const D2 &d2, const D3 &d3)
template<class Base , class D1 , class D2 , class D3 , class D4 >
 SliceInterval (const Base &baseDomain, const D1 &d1, const D2 &d2, const D3 &d3, const D4 &d4)
template<class Base , class D1 , class D2 , class D3 , class D4 , class D5 >
 SliceInterval (const Base &baseDomain, const D1 &d1, const D2 &d2, const D3 &d3, const D4 &d4, const D5 &d5)
template<class Base , class D1 , class D2 , class D3 , class D4 , class D5 , class D6 >
 SliceInterval (const Base &baseDomain, const D1 &d1, const D2 &d2, const D3 &d3, const D4 &d4, const D5 &d5, const D6 &d6)
template<class Base , class D1 , class D2 , class D3 , class D4 , class D5 , class D6 , class D7 >
 SliceInterval (const Base &baseDomain, const D1 &d1, const D2 &d2, const D3 &d3, const D4 &d4, const D5 &d5, const D6 &d6, const D7 &d7)
 ~SliceInterval ()
SliceInterval< Dim, SliceDim > & operator= (const SliceInterval< Dim, SliceDim > &nd)


Detailed Description

template<int Dim, int SliceDim>
class SliceInterval< Dim, SliceDim >

SliceInterval<N,M> is a special form of domain object which stores a total domain and a slice domain, both as Interval<N> or <M> objects.

It is a subclass of SliceDomain, which is a general base class for all sliced domain objects. A sliced domain stores a total domain and a subset of the total domain, called the slice domain, which has a number of dimensions M < less than the total number of dimensions N. Other than being a specialization to Interval domains, SliceInterval has the exact same interface as described in SliceDomain.

SliceInterval has only a default constructor and a copy constructor. The default constructor initializes the two internal domain objects with their default constructors. It is generally initialized with the 'fillSlice' or 'combineSlice' methods in NewDomain.h, which combine other non-slice domains into a SliceDomain subclass.

A traits class DomainTraits<SliceInterval<N,M>> is used to provide information to the rest of the code about SliceInterval. The traits for SliceDomain subclasses are given in DomainTraits.SliceInterval.h and similar files.

There is no specialization to 1D for SliceInterval, since it is not needed. Typically, after a SliceInterval is created by whatever means, you call either 'getTotalDomain()' or 'getSliceDomain()' to retrieve a reference to the relevant domain, and then use that domain as normal. getTotalDomain() returns an Interval<N> ref, while getSliceDomain() returns an Interval<M> ref.


Constructor & Destructor Documentation

template<int Dim, int SliceDim>
SliceInterval< Dim, SliceDim >::SliceInterval (  )  [inline]

template<int Dim, int SliceDim>
SliceInterval< Dim, SliceDim >::SliceInterval ( const Pooma::NoInit d  )  [inline]

template<int Dim, int SliceDim>
SliceInterval< Dim, SliceDim >::SliceInterval ( const SliceInterval< Dim, SliceDim > &  nd  )  [inline]

template<int Dim, int SliceDim>
template<class Base , class D1 , class D2 >
SliceInterval< Dim, SliceDim >::SliceInterval ( const Base &  baseDomain,
const D1 &  d1,
const D2 &  d2 
) [inline]

References CTAssert.

template<int Dim, int SliceDim>
template<class Base , class D1 , class D2 , class D3 >
SliceInterval< Dim, SliceDim >::SliceInterval ( const Base &  baseDomain,
const D1 &  d1,
const D2 &  d2,
const D3 &  d3 
) [inline]

References CTAssert.

template<int Dim, int SliceDim>
template<class Base , class D1 , class D2 , class D3 , class D4 >
SliceInterval< Dim, SliceDim >::SliceInterval ( const Base &  baseDomain,
const D1 &  d1,
const D2 &  d2,
const D3 &  d3,
const D4 &  d4 
) [inline]

References CTAssert.

template<int Dim, int SliceDim>
template<class Base , class D1 , class D2 , class D3 , class D4 , class D5 >
SliceInterval< Dim, SliceDim >::SliceInterval ( const Base &  baseDomain,
const D1 &  d1,
const D2 &  d2,
const D3 &  d3,
const D4 &  d4,
const D5 &  d5 
) [inline]

References CTAssert.

template<int Dim, int SliceDim>
template<class Base , class D1 , class D2 , class D3 , class D4 , class D5 , class D6 >
SliceInterval< Dim, SliceDim >::SliceInterval ( const Base &  baseDomain,
const D1 &  d1,
const D2 &  d2,
const D3 &  d3,
const D4 &  d4,
const D5 &  d5,
const D6 &  d6 
) [inline]

References CTAssert.

template<int Dim, int SliceDim>
template<class Base , class D1 , class D2 , class D3 , class D4 , class D5 , class D6 , class D7 >
SliceInterval< Dim, SliceDim >::SliceInterval ( const Base &  baseDomain,
const D1 &  d1,
const D2 &  d2,
const D3 &  d3,
const D4 &  d4,
const D5 &  d5,
const D6 &  d6,
const D7 &  d7 
) [inline]

References CTAssert.

template<int Dim, int SliceDim>
SliceInterval< Dim, SliceDim >::~SliceInterval (  )  [inline]


Member Function Documentation

template<int Dim, int SliceDim>
SliceInterval<Dim,SliceDim>& SliceInterval< Dim, SliceDim >::operator= ( const SliceInterval< Dim, SliceDim > &  nd  )  [inline]


The documentation for this class was generated from the following file:

Generated on Wed Mar 16 06:20:35 2011 for FreePOOMA by  doxygen 1.5.9