xarray_adaptor

Defined in xtensor/xarray.hpp

template<class EC, layout_type L, class SC, class Tag>
class xarray_adaptor : public xt::xstrided_container<xarray_adaptor<EC, L, SC, Tag>>, public xt::xcontainer_semantic<xarray_adaptor<EC, L, SC, Tag>>, public extension::xarray_adaptor_base_t<EC, L, SC, Tag>

Dense multidimensional container adaptor with tensor semantic.

The xarray_adaptor class implements a dense multidimensional container adaptor with tensor semantic. It is used to provide a multidimensional container semantic and a tensor semantic to stl-like containers.

Template Parameters:
  • EC – The closure for the container type to adapt.

  • L – The layout_type of the adaptor.

  • SC – The type of the containers holding the shape and the strides.

  • Tag – The expression tag.

Constructors

inline xarray_adaptor(storage_type &&storage)

Constructs an xarray_adaptor of the given stl-like container.

Parameters:

storage – the container to adapt

inline xarray_adaptor(const storage_type &storage)

Constructs an xarray_adaptor of the given stl-like container.

Parameters:

storage – the container to adapt

template<class D>
inline xarray_adaptor(D &&storage, const shape_type &shape, layout_type l = L)

Constructs an xarray_adaptor of the given stl-like container, with the specified shape and layout_type.

Parameters:
template<class D>
inline xarray_adaptor(D &&storage, const shape_type &shape, const strides_type &strides)

Constructs an xarray_adaptor of the given stl-like container, with the specified shape and strides.

Parameters:

Extended copy semantic

template<class E>
inline auto operator=(const xexpression<E> &e) -> self_type&

The extended assignment operator.