#![allow(non_upper_case_globals)]
#![allow(non_camel_case_types)]
#![allow(non_snake_case)]
use crate::display_info::NativeDisplayManagerResult;
use crate::display_info::NativeDisplayManager_CutoutInfo;
#[cfg(feature = "api-14")]
use crate::display_info::NativeDisplayManager_DisplayInfo;
#[cfg(feature = "api-14")]
use crate::display_info::NativeDisplayManager_DisplaysInfo;
use crate::display_info::NativeDisplayManager_FoldDisplayMode;
use crate::display_info::NativeDisplayManager_Orientation;
use crate::display_info::NativeDisplayManager_Rotation;
#[cfg(feature = "api-20")]
use crate::display_info::{NativeDisplayManager_Rect, NativeDisplayManager_SourceMode};
#[cfg(feature = "api-12")]
#[cfg_attr(docsrs, doc(cfg(feature = "api-12")))]
pub type OH_NativeDisplayManager_DisplayChangeCallback =
::core::option::Option<unsafe extern "C" fn(displayId: u64)>;
#[cfg(feature = "api-12")]
#[cfg_attr(docsrs, doc(cfg(feature = "api-12")))]
pub type OH_NativeDisplayManager_FoldDisplayModeChangeCallback =
::core::option::Option<unsafe extern "C" fn(displayMode: NativeDisplayManager_FoldDisplayMode)>;
#[cfg(feature = "api-20")]
#[cfg_attr(docsrs, doc(cfg(feature = "api-20")))]
pub type OH_NativeDisplayManager_AvailableAreaChangeCallback =
::core::option::Option<unsafe extern "C" fn(displayId: u64)>;
#[cfg(feature = "api-20")]
#[cfg_attr(docsrs, doc(cfg(feature = "api-20")))]
pub type OH_NativeDisplayManager_DisplayAddCallback =
::core::option::Option<unsafe extern "C" fn(displayId: u64)>;
#[cfg(feature = "api-20")]
#[cfg_attr(docsrs, doc(cfg(feature = "api-20")))]
pub type OH_NativeDisplayManager_DisplayRemoveCallback =
::core::option::Option<unsafe extern "C" fn(displayId: u64)>;
extern "C" {
#[cfg(feature = "api-12")]
#[cfg_attr(docsrs, doc(cfg(feature = "api-12")))]
pub fn OH_NativeDisplayManager_GetDefaultDisplayId(
displayId: *mut u64,
) -> NativeDisplayManagerResult;
#[cfg(feature = "api-12")]
#[cfg_attr(docsrs, doc(cfg(feature = "api-12")))]
pub fn OH_NativeDisplayManager_GetDefaultDisplayWidth(
displayWidth: *mut i32,
) -> NativeDisplayManagerResult;
#[cfg(feature = "api-12")]
#[cfg_attr(docsrs, doc(cfg(feature = "api-12")))]
pub fn OH_NativeDisplayManager_GetDefaultDisplayHeight(
displayHeight: *mut i32,
) -> NativeDisplayManagerResult;
#[cfg(feature = "api-12")]
#[cfg_attr(docsrs, doc(cfg(feature = "api-12")))]
pub fn OH_NativeDisplayManager_GetDefaultDisplayRotation(
displayRotation: *mut NativeDisplayManager_Rotation,
) -> NativeDisplayManagerResult;
#[cfg(feature = "api-12")]
#[cfg_attr(docsrs, doc(cfg(feature = "api-12")))]
pub fn OH_NativeDisplayManager_GetDefaultDisplayOrientation(
displayOrientation: *mut NativeDisplayManager_Orientation,
) -> NativeDisplayManagerResult;
#[cfg(feature = "api-12")]
#[cfg_attr(docsrs, doc(cfg(feature = "api-12")))]
pub fn OH_NativeDisplayManager_GetDefaultDisplayVirtualPixelRatio(
virtualPixels: *mut f32,
) -> NativeDisplayManagerResult;
#[cfg(feature = "api-12")]
#[cfg_attr(docsrs, doc(cfg(feature = "api-12")))]
pub fn OH_NativeDisplayManager_GetDefaultDisplayRefreshRate(
refreshRate: *mut u32,
) -> NativeDisplayManagerResult;
#[cfg(feature = "api-12")]
#[cfg_attr(docsrs, doc(cfg(feature = "api-12")))]
pub fn OH_NativeDisplayManager_GetDefaultDisplayDensityDpi(
densityDpi: *mut i32,
) -> NativeDisplayManagerResult;
#[cfg(feature = "api-12")]
#[cfg_attr(docsrs, doc(cfg(feature = "api-12")))]
pub fn OH_NativeDisplayManager_GetDefaultDisplayDensityPixels(
densityPixels: *mut f32,
) -> NativeDisplayManagerResult;
#[cfg(feature = "api-12")]
#[cfg_attr(docsrs, doc(cfg(feature = "api-12")))]
pub fn OH_NativeDisplayManager_GetDefaultDisplayScaledDensity(
scaledDensity: *mut f32,
) -> NativeDisplayManagerResult;
#[cfg(feature = "api-12")]
#[cfg_attr(docsrs, doc(cfg(feature = "api-12")))]
pub fn OH_NativeDisplayManager_GetDefaultDisplayDensityXdpi(
xDpi: *mut f32,
) -> NativeDisplayManagerResult;
#[cfg(feature = "api-12")]
#[cfg_attr(docsrs, doc(cfg(feature = "api-12")))]
pub fn OH_NativeDisplayManager_GetDefaultDisplayDensityYdpi(
yDpi: *mut f32,
) -> NativeDisplayManagerResult;
#[cfg(feature = "api-12")]
#[cfg_attr(docsrs, doc(cfg(feature = "api-12")))]
pub fn OH_NativeDisplayManager_CreateDefaultDisplayCutoutInfo(
cutoutInfo: *mut *mut NativeDisplayManager_CutoutInfo,
) -> NativeDisplayManagerResult;
#[cfg(feature = "api-12")]
#[cfg_attr(docsrs, doc(cfg(feature = "api-12")))]
pub fn OH_NativeDisplayManager_DestroyDefaultDisplayCutoutInfo(
cutoutInfo: *mut NativeDisplayManager_CutoutInfo,
) -> NativeDisplayManagerResult;
#[cfg(feature = "api-12")]
#[cfg_attr(docsrs, doc(cfg(feature = "api-12")))]
pub fn OH_NativeDisplayManager_IsFoldable() -> bool;
#[cfg(feature = "api-12")]
#[cfg_attr(docsrs, doc(cfg(feature = "api-12")))]
pub fn OH_NativeDisplayManager_GetFoldDisplayMode(
displayMode: *mut NativeDisplayManager_FoldDisplayMode,
) -> NativeDisplayManagerResult;
#[cfg(feature = "api-12")]
#[cfg_attr(docsrs, doc(cfg(feature = "api-12")))]
pub fn OH_NativeDisplayManager_RegisterDisplayChangeListener(
displayChangeCallback: OH_NativeDisplayManager_DisplayChangeCallback,
listenerIndex: *mut u32,
) -> NativeDisplayManagerResult;
#[cfg(feature = "api-12")]
#[cfg_attr(docsrs, doc(cfg(feature = "api-12")))]
pub fn OH_NativeDisplayManager_UnregisterDisplayChangeListener(
listenerIndex: u32,
) -> NativeDisplayManagerResult;
#[cfg(feature = "api-12")]
#[cfg_attr(docsrs, doc(cfg(feature = "api-12")))]
pub fn OH_NativeDisplayManager_RegisterFoldDisplayModeChangeListener(
displayModeChangeCallback: OH_NativeDisplayManager_FoldDisplayModeChangeCallback,
listenerIndex: *mut u32,
) -> NativeDisplayManagerResult;
#[cfg(feature = "api-12")]
#[cfg_attr(docsrs, doc(cfg(feature = "api-12")))]
pub fn OH_NativeDisplayManager_UnregisterFoldDisplayModeChangeListener(
listenerIndex: u32,
) -> NativeDisplayManagerResult;
#[cfg(feature = "api-14")]
#[cfg_attr(docsrs, doc(cfg(feature = "api-14")))]
pub fn OH_NativeDisplayManager_CreateAllDisplays(
allDisplays: *mut *mut NativeDisplayManager_DisplaysInfo,
) -> NativeDisplayManagerResult;
#[cfg(feature = "api-14")]
#[cfg_attr(docsrs, doc(cfg(feature = "api-14")))]
pub fn OH_NativeDisplayManager_DestroyAllDisplays(
allDisplays: *mut NativeDisplayManager_DisplaysInfo,
);
#[cfg(feature = "api-14")]
#[cfg_attr(docsrs, doc(cfg(feature = "api-14")))]
pub fn OH_NativeDisplayManager_CreateDisplayById(
displayId: u32,
displayInfo: *mut *mut NativeDisplayManager_DisplayInfo,
) -> NativeDisplayManagerResult;
#[cfg(feature = "api-14")]
#[cfg_attr(docsrs, doc(cfg(feature = "api-14")))]
pub fn OH_NativeDisplayManager_DestroyDisplay(
displayInfo: *mut NativeDisplayManager_DisplayInfo,
);
#[cfg(feature = "api-14")]
#[cfg_attr(docsrs, doc(cfg(feature = "api-14")))]
pub fn OH_NativeDisplayManager_CreatePrimaryDisplay(
displayInfo: *mut *mut NativeDisplayManager_DisplayInfo,
) -> NativeDisplayManagerResult;
#[cfg(feature = "api-20")]
#[cfg_attr(docsrs, doc(cfg(feature = "api-20")))]
pub fn OH_NativeDisplayManager_RegisterAvailableAreaChangeListener(
availableAreaChangeCallback: OH_NativeDisplayManager_AvailableAreaChangeCallback,
listenerIndex: *mut u32,
) -> NativeDisplayManagerResult;
#[cfg(feature = "api-20")]
#[cfg_attr(docsrs, doc(cfg(feature = "api-20")))]
pub fn OH_NativeDisplayManager_UnregisterAvailableAreaChangeListener(
listenerIndex: u32,
) -> NativeDisplayManagerResult;
#[cfg(feature = "api-20")]
#[cfg_attr(docsrs, doc(cfg(feature = "api-20")))]
pub fn OH_NativeDisplayManager_CreateAvailableArea(
displayId: u64,
availableArea: *mut *mut NativeDisplayManager_Rect,
) -> NativeDisplayManagerResult;
#[cfg(feature = "api-20")]
#[cfg_attr(docsrs, doc(cfg(feature = "api-20")))]
pub fn OH_NativeDisplayManager_DestroyAvailableArea(
availableArea: *mut NativeDisplayManager_Rect,
) -> NativeDisplayManagerResult;
#[cfg(feature = "api-20")]
#[cfg_attr(docsrs, doc(cfg(feature = "api-20")))]
pub fn OH_NativeDisplayManager_RegisterDisplayAddListener(
displayAddCallback: OH_NativeDisplayManager_DisplayAddCallback,
listenerIndex: *mut u32,
) -> NativeDisplayManagerResult;
#[cfg(feature = "api-20")]
#[cfg_attr(docsrs, doc(cfg(feature = "api-20")))]
pub fn OH_NativeDisplayManager_UnregisterDisplayAddListener(
listenerIndex: u32,
) -> NativeDisplayManagerResult;
#[cfg(feature = "api-20")]
#[cfg_attr(docsrs, doc(cfg(feature = "api-20")))]
pub fn OH_NativeDisplayManager_RegisterDisplayRemoveListener(
displayRemoveCallback: OH_NativeDisplayManager_DisplayRemoveCallback,
listenerIndex: *mut u32,
) -> NativeDisplayManagerResult;
#[cfg(feature = "api-20")]
#[cfg_attr(docsrs, doc(cfg(feature = "api-20")))]
pub fn OH_NativeDisplayManager_UnregisterDisplayRemoveListener(
listenerIndex: u32,
) -> NativeDisplayManagerResult;
#[cfg(feature = "api-20")]
#[cfg_attr(docsrs, doc(cfg(feature = "api-20")))]
pub fn OH_NativeDisplayManager_GetDisplaySourceMode(
displayId: u64,
sourceMode: *mut NativeDisplayManager_SourceMode,
) -> NativeDisplayManagerResult;
#[cfg(feature = "api-20")]
#[cfg_attr(docsrs, doc(cfg(feature = "api-20")))]
pub fn OH_NativeDisplayManager_GetDisplayPosition(
displayId: u64,
x: *mut i32,
y: *mut i32,
) -> NativeDisplayManagerResult;
}