src.bluetooth_sig.gatt.characteristics.templates.numeric

Basic integer templates for unsigned and signed integer parsing.

Covers Uint8, Sint8, Uint16, Sint16, Uint24, Uint32, Uint48 templates.

Classes

Name

Description

Sint16Template

Template for 16-bit signed integer parsing (-32768 to 32767).

Sint8Template

Template for 8-bit signed integer parsing (-128 to 127).

Uint16Template

Template for 16-bit unsigned integer parsing (0-65535).

Uint24Template

Template for 24-bit unsigned integer parsing (0-16777215).

Uint32Template

Template for 32-bit unsigned integer parsing.

Uint48Template

Template for 48-bit unsigned integer parsing (0-281474976710655).

Uint8Template

Template for 8-bit unsigned integer parsing (0-255).

Module Contents

class src.bluetooth_sig.gatt.characteristics.templates.numeric.Sint16Template

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

Template for 16-bit signed integer parsing (-32768 to 32767).

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

Parse 16-bit signed integer.

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

Encode sint16 value to bytes.

property data_size: int

2 bytes.

Type:

Size

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

Get sint16 extractor.

property translator: src.bluetooth_sig.gatt.characteristics.utils.translators.ValueTranslator[int]

Return identity translator for no scaling.

class src.bluetooth_sig.gatt.characteristics.templates.numeric.Sint8Template

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

Template for 8-bit signed integer parsing (-128 to 127).

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

Parse 8-bit signed integer.

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

Encode sint8 value to bytes.

property data_size: int

1 byte.

Type:

Size

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

Get sint8 extractor.

property translator: src.bluetooth_sig.gatt.characteristics.utils.translators.ValueTranslator[int]

Return identity translator for no scaling.

class src.bluetooth_sig.gatt.characteristics.templates.numeric.Uint16Template

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

Template for 16-bit unsigned integer parsing (0-65535).

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

Parse 16-bit unsigned integer.

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

Encode uint16 value to bytes.

property data_size: int

2 bytes.

Type:

Size

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

Get uint16 extractor.

property translator: src.bluetooth_sig.gatt.characteristics.utils.translators.ValueTranslator[int]

Return identity translator for no scaling.

class src.bluetooth_sig.gatt.characteristics.templates.numeric.Uint24Template

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

Template for 24-bit unsigned integer parsing (0-16777215).

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

Parse 24-bit unsigned integer.

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

Encode uint24 value to bytes.

property data_size: int

3 bytes.

Type:

Size

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

Get uint24 extractor.

property translator: src.bluetooth_sig.gatt.characteristics.utils.translators.ValueTranslator[int]

Return identity translator for no scaling.

class src.bluetooth_sig.gatt.characteristics.templates.numeric.Uint32Template

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

Template for 32-bit unsigned integer parsing.

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

Parse 32-bit unsigned integer.

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

Encode uint32 value to bytes.

property data_size: int

4 bytes.

Type:

Size

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

Get uint32 extractor.

property translator: src.bluetooth_sig.gatt.characteristics.utils.translators.ValueTranslator[int]

Return identity translator for no scaling.

class src.bluetooth_sig.gatt.characteristics.templates.numeric.Uint48Template

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

Template for 48-bit unsigned integer parsing (0-281474976710655).

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

Parse 48-bit unsigned integer.

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

Encode uint48 value to bytes.

property data_size: int

6 bytes.

Type:

Size

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

Get uint48 extractor.

property translator: src.bluetooth_sig.gatt.characteristics.utils.translators.ValueTranslator[int]

Return identity translator for no scaling.

class src.bluetooth_sig.gatt.characteristics.templates.numeric.Uint8Template

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

Template for 8-bit unsigned integer parsing (0-255).

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

Parse 8-bit unsigned integer.

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

Encode uint8 value to bytes.

property data_size: int

1 byte.

Type:

Size

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

Get uint8 extractor.

property translator: src.bluetooth_sig.gatt.characteristics.utils.translators.ValueTranslator[int]

Return identity translator for no scaling.