Reduce mask over axes#

Summary#

Reduce an integer mask over configured axes while preserving uint32 reason bits.

Metadata#

  • Module ID: ReduceMask

  • Module path: /home/runner/work/MoDaCor/MoDaCor/src/modacor/modules/base_modules/reduce_mask.py

  • Module version: 20260902.1

  • Keywords: mask, reduce, bitfield

Required data keys#

  • None

Modifies#

  • None

Required arguments#

  • with_processing_keys

Default configuration#

{
  "axes": null,
  "reduction": "any",
  "source_mask_key": "mask",
  "target_mask_key": "mask",
  "with_processing_keys": [
    "sample"
  ]
}

Argument specification#

Argument

Type

Required

Default

Dependency role

Description

axes

int or list or tuple or NoneType

No

-

-

Axis or axes to reduce. Use None to reduce all axes.

reduction

str

No

any

-

Use ‘any’ to OR mask bits across axes, or ‘all’ to AND bits across axes.

source_mask_key

str

No

mask

-

BaseData key for the mask to reduce.

target_mask_key

str

No

mask

-

BaseData key for the reduced mask output.

with_processing_keys

list

Yes

[“sample”]

-

Single processing key identifying the DataBundle to update.

Notes#

For ‘any’, a bit remains set if it is set in any reduced element. For ‘all’, a bit remains set only if it is set in all reduced elements.