hi_tde_quick_copy
hi_tde_wait_for_done
函数功能
调用hi_tde_end_job接口、且使用非阻塞方式提交TDE任务后,调用本接口等待指定TDE任务完成。本接口为阻塞接口,会阻塞到指定TDE任务完成后退出本接口。
约束说明
-
在调用此接口前应保证调用hi_tde_open打开TDE设备,并且调用hi_tde_begin_job获得了有效的任务句柄。
-
该接口不支持多进程。
函数原型
hi_s32 hi_tde_wait_for_done(hi_s32 handle);
参数说明
| 参数名 | 输入/输出 | 说明 |
|---|---|---|
| handle | 输入 | tde任务句柄。 |
返回值说明
- 0:成功
- 非0:失败,参见TDE图形绘制返回码
父主题: TDE图形绘制功能
hi_tde_wait_all_done
函数功能
调用hi_tde_end_job接口、且使用非阻塞方式提交TDE任务后,等待当前TDE设备上所有任务完成。本接口为阻塞接口,会阻塞到所有TDE任务完成后退出本接口。
约束说明
-
在调用此接口前应保证调用hi_tde_open打开TDE设备,并且调用hi_tde_begin_job获得了有效的任务句柄。
-
该接口不支持多进程。
函数原型
hi_s32 hi_tde_wait_all_done(hi_void)
参数说明
无
返回值说明
- 0:成功
- 非0:失败,参见TDE图形绘制返回码
父主题: TDE图形绘制功能
hi_tde_quick_copy
函数功能
向指定TDE任务中添加快速拷贝命令,实现将源位图的操作区域拷贝到目标位图的操作区域。
约束说明
-
在调用此接口前应保证调用hi_tde_open打开TDE设备,并且调用hi_tde_begin_job获得了有效的任务句柄。
-
区域大小长度及宽度支持的区间为[1,4096]。
-
如果目标位图包含目标位图的操作区域,则无需其他操作。如果操作区域与目标位图相交,则裁剪操作区域,有效的操作区域为灰色相交部分。若指定的操作区域与位图不相交,位图及位图操作区域的关系如下图所示。

-
快速拷贝不支持格式转换,源位图和目标位图格式必须一致,当前仅支持ARGB8888格式。
-
快速拷贝不支持缩放功能,如果源和目的的操作区域尺寸不一致,则按照两者最小公共区域进行拷贝搬移。
-
指定操作区域要和指定的位图有公共区域,否则会返回错误。
-
该接口不支持多进程。
函数原型
hi_s32 hi_tde_quick_copy(hi_s32 handle, const hi_tde_single_src*single_src)
参数说明
| 参数名 | 输入/输出 | 说明 |
|---|---|---|
| handle | 输入 | tde任务句柄。 |
| single_src | 输入 | 单源位图区域信息和目标位图区域信息结构体。 |
返回值说明
- 0:成功
- 非0:失败,参见TDE图形绘制返回码
父主题: TDE图形绘制功能
hi_tde_quick_fill
函数功能
向指定TDE任务中添加快速填充命令,实现将指定的颜色数值纯色填充到目标位图的操作区域中,具体如下图所示。

