Apply mask to the signal in a DataBundle#
Summary#
Apply a uint32 bitfield mask to one or more BaseData signal arrays in the same DataBundle.
Metadata#
Module ID: ApplyMask
Module path: /home/runner/work/MoDaCor/MoDaCor/src/modacor/modules/base_modules/apply_mask.py
Module version: 20260716.1
Keywords: mask, signal, apply, databundle
Required data keys#
mask
signal
Modifies#
signal: signal
Required arguments#
with_processing_keys
basedata_to_mask
Default configuration#
{
"basedata_to_mask": [
"signal"
],
"mask_key": "mask",
"masked_value": "nan",
"with_processing_keys": [
"sample"
]
}
Argument specification#
Argument |
Type |
Required |
Default |
Dependency role |
Description |
|---|---|---|---|---|---|
|
list |
Yes |
[“signal”] |
processing_read_write_basedata_key_list |
List of BaseData keys to apply the mask to. |
|
str |
No |
mask |
processing_read_basedata_key |
BaseData key for the mask to be used inside the DataBundle. |
|
str or int or float or NoneType |
No |
nan |
- |
Replacement value for masked pixels. Use ‘nan’ for NaN, or a numeric value such as 0 or -1. |
|
list |
Yes |
[“sample”] |
- |
Single processing key identifying the DataBundle to update. |
References#
NeXus mask bit-field convention (NXdata/NXdetector masks)
Notes#
Configuration:
with_processing_keys: [sample] # required, single databundle key
mask_key: mask # optional, default: mask
basedata_to_mask: [signal, ...] # optional, default: [signal]
masked_value: nan # optional; use 0 or -1 for explicit sentinels
Performs:
basedata[mask != 0] = masked_value (in-place, for each source)