Skip to navigation

holoscan::TensorByteSpanExpression

Beta
View as Markdown

Build one finite Tensor slot byte-capacity expression for compile-time resolution.

Expressions are immutable authoring values. Compilation resolves them from generation-zero Parameters and finite connected-input capacity, then publishes an ordinary concrete pool plan. Changing a recompile-required dependency requires compiling a new execution plan; it does not require rebuilding or relinking the application binary. Runtime never evaluates this value.

#include <holoscan/tensor_contract.hpp>

Constructors

TensorByteSpanExpression


Methods

invalid_reason

TensorByteSpanExpressionInvalidReason holoscan::TensorByteSpanExpression::invalid_reason() const noexcept

Return the first structural authoring failure retained by this expression.

Returns: TensorByteSpanExpressionInvalidReason::kNone for a valid expression.

multiplied_by

) const

Multiply this expression by another positive expression.

Returns: Combined checked expression, or a structurally invalid value when limits are exceeded.

Parameters

factor
const TensorByteSpanExpression &

Positive finite expression.

ceiling_divided_by

TensorByteSpanExpression holoscan::TensorByteSpanExpression::ceiling_divided_by(
const TensorByteSpanExpression &divisor
) const

Divide this expression by another positive expression with ceiling rounding.

Returns: Combined checked expression, or a structurally invalid value when limits are exceeded.

Parameters

divisor
const TensorByteSpanExpression &

Positive finite expression.

maximum_with

Select the maximum of this expression and another positive expression.

Returns: Combined checked expression, or a structurally invalid value when limits are exceeded.

Parameters

other
const TensorByteSpanExpression &

Positive finite expression.

aligned_to

std::uint64_t alignment
) const

Align this expression upward to a positive power-of-two byte boundary.

Returns: Combined checked expression, or a structurally invalid value for bad alignment.

Parameters

alignment
std::uint64_t

Positive power-of-two alignment no larger than 2^30 bytes.

combine


Member variables

NameTypeDescription
nodes_std::vector< detail::TensorByteSpanAuthoringNode >
invalid_reason_TensorByteSpanExpressionInvalidReason