【SylixOS】Qt基于FrameBuffer渲染界面

  1. 简介 1
  2. SylixOSFB 1
    2.1 插件的初始化 1
    2.2 窗口绘制 1
    2.3 SylixOSFB的实现 2

1.简介
Qt是目前一款比较主流的人机交互界面库。它有很强的跨平台能力,可移植性好,被广泛应用在PC端以及嵌入式领域。Qt可大致分为两部分:QtGui和QtCore,QtGui提供开发人员一套完整的开发控件,可以快速开发客户端界面;QtCore则负责底层渲染以及事件驱动等。而本章节主要介绍的是Qt的渲染机制,在Qt5中将底层渲染和窗口管理大致分为:
SylixOSFB、LinuxFB、KMS、XCB、Wayland。
SylixOSFB和LinuxFB采用相同的渲染方式:直接往FrameBuffer写像素值,这种方式只支持软件渲染,主要使用CPU读写内存的方式。通过设置环境变量QT_QPA_PLATFORM=sylixosfb:fb=/dev/fb0和在程序启动时添加-platform sylixosfb两种方式运行Qt程序。
KMS:利用内核配置模式和drm机制,配合egl-device实现的带有GPU加速模式。
XCB:是在X11窗口管理系统嵌入OpenGL渲染模式
Wayland:是一套轻量级的窗口管理系统,采用传统的C/S框架,可以实现基于FrameBuffer和OpenGL两种渲染方式。
2.SylixOSFB
2.1插件的初始化
SylixOSFB遵循QPA插件接口规范,在Qt程序初始化时,初始化平台管理窗口、事件分发、鼠标键盘输入管理、Screen屏幕绘制。如图 2.1所示
【SylixOS】Qt 基于FrameBuffer渲染界面
图 2.1 插件初始化
2.2窗口绘制
在SylixOSFBScreen中通过打开fb0设备获取屏幕信息,再通过mmap内存映射,刷新屏幕像素值。如图 2.2所示
【SylixOS】Qt 基于FrameBuffer渲染界面
图 2.2 FrameBuffer读写实现
2.3SylixOSFB的实现
下图是SylixOSFB插件和QtGui层交互流程图。如图 2.3所示
【SylixOS】Qt 基于FrameBuffer渲染界面
图 2.3 SylixOSFB交互流程

成都创新互联是一家专注于网站建设、做网站与策划设计,赫章网站建设哪家好?成都创新互联做网站,专注于网站建设10年,网设计领域的专业建站公司;建站业务涵盖:赫章等地区。赫章做网站价格咨询:13518219792


当前题目:【SylixOS】Qt基于FrameBuffer渲染界面
网页路径:http://bzwzjz.com/article/psgoog.html

其他资讯

Copyright © 2007-2020 广东宝晨空调科技有限公司 All Rights Reserved 粤ICP备2022107769号
友情链接: 重庆外贸网站建设 成都定制网站建设 网站建设 成都定制网站建设 成都品牌网站建设 H5网站制作 定制网站设计 四川成都网站建设 成都商城网站制作 网站制作 企业网站建设 网站建设方案 成都品牌网站设计 网站建设推广 网站制作 外贸网站建设 成都响应式网站建设 成都网站建设 商城网站建设 广安网站设计 成都网站建设 成都网站制作