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