Zephyr API Documentation
2.7.0-rc2
A Scalable Open Source RTOS
|
Object Transfer Service (OTS) More...
Data Structures | |
struct | bt_ots_obj_type |
Type of an OTS object. More... | |
struct | bt_ots_obj_size |
Descriptor for OTS Object Size parameter. More... | |
struct | bt_ots_obj_metadata |
Descriptor for OTS object initialization. More... | |
struct | bt_ots_feat |
Features of the OTS. More... | |
struct | bt_ots_cb |
OTS callback structure. More... | |
struct | bt_ots_init |
Descriptor for OTS initialization. More... | |
Enumerations | |
enum | { BT_OTS_OBJ_PROP_DELETE = 0 , BT_OTS_OBJ_PROP_EXECUTE = 1 , BT_OTS_OBJ_PROP_READ = 2 , BT_OTS_OBJ_PROP_WRITE = 3 , BT_OTS_OBJ_PROP_APPEND = 4 , BT_OTS_OBJ_PROP_TRUNCATE = 5 , BT_OTS_OBJ_PROP_PATCH = 6 , BT_OTS_OBJ_PROP_MARKED = 7 } |
Properties of an OTS object. More... | |
enum | { BT_OTS_OACP_FEAT_CREATE = 0 , BT_OTS_OACP_FEAT_DELETE = 1 , BT_OTS_OACP_FEAT_CHECKSUM = 2 , BT_OTS_OACP_FEAT_EXECUTE = 3 , BT_OTS_OACP_FEAT_READ = 4 , BT_OTS_OACP_FEAT_WRITE = 5 , BT_OTS_OACP_FEAT_APPEND = 6 , BT_OTS_OACP_FEAT_TRUNCATE = 7 , BT_OTS_OACP_FEAT_PATCH = 8 , BT_OTS_OACP_FEAT_ABORT = 9 } |
Object Action Control Point Feature bits. More... | |
enum | { BT_OTS_OLCP_FEAT_GO_TO = 0 , BT_OTS_OLCP_FEAT_ORDER = 1 , BT_OTS_OLCP_FEAT_NUM_REQ = 2 , BT_OTS_OLCP_FEAT_CLEAR = 3 } |
Object List Control Point Feature bits. More... | |
Functions | |
int | bt_ots_obj_add (struct bt_ots *ots, struct bt_ots_obj_metadata *obj_init) |
Add an object to the OTS instance. More... | |
int | bt_ots_obj_delete (struct bt_ots *ots, uint64_t id) |
Delete an object from the OTS instance. More... | |
void * | bt_ots_svc_decl_get (struct bt_ots *ots) |
Get the service declaration attribute. More... | |
int | bt_ots_init (struct bt_ots *ots, struct bt_ots_init *ots_init) |
Initialize the OTS instance. More... | |
struct bt_ots * | bt_ots_free_instance_get (void) |
Get a free instance of OTS from the pool. More... | |
static int | bt_ots_obj_id_to_str (uint64_t obj_id, char *str, size_t len) |
Converts binary OTS Object ID to string. More... | |
Object Transfer Service (OTS)
[Experimental] Users should note that the APIs can change as a part of ongoing development.
#define BT_OTS_OACP_GET_FEAT_ABORT | ( | feat | ) | ((feat) & BIT(BT_OTS_OACP_FEAT_ABORT)) |
#include <include/bluetooth/services/ots.h>
Get BT_OTS_OACP_FEAT_ABORT feature.
feat | OTS features. |
#define BT_OTS_OACP_GET_FEAT_APPEND | ( | feat | ) | ((feat) & BIT(BT_OTS_OACP_FEAT_APPEND)) |
#include <include/bluetooth/services/ots.h>
Get BT_OTS_OACP_FEAT_APPEND feature.
feat | OTS features. |
#define BT_OTS_OACP_GET_FEAT_CHECKSUM | ( | feat | ) | ((feat) & BIT(BT_OTS_OACP_FEAT_CHECKSUM)) |
#include <include/bluetooth/services/ots.h>
Get BT_OTS_OACP_FEAT_CHECKSUM feature.
feat | OTS features. |
#define BT_OTS_OACP_GET_FEAT_CREATE | ( | feat | ) | ((feat) & BIT(BT_OTS_OACP_FEAT_CREATE)) |
#include <include/bluetooth/services/ots.h>
Get BT_OTS_OACP_FEAT_CREATE feature.
feat | OTS features. |
#define BT_OTS_OACP_GET_FEAT_DELETE | ( | feat | ) | ((feat) & BIT(BT_OTS_OACP_FEAT_DELETE)) |
#include <include/bluetooth/services/ots.h>
Get BT_OTS_OACP_FEAT_DELETE feature.
feat | OTS features. |
#define BT_OTS_OACP_GET_FEAT_EXECUTE | ( | feat | ) | ((feat) & BIT(BT_OTS_OACP_FEAT_EXECUTE)) |
#include <include/bluetooth/services/ots.h>
Get BT_OTS_OACP_FEAT_EXECUTE feature.
feat | OTS features. |
#define BT_OTS_OACP_GET_FEAT_PATCH | ( | feat | ) | ((feat) & BIT(BT_OTS_OACP_FEAT_PATCH)) |
#include <include/bluetooth/services/ots.h>
Get BT_OTS_OACP_FEAT_PATCH feature.
feat | OTS features. |
#define BT_OTS_OACP_GET_FEAT_READ | ( | feat | ) | ((feat) & BIT(BT_OTS_OACP_FEAT_READ)) |
#include <include/bluetooth/services/ots.h>
Get BT_OTS_OACP_FEAT_READ feature.
feat | OTS features. |
#define BT_OTS_OACP_GET_FEAT_TRUNCATE | ( | feat | ) | ((feat) & BIT(BT_OTS_OACP_FEAT_TRUNCATE)) |
#include <include/bluetooth/services/ots.h>
Get BT_OTS_OACP_FEAT_TRUNCATE feature.
feat | OTS features. |
#define BT_OTS_OACP_GET_FEAT_WRITE | ( | feat | ) | ((feat) & BIT(BT_OTS_OACP_FEAT_WRITE)) |
#include <include/bluetooth/services/ots.h>
Get BT_OTS_OACP_FEAT_WRITE feature.
feat | OTS features. |
#define BT_OTS_OACP_SET_FEAT_ABORT | ( | feat | ) | WRITE_BIT(feat, BT_OTS_OACP_FEAT_ABORT, 1) |
#include <include/bluetooth/services/ots.h>
Set BT_OTS_OACP_FEAT_ABORT feature.
feat | OTS features. |
#define BT_OTS_OACP_SET_FEAT_APPEND | ( | feat | ) | WRITE_BIT(feat, BT_OTS_OACP_FEAT_APPEND, 1) |
#include <include/bluetooth/services/ots.h>
Set BT_OTS_OACP_FEAT_APPEND feature.
feat | OTS features. |
#define BT_OTS_OACP_SET_FEAT_CHECKSUM | ( | feat | ) | WRITE_BIT(feat, BT_OTS_OACP_FEAT_CHECKSUM, 1) |
#include <include/bluetooth/services/ots.h>
Set BT_OTS_OACP_FEAT_CHECKSUM feature.
feat | OTS features. |
#define BT_OTS_OACP_SET_FEAT_CREATE | ( | feat | ) | WRITE_BIT(feat, BT_OTS_OACP_FEAT_CREATE, 1) |
#include <include/bluetooth/services/ots.h>
Set BT_OTS_OACP_SET_FEAT_CREATE feature.
feat | OTS features. |
#define BT_OTS_OACP_SET_FEAT_DELETE | ( | feat | ) | WRITE_BIT(feat, BT_OTS_OACP_FEAT_DELETE, 1) |
#include <include/bluetooth/services/ots.h>
Set BT_OTS_OACP_FEAT_DELETE feature.
feat | OTS features. |
#define BT_OTS_OACP_SET_FEAT_EXECUTE | ( | feat | ) | WRITE_BIT(feat, BT_OTS_OACP_FEAT_EXECUTE, 1) |
#include <include/bluetooth/services/ots.h>
Set BT_OTS_OACP_FEAT_EXECUTE feature.
feat | OTS features. |
#define BT_OTS_OACP_SET_FEAT_PATCH | ( | feat | ) | WRITE_BIT(feat, BT_OTS_OACP_FEAT_PATCH, 1) |
#include <include/bluetooth/services/ots.h>
Set BT_OTS_OACP_FEAT_PATCH feature.
feat | OTS features. |
#define BT_OTS_OACP_SET_FEAT_READ | ( | feat | ) | WRITE_BIT(feat, BT_OTS_OACP_FEAT_READ, 1) |
#include <include/bluetooth/services/ots.h>
Set BT_OTS_OACP_FEAT_READ feature.
feat | OTS features. |
#define BT_OTS_OACP_SET_FEAT_TRUNCATE | ( | feat | ) | WRITE_BIT(feat, BT_OTS_OACP_FEAT_TRUNCATE, 1) |
#include <include/bluetooth/services/ots.h>
Set BT_OTS_OACP_FEAT_TRUNCATE feature.
feat | OTS features. |
#define BT_OTS_OACP_SET_FEAT_WRITE | ( | feat | ) | WRITE_BIT(feat, BT_OTS_OACP_FEAT_WRITE, 1) |
#include <include/bluetooth/services/ots.h>
Set BT_OTS_OACP_FEAT_WRITE feature.
feat | OTS features. |
#define BT_OTS_OBJ_GET_PROP_APPEND | ( | prop | ) | ((prop) & BIT(BT_OTS_OBJ_PROP_APPEND)) |
#include <include/bluetooth/services/ots.h>
Get BT_OTS_OBJ_PROP_APPEND property.
prop | Object properties. |
#define BT_OTS_OBJ_GET_PROP_DELETE | ( | prop | ) | ((prop) & BIT(BT_OTS_OBJ_PROP_DELETE)) |
#include <include/bluetooth/services/ots.h>
Get BT_OTS_OBJ_PROP_DELETE property.
prop | Object properties. |
#define BT_OTS_OBJ_GET_PROP_EXECUTE | ( | prop | ) | ((prop) & BIT(BT_OTS_OBJ_PROP_EXECUTE)) |
#include <include/bluetooth/services/ots.h>
Get BT_OTS_OBJ_PROP_EXECUTE property.
prop | Object properties. |
#define BT_OTS_OBJ_GET_PROP_MARKED | ( | prop | ) | ((prop) & BIT(BT_OTS_OBJ_PROP_MARKED)) |
#include <include/bluetooth/services/ots.h>
Get BT_OTS_OBJ_PROP_MARKED property.
prop | Object properties. |
#define BT_OTS_OBJ_GET_PROP_PATCH | ( | prop | ) | ((prop) & BIT(BT_OTS_OBJ_PROP_PATCH)) |
#include <include/bluetooth/services/ots.h>
Get BT_OTS_OBJ_PROP_PATCH property.
prop | Object properties. |
#define BT_OTS_OBJ_GET_PROP_READ | ( | prop | ) | ((prop) & BIT(BT_OTS_OBJ_PROP_READ)) |
#include <include/bluetooth/services/ots.h>
Get BT_OTS_OBJ_PROP_READ property.
prop | Object properties. |
#define BT_OTS_OBJ_GET_PROP_TRUNCATE | ( | prop | ) | ((prop) & BIT(BT_OTS_OBJ_PROP_TRUNCATE)) |
#include <include/bluetooth/services/ots.h>
Get BT_OTS_OBJ_PROP_TRUNCATE property.
prop | Object properties. |
#define BT_OTS_OBJ_GET_PROP_WRITE | ( | prop | ) | ((prop) & BIT(BT_OTS_OBJ_PROP_WRITE)) |
#include <include/bluetooth/services/ots.h>
Get BT_OTS_OBJ_PROP_WRITE property.
prop | Object properties. |
#define BT_OTS_OBJ_ID_MASK BIT64_MASK(48) |
#include <include/bluetooth/services/ots.h>
Mask for OTS object IDs, preserving the 48 bits.
#define BT_OTS_OBJ_ID_MAX 0xFFFFFFFFFFFF |
#include <include/bluetooth/services/ots.h>
Maximum allowed value for object ID (except ID for directory listing)
#define BT_OTS_OBJ_ID_MIN 0x000000000100 |
#include <include/bluetooth/services/ots.h>
Minimum allowed value for object ID (except ID for directory listing)
#define BT_OTS_OBJ_ID_SIZE 6 |
#include <include/bluetooth/services/ots.h>
Size of OTS object ID (in bytes).
#define BT_OTS_OBJ_ID_STR_LEN 15 |
#include <include/bluetooth/services/ots.h>
Length of OTS object ID string (in bytes).
#define BT_OTS_OBJ_SET_PROP_APPEND | ( | prop | ) | WRITE_BIT(prop, BT_OTS_OBJ_PROP_APPEND, 1) |
#include <include/bluetooth/services/ots.h>
Set BT_OTS_OBJ_PROP_APPEND property.
prop | Object properties. |
#define BT_OTS_OBJ_SET_PROP_DELETE | ( | prop | ) | WRITE_BIT(prop, BT_OTS_OBJ_PROP_DELETE, 1) |
#include <include/bluetooth/services/ots.h>
Set BT_OTS_OBJ_PROP_DELETE property.
prop | Object properties. |
#define BT_OTS_OBJ_SET_PROP_EXECUTE | ( | prop | ) | WRITE_BIT(prop, BT_OTS_OBJ_PROP_EXECUTE, 1) |
#include <include/bluetooth/services/ots.h>
Set BT_OTS_OBJ_PROP_EXECUTE property.
prop | Object properties. |
#define BT_OTS_OBJ_SET_PROP_MARKED | ( | prop | ) | WRITE_BIT(prop, BT_OTS_OBJ_PROP_MARKED, 1) |
#include <include/bluetooth/services/ots.h>
Set BT_OTS_OBJ_SET_PROP_MARKED property.
prop | Object properties. |
#define BT_OTS_OBJ_SET_PROP_PATCH | ( | prop | ) | WRITE_BIT(prop, BT_OTS_OBJ_PROP_PATCH, 1) |
#include <include/bluetooth/services/ots.h>
Set BT_OTS_OBJ_PROP_PATCH property.
prop | Object properties. |
#define BT_OTS_OBJ_SET_PROP_READ | ( | prop | ) | WRITE_BIT(prop, BT_OTS_OBJ_PROP_READ, 1) |
#include <include/bluetooth/services/ots.h>
Set BT_OTS_OBJ_PROP_READ property.
prop | Object properties. |
#define BT_OTS_OBJ_SET_PROP_TRUNCATE | ( | prop | ) | WRITE_BIT(prop, BT_OTS_OBJ_PROP_TRUNCATE, 1) |
#include <include/bluetooth/services/ots.h>
Set BT_OTS_OBJ_PROP_TRUNCATE property.
prop | Object properties. |
#define BT_OTS_OBJ_SET_PROP_WRITE | ( | prop | ) | WRITE_BIT(prop, BT_OTS_OBJ_PROP_WRITE, 1) |
#include <include/bluetooth/services/ots.h>
Set BT_OTS_OBJ_PROP_WRITE property.
prop | Object properties. |
#define BT_OTS_OLCP_GET_FEAT_CLEAR | ( | feat | ) | ((feat) & BIT(BT_OTS_OLCP_FEAT_CLEAR)) |
#include <include/bluetooth/services/ots.h>
Get BT_OTS_OLCP_GET_FEAT_CLEAR feature.
feat | OTS features. |
#define BT_OTS_OLCP_GET_FEAT_GO_TO | ( | feat | ) | ((feat) & BIT(BT_OTS_OLCP_FEAT_GO_TO)) |
#include <include/bluetooth/services/ots.h>
Get BT_OTS_OLCP_GET_FEAT_GO_TO feature.
feat | OTS features. |
#define BT_OTS_OLCP_GET_FEAT_NUM_REQ | ( | feat | ) | ((feat) & BIT(BT_OTS_OLCP_FEAT_NUM_REQ)) |
#include <include/bluetooth/services/ots.h>
Get BT_OTS_OLCP_GET_FEAT_NUM_REQ feature.
feat | OTS features. |
#define BT_OTS_OLCP_GET_FEAT_ORDER | ( | feat | ) | ((feat) & BIT(BT_OTS_OLCP_FEAT_ORDER)) |
#include <include/bluetooth/services/ots.h>
Get BT_OTS_OLCP_GET_FEAT_ORDER feature.
feat | OTS features. |
#define BT_OTS_OLCP_SET_FEAT_CLEAR | ( | feat | ) | WRITE_BIT(feat, BT_OTS_OLCP_FEAT_CLEAR, 1) |
#include <include/bluetooth/services/ots.h>
Set BT_OTS_OLCP_FEAT_CLEAR feature.
feat | OTS features. |
#define BT_OTS_OLCP_SET_FEAT_GO_TO | ( | feat | ) | WRITE_BIT(feat, BT_OTS_OLCP_FEAT_GO_TO, 1) |
#include <include/bluetooth/services/ots.h>
Set BT_OTS_OLCP_FEAT_GO_TO feature.
feat | OTS features. |
#define BT_OTS_OLCP_SET_FEAT_NUM_REQ | ( | feat | ) | WRITE_BIT(feat, BT_OTS_OLCP_FEAT_NUM_REQ, 1) |
#include <include/bluetooth/services/ots.h>
Set BT_OTS_OLCP_FEAT_NUM_REQ feature.
feat | OTS features. |
#define BT_OTS_OLCP_SET_FEAT_ORDER | ( | feat | ) | WRITE_BIT(feat, BT_OTS_OLCP_FEAT_ORDER, 1) |
#include <include/bluetooth/services/ots.h>
Set BT_OTS_OLCP_FEAT_ORDER feature.
feat | OTS features. |
#define OTS_OBJ_ID_DIR_LIST 0x000000000000 |
#include <include/bluetooth/services/ots.h>
ID of the Directory Listing Object.
anonymous enum |
#include <include/bluetooth/services/ots.h>
Properties of an OTS object.
anonymous enum |
#include <include/bluetooth/services/ots.h>
Object Action Control Point Feature bits.
anonymous enum |
#include <include/bluetooth/services/ots.h>
Object List Control Point Feature bits.
struct bt_ots * bt_ots_free_instance_get | ( | void | ) |
#include <include/bluetooth/services/ots.h>
Get a free instance of OTS from the pool.
int bt_ots_init | ( | struct bt_ots * | ots, |
struct bt_ots_init * | ots_init | ||
) |
#include <include/bluetooth/services/ots.h>
Initialize the OTS instance.
ots | OTS instance. |
ots_init | OTS initialization descriptor. |
int bt_ots_obj_add | ( | struct bt_ots * | ots, |
struct bt_ots_obj_metadata * | obj_init | ||
) |
#include <include/bluetooth/services/ots.h>
Add an object to the OTS instance.
This function adds an object to the OTS database. When the object is being added, a callback obj_created() is called to notify the user about a new object ID.
ots | OTS instance. |
obj_init | Meta data of the object. |
int bt_ots_obj_delete | ( | struct bt_ots * | ots, |
uint64_t | id | ||
) |
#include <include/bluetooth/services/ots.h>
Delete an object from the OTS instance.
This function deletes an object from the OTS database. When the object is deleted a callback obj_deleted() is called to notify the user about this event. At this point, it is possible to free allocated buffer for object data.
ots | OTS instance. |
id | ID of the object to be deleted (uint48). |
|
inlinestatic |
#include <include/bluetooth/services/ots.h>
Converts binary OTS Object ID to string.
obj_id | Object ID. |
str | Address of user buffer with enough room to store formatted string containing binary Object ID. |
len | Length of data to be copied to user string buffer. Refer to BT_OTS_OBJ_ID_STR_LEN about recommended value. |
void * bt_ots_svc_decl_get | ( | struct bt_ots * | ots | ) |
#include <include/bluetooth/services/ots.h>
Get the service declaration attribute.
This function is enabled for CONFIG_BT_OTS_SECONDARY_SVC configuration. The first service attribute can be included in any other GATT service.
ots | OTS instance. |