GetInputTensorRange

Description

Obtains the pointer to the input tensor range based on the operator input index. The input index refers to the actual index after operator instantiation, not the index in the prototype definition.

Prototype

using TensorRange = Range<Tensor>

const TensorRange *GetInputTensorRange(const size_t index) const

Parameters

Parameter

Input/Output

Description

index

Input

Operator input index, starting from 0.

Returns

Pointer to the input tensor range. If index is invalid, a null pointer is returned.

Restrictions

If the input is not set to data dependency, when this API is called to obtain a tensor range, only the correct shape, format, and datatype information can be obtained from the tensor, and the actual tensor data address (the obtained address is nullptr) cannot be obtained.

Example

const auto infer_shape_range_func = [](gert::InferShapeRangeContext *context) -> graphStatus {
  auto input_shape_range = context->GetInputTensorRange(0U);
  auto output_shape_range = context->GetOutputShapeRange(0U);
  *output_shape_range-->GetMin() = input_shape_range->GetMin()->GetStorageShape();
  *output_shape_range-->GetMax() = input_shape_range->GetMax()->GetStorageShape();
  return GRAPH_SUCCESS;
};