FreePOOMA  2.4.1
Public Member Functions
SliceRange< Dim, SliceDim > Class Template Reference

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

#include <SliceRange.h>

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

List of all members.

Public Member Functions

 SliceRange ()
 SliceRange (const Pooma::NoInit &e)
 SliceRange (const SliceRange< Dim, SliceDim > &nd)
 SliceRange (const SliceInterval< Dim, SliceDim > &nd)
template<class Base , class D1 >
 SliceRange (const Base &baseDomain, const D1 &d1)
template<class Base , class D1 , class D2 >
 SliceRange (const Base &baseDomain, const D1 &d1, const D2 &d2)
template<class Base , class D1 , class D2 , class D3 >
 SliceRange (const Base &baseDomain, const D1 &d1, const D2 &d2, const D3 &d3)
template<class Base , class D1 , class D2 , class D3 , class D4 >
 SliceRange (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 >
 SliceRange (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 >
 SliceRange (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 >
 SliceRange (const Base &baseDomain, const D1 &d1, const D2 &d2, const D3 &d3, const D4 &d4, const D5 &d5, const D6 &d6, const D7 &d7)
 ~SliceRange ()
SliceRange< Dim, SliceDim > & operator= (const SliceRange< Dim, SliceDim > &nd)

Detailed Description

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

SliceRange<N,M> is a special form of domain object which stores a total domain and a slice domain, both as Range<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 Range domains, SliceRange has the exact same interface as described in SliceDomain.

SliceRange 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<SliceRange<N,M>> is used to provide information to the rest of the code about SliceRange. The traits for SliceDomain subclasses are given in DomainTraits.SliceRange.h and similar files.

There is no specialization to 1D for SliceRange, since it is not needed. Typically, after a SliceRange 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 a Range<N> ref, while getSliceDomain() returns a Range<M> ref.


Constructor & Destructor Documentation

template<int Dim, int SliceDim>
SliceRange< Dim, SliceDim >::SliceRange ( ) [inline]
template<int Dim, int SliceDim>
SliceRange< Dim, SliceDim >::SliceRange ( const Pooma::NoInit e) [inline]
template<int Dim, int SliceDim>
SliceRange< Dim, SliceDim >::SliceRange ( const SliceRange< Dim, SliceDim > &  nd) [inline]
template<int Dim, int SliceDim>
SliceRange< Dim, SliceDim >::SliceRange ( const SliceInterval< Dim, SliceDim > &  nd) [inline]
template<int Dim, int SliceDim>
template<class Base , class D1 >
SliceRange< Dim, SliceDim >::SliceRange ( const Base &  baseDomain,
const D1 &  d1 
) [inline]

References CTAssert.

template<int Dim, int SliceDim>
template<class Base , class D1 , class D2 >
SliceRange< Dim, SliceDim >::SliceRange ( 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 >
SliceRange< Dim, SliceDim >::SliceRange ( 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 >
SliceRange< Dim, SliceDim >::SliceRange ( 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 >
SliceRange< Dim, SliceDim >::SliceRange ( 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 >
SliceRange< Dim, SliceDim >::SliceRange ( 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 >
SliceRange< Dim, SliceDim >::SliceRange ( 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>
SliceRange< Dim, SliceDim >::~SliceRange ( ) [inline]

Member Function Documentation

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

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