Files
Shuanglei Tao f353d23368 Initial commit
2024-11-11 15:35:36 +08:00

180 lines
9.0 KiB
C

/* Copyright (c) 2014 Nordic Semiconductor. All Rights Reserved.
*
* The information contained herein is property of Nordic Semiconductor ASA.
* Terms and conditions of usage are described in detail in NORDIC
* SEMICONDUCTOR STANDARD SOFTWARE LICENSE AGREEMENT.
*
* Licensees are granted free, non-transferable use of the information. NO
* WARRANTY of ANY KIND is provided. This heading must NOT be removed from
* the file.
*
*/
#ifndef _CONN_MW_BLE_H
#define _CONN_MW_BLE_H
#include <stdint.h>
/**@brief Handles @ref sd_ble_tx_buffer_count_get command and prepares response.
*
* @param[in] p_rx_buf Pointer to input buffer.
* @param[in] rx_buf_len Size of p_rx_buf.
* @param[out] p_tx_buf Pointer to output buffer.
* @param[in,out] p_tx_buf_len \c in: size of \p p_tx_buf buffer.
* \c out: Length of valid data in \p p_tx_buf.
*
* @retval NRF_SUCCESS Handler success.
* @retval NRF_ERROR_NULL Handler failure. NULL pointer supplied.
* @retval NRF_ERROR_INVALID_LENGTH Handler failure. Incorrect buffer length.
* @retval NRF_ERROR_INVALID_PARAM Handler failure. Invalid operation type.
*/
uint32_t conn_mw_ble_tx_buffer_count_get(uint8_t const * const p_rx_buf,
uint32_t rx_buf_len,
uint8_t * const p_tx_buf,
uint32_t * const p_tx_buf_len);
/**@brief Handles @ref sd_ble_uuid_vs_add command and prepares response.
*
* @param[in] p_rx_buf Pointer to input buffer.
* @param[in] rx_buf_len Size of p_rx_buf.
* @param[out] p_tx_buf Pointer to output buffer.
* @param[in,out] p_tx_buf_len \c in: size of \p p_tx_buf buffer.
* \c out: Length of valid data in \p p_tx_buf.
*
* @retval NRF_SUCCESS Handler success.
* @retval NRF_ERROR_NULL Handler failure. NULL pointer supplied.
* @retval NRF_ERROR_INVALID_LENGTH Handler failure. Incorrect buffer length.
* @retval NRF_ERROR_INVALID_PARAM Handler failure. Invalid operation type.
*/
uint32_t conn_mw_ble_uuid_vs_add(uint8_t const * const p_rx_buf,
uint32_t rx_buf_len,
uint8_t * const p_tx_buf,
uint32_t * const p_tx_buf_len);
/**@brief Handles @ref sd_ble_uuid_decode command and prepares response.
*
* @param[in] p_rx_buf Pointer to input buffer.
* @param[in] rx_buf_len Size of p_rx_buf.
* @param[out] p_tx_buf Pointer to output buffer.
* @param[in,out] p_tx_buf_len \c in: size of \p p_tx_buf buffer.
* \c out: Length of valid data in \p p_tx_buf.
*
* @retval NRF_SUCCESS Handler success.
* @retval NRF_ERROR_NULL Handler failure. NULL pointer supplied.
* @retval NRF_ERROR_INVALID_LENGTH Handler failure. Incorrect buffer length.
* @retval NRF_ERROR_INVALID_PARAM Handler failure. Invalid operation type.
*/
uint32_t conn_mw_ble_uuid_decode(uint8_t const * const p_rx_buf,
uint32_t rx_buf_len,
uint8_t * const p_tx_buf,
uint32_t * const p_tx_buf_len);
/**@brief Handles @ref sd_ble_uuid_encode command and prepares response.
*
* @param[in] p_rx_buf Pointer to input buffer.
* @param[in] rx_buf_len Size of p_rx_buf.
* @param[out] p_tx_buf Pointer to output buffer.
* @param[in,out] p_tx_buf_len \c in: size of \p p_tx_buf buffer.
* \c out: Length of valid data in \p p_tx_buf.
*
* @retval NRF_SUCCESS Handler success.
* @retval NRF_ERROR_NULL Handler failure. NULL pointer supplied.
* @retval NRF_ERROR_INVALID_LENGTH Handler failure. Incorrect buffer length.
* @retval NRF_ERROR_INVALID_PARAM Handler failure. Invalid operation type.
*/
uint32_t conn_mw_ble_uuid_encode(uint8_t const * const p_rx_buf,
uint32_t rx_buf_len,
uint8_t * const p_tx_buf,
uint32_t * const p_tx_buf_len);
/**@brief Handles @ref sd_ble_version_get command and prepares response.
*
* @param[in] p_rx_buf Pointer to input buffer.
* @param[in] rx_buf_len Size of p_rx_buf.
* @param[out] p_tx_buf Pointer to output buffer.
* @param[in,out] p_tx_buf_len \c in: size of \p p_tx_buf buffer.
* \c out: Length of valid data in \p p_tx_buf.
*
* @retval NRF_SUCCESS Handler success.
* @retval NRF_ERROR_NULL Handler failure. NULL pointer supplied.
* @retval NRF_ERROR_INVALID_LENGTH Handler failure. Incorrect buffer length.
* @retval NRF_ERROR_INVALID_PARAM Handler failure. Invalid operation type.
*/
uint32_t conn_mw_ble_version_get(uint8_t const * const p_rx_buf,
uint32_t rx_buf_len,
uint8_t * const p_tx_buf,
uint32_t * const p_tx_buf_len);
/**@brief Handles @ref sd_ble_opt_get command and prepares response.
*
* @param[in] p_rx_buf Pointer to input buffer.
* @param[in] rx_buf_len Size of p_rx_buf.
* @param[out] p_tx_buf Pointer to output buffer.
* @param[in,out] p_tx_buf_len \c in: size of \p p_tx_buf buffer.
* \c out: Length of valid data in \p p_tx_buf.
*
* @retval NRF_SUCCESS Handler success.
* @retval NRF_ERROR_NULL Handler failure. NULL pointer supplied.
* @retval NRF_ERROR_INVALID_LENGTH Handler failure. Incorrect buffer length.
* @retval NRF_ERROR_INVALID_PARAM Handler failure. Invalid operation type.
*/
uint32_t conn_mw_ble_opt_get(uint8_t const * const p_rx_buf,
uint32_t rx_buf_len,
uint8_t * const p_tx_buf,
uint32_t * const p_tx_buf_len);
/**@brief Handles @ref sd_ble_opt_set command and prepares response.
*
* @param[in] p_rx_buf Pointer to input buffer.
* @param[in] rx_buf_len Size of p_rx_buf.
* @param[out] p_tx_buf Pointer to output buffer.
* @param[in,out] p_tx_buf_len \c in: size of \p p_tx_buf buffer.
* \c out: Length of valid data in \p p_tx_buf.
*
* @retval NRF_SUCCESS Handler success.
* @retval NRF_ERROR_NULL Handler failure. NULL pointer supplied.
* @retval NRF_ERROR_INVALID_LENGTH Handler failure. Incorrect buffer length.
* @retval NRF_ERROR_INVALID_PARAM Handler failure. Invalid operation type.
*/
uint32_t conn_mw_ble_opt_set(uint8_t const * const p_rx_buf,
uint32_t rx_buf_len,
uint8_t * const p_tx_buf,
uint32_t * const p_tx_buf_len);
/**@brief Handles @ref sd_ble_enable command and prepares response.
*
* @param[in] p_rx_buf Pointer to input buffer.
* @param[in] rx_buf_len Size of p_rx_buf.
* @param[out] p_tx_buf Pointer to output buffer.
* @param[in,out] p_tx_buf_len \c in: size of \p p_tx_buf buffer.
* \c out: Length of valid data in \p p_tx_buf.
*
* @retval NRF_SUCCESS Handler success.
* @retval NRF_ERROR_NULL Handler failure. NULL pointer supplied.
* @retval NRF_ERROR_INVALID_LENGTH Handler failure. Incorrect buffer length.
* @retval NRF_ERROR_INVALID_PARAM Handler failure. Invalid operation type.
*/
uint32_t conn_mw_ble_enable(uint8_t const * const p_rx_buf,
uint32_t rx_buf_len,
uint8_t * const p_tx_buf,
uint32_t * const p_tx_buf_len);
/**@brief Handles @ref sd_ble_user_mem_reply command and prepares response.
*
* @param[in] p_rx_buf Pointer to input buffer.
* @param[in] rx_buf_len Size of p_rx_buf.
* @param[out] p_tx_buf Pointer to output buffer.
* @param[in,out] p_tx_buf_len \c in: size of \p p_tx_buf buffer.
* \c out: Length of valid data in \p p_tx_buf.
*
* @retval NRF_SUCCESS Handler success.
* @retval NRF_ERROR_NULL Handler failure. NULL pointer supplied.
* @retval NRF_ERROR_INVALID_LENGTH Handler failure. Incorrect buffer length.
* @retval NRF_ERROR_INVALID_PARAM Handler failure. Invalid operation type.
*/
uint32_t conn_mw_ble_user_mem_reply(uint8_t const * const p_rx_buf,
uint32_t rx_buf_len,
uint8_t * const p_tx_buf,
uint32_t * const p_tx_buf_len);
#endif //_CONN_MW_BLE_H