sgnts.transforms.sumindex
¶
SumIndex
dataclass
¶
Bases: TSTransform
flowchart TD
sgnts.transforms.sumindex.SumIndex[SumIndex]
sgnts.base.base.TSTransform[TSTransform]
sgnts.base.base.TimeSeriesMixin[TimeSeriesMixin]
sgnts.base.base.TSTransform --> sgnts.transforms.sumindex.SumIndex
sgnts.base.base.TimeSeriesMixin --> sgnts.base.base.TSTransform
click sgnts.transforms.sumindex.SumIndex href "" "sgnts.transforms.sumindex.SumIndex"
click sgnts.base.base.TSTransform href "" "sgnts.base.base.TSTransform"
click sgnts.base.base.TimeSeriesMixin href "" "sgnts.base.base.TimeSeriesMixin"
Sum array values over slices in the zero-th dimension.
Parameters:
| Name | Type | Description | Default |
|---|---|---|---|
sl
|
list[slice]
|
list[slice], the slices to sum over |
required |
Notes
Thread safety:
Marked thread_safe = True. Pad layout: 1 sink + 1
source (@transform.one_to_one). No same-element
pull/new concurrency. internal runs alone.
``pull`` (inherited): per-pad-keyed dict writes. ``new``
(inherited): read-only lookup. ``process``: NumPy
``sum``/``stack`` (release the GIL for large arrays) on
local buffers; reads ``self.sl`` (post-init read-only).
**Future editors MUST preserve thread safety**: do not
relax the one-to-one constraint without re-auditing.
Keep ``process`` purely functional on its inputs.
Source code in src/sgnts/transforms/sumindex.py
process(input_frame, output_frame)
¶
Sum array values over slices.