1# DeviceFuncs 2 3 4## 概述 5 6显示设备控制接口结构体,定义显示设备控制接口函数指针。 7 8**相关模块:** 9 10[Display](_display.md) 11 12 13## 汇总 14 15 16### Public 属性 17 18 | 名称 | 描述 | 19| -------- | -------- | 20| (\* [RegHotPlugCallback](_display.md#reghotplugcallback) )([HotPlugCallback](_display.md#hotplugcallback) callback, void \*data) | int32_t<br/>注册热插拔事件回调。 | 21| (\* [RegDisplayVBlankCallback](_display.md#regdisplayvblankcallback) )(uint32_t devId, [VBlankCallback](_display.md#vblankcallback) callback, void \*data) | int32_t<br/>注册VBlank事件回调。 | 22| (\* [RegDisplayRefreshCallback](_display.md#regdisplayrefreshcallback) )(uint32_t devId, [RefreshCallback](_display.md#refreshcallback) callback, void \*data) | int32_t<br/>刷新请求回调。 | 23| (\* [GetDisplayCapability](_display.md#getdisplaycapability) )(uint32_t devId, [DisplayCapability](_display_capability.md) \*info) | int32_t<br/>获取显示设备能力集。 | 24| (\* [GetDisplaySupportedModes](_display.md#getdisplaysupportedmodes) )(uint32_t devId, uint32_t \*num, [DisplayModeInfo](_display_mode_info.md) \*modes) | int32_t<br/>获取显示设备支持的显示模式信息。 | 25| (\* [GetDisplayMode](_display.md#getdisplaymode) )(uint32_t devId, uint32_t \*modeId) | int32_t<br/>获取显示设备当前的显示模式。 | 26| (\* [SetDisplayMode](_display.md#setdisplaymode) )(uint32_t devId, uint32_t modeId) | int32_t<br/>设置显示设备的显示模式。 | 27| (\* [GetDisplayPowerStatus](_display.md#getdisplaypowerstatus) )(uint32_t devId, [DispPowerStatus](_display.md#disppowerstatus) \*status) | int32_t<br/>获取显示设备当前的电源状态。 | 28| (\* [SetDisplayPowerStatus](_display.md#setdisplaypowerstatus) )(uint32_t devId, [DispPowerStatus](_display.md#disppowerstatus) status) | int32_t<br/>设置显示设备当前的电源状态。 | 29| (\* [GetDisplayBacklight](_display.md#getdisplaybacklight) )(uint32_t devId, uint32_t \*level) | int32_t<br/>获取显示设备当前的背光值。 | 30| (\* [SetDisplayBacklight](_display.md#setdisplaybacklight) )(uint32_t devId, uint32_t level) | int32_t<br/>设置显示设备当前的背光值。 | 31| (\* [GetDisplayProperty](_display.md#getdisplayproperty) )(uint32_t devId, uint32_t id, uint64_t \*value) | int32_t<br/>获取显示设备属性值。 | 32| (\* [SetDisplayProperty](_display.md#setdisplayproperty) )(uint32_t devId, uint32_t id, uint64_t value) | int32_t<br/>设置显示设备属性值。 | 33| (\* [PrepareDisplayLayers](_display.md#preparedisplaylayers) )(uint32_t devId, bool \*needFlushFb) | int32_t<br/>显示设备合成前准备。 | 34| (\* [GetDisplayCompChange](_display.md#getdisplaycompchange) )(uint32_t devId, uint32_t \*num, uint32_t \*Layers, int32_t \*type) | int32_t<br/>获取显示设备合成类型有变化的layer。 | 35| (\* [SetDisplayClientCrop](_display.md#setdisplayclientcrop) )(uint32_t devId, [IRect](_i_rect.md) \*rect) | int32_t<br/>设置显示设备的裁剪区域。 | 36| (\* [SetDisplayClientDestRect](_display.md#setdisplayclientdestrect) )(uint32_t devId, [IRect](_i_rect.md) \*rect) | int32_t<br/>设置显示设备的显示区域。 | 37| (\* [SetDisplayClientBuffer](_display.md#setdisplayclientbuffer) )(uint32_t devId, const BufferHandle \*buffer, int32_t fence) | int32_t<br/>设置显示设备的显示缓存。 | 38| (\* [SetDisplayClientDamage](_display.md#setdisplayclientdamage) )(uint32_t devId, uint32_t num, [IRect](_i_rect.md) \*rect) | int32_t<br/>设置显示设备的显示脏区。 | 39| (\* [SetDisplayVsyncEnabled](_display.md#setdisplayvsyncenabled) )(uint32_t devId, bool enabled) | int32_t<br/>使能垂直同步信号。 | 40| (\* [GetDisplayReleaseFence](_display.md#getdisplayreleasefence) )(uint32_t devId, uint32_t \*num, uint32_t \*layers, int32_t \*fences) | int32_t<br/>获取显示图层fence。 | 41| (\* [GetDisplaySupportedColorGamuts](_display.md#getdisplaysupportedcolorgamuts) )(uint32_t devId, uint32_t \*num, [ColorGamut](_display.md#colorgamut) \*gamuts) | int32_t<br/>获取显示设备支持的色域信息。 | 42| (\* [GetDisplayColorGamut](_display.md#getdisplaycolorgamut) )(uint32_t devId, [ColorGamut](_display.md#colorgamut) \*gamut) | int32_t<br/>获取显示设备当前的色域模式。 | 43| (\* [SetDisplayColorGamut](_display.md#setdisplaycolorgamut) )(uint32_t devId, [ColorGamut](_display.md#colorgamut) gamut) | int32_t<br/>设置显示设备当前的色域模式。 | 44| (\* [GetDisplayGamutMap](_display.md#getdisplaygamutmap) )(uint32_t devId, [GamutMap](_display.md#gamutmap) \*gamutMap) | int32_t<br/>获取显示设备当前的色域映射模式。 | 45| (\* [SetDisplayGamutMap](_display.md#setdisplaygamutmap) )(uint32_t devId, [GamutMap](_display.md#gamutmap) gamutMap) | int32_t<br/>设置显示设备当前的色域映射模式。 | 46| (\* [SetDisplayColorTransform](_display.md#setdisplaycolortransform) )(uint32_t devId, const float \*matrix) | int32_t<br/>设置显示设备当前的4x4的颜色转换矩阵。 | 47| (\* [GetHDRCapabilityInfos](_display.md#gethdrcapabilityinfos) )(uint32_t devId, [HDRCapability](_h_d_r_capability.md) \*info) | int32_t<br/>获取显示设备支持的HDR属性信息。 | 48| (\* [GetSupportedMetadataKey](_display.md#getsupportedmetadatakey) )(uint32_t devId, uint32_t \*num, [HDRMetadataKey](_display.md#hdrmetadatakey) \*keys) | int32_t<br/>获取显示设备支持的 HDRMetadataKey。 | 49| (\* [Commit](_display.md#commit) )(uint32_t devId, int32_t \*fence) | int32_t<br/>提交合成送显请求。 | 50| (\* [InvokeDisplayCmd](_display.md#invokedisplaycmd) )(uint32_t devId,...) | int32_t<br/>调用显示设备命令。 | 51| (\* [CreateVirtualDisplay](_display.md#createvirtualdisplay) )(uint32_t width, uint32_t height, int32_t \*format, uint32_t \*devId) | int32_t<br/>创建虚拟显示设备。 | 52| (\* [DestroyVirtualDisplay](_display.md#destroyvirtualdisplay) )(uint32_t devId) | int32_t<br/>销毁虚拟显示设备。 | 53| (\* [SetVirtualDisplayBuffer](_display.md#setvirtualdisplaybuffer) )(uint32_t devId, BufferHandle \*buffer, int32_t fence) | int32_t<br/>设置虚拟屏的输出缓存。 | 54| (\* [GetWriteBackFrame](_display.md#getwritebackframe) )(uint32_t devId, BufferHandle \*buffer, int32_t \*fence) | int32_t<br/>获取显示设备的回写帧。 | 55| (\* [CreateWriteBack](#createwriteback) )(uint32_t \*devId, uint32_t width, uint32_t height, int32_t \*format) | int32_t<br/>PixelFormat, 接口实现层可以根据硬件需求,修改format并返回给图形服务。 | 56| (\* [DestroyWriteBack](#destroywriteback) )(uint32_t devId) | int32_t<br/>销毁指定显示设备的回写点。 | 57 58 59## 类成员变量说明 60 61 62### CreateWriteBack 63 64 65``` 66int32_t(* DeviceFuncs::CreateWriteBack) (uint32_t *devId, uint32_t width, uint32_t height, int32_t *format) 67``` 68 69**描述:** 70 71PixelFormat, 接口实现层可以根据硬件需求,修改format并返回给图形服务。 72 73**返回:** 74 75DISPLAY_SUCCESS 表示执行成功。 76 77其他值表示执行失败,具体错误码查看[DispErrCode](_display.md#disperrcode)。 78 79 80### DestroyWriteBack 81 82 83``` 84int32_t(* DeviceFuncs::DestroyWriteBack) (uint32_t devId) 85``` 86 87**描述:** 88 89销毁指定显示设备的回写点。 90 91**参数:** 92 93 | 名称 | 描述 | 94| -------- | -------- | 95| devId | 输入参数,指示需要操作的设备ID。 | 96 97**返回:** 98 99DISPLAY_SUCCESS 表示执行成功。 100 101其他值表示执行失败,具体错误码查看[DispErrCode](_display.md#disperrcode)。 102