0、概念 接口就是純虛函數類,也就是最終的服務的前身; 插件就是實現這個接口類的實現類,所以理論上有多少個實現類就有多少個插件。注意每個插件都有自己的注冊器Activator; 服務就是根據接口的實例,每生成一個服務就會調用一次注冊器的start。 一句話總結就是:把接口當做類,服務 ...
方式 :使用ctk框架工廠,適用於調用普通的插件 方式 :使用ctk框架啟動器,適用於需要eventadmin時 ...
2020-07-03 09:41 0 1053 推薦指數:
0、概念 接口就是純虛函數類,也就是最終的服務的前身; 插件就是實現這個接口類的實現類,所以理論上有多少個實現類就有多少個插件。注意每個插件都有自己的注冊器Activator; 服務就是根據接口的實例,每生成一個服務就會調用一次注冊器的start。 一句話總結就是:把接口當做類,服務 ...
零、概述 1、通信主要用到了ctkEventAdmin結構體,主要定義了如下接口: postEvent:類通信形式異步發送事件 sendEvent:類通信形式同步發送事件 publishSig ...
CTK一共有三種事件可以監聽:框架事件、插件事件、服務事件。但是這些事件只有再變化時才能監聽到,如果已經變化過后,進入一個穩定的狀態,這時才去監聽,那么是無法監聽到的。 1、監聽接口 主要是ctkPluginContext提供的三個函數: 2、如何使用 ...
一、簡介 服務追蹤:如果想在B插件里使用A服務,可以專門寫一個類繼承ctkServiceTracker,在這個類里完成對A服務的底層操作,然后在B插件里通過這個類提供的接口來使用回收A服務。 注意ctkServiceTracker和A服務應該是一起的,這里有點像服務工廠。優點 ...
一、項目介紹 1、主要為了在此小型測試項目中用到幾乎所有ctk的常用知識: 插件間通信、服務工廠、服務追蹤、事件監聽、框架封裝 2、項目共包含3個插件日志插件:用於模擬將接收的信息存儲到日志中【這里只做簡單的打印】,並且能夠接收信息【主要來自界面插件】 打印插件:根據不同的插件返回提供 ...
1、作用 在服務中可以知道是哪個其他插件在使用它; 懶漢式使用服務,需要的時候才new; 廠其他插件使用有服務工廠和使用無服務工的服務,沒有任何區別,代碼都一樣; 可根據需要創建多種實現的服務,就是:多種服務對應一個插件。 2、用打印插件舉例 提供三種服務,分別是:直接打印、打印后加 ...
一、生成插件 0、環境說明 編譯ctk:Qt5.12.2+MSVC2017_64+Cmake 生成插件:Qt5.12.2+MSVC2017_64+qmake 1、服務類,純虛類,提供接口 abslogservice.h 2、實現插件類,實現純虛函數 ...
0、概述 編寫插件主要有3個步驟:接口類、實現類、激活類。根據前面寫的入門插件【https://www.cnblogs.com/judes/p/13220386.html】,總感覺很難理解,為什么還要在實現類的構造函數里注冊服務呢,我們肯定希望把3個步驟的耦合性降低,接口類就只做接口聲明,實現類 ...