Lines Matching full:object
11 * @brief Object Transfer Service (OTS)
12 * @defgroup bt_ots Object Transfer Service (OTS)
36 /** @brief Size of OTS object ID (in bytes). */
39 /** @brief Minimum allowed value for object ID (except ID for directory listing) */
42 /** @brief Maximum allowed value for object ID (except ID for directory listing) */
45 /** @brief ID of the Directory Listing Object */
48 /** @brief Mask for OTS object IDs, preserving the 48 bits */
51 /** @brief Length of OTS object ID string (in bytes). */
54 /** @brief Type of an OTS object. */
68 /** @brief Properties of an OTS object. */
70 /** Bit 0 Deletion of this object is permitted */
73 /** Bit 1 Execution of this object is permitted */
76 /** Bit 2 Reading this object is permitted */
79 /** Bit 3 Writing data to this object is permitted */
82 /** @brief Bit 4 Appending data to this object is permitted.
88 /** Bit 5 Truncation of this object is permitted */
91 /** @brief Bit 6 Patching this object is permitted
93 * Patching this object overwrites some of
94 * the object's existing contents.
98 /** Bit 7 This object is a marked object */
104 * @param prop Object properties.
111 * @param prop Object properties.
118 * @param prop Object properties.
125 * @param prop Object properties.
132 * @param prop Object properties.
139 * @param prop Object properties.
146 * @param prop Object properties.
153 * @param prop Object properties.
160 * @param prop Object properties.
167 * @param prop Object properties.
174 * @param prop Object properties.
181 * @param prop Object properties.
188 * @param prop Object properties.
195 * @param prop Object properties.
202 * @param prop Object properties.
209 * @param prop Object properties.
214 /** @brief Descriptor for OTS Object Size parameter. */
223 /** @brief Object Action Control Point Feature bits. */
405 /** @brief Object List Control Point Feature bits. */
485 /** @brief Object metadata request bit field values */
487 /** @brief Request object name */
489 /** @brief Request object type */
491 /** @brief Request object size */
493 /** @brief Request object first created time */
495 /** @brief Request object last modified time */
497 /** @brief Request object ID */
499 /** @brief Request object properties */
501 /** @brief Request all object metadata */
516 /** @brief Metadata of an OTS object
518 * Used by the server as a descriptor for OTS object initialization.
519 * Used by the client to present object metadata to the application.
524 /** @brief Object Name */
530 /** @brief Object name (client) */
534 /** @brief Object Type */
537 /** @brief Object Size */
541 /** @brief Object first created time */
544 /** @brief Object last modified time */
547 /** @brief Object ID */
551 /** @brief Object Properties */
558 /** @brief Descriptor for OTS object addition */
560 /** @brief Object size to allocate */
563 /** @brief Object type */
567 /** @brief Descriptor for OTS created object.
569 * Descriptor for OTS object created by the application. This descriptor is
571 * documentation on distinguishing between server and client object creation.
574 /** @brief Object name
576 * The object name as a NULL terminated string.
578 * When the server creates a new object the name
580 * When the client creates a new object the name
585 /** @brief Object size
589 * When the server creates a new object @ref bt_ots_obj_size.cur
591 * When the client creates a new object @ref bt_ots_obj_size.cur
596 /** @brief Object properties */
602 /** @brief Object created callback
604 * This callback is called whenever a new object is created.
607 * object. This callback is also triggered when the server
608 * creates a new object with bt_ots_obj_add() API.
611 * @param conn The connection that is requesting object creation or
612 * NULL if object is created by bt_ots_obj_add().
613 * @param id Object ID.
614 * @param add_param Object creation requested parameters.
615 * @param created_desc Created object descriptor that shall be filled by the
619 * @return -ENOTSUP if object type is not supported
620 * @return -ENOMEM if no available space for new object.
628 /** @brief Object deleted callback
630 * This callback is called whenever an object is deleted. It is
631 * also triggered when the server deletes an object with
635 * @param conn The connection that deleted the object or NULL if
637 * @param id Object ID.
640 * object delete procedure is aborted and a corresponding failed
643 * @return -EBUSY if the object is locked. This is generally not expected
644 * to be returned by the application as the OTS layer tracks object
645 * accesses. An object locked status is returned to the client.
652 /** @brief Object selected callback
654 * This callback is called on successful object selection.
657 * @param conn The connection that selected new object.
658 * @param id Object ID.
663 /** @brief Object read callback
665 * This callback is called multiple times during the Object read
666 * operation. OTS module will keep requesting successive Object
672 * @param conn The connection that read object.
673 * @param id Object ID.
677 * @param offset Object data offset.
687 /** @brief Object write callback
689 * This callback is called multiple times during the Object write
690 * operation. OTS module will keep providing successive Object
694 * of the object. The remaining length indicates data length
699 * @param conn The connection that wrote object.
700 * @param id Object ID.
703 * @param offset Object data offset.
717 /** @brief Object name written callback
719 * This callback is called when the object name is written.
720 * This is a notification to the application that the object name
724 * @param conn The connection that wrote object name.
725 * @param id Object ID.
726 * @param cur_name Current object name.
727 * @param new_name New object name.
732 /** @brief Object Calculate checksum callback
735 * Because object data is opaque to OTS, the application is the only one who
736 * knows where data is and should return pointer of actual object data.
739 * @param[in] conn The connection that wrote object.
740 * @param[in] id Object ID.
741 * @param[in] offset The first octet of the object contents need to be calculated.
742 * @param[in] len The length number of octets object name.
743 * @param[out] data Pointer of actual object data.
760 /** @brief Add an object to the OTS instance.
762 * This function adds an object to the OTS database. When the
763 * object is being added, a callback obj_created() is called
764 * to notify the user about a new object ID.
767 * @param param Object addition parameters.
769 * @return ID of created object in case of success.
774 /** @brief Delete an object from the OTS instance.
776 * This function deletes an object from the OTS database. When the
777 * object is deleted a callback obj_deleted() is called
779 * to free allocated buffer for object data.
782 * @param id ID of the object to be deleted (uint48).
849 /** @brief Callback function when a new object is selected.
851 * Called when the a new object is selected and the current
852 * object has changed. The `cur_object` in `ots_inst` will
865 * object.
867 * Called when the data of the selected object are read using
875 * @param is_complete Indicate if the whole object has been received.
884 /** @brief Callback function for metadata of the selected object.
886 * Called when metadata of the selected object are read using
901 /** @brief Callback function for the data of the write object.
903 * Called when the data of the selected object is written using
928 /** @brief Register an Object Transfer Service Instance.
930 * Register an Object Transfer Service instance discovered on the peer.
940 /** @brief Unregister an Object Transfer Service Instance.
942 * Unregister an Object Transfer Service instance when disconnect from the peer.
955 * @param conn Connection object. May be NULL, indicating that the
969 * @param conn Pointer to the connection object.
976 /** @brief Select an object by its Object ID.
979 * @param conn Pointer to the connection object.
980 * @param obj_id Object's ID.
988 /** @brief Select the first object.
991 * @param conn Pointer to the connection object.
998 /** @brief Select the last object.
1001 * @param conn Pointer to the connection object.
1008 /** @brief Select the next object.
1011 * @param conn Pointer to the connection object.
1018 /** @brief Select the previous object.
1021 * @param conn Pointer to the connection object.
1028 /** @brief Read the metadata of the current object.
1033 * @param conn Pointer to the connection object.
1043 /** @brief Read the data of the current selected object.
1045 * This will trigger an OACP read operation for the current size of the object
1048 * The data of the object are returned in the obj_data_read() callback.
1051 * @param conn Pointer to the connection object.
1058 /** @brief Write the data of the current selected object.
1060 * This will trigger an OACP write operation for the current object
1063 * The length of the data written to object is returned in the obj_data_written() callback.
1066 * @param conn Pointer to the connection object.
1078 /** @brief Get the checksum of the current selected object.
1080 * This will trigger an OACP calculate checksum operation for the current object
1086 * @param conn Pointer to the connection object.
1088 * @param len Len of data to calculate checksum for. May be less than the current object's
1096 /** @brief Directory listing object metadata callback
1099 * this callback will be called for each object in the directory listing.
1101 * @param meta The metadata of the decoded object
1108 /** @brief Decode Directory Listing object into object metadata.
1110 * If the Directory Listing object contains multiple objects, then the
1113 * @param data The data received for the directory listing object.
1115 * @param cb The callback that will be called for each object.
1120 /** @brief Converts binary OTS Object ID to string.
1122 * @param obj_id Object ID.
1124 * formatted string containing binary Object ID.
1141 /** @brief Displays one or more object metadata as text with LOG_INF.