当前位置: 首页 > news >正文

做公司网站建设价格百度移动排名优化软件

做公司网站建设价格,百度移动排名优化软件,wordpress禁止前台登录,少儿编程有没有必要学简介: CSDN博客专家,专注Android/Linux系统,分享多mic语音方案、音视频、编解码等技术,与大家一起成长! 优质专栏:Audio工程师进阶系列【原创干货持续更新中……】🚀 人生格言: 人生从来没有捷径,只有行动才是治疗恐惧和懒惰的唯一良药. 更多原创,欢迎关注:Android…

简介: CSDN博客专家,专注Android/Linux系统,分享多mic语音方案、音视频、编解码等技术,与大家一起成长!

优质专栏:Audio工程师进阶系列原创干货持续更新中……】🚀

人生格言: 人生从来没有捷径,只有行动才是治疗恐惧和懒惰的唯一良药.

更多原创,欢迎关注:Android系统攻城狮

欢迎关注Android系统攻城狮

1.前言

本篇目的:Android图形系统中,HWC特别的复杂,特别是HWComposer、ComposerImpl、Composer、Hwc2::Composer之间的关系,有种剪不断理还乱的感觉,通过几个演化例子,看清楚它本来的面目。

2.HWComposer、ComposerImpl、Composer、Hwc2::Composer定义与实现

1.HWComposer实现

frameworks/native/services/surfaceflinger/DisplayHardware/HWComposer.h

<1>.android::HWComposer定义
namespace Hwc2 {
class Composer;
}namespace android {
class HWComposer {virtual ~HWComposer();virtual void setCallback(HWC2::ComposerCallback*) = 0;....
};
}
<2>.impl::HWComposer定义(继承自android::HWComposer)
namespace impl {class HWComposer final : public android::HWComposer {
public:explicit HWComposer(std::unique_ptr<Hwc2::Composer> composer);explicit HWComposer(const std::string& composerServiceName);~HWComposer() override;
};
}
<3>.impl::HWComposer实现

frameworks/native/services/surfaceflinger/DisplayHardware/HWComposer.cpp

namespace impl {HWComposer::HWComposer(std::unique_ptr<Hwc2::Composer> composer): mComposer(std::move(composer)),mMaxVirtualDisplayDimension(static_cast<size_t>(sysprop::max_virtual_display_dimension(0))),mUpdateDeviceProductInfoOnHotplugReconnect(sysprop::update_device_product_info_on_hotplug_reconnect(false)) {}HWComposer::HWComposer(const std::string& composerServiceName): HWComposer(std::make_unique<Hwc2::impl::Composer>(composerServiceName)) {}HWComposer::~HWComposer() {mDisplayData.clear();
}
}

HWComposer构造函数通过它的委托构造函数,通过std::make_uniqueHwc2::impl::Composer(composerServiceName)实例画,那么Hwc2::impl::Composer的实现在哪呢?

2.ComposerImpl实现(Hwc2::Composer是它的别名)

hardware/interfaces/graphics/composer/2.1/utils/hal/include/composer-hal/2.1/Composer.h

<1>.Composer定义,它是ComposerImpl的别名
using Composer = detail::ComposerImpl<IComposer, ComposerHal>;
template <typename Interface, typename Hal>
class ComposerImpl : public Interface {public:static std::unique_ptr<ComposerImpl> create(std::unique_ptr<Hal> hal) {
http://www.tj-hxxt.cn/news/85731.html

相关文章:

  • 做html网站模板短视频seo询盘获客系统
  • 好资源源码网站网络营销的主要方式
  • 做网站和推广需要多少钱网站关键词优化案例
  • 广东公司排名seo网站内部优化
  • 黄岛网站建设价格推广平台的方式有哪些
  • 新媒体配图的相关知识网站seo优化有哪些方面
  • 做网站前景怎么样要怎么做网络推广
  • 芜湖做网站找哪家好市场调研分析
  • 公司的帐如何做网站企业文化培训
  • 上海网站建设服务分录短视频营销策划方案
  • 网站固定通栏代码北京朝阳区优化
  • 自己做网站到哪里去接广告b站黄页推广
  • 海南跨境免税电商入驻流程台州seo
  • 响应式网站源码石家庄关键词快速排名
  • WordPress安装在Windows临沂seo
  • 汕头网站建设推荐某网站seo诊断分析和优化方案
  • 深圳市建设工程质量检测网站广告营销包括哪些方面
  • 网站百度搜索不到怎样优化标题关键词
  • 上海网站公司设计百度排名优化软件
  • 做网站四百全包网站域名查询网
  • 网站的代码在哪里设置找一个免费域名的网站
  • wordpress cdn评论不能显示南昌seo营销
  • 时彩网站开发电子商务主要学什么
  • 杭州做网站优化自动app优化下载
  • 中国建筑网测seo百度关键字优化
  • 做网站 零基础从哪里开始学谷歌官方seo入门指南
  • 梧州网站建设中国宣布疫情结束日期
  • 网站制作的建设大纲ppt今日实时热搜
  • 山东网站建设比较好南京谷歌seo
  • 婚恋网站翻译可以做吗互联网营销平台有哪些