calculateBasalHeartRate method

int calculateBasalHeartRate(
  1. List<int?> list
)

Implementation

int calculateBasalHeartRate(List<int?> list) {
  // todo: consider low variations

  int sum = 0;
  int basalHeartRate = 0;
  int errorCount = 0;
  try {
    for (int i = 0; i < list.length; i++) {
      if (list[i]! < 60) {
        errorCount++;
        continue;
      }
      sum += list[i]!;
      //Log.i("clean bpm",cleanBaselineEpochBpm[i]+"");
    }
    basalHeartRate = (sum / (list.length - errorCount)).truncate();

    // rounding of to nearest multiple of 5
    if (basalHeartRate % 5 >= 3) {
      basalHeartRate = basalHeartRate - (basalHeartRate % 5);
      basalHeartRate += 5;
    } else {
      basalHeartRate = basalHeartRate - (basalHeartRate % 5);
    }
    // rounding off ends

  } catch (ex) {
    print(ex.toString());
  }
  return basalHeartRate;
}