ChangeTempBasalCarelinkMessageBody.swift 681 B

123456789101112131415161718192021222324252627
  1. //
  2. // ChangeTempBasalCarelinkMessageBody.swift
  3. // Naterade
  4. //
  5. // Created by Nathan Racklyeft on 3/6/16.
  6. // Copyright © 2016 Nathan Racklyeft. All rights reserved.
  7. //
  8. import Foundation
  9. public class ChangeTempBasalCarelinkMessageBody: CarelinkLongMessageBody {
  10. public convenience init(unitsPerHour: Double, duration: TimeInterval) {
  11. let length = 3
  12. let strokesPerUnit: Double = 40
  13. let strokes = Int(unitsPerHour * strokesPerUnit)
  14. let timeSegments = Int(duration / TimeInterval(30 * 60))
  15. let data = Data(hexadecimalString: String(format: "%02x%04x%02x", length, strokes, timeSegments))!
  16. self.init(rxData: data)!
  17. }
  18. }