1e41f4b71Sopenharmony_ci# image_receiver_native.h
2e41f4b71Sopenharmony_ci
3e41f4b71Sopenharmony_ci
4e41f4b71Sopenharmony_ci## Overview
5e41f4b71Sopenharmony_ci
6e41f4b71Sopenharmony_ciThe **image_receiver_native.h** file declares the APIs used to obtain image data from the native layer.
7e41f4b71Sopenharmony_ci
8e41f4b71Sopenharmony_ci**Library**: libimage_receiver.so
9e41f4b71Sopenharmony_ci
10e41f4b71Sopenharmony_ci**System capability**: SystemCapability.Multimedia.Image.ImageReceiver
11e41f4b71Sopenharmony_ci
12e41f4b71Sopenharmony_ci**Since**: 12
13e41f4b71Sopenharmony_ci
14e41f4b71Sopenharmony_ci**Related module**: [Image_NativeModule](_image___native_module.md)
15e41f4b71Sopenharmony_ci
16e41f4b71Sopenharmony_ci
17e41f4b71Sopenharmony_ci## Summary
18e41f4b71Sopenharmony_ci
19e41f4b71Sopenharmony_ci
20e41f4b71Sopenharmony_ci### Types
21e41f4b71Sopenharmony_ci
22e41f4b71Sopenharmony_ci| Name| Description| 
23e41f4b71Sopenharmony_ci| -------- | -------- |
24e41f4b71Sopenharmony_ci| typedef struct [OH_ImageReceiverNative](_image___native_module.md#oh_imagereceivernative) [OH_ImageReceiverNative](_image___native_module.md#oh_imagereceivernative) | Defines the data type name of the image receiver at the native layer. | 
25e41f4b71Sopenharmony_ci| typedef struct [OH_ImageReceiverOptions](_image___native_module.md#oh_imagereceiveroptions) [OH_ImageReceiverOptions](_image___native_module.md#oh_imagereceiveroptions) | Defines the data type name of the image receiver options. | 
26e41f4b71Sopenharmony_ci| typedef void(\* [OH_ImageReceiver_OnCallback](_image___native_module.md#oh_imagereceiver_oncallback)) ([OH_ImageReceiverNative](_image___native_module.md#oh_imagereceivernative) \*receiver) | Defines the callbacks for the image receiver at the native layer. | 
27e41f4b71Sopenharmony_ci
28e41f4b71Sopenharmony_ci
29e41f4b71Sopenharmony_ci### Functions
30e41f4b71Sopenharmony_ci
31e41f4b71Sopenharmony_ci| Name| Description| 
32e41f4b71Sopenharmony_ci| -------- | -------- |
33e41f4b71Sopenharmony_ci| [Image_ErrorCode](_image___native_module.md#image_errorcode) [OH_ImageReceiverOptions_Create](_image___native_module.md#oh_imagereceiveroptions_create) ([OH_ImageReceiverOptions](_image___native_module.md#oh_imagereceiveroptions) \*\*options) | Creates an **OH_ImageReceiverOptions** object at the application layer. | 
34e41f4b71Sopenharmony_ci| [Image_ErrorCode](_image___native_module.md#image_errorcode) [OH_ImageReceiverOptions_GetSize](_image___native_module.md#oh_imagereceiveroptions_getsize) ([OH_ImageReceiverOptions](_image___native_module.md#oh_imagereceiveroptions) \*options, [Image_Size](_image___size.md) \*size) | Obtains the [Image_Size](_image___size.md) information of an [OH_ImageReceiverOptions](_image___native_module.md#oh_imagereceiveroptions) object. | 
35e41f4b71Sopenharmony_ci| [Image_ErrorCode](_image___native_module.md#image_errorcode) [OH_ImageReceiverOptions_SetSize](_image___native_module.md#oh_imagereceiveroptions_setsize) ([OH_ImageReceiverOptions](_image___native_module.md#oh_imagereceiveroptions) \*options, [Image_Size](_image___size.md) size) | Sets the [Image_Size](_image___size.md) information for an [OH_ImageReceiverOptions](_image___native_module.md#oh_imagereceiveroptions) object. | 
36e41f4b71Sopenharmony_ci| [Image_ErrorCode](_image___native_module.md#image_errorcode) [OH_ImageReceiverOptions_GetCapacity](_image___native_module.md#oh_imagereceiveroptions_getcapacity) ([OH_ImageReceiverOptions](_image___native_module.md#oh_imagereceiveroptions) \*options, int32_t \*capacity) | Obtains the capacity of an [OH_ImageReceiverOptions](_image___native_module.md#oh_imagereceiveroptions) object. | 
37e41f4b71Sopenharmony_ci| [Image_ErrorCode](_image___native_module.md#image_errorcode) [OH_ImageReceiverOptions_SetCapacity](_image___native_module.md#oh_imagereceiveroptions_setcapacity) ([OH_ImageReceiverOptions](_image___native_module.md#oh_imagereceiveroptions) \*options, int32_t capacity) | Sets the capacity for an [OH_ImageReceiverOptions](_image___native_module.md#oh_imagereceiveroptions) object. | 
38e41f4b71Sopenharmony_ci| [Image_ErrorCode](_image___native_module.md#image_errorcode) [OH_ImageReceiverOptions_Release](_image___native_module.md#oh_imagereceiveroptions_release) ([OH_ImageReceiverOptions](_image___native_module.md#oh_imagereceiveroptions) \*options) | Releases an [OH_ImageReceiverOptions](_image___native_module.md#oh_imagereceiveroptions) object. | 
39e41f4b71Sopenharmony_ci| [Image_ErrorCode](_image___native_module.md#image_errorcode) [OH_ImageReceiverNative_Create](_image___native_module.md#oh_imagereceivernative_create) ([OH_ImageReceiverOptions](_image___native_module.md#oh_imagereceiveroptions) \*options, [OH_ImageReceiverNative](_image___native_module.md#oh_imagereceivernative) \*\*receiver) | Creates an **OH_ImageReceiverNative** object at the application layer. | 
40e41f4b71Sopenharmony_ci| [Image_ErrorCode](_image___native_module.md#image_errorcode) [OH_ImageReceiverNative_GetReceivingSurfaceId](_image___native_module.md#oh_imagereceivernative_getreceivingsurfaceid) ([OH_ImageReceiverNative](_image___native_module.md#oh_imagereceivernative) \*receiver, uint64_t \*surfaceId) | Obtains the receiver ID through an [OH_ImageReceiverNative](_image___native_module.md#oh_imagereceivernative) object. | 
41e41f4b71Sopenharmony_ci| [Image_ErrorCode](_image___native_module.md#image_errorcode) [OH_ImageReceiverNative_ReadLatestImage](_image___native_module.md#oh_imagereceivernative_readlatestimage) ([OH_ImageReceiverNative](_image___native_module.md#oh_imagereceivernative) \*receiver, [OH_ImageNative](_image___native_module.md#oh_imagenative) \*\*image) | Obtains the latest image through an [OH_ImageReceiverNative](_image___native_module.md#oh_imagereceivernative) object. | 
42e41f4b71Sopenharmony_ci| [Image_ErrorCode](_image___native_module.md#image_errorcode) [OH_ImageReceiverNative_ReadNextImage](_image___native_module.md#oh_imagereceivernative_readnextimage) ([OH_ImageReceiverNative](_image___native_module.md#oh_imagereceivernative) \*receiver, [OH_ImageNative](_image___native_module.md#oh_imagenative) \*\*image) | Obtains the next image through an [OH_ImageReceiverNative](_image___native_module.md#oh_imagereceivernative) object. | 
43e41f4b71Sopenharmony_ci| [Image_ErrorCode](_image___native_module.md#image_errorcode) [OH_ImageReceiverNative_On](_image___native_module.md#oh_imagereceivernative_on) ([OH_ImageReceiverNative](_image___native_module.md#oh_imagereceivernative) \*receiver, [OH_ImageReceiver_OnCallback](_image___native_module.md#oh_imagereceiver_oncallback) callback) | Registers a callback, which is an [OH_ImageReceiver_OnCallback](_image___native_module.md#oh_imagereceiver_oncallback) object. | 
44e41f4b71Sopenharmony_ci| [Image_ErrorCode](_image___native_module.md#image_errorcode) [OH_ImageReceiverNative_Off](_image___native_module.md#oh_imagereceivernative_off) ([OH_ImageReceiverNative](_image___native_module.md#oh_imagereceivernative) \*receiver) | Unregisters a callback, which is an [OH_ImageReceiver_OnCallback](_image___native_module.md#oh_imagereceiver_oncallback) object. | 
45e41f4b71Sopenharmony_ci| [Image_ErrorCode](_image___native_module.md#image_errorcode) [OH_ImageReceiverNative_GetSize](_image___native_module.md#oh_imagereceivernative_getsize) ([OH_ImageReceiverNative](_image___native_module.md#oh_imagereceivernative) \*receiver, [Image_Size](_image___size.md) \*size) | Obtains the size of an image receiver, which is an [OH_ImageReceiverNative](_image___native_module.md#oh_imagereceivernative) object. | 
46e41f4b71Sopenharmony_ci| [Image_ErrorCode](_image___native_module.md#image_errorcode) [OH_ImageReceiverNative_GetCapacity](_image___native_module.md#oh_imagereceivernative_getcapacity) ([OH_ImageReceiverNative](_image___native_module.md#oh_imagereceivernative) \*receiver, int32_t \*capacity) | Obtains the capacity of an image receiver, which is an [OH_ImageReceiverNative](_image___native_module.md#oh_imagereceivernative) object. | 
47e41f4b71Sopenharmony_ci| [Image_ErrorCode](_image___native_module.md#image_errorcode) [OH_ImageReceiverNative_Release](_image___native_module.md#oh_imagereceivernative_release) ([OH_ImageReceiverNative](_image___native_module.md#oh_imagereceivernative) \*receiver) | Releases an [OH_ImageReceiverNative](_image___native_module.md#oh_imagereceivernative) object. | 
48