鸿蒙显示相关接口
鸿蒙显示相关接口文章目录鸿蒙显示相关接口display_gralloc部分接口定义display_devicex相关接口display_gralloc部分接口定义以下接口列举的为VDI接口接口声明见文件/drivers/peripheral/display/buffer/hdi_service/include/idisplay_buffer_vdi.h接口描述与AndroidIDisplayBuffer *Get()获取IDisplayBuffer接口的客户端代理对象int32_t IsSupportedAlloc(const std::vector infos, std::vector supporteds)判断是否能申请请求的bufferint32_t AllocMem(const AllocInfo info, BufferHandle* handle)申请Bufferallocatevoid FreeMem(const BufferHandle handle)释放BufferfreeBuffervoid* Mmap(const BufferHandle handle)将Buffer映射到内存Lockint32_t Unmap(const BufferHandle handle)解除Buffer内存映射Unlockint32_t RegisterBuffer(const BufferHandle handle)注册Bufferint32_t FlushCache(const BufferHandle handle)刷新Buffer缓存flushLockedBufferint32_t InvalidateCache(const BufferHandle handle)废弃Buffer缓存invalidateBufferint32_t GetMetadata(const BufferHandle handle, uint32_t key, std::vectoruint8_t value)获取Buffer的元数据int32_t ListMetadataKeys(const BufferHandle handle, std::vectoruint32_t keys)列出所有元数据的keyint32_t EraseMetadataKey(const BufferHandle handle, uint32_t key)清除指定key的元数据信息display_devicex相关接口drivers/peripheral/display/composer/hdi_service/include/idisplay_composer_vdi.h功能描述接口名称注册热插拔事件回调int32_t RegHotPlugCallback(HotPlugCallback cb, void* data)获取显示设备能力集int32_t GetDisplayCapability(uint32_t devId, DisplayCapability info)获取显示设备支持的显示模式信息int32_t GetDisplaySupportedModes(uint32_t devId, std::vectorDisplayModeInfo modes)获取显示设备当前的显示模式int32_t GetDisplayMode(uint32_t devId, uint32_t modeId)设置显示设备的显示模式int32_t SetDisplayMode(uint32_t devId, uint32_t modeId)获取显示设备当前的电源状态int32_t GetDisplayPowerStatus(uint32_t devId, DispPowerStatus status)设置显示设备当前的电源状态int32_t SetDisplayPowerStatus(uint32_t devId, DispPowerStatus status)获取显示设备当前的背光值int32_t GetDisplayBacklight(uint32_t devId, uint32_t level)设置显示设备当前的背光值int32_t SetDisplayBacklight(uint32_t devId, uint32_t level)获取显示设备属性值int32_t GetDisplayProperty(uint32_t devId, uint32_t id, uint64_t value)获取显示设备合成类型有变化的layerint32_t GetDisplayCompChange(uint32_t devId, std::vectoruint32_t layers, std::vectorint32_t types)设置显示设备的裁剪区域int32_t SetDisplayClientCrop(uint32_t devId, const IRect rect)设置显示设备的显示缓存int32_t SetDisplayClientBuffer(uint32_t devId, const BufferHandle buffer, int32_t fence)设置显示设备的显示脏区int32_t SetDisplayClientDamage(uint32_t devId, std::vectorIRect rects)使能垂直同步信号int32_t SetDisplayVsyncEnabled(uint32_t devId, bool enabled)注册VBlank事件回调int32_t RegDisplayVBlankCallback(uint32_t devId, VBlankCallback cb, void* data)获取显示图层fenceint32_t GetDisplayReleaseFence(uint32_t devId, std::vectoruint32_t layers, std::vectorint32_t fences)创建虚拟显示设备int32_t CreateVirtualDisplay(uint32_t width, uint32_t height, int32_t format, uint32_t devId)销毁虚拟显示设备int32_t DestroyVirtualDisplay(uint32_t devId)设置虚拟屏的输出缓存int32_t SetVirtualDisplayBuffer(uint32_t devId, const BufferHandle buffer, const int32_t fence)设置显示设备属性值int32_t SetDisplayProperty(uint32_t devId, uint32_t id, uint64_t value)提交合成送显请求int32_t Commit(uint32_t devId, int32_t fence)打开图层int32_t CreateLayer(uint32_t devId, const LayerInfo layerInfo, uint32_t layerId)关闭图层int32_t DestroyLayer(uint32_t devId, uint32_t layerId)准备要送显的图层int32_t PrepareDisplayLayers(uint32_t devId, bool needFlushFb)设置图层alpha值int32_t SetLayerAlpha(uint32_t devId, uint32_t layerId, const LayerAlpha alpha)设置图层区域int32_t SetLayerRegion(uint32_t devId, uint32_t layerId, const IRect rect)设置图层裁剪区域int32_t SetLayerCrop(uint32_t devId, uint32_t layerId, const IRect rect)设置图层Z轴次序int32_t SetLayerZorder(uint32_t devId, uint32_t layerId, uint32_t zorder)设置图层预乘int32_t SetLayerPreMulti(uint32_t devId, uint32_t layerId, bool preMul)设置图层转换模式int32_t SetLayerTransformMode(uint32_t devId, uint32_t layerId, TransformType type)设置图层刷新区域int32_t SetLayerDirtyRegion(uint32_t devId, uint32_t layerId, const std::vectorIRect rects)设置一个图层的可见区域int32_t SetLayerVisibleRegion(uint32_t devId, uint32_t layerId, std::vectorIRect rects)设置一个层的缓冲区int32_t SetLayerBuffer(uint32_t devId, uint32_t layerId, const BufferHandle buffer, int32_t fence)设置客户端期望的组合类型int32_t SetLayerCompositionType(uint32_t devId, uint32_t layerId, CompositionType type)设置混合类型int32_t SetLayerBlendType(uint32_t devId, uint32_t layerId, BlendType type)设置图层蒙版信息int32_t SetLayerMaskInfo(uint32_t devId, uint32_t layerId, const MaskInfo maskInfo)设置纯色图层int32_t SetLayerColor(uint32_t devId, uint32_t layerId, const LayerColor layerColor)

