1# image_receiver_mdk.h
2
3
4## Overview
5
6The **image_receiver_mdk.h** file declares the APIs used to obtain image data from the native layer.
7
8**Library**: libimage_receiver_ndk.z.so
9
10**File to include**: <multimedia/image_framework/image_receiver_mdk.h>
11
12**Since**: 10
13
14**Related module**: [Image](image.md)
15
16
17## Summary
18
19
20### Structs
21
22| Name| Description|
23| -------- | -------- |
24| struct  [OhosImageReceiverInfo](_ohos_image_receiver_info.md) | Defines the information about an image receiver. |
25
26
27### Types
28
29| Name| Description|
30| -------- | -------- |
31| typedef struct ImageReceiverNative_ [ImageReceiverNative](image.md#imagereceivernative) | Defines the data type name of the image receiver at the native layer. |
32| typedef void(\* [OH_Image_Receiver_On_Callback](image.md#oh_image_receiver_on_callback)) () | Defines the callbacks for the image interface at the native layer. |
33
34
35### Functions
36
37| Name| Description|
38| -------- | -------- |
39| int32_t [OH_Image_Receiver_CreateImageReceiver](image.md#oh_image_receiver_createimagereceiver) (napi_env env, struct [OhosImageReceiverInfo](_ohos_image_receiver_info.md) info, napi_value \*res) | Creates an **ImageReceiver** object at the application layer. |
40| [ImageReceiverNative](image.md#imagereceivernative) \* [OH_Image_Receiver_InitImageReceiverNative](image.md#oh_image_receiver_initimagereceivernative) (napi_env env, napi_value source) | Initializes an [ImageReceiverNative](image.md#imagereceivernative) object through an **ImageReceiver** object. |
41| int32_t [OH_Image_Receiver_GetReceivingSurfaceId](image.md#oh_image_receiver_getreceivingsurfaceid) (const [ImageReceiverNative](image.md#imagereceivernative) \*native, char \*id, size_t len) | Obtains the receiver ID through an [ImageReceiverNative](image.md#imagereceivernative) object. |
42| int32_t [OH_Image_Receiver_ReadLatestImage](image.md#oh_image_receiver_readlatestimage) (const [ImageReceiverNative](image.md#imagereceivernative) \*native, napi_value \*image) | Obtains the latest image through an [ImageReceiverNative](image.md#imagereceivernative) object. |
43| int32_t [OH_Image_Receiver_ReadNextImage](image.md#oh_image_receiver_readnextimage) (const [ImageReceiverNative](image.md#imagereceivernative) \*native, napi_value \*image) | Obtains the next image through an [ImageReceiverNative](image.md#imagereceivernative) object. |
44| int32_t [OH_Image_Receiver_On](image.md#oh_image_receiver_on) (const [ImageReceiverNative](image.md#imagereceivernative) \*native, [OH_Image_Receiver_On_Callback](image.md#oh_image_receiver_on_callback) callback) | Registers an [OH_Image_Receiver_On_Callback](image.md#oh_image_receiver_on_callback) callback. This callback is triggered whenever a new image is received. |
45| int32_t [OH_Image_Receiver_GetSize](image.md#oh_image_receiver_getsize) (const [ImageReceiverNative](image.md#imagereceivernative) \*native, struct [OhosImageSize](_ohos_image_size.md) \*size) | Obtains the size of the image receiver through an [ImageReceiverNative](image.md#imagereceivernative) object. |
46| int32_t [OH_Image_Receiver_GetCapacity](image.md#oh_image_receiver_getcapacity) (const [ImageReceiverNative](image.md#imagereceivernative) \*native, int32_t \*capacity) | Obtains the capacity of the image receiver through an [ImageReceiverNative](image.md#imagereceivernative) object. |
47| int32_t [OH_Image_Receiver_GetFormat](image.md#oh_image_receiver_getformat) (const [ImageReceiverNative](image.md#imagereceivernative) \*native, int32_t \*format) | Obtains the format of the image receiver through an [ImageReceiverNative](image.md#imagereceivernative) object. |
48| int32_t [OH_Image_Receiver_Release](image.md#oh_image_receiver_release) ([ImageReceiverNative](image.md#imagereceivernative) \*native) | Releases an [ImageReceiverNative](image.md#imagereceivernative) object. |
49