udfConvertWearCardioT static method

List<List<double>>? udfConvertWearCardioT({
  1. required List<int> event,
  2. required int channelCount,
  3. required int sampleCount,
})

Implementation

static List<List<double>>? udfConvertWearCardioT({
  required List<int> event,
  required int channelCount,
  required int sampleCount,
}) {
  final res = List.generate(
    channelCount,
    (_) => List.filled(sampleCount, 0.0),
    growable: false,
  );
  if (event.isEmpty) return null;

  for (var i = 0; i < sampleCount; i++) {
    for (var j = 0; j < channelCount; j++) {
      final msb = event[channelCount * 3 * i + j * 3];
      final mid = event[channelCount * 3 * i + j * 3 + 1];
      final lsb = event[channelCount * 3 * i + j * 3 + 2];
      final value = toDouble(msb, mid, lsb);
      res[j][i] = value;
    }
  }
  return res;
}