예제 #1
0
        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);
            }
        }
예제 #2
0
 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);
 }