harmony 鸿蒙external_window.h

2023-06-24 浏览 (926)

external_window.h

Overview

The external_window.h file declares the functions for obtaining and using NativeWindow.

Since

8

Related Modules

NativeWindow

Summary

Structs

NameDescription
RegionDefines the rectangle (dirty region) where the content is to be updated in the local OHNativeWindow.
Region::RectDescribes a rectangle on the display.
OHHDRMetaDataDefines the HDR metadata.
OHExtDataHandleDefines the extended data handle.

Types

NameDescription
OHNativeWindowProvides the capability of accessing the OHNativeWindow.
OHNativeWindowBufferProvides the capability of accessing the OHNativeWindowBuffer.
RegionDefines the rectangle (dirty region) where the content is to be updated in the local OHNativeWindow.

Enums

NameDescription
NativeWindowOperation {
SET_BUFFER_GEOMETRY, GET_BUFFER_GEOMETRY, GET_FORMAT, SET_FORMAT,
GET_USAGE, SET_USAGE, SET_STRIDE, GET_STRIDE,
SET_SWAP_INTERVAL, GET_SWAP_INTERVAL, SET_TIMEOUT, GET_TIMEOUT,
SET_COLOR_GAMUT, GET_COLOR_GAMUT, SET_TRANSFORM, GET_TRANSFORM,
SET_UI_TIMESTAMP
}
Enumerates the operation codes in the OH_NativeWindow_NativeWindowHandleOpt function.
OHScalingMode { OH_SCALING_MODE_FREEZE = 0, OH_SCALING_MODE_SCALE_TO_WINDOW, OH_SCALING_MODE_SCALE_CROP, OH_SCALING_MODE_NO_SCALE_CROP }Enumerates the scaling modes.
OHHDRMetadataKey {
OH_METAKEY_RED_PRIMARY_X = 0, OH_METAKEY_RED_PRIMARY_Y = 1, OH_METAKEY_GREEN_PRIMARY_X = 2, OH_METAKEY_GREEN_PRIMARY_Y = 3,
OH_METAKEY_BLUE_PRIMARY_X = 4, OH_METAKEY_BLUE_PRIMARY_Y = 5, OH_METAKEY_WHITE_PRIMARY_X = 6, OH_METAKEY_WHITE_PRIMARY_Y = 7,
OH_METAKEY_MAX_LUMINANCE = 8, OH_METAKEY_MIN_LUMINANCE = 9, OH_METAKEY_MAX_CONTENT_LIGHT_LEVEL = 10, OH_METAKEY_MAX_FRAME_AVERAGE_LIGHT_LEVEL = 11,
OH_METAKEY_HDR10_PLUS = 12, OH_METAKEY_HDR_VIVID = 13
}
Enumerates the HDR metadata keys.

Functions

NameDescription
OH_NativeWindow_CreateNativeWindow (void *pSurface)Creates an OHNativeWindow instance. A new OHNativeWindow instance is created each time this function is called.
OH_NativeWindow_DestroyNativeWindow (OHNativeWindow *window)Decreases the reference count of an OHNativeWindow instance by 1 and when the reference count reaches 0, destroys the instance.
OH_NativeWindow_CreateNativeWindowBufferFromSurfaceBuffer (void *pSurfaceBuffer)Creates an OHNativeWindowBuffer instance. A new OHNativeWindowBuffer instance is created each time this function is called.
OH_NativeWindow_DestroyNativeWindowBuffer (OHNativeWindowBuffer *buffer)Decreases the reference count of an OHNativeWindowBuffer instance by 1 and when the reference count reaches 0, destroys the instance.
OH_NativeWindow_NativeWindowRequestBuffer (OHNativeWindow *window, OHNativeWindowBuffer **buffer, int *fenceFd)Requests an OHNativeWindowBuffer through an OHNativeWindow instance for content production.
OH_NativeWindow_NativeWindowFlushBuffer (OHNativeWindow *window, OHNativeWindowBuffer *buffer, int fenceFd, Region region)Flushes the OHNativeWindowBuffer filled with the content to the buffer queue through an OHNativeWindow instance for content consumption.
OH_NativeWindow_NativeWindowAbortBuffer (OHNativeWindow *window, OHNativeWindowBuffer *buffer)Returns the OHNativeWindowBuffer to the buffer queue through an OHNativeWindow instance, without filling in any content. The OHNativeWindowBuffer can be used for a new request.
OH_NativeWindow_NativeWindowHandleOpt (OHNativeWindow*window, int code,...)Sets or obtains the attributes of an OHNativeWindow, including the width, height, and content format.
OH_NativeWindow_GetBufferHandleFromNative (OHNativeWindowBuffer *buffer)Obtains the pointer to a BufferHandle of an OHNativeWindowBuffer instance.
OH_NativeWindow_NativeObjectReference (void *obj)Adds the reference count of a native object.
OH_NativeWindow_NativeObjectUnreference (void *obj)Decreases the reference count of a native object and when the reference count reaches 0, destroys this object.
OH_NativeWindow_GetNativeObjectMagic (void *obj)Obtains the magic ID of a native object.
OH_NativeWindow_NativeWindowSetScalingMode (OHNativeWindownative_window.md#ohscalingmode) scalingMode)Sets a scaling mode for an OHNativeWindow.
OH_NativeWindow_NativeWindowSetMetaData (OHNativeWindow *window, uint32_t sequence, int32_t size, const OHHDRMetaData *metaData)Sets metadata for an OHNativeWindow.
OH_NativeWindow_NativeWindowSetMetaDataSet (OHNativeWindow *window, uint32_t sequence, OHHDRMetadataKey key, int32_t size, const uint8_t *metaData)Sets a metadata set for an OHNativeWindow.
OH_NativeWindow_NativeWindowSetTunnelHandle (OHNativeWindow *window, const OHExtDataHandle *handle)Sets a tunnel handle to an OHNativeWindow.

你可能感兴趣的鸿蒙文章

harmony 鸿蒙Native APIs

harmony 鸿蒙AVCapability

harmony 鸿蒙AVDemuxer

harmony 鸿蒙AVMuxer

harmony 鸿蒙AVScreenCapture

harmony 鸿蒙AVSource

harmony 鸿蒙AudioDecoder

harmony 鸿蒙AudioEncoder

harmony 鸿蒙CodecBase

harmony 鸿蒙Core

  • 所属分类: 后端技术
  • 本文标签: 鸿蒙 软件
  • 版权声明: 本文链接 https://seaxiang.com/blog/c97a4ae14fb043cc8c79cce33bfbcb56