def creating buffer until required and MTU known

This commit is contained in:
Dan Halbert 2020-04-29 23:55:16 -04:00
parent 937b21257a
commit ecaed4f762
2 changed files with 6 additions and 3 deletions

View file

@ -139,9 +139,8 @@ class HeartRateService(Service):
def __init__(self, service=None): def __init__(self, service=None):
super().__init__(service=service) super().__init__(service=service)
self._measurement_buf = bytearray( # Defer creating buffer until needed.
self.heart_rate_measurement.packet_size # pylint: disable=no-member self._measurement_buf = None
)
@property @property
def measurement_values(self): def measurement_values(self):
@ -150,6 +149,10 @@ class HeartRateService(Service):
Return ``None`` if no packet has been read yet. Return ``None`` if no packet has been read yet.
""" """
if self._measurement_buf is None:
self._measurement_buf = bytearray(
self.heart_rate_measurement.packet_size # pylint: disable=no-member
)
buf = self._measurement_buf buf = self._measurement_buf
packet_length = self.heart_rate_measurement.readinto( # pylint: disable=no-member packet_length = self.heart_rate_measurement.readinto( # pylint: disable=no-member
buf buf