blob: 00621d00563aaa5b89135e740337bcac2bac3c0f [file] [log] [blame]
// Copyright 2021 The Chromium OS Authors. All rights reserved.
// Use of this source code is governed by a BSD-style license that can be
// found in the LICENSE file.
#ifndef METRICS_STRUCTURED_C_STRUCTURED_METRICS_H_
#define METRICS_STRUCTURED_C_STRUCTURED_METRICS_H_
#include <stdint.h>
#include <brillo/brillo_export.h>
#if defined(__cplusplus)
extern "C" {
#endif
// C wrapper for
// metrics::structured::events::bluetooth::BluetoothAdapterStateChanged.
BRILLO_EXPORT void BluetoothAdapterStateChanged(const char* boot_id,
int64_t system_time,
bool is_floss,
int state);
// C wrapper for
// metrics::structured::events::bluetooth::BluetoothPairingStateChanged.
BRILLO_EXPORT void BluetoothPairingStateChanged(const char* boot_id,
int64_t system_time,
const char* device_id,
int device_type,
int state);
// C wrapper for
// metrics::structured::events::bluetooth::BluetoothAclConnectionStateChanged.
BRILLO_EXPORT void BluetoothAclConnectionStateChanged(const char* boot_id,
int64_t system_time,
bool is_floss,
const char* device_id,
int device_type,
int connection_direction,
int connection_initiator,
int state_change_type,
int state);
// C wrapper for
// metrics::structured::events::bluetooth::
// BluetoothProfileConnectionStateChanged.
BRILLO_EXPORT void BluetoothProfileConnectionStateChanged(const char* boot_id,
int64_t system_time,
const char* device_id,
int state_change_type,
int profile,
int state);
// C wrapper for
// metrics::structured::events::bluetooth::BluetoothDeviceInfoReport.
BRILLO_EXPORT void BluetoothDeviceInfoReport(const char* boot_id,
int64_t system_time,
const char* device_id,
int device_type,
int device_class,
int device_category,
int vendor_id,
int vendor_id_source,
int product_id,
int product_version);
// C wrapper for
// metrics::structured::events::bluetooth::BluetoothAudioQualityReport.
BRILLO_EXPORT void BluetoothAudioQualityReport(const char* boot_id,
int64_t system_time,
const char* device_id,
int profile,
int quality_type,
int64_t average,
int64_t std_dev,
int64_t percentile95);
// C wrapper for
// metrics::structured::events::bluetooth_device::BluetoothDeviceInfo.
BRILLO_EXPORT void BluetoothDeviceInfo(int device_type,
int device_class,
int device_category,
int vendor_id,
int vendor_id_source,
int product_id,
int product_version);
// C wrapper for
// metrics::structured::events::bluetooth_chipset::BluetoothChipsetInfo.
BRILLO_EXPORT void BluetoothChipsetInfo(int vendor_id,
int product_id,
int transport,
const char* chipset_string);
#if defined(__cplusplus)
}
#endif
#endif // METRICS_STRUCTURED_C_STRUCTURED_METRICS_H_