1# IDisplayComposer 2 3 4## 概述 5 6显示合成接口声明。 7 8主要提供注册热插拔事件回调、获取显示设备能力集等功能,具体方法使用详见函数说明。 9 10**起始版本:** 4.1 11 12**相关模块:**[Display](_display_v11.md) 13 14 15## 汇总 16 17 18### Public 成员函数 19 20| 名称 | 描述 | 21| -------- | -------- | 22| [RegSeamlessChangeCallback](#regseamlesschangecallback) ([in] [ISeamlessChangeCallback](interface_i_seamless_change_callback_v11.md) cb) | 注册要在准备好更改帧速率时调用的回调。 | 23| [GetDisplaySupportedModesExt](#getdisplaysupportedmodesext) ([in] unsigned int devId, [out] struct [DisplayModeInfoExt](_display_mode_info_ext_v11.md)[] modes) | 获取显示设备支持的显示模式。 | 24| [SetDisplayModeAsync](#setdisplaymodeasync) ([in] unsigned int devId, [in] unsigned int modeId, [in] [IModeCallback](interface_i_mode_callback_v11.md) cb) | 设置显示设备的显示模式。 | 25| [GetDisplayVBlankPeriod](#getdisplayvblankperiod) ([in] unsigned int devId, [out] unsigned long period) | 获取当前 vblank 周期。 | 26| [SetLayerPerFrameParameter](#setlayerperframeparameter) ([in] unsigned int devId, [in] unsigned int layerId, [in] String key, [out] byte[] value) | 设置给定图层的参数,参数更改必须在此调用后完全生效。 | 27| [GetSupportedLayerPerFrameParameterKey](#getsupportedlayerperframeparameterkey) ([out] String[] keys) | 返回支持的参数键的列表 | 28| [SetDisplayOverlayResolution](#setdisplayoverlayresolution) ([in] unsigned int devId, [in] unsigned int width, [in] unsigned int height) | 设置给定图层的参数,参数更改必须在此调用后完全生效。 | 29| [RegRefreshCallback](#regrefreshcallback) ([in] IRefreshCallback cb) | 注册要在发生刷新事件时调用的回调。 | 30| [GetDisplaySupportedColorGamuts](#getdisplaysupportedcolorgamuts) ([in] unsigned int devId, [out] struct ColorGamut[] gamuts) | 获取显示设备的色域。 | 31| [GetHDRCapabilityInfos](#gethdrcapabilityinfos) ([in] unsigned int devId, [out] struct HDRCapability info) | 获取显示设备的功能。 | 32 33 34## 成员函数说明 35 36 37### GetDisplaySupportedColorGamuts() 38 39``` 40IDisplayComposer::GetDisplaySupportedColorGamuts ([in] unsigned int devId, [out] struct ColorGamut[] gamuts ) 41``` 42 43**描述** 44 45 46获取显示设备的色域。 47 48**起始版本:** 4.1 49 50**参数:** 51 52| 名称 | 描述 | 53| -------- | -------- | 54| devId | 指示显示设备的 ID。 | 55| gamuts | 指示有关显示设备支持的所有色域的信息的向量。 | 56 57**返回:** 58 590 表示执行成功。 60 61其他值表示执行失败,具体错误码查看[DispErrCode](_display_v10.md#disperrcode)。 62 63 64### GetDisplaySupportedModesExt() 65 66``` 67IDisplayComposer::GetDisplaySupportedModesExt ([in] unsigned int devId, [out] struct DisplayModeInfoExt[] modes ) 68``` 69 70**描述** 71 72 73获取显示设备支持的显示模式。 74 75**起始版本:** 4.1 76 77**参数:** 78 79| 名称 | 描述 | 80| -------- | -------- | 81| devId | 指示显示设备的 ID。 | 82| modes | 表示有关显示设备支持的所有模式的信息向量, 包括所有支持的分辨率、刷新率和 groupId。每种模式都有一个 ID,该 ID 将在以下情况下使用 模式已设置或获取。有关详细信息,请参阅 [DisplayModeInfoExt](_display_mode_info_ext_v11.md)。 | 83 84**返回:** 85 860 表示执行成功。 87 88其他值表示执行失败,具体错误码查看[DispErrCode](_display_v10.md#disperrcode)。 89 90 91### GetDisplayVBlankPeriod() 92 93``` 94IDisplayComposer::GetDisplayVBlankPeriod ([in] unsigned int devId, [out] unsigned long period ) 95``` 96 97**描述** 98 99 100获取当前 vblank 周期。 101 102**起始版本:** 4.1 103 104**参数:** 105 106| 名称 | 描述 | 107| -------- | -------- | 108| devId | 指示显示设备的 ID。 | 109| period | 指示 vblank 周期 (ns)。 | 110 111**返回:** 112 1130 表示执行成功。 114 115其他值表示执行失败,具体错误码查看[DispErrCode](_display_v10.md#disperrcode)。 116 117 118### GetHDRCapabilityInfos() 119 120``` 121IDisplayComposer::GetHDRCapabilityInfos ([in] unsigned int devId, [out] struct HDRCapability info ) 122``` 123 124**描述** 125 126 127获取显示设备的功能。 128 129**起始版本:** 4.1 130 131**参数:** 132 133| 名称 | 描述 | 134| -------- | -------- | 135| devId | 指示显示设备的 ID。 | 136| info | 指示指向 hdr 设备支持的功能的指针。 | 137 138**返回:** 139 1400 表示执行成功。 141 142其他值表示执行失败,具体错误码查看[DispErrCode](_display_v10.md#disperrcode)。 143 144 145### GetSupportedLayerPerFrameParameterKey() 146 147``` 148IDisplayComposer::GetSupportedLayerPerFrameParameterKey ([out] String[] keys) 149``` 150 151**描述** 152 153 154返回支持的参数键的列表 155 156**起始版本:** 4.1 157 158**参数:** 159 160| 名称 | 描述 | 161| -------- | -------- | 162| keys | 指示支持的参数键。 | 163 164**返回:** 165 1660 表示执行成功。 167 168其他值表示执行失败,具体错误码查看[DispErrCode](_display_v10.md#disperrcode)。 169 170 171### RegRefreshCallback() 172 173``` 174IDisplayComposer::RegRefreshCallback ([in] IRefreshCallback cb) 175``` 176 177**描述** 178 179 180注册要在发生刷新事件时调用的回调。 181 182**起始版本:** 4.1 183 184**参数:** 185 186| 名称 | 描述 | 187| -------- | -------- | 188| cb | 指示用于通知图形服务发生刷新事件的实例。 | 189 190**返回:** 191 1920 表示执行成功。 193 194其他值表示执行失败,具体错误码查看[DispErrCode](_display_v10.md#disperrcode)。 195 196 197### RegSeamlessChangeCallback() 198 199``` 200IDisplayComposer::RegSeamlessChangeCallback ([in] ISeamlessChangeCallback cb) 201``` 202 203**描述** 204 205 206注册要在准备好更改帧速率时调用的回调。 207 208**起始版本:** 4.1 209 210**参数:** 211 212| 名称 | 描述 | 213| -------- | -------- | 214| cb | 指示用于通知图形服务已准备好更改帧速率的实例。 | 215 216**返回:** 217 2180 表示执行成功。 219 220其他值表示执行失败,具体错误码查看[DispErrCode](_display_v10.md#disperrcode)。 221 222 223### SetDisplayModeAsync() 224 225``` 226IDisplayComposer::SetDisplayModeAsync ([in] unsigned int devId, [in] unsigned int modeId, [in] IModeCallback cb ) 227``` 228 229**描述** 230 231 232设置显示设备的显示模式。 233 234**起始版本:** 4.1 235 236**参数:** 237 238| 名称 | 描述 | 239| -------- | -------- | 240| devId | 指示显示设备的 ID。 | 241| modeId | 指示显示模式的 ID。设备切换到指定的显示模式 此接口中的此参数。 | 242| cb | 表示更改模式时要调用的回调。 | 243 244**返回:** 245 2460 表示执行成功。 247 248其他值表示执行失败,具体错误码查看[DispErrCode](_display_v10.md#disperrcode)。 249 250 251### SetDisplayOverlayResolution() 252 253``` 254IDisplayComposer::SetDisplayOverlayResolution ([in] unsigned int devId, [in] unsigned int width, [in] unsigned int height ) 255``` 256 257**描述** 258 259 260设置给定图层的参数,参数更改必须在此调用后完全生效。 261 262**起始版本:** 4.1 263 264**参数:** 265 266| 名称 | 描述 | 267| -------- | -------- | 268| devId | 指示显示设备的 ID。 | 269| width | 指示显示设备的像素宽度 | 270| height | 指示显示设备的像素高度 | 271 272**返回:** 273 2740 表示执行成功。 275 276其他值表示执行失败,具体错误码查看[DispErrCode](_display_v10.md#disperrcode)。 277 278 279### SetLayerPerFrameParameter() 280 281``` 282IDisplayComposer::SetLayerPerFrameParameter ([in] unsigned int devId, [in] unsigned int layerId, [in] String key, [out] byte[] value ) 283``` 284 285**描述** 286 287 288设置给定图层的参数,参数更改必须在此调用后完全生效。 289 290**起始版本:** 4.1 291 292**参数:** 293 294| 名称 | 描述 | 295| -------- | -------- | 296| devId | 指示显示设备的 ID。 | 297| layerId | 指示要操作的层的 ID。 | 298| key | 指示特定键。 | 299| value | 指示与键对应的值。 | 300 301**返回:** 302 3030 表示执行成功。 304 305其他值表示执行失败,具体错误码查看[DispErrCode](_display_v10.md#disperrcode)。 306