21 #ifndef SELDON_FILE_ARRAY3D_INLINE_CXX
23 #include "Array3D.hxx"
34 template <
class T,
class Allocator>
50 template <
class T,
class Allocator>
61 template <
class T,
class Allocator>
72 template <
class T,
class Allocator>
85 template <
class T,
class Allocator>
88 return length1_ * length23_;
99 template <
class T,
class Allocator>
102 return length1_ * length23_;
112 template <
class T,
class Allocator>
128 template <
class T,
class Allocator>
132 return data_ + i * length23_ + j * length3_ + k;
149 template <
class T,
class Allocator>
150 inline typename Array3D<T, Allocator>::reference
154 #ifdef SELDON_CHECK_BOUNDS
155 CheckBounds(i, j, k, length1_, length2_, length3_,
"Array3D");
158 return data_[i * length23_ + j * length3_ + k];
170 template <
class T,
class Allocator>
171 inline typename Array3D<T, Allocator>::const_reference
175 #ifdef SELDON_CHECK_BOUNDS
176 CheckBounds(i, j, k, length1_, length2_, length3_,
"Array3D");
179 return data_[i*length23_ + j*length3_ + k];
188 template <
class T,
class Allocator>
203 template <
class T,
class Allocator>
208 Allocator::memorycpy(data_, A.
GetData(), GetDataSize());
213 #define SELDON_FILE_ARRAY3D_INLINE_CXX