LCOV - code coverage report
Current view: top level - zephyr/bluetooth/audio - ccid.h Coverage Total Hit
Test: new.info Lines: 100.0 % 5 5
Test Date: 2025-09-05 20:47:19

            Line data    Source code
       1            1 : /**
       2              :  * @file
       3              :  * @brief Header for Bluetooth Audio Content Control Identifier.
       4              :  *
       5              :  * Copyright (c) 2020 Bose Corporation
       6              :  * Copyright (c) 2021-2024 Nordic Semiconductor ASA
       7              :  *
       8              :  * SPDX-License-Identifier: Apache-2.0
       9              :  */
      10              : 
      11              : #ifndef ZEPHYR_INCLUDE_BLUETOOTH_AUDIO_CCID_H_
      12              : #define ZEPHYR_INCLUDE_BLUETOOTH_AUDIO_CCID_H_
      13              : 
      14              : /**
      15              :  * @brief Bluetooth Content Control Identifier (CCID)
      16              :  * @defgroup bt_ccid Bluetooth Content Control Identifier
      17              :  *
      18              :  * @since 3.7
      19              :  * @version 0.8.0
      20              :  *
      21              :  * @ingroup bluetooth
      22              :  * @{
      23              :  *
      24              :  * The Content Control Identifier (CCID) API manages CCIDs for @ref BT_UUID_CCID characteristics.
      25              :  */
      26              : 
      27              : #include <stdint.h>
      28              : 
      29              : #include <zephyr/bluetooth/gatt.h>
      30              : 
      31              : #ifdef __cplusplus
      32              : extern "C" {
      33              : #endif
      34              : 
      35              : /** Minimum CCID value */
      36            1 : #define BT_CCID_MIN 0
      37              : /** Maximum CCID value */
      38            1 : #define BT_CCID_MAX 255
      39              : 
      40              : /**
      41              :  * @brief Allocates a CCID value.
      42              :  *
      43              :  * This should always be called right before registering a GATT service that contains a
      44              :  * @ref BT_UUID_CCID characteristic. Allocating a CCID without registering the characteristic
      45              :  * may (in very rare cases) result in duplicated CCIDs on the device.
      46              :  *
      47              :  * Requires that @kconfig{CONFIG_BT_CONN} is enabled.
      48              :  *
      49              :  * @retval ccid 8-bit unsigned CCID value on success
      50              :  * @retval -ENOMEM No more CCIDs can be allocated
      51              :  */
      52            1 : int bt_ccid_alloc_value(void);
      53              : 
      54              : /**
      55              :  * @brief Get the GATT attribute of a CCID value
      56              :  *
      57              :  * Searches the current GATT database for a CCID characteristic that has the supplied CCID value.
      58              :  *
      59              :  * Requires that @kconfig{CONFIG_BT_CONN} is enabled.
      60              :  *
      61              :  * @param ccid The CCID to search for
      62              :  *
      63              :  * @retval NULL None was found
      64              :  * @retval attr Pointer to a GATT attribute
      65              :  */
      66            1 : const struct bt_gatt_attr *bt_ccid_find_attr(uint8_t ccid);
      67              : 
      68              : /** @} */
      69              : 
      70              : #ifdef __cplusplus
      71              : }
      72              : #endif
      73              : 
      74              : #endif /* ZEPHYR_INCLUDE_BLUETOOTH_AUDIO_CCID_H_ */
        

Generated by: LCOV version 2.0-1