Zephyr API Documentation 4.4.99
A Scalable Open Source RTOS
Loading...
Searching...
No Matches
bip.h
Go to the documentation of this file.
1/* bip.h - Bluetooth Basic Imaging Profile handling */
2
3/*
4 * Copyright 2025-2026 NXP
5 *
6 * SPDX-License-Identifier: Apache-2.0
7 */
8
9#ifndef ZEPHYR_INCLUDE_BLUETOOTH_BIP_H_
10#define ZEPHYR_INCLUDE_BLUETOOTH_BIP_H_
11
18
19#include <zephyr/kernel.h>
20#include <errno.h>
21
27
28#ifdef __cplusplus
29extern "C" {
30#endif
31
33#define BT_BIP_HDR_TYPE_GET_CAPS "x-bt/img-capabilities"
35#define BT_BIP_HDR_TYPE_GET_IMAGE_LIST "x-bt/img-listing"
37#define BT_BIP_HDR_TYPE_GET_IMAGE_PROPERTIES "x-bt/img-properties"
39#define BT_BIP_HDR_TYPE_GET_IMAGE "x-bt/img-img"
41#define BT_BIP_HDR_TYPE_GET_LINKED_THUMBNAIL "x-bt/img-thm"
43#define BT_BIP_HDR_TYPE_GET_LINKED_ATTACHMENT "x-bt/img-attachment"
45#define BT_BIP_HDR_TYPE_GET_PARTIAL_IMAGE "x-bt/img-partial"
47#define BT_BIP_HDR_TYPE_GET_MONITORING_IMAGE "x-bt/img-monitoring"
49#define BT_BIP_HDR_TYPE_GET_STATUS "x-bt/img-status"
51#define BT_BIP_HDR_TYPE_PUT_IMAGE "x-bt/img-img"
53#define BT_BIP_HDR_TYPE_PUT_LINKED_THUMBNAIL "x-bt/img-thm"
55#define BT_BIP_HDR_TYPE_PUT_LINKED_ATTACHMENT "x-bt/img-attachment"
57#define BT_BIP_HDR_TYPE_REMOTE_DISPLAY "x-bt/img-display"
59#define BT_BIP_HDR_TYPE_DELETE_IMAGE "x-bt/img-img"
61#define BT_BIP_HDR_TYPE_START_PRINT "x-bt/img-print"
63#define BT_BIP_HDR_TYPE_START_ARCHIVE "x-bt/img-archive"
64
70#define BT_BIP_HEADER_ID_IMG_DESC 0x71
71
77#define BT_BIP_HEADER_ID_IMG_HANDLE 0x30
78
106
108struct bt_bip;
109
124 void (*connected)(struct bt_conn *conn, struct bt_bip *bip);
125
133 void (*disconnected)(struct bt_bip *bip);
134};
135
144
155 int (*accept)(struct bt_conn *conn, struct bt_bip_rfcomm_server *server,
156 struct bt_bip **bip);
157};
158
166
175int bt_bip_rfcomm_connect(struct bt_conn *conn, struct bt_bip *bip, uint8_t channel);
176
184
193
204 int (*accept)(struct bt_conn *conn, struct bt_bip_l2cap_server *server,
205 struct bt_bip **bip);
206};
207
215
224int bt_bip_l2cap_connect(struct bt_conn *conn, struct bt_bip *bip, uint16_t psm);
225
233
257
271
287
305
333
380
386struct bt_bip {
389
391 struct bt_goep goep;
392
395
398
400 atomic_t _transport_state;
401
403 uint8_t _supp_caps;
404
406 uint16_t _supp_feats;
407
409 uint32_t _supp_funcs;
410
412 sys_slist_t _clients;
413
415 sys_slist_t _servers;
416
418 sys_snode_t _node;
419};
420
435int bt_bip_set_supported_capabilities(struct bt_bip *bip, uint8_t capabilities);
436
452
468
484
486struct bt_bip_server;
487
502 void (*connect)(struct bt_bip_server *server, uint8_t version, uint16_t mopl,
503 struct net_buf *buf);
504
511 void (*disconnect)(struct bt_bip_server *server, struct net_buf *buf);
512
519 void (*abort)(struct bt_bip_server *server, struct net_buf *buf);
520
528 void (*get_caps)(struct bt_bip_server *server, bool final, struct net_buf *buf);
529
537 void (*get_image_list)(struct bt_bip_server *server, bool final, struct net_buf *buf);
538
546 void (*get_image_properties)(struct bt_bip_server *server, bool final, struct net_buf *buf);
547
555 void (*get_image)(struct bt_bip_server *server, bool final, struct net_buf *buf);
556
564 void (*get_linked_thumbnail)(struct bt_bip_server *server, bool final, struct net_buf *buf);
565
573 void (*get_linked_attachment)(struct bt_bip_server *server, bool final,
574 struct net_buf *buf);
575
583 void (*get_partial_image)(struct bt_bip_server *server, bool final, struct net_buf *buf);
584
592 void (*get_monitoring_image)(struct bt_bip_server *server, bool final, struct net_buf *buf);
593
601 void (*get_status)(struct bt_bip_server *server, bool final, struct net_buf *buf);
602
610 void (*put_image)(struct bt_bip_server *server, bool final, struct net_buf *buf);
611
619 void (*put_linked_thumbnail)(struct bt_bip_server *server, bool final, struct net_buf *buf);
620
628 void (*put_linked_attachment)(struct bt_bip_server *server, bool final,
629 struct net_buf *buf);
630
638 void (*remote_display)(struct bt_bip_server *server, bool final, struct net_buf *buf);
639
647 void (*delete_image)(struct bt_bip_server *server, bool final, struct net_buf *buf);
648
656 void (*start_print)(struct bt_bip_server *server, bool final, struct net_buf *buf);
657
665 void (*start_archive)(struct bt_bip_server *server, bool final, struct net_buf *buf);
666};
667
669struct bt_bip_client;
670
686 void (*connect)(struct bt_bip_client *client, uint8_t rsp_code, uint8_t version,
687 uint16_t mopl, struct net_buf *buf);
688
696 void (*disconnect)(struct bt_bip_client *client, uint8_t rsp_code, struct net_buf *buf);
697
705 void (*abort)(struct bt_bip_client *client, uint8_t rsp_code, struct net_buf *buf);
706
714 void (*get_caps)(struct bt_bip_client *client, uint8_t rsp_code, struct net_buf *buf);
715
723 void (*get_image_list)(struct bt_bip_client *client, uint8_t rsp_code, struct net_buf *buf);
724
732 void (*get_image_properties)(struct bt_bip_client *client, uint8_t rsp_code,
733 struct net_buf *buf);
734
742 void (*get_image)(struct bt_bip_client *client, uint8_t rsp_code, struct net_buf *buf);
743
751 void (*get_linked_thumbnail)(struct bt_bip_client *client, uint8_t rsp_code,
752 struct net_buf *buf);
753
761 void (*get_linked_attachment)(struct bt_bip_client *client, uint8_t rsp_code,
762 struct net_buf *buf);
763
771 void (*get_partial_image)(struct bt_bip_client *client, uint8_t rsp_code,
772 struct net_buf *buf);
773
781 void (*get_monitoring_image)(struct bt_bip_client *client, uint8_t rsp_code,
782 struct net_buf *buf);
783
791 void (*get_status)(struct bt_bip_client *client, uint8_t rsp_code, struct net_buf *buf);
792
800 void (*put_image)(struct bt_bip_client *client, uint8_t rsp_code, struct net_buf *buf);
801
809 void (*put_linked_thumbnail)(struct bt_bip_client *client, uint8_t rsp_code,
810 struct net_buf *buf);
811
819 void (*put_linked_attachment)(struct bt_bip_client *client, uint8_t rsp_code,
820 struct net_buf *buf);
821
829 void (*remote_display)(struct bt_bip_client *client, uint8_t rsp_code, struct net_buf *buf);
830
838 void (*delete_image)(struct bt_bip_client *client, uint8_t rsp_code, struct net_buf *buf);
839
847 void (*start_print)(struct bt_bip_client *client, uint8_t rsp_code, struct net_buf *buf);
848
856 void (*start_archive)(struct bt_bip_client *client, uint8_t rsp_code, struct net_buf *buf);
857};
858
866 const struct bt_bip_server_cb *_cb;
867
869 struct bt_bip *_bip;
870
872 const struct bt_uuid_128 *_uuid;
873
875 uint32_t _conn_id;
876
878 enum bt_bip_conn_type _type;
879
881 struct bt_obex_server _server;
882
884 uint8_t _opcode;
886 const char *_optype;
887
889 atomic_t _state;
890
892 union {
893 struct bt_bip_client *_primary_client;
894 struct bt_bip_client *_secondary_client;
895 };
896
898 void (*_req_cb)(struct bt_bip_server *server, bool final, struct net_buf *buf);
899
901 sys_snode_t _node;
902};
903
911 const struct bt_bip_client_cb *_cb;
912
914 struct bt_bip *_bip;
915
917 struct bt_uuid_128 _uuid;
918
920 uint32_t _conn_id;
921
923 enum bt_bip_conn_type _type;
924
926 struct bt_obex_client _client;
927
929 atomic_t _state;
930
932 union {
933 struct bt_bip_server *_primary_server;
934 struct bt_bip_server *_secondary_server;
935 };
936
938 void (*_rsp_cb)(struct bt_bip_client *client, uint8_t rsp_code, struct net_buf *buf);
939
941 const char *_req_type;
942
944 sys_snode_t _node;
945};
946
952#define BT_BIP_PRIM_IMAGE_PUSH_CB(_connect, _disconnect, _get_caps, _put_image, \
953 _put_linked_thumbnail, _put_linked_attachment) \
954 { \
955 .connect = _connect, .disconnect = _disconnect, .get_caps = _get_caps, \
956 .put_image = _put_image, .put_linked_thumbnail = _put_linked_thumbnail, \
957 .put_linked_attachment = _put_linked_attachment, \
958 }
959
965#define BT_BIP_PRIM_IMAGE_PULL_CB(_connect, _disconnect, _get_caps, _get_image_list, \
966 _get_image_properties, _get_image, _get_linked_thumbnail, \
967 _get_linked_attachment, _delete_image) \
968 { \
969 .connect = _connect, .disconnect = _disconnect, .get_caps = _get_caps, \
970 .get_image_list = _get_image_list, .get_image_properties = _get_image_properties, \
971 .get_image = _get_image, .get_linked_thumbnail = _get_linked_thumbnail, \
972 .get_linked_attachment = _get_linked_attachment, .delete_image = _delete_image, \
973 }
974
980#define BT_BIP_PRIM_IMAGE_PRINT_CB(_connect, _disconnect, _get_caps, _get_status, _start_print) \
981 { \
982 .connect = _connect, .disconnect = _disconnect, .get_caps = _get_caps, \
983 .get_status = _get_status, .start_print = _start_print, \
984 }
985
991#define BT_BIP_2ND_IMAGE_PRINT_CB(_connect, _disconnect, _get_partial_image) \
992 { \
993 .connect = _connect, .disconnect = _disconnect, \
994 .get_partial_image = _get_partial_image, \
995 }
996
1002#define BT_BIP_PRIM_AUTO_ARCHIVE_CB(_connect, _disconnect, _get_status, _start_archive) \
1003 { \
1004 .connect = _connect, .disconnect = _disconnect, .get_status = _get_status, \
1005 .start_archive = _start_archive, \
1006 }
1007
1013#define BT_BIP_2ND_AUTO_ARCHIVE_CB(_connect, _disconnect, _get_caps, _get_image_list, \
1014 _get_image_properties, _get_image, _get_linked_thumbnail, \
1015 _get_linked_attachment, _delete_image) \
1016 { \
1017 .connect = _connect, .disconnect = _disconnect, .get_caps = _get_caps, \
1018 .get_image_list = _get_image_list, .get_image_properties = _get_image_properties, \
1019 .get_image = _get_image, .get_linked_thumbnail = _get_linked_thumbnail, \
1020 .get_linked_attachment = _get_linked_attachment, .delete_image = _delete_image, \
1021 }
1022
1028#define BT_BIP_PRIM_REMOTE_CAMERA_CB(_connect, _disconnect, _get_image_properties, _get_image, \
1029 _get_linked_thumbnail, _get_monitoring_image) \
1030 { \
1031 .connect = _connect, .disconnect = _disconnect, \
1032 .get_image_properties = _get_image_properties, .get_image = _get_image, \
1033 .get_linked_thumbnail = _get_linked_thumbnail, \
1034 .get_monitoring_image = _get_monitoring_image, \
1035 }
1036
1042#define BT_BIP_PRIM_REMOTE_DISPLAY_CB(_connect, _disconnect, _get_caps, _get_image_list, \
1043 _put_image, _put_linked_thumbnail, _remote_display) \
1044 { \
1045 .connect = _connect, .disconnect = _disconnect, .get_caps = _get_caps, \
1046 .get_image_list = _get_image_list, .put_image = _put_image, \
1047 .put_linked_thumbnail = _put_linked_thumbnail, .remote_display = _remote_display, \
1048 }
1049
1051#define BT_BIP_UUID_IMAGE_PUSH \
1052 (const struct bt_uuid_128 *)BT_UUID_DECLARE_128( \
1053 BT_UUID_128_ENCODE(0xE33D9545, 0x8374, 0x4AD7, 0x9EC5, 0xC16BE31EDE8E))
1054
1056#define BT_BIP_UUID_IMAGE_PULL \
1057 (const struct bt_uuid_128 *)BT_UUID_DECLARE_128( \
1058 BT_UUID_128_ENCODE(0x8EE9B3D0, 0x4608, 0x11D5, 0x841A, 0x0002A5325B4E))
1059
1061#define BT_BIP_UUID_IMAGE_PRINT \
1062 (const struct bt_uuid_128 *)BT_UUID_DECLARE_128( \
1063 BT_UUID_128_ENCODE(0x92353350, 0x4608, 0x11D5, 0x841A, 0x0002A5325B4E))
1064
1066#define BT_BIP_UUID_AUTO_ARCHIVE \
1067 (const struct bt_uuid_128 *)BT_UUID_DECLARE_128( \
1068 BT_UUID_128_ENCODE(0x940126C0, 0x4608, 0x11D5, 0x841A, 0x0002A5325B4E))
1069
1071#define BT_BIP_UUID_REMOTE_CAMERA \
1072 (const struct bt_uuid_128 *)BT_UUID_DECLARE_128( \
1073 BT_UUID_128_ENCODE(0x947E7420, 0x4608, 0x11D5, 0x841A, 0x0002A5325B4E))
1074
1076#define BT_BIP_UUID_REMOTE_DISPLAY \
1077 (const struct bt_uuid_128 *)BT_UUID_DECLARE_128( \
1078 BT_UUID_128_ENCODE(0x94C7CD20, 0x4608, 0x11D5, 0x841A, 0x0002A5325B4E))
1079
1081#define BT_BIP_UUID_REFERENCED_OBJ \
1082 (const struct bt_uuid_128 *)BT_UUID_DECLARE_128( \
1083 BT_UUID_128_ENCODE(0x8E61F95D, 0x1A79, 0x11D4, 0x8EA4, 0x00805F9B9834))
1084
1086#define BT_BIP_UUID_ARCHIVED_OBJ \
1087 (const struct bt_uuid_128 *)BT_UUID_DECLARE_128( \
1088 BT_UUID_128_ENCODE(0x8E61F95E, 0x1A79, 0x11D4, 0x8EA4, 0x00805F9B9834))
1089
1104 enum bt_bip_conn_type type, const struct bt_uuid_128 *uuid,
1105 struct bt_bip_server_cb *cb);
1106
1122 enum bt_bip_conn_type type, const struct bt_uuid_128 *uuid,
1123 struct bt_bip_server_cb *cb,
1124 struct bt_bip_client *primary_client);
1125
1138 struct bt_bip_server *server,
1139 const struct bt_uuid_128 *uuid,
1140 struct bt_bip_server_cb *cb)
1141{
1143 cb);
1144}
1145
1158 struct bt_bip_server *server,
1159 const struct bt_uuid_128 *uuid,
1160 struct bt_bip_server_cb *cb)
1161{
1163 cb);
1164}
1165
1178 struct bt_bip *bip, struct bt_bip_server *server, const struct bt_uuid_128 *uuid,
1179 struct bt_bip_server_cb *cb)
1180{
1183}
1184
1197 struct bt_bip_server *server,
1198 const struct bt_uuid_128 *uuid,
1199 struct bt_bip_server_cb *cb)
1200{
1202 cb);
1203}
1204
1217 struct bt_bip_server *server,
1218 const struct bt_uuid_128 *uuid,
1219 struct bt_bip_server_cb *cb)
1220{
1222 uuid, cb);
1223}
1224
1237 struct bt_bip_server *server,
1238 const struct bt_uuid_128 *uuid,
1239 struct bt_bip_server_cb *cb)
1240{
1242 uuid, cb);
1243}
1244
1259 struct bt_bip *bip, struct bt_bip_server *server, const struct bt_uuid_128 *uuid,
1260 struct bt_bip_server_cb *cb, struct bt_bip_client *primary_client)
1261{
1263 bip, server, BT_BIP_2ND_CONN_TYPE_REFERENCED_OBJECTS, uuid, cb, primary_client);
1264}
1265
1280 struct bt_bip *bip, struct bt_bip_server *server, const struct bt_uuid_128 *uuid,
1281 struct bt_bip_server_cb *cb, struct bt_bip_client *primary_client)
1282{
1284 uuid, cb, primary_client);
1285}
1286
1298
1313 enum bt_bip_conn_type type, struct bt_bip_client_cb *cb,
1314 struct net_buf *buf);
1315
1331 enum bt_bip_conn_type type, struct bt_bip_client_cb *cb,
1332 struct net_buf *buf, struct bt_bip_server *primary_server);
1333
1346 struct bt_bip_client *client,
1347 struct bt_bip_client_cb *cb,
1348 struct net_buf *buf)
1349{
1351 buf);
1352}
1353
1366 struct bt_bip_client *client,
1367 struct bt_bip_client_cb *cb,
1368 struct net_buf *buf)
1369{
1371 buf);
1372}
1373
1386 struct bt_bip *bip, struct bt_bip_client *client, struct bt_bip_client_cb *cb,
1387 struct net_buf *buf)
1388{
1390 bip, client, BT_BIP_PRIM_CONN_TYPE_ADVANCED_IMAGE_PRINTING, cb, buf);
1391}
1392
1405 struct bt_bip_client *client,
1406 struct bt_bip_client_cb *cb,
1407 struct net_buf *buf)
1408{
1410 buf);
1411}
1412
1425 struct bt_bip_client *client,
1426 struct bt_bip_client_cb *cb,
1427 struct net_buf *buf)
1428{
1430 buf);
1431}
1432
1445 struct bt_bip_client *client,
1446 struct bt_bip_client_cb *cb,
1447 struct net_buf *buf)
1448{
1450 buf);
1451}
1452
1466 struct bt_bip *bip, struct bt_bip_client *client, struct bt_bip_client_cb *cb,
1467 struct net_buf *buf, struct bt_bip_server *primary_server)
1468{
1470 cb, buf, primary_server);
1471}
1472
1486 struct bt_bip_client *client,
1487 struct bt_bip_client_cb *cb,
1488 struct net_buf *buf,
1489 struct bt_bip_server *primary_server)
1490{
1492 cb, buf, primary_server);
1493}
1494
1505int bt_bip_connect_rsp(struct bt_bip_server *server, uint8_t rsp_code, struct net_buf *buf);
1506
1516int bt_bip_disconnect(struct bt_bip_client *client, struct net_buf *buf);
1517
1528int bt_bip_disconnect_rsp(struct bt_bip_server *server, uint8_t rsp_code, struct net_buf *buf);
1529
1539int bt_bip_abort(struct bt_bip_client *client, struct net_buf *buf);
1540
1551int bt_bip_abort_rsp(struct bt_bip_server *server, uint8_t rsp_code, struct net_buf *buf);
1552
1566int bt_bip_get_capabilities(struct bt_bip_client *client, bool final, struct net_buf *buf);
1567
1581 struct net_buf *buf);
1582
1600int bt_bip_get_image_list(struct bt_bip_client *client, bool final, struct net_buf *buf);
1601
1615int bt_bip_get_image_list_rsp(struct bt_bip_server *server, uint8_t rsp_code, struct net_buf *buf);
1616
1631int bt_bip_get_image_properties(struct bt_bip_client *client, bool final, struct net_buf *buf);
1632
1648 struct net_buf *buf);
1649
1664int bt_bip_get_image(struct bt_bip_client *client, bool final, struct net_buf *buf);
1665
1679int bt_bip_get_image_rsp(struct bt_bip_server *server, uint8_t rsp_code, struct net_buf *buf);
1680
1695int bt_bip_get_linked_thumbnail(struct bt_bip_client *client, bool final, struct net_buf *buf);
1696
1710 struct net_buf *buf);
1711
1726int bt_bip_get_linked_attachment(struct bt_bip_client *client, bool final, struct net_buf *buf);
1727
1741 struct net_buf *buf);
1742
1759int bt_bip_get_partial_image(struct bt_bip_client *client, bool final, struct net_buf *buf);
1760
1774 struct net_buf *buf);
1775
1791int bt_bip_get_monitoring_image(struct bt_bip_client *client, bool final, struct net_buf *buf);
1792
1807 struct net_buf *buf);
1808
1822int bt_bip_get_status(struct bt_bip_client *client, bool final, struct net_buf *buf);
1823
1834int bt_bip_get_status_rsp(struct bt_bip_server *server, uint8_t rsp_code, struct net_buf *buf);
1835
1850int bt_bip_put_image(struct bt_bip_client *client, bool final, struct net_buf *buf);
1851
1864int bt_bip_put_image_rsp(struct bt_bip_server *server, uint8_t rsp_code, struct net_buf *buf);
1865
1880int bt_bip_put_linked_thumbnail(struct bt_bip_client *client, bool final, struct net_buf *buf);
1881
1893 struct net_buf *buf);
1894
1909int bt_bip_put_linked_attachment(struct bt_bip_client *client, bool final, struct net_buf *buf);
1910
1922 struct net_buf *buf);
1923
1939int bt_bip_remote_display(struct bt_bip_client *client, bool final, struct net_buf *buf);
1940
1953int bt_bip_remote_display_rsp(struct bt_bip_server *server, uint8_t rsp_code, struct net_buf *buf);
1954
1969int bt_bip_delete_image(struct bt_bip_client *client, bool final, struct net_buf *buf);
1970
1981int bt_bip_delete_image_rsp(struct bt_bip_server *server, uint8_t rsp_code, struct net_buf *buf);
1982
1998int bt_bip_start_print(struct bt_bip_client *client, bool final, struct net_buf *buf);
1999
2010int bt_bip_start_print_rsp(struct bt_bip_server *server, uint8_t rsp_code, struct net_buf *buf);
2011
2027int bt_bip_start_archive(struct bt_bip_client *client, bool final, struct net_buf *buf);
2028
2039int bt_bip_start_archive_rsp(struct bt_bip_server *server, uint8_t rsp_code, struct net_buf *buf);
2040
2053
2066
2067#ifdef __cplusplus
2068}
2069#endif
2070
2074
2075#endif /* ZEPHYR_INCLUDE_BLUETOOTH_BIP_H_ */
Bluetooth subsystem core APIs.
Bluetooth UUID handling.
Bluetooth connection handling.
System error numbers.
long atomic_t
Atomic integer variable.
Definition atomic_types.h:31
int bt_bip_put_image_rsp(struct bt_bip_server *server, uint8_t rsp_code, struct net_buf *buf)
Send Put Image response.
int bt_bip_set_supported_capabilities(struct bt_bip *bip, uint8_t capabilities)
Set supported capabilities of BIP responder.
int bt_bip_remote_display(struct bt_bip_client *client, bool final, struct net_buf *buf)
Send Remote Display request.
int bt_bip_connect_rsp(struct bt_bip_server *server, uint8_t rsp_code, struct net_buf *buf)
Send OBEX Connect response.
int bt_bip_remote_display_rsp(struct bt_bip_server *server, uint8_t rsp_code, struct net_buf *buf)
Send Remote Display response.
int bt_bip_get_image_properties(struct bt_bip_client *client, bool final, struct net_buf *buf)
Send Get Image Properties request.
static int bt_bip_secondary_auto_archive_client_connect(struct bt_bip *bip, struct bt_bip_client *client, struct bt_bip_client_cb *cb, struct net_buf *buf, struct bt_bip_server *primary_server)
Connect Secondary Auto Archive OBEX client.
Definition bip.h:1485
int bt_bip_abort_rsp(struct bt_bip_server *server, uint8_t rsp_code, struct net_buf *buf)
Send OBEX Abort response.
int bt_bip_l2cap_disconnect(struct bt_bip *bip)
Disconnect BIP L2CAP connection.
int bt_bip_get_partial_image(struct bt_bip_client *client, bool final, struct net_buf *buf)
Send Get Partial Image request.
static int bt_bip_primary_image_pull_client_connect(struct bt_bip *bip, struct bt_bip_client *client, struct bt_bip_client_cb *cb, struct net_buf *buf)
Connect Primary Image Pull OBEX client.
Definition bip.h:1365
int bt_bip_get_monitoring_image_rsp(struct bt_bip_server *server, uint8_t rsp_code, struct net_buf *buf)
Send Get Monitoring Image response.
bt_bip_role
BIP role types.
Definition bip.h:263
static int bt_bip_primary_remote_camera_client_connect(struct bt_bip *bip, struct bt_bip_client *client, struct bt_bip_client_cb *cb, struct net_buf *buf)
Connect Primary Remote Camera OBEX client.
Definition bip.h:1424
bt_bip_appl_param_tag_id
BIP Application Parameter Tag IDs.
Definition bip.h:84
static int bt_bip_primary_image_pull_server_register(struct bt_bip *bip, struct bt_bip_server *server, const struct bt_uuid_128 *uuid, struct bt_bip_server_cb *cb)
Register Primary Image Pull OBEX server.
Definition bip.h:1157
static int bt_bip_primary_auto_archive_server_register(struct bt_bip *bip, struct bt_bip_server *server, const struct bt_uuid_128 *uuid, struct bt_bip_server_cb *cb)
Register Primary Auto Archive OBEX server.
Definition bip.h:1196
static int bt_bip_primary_image_push_client_connect(struct bt_bip *bip, struct bt_bip_client *client, struct bt_bip_client_cb *cb, struct net_buf *buf)
Connect Primary Image Push OBEX client.
Definition bip.h:1345
int bt_bip_primary_server_register(struct bt_bip *bip, struct bt_bip_server *server, enum bt_bip_conn_type type, const struct bt_uuid_128 *uuid, struct bt_bip_server_cb *cb)
Register a primary BIP OBEX server.
static int bt_bip_primary_remote_camera_server_register(struct bt_bip *bip, struct bt_bip_server *server, const struct bt_uuid_128 *uuid, struct bt_bip_server_cb *cb)
Register Primary Remote Camera OBEX server.
Definition bip.h:1216
int bt_bip_add_header_image_handle(struct net_buf *buf, uint16_t len, const uint8_t *handle)
Add Image Handle header to buffer.
int bt_bip_server_unregister(struct bt_bip_server *server)
Unregister a BIP OBEX server.
static int bt_bip_primary_remote_display_server_register(struct bt_bip *bip, struct bt_bip_server *server, const struct bt_uuid_128 *uuid, struct bt_bip_server_cb *cb)
Register Primary Remote Display OBEX server.
Definition bip.h:1236
int bt_bip_delete_image(struct bt_bip_client *client, bool final, struct net_buf *buf)
Send Delete Image request.
int bt_bip_get_image_rsp(struct bt_bip_server *server, uint8_t rsp_code, struct net_buf *buf)
Send Get Image response.
static int bt_bip_secondary_advanced_image_printing_server_register(struct bt_bip *bip, struct bt_bip_server *server, const struct bt_uuid_128 *uuid, struct bt_bip_server_cb *cb, struct bt_bip_client *primary_client)
Register Secondary Advanced Image Printing OBEX server.
Definition bip.h:1258
int bt_bip_get_status(struct bt_bip_client *client, bool final, struct net_buf *buf)
Send Get Status request.
int bt_bip_get_linked_thumbnail_rsp(struct bt_bip_server *server, uint8_t rsp_code, struct net_buf *buf)
Send Get Linked Thumbnail response.
int bt_bip_rfcomm_connect(struct bt_conn *conn, struct bt_bip *bip, uint8_t channel)
Create transport connection over RFCOMM.
int bt_bip_rfcomm_register(struct bt_bip_rfcomm_server *server)
Register BIP RFCOMM server.
int bt_bip_rfcomm_disconnect(struct bt_bip *bip)
Disconnect BIP RFCOMM connection.
bt_bip_supported_functions
BIP supported functions.
Definition bip.h:344
int bt_bip_get_image_list_rsp(struct bt_bip_server *server, uint8_t rsp_code, struct net_buf *buf)
Send Get Image List response.
int bt_bip_get_linked_attachment_rsp(struct bt_bip_server *server, uint8_t rsp_code, struct net_buf *buf)
Send Get Linked Attachment response.
static int bt_bip_secondary_advanced_image_printing_client_connect(struct bt_bip *bip, struct bt_bip_client *client, struct bt_bip_client_cb *cb, struct net_buf *buf, struct bt_bip_server *primary_server)
Connect Secondary Advanced Image Printing OBEX client.
Definition bip.h:1465
int bt_bip_get_image(struct bt_bip_client *client, bool final, struct net_buf *buf)
Send Get Image request.
int bt_bip_get_status_rsp(struct bt_bip_server *server, uint8_t rsp_code, struct net_buf *buf)
Send Get Status response.
bt_bip_transport_state
BIP transport state.
Definition bip.h:277
int bt_bip_put_linked_attachment(struct bt_bip_client *client, bool final, struct net_buf *buf)
Send Put Linked Attachment request.
int bt_bip_start_print(struct bt_bip_client *client, bool final, struct net_buf *buf)
Send Start Print request.
int bt_bip_put_linked_thumbnail(struct bt_bip_client *client, bool final, struct net_buf *buf)
Send Put Linked Thumbnail request.
static int bt_bip_primary_advanced_image_printing_client_connect(struct bt_bip *bip, struct bt_bip_client *client, struct bt_bip_client_cb *cb, struct net_buf *buf)
Connect Primary Advanced Image Printing OBEX client.
Definition bip.h:1385
int bt_bip_get_image_list(struct bt_bip_client *client, bool final, struct net_buf *buf)
Send Get Image List request.
int bt_bip_start_archive(struct bt_bip_client *client, bool final, struct net_buf *buf)
Send Start Archive request.
static int bt_bip_primary_auto_archive_client_connect(struct bt_bip *bip, struct bt_bip_client *client, struct bt_bip_client_cb *cb, struct net_buf *buf)
Connect Primary Auto Archive OBEX client.
Definition bip.h:1404
int bt_bip_get_image_properties_rsp(struct bt_bip_server *server, uint8_t rsp_code, struct net_buf *buf)
Send Get Image Properties response.
int bt_bip_get_monitoring_image(struct bt_bip_client *client, bool final, struct net_buf *buf)
Send Get Monitoring Image request.
int bt_bip_abort(struct bt_bip_client *client, struct net_buf *buf)
Send OBEX Abort request.
int bt_bip_disconnect(struct bt_bip_client *client, struct net_buf *buf)
Send OBEX Disconnect request.
int bt_bip_secondary_server_register(struct bt_bip *bip, struct bt_bip_server *server, enum bt_bip_conn_type type, const struct bt_uuid_128 *uuid, struct bt_bip_server_cb *cb, struct bt_bip_client *primary_client)
Register a secondary BIP OBEX server.
static int bt_bip_secondary_auto_archive_server_register(struct bt_bip *bip, struct bt_bip_server *server, const struct bt_uuid_128 *uuid, struct bt_bip_server_cb *cb, struct bt_bip_client *primary_client)
Register Secondary Auto Archive OBEX server.
Definition bip.h:1279
int bt_bip_set_supported_features(struct bt_bip *bip, uint16_t features)
Set supported features of BIP responder.
static int bt_bip_primary_remote_display_client_connect(struct bt_bip *bip, struct bt_bip_client *client, struct bt_bip_client_cb *cb, struct net_buf *buf)
Connect Primary Remote Display OBEX client.
Definition bip.h:1444
int bt_bip_put_linked_thumbnail_rsp(struct bt_bip_server *server, uint8_t rsp_code, struct net_buf *buf)
Send Put Linked Thumbnail response.
bt_bip_supported_features
BIP supported features.
Definition bip.h:313
bt_bip_supported_capabilities
BIP supported capabilities.
Definition bip.h:295
int bt_bip_start_archive_rsp(struct bt_bip_server *server, uint8_t rsp_code, struct net_buf *buf)
Send Start Archive response.
int bt_bip_primary_client_connect(struct bt_bip *bip, struct bt_bip_client *client, enum bt_bip_conn_type type, struct bt_bip_client_cb *cb, struct net_buf *buf)
Connect a primary BIP OBEX client.
int bt_bip_delete_image_rsp(struct bt_bip_server *server, uint8_t rsp_code, struct net_buf *buf)
Send Delete Image response.
int bt_bip_put_linked_attachment_rsp(struct bt_bip_server *server, uint8_t rsp_code, struct net_buf *buf)
Send Put Linked Attachment response.
int bt_bip_get_linked_attachment(struct bt_bip_client *client, bool final, struct net_buf *buf)
Send Get Linked Attachment request.
int bt_bip_get_linked_thumbnail(struct bt_bip_client *client, bool final, struct net_buf *buf)
Send Get Linked Thumbnail request.
int bt_bip_disconnect_rsp(struct bt_bip_server *server, uint8_t rsp_code, struct net_buf *buf)
Send OBEX Disconnect response.
int bt_bip_get_partial_image_rsp(struct bt_bip_server *server, uint8_t rsp_code, struct net_buf *buf)
Send Get Partial Image response.
bt_bip_state
BIP connection state.
Definition bip.h:474
int bt_bip_secondary_client_connect(struct bt_bip *bip, struct bt_bip_client *client, enum bt_bip_conn_type type, struct bt_bip_client_cb *cb, struct net_buf *buf, struct bt_bip_server *primary_server)
Connect a secondary BIP OBEX client.
static int bt_bip_primary_advanced_image_printing_server_register(struct bt_bip *bip, struct bt_bip_server *server, const struct bt_uuid_128 *uuid, struct bt_bip_server_cb *cb)
Register Primary Advanced Image Printing OBEX server.
Definition bip.h:1177
int bt_bip_start_print_rsp(struct bt_bip_server *server, uint8_t rsp_code, struct net_buf *buf)
Send Start Print response.
int bt_bip_get_capabilities_rsp(struct bt_bip_server *server, uint8_t rsp_code, struct net_buf *buf)
Send Get Capabilities response.
static int bt_bip_primary_image_push_server_register(struct bt_bip *bip, struct bt_bip_server *server, const struct bt_uuid_128 *uuid, struct bt_bip_server_cb *cb)
Register Primary Image Push OBEX server.
Definition bip.h:1137
int bt_bip_add_header_image_desc(struct net_buf *buf, uint16_t len, const uint8_t *desc)
Add Image Descriptor header to buffer.
int bt_bip_l2cap_connect(struct bt_conn *conn, struct bt_bip *bip, uint16_t psm)
Create transport connection over L2CAP.
int bt_bip_put_image(struct bt_bip_client *client, bool final, struct net_buf *buf)
Send Put Image request.
int bt_bip_get_capabilities(struct bt_bip_client *client, bool final, struct net_buf *buf)
Send Get Capabilities request.
int bt_bip_set_supported_functions(struct bt_bip *bip, uint32_t functions)
Set supported functions of BIP responder.
bt_bip_conn_type
BIP OBEX connection types.
Definition bip.h:239
int bt_bip_l2cap_register(struct bt_bip_l2cap_server *server)
Register BIP L2CAP server.
@ BT_BIP_ROLE_RESPONDER
Connection responder.
Definition bip.h:269
@ BT_BIP_ROLE_INITIATOR
Connection initiator.
Definition bip.h:267
@ BT_BIP_ROLE_UNKNOWN
Unknown role.
Definition bip.h:265
@ BT_BIP_APPL_PARAM_TAG_ID_LIST_START_OFFSET
List start offset parameter.
Definition bip.h:88
@ BT_BIP_APPL_PARAM_TAG_ID_PARTIAL_FILE_START_OFFSET
Partial file start offset parameter.
Definition bip.h:94
@ BT_BIP_APPL_PARAM_TAG_ID_TOTAL_FILE_SIZE
Total file size parameter.
Definition bip.h:96
@ BT_BIP_APPL_PARAM_TAG_ID_SERVICE_ID
Service ID parameter.
Definition bip.h:102
@ BT_BIP_APPL_PARAM_TAG_ID_LATEST_CAPTURED_IMAGES
Latest captured images parameter.
Definition bip.h:90
@ BT_BIP_APPL_PARAM_TAG_ID_END_FLAG
End flag parameter.
Definition bip.h:98
@ BT_BIP_APPL_PARAM_TAG_ID_REMOTE_DISPLAY
Remote display parameter.
Definition bip.h:100
@ BT_BIP_APPL_PARAM_TAG_ID_RETURNED_HANDLES
Number of returned handles parameter.
Definition bip.h:86
@ BT_BIP_APPL_PARAM_TAG_ID_PARTIAL_FILE_LEN
Partial file length parameter.
Definition bip.h:92
@ BT_BIP_APPL_PARAM_TAG_ID_STORE_FLAG
Store flag parameter.
Definition bip.h:104
@ BT_BIP_SUPP_FUNC_GET_LINKED_THUMBNAIL
Get Linked Thumbnail function - supports retrieving image thumbnails.
Definition bip.h:362
@ BT_BIP_SUPP_FUNC_DELETE_IMAGE
Delete Image function - supports deleting images on the peer device.
Definition bip.h:366
@ BT_BIP_SUPP_FUNC_GET_MONITORING_IMAGE
Get Monitoring Image function - supports retrieving monitoring images from remote camera.
Definition bip.h:376
@ BT_BIP_SUPP_FUNC_PUT_LINKED_THUMBNAIL
Put Linked Thumbnail function - supports receiving image thumbnails.
Definition bip.h:352
@ BT_BIP_SUPP_FUNC_GET_CAPS
Get Capabilities function - supports retrieving device capabilities.
Definition bip.h:346
@ BT_BIP_SUPP_FUNC_START_ARCHIVE
Start Archive function - supports initiating archive operations.
Definition bip.h:372
@ BT_BIP_SUPP_FUNC_GET_IMAGE
Get Image function - supports retrieving/sending images.
Definition bip.h:360
@ BT_BIP_SUPP_FUNC_GET_IMAGE_LIST
Get Images List function - supports retrieving available image lists.
Definition bip.h:356
@ BT_BIP_SUPP_FUNC_PUT_LINKED_ATTACHMENT
Put Linked Attachment function - supports receiving image attachments.
Definition bip.h:350
@ BT_BIP_SUPP_FUNC_GET_STATUS
Get Status function - supports retrieving device/operation status.
Definition bip.h:378
@ BT_BIP_SUPP_FUNC_GET_LINKED_ATTACHMENT
Get Linked Attachment function - supports retrieving image attachments.
Definition bip.h:364
@ BT_BIP_SUPP_FUNC_REMOTE_DISPLAY
Remote Display function - supports remote display operations.
Definition bip.h:354
@ BT_BIP_SUPP_FUNC_START_PRINT
Start Print function - supports initiating print operations.
Definition bip.h:368
@ BT_BIP_SUPP_FUNC_GET_PARTIAL_IMAGE
Get Partial Image function - supports retrieving partial image data.
Definition bip.h:370
@ BT_BIP_SUPP_FUNC_GET_IMAGE_PROPERTIES
Get Image Properties function - supports retrieving image metadata.
Definition bip.h:358
@ BT_BIP_SUPP_FUNC_PUT_IMAGE
Put Image function - supports receiving/storing images.
Definition bip.h:348
@ BT_BIP_TRANSPORT_STATE_CONNECTED
Transport is connected.
Definition bip.h:283
@ BT_BIP_TRANSPORT_STATE_DISCONNECTING
Transport is disconnecting.
Definition bip.h:285
@ BT_BIP_TRANSPORT_STATE_CONNECTING
Transport is connecting.
Definition bip.h:281
@ BT_BIP_TRANSPORT_STATE_DISCONNECTED
Transport is disconnected.
Definition bip.h:279
@ BT_BIP_SUPP_FEAT_REMOTE_DISPLAY
Remote Display feature - supports remote display control.
Definition bip.h:331
@ BT_BIP_SUPP_FEAT_IMAGE_PUSH_DISPLAY
Image Push Display feature - supports displaying pushed images.
Definition bip.h:321
@ BT_BIP_SUPP_FEAT_IMAGE_PUSH_STORE
Image Push Store feature - supports storing pushed images permanently.
Definition bip.h:317
@ BT_BIP_SUPP_FEAT_REMOTE_CAMERA
Remote Camera feature - supports remote camera control and image capture.
Definition bip.h:329
@ BT_BIP_SUPP_FEAT_IMAGE_PULL
Image Pull feature - allows pulling/retrieving images from the peer.
Definition bip.h:323
@ BT_BIP_SUPP_FEAT_IMAGE_PUSH
Image Push feature - allows pushing images to the peer device.
Definition bip.h:315
@ BT_BIP_SUPP_FEAT_ADVANCED_IMAGE_PRINT
Advanced Image Printing feature - supports advanced printing operations.
Definition bip.h:325
@ BT_BIP_SUPP_FEAT_IMAGE_PUSH_PRINT
Image Push Print feature - supports printing pushed images directly.
Definition bip.h:319
@ BT_BIP_SUPP_FEAT_AUTO_ARCHIVE
Auto Archive feature - supports automatic archiving of images.
Definition bip.h:327
@ BT_BIP_SUPP_CAP_DISPLAYING
Displaying.
Definition bip.h:303
@ BT_BIP_SUPP_CAP_PRINTING
Printing.
Definition bip.h:301
@ BT_BIP_SUPP_CAP_GENERIC_IMAGE
Generic imaging.
Definition bip.h:297
@ BT_BIP_SUPP_CAP_CAPTURING
Capturing.
Definition bip.h:299
@ BT_BIP_STATE_DISCONNECTING
Connection is being terminated.
Definition bip.h:482
@ BT_BIP_STATE_DISCONNECTED
Connection is disconnected.
Definition bip.h:476
@ BT_BIP_STATE_CONNECTING
Connection is being established.
Definition bip.h:478
@ BT_BIP_STATE_CONNECTED
Connection is established.
Definition bip.h:480
@ BT_BIP_PRIM_CONN_TYPE_IMAGE_PULL
Primary Image Pull connection.
Definition bip.h:243
@ BT_BIP_PRIM_CONN_TYPE_ADVANCED_IMAGE_PRINTING
Primary Advanced Image Printing connection.
Definition bip.h:245
@ BT_BIP_PRIM_CONN_TYPE_REMOTE_DISPLAY
Primary Remote Display connection.
Definition bip.h:251
@ BT_BIP_2ND_CONN_TYPE_REFERENCED_OBJECTS
Secondary Referenced Objects connection.
Definition bip.h:253
@ BT_BIP_PRIM_CONN_TYPE_IMAGE_PUSH
Primary Image Push connection.
Definition bip.h:241
@ BT_BIP_PRIM_CONN_TYPE_REMOTE_CAMERA
Primary Remote Camera connection.
Definition bip.h:249
@ BT_BIP_2ND_CONN_TYPE_ARCHIVED_OBJECTS
Secondary Archived Objects connection.
Definition bip.h:255
@ BT_BIP_PRIM_CONN_TYPE_AUTO_ARCHIVE
Primary Auto Archive connection.
Definition bip.h:247
struct _slist sys_slist_t
Single-linked list structure.
Definition slist.h:52
struct _snode sys_snode_t
Single-linked list node structure.
Definition slist.h:42
Public kernel APIs.
Bluetooth L2CAP handling.
__UINT32_TYPE__ uint32_t
Definition stdint.h:90
__UINT8_TYPE__ uint8_t
Definition stdint.h:88
__UINT16_TYPE__ uint16_t
Definition stdint.h:89
BIP client callback structure.
Definition bip.h:676
void(* disconnect)(struct bt_bip_client *client, uint8_t rsp_code, struct net_buf *buf)
OBEX Disconnect response received.
Definition bip.h:696
void(* put_image)(struct bt_bip_client *client, uint8_t rsp_code, struct net_buf *buf)
Put Image response received.
Definition bip.h:800
void(* get_monitoring_image)(struct bt_bip_client *client, uint8_t rsp_code, struct net_buf *buf)
Get Monitoring Image response received.
Definition bip.h:781
void(* get_image_properties)(struct bt_bip_client *client, uint8_t rsp_code, struct net_buf *buf)
Get Image Properties response received.
Definition bip.h:732
void(* get_status)(struct bt_bip_client *client, uint8_t rsp_code, struct net_buf *buf)
Get Status response received.
Definition bip.h:791
void(* put_linked_attachment)(struct bt_bip_client *client, uint8_t rsp_code, struct net_buf *buf)
Put Linked Attachment response received.
Definition bip.h:819
void(* remote_display)(struct bt_bip_client *client, uint8_t rsp_code, struct net_buf *buf)
Remote Display response received.
Definition bip.h:829
void(* get_caps)(struct bt_bip_client *client, uint8_t rsp_code, struct net_buf *buf)
Get Capabilities response received.
Definition bip.h:714
void(* delete_image)(struct bt_bip_client *client, uint8_t rsp_code, struct net_buf *buf)
Delete Image response received.
Definition bip.h:838
void(* start_archive)(struct bt_bip_client *client, uint8_t rsp_code, struct net_buf *buf)
Start Archive response received.
Definition bip.h:856
void(* start_print)(struct bt_bip_client *client, uint8_t rsp_code, struct net_buf *buf)
Start Print response received.
Definition bip.h:847
void(* get_linked_attachment)(struct bt_bip_client *client, uint8_t rsp_code, struct net_buf *buf)
Get Linked Attachment response received.
Definition bip.h:761
void(* get_partial_image)(struct bt_bip_client *client, uint8_t rsp_code, struct net_buf *buf)
Get Partial Image response received.
Definition bip.h:771
void(* get_linked_thumbnail)(struct bt_bip_client *client, uint8_t rsp_code, struct net_buf *buf)
Get Linked Thumbnail response received.
Definition bip.h:751
void(* get_image)(struct bt_bip_client *client, uint8_t rsp_code, struct net_buf *buf)
Get Image response received.
Definition bip.h:742
void(* abort)(struct bt_bip_client *client, uint8_t rsp_code, struct net_buf *buf)
OBEX Abort response received.
Definition bip.h:705
void(* get_image_list)(struct bt_bip_client *client, uint8_t rsp_code, struct net_buf *buf)
Get Image List response received.
Definition bip.h:723
void(* put_linked_thumbnail)(struct bt_bip_client *client, uint8_t rsp_code, struct net_buf *buf)
Put Linked Thumbnail response received.
Definition bip.h:809
void(* connect)(struct bt_bip_client *client, uint8_t rsp_code, uint8_t version, uint16_t mopl, struct net_buf *buf)
OBEX Connect response received.
Definition bip.h:686
BIP client instance structure.
Definition bip.h:909
BIP L2CAP server structure.
Definition bip.h:190
struct bt_goep_transport_l2cap_server server
Underlying GOEP L2CAP server.
Definition bip.h:192
int(* accept)(struct bt_conn *conn, struct bt_bip_l2cap_server *server, struct bt_bip **bip)
Accept connection callback.
Definition bip.h:204
BIP RFCOMM server structure.
Definition bip.h:141
struct bt_goep_transport_rfcomm_server server
Underlying GOEP RFCOMM server.
Definition bip.h:143
int(* accept)(struct bt_conn *conn, struct bt_bip_rfcomm_server *server, struct bt_bip **bip)
Accept connection callback.
Definition bip.h:155
BIP server callback structure.
Definition bip.h:493
void(* connect)(struct bt_bip_server *server, uint8_t version, uint16_t mopl, struct net_buf *buf)
OBEX Connect request received.
Definition bip.h:502
void(* delete_image)(struct bt_bip_server *server, bool final, struct net_buf *buf)
Delete Image request received.
Definition bip.h:647
void(* get_image)(struct bt_bip_server *server, bool final, struct net_buf *buf)
Get Image request received.
Definition bip.h:555
void(* get_status)(struct bt_bip_server *server, bool final, struct net_buf *buf)
Get Status request received.
Definition bip.h:601
void(* put_linked_attachment)(struct bt_bip_server *server, bool final, struct net_buf *buf)
Put Linked Attachment request received.
Definition bip.h:628
void(* put_linked_thumbnail)(struct bt_bip_server *server, bool final, struct net_buf *buf)
Put Linked Thumbnail request received.
Definition bip.h:619
void(* start_archive)(struct bt_bip_server *server, bool final, struct net_buf *buf)
Start Archive request received.
Definition bip.h:665
void(* get_caps)(struct bt_bip_server *server, bool final, struct net_buf *buf)
Get Capabilities request received.
Definition bip.h:528
void(* start_print)(struct bt_bip_server *server, bool final, struct net_buf *buf)
Start Print request received.
Definition bip.h:656
void(* get_partial_image)(struct bt_bip_server *server, bool final, struct net_buf *buf)
Get Partial Image request received.
Definition bip.h:583
void(* put_image)(struct bt_bip_server *server, bool final, struct net_buf *buf)
Put Image request received.
Definition bip.h:610
void(* remote_display)(struct bt_bip_server *server, bool final, struct net_buf *buf)
Remote Display request received.
Definition bip.h:638
void(* abort)(struct bt_bip_server *server, struct net_buf *buf)
OBEX Abort request received.
Definition bip.h:519
void(* get_monitoring_image)(struct bt_bip_server *server, bool final, struct net_buf *buf)
Get Monitoring Image request received.
Definition bip.h:592
void(* get_linked_attachment)(struct bt_bip_server *server, bool final, struct net_buf *buf)
Get Linked Attachment request received.
Definition bip.h:573
void(* get_image_list)(struct bt_bip_server *server, bool final, struct net_buf *buf)
Get Image List request received.
Definition bip.h:537
void(* disconnect)(struct bt_bip_server *server, struct net_buf *buf)
OBEX Disconnect request received.
Definition bip.h:511
void(* get_image_properties)(struct bt_bip_server *server, bool final, struct net_buf *buf)
Get Image Properties request received.
Definition bip.h:546
void(* get_linked_thumbnail)(struct bt_bip_server *server, bool final, struct net_buf *buf)
Get Linked Thumbnail request received.
Definition bip.h:564
BIP server instance structure.
Definition bip.h:864
BIP transport layer operations.
Definition bip.h:115
void(* disconnected)(struct bt_bip *bip)
Transport disconnected callback.
Definition bip.h:133
void(* connected)(struct bt_conn *conn, struct bt_bip *bip)
Transport connected callback.
Definition bip.h:124
BIP instance structure.
Definition bip.h:386
struct bt_goep_transport goep_transport
Underlying GOEP transport instance.
Definition bip.h:388
enum bt_bip_role role
Role in the connection.
Definition bip.h:394
const struct bt_bip_transport_ops * ops
Transport operation callbacks.
Definition bip.h:397
struct bt_goep goep
Underlying GOEP instance.
Definition bip.h:391
Opaque type representing a connection to a remote device.
GOEP Server structure for GOEP v2.0 and later.
Definition goep.h:345
GOEP Server structure GOEP v1.1.
Definition goep.h:225
GOEP transport unified structure.
Definition goep.h:92
GOEP structure.
Definition goep.h:138
OBEX client structure.
Definition obex.h:541
OBEX server structure.
Definition obex.h:497
Definition uuid.h:68
Network buffer representation.
Definition net_buf.h:1015
uint16_t len
Length of the data behind the data pointer.
Definition net_buf.h:1107
Binary representation of a UUID.
Definition uuid.h:48