相关新闻

参考文献崩了?用户挚爱的AI论文写作软件 —— 千笔·专业学术智能体

参考文献崩了?用户挚爱的AI论文写作软件 —— 千笔·专业学术智能体

你是否曾在论文写作中感到力不从心?选题无从下手、文献查找困难、格式反复出错、查重率屡屡超标……这些学术路上的“拦路虎”,是否让你倍感焦虑?对于无数本科生来说,论文不仅是学业的终点,更是能力的考验。而如今&…

2026/7/4 13:45:12 阅读更多 →
安装 nvm-windows 切换了 Node 版本,但 IDEA 的终端里显示的仍然是旧版本

安装 nvm-windows 切换了 Node 版本,但 IDEA 的终端里显示的仍然是旧版本

nvm-windows切换版本后 IDEA 终端显示的 Node 版本还是旧的 安装 nvm-windows 切换了 Node 版本,但 IDEA 的终端里显示的仍然是旧版本,这是一个很常见的环境变量和终端进程的问题。 核心原因:IDEA 终端缓存了旧的环境变量,未感知…

2026/7/4 21:34:42 阅读更多 →
省钱兄科技:解锁无人自助系统软件低成本运维密码

省钱兄科技:解锁无人自助系统软件低成本运维密码

省钱兄科技通过自动化运维、智能监控与预警、数据分析优化、高效资源利用、安全保障机制及敏捷开发与持续迭代六大核心策略,成功解锁了无人自助系统软件低成本运维的密码,以下是对其低成本运维策略的详细归纳:一、自动化运维自动化任务执行&a…

2026/7/2 20:55:26 阅读更多 →

最新新闻

基于改进ResNet的智能垃圾分类系统设计与优化

基于改进ResNet的智能垃圾分类系统设计与优化

1. 项目背景与核心价值垃圾分类作为城市管理的痛点问题,传统人工分拣存在效率低(每小时处理约200-300件)、误判率高(约15%-20%)和人力成本攀升(一线城市单岗年成本超8万元)三大难题。我们实验室…

2026/7/5 11:27:23 阅读更多 →
AI Agent Skills开发实战:代码审查与CI/CD集成

AI Agent Skills开发实战:代码审查与CI/CD集成

1. 项目概述:AI Agent Skills在开发中的实战价值第一次在项目中引入Agent Skills时,我正面临着一个典型的技术困境:团队需要处理大量重复性代码审查工作,但人工检查既耗时又容易遗漏细节。当时偶然发现Anthropic开源的Agent Skill…

2026/7/5 11:25:23 阅读更多 →
Unlimited-OCR长文档解析:R-SWA机制原理与生产部署指南

Unlimited-OCR长文档解析:R-SWA机制原理与生产部署指南

🚀 30款热门AI模型一站整合,DeepSeek/GLM/Qwen 随心用,限时 5 折。 👉 点击领海量免费额度 如果你正在处理一份几十页的PDF报告、一本扫描版电子书,或者一份复杂的学术论文,想把它们转换成可编辑、可搜索…

