protected override Datum ConvertSampleToDatum(HKSample sample) { HKQuantitySample quantitySample = sample as HKQuantitySample; if (quantitySample == null) return null; else return new HeightDatum(new DateTimeOffset(quantitySample.StartDate.ToDateTime()), quantitySample.Quantity.GetDoubleValue(HKUnit.Inch)); }
protected override Datum ConvertSampleToDatum(HKSample sample) { HKQuantitySample quantitySample = sample as HKQuantitySample; if (quantitySample == null) { return(null); } else { return(new BodyMassIndexDatum(new DateTimeOffset(quantitySample.StartDate.ToDateTime(), TimeSpan.Zero), quantitySample.Quantity.GetDoubleValue(HKUnit.Count))); } }
protected override Datum ConvertSampleToDatum(HKSample sample) { HKQuantitySample quantitySample = sample as HKQuantitySample; if (quantitySample == null) { return(null); } else { return(new HeightDatum(new DateTimeOffset(quantitySample.StartDate.ToDateTime()), quantitySample.Quantity.GetDoubleValue(HKUnit.Inch))); } }
protected override Datum ConvertSampleToDatum(HKSample sample) { HKQuantitySample quantitySample = sample as HKQuantitySample; if (quantitySample == null) { return(null); } else { return(new DistanceWalkingRunningDatum(new DateTimeOffset(quantitySample.StartDate.ToDateTime(), TimeSpan.Zero), quantitySample.Quantity.GetDoubleValue(HKUnit.Mile))); } }
/*public bool IsAuthorizedToWrite(HealthData.DataType dataType) * { * if (IsDataTypeAvailable(dataType)) * { * return _healthStore.GetAuthorizationStatus(HKQuantityType.Create(dataType.ToHealthKit().TypeIdentifier)) * .HasFlag(HKAuthorizationStatus.SharingAuthorized); * } * * return false; * }*/ double ReadValue(HKSample sample, HKUnit unit) { switch (sample) { case HKQuantitySample qtySample: return(qtySample.Quantity.GetDoubleValue(unit)); case HKCategorySample cateSample: return(cateSample.Value); default: return(-1); } }
protected abstract Datum ConvertSampleToDatum(HKSample sample);