#include "tensorstore/index_space/output_index_map.h"
template <DimensionIndex InputRank = dynamic_rank>
class tensorstore::OutputIndexMapRef;

Represents a const unowned view of an output index map for an index transform, which specifies the how the index for a given output dimension is computed from the input indices.

This view is valid only as long as the underlying index transform.

See also

  • OutputIndexMapRange

  • OutputIndexMapIterator

Types

class IndexArrayView;

Represents a const view of an index array and associated bounds.

Constructors

OutputIndexMapRef();

Constructs an invalid reference.

Methods

OutputIndexMapRefoperator=(const OutputIndexMapRef&) = default;

Rebinds to another output index map.

StaticOrDynamicRank<InputRank> input_rank() const;

Returns the input rank of the index transform.

OutputIndexMethod method() const;

Returns the mapping method.

Index offset() const;

Returns the offset.

Index stride() const;

Returns the stride. This is ignored if method() == OutputIndexMethod::constant.

DimensionIndex input_dimension() const;

Returns the single input dimension used to compute the output index. :dchecks: method() == OutputIndexMethod::single_input_dimension

IndexArrayView index_array() const;

Returns the index array and bounds. :dchecks: method() == OutputIndexMethod::array

enum class tensorstore::OutputIndexMethod;

Specifies the method by which the index into a given output dimension of an index transform is computed from the input indices.