ezmsg.sigproc.asarray#

Convert AxisArray data to a target array backend.

This module provides a transformer that converts AxisArray payloads between array backends (NumPy, MLX, PyTorch, CuPy, JAX). Useful for wiring a conversion step between nodes — e.g., numpy → MLX before a GPU-accelerated filter, or MLX → numpy before a scipy-dependent node.

Note

This module supports the Array API standard, enabling use with NumPy, CuPy, PyTorch, and other compatible array libraries.

Classes

class ArrayBackend(*values)#

Bases: StrEnum

numpy = 'numpy'#
class AsArray(*args, settings=None, **kwargs)[source]#

Bases: BaseTransformerUnit[AsArraySettings, AxisArray, AxisArray, AsArrayTransformer]

Parameters:

settings (Settings | None)

SETTINGS#

alias of AsArraySettings

class AsArraySettings(backend: ArrayBackend = <ArrayBackend.numpy: 'numpy'>, dtype: str | None = None)[source]#

Bases: Settings

Parameters:
backend: ArrayBackend = 'numpy'#

Target array backend.

dtype: str | None = None#

Target dtype as a string (e.g. “float32”, “float64”). None keeps the original dtype.

__init__(backend=ArrayBackend.numpy, dtype=None)#
Parameters:
Return type:

None

class AsArrayTransformer(*args, settings=None, **kwargs)[source]#

Bases: BaseTransformer[AsArraySettings, AxisArray, AxisArray]

Parameters:

settings (SettingsType)