1# Display 2 3 4## **汇总** 5 6 7## **概述** 8 9显示模块驱动接口定义。 10 11提供给图形系统使用的驱动接口,包括图层管理、设备控制、图形硬件加速、显示内存管理和回调接口等。 12 13**Since**: 14 151.0 16 17**Version**:。 18 192.0 20 21 22### 文件 23 24 | 名称 | 描述 | 25| -------- | -------- | 26| [display_device.h](display__device_8h.md) | 显示设备控制接口声明。 | 27| [display_gfx.h](display__gfx_8h.md) | 显示硬件加速驱动接口声明。 | 28| [display_gralloc.h](display__gralloc_8h.md) | 显示内存驱动接口声明。 | 29| [display_layer.h](display__layer_8h.md) | 显示图层驱动接口声明。 | 30| [display_type.h](display__type_8h.md) | 显示类型定义,定义显示驱动接口所使用的数据类型。 | 31| [display_vgu.h](display__vgu_8h.md) | 该文件定义2D矢量硬件加速模块相关驱动函数。 | 32 33 34### 类 35 36 | 名称 | 描述 | 37| -------- | -------- | 38| [DeviceFuncs](_device_funcs.md) | 显示设备控制接口结构体,定义显示设备控制接口函数指针。 | 39| [GfxFuncs](_gfx_funcs.md) | 显示硬件加速驱动接口结构体,定义硬件加速驱动接口函数指针。 | 40| [GrallocFuncs](_gralloc_funcs.md) | 显示内存驱动接口结构体,定义显示内存驱动接口函数指针。 | 41| [LayerFuncs](_layer_funcs.md) | 显示图层驱动接口结构体,定义显示图层驱动接口函数指针。 | 42| [DisplayInfo](_display_info.md) | 定义显示信息结构体 | 43| [LayerInfo](_layer_info.md) | 定义图层信息结构体 | 44| [LayerAlpha](_layer_alpha.md) | 定义图层Alpha信息的结构体 | 45| [BufferData](_buffer_data.md) | 定义一层的缓冲区数据,包括虚拟和物理内存地址。 | 46| [LayerBuffer](_layer_buffer.md) | 图层Buffer,用于存放图层数据。 | 47| [IRect](_i_rect.md) | 定义矩形信息。 | 48| [ISurface](_i_surface.md) | 用于存放窗口相关信息的结构体定义,提供给硬件加速使用,例如图像合成,位图搬移等操作。 | 49| [ILine](_i_line.md) | 线条描述结构体定义,用于硬件加速绘制直线。 | 50| [ICircle](_i_circle.md) | 圆形描述结构体定义,用于硬件加速绘制圆形。 | 51| [Rectangle](_rectangle.md) | 矩形描述结构体定义,用于硬件加速绘制矩形。 | 52| [GfxOpt](_gfx_opt.md) | 图像硬件加速相关的操作选项结构体定义,用于图像硬件加速时的操作选项。 | 53| [PropertyObject](_property_object.md) | 定义包含名称、属性ID和值的属性对象。 | 54| [DisplayCapability](_display_capability.md) | 定义输出性能。 | 55| [DisplayModeInfo](_display_mode_info.md) | 定义输出模式信息。 | 56| [AllocInfo](_alloc_info.md) | 定义关于要分配的内存的信息。 | 57| [HDRCapability](_h_d_r_capability.md) | HDR属性结构体定义。 | 58| [HDRMetaData](_h_d_r_meta_data.md) | HDR元数据结构体定义。 | 59| [VerifyAllocInfo](_verify_alloc_info.md) | 用于验证内存分配信息的结构体定义。 | 60| [PresentTimestamp](_present_timestamp.md) | 上屏时间戳结构体定义。 | 61| [ExtDataHandle](_ext_data_handle.md) | 扩展数据句柄结构体定义。 | 62| [YUVDescInfo](_yun_desc_info_.md) | YUV描述信息结构体定义。 | 63| [VGUPoint](_v_g_u_point.md) | 坐标点对象。 | 64| [VGURect](_v_g_u_rect.md) | 矩形对象。 | 65| [VGUPath](_v_g_u_path.md) | 路径对象,存放路径命令和坐标数据。 | 66| [VGUMatrix3](_v_g_u_matrix3.md) | 变换矩阵。 | 67| [VGUBuffer](_v_g_u_buffer.md) | 硬件加速渲染位图缓存。 | 68| [VGUMaskLayer](_v_g_u_mask_layer.md) | 定义蒙版图层。 | 69| [VGUSurface](_v_g_u_surface.md) | 2D硬件加速绘制目标表面。 | 70| [VGUColorStop](_v_g_u_color_stop.md) | 渐变颜色分布位置。 | 71| [VGULinear](_v_g_u_linear.md) | 线性渐变。 | 72| [VGURadial](_v_g_u_radial.md) | 辐射渐变。 | 73| [VGUConic](_v_g_u_conic.md) | 圆锥渐变。 | 74| [VGUImage](_v_g_u_image.md) | 图像对象。 | 75| [VGUPattern](_v_g_u_pattern.md) | 图片模式对象。 | 76| [VGUGradient](_v_g_u_gradient.md) | 渐变对象。 | 77| [VGUSolid](_v_g_u_solid.md) | 颜色对象。 | 78| [VGUPaintStyle](_v_g_u_paint_style.md) | 填充或描边路径的渲染风格。 | 79| [VGUFillAttr](_v_g_u_fill_attr.md) | 填充路径的属性。 | 80| [VGUStrokeAttr](_v_g_u_stroke_attr.md) | 描边路径的属性。 | 81| [VGUFuncs](_v_g_u_funcs.md) | 定义2D硬件加速驱动函数。 | 82 83 84### 宏定义 85 86 | 名称 | 描述 | 87| -------- | -------- | 88| [PROPERTY_NAME_LEN](#property_name_len) 50 | 属性名字长度。 | 89| [HDI_VGU_SCALAR_IS_FLOAT](#hdi_vgu_scalar_is_float) 1 | VGU标量是否为浮点型 | 90 91 92### 类型定义 93 94 | 名称 | 描述 | 95| -------- | -------- | 96| ([HotPlugCallback](#hotplugcallback)) (uint32_t devId, bool connected, void \*data) | 热插拔事件回调 。 | 97| ([VBlankCallback](#vblankcallback)) (unsigned int sequence, uint64_t ns, void \*data) | VBlank 事件回调。 | 98| ([RefreshCallback](#refreshcallback)) (uint32_t devId, void \*data) | 刷新请求回调 。 | 99| [VGUScalar](#vguscalar) | VGU标量。 | 100| [VGUPixelFormat](#vgupixelformat) | 像素格式。 | 101| [VGUBlendType](#vgublendtype) | 混合操作类型。 | 102 103 104### 枚举 105 106 | 名称 | 描述 | 107| -------- | -------- | 108| [DispErrCode](#disperrcode){ DISPLAY_SUCCESS = 0, DISPLAY_FAILURE = -1, DISPLAY_FD_ERR = -2, DISPLAY_PARAM_ERR = -3, DISPLAY_NULL_PTR = -4, DISPLAY_NOT_SUPPORT = -5, DISPLAY_NOMEM = -6, DISPLAY_SYS_BUSY = -7, DISPLAY_NOT_PERM = -8 } | 返回值类型定义。 | 109| [LayerType](#layertype){ LAYER_TYPE_GRAPHIC, LAYER_TYPE_OVERLAY, LAYER_TYPE_SDIEBAND, LAYER_TYPE_CURSOR, LAYER_TYPE_BUTT } | 图层类型定义。 | 110| { HBM_USE_CPU_READ = (1 << 0), HBM_USE_CPU_WRITE = (1 << 1), HBM_USE_MEM_MMZ = (1 << 2), HBM_USE_MEM_DMA = (1 << 3), HBM_USE_MEM_SHARE = (1 << 4), HBM_USE_MEM_MMZ_CACHE = (1 << 5), HBM_USE_MEM_FB = (1 << 6), HBM_USE_ASSIGN_SIZE = (1 << 7) } | 定义缓冲区使用。 | 111| [PixelFormat](#pixelformat){ PIXEL_FMT_CLUT8 = 0, PIXEL_FMT_CLUT1, PIXEL_FMT_CLUT4, PIXEL_FMT_RGB_565, PIXEL_FMT_RGBA_5658, PIXEL_FMT_RGBX_4444, PIXEL_FMT_RGBA_4444, PIXEL_FMT_RGB_444, PIXEL_FMT_RGBX_5551, PIXEL_FMT_RGBA_5551, PIXEL_FMT_RGB_555, PIXEL_FMT_RGBX_8888, PIXEL_FMT_RGBA_8888, PIXEL_FMT_RGB_888, PIXEL_FMT_BGR_565, PIXEL_FMT_BGRX_4444, PIXEL_FMT_BGRA_4444, PIXEL_FMT_BGRX_5551, PIXEL_FMT_BGRA_5551, PIXEL_FMT_BGRX_8888, PIXEL_FMT_BGRA_8888, PIXEL_FMT_YUV_422_I, PIXEL_FMT_YCBCR_422_SP, PIXEL_FMT_YCRCB_422_SP, PIXEL_FMT_YCBCR_420_SP, PIXEL_FMT_YCRCB_420_SP, PIXEL_FMT_YCBCR_422_P, PIXEL_FMT_YCRCB_422_P, PIXEL_FMT_YCBCR_420_P, PIXEL_FMT_YCRCB_420_P, PIXEL_FMT_YUYV_422_PKG, PIXEL_FMT_UYVY_422_PKG, PIXEL_FMT_YVYU_422_PKG, PIXEL_FMT_VYUY_422_PKG, PIXEL_FMT_VENDER_MASK = 0X7FFF0000, PIXEL_FMT_BUTT = 0X7FFFFFFF } | 像素格式类型定义。 | 112| [TransformType](#transformtype){ ROTATE_NONE = 0, ROTATE_90, ROTATE_180, ROTATE_270, ROTATE_BUTT } | 图层变换类型定义。 | 113| [BlendType](#blendtype){ BLEND_NONE = 0, BLEND_CLEAR, BLEND_SRC, BLEND_SRCOVER, BLEND_DSTOVER, BLEND_SRCIN, BLEND_DSTIN, BLEND_SRCOUT, BLEND_DSTOUT, BLEND_SRCATOP, BLEND_DSTATOP, BLEND_ADD, BLEND_XOR, BLEND_DST, BLEND_AKS, BLEND_AKD, BLEND_BUTT } | 支持的图像混合类型。 | 114| [RopType](#roptype){ ROP_BLACK = 0, ROP_NOTMERGEPEN, ROP_MASKNOTPEN, ROP_NOTCOPYPEN, ROP_MASKPENNOT, ROP_NOT, ROP_XORPEN, ROP_NOTMASKPEN, ROP_MASKPEN, ROP_NOTXORPEN, ROP_NOP, ROP_MERGENOTPEN, ROP_COPYPE, ROP_MERGEPENNOT, ROP_MERGEPEN, ROP_WHITE, ROP_BUTT } | 硬件加速支持的ROP操作类型。 | 115| [ColorKey](#colorkey) { CKEY_NONE = 0, CKEY_SRC, CKEY_DST, CKEY_BUTT } | Color key操作类型定义,即硬件加速支持的Color key操作类型。 | 116| [MirrorType](#mirrortype){ MIRROR_NONE = 0, MIRROR_LR, MIRROR_TB, MIRROR_BUTT } | 硬件加速支持的镜像操作类型定义。 | 117| [Connection](#connection){ CON_INVALID = 0, CONNECTED, DISCONNECTED } | 热插拔连接类型定义。 | 118| [InterfaceType](#interfacetype){ DISP_INTF_HDMI = 0, DISP_INTF_LCD, DISP_INTF_BT1120, DISP_INTF_BT656, DISP_INTF_YPBPR, DISP_INTF_RGB, DISP_INTF_CVBS, DISP_INTF_SVIDEO, DISP_INTF_VGA, DISP_INTF_MIPI, DISP_INTF_PANEL, DISP_INTF_BUTT } | 枚举接口类型。 | 119| [DispPowerStatus](#disppowerstatus){ POWER_STATUS_ON, POWER_STATUS_STANDBY, POWER_STATUS_SUSPEND, POWER_STATUS_OFF, POWER_STATUS_BUTT } | 枚举显示状态。 | 120| [CompositionType](#compositiontype){ COMPOSITION_CLIENT, COMPOSITION_DEVICE, COMPOSITION_CURSOR, COMPOSITION_VIDEO, COMPOSITION_DEVICE_CLEAR, COMPOSITION_CLIENT_CLEAR, COMPOSITION_TUNNEL, COMPOSITION_BUTT } | 枚举特殊层的组合类型。 | 121| [ColorGamut](#colorgamut){ COLOR_GAMUT_INVALID = -1, COLOR_GAMUT_NATIVE = 0, COLOR_GAMUT_SATNDARD_BT601 = 1, COLOR_GAMUT_STANDARD_BT709 = 2, COLOR_GAMUT_DCI_P3 = 3, COLOR_GAMUT_SRGB = 4, COLOR_GAMUT_ADOBE_RGB = 5, COLOR_GAMUT_DISPLAY_P3 = 6, COLOR_GAMUT_BT2020 = 7, COLOR_GAMUT_BT2100_PQ = 8, COLOR_GAMUT_BT2100_HLG = 9, COLOR_GAMUT_DISPLAY_BT2020 = 10 } | 色域类型枚举值。 | 122| [GamutMap](#gamutmap){ GAMUT_MAP_CONSTANT = 0, GAMUT_MAP_EXPANSION = 1, GAMUT_MAP_HDR_CONSTANT = 2, GAMUT_MAP_HDR_EXPANSION = 3 } | 枚举色域的映射类型。 | 123| [ColorDataSpace](#colordataspace){ COLOR_DATA_SPACE_UNKNOWN = 0, GAMUT_BT601 = 0x00000001, GAMUT_BT709 = 0x00000002, GAMUT_DCI_P3 = 0x00000003, GAMUT_SRGB = 0x00000004, GAMUT_ADOBE_RGB = 0x00000005, GAMUT_DISPLAY_P3 = 0x00000006, GAMUT_BT2020 = 0x00000007, GAMUT_BT2100_PQ = 0x00000008, GAMUT_BT2100_HLG = 0x00000009, GAMUT_DISPLAY_BT2020 = 0x0000000a, TRANSFORM_FUNC_UNSPECIFIED = 0x00000100, TRANSFORM_FUNC_LINEAR = 0x00000200, TRANSFORM_FUNC_SRGB = 0x00000300, TRANSFORM_FUNC_SMPTE_170M = 0x00000400, TRANSFORM_FUNC_GM2_2 = 0x00000500, TRANSFORM_FUNC_GM2_6 = 0x00000600, TRANSFORM_FUNC_GM2_8 = 0x00000700, TRANSFORM_FUNC_ST2084 = 0x00000800, TRANSFORM_FUNC_HLG = 0x00000900, PRECISION_UNSPECIFIED = 0x00010000, PRECISION_FULL = 0x00020000, PRESION_LIMITED = 0x00030000, PRESION_EXTENDED = 0x00040000, BT601_SMPTE170M_FULL = GAMUT_BT601 \| TRANSFORM_FUNC_SMPTE_170M \| PRECISION_FULL, BT601_SMPTE170M_LIMITED = GAMUT_BT601 \| TRANSFORM_FUNC_SMPTE_170M \| PRESION_LIMITED, BT709_LINEAR_FULL = GAMUT_BT709 \| TRANSFORM_FUNC_LINEAR \| PRECISION_FULL, BT709_LINEAR_EXTENDED = GAMUT_BT709 \| TRANSFORM_FUNC_LINEAR \| PRESION_EXTENDED, BT709_SRGB_FULL = GAMUT_BT709 \| TRANSFORM_FUNC_SRGB \| PRECISION_FULL, BT709_SRGB_EXTENDED = GAMUT_BT709 \| TRANSFORM_FUNC_SRGB \| PRESION_EXTENDED, BT709_SMPTE170M_LIMITED = GAMUT_BT709 \| TRANSFORM_FUNC_SMPTE_170M \| PRESION_LIMITED, DCI_P3_LINEAR_FULL = GAMUT_DCI_P3 \| TRANSFORM_FUNC_LINEAR \| PRECISION_FULL, DCI_P3_GAMMA26_FULL = GAMUT_DCI_P3 \| TRANSFORM_FUNC_GM2_6 \| PRECISION_FULL, DISPLAY_P3_LINEAR_FULL = GAMUT_DISPLAY_P3 \| TRANSFORM_FUNC_LINEAR \| PRECISION_FULL, DCI_P3_SRGB_FULL = GAMUT_DCI_P3 \| TRANSFORM_FUNC_SRGB \| PRECISION_FULL, ADOBE_RGB_GAMMA22_FULL = GAMUT_ADOBE_RGB \| TRANSFORM_FUNC_GM2_2 \| PRECISION_FULL, BT2020_LINEAR_FULL = GAMUT_BT2020 \| TRANSFORM_FUNC_LINEAR \| PRECISION_FULL, BT2020_SRGB_FULL = GAMUT_BT2020 \| TRANSFORM_FUNC_SRGB \| PRECISION_FULL, BT2020_SMPTE170M_FULL = GAMUT_BT2020 \| TRANSFORM_FUNC_SMPTE_170M \| PRECISION_FULL, BT2020_ST2084_FULL = GAMUT_BT2020 \| TRANSFORM_FUNC_ST2084 \| PRECISION_FULL, BT2020_HLG_FULL = GAMUT_BT2020 \| TRANSFORM_FUNC_HLG \| PRECISION_FULL, BT2020_ST2084_LIMITED = GAMUT_BT2020 \| TRANSFORM_FUNC_ST2084 \| PRESION_LIMITED } | 枚举颜色空间的类型。 | 124| [HDRFormat](#hdrformat){ NOT_SUPPORT_HDR = 0, DOLBY_VISION = 1, HDR10 = 2, HLG = 3, HDR10_PLUS = 4, HDR_VIVID = 5 } | 枚举HDR格式。 | 125| [HDRMetadataKey](#hdrmetadatakey){ MATAKEY_RED_PRIMARY_X = 0, MATAKEY_RED_PRIMARY_Y = 1, MATAKEY_GREEN_PRIMARY_X = 2, MATAKEY_GREEN_PRIMARY_Y = 3, MATAKEY_BLUE_PRIMARY_X = 4, MATAKEY_BLUE_PRIMARY_Y = 5, MATAKEY_WHITE_PRIMARY_X = 6, MATAKEY_WHITE_PRIMARY_Y = 7, MATAKEY_MAX_LUMINANCE = 8, MATAKEY_MIN_LUMINANCE = 9, MATAKEY_MAX_CONTENT_LIGHT_LEVEL = 10, MATAKEY_MAX_FRAME_AVERAGE_LIGHT_LEVEL = 11, MATAKEY_HDR10_PLUS = 12, MATAKEY_HDR_VIVID = 13 } | 枚举HDR元数据关键字。 | 126| [PresentTimestampType](#presenttimestamptype){ HARDWARE_DISPLAY_PTS_UNSUPPORTED = 0, HARDWARE_DISPLAY_PTS_DELAY = 1 << 0, HARDWARE_DISPLAY_PTS_TIMESTAMP = 1 << 1 } | 上屏时间戳类型枚举值。 | 127| [VGUPathDataType](#vgupathdatatype){ VGU_DATA_TYPE_S16 = 0, VGU_DATA_TYPE_S32, VGU_DATA_TYPE_F32 } | 路径坐标数据类型。 | 128| [VGUCapability](#vgucapability){ VGU_CAP_BLIT = (1 << 0), VGU_CAP_BLIT_NUM = (1 << 1), VGU_CAP_PATH = (1 << 2), VGU_CAP_FILTER_BLUR = (1 << 3) } | 硬件加速能力。 | 129| [VGUResult](#vguresult){ VGU_SUCCESS = 0, VGU_NO_SUPPORT = -1, VGU_OPERATION_FAILED = -2, VGU_OUT_OF_MEMORY = -3, VGU_TIMEOUT = -4, VGU_INVALID_PARAMETER = -5, VGU_BUSY = -6, VGU_NO_CONTEXT = -7 } | 错误码定义。 | 130| [VGULineCap](#vgulinecap){ VGU_LINECAP_BUTT = 0, VGU_LINECAP_ROUND, VGU_LINECAP_SQUARE } | 线帽。 | 131| [VGUJointType](#vgujointtype){ VGU_LINE_JOIN_MITER = 0, VGU_LINE_JOIN_ROUND, VGU_LINE_JOIN_BEVEL, VGU_LINE_JOIN_BUTT } | 联接类型。 | 132| [VGUFilter](#vgufilter){ VGU_FILTER_BILINEAR = 0, VGU_FILTER_NEAREST, VGU_FILTER_LINEAR, VGU_FILTER_BUTT } | 图像滤波类型。 | 133| [VGUFillRule](#vgufillrule){ VGU_RULE_WINDING = 0, VGU_RULE_EVEN_ODD, VGU_RULE_BUTT } | 填充规则定义。 | 134| [VGUFillSpread](#vgufillspread){ VGU_SPREAD_PAD = 0, VGU_SPREAD_REFLECT, VGU_SPREAD_REPEAT, VGU_SPREAD_BUTT } | 渐变填充区域外的延展类型。 | 135| [VGUWrapType](#vguwraptype){ VGU_WRAP_REFLECT = 0, VGU_WRAP_REPEAT, VGU_WRAP_BUTT } | 图像模式填充延展类型。 | 136| [VGUPathCmd](#vgupathcmd){ VGU_PATH_CMD_CLOSE = 0, VGU_PATH_CMD_MOVE, VGU_PATH_CMD_LINE, VGU_PATH_CMD_HLINE, VGU_PATH_CMD_VLINE, VGU_PATH_CMD_QUAD, VGU_PATH_CMD_CUBIC, VGU_PATH_CMD_SQUAD, VGU_PATH_CMD_SCUBIC, VGU_PATH_CMD_BUTT } | 路径绘制指令类型。 | 137| [VGUTransformType](#vgutransformtype){ VGU_TRANSFORM_TRANSLATE = (1 << 0), VGU_TRANSFORM_SCALE = (1 << 1), VGU_TRANSFORM_ROTATE_90 = (1 << 2), VGU_TRANSFORM_ROTATE_180 = (1 << 3), VGU_TRANSFORM_ROTATE_270 = (1 << 4), VGU_TRANSFORM_OTHER = (1 << 16) } | 变换类型。 | 138| [VGUClipType](#vgucliptype){ VGU_CLIP_RECT = 0, VGU_CLIP_PATH, VGU_CLIP_BUTT } | 绘制表面剪切类型。 | 139| [VGUGradientType](#vgugradienttype){ VGU_GRADIENT_LINEAR = 0, VGU_GRADIENT_RADIAL, VGU_GRADIENT_CONIC, VGU_GRADIENT_BUTT } | 渐变类型。 | 140| [VGUPaintType](#vgupainttype){ VGU_PAINT_SOLID = 0, VGU_PAINT_GRADIENT, VGU_PAINT_PATTERN, VGU_PAINT_BUTT } | 渲染对象。 | 141 142 143### 函数 144 145 | 名称 | 描述 | 146| -------- | -------- | 147| [DeviceInitialize](#deviceinitialize)(DeviceFuncs \*\*funcs) | 实现显示设备控制接口的初始化,申请操作显示设备控制接口的资源,并获取对应的操作接口。 | 148| [DeviceUninitialize](#deviceuninitialize)(DeviceFuncs \*funcs) | 取消显示设备控制接口的初始化,释放控制接口使用到的资源。 | 149| [GfxInitialize](#gfxinitialize)(GfxFuncs \*\*funcs) | 获取硬件加速相关的操作接口指针。 | 150| [GfxUninitialize](#gfxuninitialize)(GfxFuncs \*funcs) | 释放硬件加速相关的操作接口指针。 | 151| [GrallocInitialize](#grallocinitialize)(GrallocFuncs \*\*funcs) | 初始化内存模块,并获取内存提供的操作接口。 | 152| [GrallocUninitialize](#grallocuninitialize)(GrallocFuncs \*funcs) | 取消初始化内存模块,并释放内存操作接口指针。 | 153| [LayerInitialize](#layerinitialize)(LayerFuncs \*\*funcs) | 实现图层初始化功能,申请图层使用的资源,并获取图层提供的操作接口。 | 154| [LayerUninitialize](#layeruninitialize)(LayerFuncs \*funcs) | 取消图层初始化功能,释放图层使用到的资源,并释放图层操作接口指针。 | 155| [VGUPathInit](#vgupathinit)(VGUPath \*path, VGUPathDataType type, const uint8_t \*segments, int numSegments, const uint8_t \*data, bool enAlias, VGURect boundBox) | 初始化路径对象。 | 156| [VGUPathAppend](#vgupathappend)(VGUPath \*path, const VGUPath \*subpath) | 添加子路径到当前路径中。 | 157| [VGUPathClear](#vgupathclear)(VGUPath \*path) | 清除路径对象内存。 | 158| [VGUMatrixIdentity](#vgumatrixidentity)(VGUMatrix3 \*matrix) | 初始化矩阵对象为单位矩阵。 | 159| [VGUMatrixScale](#vgumatrixscale)(VGUMatrix3 \*matrix, float xScale, float yScale) | 矩阵变换缩放。 | 160| [VGUMatrixRotate](#vgumatrixrotate)(VGUMatrix3 \*matrix, float degree) | 矩阵变换旋转。 | 161| [VGUMatrixTranslate](#vgumatrixtranslate)(VGUMatrix3 \*matrix, float x, float y) | 矩阵变换平移。 | 162| [VGUGradientColorStop](#vgugradientcolorstop)(VGUGradient \*gradient, const VGUColorStop \*colorStop, uint32_t count) | 对渐变添加ColorStop。 | 163| [VGUGradientClearStop](#vgugradientclearstop)(VGUGradient \*gradient) | 清除ColorStop。 | 164| [VGUGradientMatrix](#vgugradientmatrix)(VGUGradient \*gradient, const VGUMatrix3 \*matrix) | 设置渐变对象的变换矩阵。 | 165| [VGUGradientLinear](#vgugradientlinear)(VGUGradient \*gradient, const VGUPoint \*p1, const VGUPoint \*p2) | 创建线性渐变对象。 | 166| [VGUGradientRadial](#vgugradientradial)(VGUGradient \*gradient, const VGUPoint \*p1, VGUScalar r1, const VGUPoint \*p2, VGUScalar r2) | 创建辐射渐变对象 | 167| [VGUGradientConic](#vgugradientconic)(VGUGradient \*gradient, VGUScalar cx, VGUScalar cy) | 创建圆锥渐变对象。 | 168| [VGUInitialize](#vguinitialize)(VGUFuncs \*\*funcs) | 获取硬件加速相关的操作接口指针。 | 169| [VGUUninitialize](#vguuninitialize)(VGUFuncs \*funcs) | 去初始化硬件加速模块,同时释放硬件加速模块操作函数指针。 | 170 171 172### 变量 173 174 | 名称 | 描述 | 175| -------- | -------- | 176| ([DeviceFuncs::RegHotPlugCallback](#reghotplugcallback) )(HotPlugCallback callback, void \*data) | 注册热插拔事件回调。 | 177| ([DeviceFuncs::RegDisplayVBlankCallback](#regdisplayvblankcallback) )(uint32_t devId, VBlankCallback callback, void \*data) | 注册VBlank事件回调。 | 178| ([DeviceFuncs::RegDisplayRefreshCallback](#regdisplayrefreshcallback) )(uint32_t devId, RefreshCallback callback, void \*data) | 刷新请求回调。 | 179| ([DeviceFuncs::GetDisplayCapability](#getdisplaycapability) )(uint32_t devId, DisplayCapability \*info) | 获取显示设备能力集。 | 180| ([DeviceFuncs::GetDisplaySupportedModes](#getdisplaysupportedmodes) )(uint32_t devId, uint32_t \*num, DisplayModeInfo \*modes) | 获取显示设备支持的显示模式信息。 | 181| ([DeviceFuncs::GetDisplayMode](#getdisplaymode) )(uint32_t devId, uint32_t \*modeId) | 获取显示设备当前的显示模式。 | 182| ([DeviceFuncs::SetDisplayMode](#setdisplaymode) )(uint32_t devId, uint32_t modeId) | 设置显示设备的显示模式。 | 183| ([DeviceFuncs::GetDisplayPowerStatus](#getdisplaypowerstatus) )(uint32_t devId, DispPowerStatus \*status) | 获取显示设备当前的电源状态。 | 184| ([DeviceFuncs::SetDisplayPowerStatus](#setdisplaypowerstatus) )(uint32_t devId, DispPowerStatus status) | 设置显示设备当前的电源状态。 | 185| ([DeviceFuncs::GetDisplayBacklight](#getdisplaybacklight) )(uint32_t devId, uint32_t \*level) | 获取显示设备当前的背光值。 | 186| ([DeviceFuncs::SetDisplayBacklight](#setdisplaybacklight) )(uint32_t devId, uint32_t level) | 设置显示设备当前的背光值。 | 187| ([DeviceFuncs::GetDisplayProperty](#getdisplayproperty) )(uint32_t devId, uint32_t id, uint64_t \*value) | 获取显示设备属性值。 | 188| ([DeviceFuncs::SetDisplayProperty](#setdisplayproperty) )(uint32_t devId, uint32_t id, uint64_t value) | 设置显示设备属性值。 | 189| ([DeviceFuncs::PrepareDisplayLayers](#preparedisplaylayers) )(uint32_t devId, bool \*needFlushFb) | 显示设备合成前准备。 | 190| ([DeviceFuncs::GetDisplayCompChange](#getdisplaycompchange) )(uint32_t devId, uint32_t \*num, uint32_t \*Layers, int32_t \*type) | 获取显示设备合成类型有变化的layer。 | 191| ([DeviceFuncs::SetDisplayClientCrop](#setdisplayclientcrop) )(uint32_t devId, IRect \*rect) | 设置显示设备的裁剪区域。 | 192| ([DeviceFuncs::SetDisplayClientDestRect](#setdisplayclientdestrect) )(uint32_t devId, IRect \*rect) | 设置显示设备的显示区域。 | 193| ([DeviceFuncs::SetDisplayClientBuffer](#setdisplayclientbuffer) )(uint32_t devId, const BufferHandle \*buffer, int32_t fence) | 设置显示设备的显示缓存。 | 194| ([DeviceFuncs::SetDisplayClientDamage](#setdisplayclientdamage) )(uint32_t devId, uint32_t num, IRect \*rect) | 设置显示设备的显示脏区。 | 195| ([DeviceFuncs::SetDisplayVsyncEnabled](#setdisplayvsyncenabled) )(uint32_t devId, bool enabled) | 使能垂直同步信号。 | 196| ([DeviceFuncs::GetDisplayReleaseFence](#getdisplayreleasefence) )(uint32_t devId, uint32_t \*num, uint32_t \*layers, int32_t \*fences) | 获取显示图层fence。 | 197| ([DeviceFuncs::GetDisplaySupportedColorGamuts](#getdisplaysupportedcolorgamuts) )(uint32_t devId, uint32_t \*num, ColorGamut \*gamuts) | 获取显示设备支持的色域信息。 | 198| ([DeviceFuncs::GetDisplayColorGamut](#getdisplaycolorgamut) )(uint32_t devId, ColorGamut \*gamut) | 获取显示设备当前的色域模式。 | 199| ([DeviceFuncs::SetDisplayColorGamut](#setdisplaycolorgamut) )(uint32_t devId, ColorGamut gamut) | 设置显示设备当前的色域模式。 | 200| ([DeviceFuncs::GetDisplayGamutMap](#getdisplaygamutmap) )(uint32_t devId, GamutMap \*gamutMap) | 获取显示设备当前的色域映射模式。 | 201| ([DeviceFuncs::SetDisplayGamutMap](#setdisplaygamutmap) )(uint32_t devId, GamutMap gamutMap) | 设置显示设备当前的色域映射模式。 | 202| ([DeviceFuncs::SetDisplayColorTransform](#setdisplaycolortransform) )(uint32_t devId, const float \*matrix) | 设置显示设备当前的4x4的颜色转换矩阵。 | 203| ([DeviceFuncs::GetHDRCapabilityInfos](#gethdrcapabilityinfos) )(uint32_t devId, HDRCapability \*info) | 获取显示设备支持的HDR属性信息。 | 204| ([DeviceFuncs::GetSupportedMetadataKey](#getsupportedmetadatakey) )(uint32_t devId, uint32_t \*num, DisplayInfo::widthHDRMetadataKey \*keys) | 获取显示设备支持的 HDRMetadataKey。 | 205| ([DeviceFuncs::Commit](#commit) )(uint32_t devId, int32_t \*fence) | 提交合成送显请求。 | 206| ([DeviceFuncs::InvokeDisplayCmd](#invokedisplaycmd) )(uint32_t devId,...) | 调用显示设备命令。 | 207| ([DeviceFuncs::CreateVirtualDisplay](#createvirtualdisplay) )(uint32_t width, uint32_t height, int32_t \*format, uint32_t \*devId) | 创建虚拟显示设备。 | 208| ([DeviceFuncs::DestroyVirtualDisplay](#destroyvirtualdisplay) )(uint32_t devId) | 销毁虚拟显示设备。 | 209| ([DeviceFuncs::SetVirtualDisplayBuffer](#setvirtualdisplaybuffer) )(uint32_t devId, BufferHandle \*buffer, int32_t fence) | 设置虚拟屏的输出缓存。 | 210| ([DeviceFuncs::GetWriteBackFrame](#getwritebackframe) )(uint32_t devId, BufferHandle \*buffer, int32_t \*fence) | 获取显示设备的回写帧。 | 211| [DisplayInfo::width](#width-19) | 显示屏宽度 | 212| [DisplayInfo::height](#height-18) | 显示屏高度 | 213| [DisplayInfo::rotAngle](#rotangle) | 显示屏旋转角度 | 214| [LayerInfo::width](#width-29) | 图层宽度 | 215| [LayerInfo::height](#height-28) | 图层高度 | 216| [LayerInfo::type](#type-17) | 图层类型,包括图形层、视频层和媒体播放模式。 | 217| [LayerInfo::bpp](#bpp) | 每像素所占bit数 | 218| [LayerInfo::pixFormat](#pixformat-12) | 图层像素格式 | 219| [LayerAlpha::enGlobalAlpha](#englobalalpha-12) | 全局Alpha使能标志 | 220| [LayerAlpha::enPixelAlpha](#enpixelalpha-12) | 像素Alpha使能标志 | 221| [LayerAlpha::alpha0](#alpha0-12) | Alpha0值,取值范围:[0, 255] | 222| [LayerAlpha::alpha1](#alpha1-12) | Alpha1值,取值范围:[0, 255] | 223| [LayerAlpha::gAlpha](#galpha) | 全局alpha值,取值范围:[0, 255] | 224| [BufferData::phyAddr](#phyaddr-13) | 物理内存地址 | 225| [BufferData::virAddr](#viraddr-12) | 虚拟内存地址 | 226| [LayerBuffer::fenceId](#fenceid) | buffer 的fence号 | 227| [LayerBuffer::width](#width-39) | buffer宽度 | 228| [LayerBuffer::height](#height-38) | buffer高度 | 229| [LayerBuffer::pitch](#pitch) | 一行数据所占字节数 | 230| [LayerBuffer::pixFormat](#pixformat-22) | buffer像素格式 | 231| [LayerBuffer::data](#data-12) | 图层buffer数据 | 232| [LayerBuffer::hdl](#hdl) | 图层buffer句柄 | 233| [IRect::x](#x-14) | 矩形框起始x坐标 | 234| [IRect::y](#y-14) | 矩形框起始y坐标 | 235| [IRect::w](#w-12) | 矩形框宽度 | 236| [IRect::h](#h-12) | 矩形框高度 | 237| [ISurface::phyAddr](#phyaddr-23) | 图像首地址 | 238| [ISurface::height](#height-48) | 图像高度 | 239| [ISurface::width](#width-49) | 图像宽度 | 240| [ISurface::stride](#stride-12) | 图像跨度 | 241| [ISurface::enColorFmt](#encolorfmt) | 图像格式 | 242| [ISurface::bYCbCrClut](#bycbcrclut) | CLUT表是否位于YCbCr 空间 | 243| [ISurface::bAlphaMax255](#balphamax255) | 图像Alpha最大值为255还是128 | 244| [ISurface::bAlphaExt1555](#balphaext1555) | 是否使能1555的Alpha扩展 | 245| [ISurface::alpha0](#alpha0-22) | Alpha0值,取值范围:[0,255] | 246| [ISurface::alpha1](#alpha1-22) | Alpha1值,取值范围:[0,255] | 247| [ISurface::cbcrPhyAddr](#clutphyaddr) | CbCr分量地址 | 248| [ISurface::cbcrStride](#cbcrstride) | CbCr分量跨度 | 249| [ISurface::clutPhyAddr](#clutphyaddr) | CLUT表首地址,用作颜色扩展或颜色校正。 | 250| [ILine::x0](#x0-12) | 线条起点的x坐标 | 251| [ILine::y0](#y0-12) | 线条起点的y坐标 | 252| [ILine::x1](#x1-13) | 线条终点的x坐标 | 253| [ILine::y1](#y1-13) | 线条终点的y坐标 | 254| [ILine::color](#color-15) | 线条颜色 | 255| [ICircle::x](#x-24) | 圆心x坐标 | 256| [ICircle::y](#y-24) | 圆心y坐标r | 257| [ICircle::r](#r) | 圆的半径 | 258| [ICircle::color](#color-25) | 圆的颜色 | 259| [Rectangle::rect](#rect-13) | 矩形区域 | 260| [Rectangle::color](#color-35) | 矩形颜色 | 261| [GfxOpt::enGlobalAlpha](#englobalalpha-22) | 全局Alpha使能位 | 262| [GfxOpt::globalAlpha](#globalalpha) | 全局Alpha的值 | 263| [GfxOpt::enPixelAlpha](#enpixelalpha-22) | 像素Alpha使能位 | 264| [GfxOpt::blendType](#blendtype) | 混合方式 | 265| [GfxOpt::colorKeyFrom](#colorkeyfrom) | 色键模式 | 266| [GfxOpt::enableRop](#enablerop) | Rop功能使能位 | 267| [GfxOpt::colorRopType](#colorroptype) | 颜色的Rop类型 | 268| [GfxOpt::alphaRopType](#alpharoptype) | Alpha的Rop类型 | 269| [GfxOpt::enableScale](#enablescale) | 缩放功能使能位 | 270| [GfxOpt::rotateType](#rotatetype) | 旋转类型 | 271| [GfxOpt::mirrorType](#mirrortype) | 镜像类型 | 272| [PropertyObject::name](#name-12) | 属性名称 | 273| [PropertyObject::propId](#propid) | 属性ID | 274| [PropertyObject::value](#value-12) | 属性值 | 275| [DisplayCapability::name](#name-22) | 显示设备名称 | 276| [DisplayCapability::type](#type-27) | 显示屏接口类型 | 277| [DisplayCapability::phyWidth](#phywidth) | 物理宽度 | 278| [DisplayCapability::phyHeight](#phyheight) | 物理高度 | 279| [DisplayCapability::supportLayers](#supportlayers) | 支持的图层数 | 280| [DisplayCapability::virtualDispCount](#virtualdispcount) | 支持的虚拟屏数 | 281| [DisplayCapability::supportWriteBack](#supportwriteback) | 是否支持回写 | 282| [DisplayCapability::propertyCount](#propertycount) | 属性数组大小 | 283| [DisplayCapability::props](#props) | 属性数组 | 284| [DisplayModeInfo::width](#width-59) | 像素宽度 | 285| [DisplayModeInfo::height](#height-58) | 像素高度 | 286| [DisplayModeInfo::freshRate](#freshrate) | 刷新速率 | 287| [DisplayModeInfo::id](#id) | 模式ID | 288| [AllocInfo::width](#width-69) | 申请内存宽度 | 289| [AllocInfo::height](#height-68) | 申请内存高度 | 290| [AllocInfo::usage](#usage-12) | 申请内存的使用场景 | 291| [AllocInfo::format](#format-12) | 申请内存格式 | 292| [AllocInfo::expectedSize](#expectedsize) | 申请内存大小 | 293| [HDRCapability::formatCount](#formatcount) | 支持的HDR格式的数量 | 294| [HDRCapability::formats](#formats) | 支持的HDR格式的数组首地址 | 295| [HDRCapability::maxLum](#maxlum) | 最大的光亮度luminance值 | 296| [HDRCapability::maxAverageLum](#maxaveragelum) | 最大的平均光亮度luminance值 | 297| [HDRCapability::minLum](#minlum) | 最小的光亮度luminance值 | 298| [HDRMetaData::key](#key) | HDR元数据关键字 | 299| [HDRMetaData::value](#value-22) | 关键字对应的值 | 300| [VerifyAllocInfo::width](#width-79) | 分配内存的宽度 | 301| [VerifyAllocInfo::height](#height-78) | 分配内存的高度 | 302| [VerifyAllocInfo::usage](#usage-22) | 内存的用处 | 303| [VerifyAllocInfo::format](#format-22) | 分配内存的像素格式 | 304| [PresentTimestamp::type](#type-37) | 上屏时间戳类型 | 305| [PresentTimestamp::time](#time) | 类型对应的值 | 306| [ExtDataHandle::fd](#fd) | 句柄 fd,-1代表不支持 | 307| [ExtDataHandle::reserveInts](#reserveints) | reserve数组的个数 | 308| [ExtDataHandle::reserve](#reserve) [0] | reserve数组 | 309| [YUVDescInfo::baseAddr](#baseaddr) | 内存的初始地址 | 310| [YUVDescInfo::yOffset](#yoffset) | Y的偏移量 | 311| [YUVDescInfo::uOffset](#uoffset) | U的偏移量 | 312| [YUVDescInfo::vOffset](#voffset) | V的偏移量 | 313| [YUVDescInfo::yStride](#ystride) | Y的stride信息 | 314| [YUVDescInfo::uvStride](#uvstride) | UV的stride信息 | 315| [YUVDescInfo::uvStep](#uvstep) | UV的step信息 | 316| [VGUPoint::x](#x-34) | 点水平坐标 | 317| [VGUPoint::y](#y-34) | 点垂直坐标 | 318| [VGURect::x](#x-44) | 矩形水平起始坐标 | 319| [VGURect::y](#y-44) | 矩形垂直起始坐标 | 320| [VGURect::w](#w-22) | 矩形宽度 | 321| [VGURect::h](#h-22) | 矩形高度 | 322| [VGUPath::segment](#segment) | 存放路径命令数据 | 323| [VGUPath::numSegments](#numsegments) | 路径命令总数 | 324| [VGUPath::data](#data-22) | 存放路径命令对应坐标数据 | 325| [VGUPath::type](#type-47) | 路径数据存储类型 | 326| [VGUPath::enAlias](#enalias) | 抗锯齿开关 | 327| [VGUPath::boundBox](#boundbox) | 路径最大边界 | 328| [VGUMatrix3::m](#m) [3][3] | 3x3变换矩阵 | 329| [VGUMatrix3::type](#type-57) | 矩阵变换类型,简单变换为缩放,平移,90度倍数旋转。 | 330| [VGUBuffer::pixelFormat](#pixelformat) | 像素格式 | 331| [VGUBuffer::width](#width-89) | 位图宽度 | 332| [VGUBuffer::height](#height-88) | 位图高度 | 333| [VGUBuffer::stride](#stride-22) | 位图stride | 334| [VGUBuffer::virAddr](#viraddr-22) | 位图缓存的虚拟地址 | 335| [VGUBuffer::phyAddr](#phyaddr-33) | 位图缓存的物理地址 | 336| [VGUMaskLayer::buffer](#buffer-13) | 蒙版缓存 | 337| [VGUMaskLayer::rect](#rect-23) | 蒙版矩形 | 338| [VGUSurface::buffer](#buffer-23) | 位图缓存 | 339| [VGUSurface::clipRect](#cliprect) | 矩形剪切域,如果为空,整个表面直接渲染。 | 340| [VGUSurface::clipPath](#clippath) | 路径剪切域,如果为空,整个表面直接渲染。 | 341| [VGUSurface::clipType](#cliptype) | 表面剪切类型 | 342| [VGUSurface::mask](#mask) | 蒙版图层, 可以为空。 | 343| [VGUSurface::blend](#blend) | 混合叠加模式 | 344| [VGUSurface::filter](#filter) | 图像滤波类型 | 345| [VGUColorStop::stop](#stop) | 颜色偏移位置, 值范围是 0.0 ~ 1.0。 | 346| [VGUColorStop::color](#color-45) | 偏移位置对应颜色 | 347| [VGULinear::x1](#x1-23) | 线性渐变起点水平坐标 | 348| [VGULinear::y1](#y1-23) | 线性渐变起点垂直坐标 | 349| [VGULinear::x2](#x2) | 线性渐变终点水平坐标 | 350| [VGULinear::y2](#y2) | 线性渐变起点垂直坐标 | 351| [VGURadial::x0](#x0-22) | 内圈圆心水平坐标 | 352| [VGURadial::y0](#y0-22) | 内圈圆心垂直坐标 | 353| [VGURadial::r0](#r0) | 内圈圆半径 | 354| [VGURadial::x1](#x1-33) | 外圈圆心水平坐标 | 355| [VGURadial::y1](#y1-33) | 外圈圆心垂直坐标 | 356| [VGURadial::r1](#r1) | 外圈圆半径 | 357| [VGUConic::cx](#cx) | 圆弧中心x坐标 | 358| [VGUConic::cy](#cy) | 圆弧中心y坐标 | 359| [VGUImage::buffer](#buffer-33) | 图像存储缓存 | 360| [VGUImage::matrix](#matrix-12) | 图像矩阵变换,该参数为空,则内部使用单位变换矩阵。 | 361| [VGUImage::rect](#rect-33) | 图像截取矩形,该参数为空,则截取整个图像。 | 362| [VGUImage::opacity](#opacity-13) | 透明度,范围0~255。 | 363| [VGUPattern::image](#image) | 图像对象 | 364| [VGUPattern::wrapx](#wrapx) | 图像水平方向平铺类型 | 365| [VGUPattern::wrapy](#wrapy) | 图像垂直方向平铺类型 | 366| [VGUGradient::matrix](#matrix-22) | 针对渐变对象的变换矩阵 | 367| [VGUGradient::colorStops](#colorstops) | 渐变停止颜色数组指针 | 368| [VGUGradient::stopCount](#stopcount) | 渐变停止颜色个数 | 369| [VGUGradient::linear](#linear) | 线性渐变对象 | 370| [VGUGradient::radial](#radial) | 辐射渐变对象 | 371| [VGUGradient::conic](#conic) | 圆锥渐变对象 | 372| [VGUGradient::type](#type-67) | 渐变类型 | 373| [VGUGradient::spread](#spread) | 渐变延伸模式 | 374| [VGUGradient::opacity](#opacity-23) | 透明度,范围0~255。 | 375| [VGUSolid::color](#color-55) | 颜色值 | 376| [VGUSolid::opacity](#opacity-33) | 透明度. 值范围 0 ~ 255。 | 377| [VGUPaintStyle::gradient](#gradient) | 渐变对象 | 378| [VGUPaintStyle::pattern](#pattern) | 图片模式对象 | 379| [VGUPaintStyle::solid](#solid) | 颜色对象 | 380| [VGUPaintStyle::type](#type-77) | 渲染类型 | 381| [VGUFillAttr::rule](#rule) | 填充规格 | 382| [VGUStrokeAttr::cap](#cap) | 线帽类型 | 383| [VGUStrokeAttr::join](#join) | 联结类型 | 384| [VGUStrokeAttr::miterLimit](#miterlimit) | 最大斜切长度 | 385| [VGUStrokeAttr::width](#width-99) | 线宽 | 386| ([VGUFuncs::InitVgu](#initvgu) )(void) | 初始化硬件加速。 | 387| ([VGUFuncs::DeinitVgu](#deinitvgu) )(void) | 去初始化硬件加速。 | 388| ([VGUFuncs::QueryCapability](#querycapability))(uint32_t cap) | 查询硬件能力集。 | 389| ([VGUFuncs::RenderFill](#renderfill))(VGUSurface \*target, const VGUPath \*path, const VGUMatrix3 \*matrix, const VGUFillAttr \*attr, const VGUPaintStyle \*style) | 使用指定的渲染对象来填充路径。 | 390| ([VGUFuncs::RenderStroke](#renderstroke) )(VGUSurface \*target, const VGUPath \*path, const VGUMatrix3 \*matrix, const VGUStrokeAttr \*attr, const VGUPaintStyle \*style) | 使用指定的渲染对象来描边路径。 | 391| ([VGUFuncs::RenderBlur](#renderblur) )(VGUSurface \*target, uint16_t blur) | 对目标表面进行模糊处理。 | 392| ([VGUFuncs::RenderBlit](#renderblit) )(VGUSurface \*target, const VGUImage \*src, uint32_t color) | 对图像进行搬移操作。 | 393| ([VGUFuncs::RenderBlitN](#renderblitn) )(VGUSurface \*target, const VGUImage \*src, uint16_t count, uint32_t color) | 对多个源图像进行叠加操作。 | 394| ([VGUFuncs::RenderClearRect](#renderclearrect) )(VGUSurface \*target, const VGURect \*rect, uint32_t color, uint8_t opacity) | 对指定矩形进行颜色清除操作。 | 395| ([VGUFuncs::RenderCancel](#rendercancel) )() | 取消硬件加速渲染。 | 396| ([VGUFuncs::RenderSync](#rendersync) )(int32_t timeOut) | 同步硬件加速模块绘制或搬移操作。 | 397 398 399## **宏定义说明** 400 401 402### PROPERTY_NAME_LEN 403 404 405``` 406#define PROPERTY_NAME_LEN 50 407``` 408 409**描述:** 410 411属性名称长度 412 413### HDI_VGU_SCALAR_IS_FLOAT 414 415 416``` 417#define HDI_VGU_SCALAR_IS_FLOAT 1 418``` 419 420**描述:** 421 422VGU标量是否为浮点型 423 424 425## **类型定义说明** 426 427 428### VGUPixelFormat 429 430 431``` 432typedef PixelFormat VGUPixelFormat; 433``` 434 435**描述:** 436 437像素格式 438 439 440### VGUBlendType 441 442 443``` 444typedef BlendType VGUBlendType; 445``` 446 447**描述:** 448 449混合操作类型 450 451### VGUScalar 452 453 454``` 455#ifdef HDI_VGU_SCALAR_IS_FLOAT 456typedef float VGUScalar; 457#else 458typedef int32_t VGUScalar; 459#endif 460``` 461 462**描述:** 463 464VGU标量 465 466 467### HotPlugCallback 468 469 470``` 471typedef void(* HotPlugCallback) (uint32_t devId, bool connected, void *data) 472``` 473 474**描述:** 475 476热插拔事件回调。 477 478当有热插拔事件发生时,会回调该接口,需要通过[RegHotPlugCallback](#reghotplugcallback)注册该回调接口。 479 480**参数:** 481 482 | 名称 | 描述 | 483| -------- | -------- | 484| devId | 输入参数,显示设备ID,此ID由HDI实现层生成,并通过当前回调接口传递给图形服务使用,用以标记当前连接的显示设备。 | 485| connected | 输入参数,指明设备的连接状态,true代表连接,false代表断开。 | 486| data | 输出参数,图形服务携带的私有数据,该参数携带的是[RegHotPlugCallback](#reghotplugcallback)接口注册时传递的私有数据地址。 | 487 488 489### RefreshCallback 490 491 492``` 493typedef void(* RefreshCallback) (uint32_t devId, void *data) 494``` 495 496**描述:** 497 498刷新请求回调。 499 500当接口实现层需要图形服务刷新数据帧时会回调该接口,需要通过[RegDisplayRefreshCallback](#regdisplayrefreshcallback)注册该回调接口。 501 502**参数:** 503 504 | 名称 | 描述 | 505| -------- | -------- | 506| devId | 输入参数,显示设备ID。 | 507| data | 输出参数,图形服务携带的私有数据,该参数携带的是[RegDisplayRefreshCallback](#regdisplayrefreshcallback)接口注册时传递的地址。 | 508 509 510### VBlankCallback 511 512 513``` 514typedef void(* VBlankCallback) (unsigned int sequence, uint64_t ns, void *data) 515``` 516 517**描述:** 518 519VBlank 事件回调。 520 521垂直同步事件回调接口,需要通过[RegDisplayVBlankCallback](#regdisplayvblankcallback)注册该回调接口。 522 523**参数:** 524 525 | 名称 | 描述 | 526| -------- | -------- | 527| sequence | 输入参数,指明VBlank序列,是一个累加值。 | 528| ns | 输入参数,该次VBlank事件的时间戳,以纳秒为单位。 | 529| data | 输出参数,图形服务携带的私有数据,该参数携带的是[RegDisplayVBlankCallback](#regdisplayvblankcallback)接口注册时传递的地址。 | 530 531 532## **枚举类型说明** 533 534 535### anonymous enum 536 537 538``` 539anonymous enum 540``` 541 542**描述:** 543 544定义缓冲区使用。 545 546 | 枚举值 | 描述 | 547| -------- | -------- | 548| HBM_USE_CPU_READ | CPU 读缓冲 | 549| HBM_USE_CPU_WRITE | CPU 写内存 | 550| HBM_USE_MEM_MMZ | MMZ | 551| HBM_USE_MEM_DMA | DMA缓冲区 | 552| HBM_USE_MEM_SHARE | 共享内存缓冲区 | 553| HBM_USE_MEM_MMZ_CACHE | MMZ缓存 | 554| HBM_USE_MEM_FB | 帧缓存 | 555| HBM_USE_ASSIGN_SIZE | 内存分配 | 556 557 558### BlendType 559 560 561``` 562enum BlendType 563``` 564 565**描述:** 566 567支持的图像混合类型。 568 569系统在硬件加速期间基于指定的混合类型合成图像。 570 571 | 枚举值 | 描述 | 572| -------- | -------- | 573| BLEND_NONE | No 混合操作 | 574| BLEND_CLEAR | CLEAR 混合操作 | 575| BLEND_SRC | SRC 混合操作 | 576| BLEND_SRCOVER | SRC_OVER 混合操作 | 577| BLEND_DSTOVER | DST_OVER 混合操作 | 578| BLEND_SRCIN | SRC_IN 混合操作 | 579| BLEND_DSTIN | DST_IN 混合操作 | 580| BLEND_SRCOUT | SRC_OUT 混合操作 | 581| BLEND_DSTOUT | DST_OUT 混合操作 | 582| BLEND_SRCATOP | SRC_ATOP 混合操作 | 583| BLEND_DSTATOP | DST_ATOP 混合操作 | 584| BLEND_ADD | ADD 混合操作 | 585| BLEND_XOR | XOR 混合操作 | 586| BLEND_DST | DST 混合操作 | 587| BLEND_AKS | AKS 混合操作 | 588| BLEND_AKD | AKD 混合操作 | 589| BLEND_BUTT | 空操作 | 590 591 592### ColorDataSpace 593 594 595``` 596enum ColorDataSpace 597``` 598 599**描述:** 600 601枚举颜色空间的类型 602 603 | 枚举值 | 描述 | 604| -------- | -------- | 605| COLOR_DATA_SPACE_UNKNOWN | 未知的 | 606| GAMUT_BT601 | BT601色域 | 607| GAMUT_BT709 | BT709色域 | 608| GAMUT_DCI_P3 | DCI_P3色域 | 609| GAMUT_SRGB | SRGB色域 | 610| GAMUT_ADOBE_RGB | ADOBE_RGB色域 | 611| GAMUT_DISPLAY_P3 | DISPLAY_P3色域 | 612| GAMUT_BT2020 | BT2020色域 | 613| GAMUT_BT2100_PQ | BT2100_PQ色域 | 614| GAMUT_BT2100_HLG | BT2100_HLG色域 | 615| GAMUT_DISPLAY_BT2020 | DISPLAY_BT2020色域 | 616| TRANSFORM_FUNC_UNSPECIFIED | UNSPECIFIED转换函数 | 617| TRANSFORM_FUNC_LINEAR | LINEAR转换函数 | 618| TRANSFORM_FUNC_SRGB | SRGB转换函数 | 619| TRANSFORM_FUNC_SMPTE_170M | SMPTE_170M转换函数 | 620| TRANSFORM_FUNC_GM2_2 | GM2_2转换函数 | 621| TRANSFORM_FUNC_GM2_6 | GM2_6转换函数 | 622| TRANSFORM_FUNC_GM2_8 | GM2_8转换函数 | 623| TRANSFORM_FUNC_ST2084 | ST2084转换函数 | 624| TRANSFORM_FUNC_HLG | HLG转换函数 | 625| PRECISION_UNSPECIFIED | UNSPECIFIED精度 | 626| PRECISION_FULL | FULL精度 | 627| PRESION_LIMITED | LIMITED精度 | 628| PRESION_EXTENDED | EXTENDED精度 | 629| BT601_SMPTE170M_FULL | BT601色域 \| SMPTE_170M转换函数 \| FULL精度 | 630| BT601_SMPTE170M_LIMITED | BT601色域 \| SMPTE_170M转换函数 \| LIMITED精度 | 631| BT709_LINEAR_FULL | BT709色域 \| LINEAR转换函数 \| FULL精度 | 632| BT709_LINEAR_EXTENDED | BT709色域 \| LINEAR转换函数 \| EXTENDED精度 | 633| BT709_SRGB_FULL | BT709色域 \| SRGB转换函数 \| FULL精度 | 634| BT709_SRGB_EXTENDED | BT709色域 \| SRGB转换函数 \| EXTENDED精度 | 635| BT709_SMPTE170M_LIMITED | BT709色域 \| SMPTE_170M转换函数 \| LIMITED精度 | 636| DCI_P3_LINEAR_FULL | DCI_P3色域 \| LINEAR转换函数 \| FULL精度 | 637| DCI_P3_GAMMA26_FULL | DCI_P3色域 \| GM2_6转换函数 \| FULL精度 | 638| DISPLAY_P3_LINEAR_FULL | DISPLAY_P3色域 \| LINEAR转换函数 \| FULL精度 | 639| DCI_P3_SRGB_FULL | DCI_P3色域 \| SRGB转换函数 \| FULL精度 | 640| ADOBE_RGB_GAMMA22_FULL | ADOBE_RGB色域 \| GM2_2转换函数 \| FULL精度 | 641| BT2020_LINEAR_FULL | BT2020色域 \| LINEAR转换函数 \| FULL精度 | 642| BT2020_SRGB_FULL | BT2020色域 \| SRGB转换函数 \| FULL精度 | 643| BT2020_SMPTE170M_FULL | BT2020色域 \| SMPTE_170M转换函数 \| FULL精度 | 644| BT2020_ST2084_FULL | BT2020色域 \| ST2084转换函数 \| FULL精度 | 645| BT2020_HLG_FULL | BT2020色域 \| HLG转换函数 \| FULL精度 | 646| BT2020_ST2084_LIMITED | BT2020色域 \| ST2084转换函数 \| LIMITED精度 | 647 648 649### ColorGamut 650 651 652``` 653enum ColorGamut 654``` 655 656**描述:** 657 658色域类型枚举值 659 660 | 枚举值 | 描述 | 661| -------- | -------- | 662| COLOR_GAMUT_INVALID | 无效值 | 663| COLOR_GAMUT_NATIVE | 默认值 | 664| COLOR_GAMUT_STANDARD_BT601 | Standard BT601类型 | 665| COLOR_GAMUT_STANDARD_BT709 | Standard BT709类型 | 666| COLOR_GAMUT_DCI_P3 | DCI P3类型 | 667| COLOR_GAMUT_SRGB | SRGB类型 | 668| COLOR_GAMUT_ADOBE_RGB | Adobe RGB类型 | 669| COLOR_GAMUT_DISPLAY_P3 | display P3类型 | 670| COLOR_GAMUT_BT2020 | BT2020类型 | 671| COLOR_GAMUT_BT2100_PQ | BT2100 PQ类型 | 672| COLOR_GAMUT_BT2100_HLG | BT2100 HLG类型 | 673| COLOR_GAMUT_DISPLAY_BT2020 | Display BT2020类型 | 674 675 676### ColorKey 677 678 679``` 680enum ColorKey 681``` 682 683**描述:** 684 685Color key操作类型定义,即硬件加速支持的Color key操作类型。 686 687 | 枚举值 | 描述 | 688| -------- | -------- | 689| CKEY_NONE | 不使用colorkey | 690| CKEY_SRC | 使用源colorkey | 691| CKEY_DST | 使用目标colorkey | 692| CKEY_BUTT | 空操作 | 693 694 695### CompositionType 696 697 698``` 699enum CompositionType 700``` 701 702**描述:** 703 704枚举特殊层的组合类型。 705 706 | 枚举值 | 描述 | 707| -------- | -------- | 708| COMPOSITION_CLIENT | Client 合成类型,使用CPU或者GPU合成 | 709| COMPOSITION_DEVICE | Device 合成类型,使用Device合成 | 710| COMPOSITION_CURSOR | Cursor合成类型,用于光标合成 | 711| COMPOSITION_VIDEO | Video合成类型,用于视频层合成 | 712| COMPOSITION_DEVICE_CLEAR | Device clear 合成类型,device会清除目标区域 | 713| COMPOSITION_CLIENT_CLEAR | Client clear 合成类型,service会清除目标区域 | 714| COMPOSITION_TUNNEL | Tunnel 合成类型,用于tunnel | 715| COMPOSITION_BUTT | 合成类型,一个不可用类型,用于默认初始化 | 716 717 718### Connection 719 720 721``` 722enum Connection 723``` 724 725**描述:** 726 727热插拔连接类型定义 728 729 | 枚举值 | 描述 | 730| -------- | -------- | 731| CON_INVALID | 无效类型 | 732| CONNECTED | 已连接 | 733| DISCONNECTED | 断开连接 | 734 735 736### DispErrCode 737 738 739``` 740enum DispErrCode 741``` 742 743**描述:** 744 745返回值类型定义。 746 747 | 枚举值 | 描述 | 748| -------- | -------- | 749| DISPLAY_SUCCESS | 成功 | 750| DISPLAY_FAILURE | 失败 | 751| DISPLAY_FD_ERR | fd错误 | 752| DISPLAY_PARAM_ERR | 参数错误 | 753| DISPLAY_NULL_PTR | 空指针 | 754| DISPLAY_NOT_SUPPORT | 不支持的特性 | 755| DISPLAY_NOMEM | 内存不足 | 756| DISPLAY_SYS_BUSY | 系统繁忙 | 757| DISPLAY_NOT_PERM | 操作不允许 | 758 759 760### DispPowerStatus 761 762 763``` 764enum DispPowerStatus 765``` 766 767**描述:** 768 769枚举显示状态 770 771 | 枚举值 | 描述 | 772| -------- | -------- | 773| POWER_STATUS_ON | 上电模式 | 774| POWER_STATUS_STANDBY | 待机模式 | 775| POWER_STATUS_SUSPEND | 休眠模式 | 776| POWER_STATUS_OFF | 下电模式 | 777| POWER_STATUS_BUTT | 默认模式 | 778 779 780### GamutMap 781 782 783``` 784enum GamutMap 785``` 786 787**描述:** 788 789枚举色域的映射类型 790 791 | 枚举值 | 描述 | 792| -------- | -------- | 793| GAMUT_MAP_CONSTANT | 不变 | 794| GAMUT_MAP_EXPANSION | 映射增强 | 795| GAMUT_MAP_HDR_CONSTANT | 不变,用于HDR | 796| GAMUT_MAP_HDR_EXPANSION | 映射增强,用于HDR | 797 798 799### HDRFormat 800 801 802``` 803enum HDRFormat 804``` 805 806**描述:** 807 808枚举HDR格式 809 810 | 枚举值 | 描述 | 811| -------- | -------- | 812| NOT_SUPPORT_HDR | 不支持HDR | 813| DOLBY_VISION | Dolby Vision格式 | 814| HDR10 | HDR10格式 | 815| HLG | HLG格式 | 816| HDR10_PLUS | HDR10 Plus格式 | 817| HDR_VIVID | Vivid格式 | 818 819 820### HDRMetadataKey 821 822 823``` 824enum HDRMetadataKey 825``` 826 827**描述:** 828 829枚举HDR元数据关键字 830 831 | 枚举值 | 描述 | 832| -------- | -------- | 833| MATAKEY_RED_PRIMARY_X | 红基色X坐标 | 834| MATAKEY_RED_PRIMARY_Y | 红基色Y坐标 | 835| MATAKEY_GREEN_PRIMARY_X | 绿基色X坐标 | 836| MATAKEY_GREEN_PRIMARY_Y | 绿基色Y坐标 | 837| MATAKEY_BLUE_PRIMARY_X | 蓝基色X坐标 | 838| MATAKEY_BLUE_PRIMARY_Y | 蓝基色Y坐标 | 839| MATAKEY_WHITE_PRIMARY_X | 白点X坐标 | 840| MATAKEY_WHITE_PRIMARY_Y | 白点Y坐标 | 841| MATAKEY_MAX_LUMINANCE | 最大的光亮度 | 842| MATAKEY_MIN_LUMINANCE | 最小的光亮度 | 843| MATAKEY_MAX_CONTENT_LIGHT_LEVEL | 最大的内容亮度水平 | 844| MATAKEY_MAX_FRAME_AVERAGE_LIGHT_LEVEL | 最大的帧平均亮度水平 | 845| MATAKEY_HDR10_PLUS | HDR10 Plus | 846| MATAKEY_HDR_VIVID | Vivid | 847 848 849### InterfaceType 850 851 852``` 853enum InterfaceType 854``` 855 856**描述:** 857 858枚举接口类型。 859 860 | 枚举值 | 描述 | 861| -------- | -------- | 862| DISP_INTF_HDMI | HDMI 接口 | 863| DISP_INTF_LCD | LCD 接口 | 864| DISP_INTF_BT1120 | BT1120 接口 | 865| DISP_INTF_BT656 | BT656 接口 | 866| DISP_INTF_YPBPR | YPBPR 接口 | 867| DISP_INTF_RGB | RGB 接口 | 868| DISP_INTF_CVBS | CVBS 接口 | 869| DISP_INTF_SVIDEO | SVIDEO 接口 | 870| DISP_INTF_VGA | VGA 接口 | 871| DISP_INTF_MIPI | MIPI 接口 | 872| DISP_INTF_PANEL | PANEL 接口 | 873| DISP_INTF_BUTT | BUTT 接口,一个不可用类型,用于默认初始化。 | 874 875 876### LayerType 877 878 879``` 880enum LayerType 881``` 882 883**描述:** 884 885图层类型定义。 886 887 | 枚举值 | 描述 | 888| -------- | -------- | 889| LAYER_TYPE_GRAPHIC | 图形层 | 890| LAYER_TYPE_OVERLAY | 视频层 | 891| LAYER_TYPE_SIDEBAND | 媒体播放 | 892| LAYER_TYPE_CURSOR | 光标层 | 893| LAYER_TYPE_BUTT | 空图层 | 894 895 896### MirrorType 897 898 899``` 900enum MirrorType 901``` 902 903**描述:** 904 905硬件加速支持的镜像操作类型定义 906 907 | 枚举值 | 描述 | 908| -------- | -------- | 909| MIRROR_NONE | 不使用镜像 | 910| MIRROR_LR | 左右镜像 | 911| MIRROR_TB | 上下镜像 | 912| MIRROR_BUTT | 空操作 | 913 914 915### PixelFormat 916 917 918``` 919enum PixelFormat 920``` 921 922**描述:** 923 924像素格式类型定义。 925 926 | 枚举值 | 描述 | 927| -------- | -------- | 928| PIXEL_FMT_CLUT8 | CLUT8 格式 | 929| PIXEL_FMT_CLUT1 | CLUT1 格式 | 930| PIXEL_FMT_CLUT4 | CLUT4 格式 | 931| PIXEL_FMT_RGB_565 | RGB565 格式 | 932| PIXEL_FMT_RGBA_5658 | RGBA5658 格式 | 933| PIXEL_FMT_RGBX_4444 | RGBX4444 格式 | 934| PIXEL_FMT_RGBA_4444 | RGBA4444 格式 | 935| PIXEL_FMT_RGB_444 | RGB444 格式 | 936| PIXEL_FMT_RGBX_5551 | RGBX5551 格式 | 937| PIXEL_FMT_RGBA_5551 | RGBA5551 格式 | 938| PIXEL_FMT_RGB_555 | RGB555 格式 | 939| PIXEL_FMT_RGBX_8888 | RGBX8888 格式 | 940| PIXEL_FMT_RGBA_8888 | RGBA8888 格式 | 941| PIXEL_FMT_RGB_888 | RGB888 格式 | 942| PIXEL_FMT_BGR_565 | BGR565 格式 | 943| PIXEL_FMT_BGRX_4444 | BGRX4444 格式 | 944| PIXEL_FMT_BGRA_4444 | BGRA4444 格式 | 945| PIXEL_FMT_BGRX_5551 | BGRX5551 格式 | 946| PIXEL_FMT_BGRA_5551 | BGRA5551 格式 | 947| PIXEL_FMT_BGRX_8888 | BGRX8888 格式 | 948| PIXEL_FMT_BGRA_8888 | BGRA8888 格式 | 949| PIXEL_FMT_YUV_422_I | YUV422 交错格式 | 950| PIXEL_FMT_YCBCR_422_SP | YCBCR422 半平面格式 | 951| PIXEL_FMT_YCRCB_422_SP | YCRCB422 半平面格式 | 952| PIXEL_FMT_YCBCR_420_SP | YCBCR420 半平面格式 | 953| PIXEL_FMT_YCRCB_420_SP | YCRCB420 半平面格式 | 954| PIXEL_FMT_YCBCR_422_P | YCBCR422 平面格式 | 955| PIXEL_FMT_YCRCB_422_P | YCRCB422 平面格式 | 956| PIXEL_FMT_YCBCR_420_P | YCBCR420 平面格式 | 957| PIXEL_FMT_YCRCB_420_P | YCRCB420 平面格式 | 958| PIXEL_FMT_YUYV_422_PKG | YUYV422 打包格式 | 959| PIXEL_FMT_UYVY_422_PKG | UYVY422 打包格式t | 960| PIXEL_FMT_YVYU_422_PKG | YVYU422 打包格式 | 961| PIXEL_FMT_VYUY_422_PKG | VYUY422 打包格式 | 962| PIXEL_FMT_VENDER_MASK | vendor mask 格式 | 963| PIXEL_FMT_BUTT | Invalid 像素格式 | 964 965 966### PresentTimestampType 967 968 969``` 970enum PresentTimestampType 971``` 972 973**描述:** 974 975上屏时间戳类型枚举值 976 977 | 枚举值 | 描述 | 978| -------- | -------- | 979| HARDWARE_DISPLAY_PTS_UNSUPPORTED | 不支持 | 980| HARDWARE_DISPLAY_PTS_DELAY | Delay 时延类型 | 981| HARDWARE_DISPLAY_PTS_TIMESTAMP | 时间戳类型 | 982 983 984### RopType 985 986 987``` 988enum RopType 989``` 990 991**描述:** 992 993硬件加速支持的ROP操作类型。 994 995硬件加速支持的ROP操作类型,在将前景位图的RGB颜色分量和Alpha分量值与背景位图的RGB颜色分量值和Alpha分量值进行按位的布尔运算(包括按位与,按位或等),将结果输出。 996 997 | 枚举值 | 描述 | 998| -------- | -------- | 999| ROP_BLACK | 黑色 | 1000| ROP_NOTMERGEPEN | ~(S2+S1) | 1001| ROP_MASKNOTPEN | ~S2&S1 | 1002| ROP_NOTCOPYPEN | ~S2 | 1003| ROP_MASKPENNOT | S2&~S1 | 1004| ROP_NOT | ~S1 | 1005| ROP_XORPEN | S2^S1 | 1006| ROP_NOTMASKPEN | ~(S2&S1) | 1007| ROP_MASKPEN | S2&S1 | 1008| ROP_NOTXORPEN | ~(S2^S1) | 1009| ROP_NOP | S1 | 1010| ROP_MERGENOTPEN | ~S2+S1 | 1011| ROP_COPYPE | S2 | 1012| ROP_MERGEPENNOT | S2+~S1 | 1013| ROP_MERGEPEN | S2+S1 | 1014| ROP_WHITE | 白色 | 1015| ROP_BUTT | 无效值 | 1016 1017 1018### TransformType 1019 1020 1021``` 1022enum TransformType 1023``` 1024 1025**描述:** 1026 1027图层变换类型定义。 1028 1029 | 枚举值 | 描述 | 1030| -------- | -------- | 1031| ROTATE_NONE | 不旋转 | 1032| ROTATE_90 | 旋转90度 | 1033| ROTATE_180 | 旋转180度 | 1034| ROTATE_270 | 旋转270度 | 1035| ROTATE_BUTT | 无效操作 | 1036 1037 1038### VGUCapability 1039 1040 1041``` 1042enum VGUCapability 1043``` 1044 1045**描述:** 1046 1047硬件加速能力。 1048 1049 | 枚举值 | 描述 | 1050| -------- | -------- | 1051| VGU_CAP_BLIT | 支持Blit能力 | 1052| VGU_CAP_BLIT_NUM | 搬移支持图片叠加最大数目 | 1053| VGU_CAP_PATH | 支持路径的fill和stroke能力 | 1054| VGU_CAP_FILTER_BLUR | 支持模糊能力 | 1055 1056 1057### VGUClipType 1058 1059 1060``` 1061enum VGUClipType 1062``` 1063 1064**描述:** 1065 1066绘制表面剪切类型。 1067 1068 | 枚举值 | 描述 | 1069| -------- | -------- | 1070| VGU_CLIP_RECT | 矩形剪切(默认) | 1071| VGU_CLIP_PATH | 路径剪切 | 1072| VGU_CLIP_BUTT | 无效定义 | 1073 1074 1075### VGUFillRule 1076 1077 1078``` 1079enum VGUFillRule 1080``` 1081 1082**描述:** 1083 1084填充规则定义。 1085 1086 | 枚举值 | 描述 | 1087| -------- | -------- | 1088| VGU_RULE_WINDING | 非0填充(默认) | 1089| VGU_RULE_EVEN_ODD | 奇偶填充 | 1090| VGU_RULE_BUTT | 无效定义 | 1091 1092 1093### VGUFillSpread 1094 1095 1096``` 1097enum VGUFillSpread 1098``` 1099 1100**描述:** 1101 1102渐变填充区域外的延展类型。 1103 1104 | 枚举值 | 描述 | 1105| -------- | -------- | 1106| VGU_SPREAD_PAD | Pad类型(默认) | 1107| VGU_SPREAD_REFLECT | Reflect类型 | 1108| VGU_SPREAD_REPEAT | Repeat类型 | 1109| VGU_SPREAD_BUTT | 无效定义 | 1110 1111 1112### VGUFilter 1113 1114 1115``` 1116enum VGUFilter 1117``` 1118 1119**描述:** 1120 1121图像滤波类型。 1122 1123 | 枚举值 | 描述 | 1124| -------- | -------- | 1125| VGU_FILTER_BILINEAR | 双线性插值(默认) | 1126| VGU_FILTER_NEAREST | 无插值 | 1127| VGU_FILTER_LINEAR | 线性插值 | 1128| VGU_FILTER_BUTT | 无效定义 | 1129 1130 1131### VGUGradientType 1132 1133 1134``` 1135enum VGUGradientType 1136``` 1137 1138**描述:** 1139 1140渐变类型。 1141 1142 | 枚举值 | 描述 | 1143| -------- | -------- | 1144| VGU_GRADIENT_LINEAR | 线性渐变 | 1145| VGU_GRADIENT_RADIAL | 辐射渐变 | 1146| VGU_GRADIENT_CONIC | 圆锥渐变 | 1147| VGU_GRADIENT_BUTT | 无效定义 | 1148 1149 1150### VGUJointType 1151 1152 1153``` 1154enum VGUJointType 1155``` 1156 1157**描述:** 1158 1159联接类型。 1160 1161 | 枚举值 | 描述 | 1162| -------- | -------- | 1163| VGU_LINE_JOIN_MITER | 尖角(默认) | 1164| VGU_LINE_JOIN_ROUND | 圆角 | 1165| VGU_LINE_JOIN_BEVEL | 斜角 | 1166| VGU_LINE_JOIN_BUTT | 无效定义 | 1167 1168 1169### VGULineCap 1170 1171 1172``` 1173enum VGULineCap 1174``` 1175 1176**描述:** 1177 1178线帽。 1179 1180 | 枚举值 | 描述 | 1181| -------- | -------- | 1182| VGU_LINECAP_BUTT | 线条末端为平直线帽(默认) | 1183| VGU_LINECAP_ROUND | 线条末端为圆形线帽 | 1184| VGU_LINECAP_SQUARE | 线条末端为正方向形线帽 | 1185 1186 1187### VGUPaintType 1188 1189 1190``` 1191enum VGUPaintType 1192``` 1193 1194**描述:** 1195 1196渲染对象 1197 1198 | 枚举值 | 描述 | 1199| -------- | -------- | 1200| VGU_PAINT_SOLID | 填充颜色 | 1201| VGU_PAINT_GRADIENT | 渲染渐变对象 | 1202| VGU_PAINT_PATTERN | 渲染图片模式 | 1203| VGU_PAINT_BUTT | 无效操作 | 1204 1205 1206### VGUPathCmd 1207 1208 1209``` 1210enum VGUPathCmd 1211``` 1212 1213**描述:** 1214 1215路径绘制指令类型。 1216 1217 | 枚举值 | 描述 | 1218| -------- | -------- | 1219| VGU_PATH_CMD_CLOSE | 线段关闭,坐标数据:none | 1220| VGU_PATH_CMD_MOVE | 移动到指定位置,坐标数据:x0, y0 | 1221| VGU_PATH_CMD_LINE | 线条,坐标数据:x0, y0 | 1222| VGU_PATH_CMD_HLINE | 水平线,坐标数据:x0 | 1223| VGU_PATH_CMD_VLINE | 垂直线,坐标数据:y0 | 1224| VGU_PATH_CMD_QUAD | 二次贝塞尔曲线,坐标数据:x0, y0, x1, y1 | 1225| VGU_PATH_CMD_CUBIC | 三次贝塞尔曲线,坐标数据:x0, y0, x1, y1, x2, y2 | 1226| VGU_PATH_CMD_SQUAD | 平滑二次贝塞尔曲线,坐标数据:x1, y1 | 1227| VGU_PATH_CMD_SCUBIC | 平滑三次贝塞尔曲线,坐标数据:x1, y1, x2, y2 | 1228| VGU_PATH_CMD_BUTT | 无效定义 | 1229 1230 1231### VGUPathDataType 1232 1233 1234``` 1235enum VGUPathDataType 1236``` 1237 1238**描述:** 1239 1240路径坐标数据类型。 1241 1242 | 枚举值 | 描述 | 1243| -------- | -------- | 1244| VGU_DATA_TYPE_S16 | 整型(2 bytes) | 1245| VGU_DATA_TYPE_S32 | 整型(4 bytes) | 1246| VGU_DATA_TYPE_F32 | 浮点(4 bytes) | 1247 1248 1249### VGUResult 1250 1251 1252``` 1253enum VGUResult 1254``` 1255 1256**描述:** 1257 1258错误码定义。 1259 1260 | 枚举值 | 描述 | 1261| -------- | -------- | 1262| VGU_SUCCESS | 成功 | 1263| VGU_NO_SUPPORT | 不支持 | 1264| VGU_OPERATION_FAILED | 操作失败 | 1265| VGU_OUT_OF_MEMORY | 内存溢出 | 1266| VGU_TIMEOUT | 超时 | 1267| VGU_INVALID_PARAMETER | 无效参数, | 1268| VGU_BUSY | 设备忙 | 1269| VGU_NO_CONTEXT | 无上下文 | 1270 1271 1272### VGUTransformType 1273 1274 1275``` 1276enum VGUTransformType 1277``` 1278 1279**描述:** 1280 1281变换类型。 1282 1283 | 枚举值 | 描述 | 1284| -------- | -------- | 1285| VGU_TRANSFORM_TRANSLATE | 平移变换 | 1286| VGU_TRANSFORM_SCALE | 缩放变换 | 1287| VGU_TRANSFORM_ROTATE_90 | 旋转90度 | 1288| VGU_TRANSFORM_ROTATE_180 | 旋转180度 | 1289| VGU_TRANSFORM_ROTATE_270 | 旋转270度 | 1290| VGU_TRANSFORM_OTHER | 其他变换 | 1291 1292 1293### VGUWrapType 1294 1295 1296``` 1297enum VGUWrapType 1298``` 1299 1300**描述:** 1301 1302图像模式填充延展类型。 1303 1304 | 枚举值 | 描述 | 1305| -------- | -------- | 1306| VGU_WRAP_REFLECT | 反射类型 | 1307| VGU_WRAP_REPEAT | 重复类型 | 1308| VGU_WRAP_BUTT | 无效定义 | 1309 1310 1311## **函数说明** 1312 1313 1314### DeviceInitialize() 1315 1316 1317``` 1318int32_t DeviceInitialize (DeviceFuncs ** funcs) 1319``` 1320 1321**描述:** 1322 1323实现显示设备控制接口的初始化,申请操作显示设备控制接口的资源,并获取对应的操作接口。 1324 1325**参数:** 1326 1327 | 名称 | 描述 | 1328| -------- | -------- | 1329| funcs | 输出参数,显示设备控制接口指针,初始化时分配内存,调用者不需要分配内存,调用者获取该指针用于操作显示设备。 | 1330 1331**返回:** 1332 1333DISPLAY_SUCCESS 表示执行成功。 1334 1335其他值表示执行失败,具体错误码查看[DispErrCode](#disperrcode)。 1336 1337 1338### DeviceUninitialize() 1339 1340 1341``` 1342int32_t DeviceUninitialize (DeviceFuncs * funcs) 1343``` 1344 1345**描述:** 1346 1347取消显示设备控制接口的初始化,释放控制接口使用到的资源。 1348 1349**参数:** 1350 1351 | 名称 | 描述 | 1352| -------- | -------- | 1353| funcs | 输出参数,显示设备控制接口指针,用于释放初始化函数中分配的操作指针内存。 | 1354 1355**返回:** 1356 1357DISPLAY_SUCCESS 表示执行成功。 1358 1359其他值表示执行失败,具体错误码查看[DispErrCode](#disperrcode)。 1360 1361 1362### GfxInitialize() 1363 1364 1365``` 1366int32_t GfxInitialize (GfxFuncs ** funcs) 1367``` 1368 1369**描述:** 1370 1371获取硬件加速相关的操作接口指针。 1372 1373**参数:** 1374 1375 | 名称 | 描述 | 1376| -------- | -------- | 1377| funcs | 输出参数,硬件加速模块操作接口指针,调用者不需要分配内存,调用者获取该指针操作硬件加速。 | 1378 1379**返回:** 1380 1381DISPLAY_SUCCESS 表示执行成功。 1382 1383其他值表示执行失败,具体错误码查看[DispErrCode](#disperrcode)。 1384 1385 1386### GfxUninitialize() 1387 1388 1389``` 1390int32_t GfxUninitialize (GfxFuncs * funcs) 1391``` 1392 1393**描述:** 1394 1395释放硬件加速相关的操作接口指针。 1396 1397**参数:** 1398 1399 | 名称 | 描述 | 1400| -------- | -------- | 1401| funcs | 输出参数,硬件加速操作接口指针。 | 1402 1403**返回:** 1404 1405DISPLAY_SUCCESS 表示执行成功。 1406 1407其他值表示执行失败,具体错误码查看[DispErrCode](#disperrcode)。 1408 1409 1410### GrallocInitialize() 1411 1412 1413``` 1414int32_t GrallocInitialize (GrallocFuncs ** funcs) 1415``` 1416 1417**描述:** 1418 1419初始化内存模块,并获取内存提供的操作接口。 1420 1421**参数:** 1422 1423 | 名称 | 描述 | 1424| -------- | -------- | 1425| funcs | 输出参数,内存模块操作接口指针,初始化内存模块时分配内存,调用者不需要分配内存,调用者获取该指针操作内存。 | 1426 1427**返回:** 1428 1429DISPLAY_SUCCESS 表示执行成功。 1430 1431其他值表示执行失败,具体错误码查看[DispErrCode](#disperrcode)。 1432 1433 1434### GrallocUninitialize() 1435 1436 1437``` 1438int32_t GrallocUninitialize (GrallocFuncs * funcs) 1439``` 1440 1441**描述:** 1442 1443取消初始化内存模块,并释放内存操作接口指针。 1444 1445**参数:** 1446 1447 | 名称 | 描述 | 1448| -------- | -------- | 1449| funcs | 输出参数,内存操作接口指针,用于释放内存初始化函数中分配的操作指针内存。 | 1450 1451**返回:** 1452 1453DISPLAY_SUCCESS 表示执行成功。 1454 1455其他值表示执行失败,具体错误码查看[DispErrCode](#disperrcode)。 1456 1457 1458### LayerInitialize() 1459 1460 1461``` 1462int32_t LayerInitialize (LayerFuncs ** funcs) 1463``` 1464 1465**描述:** 1466 1467实现图层初始化功能,申请图层使用的资源,并获取图层提供的操作接口。 1468 1469**参数:** 1470 1471 | 名称 | 描述 | 1472| -------- | -------- | 1473| funcs | 输出参数,图层操作接口指针,初始化图层时分配内存,调用者不需要分配内存,调用者获取该指针操作图层。 | 1474 1475**返回:** 1476 1477DISPLAY_SUCCESS 表示执行成功。 1478 1479其他值表示执行失败,具体错误码查看[DispErrCode](#disperrcode)。 1480 1481**参见:** 1482 1483[LayerUninitialize](#layeruninitialize) 1484 1485 1486### LayerUninitialize() 1487 1488 1489``` 1490int32_t LayerUninitialize (LayerFuncs * funcs) 1491``` 1492 1493**描述:** 1494 1495取消图层初始化功能,释放图层使用到的资源,并释放图层操作接口指针。 1496 1497**参数:** 1498 1499 | 名称 | 描述 | 1500| -------- | -------- | 1501| funcs | 输出参数,图层操作接口指针,用于释放图层初始化函数中分配的操作指针内存。 | 1502 1503**返回:** 1504 1505DISPLAY_SUCCESS 表示执行成功。 1506 1507其他值表示执行失败,具体错误码查看[DispErrCode](#disperrcode)。 1508 1509**参见:** 1510 1511[LayerInitialize](#layerinitialize) 1512 1513 1514### VGUGradientClearStop() 1515 1516 1517``` 1518VGUResult VGUGradientClearStop (VGUGradient * gradient) 1519``` 1520 1521**描述:** 1522 1523清除ColorStop。 1524 1525**参数:** 1526 1527 | 名称 | 描述 | 1528| -------- | -------- | 1529| gradient | 输入参数,渐变对象。 | 1530 1531**返回:** 1532 1533VGU_SUCCESS 表示执行成功。 1534 1535其他值表示执行失败,具体错误码查看[VGUResult](#vguresult)。 1536 1537 1538### VGUGradientColorStop() 1539 1540 1541``` 1542VGUResult VGUGradientColorStop (VGUGradient * gradient, const VGUColorStop * colorStop, uint32_t count ) 1543``` 1544 1545**描述:** 1546 1547对渐变添加ColorStop。 1548 1549**参数:** 1550 1551 | 名称 | 描述 | 1552| -------- | -------- | 1553| gradient | 输入参数,渐变对象。 | 1554| colorStop | 输入参数,ColorStop数组指针。 | 1555| count | 输入参数,colorStops总数。 | 1556 1557**返回:** 1558 1559VGU_SUCCESS 表示执行成功。 1560 1561其他值表示执行失败,具体错误码查看[VGUResult](#vguresult)。 1562 1563 1564### VGUGradientConic() 1565 1566 1567``` 1568VGUResult VGUGradientConic (VGUGradient * gradient, VGUScalar cx, VGUScalar cy ) 1569``` 1570 1571**描述:** 1572 1573创建圆锥渐变对象。 1574 1575**参数:** 1576 1577 | 名称 | 描述 | 1578| -------- | -------- | 1579| gradient | 输入参数,渐变对象。 | 1580| cx | 输入参数,渐变中心水平坐标。 | 1581| cy | 输入参数,渐变中心垂直坐标。 | 1582 1583**返回:** 1584 1585VGU_SUCCESS 表示执行成功。 1586 1587其他值表示执行失败,具体错误码查看[VGUResult](#vguresult)。 1588 1589 1590### VGUGradientLinear() 1591 1592 1593``` 1594VGUResult VGUGradientLinear (VGUGradient * gradient, const VGUPoint * p1, const VGUPoint * p2 ) 1595``` 1596 1597**描述:** 1598 1599创建线性渐变对象。 1600 1601**参数:** 1602 1603 | 名称 | 描述 | 1604| -------- | -------- | 1605| gradient | 输入参数,渐变对象。 | 1606| p1 | 输入参数,起点坐标。 | 1607| p2 | 输入参数,终点坐标。 | 1608 1609**返回:** 1610 1611VGU_SUCCESS 表示执行成功。 1612 1613其他值表示执行失败,具体错误码查看[VGUResult](#vguresult)。 1614 1615 1616### VGUGradientMatrix() 1617 1618 1619``` 1620VGUResult VGUGradientMatrix (VGUGradient * gradient, const VGUMatrix3 * matrix ) 1621``` 1622 1623**描述:** 1624 1625设置渐变对象的变换矩阵。 1626 1627**参数:** 1628 1629 | 名称 | 描述 | 1630| -------- | -------- | 1631| gradient | 输入参数,渐变对象。 | 1632| matrix | 输入参数,渐变对象变换矩阵。 | 1633 1634**返回:** 1635 1636VGU_SUCCESS 表示执行成功。 1637 1638其他值表示执行失败,具体错误码查看[VGUResult](#vguresult)。 1639 1640 1641### VGUGradientRadial() 1642 1643 1644``` 1645VGUResult VGUGradientRadial (VGUGradient * gradient, const VGUPoint * p1, VGUScalar r1, const VGUPoint * p2, VGUScalar r2 ) 1646``` 1647 1648**描述:** 1649 1650创建辐射渐变对象 1651 1652**参数:** 1653 1654 | 名称 | 描述 | 1655| -------- | -------- | 1656| gradient | 输入参数,渐变对象。 | 1657| p1 | 输入参数,内圆圆心坐标。 | 1658| r1 | 输入参数,内圆半径。 | 1659| p2 | 输入参数,外圆圆心坐标。 | 1660| r2 | 输入参数,外圆半径。 | 1661 1662**返回:** 1663 1664VGU_SUCCESS 表示执行成功。 1665 1666其他值表示执行失败,具体错误码查看[VGUResult](#vguresult)。 1667 1668 1669### VGUInitialize() 1670 1671 1672``` 1673VGUResult VGUInitialize (VGUFuncs ** funcs) 1674``` 1675 1676**描述:** 1677 1678获取硬件加速相关的操作接口指针。 1679 1680**参数:** 1681 1682 | 名称 | 描述 | 1683| -------- | -------- | 1684| funcs | 输出参数,硬件加速模块操作接口指针,调用者不需要分配内存,调用者获取该指针操作硬件加速。 | 1685 1686**返回:** 1687 1688VGU_SUCCESS 表示执行成功。 1689 1690其他值表示执行失败,具体错误码查看[VGUResult](#vguresult)。 1691 1692 1693### VGUMatrixIdentity() 1694 1695 1696``` 1697VGUResult VGUMatrixIdentity (VGUMatrix3 * matrix) 1698``` 1699 1700**描述:** 1701 1702初始化矩阵对象为单位矩阵。 1703 1704**参数:** 1705 1706 | 名称 | 描述 | 1707| -------- | -------- | 1708| matrix | 输入参数,变换矩阵对象。 | 1709 1710**返回:** 1711 1712VGU_SUCCESS 表示执行成功。 1713 1714其他值表示执行失败,具体错误码查看[VGUResult](#vguresult)。 1715 1716 1717### VGUMatrixRotate() 1718 1719 1720``` 1721VGUResult VGUMatrixRotate (VGUMatrix3 * matrix, float degree ) 1722``` 1723 1724**描述:** 1725 1726矩阵变换旋转。 1727 1728**参数:** 1729 1730 | 名称 | 描述 | 1731| -------- | -------- | 1732| matrix | 输入参数,变换矩阵对象。 | 1733| degree | 输入参数,旋转度数。 | 1734 1735**返回:** 1736 1737VGU_SUCCESS 表示执行成功。 1738 1739其他值表示执行失败,具体错误码查看[VGUResult](#vguresult)。 1740 1741 1742### VGUMatrixScale() 1743 1744 1745``` 1746VGUResult VGUMatrixScale (VGUMatrix3 * matrix, float xScale, float yScale ) 1747``` 1748 1749**描述:** 1750 1751矩阵变换缩放。 1752 1753**参数:** 1754 1755 | 名称 | 描述 | 1756| -------- | -------- | 1757| matrix | 输入参数,变换矩阵对象。 | 1758| xScale | 输入参数,水平方向缩放倍数。 | 1759| yScale | 输入参数,垂直方向缩放倍数。 | 1760 1761**返回:** 1762 1763VGU_SUCCESS 表示执行成功。 1764 1765其他值表示执行失败,具体错误码查看[VGUResult](#vguresult)。 1766 1767 1768### VGUMatrixTranslate() 1769 1770 1771``` 1772VGUResult VGUMatrixTranslate (VGUMatrix3 * matrix, float x, float y ) 1773``` 1774 1775**描述:** 1776 1777矩阵变换平移。 1778 1779**参数:** 1780 1781 | 名称 | 描述 | 1782| -------- | -------- | 1783| matrix | 输入参数,变换矩阵对象。 | 1784| x | 输入参数,水平方向位置。 | 1785| y | 输入参数,垂直方向位置。 | 1786 1787**返回:** 1788 1789VGU_SUCCESS 表示执行成功。 1790 1791其他值表示执行失败,具体错误码查看[VGUResult](#vguresult)。 1792 1793 1794### VGUPathAppend() 1795 1796 1797``` 1798VGUResult VGUPathAppend (VGUPath * path, const VGUPath * subpath ) 1799``` 1800 1801**描述:** 1802 1803添加子路径到当前路径中。 1804 1805**参数:** 1806 1807 | 名称 | 描述 | 1808| -------- | -------- | 1809| path | 输入参数,路径对象。 | 1810| subpath | 输入参数,存放子路径对象。 | 1811 1812**返回:** 1813 1814VGU_SUCCESS 表示执行成功。 1815 1816其他值表示执行失败,具体错误码查看[VGUResult](#vguresult)。 1817 1818 1819### VGUPathClear() 1820 1821 1822``` 1823VGUResult VGUPathClear (VGUPath * path) 1824``` 1825 1826**描述:** 1827 1828清除路径对象内存。 1829 1830**参数:** 1831 1832 | 名称 | 描述 | 1833| -------- | -------- | 1834| path | 输入参数,路径对象。 | 1835 1836**返回:** 1837 1838VGU_SUCCESS 表示执行成功。 1839 1840其他值表示执行失败,具体错误码查看[VGUResult](#vguresult)。 1841 1842 1843### VGUPathInit() 1844 1845 1846``` 1847VGUResult VGUPathInit (VGUPath * path, VGUPathDataType type, const uint8_t * segments, int numSegments, const uint8_t * data, bool enAlias, VGURect boundBox ) 1848``` 1849 1850**描述:** 1851 1852初始化路径对象。 1853 1854**参数:** 1855 1856 | 名称 | 描述 | 1857| -------- | -------- | 1858| path | 输入参数,路径对象。 | 1859| type | 输入参数,存储路径的数据类型。 | 1860| segments | 输入参数,路径的命令缓存。 | 1861| numSegments | 输入参数,路径命令总数。 | 1862| data | 输入参数,路径命令对应的坐标缓存。 | 1863| enAlias | 输入参数,使能抗锯齿。 | 1864| boundBox | 输入参数,路径的边界范围。 | 1865 1866**返回:** 1867 1868VGU_SUCCESS 表示执行成功。 1869 1870其他值表示执行失败,具体错误码查看[VGUResult](#vguresult)。 1871 1872 1873### VGUUninitialize() 1874 1875 1876``` 1877VGUResult VGUUninitialize (VGUFuncs * funcs) 1878``` 1879 1880**描述:** 1881 1882去初始化硬件加速模块,同时释放硬件加速模块操作函数指针。 1883 1884**参数:** 1885 1886 | 名称 | 描述 | 1887| -------- | -------- | 1888| funcs | 输出参数,硬件加速操作接口指针。 | 1889 1890**返回:** 1891 1892VGU_SUCCESS 表示执行成功。 1893 1894其他值表示执行失败,具体错误码查看[VGUResult](#vguresult)。 1895 1896 1897## **变量说明** 1898 1899 1900### alpha0 [1/2] 1901 1902 1903``` 1904uint8_t LayerAlpha::alpha0 1905``` 1906 1907**描述:** 1908 1909alpha0值,取值范围:[0, 255] 1910 1911 1912### alpha0 [2/2] 1913 1914 1915``` 1916uint8_t ISurface::alpha0 1917``` 1918 1919**描述:** 1920 1921Alpha0值,取值范围:[0,255] 1922 1923 1924### alpha1 [1/2] 1925 1926 1927``` 1928uint8_t LayerAlpha::alpha1 1929``` 1930 1931**描述:** 1932 1933alpha1值,取值范围:[0, 255] 1934 1935 1936### alpha1 [2/2] 1937 1938 1939``` 1940uint8_t ISurface::alpha1 1941``` 1942 1943**描述:** 1944 1945Alpha1值,取值范围:[0,255] 1946 1947 1948### alphaRopType 1949 1950 1951``` 1952RopType GfxOpt::alphaRopType 1953``` 1954 1955**描述:** 1956 1957Alpha的Rop类型 1958 1959 1960### bAlphaExt1555 1961 1962 1963``` 1964bool ISurface::bAlphaExt1555 1965``` 1966 1967**描述:** 1968 1969是否使能1555的Alpha扩展 1970 1971 1972### bAlphaMax255 1973 1974 1975``` 1976bool ISurface::bAlphaMax255 1977``` 1978 1979**描述:** 1980 1981图像alpha最大值为255还是128 1982 1983 1984### baseAddr 1985 1986 1987``` 1988void* YUVDescInfo::baseAddr 1989``` 1990 1991**描述:** 1992 1993内存的初始地址 1994 1995 1996### blend 1997 1998 1999``` 2000VGUBlendType VGUSurface::blend 2001``` 2002 2003**描述:** 2004 2005混合叠加模式 2006 2007 2008### blendType 2009 2010 2011``` 2012BlendType GfxOpt::blendType 2013``` 2014 2015**描述:** 2016 2017混合方式 2018 2019 2020### boundBox 2021 2022 2023``` 2024VGURect VGUPath::boundBox 2025``` 2026 2027**描述:** 2028 2029路径最大边界 2030 2031 2032### bpp 2033 2034 2035``` 2036int32_t LayerInfo::bpp 2037``` 2038 2039**描述:** 2040 2041每像素所占bit数 2042 2043 2044### buffer [1/3] 2045 2046 2047``` 2048VGUBuffer* VGUMaskLayer::buffer 2049``` 2050 2051**描述:** 2052 2053蒙版缓存 2054 2055 2056### buffer [2/3] 2057 2058 2059``` 2060VGUBuffer* VGUSurface::buffer 2061``` 2062 2063**描述:** 2064 2065位图缓存 2066 2067VGUSurface::clipRect 2068 2069 2070### buffer [3/3] 2071 2072 2073``` 2074VGUBuffer* VGUImage::buffer 2075``` 2076 2077**描述:** 2078 2079图像存储缓存 2080 2081 2082### bYCbCrClut 2083 2084 2085``` 2086bool ISurface::bYCbCrClut 2087``` 2088 2089**描述:** 2090 2091CLUT表是否位于 YCbCr 空间 2092 2093 2094### cap 2095 2096 2097``` 2098VGULineCap VGUStrokeAttr::cap 2099``` 2100 2101**描述:** 2102 2103线帽类型 2104 2105 2106### cbcrPhyAddr 2107 2108 2109``` 2110uint64_t ISurface::cbcrPhyAddr 2111``` 2112 2113**描述:** 2114 2115CbCr分量地址 2116 2117 2118### cbcrStride 2119 2120 2121``` 2122int32_t ISurface::cbcrStride 2123``` 2124 2125**描述:** 2126 2127CbCr分量跨度 2128 2129 2130### clipPath 2131 2132 2133``` 2134VGUPath* VGUSurface::clipPath 2135``` 2136 2137**描述:** 2138 2139路径剪切域,如果为空,整个表面直接渲染 2140 2141 2142### clipRect 2143 2144 2145``` 2146VGURect* VGUSurface::clipRect 2147``` 2148 2149**描述:** 2150 2151矩形剪切域,如果为空,整个表面直接渲染 2152 2153 2154### clipType 2155 2156 2157``` 2158VGUClipType VGUSurface::clipType 2159``` 2160 2161**描述:** 2162 2163表面剪切类型 2164 2165 2166### clutPhyAddr 2167 2168 2169``` 2170uint64_t ISurface::clutPhyAddr 2171``` 2172 2173**描述:** 2174 2175Clut表首地址,用作颜色扩展或颜色校正 2176 2177 2178### color [1/5] 2179 2180 2181``` 2182uint32_t ILine::color 2183``` 2184 2185**描述:** 2186 2187线条颜色 2188 2189 2190### color [2/5] 2191 2192 2193``` 2194uint32_t ICircle::color 2195``` 2196 2197**描述:** 2198 2199圆的颜色 2200 2201 2202### color [3/5] 2203 2204 2205``` 2206uint32_t Rectangle::color 2207``` 2208 2209**描述:** 2210 2211矩形颜色 2212 2213 2214### color [4/5] 2215 2216 2217``` 2218uint32_t VGUColorStop::color 2219``` 2220 2221**描述:** 2222 2223偏移位置对应颜色 2224 2225 2226### color [5/5] 2227 2228 2229``` 2230uint32_t VGUSolid::color 2231``` 2232 2233**描述:** 2234 2235颜色值 2236 2237 2238### colorKeyFrom 2239 2240 2241``` 2242ColorKey GfxOpt::colorKeyFrom 2243``` 2244 2245**描述:** 2246 2247色键模式 2248 2249 2250### colorRopType 2251 2252 2253``` 2254RopType GfxOpt::colorRopType 2255``` 2256 2257**描述:** 2258 2259颜色的Rop类型 2260 2261 2262### colorStops 2263 2264 2265``` 2266VGUColorStop* VGUGradient::colorStops 2267``` 2268 2269**描述:** 2270 2271渐变停止颜色数组指针 2272 2273 2274### Commit 2275 2276 2277``` 2278int32_t(* DeviceFuncs::Commit) (uint32_t devId, int32_t *fence) 2279``` 2280 2281**描述:** 2282 2283提交合成送显请求。 2284 2285图形服务通过该接口向接口实现层提交合成送显请求,如果有硬件合成层,接口实现层需要在这时进行合成,并且把最终合成的数据送到硬件进行显示。 2286 2287**参数:** 2288 2289 | 名称 | 描述 | 2290| -------- | -------- | 2291| devId | 输入参数,指示需要操作的设备ID。 | 2292| fences | 输出参数,fence首地址,指向fence数组的首地址。 | 2293 2294**返回:** 2295 2296DISPLAY_SUCCESS 表示执行成功。 2297 2298其他值表示执行失败,具体错误码查看[DispErrCode](#disperrcode)。 2299 2300 2301### conic 2302 2303 2304``` 2305VGUConic VGUGradient::conic 2306``` 2307 2308**描述:** 2309 2310圆锥渐变对象 2311 2312 2313### CreateVirtualDisplay 2314 2315 2316``` 2317int32_t(* DeviceFuncs::CreateVirtualDisplay) (uint32_t width, uint32_t height, int32_t *format, uint32_t *devId) 2318``` 2319 2320**描述:** 2321 2322创建虚拟显示设备。 2323 2324该接口用于创建一个虚拟显示设备。 2325 2326**参数:** 2327 2328 | 名称 | 描述 | 2329| -------- | -------- | 2330| width | 输入参数,指定显示设备的像素宽度。 | 2331| height | 输入参数,指定显示设备的像素高度。 | 2332| format | 输出参数,指定显示设备的像素格式。 详情参考[PixelFormat](#pixelformat),接口实现层可以根据硬件需求,修改format并返回给图形服务。 | 2333| devId | 输出参数,用于接口层返回创建的设备ID。 | 2334 2335**返回:** 2336 2337DISPLAY_SUCCESS 表示执行成功。 2338 2339其他值表示执行失败,具体错误码查看[DispErrCode](#disperrcode)。 2340 2341 2342### cx 2343 2344 2345``` 2346VGUScalar VGUConic::cx 2347``` 2348 2349**描述:** 2350 2351圆弧中心x坐标 2352 2353 2354### cy 2355 2356 2357``` 2358VGUScalar VGUConic::cy 2359``` 2360 2361**描述:** 2362 2363圆弧中心y坐标 2364 2365 2366### data [1/2] 2367 2368 2369``` 2370BufferData LayerBuffer::data 2371``` 2372 2373**描述:** 2374 2375图层buffer数据 2376 2377 2378### data [2/2] 2379 2380 2381``` 2382uint8_t* VGUPath::data 2383``` 2384 2385**描述:** 2386 2387存放路径命令对应坐标数据 2388 2389 2390### DeinitVgu 2391 2392 2393``` 2394VGUResult(* VGUFuncs::DeinitVgu) (void) 2395``` 2396 2397**描述:** 2398 2399去初始化硬件加速。 2400 2401**返回:** 2402 2403VGU_SUCCESS 表示执行成功。 2404 2405其他值表示执行失败,具体错误码查看[VGUResult](#vguresult)。 2406 2407**参见:** 2408 2409[InitVgu](#initvgu) 2410 2411 2412### DestroyVirtualDisplay 2413 2414 2415``` 2416int32_t(* DeviceFuncs::DestroyVirtualDisplay) (uint32_t devId) 2417``` 2418 2419**描述:** 2420 2421销毁虚拟显示设备。 2422 2423该接口用于销毁指定的虚拟显示设备。 2424 2425**参数:** 2426 2427 | 名称 | 描述 | 2428| -------- | -------- | 2429| devId | 输入参数,指示需要操作的设备ID。 | 2430 2431**返回:** 2432 2433DISPLAY_SUCCESS 表示执行成功。 2434 2435其他值表示执行失败,具体错误码查看[DispErrCode](#disperrcode)。 2436 2437 2438### enableRop 2439 2440 2441``` 2442bool GfxOpt::enableRop 2443``` 2444 2445**描述:** 2446 2447Rop功能使能位 2448 2449 2450### enableScale 2451 2452 2453``` 2454bool GfxOpt::enableScale 2455``` 2456 2457**描述:** 2458 2459缩放功能使能位 2460 2461 2462### enAlias 2463 2464 2465``` 2466bool VGUPath::enAlias 2467``` 2468 2469**描述:** 2470 2471抗锯齿开关 2472 2473 2474### enColorFmt 2475 2476 2477``` 2478PixelFormat ISurface::enColorFmt 2479``` 2480 2481**描述:** 2482 2483图像格式 2484 2485 2486### enGlobalAlpha [1/2] 2487 2488 2489``` 2490bool LayerAlpha::enGlobalAlpha 2491``` 2492 2493**描述:** 2494 2495全局alpha使能标志 2496 2497 2498### enGlobalAlpha [2/2] 2499 2500 2501``` 2502bool GfxOpt::enGlobalAlpha 2503``` 2504 2505**描述:** 2506 2507全局alpha使能位 2508 2509 2510### enPixelAlpha [1/2] 2511 2512 2513``` 2514bool LayerAlpha::enPixelAlpha 2515``` 2516 2517**描述:** 2518 2519像素alpha使能标志 2520 2521 2522### enPixelAlpha [2/2] 2523 2524 2525``` 2526bool GfxOpt::enPixelAlpha 2527``` 2528 2529**描述:** 2530 2531像素alpha使能位 2532 2533 2534### expectedSize 2535 2536 2537``` 2538uint32_t AllocInfo::expectedSize 2539``` 2540 2541**描述:** 2542 2543申请内存大小 2544 2545 2546### fd 2547 2548 2549``` 2550int32_t ExtDataHandle::fd 2551``` 2552 2553**描述:** 2554 2555句柄 fd, -1代表不支持 2556 2557 2558### fenceId 2559 2560 2561``` 2562int32_t LayerBuffer::fenceId 2563``` 2564 2565**描述:** 2566 2567buffer 的fence号r 2568 2569 2570### filter 2571 2572 2573``` 2574VGUFilter VGUSurface::filter 2575``` 2576 2577**描述:** 2578 2579图像滤波类型 2580 2581 2582### format [1/2] 2583 2584 2585``` 2586PixelFormat AllocInfo::format 2587``` 2588 2589**描述:** 2590 2591申请内存格式 2592 2593 2594### format [2/2] 2595 2596 2597``` 2598PixelFormat VerifyAllocInfo::format 2599``` 2600 2601**描述:** 2602 2603分配内存的像素格式 2604 2605 2606### formatCount 2607 2608 2609``` 2610uint32_t HDRCapability::formatCount 2611``` 2612 2613**描述:** 2614 2615支持的HDR格式的数量 2616 2617 2618### formats 2619 2620 2621``` 2622HDRFormat* HDRCapability::formats 2623``` 2624 2625**描述:** 2626 2627支持的HDR格式的数组首地址 2628 2629 2630### freshRate 2631 2632 2633``` 2634uint32_t DisplayModeInfo::freshRate 2635``` 2636 2637**描述:** 2638 2639刷新速率 2640 2641 2642### gAlpha 2643 2644 2645``` 2646uint8_t LayerAlpha::gAlpha 2647``` 2648 2649**描述:** 2650 2651全局alpha值,取值范围:[0, 255] 2652 2653 2654### GetDisplayBacklight 2655 2656 2657``` 2658int32_t(* DeviceFuncs::GetDisplayBacklight) (uint32_t devId, uint32_t *level) 2659``` 2660 2661**描述:** 2662 2663获取显示设备当前的背光值。 2664 2665图形服务可以通过该接口获取设置显示设备的背光值。 2666 2667**参数:** 2668 2669 | 名称 | 描述 | 2670| -------- | -------- | 2671| devId | 输入参数,指示需要操作的设备ID。 | 2672| level | 输出参数,保存对应设备的背光值,由接口实现层进行写入。 | 2673 2674**返回:** 2675 2676DISPLAY_SUCCESS 表示执行成功。 2677 2678其他值表示执行失败,具体错误码查看[DispErrCode](#disperrcode)。 2679 2680 2681### GetDisplayCapability 2682 2683 2684``` 2685int32_t(* DeviceFuncs::GetDisplayCapability) (uint32_t devId, DisplayCapability *info) 2686``` 2687 2688**描述:** 2689 2690获取显示设备能力集。 2691 2692图形服务可以通过该接口获取显示设备具备哪些显示能力。 2693 2694**参数:** 2695 2696 | 名称 | 描述 | 2697| -------- | -------- | 2698| devId | 输入参数,指示需要操作的设备ID。 | 2699| info | 输出参数,设备支持的能力级信息,详情参考[DisplayCapability](_display_capability.md)。 | 2700 2701**返回:** 2702 2703DISPLAY_SUCCESS 表示执行成功。 2704 2705其他值表示执行失败,具体错误码查看[DispErrCode](#disperrcode)。 2706 2707 2708### GetDisplayColorGamut 2709 2710 2711``` 2712int32_t(* DeviceFuncs::GetDisplayColorGamut) (uint32_t devId, ColorGamut *gamut) 2713``` 2714 2715**描述:** 2716 2717获取显示设备当前的色域模式。 2718 2719**参数:** 2720 2721 | 名称 | 描述 | 2722| -------- | -------- | 2723| devId | 输入参数,指示需要操作的设备ID。 | 2724| gamut | 输出参数,保存对应设备的色域模式,由接口实现层进行写入。 | 2725 2726**返回:** 2727 2728DISPLAY_SUCCESS 表示执行成功。 2729 2730其他值表示执行失败,具体错误码查看[DispErrCode](#disperrcode)。 2731 2732 2733### GetDisplayCompChange 2734 2735 2736``` 2737int32_t(* DeviceFuncs::GetDisplayCompChange) (uint32_t devId, uint32_t *num, uint32_t *Layers, int32_t *type) 2738``` 2739 2740**描述:** 2741 2742获取显示设备合成类型有变化的layer。 2743 2744在合成准备阶段,显示设备会根据设备的合成能力修改图层的合成类型,该接口会返回哪些图层合成类型发生了变化。 2745 2746**参数:** 2747 2748 | 名称 | 描述 | 2749| -------- | -------- | 2750| devId | 输入参数,指示需要操作的设备ID。 | 2751| num | 输出参数,表示合成类型发生了变化的图层数量。 | 2752| Layers | 输出参数,指向图层数组首地址。 | 2753| type | 输出参数,指向合成类型数组首地址。 | 2754 2755**返回:** 2756 2757DISPLAY_SUCCESS 表示执行成功。 2758 2759其他值表示执行失败,具体错误码查看[DispErrCode](#disperrcode)。 2760 2761 2762### GetDisplayGamutMap 2763 2764 2765``` 2766int32_t(* DeviceFuncs::GetDisplayGamutMap) (uint32_t devId, GamutMap *gamutMap) 2767``` 2768 2769**描述:** 2770 2771获取显示设备当前的色域映射模式。 2772 2773**参数:** 2774 2775 | 名称 | 描述 | 2776| -------- | -------- | 2777| devId | 输入参数,指示需要操作的设备ID。 | 2778| gamutMap | 输出参数,保存对应设备的色域映射模式,由接口实现层进行写入。 | 2779 2780**返回:** 2781 2782DISPLAY_SUCCESS 表示执行成功。 2783 2784其他值表示执行失败,具体错误码查看[DispErrCode](#disperrcode)。 2785 2786 2787### GetDisplayMode 2788 2789 2790``` 2791int32_t(* DeviceFuncs::GetDisplayMode) (uint32_t devId, uint32_t *modeId) 2792``` 2793 2794**描述:** 2795 2796获取显示设备当前的显示模式。 2797 2798图形服务可以通过该接口获取显示设备当前的显示模式。 2799 2800**参数:** 2801 2802 | 名称 | 描述 | 2803| -------- | -------- | 2804| devId | 输入参数,指示需要操作的设备ID。 | 2805| modeId | 输出参数,存放当前设备的显示模式ID, 由接口实现层进行数据的写入。 | 2806 2807**返回:** 2808 2809DISPLAY_SUCCESS 表示执行成功。 2810 2811其他值表示执行失败,具体错误码查看[DispErrCode](#disperrcode)。 2812 2813 2814### GetDisplayPowerStatus 2815 2816 2817``` 2818int32_t(* DeviceFuncs::GetDisplayPowerStatus) (uint32_t devId, DispPowerStatus *status) 2819``` 2820 2821**描述:** 2822 2823获取显示设备当前的电源状态。 2824 2825图形服务可以通过该接口获设置显示设备的电源状态。 2826 2827**参数:** 2828 2829 | 名称 | 描述 | 2830| -------- | -------- | 2831| devId | 输入参数,指示需要操作的设备ID。 | 2832| status | 输出参数,保存对应设备的电源状态,由接口实现层进行状态的写入。 | 2833 2834**返回:** 2835 2836DISPLAY_SUCCESS 表示执行成功。 2837 2838其他值表示执行失败,具体错误码查看[DispErrCode](#disperrcode)。 2839 2840 2841### GetDisplayProperty 2842 2843 2844``` 2845int32_t(* DeviceFuncs::GetDisplayProperty) (uint32_t devId, uint32_t id, uint64_t *value) 2846``` 2847 2848**描述:** 2849 2850获取显示设备属性值。 2851 2852图形服务可以通过该接口获取显示设备具体的属性值。 2853 2854**参数:** 2855 2856 | 名称 | 描述 | 2857| -------- | -------- | 2858| devId | 输入参数,指示需要操作的设备ID。 | 2859| id | 输入参数,由接口GetDisplayCapability返回属性ID。 | 2860| level | 输出参数,属性ID对应的属性值,由接口实现层写入。 | 2861 2862**返回:** 2863 2864DISPLAY_SUCCESS 表示执行成功。 2865 2866其他值表示执行失败,具体错误码查看[DispErrCode](#disperrcode)。 2867 2868 2869### GetDisplayReleaseFence 2870 2871 2872``` 2873int32_t(* DeviceFuncs::GetDisplayReleaseFence) (uint32_t devId, uint32_t *num, uint32_t *layers, int32_t *fences) 2874``` 2875 2876**描述:** 2877 2878获取显示图层fence。 2879 2880图形服务在调用接口Commit后,需要通过该接口获取图层的fence信息。 2881 2882**参数:** 2883 2884 | 名称 | 描述 | 2885| -------- | -------- | 2886| devId | 输入参数,指示需要操作的设备ID。 | 2887| num | 输出参数,图层个数。 | 2888| layers | 输出参数,图层首地址,指向图层数组的首地址。 | 2889| fences | 输出参数,fence首地址,指向fence数组的首地址。 | 2890 2891**返回:** 2892 2893DISPLAY_SUCCESS 表示执行成功。 2894 2895其他值表示执行失败,具体错误码查看[DispErrCode](#disperrcode)。 2896 2897 2898### GetDisplaySupportedColorGamuts 2899 2900 2901``` 2902int32_t(* DeviceFuncs::GetDisplaySupportedColorGamuts) (uint32_t devId, uint32_t *num, ColorGamut *gamuts) 2903``` 2904 2905**描述:** 2906 2907获取显示设备支持的色域信息。 2908 2909**参数:** 2910 2911 | 名称 | 描述 | 2912| -------- | -------- | 2913| devId | 输入参数,指示需要操作的设备ID。 | 2914| num | 输出参数,设备支持的色域数组个数。 | 2915| gamuts | 输出参数,色域首地址,指向色域数组首地址。 | 2916 2917**返回:** 2918 2919DISPLAY_SUCCESS 表示执行成功。 2920 2921其他值表示执行失败,具体错误码查看[DispErrCode](#disperrcode)。 2922 2923 2924### GetDisplaySupportedModes 2925 2926 2927``` 2928int32_t(* DeviceFuncs::GetDisplaySupportedModes) (uint32_t devId, uint32_t *num, DisplayModeInfo *modes) 2929``` 2930 2931**描述:** 2932 2933获取显示设备支持的显示模式信息。 2934 2935图形服务可以通过该接口获取到显示设备支持哪些显示模式。 2936 2937**参数:** 2938 2939 | 名称 | 描述 | 2940| -------- | -------- | 2941| devId | 输入参数,指示需要操作的设备ID。 | 2942| num | 输出参数,设备支持的模式数量。 | 2943| modes | 输出参数,设备支持的所有模式信息,包括所有能支持的分辨率和刷新率,每一个模式实现层都有一个Id与之对应,在获取当前模式 和设置当前模式时都会使用到,详情参考 [DisplayModeInfo](_display_mode_info.md)。 | 2944 2945**返回:** 2946 2947DISPLAY_SUCCESS 表示执行成功。 2948 2949其他值表示执行失败,具体错误码查看[DispErrCode](#disperrcode)。 2950 2951 2952### GetHDRCapabilityInfos 2953 2954 2955``` 2956int32_t(* DeviceFuncs::GetHDRCapabilityInfos) (uint32_t devId, HDRCapability *info) 2957``` 2958 2959**描述:** 2960 2961获取显示设备支持的HDR属性信息。 2962 2963**参数:** 2964 2965 | 名称 | 描述 | 2966| -------- | -------- | 2967| devId | 输入参数,指示需要操作的设备ID。 | 2968| info | 输出参数,保存对应设备的HDR属性信息,由接口实现层进行写入。 | 2969 2970**返回:** 2971 2972DISPLAY_SUCCESS 表示执行成功。 2973 2974其他值表示执行失败,具体错误码查看[DispErrCode](#disperrcode)。 2975 2976 2977### GetSupportedMetadataKey 2978 2979 2980``` 2981int32_t(* DeviceFuncs::GetSupportedMetadataKey) (uint32_t devId, uint32_t *num, HDRMetadataKey *keys) 2982``` 2983 2984**描述:** 2985 2986获取显示设备支持的 HDRMetadataKey。 2987 2988**参数:** 2989 2990 | 名称 | 描述 | 2991| -------- | -------- | 2992| devId | 输入参数,指示需要操作的设备ID。 | 2993| num | 输出参数,设备支持的HDRMetadataKey数组个数。 | 2994| keys | 输出参数,HDRMetadataKey首地址, 指向HDRMetadataKey数组首地址。 | 2995 2996**返回:** 2997 2998DISPLAY_SUCCESS 表示执行成功。 2999 3000其他值表示执行失败,具体错误码查看[DispErrCode](#disperrcode)。 3001 3002 3003### GetWriteBackFrame 3004 3005 3006``` 3007int32_t(* DeviceFuncs::GetWriteBackFrame) (uint32_t devId, BufferHandle *buffer, int32_t *fence) 3008``` 3009 3010**描述:** 3011 3012获取显示设备的回写帧。 3013 3014该接口用来获取devId指定的回写点数据,接口实现层将显示设备回写点的数据写入到设置的缓存中。 3015 3016**参数:** 3017 3018 | 名称 | 描述 | 3019| -------- | -------- | 3020| devId | 输入参数,指示需要操作的设备ID。 | 3021| buffer | 输出参数,回写点数据缓存。 | 3022| fence | 输出参数,同步栅栏,图形服务在调用该接口时,需要将Buffer的release fence 传入,标记该缓存是否可以被写入,接口实现层在接口返回前需要将buffer的acquirce fence 写入回传给图形服务,用来标记回写数据是否已经写入缓存。 | 3023 3024**返回:** 3025 3026DISPLAY_SUCCESS 表示执行成功。 3027 3028其他值表示执行失败,具体错误码查看[DispErrCode](#disperrcode)。 3029 3030 3031### globalAlpha 3032 3033 3034``` 3035uint32_t GfxOpt::globalAlpha 3036``` 3037 3038**描述:** 3039 3040全局alpha的值 3041 3042 3043### gradient 3044 3045 3046``` 3047VGUGradient* VGUPaintStyle::gradient 3048``` 3049 3050**描述:** 3051 3052渐变对象 3053 3054 3055### h [1/2] 3056 3057 3058``` 3059int32_t IRect::h 3060``` 3061 3062**描述:** 3063 3064矩形框高度 3065 3066 3067### h [2/2] 3068 3069 3070``` 3071VGUScalar VGURect::h 3072``` 3073 3074**描述:** 3075 3076矩形高度 3077 3078 3079### hdl 3080 3081 3082``` 3083BufferHandle* LayerBuffer::hdl 3084``` 3085 3086**描述:** 3087 3088图层buffer句柄 3089 3090 3091### height [1/8] 3092 3093 3094``` 3095uint32_t DisplayInfo::height 3096``` 3097 3098**描述:** 3099 3100显示屏高度 3101 3102 3103### height [2/8] 3104 3105 3106``` 3107int32_t LayerInfo::height 3108``` 3109 3110**描述:** 3111 3112图层高度 3113 3114 3115### height [3/8] 3116 3117 3118``` 3119int32_t LayerBuffer::height 3120``` 3121 3122**描述:** 3123 3124buffer高度 3125 3126 3127### height [4/8] 3128 3129 3130``` 3131int32_t ISurface::height 3132``` 3133 3134**描述:** 3135 3136图像高度 3137 3138 3139### height [5/8] 3140 3141 3142``` 3143int32_t DisplayModeInfo::height 3144``` 3145 3146**描述:** 3147 3148像素高度 3149 3150 3151### height [6/8] 3152 3153 3154``` 3155uint32_t AllocInfo::height 3156``` 3157 3158**描述:** 3159 3160申请内存高度 3161 3162 3163### height [7/8] 3164 3165 3166``` 3167uint32_t VerifyAllocInfo::height 3168``` 3169 3170**描述:** 3171 3172分配内存的高度 3173 3174 3175### height [8/8] 3176 3177 3178``` 3179uint32_t VGUBuffer::height 3180``` 3181 3182**描述:** 3183 3184位图高度 3185 3186 3187### id 3188 3189 3190``` 3191int32_t DisplayModeInfo::id 3192``` 3193 3194**描述:** 3195 3196模式ID 3197 3198 3199### image 3200 3201 3202``` 3203VGUImage* VGUPattern::image 3204``` 3205 3206**描述:** 3207 3208图像对象 3209 3210 3211### InitVgu 3212 3213 3214``` 3215VGUResult(* VGUFuncs::InitVgu) (void) 3216``` 3217 3218**描述:** 3219 3220初始化硬件加速。 3221 3222**返回:** 3223 3224VGU_SUCCESS 表示执行成功。 3225 3226其他值表示执行失败,具体错误码查看[VGUResult](#vguresult)。 3227 3228**参见:** 3229 3230[DeinitVgu](#deinitvgu) 3231 3232 3233### InvokeDisplayCmd 3234 3235 3236``` 3237int32_t(* DeviceFuncs::InvokeDisplayCmd) (uint32_t devId,...) 3238``` 3239 3240**描述:** 3241 3242调用显示设备命令。 3243 3244该接口用于图形服务和接口实现层之间的接口扩展,如果由临时接口新增可以通过该接口进行扩展,不用增加新的接口定义。 3245 3246**参数:** 3247 3248 | 名称 | 描述 | 3249| -------- | -------- | 3250| devId | 输入参数,指示需要操作的设备ID。 | 3251 3252**返回:** 3253 3254DISPLAY_SUCCESS 表示执行成功。 3255 3256其他值表示执行失败,具体错误码查看[DispErrCode](#disperrcode)。 3257 3258 3259### join 3260 3261 3262``` 3263VGUJointType VGUStrokeAttr::join 3264``` 3265 3266**描述:** 3267 3268联结类型 3269 3270 3271### key 3272 3273 3274``` 3275HDRMetadataKey HDRMetaData::key 3276``` 3277 3278**描述:** 3279 3280HDR元数据关键字 3281 3282 3283### linear 3284 3285 3286``` 3287VGULinear VGUGradient::linear 3288``` 3289 3290**描述:** 3291 3292线性渐变对象 3293 3294 3295### m 3296 3297 3298``` 3299float VGUMatrix3::m[3][3] 3300``` 3301 3302**描述:** 3303 33043x3变换矩阵 3305 3306 3307### mask 3308 3309 3310``` 3311VGUMaskLayer* VGUSurface::mask 3312``` 3313 3314**描述:** 3315 3316蒙版图层,可以为空 3317 3318 3319### matrix [1/2] 3320 3321 3322``` 3323VGUMatrix3* VGUImage::matrix 3324``` 3325 3326**描述:** 3327 3328图像矩阵变换,该参数为空,则内部使用单位变换矩阵 3329 3330 3331### matrix [2/2] 3332 3333 3334``` 3335VGUMatrix3* VGUGradient::matrix 3336``` 3337 3338**描述:** 3339 3340针对渐变对象的变换矩阵 3341 3342 3343### maxAverageLum 3344 3345 3346``` 3347float HDRCapability::maxAverageLum 3348``` 3349 3350**描述:** 3351 3352最大的平均光亮度luminance值 3353 3354 3355### maxLum 3356 3357 3358``` 3359float HDRCapability::maxLum 3360``` 3361 3362**描述:** 3363 3364最大的光亮度luminance值 3365 3366 3367### minLum 3368 3369 3370``` 3371float HDRCapability::minLum 3372``` 3373 3374**描述:** 3375 3376最小的光亮度luminance值 3377 3378 3379### mirrorType 3380 3381 3382``` 3383MirrorType GfxOpt::mirrorType 3384``` 3385 3386**描述:** 3387 3388镜像类型 3389 3390 3391### miterLimit 3392 3393 3394``` 3395float VGUStrokeAttr::miterLimit 3396``` 3397 3398**描述:** 3399 3400最大斜切长度 3401 3402 3403### name [1/2] 3404 3405 3406``` 3407char PropertyObject::name[PROPERTY_NAME_LEN] 3408``` 3409 3410**描述:** 3411 3412属性名称 3413 3414 3415### name [2/2] 3416 3417 3418``` 3419char DisplayCapability::name[PROPERTY_NAME_LEN] 3420``` 3421 3422**描述:** 3423 3424显示设备名称 3425 3426 3427### numSegments 3428 3429 3430``` 3431int32_t VGUPath::numSegments 3432``` 3433 3434**描述:** 3435 3436路径命令总数 3437 3438 3439### opacity [1/3] 3440 3441 3442``` 3443uint8_t VGUImage::opacity 3444``` 3445 3446**描述:** 3447 3448透明度,范围0~255 3449 3450 3451### opacity [2/3] 3452 3453 3454``` 3455uint8_t VGUGradient::opacity 3456``` 3457 3458**描述:** 3459 3460透明度,范围0~255 3461 3462 3463### opacity [3/3] 3464 3465 3466``` 3467uint8_t VGUSolid::opacity 3468``` 3469 3470**描述:** 3471 3472透明度,取值范围 0 ~ 255。 3473 3474 3475### pattern 3476 3477 3478``` 3479VGUPattern* VGUPaintStyle::pattern 3480``` 3481 3482**描述:** 3483 3484图片模式对象 3485 3486 3487### phyAddr [1/3] 3488 3489 3490``` 3491uint64_t BufferData::phyAddr 3492``` 3493 3494**描述:** 3495 3496物理内存地址 3497 3498 3499### phyAddr [2/3] 3500 3501 3502``` 3503uint64_t ISurface::phyAddr 3504``` 3505 3506**描述:** 3507 3508图像首地址 3509 3510 3511### phyAddr [3/3] 3512 3513 3514``` 3515uint64_t VGUBuffer::phyAddr 3516``` 3517 3518**描述:** 3519 3520位图缓存的物理地址 3521 3522 3523### phyHeight 3524 3525 3526``` 3527uint32_t DisplayCapability::phyHeight 3528``` 3529 3530**描述:** 3531 3532物理高度 3533 3534 3535### phyWidth 3536 3537 3538``` 3539uint32_t DisplayCapability::phyWidth 3540``` 3541 3542**描述:** 3543 3544物理宽度 3545 3546 3547### pitch 3548 3549 3550``` 3551int32_t LayerBuffer::pitch 3552``` 3553 3554**描述:** 3555 3556一行数据所占字节数 3557 3558 3559### pixelFormat 3560 3561 3562``` 3563VGUPixelFormat VGUBuffer::pixelFormat 3564``` 3565 3566**描述:** 3567 3568像素格式 3569 3570 3571### pixFormat [1/2] 3572 3573 3574``` 3575PixelFormat LayerInfo::pixFormat 3576``` 3577 3578**描述:** 3579 3580图层像素格式 3581 3582 3583### pixFormat [2/2] 3584 3585 3586``` 3587PixelFormat LayerBuffer::pixFormat 3588``` 3589 3590**描述:** 3591 3592buffer像素格式r 3593 3594 3595### PrepareDisplayLayers 3596 3597 3598``` 3599int32_t(* DeviceFuncs::PrepareDisplayLayers) (uint32_t devId, bool *needFlushFb) 3600``` 3601 3602**描述:** 3603 3604显示设备合成前准备。 3605 3606图形服务在合成前需要通过该接口通知显示设备进行合成前的准备工作。 3607 3608**参数:** 3609 3610 | 名称 | 描述 | 3611| -------- | -------- | 3612| devId | 输入参数,指示需要操作的设备ID。 | 3613| needFlushFb | 输出参数,接口实现层通过该参数指示图形服务在commit前是否需要通过[SetDisplayClientBuffer](#setdisplayclientbuffer)重新设置显示帧存。 true表示需要设置显示帧存,false表示不需要。 | 3614 3615**返回:** 3616 3617DISPLAY_SUCCESS 表示执行成功。 3618 3619其他值表示执行失败,具体错误码查看[DispErrCode](#disperrcode)。 3620 3621 3622### propertyCount 3623 3624 3625``` 3626uint32_t DisplayCapability::propertyCount 3627``` 3628 3629**描述:** 3630 3631属性数组大小 3632 3633 3634### propId 3635 3636 3637``` 3638uint32_t PropertyObject::propId 3639``` 3640 3641**描述:** 3642 3643属性ID 3644 3645 3646### props 3647 3648 3649``` 3650PropertyObject* DisplayCapability::props 3651``` 3652 3653**描述:** 3654 3655属性数组 3656 3657 3658### QueryCapability 3659 3660 3661``` 3662int32_t(* VGUFuncs::QueryCapability) (uint32_t cap) 3663``` 3664 3665**描述:** 3666 3667查询硬件能力集。 3668 3669**参数:** 3670 3671 | 名称 | 描述 | 3672| -------- | -------- | 3673| cap | 输入参数,待查询能力。该参数类型定义参考 [VGUCapability](#vgucapability)。 | 3674 3675**返回:** 3676 3677VGU_SUCCESS 表示执行成功。 3678 3679其他值表示执行失败,具体错误码查看[VGUResult](#vguresult)。 3680 3681 3682### r 3683 3684 3685``` 3686int32_t ICircle::r 3687``` 3688 3689**描述:** 3690 3691圆的半径 3692 3693 3694### r0 3695 3696 3697``` 3698VGUScalar VGURadial::r0 3699``` 3700 3701**描述:** 3702 3703内圈圆半径 3704 3705 3706### r1 3707 3708 3709``` 3710VGUScalar VGURadial::r1 3711``` 3712 3713**描述:** 3714 3715外圈圆半径 3716 3717 3718### radial 3719 3720 3721``` 3722VGURadial VGUGradient::radial 3723``` 3724 3725**描述:** 3726 3727辐射渐变对象 3728 3729 3730### rect [1/3] 3731 3732 3733``` 3734IRect Rectangle::rect 3735``` 3736 3737**描述:** 3738 3739矩形区域 3740 3741 3742### rect [2/3] 3743 3744 3745``` 3746VGURect* VGUMaskLayer::rect 3747``` 3748 3749**描述:** 3750 3751蒙版矩形 3752 3753 3754### rect [3/3] 3755 3756 3757``` 3758VGURect* VGUImage::rect 3759``` 3760 3761**描述:** 3762 3763图像截取矩形,该参数为空,则截取整个图像 3764 3765 3766### RegDisplayRefreshCallback 3767 3768 3769``` 3770int32_t(* DeviceFuncs::RegDisplayRefreshCallback) (uint32_t devId, RefreshCallback callback, void *data) 3771``` 3772 3773**描述:** 3774 3775刷新请求回调。 3776 3777注册刷新请求事件回调,当实现层有刷新需求时,实现层通过回调注册的接口通知图形服务。 3778 3779**参数:** 3780 3781 | 名称 | 描述 | 3782| -------- | -------- | 3783| devId | 输入参数,指示需要操作的设备ID。 | 3784| callback | 输入参数,刷新请求事件回调实例,当有接口实现层有刷新请求时,需要通过该实例通知图形服务。 | 3785| data | 输出参数,图形服务携带的私有数据,在事件回调接口中需要返回给图形服务。 | 3786 3787**返回:** 3788 3789DISPLAY_SUCCESS 表示执行成功。 3790 3791其他值表示执行失败,具体错误码查看[DispErrCode](#disperrcode)。 3792 3793 3794### RegDisplayVBlankCallback 3795 3796 3797``` 3798int32_t(* DeviceFuncs::RegDisplayVBlankCallback) (uint32_t devId, VBlankCallback callback, void *data) 3799``` 3800 3801**描述:** 3802 3803注册VBlank事件回调。 3804 3805注册VBlank事件回调,当有VBlank事件发生时接口实现层需要回调注册的接口。 3806 3807**参数:** 3808 3809 | 名称 | 描述 | 3810| -------- | -------- | 3811| devId | 输入参数,指示需要操作的设备ID。 | 3812| callback | 输入参数,VBlank事件回调实例,当有VBlank事件发生时并且DisplayVsync处于Enable状态,接口实现层需要通过该实例通知图形服务。 | 3813| data | 输出参数,图形服务携带的私有数据,在事件回调接口中需要返回给图形服务。 | 3814 3815**返回:** 3816 3817DISPLAY_SUCCESS 表示执行成功。 3818 3819其他值表示执行失败,具体错误码查看[DispErrCode](#disperrcode)。 3820 3821 3822### RegHotPlugCallback 3823 3824 3825``` 3826int32_t(* DeviceFuncs::RegHotPlugCallback) (HotPlugCallback callback, void *data) 3827``` 3828 3829**描述:** 3830 3831注册热插拔事件回调。 3832 3833注册热插拔事件回调,当有热插拔事件发生时接口实现层需要回调注册的接口。 3834 3835**参数:** 3836 3837 | 名称 | 描述 | 3838| -------- | -------- | 3839| callback | 输入参数,热插拔事件回调实例,当有热插拔事件发生时,接口实现层需要通过该实例通知图形服务。 | 3840| data | 输出参数,图形服务携带的私有数据,在事件回调接口中需要返回给图形服务。 | 3841 3842**返回:** 3843 3844DISPLAY_SUCCESS 表示执行成功。 3845 3846其他值表示执行失败,具体错误码查看[DispErrCode](#disperrcode)。 3847 3848 3849### RenderBlit 3850 3851 3852``` 3853VGUResult(* VGUFuncs::RenderBlit) (VGUSurface *target, const VGUImage *src, uint32_t color) 3854``` 3855 3856**描述:** 3857 3858对图像进行搬移操作。 3859 3860搬移过程中同时进行颜色空间转换,矩阵变换操作。 3861 3862**参数:** 3863 3864 | 名称 | 描述 | 3865| -------- | -------- | 3866| target | 输入参数,渲染目标表面。 | 3867| src | 输入参数,待叠加源图像。 | 3868| color | 输入参数,参与混合的颜色值。如果颜色值为0,则不参与混合操作。 | 3869 3870**返回:** 3871 3872VGU_SUCCESS 表示执行成功。 3873 3874其他值表示执行失败,具体错误码查看[VGUResult](#vguresult)。 3875 3876 3877### RenderBlitN 3878 3879 3880``` 3881VGUResult(* VGUFuncs::RenderBlitN) (VGUSurface *target, const VGUImage *src, uint16_t count, uint32_t color) 3882``` 3883 3884**描述:** 3885 3886对多个源图像进行叠加操作。 3887 3888搬移过程中同时进行颜色空间转换,矩阵变换操作。该接口支持多个源图形同时叠加到目标表面, 对于硬件支持源图像数目可以通过[QueryCapability](#querycapability)接口查询**。** 3889 3890**参数**: 3891 3892 3893 | 名称 | 描述 | 3894| -------- | -------- | 3895| target | 输入参数,渲染目标表面。 | 3896| src | 输入参数,待叠加源图像数组。 | 3897| count | 输入参数,待叠加源图像个数。 | 3898| color | 输入参数,参与混合的颜色值。如果颜色值为0,则不参与混合操作。 | 3899 3900 3901**返回**: 3902 3903 3904VGU_SUCCESS 表示执行成功。 3905 3906 3907其他值表示执行失败,具体错误码查看[VGUResult](#vguresult)。 3908 3909 3910### RenderBlur 3911 3912 3913``` 3914VGUResult(* VGUFuncs::RenderBlur) (VGUSurface *target, uint16_t blur) 3915``` 3916 3917**描述:** 3918 3919对目标表面进行模糊处理。 3920 3921**参数:** 3922 3923 | 名称 | 描述 | 3924| -------- | -------- | 3925| target | 输入参数,渲染目标表面。 | 3926| blur | 输入参数,模糊半径。 | 3927 3928**返回:** 3929 3930VGU_SUCCESS 表示执行成功。 3931 3932其他值表示执行失败,具体错误码查看[VGUResult](#vguresult)。 3933 3934 3935### RenderCancel 3936 3937 3938``` 3939VGUResult(* VGUFuncs::RenderCancel) () 3940``` 3941 3942**描述:** 3943 3944取消硬件加速渲染。 3945 3946**返回:** 3947 3948VGU_SUCCESS 表示执行成功。 3949 3950其他值表示执行失败,具体错误码查看[VGUResult](#vguresult)。 3951 3952 3953### RenderClearRect 3954 3955 3956``` 3957VGUResult(* VGUFuncs::RenderClearRect) (VGUSurface *target, const VGURect *rect, uint32_t color, uint8_t opacity) 3958``` 3959 3960**描述:** 3961 3962对指定矩形进行颜色清除操作。 3963 3964**参数:** 3965 3966 | 名称 | 描述 | 3967| -------- | -------- | 3968| target | 输入参数,渲染目标表面。 | 3969| rect | 输入参数,待填充矩形大小,如果该参数为空,则整个表面清除。 | 3970| color | 输入参数,填充颜色。 | 3971| opacity | 输入参数,填充透明度。 | 3972 3973**返回:** 3974 3975VGU_SUCCESS 表示执行成功。 3976 3977其他值表示执行失败,具体错误码查看[VGUResult](#vguresult)。 3978 3979 3980### RenderFill 3981 3982 3983``` 3984VGUResult(* VGUFuncs::RenderFill) (VGUSurface *target, const VGUPath *path, const VGUMatrix3 *matrix, const VGUFillAttr *attr, const VGUPaintStyle *style) 3985``` 3986 3987**描述:** 3988 3989使用指定的渲染对象来填充路径。 3990 3991**参数:** 3992 3993 | 名称 | 描述 | 3994| -------- | -------- | 3995| target | 输入参数,渲染目标表面。 | 3996| path | 输入参数,路径对象。 | 3997| matrix | 输入参数,变换矩阵对象。 如果该参数为空,默认为单位矩阵。 | 3998| attr | 输入参数,填充属性。 | 3999| style | 输入参数,绘制对象。 | 4000 4001**返回:** 4002 4003VGU_SUCCESS 表示执行成功。 4004 4005其他值表示执行失败,具体错误码查看[VGUResult](#vguresult)。 4006 4007 4008### RenderStroke 4009 4010 4011``` 4012VGUResult(* VGUFuncs::RenderStroke) (VGUSurface *target, const VGUPath *path, const VGUMatrix3 *matrix, const VGUStrokeAttr *attr, const VGUPaintStyle *style) 4013``` 4014 4015**描述:** 4016 4017使用指定的渲染对象来描边路径。 4018 4019**参数:** 4020 4021 | 名称 | 描述 | 4022| -------- | -------- | 4023| target | 输入参数,渲染目标表面。 | 4024| path | 输入参数,路径对象。 | 4025| matrix | 输入参数,变换矩阵对象。 如果该参数为空,默认为单位矩阵。 | 4026| attr | 输入参数,描边属性。 | 4027| style | 输入参数,绘制对象。 | 4028 4029**返回:** 4030 4031VGU_SUCCESS 表示执行成功。 4032 4033其他值表示执行失败,具体错误码查看[VGUResult](#vguresult)。 4034 4035 4036### RenderSync 4037 4038 4039``` 4040VGUResult(* VGUFuncs::RenderSync) (int32_t timeOut) 4041``` 4042 4043**描述:** 4044 4045同步硬件加速模块绘制或搬移操作。 4046 4047该函数将阻塞等待硬件绘制完成后继续运行。 4048 4049**参数:** 4050 4051 | 名称 | 描述 | 4052| -------- | -------- | 4053| timeOut | 输入参数,该参数表示硬件加速同步等待超时时间。 值为**0**表示没有等待时间。 | 4054 4055**返回:** 4056 4057VGU_SUCCESS 表示执行成功。 4058 4059其他值表示执行失败,具体错误码查看[VGUResult](#vguresult)。 4060 4061 4062### reserve 4063 4064 4065``` 4066int32_t ExtDataHandle::reserve[0] 4067``` 4068 4069**描述:** 4070 4071reserve数组 4072 4073 4074### reserveInts 4075 4076 4077``` 4078uint32_t ExtDataHandle::reserveInts 4079``` 4080 4081**描述:** 4082 4083reserve数组的个数 4084 4085 4086### rotAngle 4087 4088 4089``` 4090int32_t DisplayInfo::rotAngle 4091``` 4092 4093**描述:** 4094 4095显示屏旋转角度 4096 4097 4098### rotateType 4099 4100 4101``` 4102TransformType GfxOpt::rotateType 4103``` 4104 4105**描述:** 4106 4107旋转类型 4108 4109 4110### rule 4111 4112 4113``` 4114VGUFillRule VGUFillAttr::rule 4115``` 4116 4117**描述:** 4118 4119填充规格 4120 4121 4122### segment 4123 4124 4125``` 4126uint8_t* VGUPath::segment 4127``` 4128 4129**描述:** 4130 4131存放路径命令数据 4132 4133 4134### SetDisplayBacklight 4135 4136 4137``` 4138int32_t(* DeviceFuncs::SetDisplayBacklight) (uint32_t devId, uint32_t level) 4139``` 4140 4141**描述:** 4142 4143设置显示设备当前的背光值。 4144 4145图形服务可以通过该接口获设置显示设备的背光值。 4146 4147**参数:** 4148 4149 | 名称 | 描述 | 4150| -------- | -------- | 4151| devId | 输入参数,指示需要操作的设备ID。 | 4152| level | 输入参数,表示需要设置的背光值。 | 4153 4154**返回:** 4155 4156DISPLAY_SUCCESS 表示执行成功。 4157 4158其他值表示执行失败,具体错误码查看[DispErrCode](#disperrcode)。 4159 4160 4161### SetDisplayClientBuffer 4162 4163 4164``` 4165int32_t(* DeviceFuncs::SetDisplayClientBuffer) (uint32_t devId, const BufferHandle *buffer, int32_t fence) 4166``` 4167 4168**描述:** 4169 4170设置显示设备的显示缓存。 4171 4172图形服务可以通过该接口将显示缓存设置给显示设备,显示设备硬件合成结果将会存放在该显示缓存中。 4173 4174**参数:** 4175 4176 | 名称 | 描述 | 4177| -------- | -------- | 4178| devId | 输入参数,指示需要操作的设备ID。 | 4179| buffer | 输入参数,显示缓存。 | 4180| fence | 输入参数,同步栅栏,标识显示缓存是否可以访问,有图形服务创建和释放,接口实现层需要等待同步栅栏发送信号后才能使用显示缓存。 | 4181 4182**返回:** 4183 4184DISPLAY_SUCCESS 表示执行成功。 4185 4186其他值表示执行失败,具体错误码查看[DispErrCode](#disperrcode)。 4187 4188 4189### SetDisplayClientCrop 4190 4191 4192``` 4193int32_t(* DeviceFuncs::SetDisplayClientCrop) (uint32_t devId, IRect *rect) 4194``` 4195 4196**描述:** 4197 4198设置显示设备的裁剪区域。 4199 4200图形服务可以通过该接口设置显示设备的ClientBuffer的裁剪区域,裁剪区域不能超过ClientBuffer的大小。 4201 4202**参数:** 4203 4204 | 名称 | 描述 | 4205| -------- | -------- | 4206| devId | 输入参数,指示需要操作的设备ID。 | 4207| rect | 输入参数,ClientBuffer的裁剪区域。 | 4208 4209**返回:** 4210 4211DISPLAY_SUCCESS 表示执行成功。 4212 4213其他值表示执行失败,具体错误码查看[DispErrCode](#disperrcode)。 4214 4215 4216### SetDisplayClientDamage 4217 4218 4219``` 4220int32_t(* DeviceFuncs::SetDisplayClientDamage) (uint32_t devId, uint32_t num, IRect *rect) 4221``` 4222 4223**描述:** 4224 4225设置显示设备的显示脏区。 4226 4227图形服务可以通过该接口设置显示设备脏区,接口实现层可以根据该区域进行区域刷新,脏区是由多个矩形区域组合起来的。 4228 4229**参数:** 4230 4231 | 名称 | 描述 | 4232| -------- | -------- | 4233| devId | 输入参数,指示需要操作的设备ID。 | 4234| num | 输入参数,矩形个数。 | 4235| rect | 输入参数,区域矩形指针,指向矩形数组的首地址。 | 4236 4237**返回:** 4238 4239DISPLAY_SUCCESS 表示执行成功。 4240 4241其他值表示执行失败,具体错误码查看[DispErrCode](#disperrcode)。 4242 4243 4244### SetDisplayClientDestRect 4245 4246 4247``` 4248int32_t(* DeviceFuncs::SetDisplayClientDestRect) (uint32_t devId, IRect *rect) 4249``` 4250 4251**描述:** 4252 4253设置显示设备的显示区域。 4254 4255图形服务可以通过该接口设置显示设备的显示区域。 4256 4257**参数:** 4258 4259 | 名称 | 描述 | 4260| -------- | -------- | 4261| devId | 输入参数,指示需要操作的设备ID。 | 4262| rect | 输入参数,显示区域。 | 4263 4264**返回:** 4265 4266DISPLAY_SUCCESS 表示执行成功。 4267 4268其他值表示执行失败,具体错误码查看[DispErrCode](#disperrcode)。 4269 4270 4271### SetDisplayColorGamut 4272 4273 4274``` 4275int32_t(* DeviceFuncs::SetDisplayColorGamut) (uint32_t devId, ColorGamut gamut) 4276``` 4277 4278**描述:** 4279 4280设置显示设备当前的色域模式。 4281 4282**参数:** 4283 4284 | 名称 | 描述 | 4285| -------- | -------- | 4286| devId | 输入参数,指示需要操作的设备ID。 | 4287| gamut | 输入参数,表示需要设置的色域模式。 | 4288 4289**返回:** 4290 4291DISPLAY_SUCCESS 表示执行成功。 4292 4293其他值表示执行失败,具体错误码查看[DispErrCode](#disperrcode)。 4294 4295 4296### SetDisplayColorTransform 4297 4298 4299``` 4300int32_t(* DeviceFuncs::SetDisplayColorTransform) (uint32_t devId, const float *matrix) 4301``` 4302 4303**描述:** 4304 4305设置显示设备当前的4x4的颜色转换矩阵。 4306 4307**参数:** 4308 4309 | 名称 | 描述 | 4310| -------- | -------- | 4311| devId | 输入参数,指示需要操作的设备ID。 | 4312| matrix | 输入参数,表示需要设置的颜色转换模式。 | 4313 4314**返回:** 4315 4316DISPLAY_SUCCESS 表示执行成功。 4317 4318其他值表示执行失败,具体错误码查看[DispErrCode](#disperrcode)。 4319 4320 4321### SetDisplayGamutMap 4322 4323 4324``` 4325int32_t(* DeviceFuncs::SetDisplayGamutMap) (uint32_t devId, GamutMap gamutMap) 4326``` 4327 4328**描述:** 4329 4330设置显示设备当前的色域映射模式。 4331 4332**参数:** 4333 4334 | 名称 | 描述 | 4335| -------- | -------- | 4336| devId | 输入参数,指示需要操作的设备ID。 | 4337| gamutMap | 输入参数,表示需要设置的色域映射模式。 | 4338 4339**返回:** 4340 4341DISPLAY_SUCCESS 表示执行成功。 4342 4343其他值表示执行失败,具体错误码查看[DispErrCode](#disperrcode)。 4344 4345 4346### SetDisplayMode 4347 4348 4349``` 4350int32_t(* DeviceFuncs::SetDisplayMode) (uint32_t devId, uint32_t modeId) 4351``` 4352 4353**描述:** 4354 4355设置显示设备的显示模式。 4356 4357图形服务可以通过该接口获设置显示设备的显示模式。 4358 4359**参数:** 4360 4361 | 名称 | 描述 | 4362| -------- | -------- | 4363| devId | 输入参数,指示需要操作的设备ID。 | 4364| modeId | 输入参数,指明需要设置的模式ID,接口实现层将设备切换到该参数对应的显示模式。 | 4365 4366**返回:** 4367 4368DISPLAY_SUCCESS 表示执行成功。 4369 4370其他值表示执行失败,具体错误码查看[DispErrCode](#disperrcode)。 4371 4372 4373### SetDisplayPowerStatus 4374 4375 4376``` 4377int32_t(* DeviceFuncs::SetDisplayPowerStatus) (uint32_t devId, DispPowerStatus status) 4378``` 4379 4380**描述:** 4381 4382设置显示设备当前的电源状态。 4383 4384图形服务可以通过该接口获设置显示设备的电源状态。 4385 4386**参数:** 4387 4388 | 名称 | 描述 | 4389| -------- | -------- | 4390| devId | 输入参数,指示需要操作的设备ID。 | 4391| status | 输入参数,表示需要设置的电源状态。 | 4392 4393**返回:** 4394 4395DISPLAY_SUCCESS 表示执行成功。 4396 4397其他值表示执行失败,具体错误码查看[DispErrCode](#disperrcode)。 4398 4399 4400### SetDisplayProperty 4401 4402 4403``` 4404int32_t(* DeviceFuncs::SetDisplayProperty) (uint32_t devId, uint32_t id, uint64_t value) 4405``` 4406 4407**描述:** 4408 4409设置显示设备属性值。 4410 4411图形服务可以通过该接口设置显示设备具体的属性值。 4412 4413**参数:** 4414 4415 | 名称 | 描述 | 4416| -------- | -------- | 4417| devId | 输入参数,指示需要操作的设备ID。 | 4418| id | 输入参数,由接口GetDisplayCapability返回属性ID。 | 4419| value | 输入参数,需要设置的属性值。 | 4420 4421**返回:** 4422 4423DISPLAY_SUCCESS 表示执行成功。 4424 4425其他值表示执行失败,具体错误码查看[DispErrCode](#disperrcode)。 4426 4427 4428### SetDisplayVsyncEnabled 4429 4430 4431``` 4432int32_t(* DeviceFuncs::SetDisplayVsyncEnabled) (uint32_t devId, bool enabled) 4433``` 4434 4435**描述:** 4436 4437使能垂直同步信号。 4438 4439图形服务可以通过该接口使能或取消垂直同步信号,当有垂直同步信号产生时,接口实现层需要回调图形服务通过RegDisplayVBlankCallback注册的 VBlankCallback 回调。 图形服务在需要刷新显示时需要使能垂直同步信号,在收到VBlankCallback事件回调时再进行合成送显,不需要刷新显示时需要取消垂直同步信号。 4440 4441**参数:** 4442 4443 | 名称 | 描述 | 4444| -------- | -------- | 4445| devId | 输入参数,指示需要操作的设备ID。 | 4446| enabled | 输入参数,使能状态,true表示能,false表示不能。 | 4447 4448**返回:** 4449 4450DISPLAY_SUCCESS 表示执行成功。 4451 4452其他值表示执行失败,具体错误码查看[DispErrCode](#disperrcode)。 4453 4454 4455### SetVirtualDisplayBuffer 4456 4457 4458``` 4459int32_t(* DeviceFuncs::SetVirtualDisplayBuffer) (uint32_t devId, BufferHandle *buffer, int32_t fence) 4460``` 4461 4462**描述:** 4463 4464设置虚拟屏的输出缓存。 4465 4466该接口用于设置虚拟屏输出缓存,接口实现层需要将虚拟屏的输出放入到该缓存中,接口实现层需要等待同步栅栏发送信号后才能使用缓存。 4467 4468**参数:** 4469 4470 | 名称 | 描述 | 4471| -------- | -------- | 4472| devId | 输入参数,指示需要操作的设备ID。 | 4473| buffer | 输出参数,输出缓存。 | 4474| fence | 输出参数,同步栅栏。 | 4475 4476**返回:** 4477 4478DISPLAY_SUCCESS 表示执行成功。 4479 4480其他值表示执行失败,具体错误码查看[DispErrCode](#disperrcode)。 4481 4482 4483### solid 4484 4485 4486``` 4487VGUSolid* VGUPaintStyle::solid 4488``` 4489 4490**描述:** 4491 4492颜色对象 4493 4494 4495### spread 4496 4497 4498``` 4499VGUFillSpread VGUGradient::spread 4500``` 4501 4502**描述:** 4503 4504渐变延伸模式 4505 4506 4507### stop 4508 4509 4510``` 4511float VGUColorStop::stop 4512``` 4513 4514**描述:** 4515 4516颜色偏移位置,取值范围是 0.0 ~ 1.0。 4517 4518 4519### stopCount 4520 4521 4522``` 4523uint16_t VGUGradient::stopCount 4524``` 4525 4526**描述:** 4527 4528渐变停止颜色个数 4529 4530 4531### stride [1/2] 4532 4533 4534``` 4535int32_t ISurface::stride 4536``` 4537 4538**描述:** 4539 4540图像跨度 4541 4542 4543### stride [2/2] 4544 4545 4546``` 4547uint32_t VGUBuffer::stride 4548``` 4549 4550**描述:** 4551 4552位图stride 4553 4554 4555### supportLayers 4556 4557 4558``` 4559uint32_t DisplayCapability::supportLayers 4560``` 4561 4562**描述:** 4563 4564支持的图层数 4565 4566 4567### supportWriteBack 4568 4569 4570``` 4571bool DisplayCapability::supportWriteBack 4572``` 4573 4574**描述:** 4575 4576是否支持回写 4577 4578 4579### time 4580 4581 4582``` 4583int64_t PresentTimestamp::time 4584``` 4585 4586**描述:** 4587 4588类型对应的值 4589 4590 4591### type [1/7] 4592 4593 4594``` 4595LayerType LayerInfo::type 4596``` 4597 4598**描述:** 4599 4600图层类型,包括图形层、视频层和媒体播放模式 4601 4602 4603### type [2/7] 4604 4605 4606``` 4607InterfaceType DisplayCapability::type 4608``` 4609 4610**描述:** 4611 4612显示屏接口类型 4613 4614 4615### type [3/7] 4616 4617 4618``` 4619PresentTimestampType PresentTimestamp::type 4620``` 4621 4622**描述:** 4623 4624上屏时间戳类型 4625 4626 4627### type [4/7] 4628 4629 4630``` 4631VGUPathDataType VGUPath::type 4632``` 4633 4634**描述:** 4635 4636路径数据存储类型 4637 4638 4639### type [5/7] 4640 4641 4642``` 4643uint32_t VGUMatrix3::type 4644``` 4645 4646**描述:** 4647 4648矩阵变换类型,简单变换为缩放,平移,90度倍数旋转 4649 4650 4651### type [6/7] 4652 4653 4654``` 4655VGUGradientType VGUGradient::type 4656``` 4657 4658**描述:** 4659 4660渐变类型 4661 4662 4663### type [7/7] 4664 4665 4666``` 4667VGUPaintType VGUPaintStyle::type 4668``` 4669 4670**描述:** 4671 4672渲染类型 4673 4674 4675### uOffset 4676 4677 4678``` 4679size_t YUVDescInfo::uOffset 4680``` 4681 4682**描述:** 4683 4684U的偏移量 4685 4686 4687### usage [1/2] 4688 4689 4690``` 4691uint64_t AllocInfo::usage 4692``` 4693 4694**描述:** 4695 4696申请内存的使用场景 4697 4698 4699### usage [2/2] 4700 4701 4702``` 4703uint64_t VerifyAllocInfo::usage 4704``` 4705 4706**描述:** 4707 4708内存的用处 4709 4710 4711### uvStep 4712 4713 4714``` 4715size_t YUVDescInfo::uvStep 4716``` 4717 4718**描述:** 4719 4720UV的step信息 4721 4722 4723### uvStride 4724 4725 4726``` 4727size_t __attribute__::uvStride 4728``` 4729 4730**描述:** 4731 4732UV的stride信息 4733 4734 4735### value [1/2] 4736 4737 4738``` 4739uint64_t PropertyObject::value 4740``` 4741 4742**描述:** 4743 4744属性值 4745 4746 4747### value [2/2] 4748 4749 4750``` 4751float HDRMetaData::value 4752``` 4753 4754**描述:** 4755 4756关键字对应的值 4757 4758 4759### virAddr [1/2] 4760 4761 4762``` 4763void* BufferData::virAddr 4764``` 4765 4766**描述:** 4767 4768虚拟内存地址 4769 4770 4771### virAddr [2/2] 4772 4773 4774``` 4775void* VGUBuffer::virAddr 4776``` 4777 4778**描述:** 4779 4780位图缓存的虚拟地址 4781 4782 4783### virtualDispCount 4784 4785 4786``` 4787uint32_t DisplayCapability::virtualDispCount 4788``` 4789 4790**描述:** 4791 4792支持的虚拟屏数 4793 4794 4795### vOffset 4796 4797 4798``` 4799size_t YUVDescInfo::vOffset 4800``` 4801 4802**描述:** 4803 4804V的偏移量 4805 4806 4807### w [1/2] 4808 4809 4810``` 4811int32_t IRect::w 4812``` 4813 4814**描述:** 4815 4816矩形框宽度 4817 4818 4819### w [2/2] 4820 4821 4822``` 4823VGUScalar VGURect::w 4824``` 4825 4826**描述:** 4827 4828矩形宽度 4829 4830 4831### width [1/9] 4832 4833 4834``` 4835uint32_t DisplayInfo::width 4836``` 4837 4838**描述:** 4839 4840显示屏宽度 4841 4842 4843### width [2/9] 4844 4845 4846``` 4847int32_t LayerInfo::width 4848``` 4849 4850**描述:** 4851 4852图层宽度 4853 4854 4855### width [3/9] 4856 4857 4858``` 4859int32_t LayerBuffer::width 4860``` 4861 4862**描述:** 4863 4864buffer宽度 4865 4866 4867### width [4/9] 4868 4869 4870``` 4871int32_t ISurface::width 4872``` 4873 4874**描述:** 4875 4876图像宽度 4877 4878 4879### width [5/9] 4880 4881 4882``` 4883int32_t DisplayModeInfo::width 4884``` 4885 4886**描述:** 4887 4888像素宽度 4889 4890 4891### width [6/9] 4892 4893 4894``` 4895uint32_t AllocInfo::width 4896``` 4897 4898**描述:** 4899 4900申请内存宽度 4901 4902 4903### width [7/9] 4904 4905 4906``` 4907uint32_t VerifyAllocInfo::width 4908``` 4909 4910**描述:** 4911 4912分配内存的宽度 4913 4914 4915### width [8/9] 4916 4917 4918``` 4919uint32_t VGUBuffer::width 4920``` 4921 4922**描述:** 4923 4924位图宽度 4925 4926 4927### width [9/9] 4928 4929 4930``` 4931float VGUStrokeAttr::width 4932``` 4933 4934**描述:** 4935 4936线宽 4937 4938 4939### wrapx 4940 4941 4942``` 4943VGUWrapType VGUPattern::wrapx 4944``` 4945 4946**描述:** 4947 4948图像水平方向平铺类型 4949 4950 4951### wrapy 4952 4953 4954``` 4955VGUWrapType VGUPattern::wrapy 4956``` 4957 4958**描述:** 4959 4960图像垂直方向平铺类型 4961 4962 4963### x [1/4] 4964 4965 4966``` 4967int32_t IRect::x 4968``` 4969 4970**描述:** 4971 4972矩形框起始x坐标 4973 4974 4975### x [2/4] 4976 4977 4978``` 4979int32_t ICircle::x 4980``` 4981 4982**描述:** 4983 4984圆心x坐标 4985 4986 4987### x [3/4] 4988 4989 4990``` 4991VGUScalar VGUPoint::x 4992``` 4993 4994**描述:** 4995 4996点水平坐标 4997 4998 4999### x [4/4] 5000 5001 5002``` 5003VGUScalar VGURect::x 5004``` 5005 5006**描述:** 5007 5008矩形水平起始坐标 5009 5010 5011### x0 [1/2] 5012 5013 5014``` 5015int32_t ILine::x0 5016``` 5017 5018**描述:** 5019 5020线条起点的x坐标 5021 5022 5023### x0 [2/2] 5024 5025 5026``` 5027VGUScalar VGURadial::x0 5028``` 5029 5030**描述:** 5031 5032内圈圆心水平坐标 5033 5034 5035### x1 [1/3] 5036 5037 5038``` 5039int32_t ILine::x1 5040``` 5041 5042**描述:** 5043 5044线条终点的x坐标 5045 5046 5047### x1 [2/3] 5048 5049 5050``` 5051VGUScalar VGULinear::x1 5052``` 5053 5054**描述:** 5055 5056线性渐变起点水平坐标 5057 5058 5059### x1 [3/3] 5060 5061 5062``` 5063VGUScalar VGURadial::x1 5064``` 5065 5066**描述:** 5067 5068外圈圆心水平坐标 5069 5070 5071### x2 5072 5073 5074``` 5075VGUScalar VGULinear::x2 5076``` 5077 5078**描述:** 5079 5080线性渐变终点水平坐标 5081 5082 5083### y [1/4] 5084 5085 5086``` 5087int32_t IRect::y 5088``` 5089 5090**描述:** 5091 5092矩形框起始y坐标 5093 5094 5095### y [2/4] 5096 5097 5098``` 5099int32_t ICircle::y 5100``` 5101 5102**描述:** 5103 5104圆心y坐标r 5105 5106 5107### y [3/4] 5108 5109 5110``` 5111VGUScalar VGUPoint::y 5112``` 5113 5114**描述:** 5115 5116点垂直坐标 5117 5118 5119### y [4/4] 5120 5121 5122``` 5123VGUScalar VGURect::y 5124``` 5125 5126**描述:** 5127 5128矩形垂直起始坐标 5129 5130 5131### y0 [1/2] 5132 5133 5134``` 5135int32_t ILine::y0 5136``` 5137 5138**描述:** 5139 5140线条起点的y坐标 5141 5142 5143### y0 [2/2] 5144 5145 5146``` 5147VGUScalar VGURadial::y0 5148``` 5149 5150**描述:** 5151 5152内圈圆心垂直坐标 5153 5154 5155### y1 [1/3] 5156 5157 5158``` 5159int32_t ILine::y1 5160``` 5161 5162**描述:** 5163 5164线条终点的y坐标 5165 5166 5167### y1 [2/3] 5168 5169 5170``` 5171VGUScalar VGULinear::y1 5172``` 5173 5174**描述:** 5175 5176线性渐变起点垂直坐标 5177 5178 5179### y1 [3/3] 5180 5181 5182``` 5183VGUScalar VGURadial::y1 5184``` 5185 5186**描述:** 5187 5188外圈圆心垂直坐标 5189 5190 5191### y2 5192 5193 5194``` 5195VGUScalar VGULinear::y2 5196``` 5197 5198**描述:** 5199 5200线性渐变终点垂直坐标 5201 5202 5203### yOffset 5204 5205 5206``` 5207size_t YUVDescInfo::yOffset 5208``` 5209 5210**描述:** 5211 5212Y的偏移量 5213 5214 5215### yStride 5216 5217 5218``` 5219size_t YUVDescInfo::yStride 5220``` 5221 5222**描述:** 5223 5224Y的stride信息 5225