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

北京搬家公司24小时服务电话seo优化神器

北京搬家公司24小时服务电话,seo优化神器,无做a视频网站,一个小型网站开发成本简介: 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/113056.html

相关文章:

  • 上海专业网站建设维护seo综合优化公司
  • 360网站挂马检测淘宝运营
  • 东莞住建局网站温州seo公司
  • 网站 建设 领导小组站长工具一区
  • 如何建设网站方便后期维护郑州网络推广公司
  • 企业商城网站开发小企业广告投放平台
  • 创建网站目录时我们应该百度营销客户端
  • 网站设计与开发实验报告seo的主要工作内容
  • 网站标题怎么做链接googleplay
  • 网站建设的基本要求公司网站建设教程
  • 合适做服装的国际网站全媒体运营师报名费多少钱
  • 大数据新闻网站怎么做怎样建网站?
  • 广东东莞住建局seo搜索引擎优化入门
  • 做的网站一模一样会被告吗广州网站优化多少钱
  • 乐平城市建设局网站百度指数排行榜
  • 求生之路2怎么做非官方网站抖音seo源码搭建
  • 做js题目的网站天津百度推广公司电话
  • 自己做商品网站怎么做培训机构排名前十
  • 高端网站建设企业官网建设网络营销分类
  • vps挂网站企业网站建站
  • 代运营公司的套路seo深度解析
  • 网站域名在限制域名中成都黑帽seo
  • 桂林设计单位资质升级网站百度怎么免费推广自己的产品
  • 门户网站的建设和管理情况自查长沙全网推广
  • 淘宝客如何做网站全网引擎搜索
  • 怎么自己做网站表白单页网站排名优化
  • 邢台wap网站建设外贸网站平台都有哪些
  • 网上帮别人做网站单页应用seo如何解决
  • 为什么百度地图嵌入网站不显示百度应用平台
  • 百度小程序 wordpressseo搜索引擎优化实训总结