RadioAdapter.swift 1.4 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960
  1. //
  2. // RadioAdapter.swift
  3. // RileyLink
  4. //
  5. // Created by Pete Schwamb on 2/26/17.
  6. // Copyright © 2017 Pete Schwamb. All rights reserved.
  7. //
  8. import Foundation
  9. public struct RadioAdapter {
  10. let hardware: String
  11. let frequency: Double?
  12. let name: String?
  13. let lastTuned: Date?
  14. let firmwareVersion: String
  15. let RSSI: Int?
  16. let pumpRSSI: Int?
  17. public init(hardware: String, frequency: Double?, name: String, lastTuned: Date?, firmwareVersion: String, RSSI: Int?, pumpRSSI: Int?) {
  18. self.hardware = hardware
  19. self.frequency = frequency
  20. self.name = name
  21. self.lastTuned = lastTuned
  22. self.firmwareVersion = firmwareVersion
  23. self.RSSI = RSSI
  24. self.pumpRSSI = pumpRSSI
  25. }
  26. public var dictionaryRepresentation: [String: Any] {
  27. var rval = [String: Any]()
  28. rval["hardware"] = hardware
  29. if let frequency = frequency {
  30. rval["frequency"] = frequency
  31. }
  32. if let name = name {
  33. rval["name"] = name
  34. }
  35. if let lastTuned = lastTuned {
  36. rval["lastTuned"] = TimeFormat.timestampStrFromDate(lastTuned)
  37. }
  38. rval["firmwareVersion"] = firmwareVersion
  39. if let RSSI = RSSI {
  40. rval["RSSI"] = RSSI
  41. }
  42. if let pumpRSSI = pumpRSSI {
  43. rval["pumpRSSI"] = pumpRSSI
  44. }
  45. return rval
  46. }
  47. }