pub struct PhysicalOutput {
pub name: String,
pub type_: Option<PhysicalType>,
pub shape: Vec<usize>,
pub dshape: Vec<(DimName, usize)>,
pub dtype: DType,
pub quantization: Option<Quantization>,
pub stride: Option<Stride>,
pub scale_index: Option<usize>,
pub activation_applied: Option<Activation>,
pub activation_required: Option<Activation>,
}Expand description
Physical output: a concrete tensor produced by the converter.
Physical outputs carry only tensor-level fields (dtype,
quantization, stride, activation_applied/activation_required).
Semantic fields live on the LogicalOutput parent.
Fields§
§name: StringPhysical tensor name as produced by the converter. This name is used to bind the metadata to the tensor returned by the inference runtime.
type_: Option<PhysicalType>Semantic type. Matches the parent’s type or declares a sub-split
such as boxes_xy or boxes_wh. None marks the child as
type-opaque: it still binds to a physical tensor by name/shape
during merging, but is not used to disambiguate against typed
siblings. Useful when a converter emits extra per-scale tensors
the HAL has no semantic for but the user manages downstream.
shape: Vec<usize>Physical tensor shape.
dshape: Vec<(DimName, usize)>Named dimensions ordered to match shape. Disambiguates NHWC vs
NCHW per-child rather than assuming a model-wide layout.
dtype: DTypeQuantized data type.
quantization: Option<Quantization>Quantization parameters. Always present in v2; null means float
(no quantization).
stride: Option<Stride>FPN stride. Present on per-scale splits; absent on channel
sub-splits (e.g. boxes_xy/boxes_wh).
scale_index: Option<usize>Zero-based index into the parent’s strides array. Used for parallel iteration with precomputed per-scale state.
activation_applied: Option<Activation>Activation already applied by the NPU. The HAL must NOT re-apply an activation declared here (e.g. Hailo applies sigmoid to score tensors on-chip).
activation_required: Option<Activation>Activation NOT yet applied. The HAL MUST apply the declared activation before consuming the tensor.
Trait Implementations§
Source§impl Clone for PhysicalOutput
impl Clone for PhysicalOutput
Source§fn clone(&self) -> PhysicalOutput
fn clone(&self) -> PhysicalOutput
1.0.0 (const: unstable) · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
source. Read moreSource§impl Debug for PhysicalOutput
impl Debug for PhysicalOutput
Source§impl<'de> Deserialize<'de> for PhysicalOutput
impl<'de> Deserialize<'de> for PhysicalOutput
Source§fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error>where
__D: Deserializer<'de>,
fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error>where
__D: Deserializer<'de>,
Source§impl PartialEq for PhysicalOutput
impl PartialEq for PhysicalOutput
Source§fn eq(&self, other: &PhysicalOutput) -> bool
fn eq(&self, other: &PhysicalOutput) -> bool
self and other values to be equal, and is used by ==.Source§impl Serialize for PhysicalOutput
impl Serialize for PhysicalOutput
impl StructuralPartialEq for PhysicalOutput
Auto Trait Implementations§
impl Freeze for PhysicalOutput
impl RefUnwindSafe for PhysicalOutput
impl Send for PhysicalOutput
impl Sync for PhysicalOutput
impl Unpin for PhysicalOutput
impl UnsafeUnpin for PhysicalOutput
impl UnwindSafe for PhysicalOutput
Blanket Implementations§
Source§impl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
Source§fn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Source§impl<T> CloneToUninit for Twhere
T: Clone,
impl<T> CloneToUninit for Twhere
T: Clone,
Source§impl<T> Instrument for T
impl<T> Instrument for T
Source§fn instrument(self, span: Span) -> Instrumented<Self>
fn instrument(self, span: Span) -> Instrumented<Self>
Source§fn in_current_span(self) -> Instrumented<Self>
fn in_current_span(self) -> Instrumented<Self>
Source§impl<T> IntoEither for T
impl<T> IntoEither for T
Source§fn into_either(self, into_left: bool) -> Either<Self, Self>
fn into_either(self, into_left: bool) -> Either<Self, Self>
self into a Left variant of Either<Self, Self>
if into_left is true.
Converts self into a Right variant of Either<Self, Self>
otherwise. Read moreSource§fn into_either_with<F>(self, into_left: F) -> Either<Self, Self>
fn into_either_with<F>(self, into_left: F) -> Either<Self, Self>
self into a Left variant of Either<Self, Self>
if into_left(&self) returns true.
Converts self into a Right variant of Either<Self, Self>
otherwise. Read more