约束说明
-
在调用此接口前应保证调用hi_tde_open打开TDE设备,并且调用hi_tde_begin_job获得了有效的任务句柄。
-
区域大小长度及宽度支持的区间为[1,4096]。
-
指定操作区域要和指定的位图有公共区域,否则会返回错误。
-
当前仅支持ARGB8888格式。
-
该接口不支持多进程。
函数原型
hi_s32 hi_tde_quick_fill(hi_s32 handle, const hi_tde_none_src *none_src, hi_u32 fill_data)
参数说明
| 参数名 | 输入/输出 | 说明 |
|---|---|---|
| handle | 输入 | tde任务句柄。 |
| none_src | 输入 | 无源位图操作区域位图信息结构体。 |
| fill_data | 输入 | 填充颜色。 |
返回值说明
- 0:成功
- 非0:失败,参见TDE图形绘制返回码
父主题: TDE图形绘制功能
hi_tde_pattern_fill
函数功能
向指定TDE任务中添加模式填充命令,当前仅支持Alpha Blending操作。
模式填充:输入前景位图和背景位图,将前景位图和背景位图的操作区域做附加运算后,平铺在背景位图的操作区域,若前景位图的操作区域大于背景位图的操作区域,则自动进行裁减。
Alpha Blending:通过通过计算前景和背景重叠后的混合颜色,将前景色和背景色结合获得混合后的新颜色。前景色的透明度不限,如果前景色完全透明,混合后的颜色就是背景色,如果前景色完全不透明,混合后的颜色就是前景色。介于(0, 1)中间的透明度,混合后的颜色,需要通过前景色和背景色的加权公式来计算,混合计算必须使用平直Alpha颜色值,以下是blending的12种函数红蓝组合示例:

约束说明
-
在调用此接口前应保证调用hi_tde_open打开TDE设备,并且调用hi_tde_begin_job获得了有效的任务句柄。
-
区域大小长度及宽度支持的区间为[1, 4096];前景位图宽度支持区间为[1, 256],高度为[1, 4096]。
-
若前景位图操作区域大于目标位图操作区域,则会自动进行裁剪;若前景位图操作区域大于背景位图操作区域,则自动裁减。
-
模式填充背景位图操作区域长度和宽度要和目标位图操作区域长度和宽度保持一致。
-
该操作不能做缩放。
-
操作区域要和指定的位图有公共区域,否则会返回错误。
-
当前仅支持ARGB8888格式。
-
该接口不支持多进程。
函数原型
hi_s32 hi_tde_pattern_fill(hi_s32 handle, const hi_tde_double_src *double_src, const hi_tde_pattern_fill_opt *fill_opt)
参数说明
| 参数名 | 输入/输出 | 说明 |
|---|---|---|
| handle | 输入 | tde任务句柄。 |
| double_src | 输入 | 双源位图区域信息和目标位图区域信息结构体。 |
| fill_opt | 输入 | 附加操作,当前只支持Alpha Bending。 |
返回值说明
- 0:成功
- 非0:失败,参见TDE图形绘制返回码
父主题: TDE图形绘制功能
功能及约束说明
HIFB(Hisilicon FrameBuffer)支持的图形层如下表所示,其中G0、G1为超高清图形层,G2图形层为鼠标层,G3、G4图形层为标清图形层。
表1 各图层基本信息说明
| 图形层 | 类型 | HIFB名称(fb设备) | 默认绑定VO设备 | 支持颜色格式 | 分辨率 | 显存 |
|---|---|---|---|---|---|---|
| G0 | 超高清图形层 | fb0 | 0 | - ARGB8888 - ARGB1555 - ARGB4444 | - 最小:32*32 - 最大(默认):1920*1080 | 8100KB |
| G1 | 超高清图形层 | fb1 | 1 | - ARGB8888 - ARGB1555 - ARGB4444 | - 最小:32*32 - 最大(默认):1920*1080 | 8100KB |
| G2 | 鼠标层 | fb2 | 0 | - ARGB8888 - ARGB1555 - ARGB4444 | - 最小:8*8 - 最大(默认):256*256 | 256KB |
| G3 | 标清图形层 | fb3 | 0 | - ARGB8888 - ARGB1555 - ARGB4444 - CLUT4 - CLUT2 | - 最小:8*8 - 最大(默认):720*576 | 1620KB |
| G4 | 标清图形层 | fb4 | 1 | - ARGB8888 - ARGB1555 - ARGB4444 - CLUT4 - CLUT2 | - 最小:8*8 - 最大(默认):720*576 | 1620KB |
父主题: HIFB叠加图形层管理功能
在线提单