31 lines
621 B
C
31 lines
621 B
C
/*
|
|
* Copyright (c) 2024 Croxel, Inc.
|
|
*
|
|
* SPDX-License-Identifier: Apache-2.0
|
|
*/
|
|
|
|
#include "nus_internal.h"
|
|
|
|
#if defined(CONFIG_BT_ZEPHYR_NUS_DEFAULT_INSTANCE)
|
|
BT_NUS_INST_DEFINE(nus_def);
|
|
struct bt_nus_inst *bt_nus_inst_default(void)
|
|
{
|
|
return &nus_def;
|
|
}
|
|
#else
|
|
struct bt_nus_inst *bt_nus_inst_default(void) { return NULL; }
|
|
#endif
|
|
|
|
struct bt_nus_inst *bt_nus_inst_get_from_attr(const struct bt_gatt_attr *attr)
|
|
{
|
|
STRUCT_SECTION_FOREACH(bt_nus_inst, instance) {
|
|
for (size_t i = 0 ; i < instance->svc->attr_count ; i++) {
|
|
if (attr == &instance->svc->attrs[i]) {
|
|
return instance;
|
|
}
|
|
}
|
|
}
|
|
|
|
return NULL;
|
|
}
|