template<typename IndexType, NumDimensionsType ndim>
DenseIndexArray struct
Base classes
- struct BaseIndex
- struct vt::serialization::ByteCopyTrait
Public types
- using ThisIndexType = DenseIndexArray<IndexType, ndim>
- using IndexSizeType = size_t
- using ApplyType = std::function<void(ThisIndexType)>
-
using IsByteCopyable = serialization::
ByteCopyTrait - using DenseIndexArrayType = DenseIndexArray<IndexType, ndim>
- using DenseArraySizeType = uint64_t
- using DenseIndexType = IndexType
- using BuildIndexType = IndexType
Public static functions
- static auto ndims() -> NumDimensionsType constexpr
- static auto uniqueBitsToIndex(UniqueIndexBitType const& bits) -> ThisIndexType
Constructors, destructors, conversion operators
- DenseIndexArray() defaulted
- DenseIndexArray(DenseIndexArray const&) defaulted
- DenseIndexArray(DenseIndexArray&&) defaulted
-
template<typename... Idxs, typename = typename std::enable_if< util::DenseIndexArray(Idxs && ... init) explicit
meta_type_eq<IndexType, typename std::decay<Idxs>::type...>::value and sizeof...(Idxs) == ndim >::type> - DenseIndexArray(std::array<IndexType, ndim> in_array)
- DenseIndexArray(DenseIndexArraySingleInitTag, IndexType const& init_value)
Public functions
- auto operator=(DenseIndexArray const&) -> DenseIndexArray& defaulted
- auto operator[](IndexType const& index) -> IndexType&
- auto operator[](IndexType const& index) const -> IndexType const &
- auto get(IndexType const& index) const -> IndexType
- auto raw() const -> IndexType const *
- auto packedSize() const -> IndexSizeType
- auto indexIsByteCopyable() const -> bool
- auto getSize() const -> DenseArraySizeType
- auto toString() const -> std::string
- void foreach(ThisIndexType max, ApplyType fn) const
- void foreach(ApplyType fn) const
- auto uniqueBits() const -> UniqueIndexBitType
- auto operator==(DenseIndexArrayType const& other) const -> bool
- auto operator<(DenseIndexArrayType const& other) const -> bool
- auto operator+(DenseIndexArrayType const& other) const -> DenseIndexArrayType
- auto operator-(DenseIndexArrayType const& other) const -> DenseIndexArrayType
-
template<typename T = void, typename = typename std::enable_if<ndim>= 1, T>auto x() const -> ::type IndexType
-
template<typename T = void, typename = typename std::enable_if<ndim>= 2, T>auto y() const -> ::type IndexType
-
template<typename T = void, typename = typename std::enable_if<ndim>= 3, T>auto z() const -> ::type IndexType
-
template<typename T = void, typename = typename std::enable_if<ndim>= 4, T>auto u() const -> ::type IndexType
-
template<typename T = void, typename = typename std::enable_if<ndim>= 5, T>auto v() const -> ::type IndexType
-
template<typename T = void, typename = typename std::enable_if<ndim>= 6, T>auto w() const -> ::type IndexType
-
template<typename T, typename>auto x() const -> IndexType
-
template<typename T, typename>auto y() const -> IndexType
-
template<typename T, typename>auto z() const -> IndexType
-
template<typename T, typename>auto u() const -> IndexType
-
template<typename T, typename>auto v() const -> IndexType
-
template<typename T, typename>auto w() const -> IndexType
Friends
-
template<typename IndexT, NumDimensionsType nd>auto operator<<(std::ostream& os, DenseIndexArray<IndexT, nd> const& idx) -> std::ostream&
Function documentation
template<typename IndexType, NumDimensionsType ndim>
template<typename T, typename>
IndexType vt:: index:: DenseIndexArray<IndexType, ndim>:: x() const
template<typename IndexType, NumDimensionsType ndim>
template<typename T, typename>
IndexType vt:: index:: DenseIndexArray<IndexType, ndim>:: y() const
template<typename IndexType, NumDimensionsType ndim>
template<typename T, typename>
IndexType vt:: index:: DenseIndexArray<IndexType, ndim>:: z() const
template<typename IndexType, NumDimensionsType ndim>
template<typename T, typename>
IndexType vt:: index:: DenseIndexArray<IndexType, ndim>:: u() const
template<typename IndexType, NumDimensionsType ndim>
template<typename T, typename>
IndexType vt:: index:: DenseIndexArray<IndexType, ndim>:: v() const
template<typename IndexType, NumDimensionsType ndim>
template<typename T, typename>
IndexType vt:: index:: DenseIndexArray<IndexType, ndim>:: w() const