An adapter, around a random-access sequence container, which behaves like a multidimensional array.
More...
#include <multi_array_adapter.hpp>
|
|
typedef Container::value_type | value_type |
| | value type of the array
|
| |
|
| | multi_array_adapter (Container &container_, std::vector< std::size_t > shape_) |
| | Constructs a new adapter around a given container using a given shape. More...
|
| |
| template<typename... Indices, typename Enabler = typename std::enable_if< detail::all_integral<Indices...>::value>::type> |
| const value_type & | operator() (Indices...indices) const |
| | Accesses a specified element. More...
|
| |
| template<typename... Indices, typename Enabler = typename std::enable_if< detail::all_integral<Indices...>::value>::type> |
| value_type & | operator() (Indices...indices) |
| | Accesses a specified element. More...
|
| |
| template<typename... Args, typename Enabler = typename std::enable_if< !detail::all_integral<Args...>::value>::type> |
| echelon::hdf5::array_slice< value_type > | operator() (Args...args) |
| | Slice the array. More...
|
| |
| Container::iterator | begin () |
| | Returns an iterator, which points to the first element of the flattened array. More...
|
| |
| Container::iterator | end () |
| | Returns an iterator, which points to the last element of the flattened array. More...
|
| |
| Container::const_iterator | begin () const |
| | Returns an iterator, which points to the first element of the flattened array. More...
|
| |
| Container::const_iterator | end () const |
| | Returns an iterator, which points to the last element of the flattened array. More...
|
| |
| const value_type * | data () const |
| | Direct access to the underlying array. More...
|
| |
| value_type * | data () |
| | Direct access to the underlying array. More...
|
| |
|
const std::vector< std::size_t > & | shape () const |
| | The shape of the array.
|
| |
template<typename Container>
class echelon::multi_array_adapter< Container >
An adapter, around a random-access sequence container, which behaves like a multidimensional array.
- Template Parameters
-
| Container | the type of the wrapped container. Container should provide random access. |
template<typename Container >
template<typename Container >
Returns an iterator, which points to the first element of the flattened array.
- Note
- The order, in which the elements appear in the flattened sequence, is not specified.
template<typename Container >
Returns an iterator, which points to the first element of the flattened array.
- Note
- The order, in which the elements appear in the flattened sequence, is not specified.
template<typename Container >
Direct access to the underlying array.
- Returns
- a pointer to the underlying array.
template<typename Container >
Direct access to the underlying array.
- Returns
- a pointer to the underlying array.
template<typename Container >
Returns an iterator, which points to the last element of the flattened array.
- Note
- The order, in which the elements appear in the flattened sequence, is not specified.
template<typename Container >
Returns an iterator, which points to the last element of the flattened array.
- Note
- The order, in which the elements appear in the flattened sequence, is not specified.
template<typename Container >
template<typename... Indices, typename Enabler = typename std::enable_if< detail::all_integral<Indices...>::value>::type>
template<typename Container >
template<typename... Indices, typename Enabler = typename std::enable_if< detail::all_integral<Indices...>::value>::type>
template<typename Container >
template<typename... Args, typename Enabler = typename std::enable_if< !detail::all_integral<Args...>::value>::type>
Slice the array.
- Template Parameters
-
| Args | types of the index range specifiers |
- Parameters
-
| args | index range specifiers |
- Returns
- the specified slice.
The documentation for this class was generated from the following file: