Zephyr Project API 3.7.0
A Scalable Open Source RTOS
|
Event handler callbacks for the BLOB Transfer Client model. More...
#include <blob_cli.h>
Data Fields | |
void(* | caps )(struct bt_mesh_blob_cli *cli, const struct bt_mesh_blob_cli_caps *caps) |
Capabilities retrieval completion callback. | |
void(* | lost_target )(struct bt_mesh_blob_cli *cli, struct bt_mesh_blob_target *target, enum bt_mesh_blob_status reason) |
Target node loss callback. | |
void(* | suspended )(struct bt_mesh_blob_cli *cli) |
Transfer is suspended. | |
void(* | end )(struct bt_mesh_blob_cli *cli, const struct bt_mesh_blob_xfer *xfer, bool success) |
Transfer end callback. | |
void(* | xfer_progress )(struct bt_mesh_blob_cli *cli, struct bt_mesh_blob_target *target, const struct bt_mesh_blob_xfer_info *info) |
Transfer progress callback. | |
void(* | xfer_progress_complete )(struct bt_mesh_blob_cli *cli) |
End of Get Transfer Progress procedure. | |
Event handler callbacks for the BLOB Transfer Client model.
All handlers are optional.
void(* bt_mesh_blob_cli_cb::caps) (struct bt_mesh_blob_cli *cli, const struct bt_mesh_blob_cli_caps *caps) |
Capabilities retrieval completion callback.
Called when the capabilities retrieval procedure completes, indicating that a common set of acceptable transfer parameters have been established for the given list of Target nodes. All compatible Target nodes have status code BT_MESH_BLOB_SUCCESS.
cli | BLOB Transfer Client instance. |
caps | Safe transfer capabilities if the transfer capabilities of at least one Target node has satisfied the Client, or NULL otherwise. |
void(* bt_mesh_blob_cli_cb::end) (struct bt_mesh_blob_cli *cli, const struct bt_mesh_blob_xfer *xfer, bool success) |
Transfer end callback.
Called when the transfer ends.
cli | BLOB Transfer Client instance. |
xfer | Completed transfer. |
success | Status of the transfer. Is true if at least one Target node received the whole transfer. |
void(* bt_mesh_blob_cli_cb::lost_target) (struct bt_mesh_blob_cli *cli, struct bt_mesh_blob_target *target, enum bt_mesh_blob_status reason) |
Target node loss callback.
Called whenever a Target node has been lost due to some error in the transfer. Losing a Target node is not considered a fatal error for the Client until all Target nodes have been lost.
cli | BLOB Transfer Client instance. |
target | Target node that was lost. |
reason | Reason for the Target node loss. |
void(* bt_mesh_blob_cli_cb::suspended) (struct bt_mesh_blob_cli *cli) |
Transfer is suspended.
Called when the transfer is suspended due to response timeout from all Target nodes.
cli | BLOB Transfer Client instance. |
void(* bt_mesh_blob_cli_cb::xfer_progress) (struct bt_mesh_blob_cli *cli, struct bt_mesh_blob_target *target, const struct bt_mesh_blob_xfer_info *info) |
Transfer progress callback.
The content of info
is invalidated upon exit from the callback. Therefore it needs to be copied if it is planned to be used later.
cli | BLOB Transfer Client instance. |
target | Target node that responded to the request. |
info | BLOB transfer information. |
void(* bt_mesh_blob_cli_cb::xfer_progress_complete) (struct bt_mesh_blob_cli *cli) |
End of Get Transfer Progress procedure.
Called when all Target nodes have responded or the procedure timed-out.
cli | BLOB Transfer Client instance. |