47 lines
1.0 KiB
C
47 lines
1.0 KiB
C
|
|
#ifndef BLINKY_BLE_BOND_MULTI_EVENT_H_
|
||
|
|
#define BLINKY_BLE_BOND_MULTI_EVENT_H_
|
||
|
|
|
||
|
|
#include <stdint.h>
|
||
|
|
|
||
|
|
#include <app_event_manager.h>
|
||
|
|
#include <app_event_manager_profiler_tracer.h>
|
||
|
|
#include <zephyr/bluetooth/addr.h>
|
||
|
|
|
||
|
|
#ifdef __cplusplus
|
||
|
|
extern "C" {
|
||
|
|
#endif
|
||
|
|
|
||
|
|
#define BLE_BOND_MULTI_DISPLAY_NAME_MAX_LEN 32U
|
||
|
|
#define BLE_BOND_MULTI_BLE_SLOT_COUNT 3U
|
||
|
|
#define BLE_BOND_MULTI_DONGLE_SLOT_ID 4U
|
||
|
|
|
||
|
|
enum ble_bond_multi_op {
|
||
|
|
BLE_BOND_MULTI_OP_NONE = 0,
|
||
|
|
BLE_BOND_MULTI_OP_REFRESH,
|
||
|
|
BLE_BOND_MULTI_OP_SWITCH,
|
||
|
|
BLE_BOND_MULTI_OP_ERASE,
|
||
|
|
};
|
||
|
|
|
||
|
|
struct ble_bond_multi_slot_meta {
|
||
|
|
bool occupied;
|
||
|
|
bt_addr_le_t last_peer_addr;
|
||
|
|
char display_name[BLE_BOND_MULTI_DISPLAY_NAME_MAX_LEN];
|
||
|
|
};
|
||
|
|
|
||
|
|
struct ble_bond_multi_event {
|
||
|
|
struct app_event_header header;
|
||
|
|
uint8_t current_slot;
|
||
|
|
uint8_t active_identity_id;
|
||
|
|
enum ble_bond_multi_op op;
|
||
|
|
uint8_t slot_occupied_bitmap;
|
||
|
|
struct ble_bond_multi_slot_meta slots[BLE_BOND_MULTI_BLE_SLOT_COUNT];
|
||
|
|
};
|
||
|
|
|
||
|
|
APP_EVENT_TYPE_DECLARE(ble_bond_multi_event);
|
||
|
|
|
||
|
|
#ifdef __cplusplus
|
||
|
|
}
|
||
|
|
#endif
|
||
|
|
|
||
|
|
#endif /* BLINKY_BLE_BOND_MULTI_EVENT_H_ */
|