import Toybox.Lang; // Value object for a protocol entry. Serialized as a plain Dictionary // so Application.Storage can persist it. class Event { public var type as String; public var timestamp as Number; // unix seconds public var lat as Float or Null; public var lon as Float or Null; public var accuracy as Float or Null; function initialize(type as String, timestamp as Number, lat as Float or Null, lon as Float or Null, accuracy as Float or Null) { self.type = type; self.timestamp = timestamp; self.lat = lat; self.lon = lon; self.accuracy = accuracy; } function toDict() as Dictionary { return { "t" => type, "ts" => timestamp, "lat" => lat, "lon" => lon, "acc" => accuracy }; } static function fromDict(d as Dictionary) as Event { return new Event( d["t"] as String, d["ts"] as Number, d["lat"] as Float or Null, d["lon"] as Float or Null, d["acc"] as Float or Null ); } }