public void handle_today_activity(byte[] pack, int handle) { TodayActivity ta = new TodayActivity(); int element = get_first_sub_element(pack, handle); while (element != -1) { byte[] type_buf = get_element_type(pack, element); byte[] value_buf = get_element_data(pack, element); switch (type_buf[0]) { case SUB_TYPE_TODAY_ATIME: ta.time = bytesToShort(value_buf, 0); break; case SUB_TYPE_TODAY_STEPS: ta.steps = bytesToShort(value_buf, 0); break; case SUB_TYPE_TODAY_CAL: ta.calories = bytesToInt(value_buf, 0) / 100; break; case SUB_TYPE_TODAY_DIST: ta.distance = (double)bytesToInt(value_buf, 0) / 100; break; } element = get_next_sub_element(pack, handle, element); } if (this.OnTodayActivityReceived != null) { OnTodayActivityReceived(ta); } }
private void OnTodayActivityReceived (TodayActivity ta) { KreyosUtils.Log("BluetoothManager::OnTodayActivityReceived", ""); ObserverInfo info = new ObserverInfo(); info.Command = EBTEvent.BTE_OnTodaysActivity; info.TodaysData = ta; BluetoothObserver.Instance.Trigger(EBTEvent.BTE_OnTodaysActivity, info); }