22template <
unsigned Dim>
class SOffset;
24template <
unsigned Dim>
26template <
unsigned Dim>
28template <
unsigned Dim>
30template <
unsigned Dim>
32template <
unsigned Dim>
35template <
unsigned Dim>
37template <
unsigned Dim>
39template <
unsigned Dim>
41template <
unsigned Dim>
43template <
unsigned Dim>
46template <
unsigned Dim>
48template <
unsigned Dim>
50template <
unsigned Dim>
52template <
unsigned Dim>
54template <
unsigned Dim>
57template <
unsigned Dim>
59template <
unsigned Dim>
61template <
unsigned Dim>
63template <
unsigned Dim>
66template <
unsigned Dim>
69template <
unsigned Dim>
82template <
unsigned Dim>
92 SOffset(
int v0) {
for (
unsigned int d=0; d <
Dim;
v[d++] = v0); }
94 SOffset(
int v0,
int v1,
int v2);
95 SOffset(
int v0,
int v1,
int v2,
int v3);
96 SOffset(
int v0,
int v1,
int v2,
int v3,
int v4);
97 SOffset(
int v0,
int v1,
int v2,
int v3,
int v4,
int v5);
114 return !(*
this <
a || *
this ==
a);
152template<
unsigned int Dim>
160template<
unsigned int Dim>
169template<
unsigned int Dim>
179template<
unsigned int Dim>
190template<
unsigned int Dim>
202template<
unsigned int Dim>
205 for (
unsigned int i=0; i <
Dim; ++i)
211template<
unsigned int Dim>
214 for (
unsigned int i=0; i <
Dim; ++i) {
217 else if (v[i] >
a.v[i])
225template<
unsigned int Dim>
232template<
unsigned int Dim>
239template<
unsigned int Dim>
243 for (
unsigned int i=0; i <
Dim; ++i)
244 o <<
a[i] << (i < (
Dim-1) ?
"," :
"");
252template<
unsigned int Dim>
255 for (
unsigned int d=0; d <
Dim; ++d) {
256 if (v[d] < ndi[d].first() || v[d] > ndi[d].last())
272template<
unsigned int Dim,
int Flag>
300template<
class T1,
class T2,
class Op,
unsigned int L>
310template<
class T1,
class T2,
class Op>
318template<
class T1,
class T2,
class Op>
325template<
class T1,
class T2,
class Op>
331template<
class T1,
class T2,
class Op>
340template<
unsigned int L>
348template<
unsigned int L>
356template<
unsigned int L>
366template<
unsigned int L>
375template<
unsigned int L>
384template<
unsigned int L>
393template<
unsigned int L>
402template<
unsigned int L>
411template<
unsigned int L>
420template<
unsigned int L>
429template<
unsigned int L>
438template<
unsigned int L>
455template<
unsigned int L>
460 return (retval += b);
463template<
unsigned int L>
468 return (retval += b);
471template<
unsigned int L>
476 return (retval += b);
479template<
unsigned int L>
484 for (
unsigned int d=0; d < L; ++d)
485 retval[d] = b[d] +
a[d];
489template<
unsigned int L>
494 for (
unsigned int d=0; d < L; ++d)
495 retval[d] = b[d] +
a[d];
499template<
unsigned int L>
504 return (retval -= b);
507template<
unsigned int L>
512 return (retval -= b);
515template<
unsigned int L>
520 return (retval -= b);
523template<
unsigned int L>
528 for (
int d=0; d < L; ++d)
529 retval[d] = b[d] -
a[d];
533template<
unsigned int L>
538 for (
int d=0; d < L; ++d)
539 retval[d] = b[d] -
a[d];
543template<
unsigned int L>
548 return (retval *= b);
551template<
unsigned int L>
556 return (retval *= b);
559template<
unsigned int L>
564 return (retval *= b);
567template<
unsigned int L>
572 for (
unsigned int d=0; d < L; ++d)
573 retval[d] = b[d] *
a[d];
577template<
unsigned int L>
582 for (
unsigned int d=0; d < L; ++d)
583 retval[d] = b[d] *
a[d];
587template<
unsigned int L>
592 return (retval /= b);
595template<
unsigned int L>
600 return (retval /= b);
603template<
unsigned int L>
608 return (retval /= b);
611template<
unsigned int L>
616 for (
int d=0; d < L; ++d)
617 retval[d] = b[d] /
a[d];
626template<
unsigned int L>
631 return (retval -=
a);
void putMessage(Message &m, const T &t)
void getMessage_iter(Message &m, OutputIterator o)
SOffset< Dim > operator+(const SOffset< Dim > &, const SOffset< Dim > &)
SOffset< Dim > operator*(const SOffset< Dim > &, const SOffset< Dim > &)
std::ostream & operator<<(std::ostream &, const SOffset< Dim > &)
void divide_soffset_op(T1 *p1, T2 *p2, Op op, DivideSOffsetCopyTag< L, 4 >)
SOffset< Dim > operator-(const SOffset< Dim > &, const SOffset< Dim > &)
SOffset< Dim > operator/(const SOffset< Dim > &, const SOffset< Dim > &)
bool inside(const NDIndex< Dim > &) const
SOffset(const SOffset< Dim > &)
SOffset< Dim > & operator+=(const SOffset< Dim > &)
bool operator>(const SOffset< Dim > &a) const
int & operator[](unsigned int d)
const int * const_iterator
SOffset< Dim > & operator-=(const SOffset< Dim > &)
const int & operator[](unsigned int d) const
Message & getMessage(Message &)
const_iterator begin() const
bool operator!=(const SOffset< Dim > &a) const
SOffset< Dim > & operator/=(const SOffset< Dim > &)
bool operator<(const SOffset< Dim > &) const
SOffset< Dim > & operator=(const SOffset< Dim > &)
unsigned int size() const
Message & putMessage(Message &)
const_iterator end() const
SOffset< Dim > & operator*=(const SOffset< Dim > &)
bool operator>=(const SOffset< Dim > &a) const
bool operator<=(const SOffset< Dim > &a) const
bool operator==(const SOffset< Dim > &) const
void operator()(int &a, int b)
void operator()(int &a, int b)
void operator()(int &a, int b)
void operator()(int &a, int b)
void operator()(int &a, int b)