NightScout.swift 2.6 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137
  1. //
  2. // NightScout.swift
  3. // LoopFollow
  4. //
  5. // Created by Jon Fawcett on 6/16/20.
  6. // Copyright © 2020 Jon Fawcett. All rights reserved.
  7. //
  8. import Foundation
  9. import UIKit
  10. extension MainViewController {
  11. //NS Cage Struct
  12. struct cageData: Codable {
  13. var created_at: String
  14. }
  15. struct sageData: Codable {
  16. var created_at: String
  17. }
  18. struct iageData: Codable {
  19. var created_at: String
  20. }
  21. //NS Basal Profile Struct
  22. struct basalProfileStruct: Codable {
  23. var value: Double
  24. var time: String
  25. var timeAsSeconds: Double
  26. }
  27. //NS Basal Data Struct
  28. struct basalGraphStruct: Codable {
  29. var basalRate: Double
  30. var date: TimeInterval
  31. }
  32. //NS Bolus Data Struct
  33. struct bolusGraphStruct: Codable {
  34. var value: Double
  35. var date: TimeInterval
  36. var sgv: Int
  37. }
  38. //NS Bolus Data Struct
  39. struct carbGraphStruct: Codable {
  40. var value: Double
  41. var date: TimeInterval
  42. var sgv: Int
  43. var absorptionTime: Int
  44. }
  45. func isStaleData() -> Bool {
  46. if bgData.count > 0 {
  47. let now = dateTimeUtils.getNowTimeIntervalUTC()
  48. let lastReadingTime = bgData.last!.date
  49. let secondsAgo = now - lastReadingTime
  50. if secondsAgo >= 20*60 {
  51. return true
  52. } else {
  53. return false
  54. }
  55. } else {
  56. return false
  57. }
  58. }
  59. func clearOldTempBasal()
  60. {
  61. basalData.removeAll()
  62. updateBasalGraph()
  63. }
  64. func clearOldBolus()
  65. {
  66. bolusData.removeAll()
  67. updateBolusGraph()
  68. }
  69. func clearOldSmb()
  70. {
  71. smbData.removeAll()
  72. updateSmbGraph()
  73. updateChartRenderers()
  74. }
  75. func clearOldCarb()
  76. {
  77. carbData.removeAll()
  78. updateCarbGraph()
  79. }
  80. func clearOldBGCheck()
  81. {
  82. bgCheckData.removeAll()
  83. updateBGCheckGraph()
  84. }
  85. func clearOldOverride()
  86. {
  87. overrideGraphData.removeAll()
  88. updateOverrideGraph()
  89. }
  90. func clearOldTempTarget()
  91. {
  92. tempTargetGraphData.removeAll()
  93. updateTempTargetGraph()
  94. updateChartRenderers()
  95. }
  96. func clearOldSuspend()
  97. {
  98. suspendGraphData.removeAll()
  99. updateSuspendGraph()
  100. }
  101. func clearOldResume()
  102. {
  103. resumeGraphData.removeAll()
  104. updateResumeGraph()
  105. }
  106. func clearOldSensor()
  107. {
  108. sensorStartGraphData.removeAll()
  109. updateSensorStart()
  110. }
  111. func clearOldNotes()
  112. {
  113. noteGraphData.removeAll()
  114. updateNotes()
  115. }
  116. }