qat.experimental.system_data.materialisers.purr.extensions.qblox module
Decode legacy PuRR Qblox payload fragments into typed canonical extensions.
PuRR serialises qat.purr.backends.qblox.config objects into the baseband payload of
each physical channel. This module owns that source syntax: it strips serialisation
markers, drops the None placeholders PuRR writes for unset fields, and validates the
remaining values into the typed extension defined by
qat.experimental.system_data.hardware.qblox.configuration.
Keeping the decoding here means the derived Qblox hardware view never parses source payloads, and later compiler layers only ever see validated, immutable configuration.
- QBLOX_PORT_REFERENCE_ATTRIBUTE = 'qblox'
Canonical external-resource attribute key holding a
PortReference.
- decode_qblox_configuration(value, path='baseband.config')
Decode the
baseband.configpayload of one PuRR physical channel.- Parameters:
- Return type:
QbloxSuppliedConfiguration|None- Returns:
The typed configuration, or
Nonewhen the channel supplies none.- Raises:
ValueError – If the payload carries unsupported fields or values.
- decode_qblox_port_attributes(payload)
Materialise the typed Qblox extensions of one PuRR physical channel.
- Parameters:
payload¶ (
Mapping[str,Any]) – Decoded PuRR physical-channel payload.- Return type:
dict[str,Any] |None- Returns:
The typed attributes to attach, or
Nonefor a non-Qblox channel.- Raises:
ValueError – If the channel carries malformed Qblox metadata.
- decode_qblox_port_reference(payload)
Read the physical identity of one PuRR physical channel.
Physical channels of other targets return
Noneso the generic PuRR materialiser keeps their source attributes untouched.- Parameters:
payload¶ (
Mapping[str,Any]) – Decoded PuRR physical-channel payload.- Return type:
PortReference|None- Returns:
The typed port reference, or
Nonefor a non-Qblox channel.- Raises:
ValueError – If a Qblox channel carries malformed physical identity.