2022-9-30
ctk 插件分析
1.插件定义和加载
2.插件间通信
(1)接口调用
#服务注册
#接口调用
#获取服务
#编写插件主要有 3 个步骤:接口类、实现类、激活类。不在实现类的构造函数里注册服务,降低耦合性,接口类就只做接口声明,实现类就只实现接口,激活类就负责将服务整合到 ctk 框架中。
接口类没有什么变化,实现类少了注册的代码,构造函数也无参数,注册的过程放在了激活类里。
(2)事件监听
CTK 框架中的事件监听,即观察者模式流程上是这样:接收者注册监听事件->发送者发送事件->接收者接收到事件并响应;相比调用插件接口,监听事件插件间依赖关系更弱,不用指定事件的接收方和发送方是谁。
通过 event 事件通信,是直接调用 CTK 的接口,把数据发送到 CTK 框架;通过信号槽方式,会先在 Qt 的信号槽机制中转一次,再发送到 CTK 框架。故效率上来讲,event 方式性能高于信号槽方式。
评论