21 #ifndef fiber_collection_of_4d_arrays_hpp
22 #define fiber_collection_of_4d_arrays_hpp
24 #include "_4d_array.hpp"
26 #include <boost/scoped_array.hpp>
32 template <
typename T>
class CollectionOf3dSlicesOf4dArrays;
33 template <
typename T>
class CollectionOf2dSlicesOf4dArrays;
34 template <
typename T>
class CollectionOf1dSlicesOf4dArrays;
35 template <
typename T>
class CollectionOf3dSlicesOfConst4dArrays;
36 template <
typename T>
class CollectionOf2dSlicesOfConst4dArrays;
37 template <
typename T>
class CollectionOf1dSlicesOfConst4dArrays;
47 void set_size(
size_t new_size);
53 void fill(
const T& value);
65 void check_array_index(
size_t array_index)
const;
74 boost::scoped_array<_4dArray<T> > m_arrays;
103 template <
typename T>
119 template <
typename T>
142 size_t m_index2, m_index3;
145 template <
typename T>
158 size_t m_index2, m_index3;
161 template <
typename T>
166 size_t index1,
size_t index2,
size_t index3);
185 size_t m_index1, m_index2, m_index3;
188 template <
typename T>
201 size_t m_index1, m_index2, m_index3;
206 #include "collection_of_4d_arrays_imp.hpp"
Definition: collection_of_4d_arrays.hpp:162
Simple implementation of a 4D Fortran-ordered array.
Definition: _4d_array.hpp:50
Definition: collection_of_4d_arrays.hpp:120
Lightweight encapsulation of a 2D slice of a constant 4d array.
Definition: _4d_array.hpp:176
Lightweight encapsulation of a 2D slice of a constant 4d array.
Definition: _4d_array.hpp:128
Lightweight encapsulation of a 2D slice of a constant 4d array.
Definition: _4d_array.hpp:225
Definition: collection_of_4d_arrays.hpp:104
Definition: collection_of_4d_arrays.hpp:189
Definition: collection_of_4d_arrays.hpp:78
Lightweight encapsulation of a 3D slice of a 4D array.
Definition: _4d_array.hpp:99
Lightweight encapsulation of a 2D slice of a 4d array.
Definition: _4d_array.hpp:147
Definition: collection_of_4d_arrays.hpp:146
Definition: collection_of_4d_arrays.hpp:41
Lightweight encapsulation of a 1D slice of a 4d array.
Definition: _4d_array.hpp:195