src.bluetooth_sig.gatt.characteristics.templates.ieee_float

IEEE floating-point templates for medical and standard float formats.

Covers IEEE11073FloatTemplate (SFLOAT 16-bit) and Float32Template (IEEE-754 32-bit).

Classes

Name

Description

Float32Template

Template for IEEE-754 32-bit float parsing.

IEEE11073FloatTemplate

Template for IEEE 11073 SFLOAT format (16-bit medical device float).

Module Contents

class src.bluetooth_sig.gatt.characteristics.templates.ieee_float.Float32Template

Bases: src.bluetooth_sig.gatt.characteristics.templates.base.CodingTemplate[float]

Template for IEEE-754 32-bit float parsing.

decode_value(data: bytearray, offset: int = 0, ctx: src.bluetooth_sig.gatt.context.CharacteristicContext | None = None, *, validate: bool = True) float

Parse IEEE-754 32-bit float.

encode_value(value: float, *, validate: bool = True) bytearray

Encode float32 value to bytes.

property data_size: int

4 bytes.

Type:

Size

property extractor: src.bluetooth_sig.gatt.characteristics.utils.extractors.RawExtractor

Get float32 extractor.

class src.bluetooth_sig.gatt.characteristics.templates.ieee_float.IEEE11073FloatTemplate

Bases: src.bluetooth_sig.gatt.characteristics.templates.base.CodingTemplate[float]

Template for IEEE 11073 SFLOAT format (16-bit medical device float).

decode_value(data: bytearray, offset: int = 0, ctx: src.bluetooth_sig.gatt.context.CharacteristicContext | None = None, *, validate: bool = True) float

Parse IEEE 11073 SFLOAT format.

encode_value(value: float, *, validate: bool = True) bytearray

Encode value to IEEE 11073 SFLOAT format.

property data_size: int

2 bytes.

Type:

Size

property extractor: src.bluetooth_sig.gatt.characteristics.utils.extractors.RawExtractor

Get uint16 extractor for raw bits.

property translator: src.bluetooth_sig.gatt.characteristics.utils.translators.SfloatTranslator

Get SFLOAT translator.