驅動程式中的 FIDL

裝置可以實作 ddk::Messagable 混合,以便開發者傳送訊息 用戶端嘗試連線至驅動程式庫時。駕駛必須實作 ddk::Messagable 並參照所需的特定 FIDL 介面 。

舉例來說,實作 fuchsia_input_report::InputDevice敬上 介面可能具備下列類別定義:

class InputReportDriver;
using DriverDeviceType = ddk::Device<InputReportDriver, ddk::Unbindable,
                                     ddk::Messageable<fuchsia_input_report::InputDevice>::Mixin>;
class InputReportDriver : public DriverDeviceType{
    // Implement the class methods here.
};

要對這部裝置通訊的用戶端,會在以下位置開啟相關裝置檔案: /dev/class/input-report/,並開始傳送 FIDL 訊息。