1e4bc35bf8bfe06ea174607fde3b645f5f6e9b941Jakub Pawlowski/******************************************************************************
2e4bc35bf8bfe06ea174607fde3b645f5f6e9b941Jakub Pawlowski *
3e4bc35bf8bfe06ea174607fde3b645f5f6e9b941Jakub Pawlowski *  Copyright (C) 2016 Google, Inc.
4e4bc35bf8bfe06ea174607fde3b645f5f6e9b941Jakub Pawlowski *
5e4bc35bf8bfe06ea174607fde3b645f5f6e9b941Jakub Pawlowski *  Licensed under the Apache License, Version 2.0 (the "License");
6e4bc35bf8bfe06ea174607fde3b645f5f6e9b941Jakub Pawlowski *  you may not use this file except in compliance with the License.
7e4bc35bf8bfe06ea174607fde3b645f5f6e9b941Jakub Pawlowski *  You may obtain a copy of the License at:
8e4bc35bf8bfe06ea174607fde3b645f5f6e9b941Jakub Pawlowski *
9e4bc35bf8bfe06ea174607fde3b645f5f6e9b941Jakub Pawlowski *  http://www.apache.org/licenses/LICENSE-2.0
10e4bc35bf8bfe06ea174607fde3b645f5f6e9b941Jakub Pawlowski *
11e4bc35bf8bfe06ea174607fde3b645f5f6e9b941Jakub Pawlowski *  Unless required by applicable law or agreed to in writing, software
12e4bc35bf8bfe06ea174607fde3b645f5f6e9b941Jakub Pawlowski *  distributed under the License is distributed on an "AS IS" BASIS,
13e4bc35bf8bfe06ea174607fde3b645f5f6e9b941Jakub Pawlowski *  WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
14e4bc35bf8bfe06ea174607fde3b645f5f6e9b941Jakub Pawlowski *  See the License for the specific language governing permissions and
15e4bc35bf8bfe06ea174607fde3b645f5f6e9b941Jakub Pawlowski *  limitations under the License.
16e4bc35bf8bfe06ea174607fde3b645f5f6e9b941Jakub Pawlowski *
17e4bc35bf8bfe06ea174607fde3b645f5f6e9b941Jakub Pawlowski ******************************************************************************/
18e4bc35bf8bfe06ea174607fde3b645f5f6e9b941Jakub Pawlowski
19e4bc35bf8bfe06ea174607fde3b645f5f6e9b941Jakub Pawlowski
20e4bc35bf8bfe06ea174607fde3b645f5f6e9b941Jakub Pawlowski#define LOG_TAG "bt_osi_metrics"
21e4bc35bf8bfe06ea174607fde3b645f5f6e9b941Jakub Pawlowski
22e4bc35bf8bfe06ea174607fde3b645f5f6e9b941Jakub Pawlowskiextern "C" {
23e4bc35bf8bfe06ea174607fde3b645f5f6e9b941Jakub Pawlowski#include "osi/include/metrics.h"
24e4bc35bf8bfe06ea174607fde3b645f5f6e9b941Jakub Pawlowski}
25e4bc35bf8bfe06ea174607fde3b645f5f6e9b941Jakub Pawlowski
26e4bc35bf8bfe06ea174607fde3b645f5f6e9b941Jakub Pawlowskivoid metrics_pair_event(uint32_t disconnect_reason, uint64_t timestamp_ms,
27e4bc35bf8bfe06ea174607fde3b645f5f6e9b941Jakub Pawlowski                        uint32_t device_class, device_type_t device_type) {
28e4bc35bf8bfe06ea174607fde3b645f5f6e9b941Jakub Pawlowski  //TODO(jpawlowski): implement
29e4bc35bf8bfe06ea174607fde3b645f5f6e9b941Jakub Pawlowski}
30e4bc35bf8bfe06ea174607fde3b645f5f6e9b941Jakub Pawlowski
31e4bc35bf8bfe06ea174607fde3b645f5f6e9b941Jakub Pawlowskivoid metrics_wake_event(wake_event_type_t type, const char *requestor,
32e4bc35bf8bfe06ea174607fde3b645f5f6e9b941Jakub Pawlowski                        const char *name, uint64_t timestamp_ms) {
33e4bc35bf8bfe06ea174607fde3b645f5f6e9b941Jakub Pawlowski  //TODO(jpawlowski): implement
34e4bc35bf8bfe06ea174607fde3b645f5f6e9b941Jakub Pawlowski}
35e4bc35bf8bfe06ea174607fde3b645f5f6e9b941Jakub Pawlowski
36e4bc35bf8bfe06ea174607fde3b645f5f6e9b941Jakub Pawlowskivoid metrics_scan_event(bool start, const char *initator, scan_tech_t type,
37e4bc35bf8bfe06ea174607fde3b645f5f6e9b941Jakub Pawlowski                        uint32_t results, uint64_t timestamp_ms) {
38e4bc35bf8bfe06ea174607fde3b645f5f6e9b941Jakub Pawlowski  //TODO(jpawlowski): implement
39e4bc35bf8bfe06ea174607fde3b645f5f6e9b941Jakub Pawlowski}
40e4bc35bf8bfe06ea174607fde3b645f5f6e9b941Jakub Pawlowski
41e4bc35bf8bfe06ea174607fde3b645f5f6e9b941Jakub Pawlowskivoid metrics_a2dp_session(int64_t session_duration_sec,
42e4bc35bf8bfe06ea174607fde3b645f5f6e9b941Jakub Pawlowski                          const char *disconnect_reason,
43e4bc35bf8bfe06ea174607fde3b645f5f6e9b941Jakub Pawlowski                          uint32_t device_class,
44e4bc35bf8bfe06ea174607fde3b645f5f6e9b941Jakub Pawlowski                          int32_t media_timer_min_ms,
45e4bc35bf8bfe06ea174607fde3b645f5f6e9b941Jakub Pawlowski                          int32_t media_timer_max_ms,
46e4bc35bf8bfe06ea174607fde3b645f5f6e9b941Jakub Pawlowski                          int32_t media_timer_avg_ms,
47e4bc35bf8bfe06ea174607fde3b645f5f6e9b941Jakub Pawlowski                          int32_t buffer_overruns_max_count,
48e4bc35bf8bfe06ea174607fde3b645f5f6e9b941Jakub Pawlowski                          int32_t buffer_overruns_total,
49e4bc35bf8bfe06ea174607fde3b645f5f6e9b941Jakub Pawlowski                          float buffer_underruns_average,
50e4bc35bf8bfe06ea174607fde3b645f5f6e9b941Jakub Pawlowski                          int32_t buffer_underruns_count) {
51e4bc35bf8bfe06ea174607fde3b645f5f6e9b941Jakub Pawlowski  //TODO(jpawlowski): implement
52e4bc35bf8bfe06ea174607fde3b645f5f6e9b941Jakub Pawlowski}
53e4bc35bf8bfe06ea174607fde3b645f5f6e9b941Jakub Pawlowski
54e4bc35bf8bfe06ea174607fde3b645f5f6e9b941Jakub Pawlowskivoid metrics_write(int fd, bool clear) {
55e4bc35bf8bfe06ea174607fde3b645f5f6e9b941Jakub Pawlowski  //TODO(jpawlowski): implement
56e4bc35bf8bfe06ea174607fde3b645f5f6e9b941Jakub Pawlowski}
57e4bc35bf8bfe06ea174607fde3b645f5f6e9b941Jakub Pawlowski
58e4bc35bf8bfe06ea174607fde3b645f5f6e9b941Jakub Pawlowskivoid metrics_print(int fd, bool clear) {
59e4bc35bf8bfe06ea174607fde3b645f5f6e9b941Jakub Pawlowski  //TODO(jpawlowski): implement
60e4bc35bf8bfe06ea174607fde3b645f5f6e9b941Jakub Pawlowski}
61