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**起始版本:** 4.1 48 49**参数:** 50 51| 名称 | 描述 | 52| -------- | -------- | 53| devId | 指示显示设备的 ID。 | 54| gamuts | 指示有关显示设备支持的所有色域的信息的向量。 | 55 56**返回:** 57 580 表示执行成功。 59 60其他值表示执行失败,具体错误码查看[DispErrCode](_display_v10.md#disperrcode)。 61 62 63### GetDisplaySupportedModesExt() 64 65``` 66IDisplayComposer::GetDisplaySupportedModesExt ([in] unsigned int devId, [out] struct DisplayModeInfoExt[] modes ) 67``` 68 69**描述** 70 71获取显示设备支持的显示模式。 72 73**起始版本:** 4.1 74 75**参数:** 76 77| 名称 | 描述 | 78| -------- | -------- | 79| devId | 指示显示设备的 ID。 | 80| modes | 表示有关显示设备支持的所有模式的信息向量, 包括所有支持的分辨率、刷新率和 groupId。每种模式都有一个 ID,该 ID 将在以下情况下使用 模式已设置或获取。有关详细信息,请参阅 [DisplayModeInfoExt](_display_mode_info_ext_v11.md)。 | 81 82**返回:** 83 840 表示执行成功。 85 86其他值表示执行失败,具体错误码查看[DispErrCode](_display_v10.md#disperrcode)。 87 88 89### GetDisplayVBlankPeriod() 90 91``` 92IDisplayComposer::GetDisplayVBlankPeriod ([in] unsigned int devId, [out] unsigned long period ) 93``` 94 95**描述** 96 97获取当前 vblank 周期。 98 99**起始版本:** 4.1 100 101**参数:** 102 103| 名称 | 描述 | 104| -------- | -------- | 105| devId | 指示显示设备的 ID。 | 106| period | 指示 vblank 周期 (ns)。 | 107 108**返回:** 109 1100 表示执行成功。 111 112其他值表示执行失败,具体错误码查看[DispErrCode](_display_v10.md#disperrcode)。 113 114 115### GetHDRCapabilityInfos() 116 117``` 118IDisplayComposer::GetHDRCapabilityInfos ([in] unsigned int devId, [out] struct HDRCapability info ) 119``` 120 121**描述** 122 123获取显示设备的功能。 124 125**起始版本:** 4.1 126 127**参数:** 128 129| 名称 | 描述 | 130| -------- | -------- | 131| devId | 指示显示设备的 ID。 | 132| info | 指示指向 hdr 设备支持的功能的指针。 | 133 134**返回:** 135 1360 表示执行成功。 137 138其他值表示执行失败,具体错误码查看[DispErrCode](_display_v10.md#disperrcode)。 139 140 141### GetSupportedLayerPerFrameParameterKey() 142 143``` 144IDisplayComposer::GetSupportedLayerPerFrameParameterKey ([out] String[] keys) 145``` 146 147**描述** 148 149返回支持的参数键的列表 150 151**起始版本:** 4.1 152 153**参数:** 154 155| 名称 | 描述 | 156| -------- | -------- | 157| keys | 指示支持的参数键。 | 158 159**返回:** 160 1610 表示执行成功。 162 163其他值表示执行失败,具体错误码查看[DispErrCode](_display_v10.md#disperrcode)。 164 165 166### RegRefreshCallback() 167 168``` 169IDisplayComposer::RegRefreshCallback ([in] IRefreshCallback cb) 170``` 171 172**描述** 173 174注册要在发生刷新事件时调用的回调。 175 176**起始版本:** 4.1 177 178**参数:** 179 180| 名称 | 描述 | 181| -------- | -------- | 182| cb | 指示用于通知图形服务发生刷新事件的实例。 | 183 184**返回:** 185 1860 表示执行成功。 187 188其他值表示执行失败,具体错误码查看[DispErrCode](_display_v10.md#disperrcode)。 189 190 191### RegSeamlessChangeCallback() 192 193``` 194IDisplayComposer::RegSeamlessChangeCallback ([in] ISeamlessChangeCallback cb) 195``` 196 197**描述** 198 199注册要在准备好更改帧速率时调用的回调。 200 201**起始版本:** 4.1 202 203**参数:** 204 205| 名称 | 描述 | 206| -------- | -------- | 207| cb | 指示用于通知图形服务已准备好更改帧速率的实例。 | 208 209**返回:** 210 2110 表示执行成功。 212 213其他值表示执行失败,具体错误码查看[DispErrCode](_display_v10.md#disperrcode)。 214 215 216### SetDisplayModeAsync() 217 218``` 219IDisplayComposer::SetDisplayModeAsync ([in] unsigned int devId, [in] unsigned int modeId, [in] IModeCallback cb ) 220``` 221 222**描述** 223 224设置显示设备的显示模式。 225 226**起始版本:** 4.1 227 228**参数:** 229 230| 名称 | 描述 | 231| -------- | -------- | 232| devId | 指示显示设备的 ID。 | 233| modeId | 指示显示模式的 ID。设备切换到指定的显示模式 此接口中的此参数。 | 234| cb | 表示更改模式时要调用的回调。 | 235 236**返回:** 237 2380 表示执行成功。 239 240其他值表示执行失败,具体错误码查看[DispErrCode](_display_v10.md#disperrcode)。 241 242 243### SetDisplayOverlayResolution() 244 245``` 246IDisplayComposer::SetDisplayOverlayResolution ([in] unsigned int devId, [in] unsigned int width, [in] unsigned int height ) 247``` 248 249**描述** 250 251设置给定图层的参数,参数更改必须在此调用后完全生效。 252 253**起始版本:** 4.1 254 255**参数:** 256 257| 名称 | 描述 | 258| -------- | -------- | 259| devId | 指示显示设备的 ID。 | 260| width | 指示显示设备的像素宽度 | 261| height | 指示显示设备的像素高度 | 262 263**返回:** 264 2650 表示执行成功。 266 267其他值表示执行失败,具体错误码查看[DispErrCode](_display_v10.md#disperrcode)。 268 269 270### SetLayerPerFrameParameter() 271 272``` 273IDisplayComposer::SetLayerPerFrameParameter ([in] unsigned int devId, [in] unsigned int layerId, [in] String key, [out] byte[] value ) 274``` 275 276**描述** 277 278设置给定图层的参数,参数更改必须在此调用后完全生效。 279 280**起始版本:** 4.1 281 282**参数:** 283 284| 名称 | 描述 | 285| -------- | -------- | 286| devId | 指示显示设备的 ID。 | 287| layerId | 指示要操作的层的 ID。 | 288| key | 指示特定键。 | 289| value | 指示与键对应的值。 | 290 291**返回:** 292 2930 表示执行成功。 294 295其他值表示执行失败,具体错误码查看[DispErrCode](_display_v10.md#disperrcode)。 296