blob: 10d5fcfb66114de6b322370d0b29a7891837221b [file] [log] [blame]
/*
* Copyright (c) 2022 Nordic Semiconductor ASA
*
* SPDX-License-Identifier: Apache-2.0
*/
#ifndef ZEPHYR_INCLUDE_BLUETOOTH_AUDIO_CAP_H_
#define ZEPHYR_INCLUDE_BLUETOOTH_AUDIO_CAP_H_
/**
* @brief Common Audio Profile (CAP)
*
* @defgroup bt_cap Common Audio Profile (CAP)
*
* @ingroup bluetooth
* @{
*
* [Experimental] Users should note that the APIs can change
* as a part of ongoing development.
*/
#include <zephyr/types.h>
#include <zephyr/bluetooth/audio/csis.h>
#ifdef __cplusplus
extern "C" {
#endif
/**
* @brief Register the Common Audio Service
*
* This will register and enable the service and make it discoverable by
* clients. This will also register a Coordinated Set Identification
* Service instance.
*
* This shall only be done as a server, and requires
* @kconfig{BT_CAP_ACCEPTOR_SET_MEMBER}. If @kconfig{BT_CAP_ACCEPTOR_SET_MEMBER}
* is not enabled, the Common Audio Service will by statically registered.
*
* @param[in] param Coordinated Set Identification Service register parameters.
* @param[out] csis Pointer to the registered Coordinated Set Identification
* Service.
*
* @return 0 if success, errno on failure.
*/
int bt_cap_acceptor_register(const struct bt_csis_register_param *param,
struct bt_csis **csis);
#ifdef __cplusplus
}
#endif
/**
* @}
*/
#endif /* ZEPHYR_INCLUDE_BLUETOOTH_AUDIO_CAP_H_ */