udfLeadStreamCardioClick static method

Stream<List<int>> udfLeadStreamCardioClick({
  1. required ModuleEcg ecg,
})

Implementation

static Stream<List<int>> udfLeadStreamCardioClick({
  required ModuleEcg ecg,
}) async* {
  final leadState = ecg.ble.points[Characteristics.LEAD_STATE_ECG];
  if (leadState == null) return;

  try {
    await leadState.setNotifyValue(true);
  } catch (e) {
    '_getLeadStateStream: $e'.log;
    try {
      await Future<void>.delayed(const Duration(seconds: 2));
      await leadState.setNotifyValue(true);
    } catch (e) {
      '_getLeadStateStream (second try): $e'.log;
    }
  }
  yield* leadState.lastValueStream;
}