FreePOOMA  2.4.1
Classes | Functions
Loc.h File Reference

Loc<N> is a very simple type of domain, which refers to just one point. More...

#include "Domain/Domain.h"
#include "Domain/DomainTraits.Loc.h"
#include "Domain/NewDomain.h"
#include "Utilities/NoInit.h"
#include "Utilities/PAssert.h"
Include dependency graph for Loc.h:
This graph shows which files directly or indirectly include this file:

Classes

struct  FillLocStorage< dstIndex, toGo >
 Template metaprogram for filling a loc from a different domain object. More...
struct  FillLocStorage< dstIndex, 0 >
struct  FillAllLocStorage< i >
 Template metaprogram that fills all of a loc with the one-dimensional initializer a. More...
struct  FillAllLocStorage< 0 >
struct  CopyLocStorageImpl< Dim, T, DimT, wildcard >
 Implementation for CopyLocStorage. More...
struct  CopyLocStorageImpl< Dim, T, DimT, false >
struct  CopyLocStorageImpl< Dim, T, 1, false >
struct  CopyLocStorage< Dim, T >
 CopyLocStorage is a simple struct with one static member 'copy' that copies data out of a given single domain into the given Loc. More...
class  Loc< Dim >
 Loc<N> is a domain representing a single N-dimensional point. More...
class  Loc< 1 >
 Loc<1> is a 1D specialization of Loc<N>; for the 1D case, there are only a restricted set of constructors available. More...

Functions

template<int Dim, class T1 >
void fillLocStorage (Loc< Dim > &loc, const T1 &a)
 fillLocStorage is a function (actually a set of overloaded functions) that copies data from a given domain into a Loc.
template<int Dim, class T1 , class T2 >
void fillLocStorage (Loc< Dim > &loc, const T1 &a, const T2 &b)
template<int Dim, class T1 , class T2 , class T3 >
void fillLocStorage (Loc< Dim > &loc, const T1 &a, const T2 &b, const T3 &c)
template<int Dim, class T1 , class T2 , class T3 , class T4 >
void fillLocStorage (Loc< Dim > &loc, const T1 &a, const T2 &b, const T3 &c, const T4 &d)
template<int Dim, class T1 , class T2 , class T3 , class T4 , class T5 >
void fillLocStorage (Loc< Dim > &loc, const T1 &a, const T2 &b, const T3 &c, const T4 &d, const T5 &e)
template<int Dim, class T1 , class T2 , class T3 , class T4 , class T5 , class T6 >
void fillLocStorage (Loc< Dim > &loc, const T1 &a, const T2 &b, const T3 &c, const T4 &d, const T5 &e, const T6 &f)
template<int Dim, class T1 , class T2 , class T3 , class T4 , class T5 , class T6 , class T7 >
void fillLocStorage (Loc< Dim > &loc, const T1 &a, const T2 &b, const T3 &c, const T4 &d, const T5 &e, const T6 &f, const T7 &g)
template<int Dim>
std::ostream & operator<< (std::ostream &o, const Loc< Dim > &loc)
 print a Loc to a stream, in the format "[" first, first, ...

Detailed Description

Loc<N> is a very simple type of domain, which refers to just one point.

It acts very much like an N-dimensional vector of integers. It can be used to refer to a single point along a sequence of points in a domain. Loc defers most of its implementation to the Domain<DomainTraits<Loc>> base class.


Function Documentation

template<int Dim, class T1 >
void fillLocStorage ( Loc< Dim > &  loc,
const T1 &  a 
) [inline]

fillLocStorage is a function (actually a set of overloaded functions) that copies data from a given domain into a Loc.

It will modify the first argument (the loc), filling it from the first dimension up to the added dimensionalities of the remaining arguments. This is defines for 1 ... 7 arguments.

Referenced by CopyLocStorageImpl< Dim, T, DimT, false >::copy(), fillLocStorage(), Loc< Dim2 >::Loc(), and Loc< Dim2 >::operator=().

template<int Dim, class T1 , class T2 >
void fillLocStorage ( Loc< Dim > &  loc,
const T1 &  a,
const T2 &  b 
) [inline]

References fillLocStorage().

template<int Dim, class T1 , class T2 , class T3 >
void fillLocStorage ( Loc< Dim > &  loc,
const T1 &  a,
const T2 &  b,
const T3 &  c 
) [inline]

References fillLocStorage().

template<int Dim, class T1 , class T2 , class T3 , class T4 >
void fillLocStorage ( Loc< Dim > &  loc,
const T1 &  a,
const T2 &  b,
const T3 &  c,
const T4 &  d 
) [inline]

References fillLocStorage().

template<int Dim, class T1 , class T2 , class T3 , class T4 , class T5 >
void fillLocStorage ( Loc< Dim > &  loc,
const T1 &  a,
const T2 &  b,
const T3 &  c,
const T4 &  d,
const T5 &  e 
) [inline]

References fillLocStorage().

template<int Dim, class T1 , class T2 , class T3 , class T4 , class T5 , class T6 >
void fillLocStorage ( Loc< Dim > &  loc,
const T1 &  a,
const T2 &  b,
const T3 &  c,
const T4 &  d,
const T5 &  e,
const T6 &  f 
) [inline]

References fillLocStorage().

template<int Dim, class T1 , class T2 , class T3 , class T4 , class T5 , class T6 , class T7 >
void fillLocStorage ( Loc< Dim > &  loc,
const T1 &  a,
const T2 &  b,
const T3 &  c,
const T4 &  d,
const T5 &  e,
const T6 &  f,
const T7 &  g 
) [inline]

References fillLocStorage().

template<int Dim>
std::ostream& operator<< ( std::ostream &  o,
const Loc< Dim > &  loc 
)

print a Loc to a stream, in the format "[" first, first, ...

first "]" This overrides the more general function in DomainBase.h

References Loc< 1 >::print().