nRF Connect SDK API 3.3.99
Loading...
Searching...
No Matches
dfu_multi_image.h
Go to the documentation of this file.
1/*
2 * Copyright (c) 2022 Nordic Semiconductor ASA
3 *
4 * SPDX-License-Identifier: LicenseRef-Nordic-5-Clause
5 */
6
7#ifndef DFU_MULTI_IMAGE_H__
8#define DFU_MULTI_IMAGE_H__
9
43#include <stdbool.h>
44#include <stddef.h>
45#include <stdint.h>
46
47#ifdef __cplusplus
48extern "C" {
49#endif
50
51typedef int (*dfu_image_open_t)(int image_id, size_t image_size);
52typedef int (*dfu_image_write_t)(const uint8_t *chunk, size_t chunk_size);
53typedef int (*dfu_image_close_t)(bool success);
54typedef int (*dfu_image_offset_t)(size_t *offset);
55typedef int (*dfu_image_reset_t)(void);
56
65
76
86
98
99#ifdef CONFIG_DFU_MULTI_IMAGE_SAVE_PROGRESS
109 dfu_image_offset_t offset;
110#endif
111
119};
120
137int dfu_multi_image_init(uint8_t *buffer, size_t buffer_size);
138
152
179int dfu_multi_image_write(size_t offset, const uint8_t *chunk, size_t chunk_size);
180
187
202int dfu_multi_image_done(bool success);
203
209
210#ifdef __cplusplus
211}
212#endif
213
216#endif /* DFU_MULTI_IMAGE_H__ */
int dfu_multi_image_done(bool success)
Complete DFU Multi Image package write.
int(* dfu_image_close_t)(bool success)
Definition dfu_multi_image.h:53
int(* dfu_image_write_t)(const uint8_t *chunk, size_t chunk_size)
Definition dfu_multi_image.h:52
int(* dfu_image_reset_t)(void)
Definition dfu_multi_image.h:55
int(* dfu_image_open_t)(int image_id, size_t image_size)
Definition dfu_multi_image.h:51
int dfu_multi_image_register_writer(const struct dfu_image_writer *writer)
Register DFU image writer.
int dfu_multi_image_write(size_t offset, const uint8_t *chunk, size_t chunk_size)
Write subsequent DFU Multi Image package chunk.
int dfu_multi_image_init(uint8_t *buffer, size_t buffer_size)
Initialize DFU Multi Image library context.
size_t dfu_multi_image_offset(void)
Returns DFU Multi Image package write position.
int dfu_multi_image_reset(void)
Release the resources that were needed for DFU multi image and resets all the underlying image writer...
int(* dfu_image_offset_t)(size_t *offset)
Definition dfu_multi_image.h:54
dfu_image_close_t close
Function called after writing the last byte of the applicable image.
Definition dfu_multi_image.h:97
dfu_image_write_t write
Function called to write a subsequent chunk of the applicable image.
Definition dfu_multi_image.h:85
int image_id
Identifier of the applicable image.
Definition dfu_multi_image.h:64
dfu_image_reset_t reset
Function called to reset any internal state of the writer.
Definition dfu_multi_image.h:118
dfu_image_open_t open
Function called before writing the first byte of the applicable image.
Definition dfu_multi_image.h:75
User-provided functions for writing a single image from DFU Multi Image package.
Definition dfu_multi_image.h:60