Coverage for src/bluetooth_sig/gatt/characteristics/__init__.py: 100%
79 statements
« prev ^ index » next coverage.py v7.11.0, created at 2025-10-30 00:10 +0000
« prev ^ index » next coverage.py v7.11.0, created at 2025-10-30 00:10 +0000
1"""Bluetooth SIG GATT characteristic registry.
3Provides type-safe, registry-driven lookup for all supported
4characteristics. Now encapsulated in CharacteristicRegistry class for
5API clarity and extensibility.
6"""
8from __future__ import annotations
10# Import the registry components from the dedicated registry module
11# Import all individual characteristic classes for backward compatibility
12from .ammonia_concentration import AmmoniaConcentrationCharacteristic
13from .apparent_wind_direction import ApparentWindDirectionCharacteristic
14from .apparent_wind_speed import ApparentWindSpeedCharacteristic
15from .average_current import AverageCurrentCharacteristic
16from .average_voltage import AverageVoltageCharacteristic
17from .barometric_pressure_trend import BarometricPressureTrendCharacteristic
18from .base import BaseCharacteristic
19from .battery_level import BatteryLevelCharacteristic
20from .battery_power_state import BatteryPowerStateCharacteristic
21from .blood_pressure_feature import BloodPressureFeatureCharacteristic
22from .blood_pressure_measurement import BloodPressureMeasurementCharacteristic
23from .body_composition_feature import BodyCompositionFeatureCharacteristic
24from .body_composition_measurement import BodyCompositionMeasurementCharacteristic
25from .co2_concentration import CO2ConcentrationCharacteristic
26from .csc_feature import CSCFeatureCharacteristic
27from .csc_measurement import CSCMeasurementCharacteristic
28from .cycling_power_control_point import CyclingPowerControlPointCharacteristic
29from .cycling_power_feature import CyclingPowerFeatureCharacteristic
30from .cycling_power_measurement import CyclingPowerMeasurementCharacteristic
31from .cycling_power_vector import CyclingPowerVectorCharacteristic
33# Device info classes imported individually below
34from .device_info import (
35 FirmwareRevisionStringCharacteristic,
36 HardwareRevisionStringCharacteristic,
37 ManufacturerNameStringCharacteristic,
38 ModelNumberStringCharacteristic,
39 SerialNumberStringCharacteristic,
40 SoftwareRevisionStringCharacteristic,
41)
42from .dew_point import DewPointCharacteristic
43from .electric_current import ElectricCurrentCharacteristic
44from .electric_current_range import ElectricCurrentRangeCharacteristic
45from .electric_current_specification import ElectricCurrentSpecificationCharacteristic
46from .electric_current_statistics import ElectricCurrentStatisticsCharacteristic
47from .elevation import ElevationCharacteristic
48from .generic_access import AppearanceCharacteristic, DeviceNameCharacteristic
49from .glucose_feature import GlucoseFeatureCharacteristic, GlucoseFeatures
50from .glucose_measurement import (
51 GlucoseMeasurementCharacteristic,
52 GlucoseMeasurementFlags,
53)
54from .glucose_measurement_context import (
55 GlucoseMeasurementContextCharacteristic,
56 GlucoseMeasurementContextFlags,
57)
58from .heart_rate_measurement import HeartRateMeasurementCharacteristic
59from .heat_index import HeatIndexCharacteristic
60from .high_voltage import HighVoltageCharacteristic
61from .humidity import HumidityCharacteristic
62from .illuminance import IlluminanceCharacteristic
63from .ln_control_point import LNControlPointCharacteristic
64from .ln_feature import LNFeatureCharacteristic
65from .local_time_information import LocalTimeInformationCharacteristic
66from .location_and_speed import LocationAndSpeedCharacteristic
67from .magnetic_declination import MagneticDeclinationCharacteristic
68from .magnetic_flux_density_2d import MagneticFluxDensity2DCharacteristic
69from .magnetic_flux_density_3d import MagneticFluxDensity3DCharacteristic
70from .methane_concentration import MethaneConcentrationCharacteristic
71from .navigation import NavigationCharacteristic
72from .nitrogen_dioxide_concentration import NitrogenDioxideConcentrationCharacteristic
73from .noise import NoiseCharacteristic
74from .non_methane_voc_concentration import NonMethaneVOCConcentrationCharacteristic
75from .ozone_concentration import OzoneConcentrationCharacteristic
76from .pm1_concentration import PM1ConcentrationCharacteristic
77from .pm10_concentration import PM10ConcentrationCharacteristic
78from .pm25_concentration import PM25ConcentrationCharacteristic
79from .pollen_concentration import PollenConcentrationCharacteristic
80from .position_quality import PositionQualityCharacteristic
81from .pressure import PressureCharacteristic
82from .pulse_oximetry_measurement import PulseOximetryMeasurementCharacteristic
83from .rainfall import RainfallCharacteristic
84from .registry import (
85 CHARACTERISTIC_CLASS_MAP,
86 CharacteristicName,
87 CharacteristicRegistry,
88)
89from .rsc_feature import RSCFeatureCharacteristic
90from .rsc_measurement import RSCMeasurementCharacteristic
91from .sulfur_dioxide_concentration import SulfurDioxideConcentrationCharacteristic
92from .supported_power_range import SupportedPowerRangeCharacteristic
93from .temperature import TemperatureCharacteristic
94from .temperature_measurement import TemperatureMeasurementCharacteristic
95from .time_zone import TimeZoneCharacteristic
96from .true_wind_direction import TrueWindDirectionCharacteristic
97from .true_wind_speed import TrueWindSpeedCharacteristic
98from .tx_power_level import TxPowerLevelCharacteristic
99from .uv_index import UVIndexCharacteristic
100from .voc_concentration import VOCConcentrationCharacteristic
101from .voltage import VoltageCharacteristic
102from .voltage_frequency import VoltageFrequencyCharacteristic
103from .voltage_specification import VoltageSpecificationCharacteristic
104from .voltage_statistics import VoltageStatisticsCharacteristic
105from .weight_measurement import WeightMeasurementCharacteristic
106from .weight_scale_feature import WeightScaleFeatureCharacteristic
107from .wind_chill import WindChillCharacteristic
109__all__ = [
110 # Registry components
111 "CharacteristicName",
112 "CharacteristicRegistry",
113 "CHARACTERISTIC_CLASS_MAP",
114 # Base characteristic
115 "BaseCharacteristic",
116 # Individual characteristic classes (for backward compatibility)
117 "AmmoniaConcentrationCharacteristic",
118 "ApparentWindDirectionCharacteristic",
119 "ApparentWindSpeedCharacteristic",
120 "AverageCurrentCharacteristic",
121 "AverageVoltageCharacteristic",
122 "BarometricPressureTrendCharacteristic",
123 "BatteryLevelCharacteristic",
124 "BatteryPowerStateCharacteristic",
125 "BloodPressureFeatureCharacteristic",
126 "BloodPressureMeasurementCharacteristic",
127 "BodyCompositionFeatureCharacteristic",
128 "BodyCompositionMeasurementCharacteristic",
129 "CO2ConcentrationCharacteristic",
130 "CSCFeatureCharacteristic",
131 "CSCMeasurementCharacteristic",
132 "CyclingPowerControlPointCharacteristic",
133 "CyclingPowerFeatureCharacteristic",
134 "CyclingPowerMeasurementCharacteristic",
135 "CyclingPowerVectorCharacteristic",
136 "AppearanceCharacteristic",
137 "DeviceNameCharacteristic",
138 "DewPointCharacteristic",
139 "ElectricCurrentCharacteristic",
140 "ElectricCurrentRangeCharacteristic",
141 "ElectricCurrentSpecificationCharacteristic",
142 "ElectricCurrentStatisticsCharacteristic",
143 "ElevationCharacteristic",
144 "FirmwareRevisionStringCharacteristic",
145 "GlucoseFeatureCharacteristic",
146 "GlucoseMeasurementCharacteristic",
147 "GlucoseMeasurementContextCharacteristic",
148 "GlucoseMeasurementContextFlags",
149 "GlucoseMeasurementFlags",
150 "GlucoseFeatures",
151 "HeartRateMeasurementCharacteristic",
152 "HeatIndexCharacteristic",
153 "HighVoltageCharacteristic",
154 "HumidityCharacteristic",
155 "HardwareRevisionStringCharacteristic",
156 "IlluminanceCharacteristic",
157 "LocalTimeInformationCharacteristic",
158 "LocationAndSpeedCharacteristic",
159 "LNControlPointCharacteristic",
160 "LNFeatureCharacteristic",
161 "MagneticDeclinationCharacteristic",
162 "MagneticFluxDensity2DCharacteristic",
163 "MagneticFluxDensity3DCharacteristic",
164 "ManufacturerNameStringCharacteristic",
165 "MethaneConcentrationCharacteristic",
166 "ModelNumberStringCharacteristic",
167 "NavigationCharacteristic",
168 "NitrogenDioxideConcentrationCharacteristic",
169 "NonMethaneVOCConcentrationCharacteristic",
170 "OzoneConcentrationCharacteristic",
171 "PM1ConcentrationCharacteristic",
172 "PM10ConcentrationCharacteristic",
173 "PM25ConcentrationCharacteristic",
174 "PollenConcentrationCharacteristic",
175 "PositionQualityCharacteristic",
176 "PressureCharacteristic",
177 "PulseOximetryMeasurementCharacteristic",
178 "RainfallCharacteristic",
179 "RSCMeasurementCharacteristic",
180 "RSCFeatureCharacteristic",
181 "SerialNumberStringCharacteristic",
182 "SoftwareRevisionStringCharacteristic",
183 "NoiseCharacteristic",
184 "SulfurDioxideConcentrationCharacteristic",
185 "SupportedPowerRangeCharacteristic",
186 "TemperatureCharacteristic",
187 "TemperatureMeasurementCharacteristic",
188 "TimeZoneCharacteristic",
189 "TrueWindDirectionCharacteristic",
190 "TrueWindSpeedCharacteristic",
191 "TxPowerLevelCharacteristic",
192 "UVIndexCharacteristic",
193 "VOCConcentrationCharacteristic",
194 "VoltageCharacteristic",
195 "VoltageFrequencyCharacteristic",
196 "VoltageSpecificationCharacteristic",
197 "VoltageStatisticsCharacteristic",
198 "WeightMeasurementCharacteristic",
199 "WeightScaleFeatureCharacteristic",
200 "WindChillCharacteristic",
201]