Line data Source code
1 1 : /** @file 2 : * @brief BLE mesh statistic APIs. 3 : */ 4 : 5 : /* 6 : * Copyright (c) 2023 Nordic Semiconductor ASA 7 : * 8 : * SPDX-License-Identifier: Apache-2.0 9 : */ 10 : 11 : #ifndef ZEPHYR_INCLUDE_BLUETOOTH_MESH_STATISTIC_H_ 12 : #define ZEPHYR_INCLUDE_BLUETOOTH_MESH_STATISTIC_H_ 13 : 14 : #include <stdint.h> 15 : 16 : /** 17 : * @brief Statistic 18 : * @defgroup bt_mesh_stat Statistic 19 : * @ingroup bt_mesh 20 : * @{ 21 : */ 22 : 23 : #ifdef __cplusplus 24 : extern "C" { 25 : #endif 26 : 27 : /** The structure that keeps statistics of mesh frames handling. */ 28 1 : struct bt_mesh_statistic { 29 : /** All received frames passed basic validation and decryption. */ 30 : /** Received frames over advertiser. */ 31 1 : uint32_t rx_adv; 32 : /** Received frames over loopback. */ 33 1 : uint32_t rx_loopback; 34 : /** Received frames over proxy. */ 35 1 : uint32_t rx_proxy; 36 : /** Received over unknown interface. */ 37 1 : uint32_t rx_uknown; 38 : /** Counter of frames that were initiated to relay over advertiser bearer. */ 39 1 : uint32_t tx_adv_relay_planned; 40 : /** Counter of frames that succeeded relaying over advertiser bearer. */ 41 1 : uint32_t tx_adv_relay_succeeded; 42 : /** Counter of frames that were initiated to send over advertiser bearer locally. */ 43 1 : uint32_t tx_local_planned; 44 : /** Counter of frames that succeeded to send over advertiser bearer locally. */ 45 1 : uint32_t tx_local_succeeded; 46 : /** Counter of frames that were initiated to send over friend bearer. */ 47 1 : uint32_t tx_friend_planned; 48 : /** Counter of frames that succeeded to send over friend bearer. */ 49 1 : uint32_t tx_friend_succeeded; 50 : }; 51 : 52 : /** @brief Get mesh frame handling statistic. 53 : * 54 : * @param st BLE mesh statistic. 55 : */ 56 1 : void bt_mesh_stat_get(struct bt_mesh_statistic *st); 57 : 58 : /** @brief Reset mesh frame handling statistic. 59 : */ 60 1 : void bt_mesh_stat_reset(void); 61 : 62 : #ifdef __cplusplus 63 : } 64 : #endif 65 : /** 66 : * @} 67 : */ 68 : 69 : #endif /* ZEPHYR_INCLUDE_BLUETOOTH_MESH_STATISTIC_H_ */