Skip to main content

ohos_resource_manager_sys/
lib.rs

1/* automatically generated by rust-bindgen 0.65.1 */
2
3#![allow(non_snake_case)]
4#![allow(non_upper_case_globals)]
5#![allow(non_camel_case_types)]
6#![allow(clippy::missing_safety_doc)]
7// bindgen's bitfield accessors transmute/cast between identical types.
8#![allow(clippy::useless_transmute)]
9#![allow(clippy::unnecessary_cast)]
10
11use napi_sys_ohos::*;
12
13#[link(name = "ohresmgr")]
14#[link(name = "rawfile.z")]
15unsafe extern "C" {}
16
17#[doc = " @error Success"]
18pub const ResourceManager_ErrorCode_SUCCESS: ResourceManager_ErrorCode = 0;
19#[doc = " @error Invalid input parameter"]
20pub const ResourceManager_ErrorCode_ERROR_CODE_INVALID_INPUT_PARAMETER: ResourceManager_ErrorCode =
21    401;
22#[doc = " @error Invalid resource ID"]
23pub const ResourceManager_ErrorCode_ERROR_CODE_RES_ID_NOT_FOUND: ResourceManager_ErrorCode =
24    9001001;
25#[doc = " @error No matching resource is found based on the resource ID"]
26pub const ResourceManager_ErrorCode_ERROR_CODE_RES_NOT_FOUND_BY_ID: ResourceManager_ErrorCode =
27    9001002;
28#[doc = " @error Invalid resource name"]
29pub const ResourceManager_ErrorCode_ERROR_CODE_RES_NAME_NOT_FOUND: ResourceManager_ErrorCode =
30    9001003;
31#[doc = " @error No matching resource is found based on the resource name"]
32pub const ResourceManager_ErrorCode_ERROR_CODE_RES_NOT_FOUND_BY_NAME: ResourceManager_ErrorCode =
33    9001004;
34#[doc = " @error Invalid relative path"]
35pub const ResourceManager_ErrorCode_ERROR_CODE_RES_PATH_INVALID: ResourceManager_ErrorCode =
36    9001005;
37#[doc = " @error The resource is referenced cyclically"]
38pub const ResourceManager_ErrorCode_ERROR_CODE_RES_REF_TOO_MUCH: ResourceManager_ErrorCode =
39    9001006;
40#[doc = " @error Failed to format the resource obtained based on the resource ID"]
41pub const ResourceManager_ErrorCode_ERROR_CODE_RES_ID_FORMAT_ERROR: ResourceManager_ErrorCode =
42    9001007;
43#[doc = " @error Failed to format the resource obtained based on the resource Name"]
44pub const ResourceManager_ErrorCode_ERROR_CODE_RES_NAME_FORMAT_ERROR: ResourceManager_ErrorCode =
45    9001008;
46#[doc = " @error Failed to access the system resource"]
47pub const ResourceManager_ErrorCode_ERROR_CODE_SYSTEM_RES_MANAGER_GET_FAILED:
48    ResourceManager_ErrorCode = 9001009;
49#[doc = " @error Invalid overlay path"]
50pub const ResourceManager_ErrorCode_ERROR_CODE_OVERLAY_RES_PATH_INVALID: ResourceManager_ErrorCode =
51    9001010;
52#[doc = " @error Out of memory"]
53pub const ResourceManager_ErrorCode_ERROR_CODE_OUT_OF_MEMORY: ResourceManager_ErrorCode = 9001100;
54#[doc = " @brief The error code of resource manager.\n\n @since 12"]
55pub type ResourceManager_ErrorCode = u32;
56#[doc = " Indicates the vertical direction."]
57pub const ResourceManager_Direction_DIRECTION_VERTICAL: ResourceManager_Direction = 0;
58#[doc = " Indicates the horizontal direction."]
59pub const ResourceManager_Direction_DIRECTION_HORIZONTAL: ResourceManager_Direction = 1;
60#[doc = " @brief Enumerates screen directions.\n\n @since 12"]
61pub type ResourceManager_Direction = u32;
62#[doc = " Indicates dark mode."]
63pub const ResourceManager_ColorMode_COLOR_MODE_DARK: ResourceManager_ColorMode = 0;
64#[doc = " Indicates light mode."]
65pub const ResourceManager_ColorMode_COLOR_MODE_LIGHT: ResourceManager_ColorMode = 1;
66#[doc = " @brief Enumerates color mode types.\n\n @since 12"]
67pub type ResourceManager_ColorMode = u32;
68#[doc = " Indicates a phone."]
69pub const ResourceManager_DeviceType_DEVICE_TYPE_PHONE: ResourceManager_DeviceType = 0;
70#[doc = " Indicates a tablet."]
71pub const ResourceManager_DeviceType_DEVICE_TYPE_TABLET: ResourceManager_DeviceType = 1;
72#[doc = " Indicates a car."]
73pub const ResourceManager_DeviceType_DEVICE_TYPE_CAR: ResourceManager_DeviceType = 2;
74#[doc = " Indicates a PC."]
75pub const ResourceManager_DeviceType_DEVICE_TYPE_PC: ResourceManager_DeviceType = 3;
76#[doc = " Indicates a smart TV."]
77pub const ResourceManager_DeviceType_DEVICE_TYPE_TV: ResourceManager_DeviceType = 4;
78#[doc = " Indicates a wearable device."]
79pub const ResourceManager_DeviceType_DEVICE_TYPE_WEARABLE: ResourceManager_DeviceType = 6;
80#[doc = " Indicates a 2in1 device."]
81pub const ResourceManager_DeviceType_DEVICE_TYPE_2IN1: ResourceManager_DeviceType = 7;
82#[doc = " @brief Enumerates device types.\n\n @since 12"]
83pub type ResourceManager_DeviceType = u32;
84#[doc = " Indicates small screen density."]
85pub const ScreenDensity_SCREEN_SDPI: ScreenDensity = 120;
86#[doc = " Indicates medium screen density."]
87pub const ScreenDensity_SCREEN_MDPI: ScreenDensity = 160;
88#[doc = " Indicates large screen density."]
89pub const ScreenDensity_SCREEN_LDPI: ScreenDensity = 240;
90#[doc = " Indicates extra-large screen density."]
91pub const ScreenDensity_SCREEN_XLDPI: ScreenDensity = 320;
92#[doc = " Indicates extra-extra-large screen density."]
93pub const ScreenDensity_SCREEN_XXLDPI: ScreenDensity = 480;
94#[doc = " Indicates extra-extra-extra-large screen density."]
95pub const ScreenDensity_SCREEN_XXXLDPI: ScreenDensity = 640;
96#[doc = " @brief Enumerates screen density types.\n\n @since 12"]
97pub type ScreenDensity = u32;
98#[doc = " @brief Enumerates device configuration.\n\n @since 12"]
99#[repr(C)]
100#[derive(Debug, Copy, Clone)]
101pub struct ResourceManager_Configuration {
102    #[doc = " Indicates the screen direction of the current device."]
103    pub direction: ResourceManager_Direction,
104    #[doc = " Indicates the current system language, for example, zh-Hans-CN."]
105    pub locale: *mut ::std::os::raw::c_char,
106    #[doc = " Indicates the device type."]
107    pub deviceType: ResourceManager_DeviceType,
108    #[doc = " Indicates the screen density."]
109    pub screenDensity: ScreenDensity,
110    #[doc = " Indicates the color mode."]
111    pub colorMode: ResourceManager_ColorMode,
112    #[doc = " Indicates the mcc."]
113    pub mcc: u32,
114    #[doc = " Indicates the mnc."]
115    pub mnc: u32,
116    #[doc = " Reserved attributes."]
117    pub reserved: [u32; 20usize],
118}
119#[repr(C)]
120#[derive(Debug, Copy, Clone)]
121pub struct RawDir {
122    _unused: [u8; 0],
123}
124extern "C" {
125    #[doc = " @brief Obtains the name of the file according to the index.\n\n You can use this method to traverse a raw file directory.\n\n @param rawDir Indicates the pointer to {@link RawDir}.\n @param index Indicates the file index in {@link RawDir}.\n @return Returns the name of the file according to the index,\n which can be passed to {@link OH_ResourceManager_OpenRawFile} as an input parameter;\n returns <b>NULL</b> if all files are returned.\n @see OH_ResourceManager_OpenRawFile\n @since 8\n @version 1.0"]
126    pub fn OH_ResourceManager_GetRawFileName(
127        rawDir: *mut RawDir,
128        index: ::std::os::raw::c_int,
129    ) -> *const ::std::os::raw::c_char;
130}
131extern "C" {
132    #[doc = " @brief get the count of the raw files in {@link RawDir}.\n\n You can use this method to get the valid index of {@link OH_ResourceManager_GetRawFileName}.\n\n @param rawDir Indicates the pointer to {@link RawDir}.\n @see OH_ResourceManager_GetRawFileName\n @since 8\n @version 1.0"]
133    pub fn OH_ResourceManager_GetRawFileCount(rawDir: *mut RawDir) -> ::std::os::raw::c_int;
134}
135extern "C" {
136    #[doc = " @brief Closes an opened {@link RawDir} and releases all associated resources.\n\n\n\n @param rawDir Indicates the pointer to {@link RawDir}.\n @see OH_ResourceManager_OpenRawDir\n @since 8\n @version 1.0"]
137    pub fn OH_ResourceManager_CloseRawDir(rawDir: *mut RawDir);
138}
139#[repr(C)]
140#[derive(Debug, Copy, Clone)]
141pub struct RawFile {
142    _unused: [u8; 0],
143}
144#[doc = " @brief Provides access to a raw file.\n\n @since 11\n @version 1.0"]
145#[repr(C)]
146#[derive(Debug, Copy, Clone)]
147pub struct RawFile64 {
148    _unused: [u8; 0],
149}
150#[doc = " @brief Represent the raw file descriptor's info.\n\n The RawFileDescriptor is an output parameter in the {@link OH_ResourceManager_GetRawFileDescriptor},\n and describes the raw file's file descriptor, start position and the length in the HAP.\n\n @since 8\n @version 1.0"]
151#[repr(C)]
152#[derive(Debug, Copy, Clone)]
153pub struct RawFileDescriptor {
154    #[doc = " the raw file fd"]
155    pub fd: ::std::os::raw::c_int,
156    #[doc = " the offset from where the raw file starts in the HAP"]
157    pub start: ::std::os::raw::c_long,
158    #[doc = " the length of the raw file in the HAP."]
159    pub length: ::std::os::raw::c_long,
160}
161#[doc = " @brief Represent the raw file descriptor's info.\n\n The RawFileDescriptor64 is an output parameter in the {@link OH_ResourceManager_GetRawFileDescriptor64},\n and describes the raw file's file descriptor, start position and the length in the HAP.\n\n @since 11\n @version 1.0"]
162#[repr(C)]
163#[derive(Debug, Copy, Clone)]
164pub struct RawFileDescriptor64 {
165    #[doc = " the raw file fd"]
166    pub fd: ::std::os::raw::c_int,
167    #[doc = " the offset from where the raw file starts in the HAP"]
168    pub start: i64,
169    #[doc = " the length of the raw file in the HAP."]
170    pub length: i64,
171}
172extern "C" {
173    #[doc = " @brief Reads a raw file.\n\n This function attempts to read data of <b>length</b> bytes from the current offset.\n\n @param rawFile Indicates the pointer to {@link RawFile}.\n @param buf Indicates the pointer to the buffer for receiving the data read.\n @param length Indicates the number of bytes to read.\n @return Returns the number of bytes read if any;\n         if the number reaches the end of file (EOF) or rawFile is nullptr also returns <b>0</b>\n @since 8\n @version 1.0"]
174    pub fn OH_ResourceManager_ReadRawFile(
175        rawFile: *const RawFile,
176        buf: *mut ::std::os::raw::c_void,
177        length: usize,
178    ) -> ::std::os::raw::c_int;
179}
180extern "C" {
181    #[doc = " @brief Uses the 32-bit data type to seek a data read position based on the specified offset within a raw file.\n\n @param rawFile Indicates the pointer to {@link RawFile}.\n @param offset Indicates the specified offset.\n @param whence Indicates the new read position, which can be one of the following values: \\n\n <b>0</b>: The new read position is set to <b>offset</b>. \\n\n <b>1</b>: The read position is set to the current position plus <b>offset</b>. \\n\n <b>2</b>: The read position is set to the end of file (EOF) plus <b>offset</b>.\n @return Returns <b>(int) 0</b> if the operation is successful; returns <b>(int) -1</b> if an error\n occurs.\n @since 8\n @version 1.0"]
182    pub fn OH_ResourceManager_SeekRawFile(
183        rawFile: *const RawFile,
184        offset: ::std::os::raw::c_long,
185        whence: ::std::os::raw::c_int,
186    ) -> ::std::os::raw::c_int;
187}
188extern "C" {
189    #[doc = " @brief Obtains the raw file length represented by an long.\n\n @param rawFile Indicates the pointer to {@link RawFile}.\n @return Returns the total length of the raw file. If rawFile is nullptr also returns 0.\n @since 8\n @version 1.0"]
190    pub fn OH_ResourceManager_GetRawFileSize(rawFile: *mut RawFile) -> ::std::os::raw::c_long;
191}
192extern "C" {
193    #[doc = " @brief Obtains the remaining raw file length represented by an long.\n\n @param rawFile Indicates the pointer to {@link RawFile}.\n @return Returns the remaining length of the raw file. If rawFile is nullptr also returns 0.\n @since 11\n @version 1.0"]
194    pub fn OH_ResourceManager_GetRawFileRemainingLength(
195        rawFile: *const RawFile,
196    ) -> ::std::os::raw::c_long;
197}
198extern "C" {
199    #[doc = " @brief Closes an opened {@link RawFile} and releases all associated resources.\n\n\n\n @param rawFile Indicates the pointer to {@link RawFile}.\n @see OH_ResourceManager_OpenRawFile\n @since 8\n @version 1.0"]
200    pub fn OH_ResourceManager_CloseRawFile(rawFile: *mut RawFile);
201}
202extern "C" {
203    #[doc = " @brief Obtains the current offset of a raw file, represented by an long.\n\n The current offset of a raw file.\n\n @param rawFile Indicates the pointer to {@link RawFile}.\n @return Returns the current offset of a raw file. If rawFile is nullptr also returns 0.\n @since 8\n @version 1.0"]
204    pub fn OH_ResourceManager_GetRawFileOffset(rawFile: *const RawFile) -> ::std::os::raw::c_long;
205}
206extern "C" {
207    #[doc = " @brief Opens the file descriptor of a raw file based on the long offset and file length.\n\n The opened raw file descriptor is used to read the raw file.\n\n @param rawFile Indicates the pointer to {@link RawFile}.\n @param descriptor Indicates the raw file's file descriptor, start position and the length in the HAP.\n @return Returns true: open the raw file descriptor successfully, false: the raw file is not allowed to access.\n @since 8\n @version 1.0\n @deprecated since 12\n @useinstead OH_ResourceManager_GetRawFileDescriptorData"]
208    pub fn OH_ResourceManager_GetRawFileDescriptor(
209        rawFile: *const RawFile,
210        descriptor: *mut RawFileDescriptor,
211    ) -> bool;
212}
213extern "C" {
214    #[doc = " @brief Obtains the file descriptor of a raw file based on the long offset and file length.\n\n The obtains raw file descriptor is used to read the raw file.\n\n @param rawFile Indicates the pointer to {@link RawFile}.\n @param descriptor Indicates the raw file's file descriptor, start position and the length in the HAP.\n @return Returns true: obtains the raw file descriptor successfully, false: the raw file is not allowed to access.\n @since 12\n @version 1.0"]
215    pub fn OH_ResourceManager_GetRawFileDescriptorData(
216        rawFile: *const RawFile,
217        descriptor: *mut RawFileDescriptor,
218    ) -> bool;
219}
220extern "C" {
221    #[doc = " @brief Closes the file descriptor of a raw file.\n\n The opened raw file descriptor must be released after used to avoid the file descriptor leak.\n\n @param descriptor Indicates the raw file's file descriptor, start position and the length in the HAP.\n @return Returns true: closes the raw file descriptor successfully, false: closes the raw file descriptor failed.\n @since 8\n @version 1.0\n @deprecated since 12\n @useinstead OH_ResourceManager_ReleaseRawFileDescriptorData"]
222    pub fn OH_ResourceManager_ReleaseRawFileDescriptor(
223        descriptor: *const RawFileDescriptor,
224    ) -> bool;
225}
226extern "C" {
227    #[doc = " @brief Release the file descriptor of a raw file.\n\n The opened raw file descriptor must be released after used to avoid the file descriptor leak.\n\n @param descriptor Indicates the raw file's file descriptor, start position and the length in the HAP.\n @return Returns true: release the raw file descriptor successfully, false: release the raw file descriptor failed.\n @since 12\n @version 1.0"]
228    pub fn OH_ResourceManager_ReleaseRawFileDescriptorData(
229        descriptor: *const RawFileDescriptor,
230    ) -> bool;
231}
232extern "C" {
233    #[doc = " @brief Reads a raw file.\n\n This function attempts to read data of <b>length</b> bytes from the current offset. using a 64-bit\n\n @param rawFile Indicates the pointer to {@link RawFile64}.\n @param buf Indicates the pointer to the buffer for receiving the data read.\n @param length Indicates the number of bytes to read.\n @return Returns the number of bytes read if any;\n         returns <b>0</b> if the number reaches the end of file (EOF). or rawFile is nullptr also returns 0\n @since 11\n @version 1.0"]
234    pub fn OH_ResourceManager_ReadRawFile64(
235        rawFile: *const RawFile64,
236        buf: *mut ::std::os::raw::c_void,
237        length: i64,
238    ) -> i64;
239}
240extern "C" {
241    #[doc = " @brief Uses the 64-bit data type to seek a data read position based on the specified offset within a raw file.\n\n @param rawFile Indicates the pointer to {@link RawFile64}.\n @param offset Indicates the specified offset.\n @param whence Indicates the new read position, which can be one of the following values: \\n\n <b>0</b>: The new read position is set to <b>offset</b>. \\n\n <b>1</b>: The read position is set to the current position plus <b>offset</b>. \\n\n <b>2</b>: The read position is set to the end of file (EOF) plus <b>offset</b>.\n @return Returns <b>(int) 0</b> if the operation is successful; returns <b>(int) -1</b> if an error\n occurs.\n @since 11\n @version 1.0"]
242    pub fn OH_ResourceManager_SeekRawFile64(
243        rawFile: *const RawFile64,
244        offset: i64,
245        whence: ::std::os::raw::c_int,
246    ) -> ::std::os::raw::c_int;
247}
248extern "C" {
249    #[doc = " @brief Obtains the raw file length represented by an int64_t.\n\n @param rawFile Indicates the pointer to {@link RawFile64}.\n @return Returns the total length of the raw file. If rawFile is nullptr also returns 0.\n @since 11\n @version 1.0"]
250    pub fn OH_ResourceManager_GetRawFileSize64(rawFile: *mut RawFile64) -> i64;
251}
252extern "C" {
253    #[doc = " @brief Obtains the remaining raw file length represented by an int64_t.\n\n @param rawFile Indicates the pointer to {@link RawFile64}.\n @return Returns the remaining length of the raw file. If rawFile is nullptr also returns 0.\n @since 11\n @version 1.0"]
254    pub fn OH_ResourceManager_GetRawFileRemainingLength64(rawFile: *const RawFile64) -> i64;
255}
256extern "C" {
257    #[doc = " @brief Closes an opened {@link RawFile64} and releases all associated resources.\n\n\n\n @param rawFile Indicates the pointer to {@link RawFile64}.\n @see OH_ResourceManager_OpenRawFile64\n @since 11\n @version 1.0"]
258    pub fn OH_ResourceManager_CloseRawFile64(rawFile: *mut RawFile64);
259}
260extern "C" {
261    #[doc = " @brief Obtains the current offset of a raw file, represented by an int64_t.\n\n The current offset of a raw file.\n\n @param rawFile Indicates the pointer to {@link RawFile64}.\n @return Returns the current offset of a raw file. If rawFile is nullptr also returns 0.\n @since 11\n @version 1.0"]
262    pub fn OH_ResourceManager_GetRawFileOffset64(rawFile: *const RawFile64) -> i64;
263}
264extern "C" {
265    #[doc = " @brief Opens the file descriptor of a raw file based on the int64_t offset and file length.\n\n The opened raw file descriptor is used to read the raw file.\n\n @param rawFile Indicates the pointer to {@link RawFile64}.\n @param descriptor Indicates the raw file's file descriptor, start position and the length in the HAP.\n @return Returns true: open the raw file descriptor successfully, false: the raw file is not allowed to access.\n @since 11\n @version 1.0"]
266    pub fn OH_ResourceManager_GetRawFileDescriptor64(
267        rawFile: *const RawFile64,
268        descriptor: *mut RawFileDescriptor64,
269    ) -> bool;
270}
271extern "C" {
272    #[doc = " @brief Closes the file descriptor of a raw file.\n\n The opened raw file descriptor must be released after used to avoid the file descriptor leak.\n\n @param descriptor Indicates the raw file's file descriptor, start position and the length in the HAP.\n @return Returns true: closes the raw file descriptor successfully, false: closes the raw file descriptor failed.\n @since 11\n @version 1.0"]
273    pub fn OH_ResourceManager_ReleaseRawFileDescriptor64(
274        descriptor: *const RawFileDescriptor64,
275    ) -> bool;
276}
277#[repr(C)]
278#[derive(Debug, Copy, Clone)]
279pub struct NativeResourceManager {
280    _unused: [u8; 0],
281}
282extern "C" {
283    #[doc = " @brief Obtains the native resource manager based on the JavaScript resource manager.\n\n You need to obtain the resource manager to process raw files as required.\n\n @param env Indicates the pointer to the JavaScript Native Interface (napi) environment.\n @param jsResMgr Indicates the JavaScript resource manager.\n @return Returns the pointer to {@link NativeResourceManager}. If failed returns nullptr.\n @since 8\n @version 1.0"]
284    pub fn OH_ResourceManager_InitNativeResourceManager(
285        env: napi_env,
286        jsResMgr: napi_value,
287    ) -> *mut NativeResourceManager;
288}
289extern "C" {
290    #[doc = " @brief Releases the native resource manager.\n\n\n\n @param resMgr Indicates the pointer to {@link RawDir}.\n @since 8\n @version 1.0"]
291    pub fn OH_ResourceManager_ReleaseNativeResourceManager(resMgr: *mut NativeResourceManager);
292}
293extern "C" {
294    #[doc = " @brief Opens a raw file directory.\n\n After it is opened, you can traverse its raw files.\n\n @param mgr Indicates the pointer to {@link NativeResourceManager} obtained by calling\n {@link OH_ResourceManager_InitNativeResourceManager}.\n @param dirName Indicates the name of the raw file directory to open. You can pass an empty string to open the\n top-level raw file directory.\n @return Returns the pointer to {@link RawDir}. If failed or mgr is nullptr also returns nullptr.\n         After you finish using the pointer, call {@link OH_ResourceManager_CloseRawDir} to release it.\n @see OH_ResourceManager_InitNativeResourceManager\n @see OH_ResourceManager_CloseRawDir\n @since 8\n @version 1.0"]
295    pub fn OH_ResourceManager_OpenRawDir(
296        mgr: *const NativeResourceManager,
297        dirName: *const ::std::os::raw::c_char,
298    ) -> *mut RawDir;
299}
300extern "C" {
301    #[doc = " @brief Opens a raw file.\n\n After it is opened, you can read its data.\n\n @param mgr Indicates the pointer to {@link NativeResourceManager} obtained by calling\n {@link OH_ResourceManager_InitNativeResourceManager}.\n @param fileName Indicates the file path relative to the top-level raw file directory.\n @return Returns the pointer to {@link RawFile}. If failed or mgr and fileName is nullptr also returns nullptr.\n After you finish using the pointer, call {@link OH_ResourceManager_CloseRawFile} to release it.\n @see OH_ResourceManager_InitNativeResourceManager\n @see OH_ResourceManager_CloseRawFile\n @since 8\n @version 1.0"]
302    pub fn OH_ResourceManager_OpenRawFile(
303        mgr: *const NativeResourceManager,
304        fileName: *const ::std::os::raw::c_char,
305    ) -> *mut RawFile;
306}
307extern "C" {
308    #[doc = " @brief Opens a raw file.\n\n After it is opened, you can read its data.\n\n @param mgr Indicates the pointer to {@link NativeResourceManager} obtained by calling\n {@link OH_ResourceManager_InitNativeResourceManager}.\n @param fileName Indicates the file path relative to the top-level raw file directory.\n @return Returns the pointer to {@link RawFile64}. If failed or mgr and fileName is nullptr also returns nullptr.\n After you finish using the pointer, call {@link OH_ResourceManager_CloseRawFile64} to release it.\n @see OH_ResourceManager_InitNativeResourceManager\n @see OH_ResourceManager_CloseRawFile64\n @since 11\n @version 1.0"]
309    pub fn OH_ResourceManager_OpenRawFile64(
310        mgr: *const NativeResourceManager,
311        fileName: *const ::std::os::raw::c_char,
312    ) -> *mut RawFile64;
313}
314extern "C" {
315    #[doc = " @brief Whether the rawfile resource is a directory or not.\n\n @param mgr Indicates the pointer to {@link NativeResourceManager} obtained by calling\n {@link OH_ResourceManager_InitNativeResourceManager}.\n @param path Indicates the rawfile resource relative path.\n @return Returns true means the file path is directory, else false.\n @since 12\n @version 1.0"]
316    pub fn OH_ResourceManager_IsRawDir(
317        mgr: *const NativeResourceManager,
318        path: *const ::std::os::raw::c_char,
319    ) -> bool;
320}
321#[repr(C)]
322#[derive(Debug, Copy, Clone)]
323pub struct ArkUI_DrawableDescriptor {
324    _unused: [u8; 0],
325}
326extern "C" {
327    #[doc = " @brief Obtains the Base64 code of the image resource.\n\n Obtains the Base64 code of the image resource corresponding to the specified resource ID.\n\n @param mgr Indicates the pointer to {@link NativeResourceManager}\n {@link OH_ResourceManager_InitNativeResourceManager}.\n @param resId Indicates the resource ID.\n @param resultValue the result write to resultValue.\n @param resultLen the media length write to resultLen.\n @param density The optional parameter ScreenDensity{@link ScreenDensity}, A value of 0 means\n to use the density of current system dpi.\n @return {@link SUCCESS} 0 - Success.\n         {@link ERROR_CODE_INVALID_INPUT_PARAMETER} 401 - The input parameter invalid. Possible causes:\n         1.Incorrect parameter types; 2.Parameter verification failed.\n{@link ERROR_CODE_RES_ID_NOT_FOUND} 9001001 - Invalid resource ID.\n{@link ERROR_CODE_RES_NOT_FOUND_BY_ID} 9001002 - No matching resource is found based on the resource ID.\n{@link ERROR_CODE_OUT_OF_MEMORY} 9001100 - Out of memory.\n @since 12"]
328    pub fn OH_ResourceManager_GetMediaBase64(
329        mgr: *const NativeResourceManager,
330        resId: u32,
331        resultValue: *mut *mut ::std::os::raw::c_char,
332        resultLen: *mut u64,
333        density: u32,
334    ) -> ResourceManager_ErrorCode;
335}
336extern "C" {
337    #[doc = " @brief Obtains the Base64 code of the image resource.\n\n Obtains the Base64 code of the image resource corresponding to the specified resource ID.\n\n @param mgr Indicates the pointer to {@link NativeResourceManager}\n {@link OH_ResourceManager_InitNativeResourceManager}.\n @param resId Indicates the resource ID.\n @param resultValue the result write to resultValue.\n @param resultLen the media length write to resultLen.\n @param density The optional parameter ScreenDensity{@link ScreenDensity}, A value of 0 means\n to use the density of current system dpi. If this attribute is not required, set this parameter to 0.\n @return {@link SUCCESS} 0 - Success.\n         {@link ERROR_CODE_INVALID_INPUT_PARAMETER} 401 - The input parameter invalid. Possible causes:\n         1.Incorrect parameter types; 2.Parameter verification failed.\n{@link ERROR_CODE_RES_ID_NOT_FOUND} 9001001 - Invalid resource ID.\n{@link ERROR_CODE_RES_NOT_FOUND_BY_ID} 9001002 - No matching resource is found based on the resource ID.\n{@link ERROR_CODE_OUT_OF_MEMORY} 9001100 - Out of memory.\n @since 12"]
338    pub fn OH_ResourceManager_GetMediaBase64Data(
339        mgr: *const NativeResourceManager,
340        resId: u32,
341        resultValue: *mut *mut ::std::os::raw::c_char,
342        resultLen: *mut u64,
343        density: u32,
344    ) -> ResourceManager_ErrorCode;
345}
346extern "C" {
347    #[doc = " @brief Obtains the Base64 code of the image resource.\n\n Obtains the Base64 code of the image resource corresponding to the specified resource name.\n\n @param mgr Indicates the pointer to {@link NativeResourceManager}\n {@link OH_ResourceManager_InitNativeResourceManager}.\n @param resName Indicates the resource name.\n @param resultValue the result write to resultValue.\n @param resultLen the media length write to resultLen.\n @param density The optional parameter ScreenDensity{@link ScreenDensity}, A value of 0 means\n to use the density of current system dpi.\n @return {@link SUCCESS} 0 - Success.\n         {@link ERROR_CODE_INVALID_INPUT_PARAMETER} 401 - The input parameter invalid. Possible causes:\n         1.Incorrect parameter types; 2.Parameter verification failed.\n{@link ERROR_CODE_RES_NAME_NOT_FOUND} 9001003 - Invalid resource name.\n{@link ERROR_CODE_RES_NOT_FOUND_BY_NAME} 9001004 - No matching resource is found based on the resource name.\n{@link ERROR_CODE_OUT_OF_MEMORY} 9001100 - Out of memory.\n @since 12"]
348    pub fn OH_ResourceManager_GetMediaBase64ByName(
349        mgr: *const NativeResourceManager,
350        resName: *const ::std::os::raw::c_char,
351        resultValue: *mut *mut ::std::os::raw::c_char,
352        resultLen: *mut u64,
353        density: u32,
354    ) -> ResourceManager_ErrorCode;
355}
356extern "C" {
357    #[doc = " @brief Obtains the Base64 code of the image resource.\n\n Obtains the Base64 code of the image resource corresponding to the specified resource name.\n\n @param mgr Indicates the pointer to {@link NativeResourceManager}\n {@link OH_ResourceManager_InitNativeResourceManager}.\n @param resName Indicates the resource name.\n @param resultValue the result write to resultValue.\n @param resultLen the media length write to resultLen.\n @param density The optional parameter ScreenDensity{@link ScreenDensity}, A value of 0 means\n to use the density of current system dpi. If this attribute is not required, set this parameter to 0.\n @return {@link SUCCESS} 0 - Success.\n         {@link ERROR_CODE_INVALID_INPUT_PARAMETER} 401 - The input parameter invalid. Possible causes:\n         1.Incorrect parameter types; 2.Parameter verification failed.\n{@link ERROR_CODE_RES_NAME_NOT_FOUND} 9001003 - Invalid resource name.\n{@link ERROR_CODE_RES_NOT_FOUND_BY_NAME} 9001004 - No matching resource is found based on the resource name.\n{@link ERROR_CODE_OUT_OF_MEMORY} 9001100 - Out of memory.\n @since 12"]
358    pub fn OH_ResourceManager_GetMediaBase64DataByName(
359        mgr: *const NativeResourceManager,
360        resName: *const ::std::os::raw::c_char,
361        resultValue: *mut *mut ::std::os::raw::c_char,
362        resultLen: *mut u64,
363        density: u32,
364    ) -> ResourceManager_ErrorCode;
365}
366extern "C" {
367    #[doc = " @brief Obtains the content of the image resource.\n\n Obtains the content of the specified screen density media file corresponding to a specified resource ID.\n\n @param mgr Indicates the pointer to {@link NativeResourceManager}\n {@link OH_ResourceManager_InitNativeResourceManager}.\n @param resId Indicates the resource ID.\n @param resultValue the result write to resultValue.\n @param resultLen the media length write to resultLen.\n @param density The optional parameter ScreenDensity{@link ScreenDensity}, A value of 0 means\n to use the density of current system dpi.\n @return {@link SUCCESS} 0 - Success.\n         {@link ERROR_CODE_INVALID_INPUT_PARAMETER} 401 - The input parameter invalid. Possible causes:\n         1.Incorrect parameter types; 2.Parameter verification failed.\n{@link ERROR_CODE_RES_ID_NOT_FOUND} 9001001 - Invalid resource ID.\n{@link ERROR_CODE_RES_NOT_FOUND_BY_ID} 9001002 - No matching resource is found based on the resource ID.\n{@link ERROR_CODE_OUT_OF_MEMORY} 9001100 - Out of memory.\n @since 12"]
368    pub fn OH_ResourceManager_GetMedia(
369        mgr: *const NativeResourceManager,
370        resId: u32,
371        resultValue: *mut *mut u8,
372        resultLen: *mut u64,
373        density: u32,
374    ) -> ResourceManager_ErrorCode;
375}
376extern "C" {
377    #[doc = " @brief Obtains the content of the image resource.\n\n Obtains the content of the specified screen density media file corresponding to a specified resource ID.\n\n @param mgr Indicates the pointer to {@link NativeResourceManager}\n {@link OH_ResourceManager_InitNativeResourceManager}.\n @param resId Indicates the resource ID.\n @param resultValue the result write to resultValue.\n @param resultLen the media length write to resultLen.\n @param density The optional parameter ScreenDensity{@link ScreenDensity}, A value of 0 means\n to use the density of current system dpi. If this attribute is not required, set this parameter to 0.\n @return {@link SUCCESS} 0 - Success.\n         {@link ERROR_CODE_INVALID_INPUT_PARAMETER} 401 - The input parameter invalid. Possible causes:\n         1.Incorrect parameter types; 2.Parameter verification failed.\n{@link ERROR_CODE_RES_ID_NOT_FOUND} 9001001 - Invalid resource ID.\n{@link ERROR_CODE_RES_NOT_FOUND_BY_ID} 9001002 - No matching resource is found based on the resource ID.\n{@link ERROR_CODE_OUT_OF_MEMORY} 9001100 - Out of memory.\n @since 12"]
378    pub fn OH_ResourceManager_GetMediaData(
379        mgr: *const NativeResourceManager,
380        resId: u32,
381        resultValue: *mut *mut u8,
382        resultLen: *mut u64,
383        density: u32,
384    ) -> ResourceManager_ErrorCode;
385}
386extern "C" {
387    #[doc = " @brief Obtains the content of the image resource.\n\n Obtains the content of the specified screen density media file corresponding to a specified resource name.\n\n @param mgr Indicates the pointer to {@link NativeResourceManager}\n {@link OH_ResourceManager_InitNativeResourceManager}.\n @param resName Indicates the resource name.\n @param resultValue the result write to resultValue.\n @param resultLen the media length write to resultLen.\n @param density The optional parameter ScreenDensity{@link ScreenDensity}, A value of 0 means\n to use the density of current system dpi.\n @return {@link SUCCESS} 0 - Success.\n         {@link ERROR_CODE_INVALID_INPUT_PARAMETER} 401 - The input parameter invalid. Possible causes:\n         1.Incorrect parameter types; 2.Parameter verification failed.\n{@link ERROR_CODE_RES_NAME_NOT_FOUND} 9001003 - Invalid resource name.\n{@link ERROR_CODE_RES_NOT_FOUND_BY_NAME} 9001004 - No matching resource is found based on the resource name.\n{@link ERROR_CODE_OUT_OF_MEMORY} 9001100 - Out of memory.\n @since 12"]
388    pub fn OH_ResourceManager_GetMediaByName(
389        mgr: *const NativeResourceManager,
390        resName: *const ::std::os::raw::c_char,
391        resultValue: *mut *mut u8,
392        resultLen: *mut u64,
393        density: u32,
394    ) -> ResourceManager_ErrorCode;
395}
396extern "C" {
397    #[doc = " @brief Obtains the content of the image resource.\n\n Obtains the content of the specified screen density media file corresponding to a specified resource name.\n\n @param mgr Indicates the pointer to {@link NativeResourceManager}\n {@link OH_ResourceManager_InitNativeResourceManager}.\n @param resName Indicates the resource name.\n @param resultValue the result write to resultValue.\n @param resultLen the media length write to resultLen.\n @param density The optional parameter ScreenDensity{@link ScreenDensity}, A value of 0 means\n to use the density of current system dpi. If this attribute is not required, set this parameter to 0.\n @return {@link SUCCESS} 0 - Success.\n         {@link ERROR_CODE_INVALID_INPUT_PARAMETER} 401 - The input parameter invalid. Possible causes:\n         1.Incorrect parameter types; 2.Parameter verification failed.\n{@link ERROR_CODE_RES_NAME_NOT_FOUND} 9001003 - Invalid resource name.\n{@link ERROR_CODE_RES_NOT_FOUND_BY_NAME} 9001004 - No matching resource is found based on the resource name.\n{@link ERROR_CODE_OUT_OF_MEMORY} 9001100 - Out of memory.\n @since 12"]
398    pub fn OH_ResourceManager_GetMediaDataByName(
399        mgr: *const NativeResourceManager,
400        resName: *const ::std::os::raw::c_char,
401        resultValue: *mut *mut u8,
402        resultLen: *mut u64,
403        density: u32,
404    ) -> ResourceManager_ErrorCode;
405}
406extern "C" {
407    #[doc = " @brief Obtains the DrawableDescriptor of the media file.\n\n Obtains the DrawableDescriptor of the media file corresponding to a specified resource ID.\n\n @param mgr Indicates the pointer to {@link NativeResourceManager}\n {@link OH_ResourceManager_InitNativeResourceManager}.\n @param resId Indicates the resource ID.\n @param drawableDescriptor the result write to drawableDescriptor.\n @param density The optional parameter ScreenDensity{@link ScreenDensity}, A value of 0 means\n to use the density of current system dpi.\n @param type The optional parameter means the media type, 0 means the normal media, 1 means the the theme style media.\n @return {@link SUCCESS} 0 - Success.\n         {@link ERROR_CODE_INVALID_INPUT_PARAMETER} 401 - The input parameter invalid. Possible causes:\n         1.Incorrect parameter types; 2.Parameter verification failed.\n{@link ERROR_CODE_RES_ID_NOT_FOUND} 9001001 - Invalid resource ID.\n{@link ERROR_CODE_RES_NOT_FOUND_BY_ID} 9001002 - No matching resource is found based on the resource ID.\n @since 12"]
408    pub fn OH_ResourceManager_GetDrawableDescriptor(
409        mgr: *const NativeResourceManager,
410        resId: u32,
411        drawableDescriptor: *mut *mut ArkUI_DrawableDescriptor,
412        density: u32,
413        type_: u32,
414    ) -> ResourceManager_ErrorCode;
415}
416extern "C" {
417    #[doc = " @brief Obtains the DrawableDescriptor of the media file.\n\n Obtains the DrawableDescriptor of the media file corresponding to a specified resource ID.\n\n @param mgr Indicates the pointer to {@link NativeResourceManager}\n {@link OH_ResourceManager_InitNativeResourceManager}.\n @param resId Indicates the resource ID.\n @param drawableDescriptor the result write to drawableDescriptor.\n @param density The optional parameter ScreenDensity{@link ScreenDensity}, A value of 0 means\n to use the density of current system dpi. If this attribute is not required, set this parameter to 0.\n @param type The optional parameter means the media type, 0 means the normal media, 1 means the the theme style media.\n If this attribute is not required, set this parameter to 0.\n @return {@link SUCCESS} 0 - Success.\n         {@link ERROR_CODE_INVALID_INPUT_PARAMETER} 401 - The input parameter invalid. Possible causes:\n         1.Incorrect parameter types; 2.Parameter verification failed.\n{@link ERROR_CODE_RES_ID_NOT_FOUND} 9001001 - Invalid resource ID.\n{@link ERROR_CODE_RES_NOT_FOUND_BY_ID} 9001002 - No matching resource is found based on the resource ID.\n @since 12"]
418    pub fn OH_ResourceManager_GetDrawableDescriptorData(
419        mgr: *const NativeResourceManager,
420        resId: u32,
421        drawableDescriptor: *mut *mut ArkUI_DrawableDescriptor,
422        density: u32,
423        type_: u32,
424    ) -> ResourceManager_ErrorCode;
425}
426extern "C" {
427    #[doc = " @brief Obtains the DrawableDescriptor of the media file.\n\n Obtains the DrawableDescriptor of the media file corresponding to a specified resource name.\n @param mgr Indicates the pointer to {@link NativeResourceManager}\n {@link OH_ResourceManager_InitNativeResourceManager}.\n @param resName Indicates the resource name.\n @param drawableDescriptor the result write to drawableDescriptor.\n @param density The optional parameter ScreenDensity{@link ScreenDensity}, A value of 0 means\n to use the density of current system dpi.\n @param type The optional parameter means the media type, 0 means the normal media, 1 means the the theme style media,\n 2 means the theme dynamic media.\n @return {@link SUCCESS} 0 - Success.\n         {@link ERROR_CODE_INVALID_INPUT_PARAMETER} 401 - The input parameter invalid. Possible causes:\n         1.Incorrect parameter types; 2.Parameter verification failed.\n{@link ERROR_CODE_RES_NAME_NOT_FOUND} 9001003 - Invalid resource name.\n{@link ERROR_CODE_RES_NOT_FOUND_BY_NAME} 9001004 - No matching resource is found based on the resource name.\n @since 12"]
428    pub fn OH_ResourceManager_GetDrawableDescriptorByName(
429        mgr: *const NativeResourceManager,
430        resName: *const ::std::os::raw::c_char,
431        drawableDescriptor: *mut *mut ArkUI_DrawableDescriptor,
432        density: u32,
433        type_: u32,
434    ) -> ResourceManager_ErrorCode;
435}
436extern "C" {
437    #[doc = " @brief Obtains the DrawableDescriptor of the media file.\n\n Obtains the DrawableDescriptor of the media file corresponding to a specified resource name.\n @param mgr Indicates the pointer to {@link NativeResourceManager}\n {@link OH_ResourceManager_InitNativeResourceManager}.\n @param resName Indicates the resource name.\n @param drawableDescriptor the result write to drawableDescriptor.\n @param density The optional parameter ScreenDensity{@link ScreenDensity}, A value of 0 means\n to use the density of current system dpi. If this attribute is not required, set this parameter to 0.\n @param type The optional parameter means the media type, 0 means the normal media, 1 means the the theme style media,\n 2 means the theme dynamic media. If this attribute is not required, set this parameter to 0.\n @return {@link SUCCESS} 0 - Success.\n         {@link ERROR_CODE_INVALID_INPUT_PARAMETER} 401 - The input parameter invalid. Possible causes:\n         1.Incorrect parameter types; 2.Parameter verification failed.\n{@link ERROR_CODE_RES_NAME_NOT_FOUND} 9001003 - Invalid resource name.\n{@link ERROR_CODE_RES_NOT_FOUND_BY_NAME} 9001004 - No matching resource is found based on the resource name.\n @since 12"]
438    pub fn OH_ResourceManager_GetDrawableDescriptorDataByName(
439        mgr: *const NativeResourceManager,
440        resName: *const ::std::os::raw::c_char,
441        drawableDescriptor: *mut *mut ArkUI_DrawableDescriptor,
442        density: u32,
443        type_: u32,
444    ) -> ResourceManager_ErrorCode;
445}
446extern "C" {
447    #[doc = " @brief Obtains the symbol resource.\n\n Obtains the symbol resource corresponding to the specified resource ID.\n\n @param mgr Indicates the pointer to {@link NativeResourceManager}\n        {@link OH_ResourceManager_InitNativeResourceManager}.\n @param resId Indicates the resource ID.\n @param resultValue the result write to resultValue.\n @return {@link SUCCESS} 0 - Success.\n         {@link ERROR_CODE_INVALID_INPUT_PARAMETER} 401 - The input parameter invalid.\nPossible causes: Incorrect parameter types.\n{@link ERROR_CODE_RES_ID_NOT_FOUND} 9001001 - Invalid resource ID.\n{@link ERROR_CODE_RES_NOT_FOUND_BY_ID} 9001002 - No matching resource is found based on the resource ID.\n{@link ERROR_CODE_RES_REF_TOO_MUCH} 9001006 - The resource is referenced cyclically.\n @since 12"]
448    pub fn OH_ResourceManager_GetSymbol(
449        mgr: *const NativeResourceManager,
450        resId: u32,
451        resultValue: *mut u32,
452    ) -> ResourceManager_ErrorCode;
453}
454extern "C" {
455    #[doc = " @brief Obtains the symbol resource.\n\n Obtains the symbol resource corresponding to the specified resource name.\n\n @param mgr Indicates the pointer to {@link NativeResourceManager}\n        {@link OH_ResourceManager_InitNativeResourceManager}.\n @param resName Indicates the resource name.\n @param resultValue the result write to resultValue.\n @return {@link SUCCESS} 0 - Success.\n         {@link ERROR_CODE_INVALID_INPUT_PARAMETER} 401 - The input parameter invalid.\nPossible causes: Incorrect parameter types.\n{@link ERROR_CODE_RES_NAME_NOT_FOUND} 9001003 - Invalid resource name.\n{@link ERROR_CODE_RES_NOT_FOUND_BY_NAME} 9001004 - No matching resource is found based on the resource name.\n{@link ERROR_CODE_RES_REF_TOO_MUCH} 9001006 - The resource is referenced cyclically.\n @since 12"]
456    pub fn OH_ResourceManager_GetSymbolByName(
457        mgr: *const NativeResourceManager,
458        resName: *const ::std::os::raw::c_char,
459        resultValue: *mut u32,
460    ) -> ResourceManager_ErrorCode;
461}
462extern "C" {
463    #[doc = " @brief Obtains locales list.\n\n You need to call the OH_ResourceManager_ReleaseStringArray() method to release the memory of localinfo.\n\n @param mgr Indicates the pointer to {@link NativeResourceManager}\n        {@link OH_ResourceManager_InitNativeResourceManager}.\n @param resultValue the result write to resultValue.\n @param resultLen the locales length write to resultLen.\n @param includeSystem the parameter controls whether to include system resources,\n the default value is false, it has no effect when only system resources query the locales list.\n @return {@link SUCCESS} 0 - Success.\n         {@link ERROR_CODE_INVALID_INPUT_PARAMETER} 401 - The input parameter invalid.\nPossible causes: Incorrect parameter types.\n         {@link ERROR_CODE_OUT_OF_MEMORY} 9001100 - Out of memory.\n @since 12"]
464    pub fn OH_ResourceManager_GetLocales(
465        mgr: *const NativeResourceManager,
466        resultValue: *mut *mut *mut ::std::os::raw::c_char,
467        resultLen: *mut u32,
468        includeSystem: bool,
469    ) -> ResourceManager_ErrorCode;
470}
471extern "C" {
472    #[doc = " @brief Obtains locales list.\n\n You need to call the OH_ResourceManager_ReleaseStringArray() method to release the memory of localinfo.\n\n @param mgr Indicates the pointer to {@link NativeResourceManager}\n        {@link OH_ResourceManager_InitNativeResourceManager}.\n @param resultValue the result write to resultValue.\n @param resultLen the locales length write to resultLen.\n @param includeSystem the parameter controls whether to include system resources.\n If this attribute is not required, set this parameter to false.\n @return {@link SUCCESS} 0 - Success.\n         {@link ERROR_CODE_INVALID_INPUT_PARAMETER} 401 - The input parameter invalid.\nPossible causes: Incorrect parameter types.\n         {@link ERROR_CODE_OUT_OF_MEMORY} 9001100 - Out of memory.\n @since 12"]
473    pub fn OH_ResourceManager_GetLocalesData(
474        mgr: *const NativeResourceManager,
475        resultValue: *mut *mut *mut ::std::os::raw::c_char,
476        resultLen: *mut u32,
477        includeSystem: bool,
478    ) -> ResourceManager_ErrorCode;
479}
480extern "C" {
481    #[doc = " @brief Obtains the device configuration.\n\n You need to call the OH_ResourceManager_ReleaseConfiguration() method to release the memory.\n If you use malloc to create a ResourceManager_Configuration object, you also need to call free to release it.\n\n @param mgr Indicates the pointer to {@link NativeResourceManager}\n        {@link OH_ResourceManager_InitNativeResourceManager}.\n @param configuration the result write to ResourceManager_Configuration.\n @return {@link SUCCESS} 0 - Success.\n         {@link ERROR_CODE_INVALID_INPUT_PARAMETER} 401 - The input parameter invalid.\nPossible causes: Incorrect parameter types.\n{@link ERROR_CODE_SYSTEM_RES_MANAGER_GET_FAILED} 9001009 - If failed to access the system resource.\n{@link ERROR_CODE_OUT_OF_MEMORY} 9001100 - Out of memory.\n @since 12\n @deprecated since 20\n @useinstead OH_ResourceManager_GetResourceConfiguration"]
482    pub fn OH_ResourceManager_GetConfiguration(
483        mgr: *const NativeResourceManager,
484        configuration: *mut ResourceManager_Configuration,
485    ) -> ResourceManager_ErrorCode;
486}
487extern "C" {
488    #[doc = " @brief Obtains the device configuration.\n\n You need to call the OH_ResourceManager_ReleaseConfiguration() method to release the memory.\n If you use malloc to create a ResourceManager_Configuration object, you also need to call free to release it.\n\n @param {NativeResourceManager} mgr Indicates the pointer to {@link NativeResourceManager}\n        {@link OH_ResourceManager_InitNativeResourceManager}.\n @param {ResourceManager_Configuration} configuration the result write to ResourceManager_Configuration.\n @return {@link SUCCESS} 0 - Success.\n{@link ERROR_CODE_SYSTEM_RES_MANAGER_GET_FAILED} 9001009 - If failed to access the system resource.\n{@link ERROR_CODE_OUT_OF_MEMORY} 9001100 - Out of memory.\n @since 20"]
489    #[cfg(feature = "api-20")]
490    pub fn OH_ResourceManager_GetResourceConfiguration(
491        mgr: *const NativeResourceManager,
492        configuration: *mut ResourceManager_Configuration,
493    ) -> ResourceManager_ErrorCode;
494}
495extern "C" {
496    #[doc = " @brief Release the device configuration.\n @param configuration the object need to release.\n @return {@link SUCCESS} 0 - Success.\n{@link ERROR_CODE_INVALID_INPUT_PARAMETER} 401 - The input parameter invalid.\nPossible causes: Incorrect parameter types.\n @since 12"]
497    pub fn OH_ResourceManager_ReleaseConfiguration(
498        configuration: *mut ResourceManager_Configuration,
499    ) -> ResourceManager_ErrorCode;
500}
501extern "C" {
502    #[doc = " @brief Obtains the character string.\n\n Obtains the character string corresponding to a specified resource ID.\n Obtain normal resource by calling OH_ResourceManager_GetString(mgr, resId, resultValue),\nobtain a formatted resource with replacements for %d, %s, %f,\ncall OH_ResourceManager_GetString(mgr, resId, resultValue, 10, \"format\", 10.10).\n You need to call free() to release the memory for the string.\n\n @param mgr Indicates the pointer to {@link NativeResourceManager}\n        {@link OH_ResourceManager_InitNativeResourceManager}.\n @param resId Indicates the resource ID.\n @param resultValue the result write to resultValue.\n @param { const char* | int | float } args - Indicates the formatting string resource parameters.\n @return {@link SUCCESS} 0 - Success.\n         {@link ERROR_CODE_INVALID_INPUT_PARAMETER} 401 - The input parameter invalid.\nPossible causes: Incorrect parameter types.\n{@link ERROR_CODE_RES_ID_NOT_FOUND} 9001001 - Invalid resource ID.\n{@link ERROR_CODE_RES_NOT_FOUND_BY_ID} 9001002 - No matching resource is found based on the resource ID.\n{@link ERROR_CODE_RES_REF_TOO_MUCH} 9001006 - The resource is referenced cyclically.\n{@link ERROR_CODE_OUT_OF_MEMORY} 9001100 - Out of memory.\n @since 12"]
503    pub fn OH_ResourceManager_GetString(
504        mgr: *const NativeResourceManager,
505        resId: u32,
506        resultValue: *mut *mut ::std::os::raw::c_char,
507        ...
508    ) -> ResourceManager_ErrorCode;
509}
510extern "C" {
511    #[doc = " @brief Obtains the character string.\n\n Obtains the character string corresponding to a specified resource name.\n Obtain normal resource by calling OH_ResourceManager_GetString(mgr, resName, resultValue),\nobtain a formatted resource with replacements for %d, %s, %f,\ncall OH_ResourceManager_GetString(mgr, resName, resultValue, 10, \"format\", 10.10).\n You need to call free() to release the memory for the string.\n\n @param mgr Indicates the pointer to {@link NativeResourceManager}\n        {@link OH_ResourceManager_InitNativeResourceManager}.\n @param resName Indicates the resource name.\n @param resultValue the result write to resultValue.\n @param { const char* | int | float } args - Indicates the formatting string resource parameters.\n @return {@link SUCCESS} 0 - Success.\n         {@link ERROR_CODE_INVALID_INPUT_PARAMETER} 401 - The input parameter invalid.\nPossible causes: Incorrect parameter types.\n{@link ERROR_CODE_RES_NAME_NOT_FOUND} 9001003 - Invalid resource name.\n{@link ERROR_CODE_RES_NOT_FOUND_BY_NAME} 9001004 - No matching resource is found based on the resource name.\n{@link ERROR_CODE_RES_REF_TOO_MUCH} 9001006 - The resource is referenced cyclically.\n{@link ERROR_CODE_OUT_OF_MEMORY} 9001100 - Out of memory.\n @since 12"]
512    pub fn OH_ResourceManager_GetStringByName(
513        mgr: *const NativeResourceManager,
514        resName: *const ::std::os::raw::c_char,
515        resultValue: *mut *mut ::std::os::raw::c_char,
516        ...
517    ) -> ResourceManager_ErrorCode;
518}
519extern "C" {
520    #[doc = " @brief Obtains the array of character strings.\n\n Obtains the array of character strings corresponding to a specified resource ID.\n You need to call the OH_ResourceManager_ReleaseStringArray() method to release the memory of string array.\n\n @param mgr Indicates the pointer to {@link NativeResourceManager}\n        {@link OH_ResourceManager_InitNativeResourceManager}.\n @param resId Indicates the resource ID.\n @param resultValue the result write to resultValue.\n @param resultLen the StringArray length write to resultLen.\n @return {@link SUCCESS} 0 - Success.\n         {@link ERROR_CODE_INVALID_INPUT_PARAMETER} 401 - The input parameter invalid.\nPossible causes: Incorrect parameter types.\n{@link ERROR_CODE_RES_ID_NOT_FOUND} 9001001 - Invalid resource ID.\n{@link ERROR_CODE_RES_NOT_FOUND_BY_ID} 9001002 - No matching resource is found based on the resource ID.\n{@link ERROR_CODE_RES_REF_TOO_MUCH} 9001006 - The resource is referenced cyclically.\n{@link ERROR_CODE_OUT_OF_MEMORY} 9001100 - Out of memory.\n @since 12"]
521    pub fn OH_ResourceManager_GetStringArray(
522        mgr: *const NativeResourceManager,
523        resId: u32,
524        resultValue: *mut *mut *mut ::std::os::raw::c_char,
525        resultLen: *mut u32,
526    ) -> ResourceManager_ErrorCode;
527}
528extern "C" {
529    #[doc = " @brief Obtains the array of character strings.\n\n Obtains the array of character strings corresponding to a specified resource name.\n You need to call the OH_ResourceManager_ReleaseStringArray() method to release the memory of string array.\n\n @param mgr Indicates the pointer to {@link NativeResourceManager}\n        {@link OH_ResourceManager_InitNativeResourceManager}.\n @param resName Indicates the resource name.\n @param resultValue the result write to resultValue.\n @param resultLen the StringArray length write to resultLen.\n @return {@link SUCCESS} 0 - Success.\n         {@link ERROR_CODE_INVALID_INPUT_PARAMETER} 401 - The input parameter invalid.\nPossible causes: Incorrect parameter types.\n{@link ERROR_CODE_RES_NAME_NOT_FOUND} 9001003 - Invalid resource name.\n{@link ERROR_CODE_RES_NOT_FOUND_BY_NAME} 9001004 - No matching resource is found based on the resource name.\n{@link ERROR_CODE_RES_REF_TOO_MUCH} 9001006 - The resource is referenced cyclically.\n{@link ERROR_CODE_OUT_OF_MEMORY} 9001100 - Out of memory.\n @since 12"]
530    pub fn OH_ResourceManager_GetStringArrayByName(
531        mgr: *const NativeResourceManager,
532        resName: *const ::std::os::raw::c_char,
533        resultValue: *mut *mut *mut ::std::os::raw::c_char,
534        resultLen: *mut u32,
535    ) -> ResourceManager_ErrorCode;
536}
537extern "C" {
538    #[doc = " @brief Release the array of character strings.\n @param resValue the array of character strings corresponding to the specified resource name.\n @param len the length of array.\n @return {@link SUCCESS} 0 - Success.\n{@link ERROR_CODE_INVALID_INPUT_PARAMETER} 401 - The input parameter invalid.\nPossible causes: Incorrect parameter types.\n @since 12"]
539    pub fn OH_ResourceManager_ReleaseStringArray(
540        resValue: *mut *mut *mut ::std::os::raw::c_char,
541        len: u32,
542    ) -> ResourceManager_ErrorCode;
543}
544extern "C" {
545    #[doc = " @brief Obtains the singular-plural character string represented.\n\n Obtains the singular-plural character string represented by the ID string corresponding to the specified number.\n You need to call free() to release the memory for the string.\n\n @param mgr Indicates the pointer to {@link NativeResourceManager}\n        {@link OH_ResourceManager_InitNativeResourceManager}.\n @param resId Indicates the resource ID.\n @param num - Indicates the number.\n @param resultValue the result write to resultValue.\n @return {@link SUCCESS} 0 - Success.\n         {@link ERROR_CODE_INVALID_INPUT_PARAMETER} 401 - The input parameter invalid.\nPossible causes: Incorrect parameter types.\n{@link ERROR_CODE_RES_ID_NOT_FOUND} 9001001 - Invalid resource ID.\n{@link ERROR_CODE_RES_NOT_FOUND_BY_ID} 9001002 - No matching resource is found based on the resource ID.\n{@link ERROR_CODE_RES_REF_TOO_MUCH} 9001006 - The resource is referenced cyclically.\n{@link ERROR_CODE_OUT_OF_MEMORY} 9001100 - Out of memory.\n @since 12\n @deprecated since 18\n @useinstead OH_ResourceManager_GetIntPluralString"]
546    pub fn OH_ResourceManager_GetPluralString(
547        mgr: *const NativeResourceManager,
548        resId: u32,
549        num: u32,
550        resultValue: *mut *mut ::std::os::raw::c_char,
551    ) -> ResourceManager_ErrorCode;
552}
553extern "C" {
554    #[doc = " @brief Obtains the singular-plural character string represented.\n\n Obtains the singular-plural character string represented by the Name string corresponding to the specified number.\n You need to call free() to release the memory for the string.\n\n @param mgr Indicates the pointer to {@link NativeResourceManager}\n        {@link OH_ResourceManager_InitNativeResourceManager}.\n @param resName Indicates the resource name.\n @param num - Indicates the number.\n @param resultValue the result write to resultValue.\n @return {@link SUCCESS} 0 - Success.\n         {@link ERROR_CODE_INVALID_INPUT_PARAMETER} 401 - The input parameter invalid.\nPossible causes: Incorrect parameter types.\n{@link ERROR_CODE_RES_NAME_NOT_FOUND} 9001003 - Invalid resource name.\n{@link ERROR_CODE_RES_NOT_FOUND_BY_NAME} 9001004 - No matching resource is found based on the resource name.\n{@link ERROR_CODE_RES_REF_TOO_MUCH} 9001006 - The resource is referenced cyclically.\n{@link ERROR_CODE_OUT_OF_MEMORY} 9001100 - Out of memory.\n @since 12\n @deprecated since 18\n @useinstead OH_ResourceManager_GetIntPluralStringByName"]
555    pub fn OH_ResourceManager_GetPluralStringByName(
556        mgr: *const NativeResourceManager,
557        resName: *const ::std::os::raw::c_char,
558        num: u32,
559        resultValue: *mut *mut ::std::os::raw::c_char,
560    ) -> ResourceManager_ErrorCode;
561}
562extern "C" {
563    #[doc = " @brief Obtains the singular-plural character string represented.\n\n Obtains the singular-plural character string represented by the ID string corresponding to the specified number.\n You need to call free() to release the memory for the string.\n\n @param mgr Indicates the pointer to {@link NativeResourceManager}\n        {@link OH_ResourceManager_InitNativeResourceManager}.\n @param resId Indicates the resource ID.\n @param num - an integer used to get the correct string for the current plural rules.\n @param resultValue the result write to resultValue.\n @param { const char* | int | float } args - Indicates the formatting string resource parameters.\n @return {@link SUCCESS} 0 - Success.\n         {@link ERROR_CODE_INVALID_INPUT_PARAMETER} 401 - The input parameter invalid.\nPossible causes: Incorrect parameter types.\n{@link ERROR_CODE_RES_ID_NOT_FOUND} 9001001 - Invalid resource ID.\n{@link ERROR_CODE_RES_NOT_FOUND_BY_ID} 9001002 - No matching resource is found based on the resource ID.\n{@link ERROR_CODE_RES_REF_TOO_MUCH} 9001006 - The resource is referenced cyclically.\n{@link ERROR_CODE_OUT_OF_MEMORY} 9001100 - Out of memory.\n @since 18"]
564    #[cfg(feature = "api-18")]
565    pub fn OH_ResourceManager_GetIntPluralString(
566        mgr: *const NativeResourceManager,
567        resId: u32,
568        num: u32,
569        resultValue: *mut *mut ::std::os::raw::c_char,
570        ...
571    ) -> ResourceManager_ErrorCode;
572}
573extern "C" {
574    #[doc = " @brief Obtains the singular-plural character string represented.\n\n Obtains the singular-plural character string represented by the ID string corresponding to the specified number.\n You need to call free() to release the memory for the string.\n\n @param mgr Indicates the pointer to {@link NativeResourceManager}\n        {@link OH_ResourceManager_InitNativeResourceManager}.\n @param resId Indicates the resource ID.\n @param num - a double parameter used to get the correct string for the current plural rules.\n @param resultValue the result write to resultValue.\n @param { const char* | int | float } args - Indicates the formatting string resource parameters.\n @return {@link SUCCESS} 0 - Success.\n         {@link ERROR_CODE_INVALID_INPUT_PARAMETER} 401 - The input parameter invalid.\nPossible causes: Incorrect parameter types.\n{@link ERROR_CODE_RES_ID_NOT_FOUND} 9001001 - Invalid resource ID.\n{@link ERROR_CODE_RES_NOT_FOUND_BY_ID} 9001002 - No matching resource is found based on the resource ID.\n{@link ERROR_CODE_RES_REF_TOO_MUCH} 9001006 - The resource is referenced cyclically.\n{@link ERROR_CODE_OUT_OF_MEMORY} 9001100 - Out of memory.\n @since 18"]
575    #[cfg(feature = "api-18")]
576    pub fn OH_ResourceManager_GetDoublePluralString(
577        mgr: *const NativeResourceManager,
578        resId: u32,
579        num: f64,
580        resultValue: *mut *mut ::std::os::raw::c_char,
581        ...
582    ) -> ResourceManager_ErrorCode;
583}
584extern "C" {
585    #[doc = " @brief Obtains the singular-plural character string represented.\n\n Obtains the singular-plural character string represented by the Name string corresponding to the specified number.\n You need to call free() to release the memory for the string.\n\n @param mgr Indicates the pointer to {@link NativeResourceManager}\n        {@link OH_ResourceManager_InitNativeResourceManager}.\n @param resName Indicates the resource name.\n @param num - an integer used to get the correct string for the current plural rules.\n @param resultValue the result write to resultValue.\n @param { const char* | int | float } args - Indicates the formatting string resource parameters.\n @return {@link SUCCESS} 0 - Success.\n         {@link ERROR_CODE_INVALID_INPUT_PARAMETER} 401 - The input parameter invalid.\nPossible causes: Incorrect parameter types.\n{@link ERROR_CODE_RES_NAME_NOT_FOUND} 9001003 - Invalid resource name.\n{@link ERROR_CODE_RES_NOT_FOUND_BY_NAME} 9001004 - No matching resource is found based on the resource name.\n{@link ERROR_CODE_RES_REF_TOO_MUCH} 9001006 - The resource is referenced cyclically.\n{@link ERROR_CODE_OUT_OF_MEMORY} 9001100 - Out of memory.\n @since 18"]
586    #[cfg(feature = "api-18")]
587    pub fn OH_ResourceManager_GetIntPluralStringByName(
588        mgr: *const NativeResourceManager,
589        resName: *const ::std::os::raw::c_char,
590        num: u32,
591        resultValue: *mut *mut ::std::os::raw::c_char,
592        ...
593    ) -> ResourceManager_ErrorCode;
594}
595extern "C" {
596    #[doc = " @brief Obtains the singular-plural character string represented.\n\n Obtains the singular-plural character string represented by the Name string corresponding to the specified number.\n You need to call free() to release the memory for the string.\n\n @param mgr Indicates the pointer to {@link NativeResourceManager}\n        {@link OH_ResourceManager_InitNativeResourceManager}.\n @param resName Indicates the resource name.\n @param num - a double parameter used to get the correct string for the current plural rules.\n @param resultValue the result write to resultValue.\n @param { const char* | int | float } args - Indicates the formatting string resource parameters.\n @return {@link SUCCESS} 0 - Success.\n         {@link ERROR_CODE_INVALID_INPUT_PARAMETER} 401 - The input parameter invalid.\nPossible causes: Incorrect parameter types.\n{@link ERROR_CODE_RES_NAME_NOT_FOUND} 9001003 - Invalid resource name.\n{@link ERROR_CODE_RES_NOT_FOUND_BY_NAME} 9001004 - No matching resource is found based on the resource name.\n{@link ERROR_CODE_RES_REF_TOO_MUCH} 9001006 - The resource is referenced cyclically.\n{@link ERROR_CODE_OUT_OF_MEMORY} 9001100 - Out of memory.\n @since 18"]
597    #[cfg(feature = "api-18")]
598    pub fn OH_ResourceManager_GetDoublePluralStringByName(
599        mgr: *const NativeResourceManager,
600        resName: *const ::std::os::raw::c_char,
601        num: f64,
602        resultValue: *mut *mut ::std::os::raw::c_char,
603        ...
604    ) -> ResourceManager_ErrorCode;
605}
606extern "C" {
607    #[doc = " @brief Obtains the color resource.\n\n Obtains the color resource corresponding to the specified resource ID.\n\n @param mgr Indicates the pointer to {@link NativeResourceManager}\n        {@link OH_ResourceManager_InitNativeResourceManager}.\n @param resId Indicates the resource ID.\n @param resultValue the result write to resultValue.\n @return {@link SUCCESS} 0 - Success.\n         {@link ERROR_CODE_INVALID_INPUT_PARAMETER} 401 - The input parameter invalid.\nPossible causes: Incorrect parameter types.\n{@link ERROR_CODE_RES_ID_NOT_FOUND} 9001001 - Invalid resource ID.\n{@link ERROR_CODE_RES_NOT_FOUND_BY_ID} 9001002 - No matching resource is found based on the resource ID.\n{@link ERROR_CODE_RES_REF_TOO_MUCH} 9001006 - The resource is referenced cyclically.\n @since 12"]
608    pub fn OH_ResourceManager_GetColor(
609        mgr: *const NativeResourceManager,
610        resId: u32,
611        resultValue: *mut u32,
612    ) -> ResourceManager_ErrorCode;
613}
614extern "C" {
615    #[doc = " @brief Obtains the color resource.\n\n Obtains the color resource corresponding to the specified resource name.\n\n @param mgr Indicates the pointer to {@link NativeResourceManager}\n        {@link OH_ResourceManager_InitNativeResourceManager}.\n @param resName Indicates the resource name.\n @param resultValue the result write to resultValue.\n @return {@link SUCCESS} 0 - Success.\n         {@link ERROR_CODE_INVALID_INPUT_PARAMETER} 401 - The input parameter invalid.\nPossible causes: Incorrect parameter types.\n{@link ERROR_CODE_RES_NAME_NOT_FOUND} 9001003 - Invalid resource name.\n{@link ERROR_CODE_RES_NOT_FOUND_BY_NAME} 9001004 - No matching resource is found based on the resource name.\n{@link ERROR_CODE_RES_REF_TOO_MUCH} 9001006 - The resource is referenced cyclically.\n @since 12"]
616    pub fn OH_ResourceManager_GetColorByName(
617        mgr: *const NativeResourceManager,
618        resName: *const ::std::os::raw::c_char,
619        resultValue: *mut u32,
620    ) -> ResourceManager_ErrorCode;
621}
622extern "C" {
623    #[doc = " @brief Obtains the Int resource.\n\n Obtains the Int resource corresponding to the specified resource ID.\n\n @param mgr Indicates the pointer to {@link NativeResourceManager}\n        {@link OH_ResourceManager_InitNativeResourceManager}.\n @param resId Indicates the resource ID.\n @param resultValue the result write to resultValue.\n @return {@link SUCCESS} 0 - Success.\n         {@link ERROR_CODE_INVALID_INPUT_PARAMETER} 401 - The input parameter invalid.\nPossible causes: Incorrect parameter types.\n{@link ERROR_CODE_RES_ID_NOT_FOUND} 9001001 - Invalid resource ID.\n{@link ERROR_CODE_RES_NOT_FOUND_BY_ID} 9001002 - No matching resource is found based on the resource ID.\n{@link ERROR_CODE_RES_REF_TOO_MUCH} 9001006 - The resource is referenced cyclically.\n @since 12"]
624    pub fn OH_ResourceManager_GetInt(
625        mgr: *const NativeResourceManager,
626        resId: u32,
627        resultValue: *mut ::std::os::raw::c_int,
628    ) -> ResourceManager_ErrorCode;
629}
630extern "C" {
631    #[doc = " @brief Obtains the Int resource.\n\n Obtains the Int resource corresponding to the specified resource name.\n\n @param mgr Indicates the pointer to {@link NativeResourceManager}\n        {@link OH_ResourceManager_InitNativeResourceManager}.\n @param resName Indicates the resource name.\n @param resultValue the result write to resultValue.\n @return {@link SUCCESS} 0 - Success.\n         {@link ERROR_CODE_INVALID_INPUT_PARAMETER} 401 - The input parameter invalid.\nPossible causes: Incorrect parameter types.\n{@link ERROR_CODE_RES_NAME_NOT_FOUND} 9001003 - Invalid resource name.\n{@link ERROR_CODE_RES_NOT_FOUND_BY_NAME} 9001004 - No matching resource is found based on the resource name.\n{@link ERROR_CODE_RES_REF_TOO_MUCH} 9001006 - The resource is referenced cyclically.\n @since 12"]
632    pub fn OH_ResourceManager_GetIntByName(
633        mgr: *const NativeResourceManager,
634        resName: *const ::std::os::raw::c_char,
635        resultValue: *mut ::std::os::raw::c_int,
636    ) -> ResourceManager_ErrorCode;
637}
638extern "C" {
639    #[doc = " @brief Obtains the Float resource.\n\n Obtains the Int resource corresponding to the specified resource ID.\n\n @param mgr Indicates the pointer to {@link NativeResourceManager}\n        {@link OH_ResourceManager_InitNativeResourceManager}.\n @param resId Indicates the resource ID.\n @param resultValue the result write to resultValue.\n @return {@link SUCCESS} 0 - Success.\n         {@link ERROR_CODE_INVALID_INPUT_PARAMETER} 401 - The input parameter invalid.\nPossible causes: Incorrect parameter types.\n{@link ERROR_CODE_RES_ID_NOT_FOUND} 9001001 - Invalid resource ID.\n{@link ERROR_CODE_RES_NOT_FOUND_BY_ID} 9001002 - No matching resource is found based on the resource ID.\n{@link ERROR_CODE_RES_REF_TOO_MUCH} 9001006 - The resource is referenced cyclically.\n @since 12"]
640    pub fn OH_ResourceManager_GetFloat(
641        mgr: *const NativeResourceManager,
642        resId: u32,
643        resultValue: *mut f32,
644    ) -> ResourceManager_ErrorCode;
645}
646extern "C" {
647    #[doc = " @brief Obtains the Float resource.\n\n Obtains the Float resource corresponding to the specified resource name.\n\n @param mgr Indicates the pointer to {@link NativeResourceManager}\n        {@link OH_ResourceManager_InitNativeResourceManager}.\n @param resName Indicates the resource name.\n @param resultValue the result write to resultValue.\n @return {@link SUCCESS} 0 - Success.\n         {@link ERROR_CODE_INVALID_INPUT_PARAMETER} 401 - The input parameter invalid.\nPossible causes: Incorrect parameter types.\n{@link ERROR_CODE_RES_NAME_NOT_FOUND} 9001003 - Invalid resource name.\n{@link ERROR_CODE_RES_NOT_FOUND_BY_NAME} 9001004 - No matching resource is found based on the resource name.\n{@link ERROR_CODE_RES_REF_TOO_MUCH} 9001006 - The resource is referenced cyclically.\n @since 12"]
648    pub fn OH_ResourceManager_GetFloatByName(
649        mgr: *const NativeResourceManager,
650        resName: *const ::std::os::raw::c_char,
651        resultValue: *mut f32,
652    ) -> ResourceManager_ErrorCode;
653}
654extern "C" {
655    #[doc = " @brief Obtains the boolean result.\n\n Obtains the boolean result with a specified resource ID.\n\n @param mgr Indicates the pointer to {@link NativeResourceManager}\n        {@link OH_ResourceManager_InitNativeResourceManager}.\n @param resId Indicates the resource ID.\n @param resultValue the result write to resultValue.\n @return {@link SUCCESS} 0 - Success.\n         {@link ERROR_CODE_INVALID_INPUT_PARAMETER} 401 - The input parameter invalid.\nPossible causes: Incorrect parameter types.\n{@link ERROR_CODE_RES_ID_NOT_FOUND} 9001001 - Invalid resource ID.\n{@link ERROR_CODE_RES_NOT_FOUND_BY_ID} 9001002 - No matching resource is found based on the resource ID.\n{@link ERROR_CODE_RES_REF_TOO_MUCH} 9001006 - The resource is referenced cyclically.\n @since 12"]
656    pub fn OH_ResourceManager_GetBool(
657        mgr: *const NativeResourceManager,
658        resId: u32,
659        resultValue: *mut bool,
660    ) -> ResourceManager_ErrorCode;
661}
662extern "C" {
663    #[doc = " @brief Obtains the boolean result.\n\n Obtains the boolean result with a specified resource name.\n\n @param mgr Indicates the pointer to {@link NativeResourceManager}\n        {@link OH_ResourceManager_InitNativeResourceManager}.\n @param resName Indicates the resource name.\n @param resultValue the result write to resultValue.\n @return {@link SUCCESS} 0 - Success.\n         {@link ERROR_CODE_INVALID_INPUT_PARAMETER} 401 - The input parameter invalid.\nPossible causes: Incorrect parameter types.\n{@link ERROR_CODE_RES_NAME_NOT_FOUND} 9001003 - Invalid resource name.\n{@link ERROR_CODE_RES_NOT_FOUND_BY_NAME} 9001004 - No matching resource is found based on the resource name.\n{@link ERROR_CODE_RES_REF_TOO_MUCH} 9001006 - The resource is referenced cyclically.\n @since 12"]
664    pub fn OH_ResourceManager_GetBoolByName(
665        mgr: *const NativeResourceManager,
666        resName: *const ::std::os::raw::c_char,
667        resultValue: *mut bool,
668    ) -> ResourceManager_ErrorCode;
669}
670extern "C" {
671    #[doc = " @brief Add overlay resources during application runtime.\n @param mgr Indicates the pointer to {@link NativeResourceManager}\n        {@link OH_ResourceManager_InitNativeResourceManager}.\n @param path Indicates the application overlay path.\n @return {@link SUCCESS} 0 - Success.\n         {@link ERROR_CODE_INVALID_INPUT_PARAMETER} 401 - The input parameter invalid.\nPossible causes: Incorrect parameter types.\n{@link ERROR_CODE_OVERLAY_RES_PATH_INVALID} 9001010 - Invalid overlay path.\n @since 12"]
672    pub fn OH_ResourceManager_AddResource(
673        mgr: *const NativeResourceManager,
674        path: *const ::std::os::raw::c_char,
675    ) -> ResourceManager_ErrorCode;
676}
677extern "C" {
678    #[doc = " @brief Remove overlay resources during application runtime.\n @param mgr Indicates the pointer to {@link NativeResourceManager}\n        {@link OH_ResourceManager_InitNativeResourceManager}.\n @param path Indicates the application overlay path.\n @return {@link SUCCESS} 0 - Success.\n         {@link ERROR_CODE_INVALID_INPUT_PARAMETER} 401 - The input parameter invalid.\nPossible causes: Incorrect parameter types.\n{@link ERROR_CODE_OVERLAY_RES_PATH_INVALID} 9001010 - Invalid overlay path.\n @since 12"]
679    pub fn OH_ResourceManager_RemoveResource(
680        mgr: *const NativeResourceManager,
681        path: *const ::std::os::raw::c_char,
682    ) -> ResourceManager_ErrorCode;
683}