2026/7/5 11:23:22 阅读更多 →
遗传算法优化BP神经网络:从理论到实践(附Python源码)

遗传算法优化BP神经网络:从理论到实践(附Python源码)

1. 为什么需要遗传算法优化BP神经网络?BP神经网络作为最基础的前馈神经网络,在函数拟合、分类预测等任务中表现优异。但我在实际项目中发现,传统BP算法存在两个致命缺陷:一是初始权值随机生成,训练结果不稳定&#xff…

2026/7/5 11:23:22 阅读更多 →
Python实现NLP中文文本自动摘要系统详解

Python实现NLP中文文本自动摘要系统详解

1. 项目概述这个NLP中文自动生成文本摘要系统是一个基于Python开发的完整解决方案,包含源码、详细技术报告和系统讲解。它能够自动处理中文文本,生成简洁准确的摘要内容,适用于新闻聚合、论文综述、商业报告等多种场景。系统采用先进的自然语…

2026/7/5 11:21:22 阅读更多 →
2026年MacBook Neo用户转向Windows笔记本:AI PC选购与迁移全指南

2026年MacBook Neo用户转向Windows笔记本:AI PC选购与迁移全指南

🚀 30款热门AI模型一站整合,DeepSeek/GLM/Qwen 随心用,限时 5 折。 👉 点击领海量免费额度 如果你正在考虑入手一台 MacBook Neo,或者已经习惯了苹果生态,但又被 Windows 阵营近两年在 AI、性能和生态上…

2026/7/5 11:21:22 阅读更多 →

日新闻

B站视频下载神器BiliTools:5分钟学会轻松保存任何B站内容

B站视频下载神器BiliTools:5分钟学会轻松保存任何B站内容

B站视频下载神器BiliTools:5分钟学会轻松保存任何B站内容 【免费下载链接】BiliTools A cross-platform bilibili toolbox. 跨平台哔哩哔哩工具箱,支持下载视频、番剧等等各类资源 项目地址: https://gitcode.com/GitHub_Trending/bilit/BiliTools …

2026/7/5 0:03:34 阅读更多 →
威胁模型全解析:从新手入门到实战应用,助你构建安全产品!

威胁模型全解析:从新手入门到实战应用,助你构建安全产品!

威胁模型的陌生现状在忙碌疲惫的一天里,参与了关于混合后量子密码学的讨论,应付端点攻击找茬的人,还参与留言板讨论后,发现“威胁模型”对多数人仍是陌生概念,且多被当作时髦用语。有趣的相关画作有一幅由 Embyr 创作的…

2026/7/5 0:03:34 阅读更多 →
渗透测试入门指南:从零基础到实战环境搭建

渗透测试入门指南:从零基础到实战环境搭建

1. 从“看热闹”到“入门”:我理解的渗透测试到底是什么?每次看到新闻里说某个大公司的数据被“黑”了,或者某个网站被攻击导致服务瘫痪,你是不是和我一样,心里会冒出两个念头:一是“这黑客真厉害”&#x…

2026/7/5 0:07:38 阅读更多 →

周新闻

B站视频下载神器BiliTools:5分钟学会轻松保存任何B站内容

B站视频下载神器BiliTools:5分钟学会轻松保存任何B站内容

B站视频下载神器BiliTools:5分钟学会轻松保存任何B站内容 【免费下载链接】BiliTools A cross-platform bilibili toolbox. 跨平台哔哩哔哩工具箱,支持下载视频、番剧等等各类资源 项目地址: https://gitcode.com/GitHub_Trending/bilit/BiliTools …

2026/7/5 0:03:34 阅读更多 →
威胁模型全解析:从新手入门到实战应用,助你构建安全产品!

威胁模型全解析:从新手入门到实战应用,助你构建安全产品!

威胁模型的陌生现状在忙碌疲惫的一天里,参与了关于混合后量子密码学的讨论,应付端点攻击找茬的人,还参与留言板讨论后,发现“威胁模型”对多数人仍是陌生概念,且多被当作时髦用语。有趣的相关画作有一幅由 Embyr 创作的…

2026/7/5 0:03:34 阅读更多 →
渗透测试入门指南:从零基础到实战环境搭建

渗透测试入门指南:从零基础到实战环境搭建

1. 从“看热闹”到“入门”:我理解的渗透测试到底是什么?每次看到新闻里说某个大公司的数据被“黑”了,或者某个网站被攻击导致服务瘫痪,你是不是和我一样,心里会冒出两个念头:一是“这黑客真厉害”&#x…

2026/7/5 0:07:38 阅读更多 →

月新闻