template <>

class WireServer

Defined at line 1630 of file fidling/gen/sdk/fidl/fuchsia.hardware.platform.bus/fuchsia.hardware.platform.bus/cpp/fidl/fuchsia.hardware.platform.bus/cpp/driver/wire_messaging.h

Pure-virtual interface to be implemented by a server.

This interface uses typed channels (i.e. |::fdf::ClientEnd

<

::fuchsia_hardware_platform_bus::PlatformBus>|

and |::fdf::ServerEnd

<

::fuchsia_hardware_platform_bus::PlatformBus>|).

Public Methods

void NodeAdd (::fuchsia_hardware_platform_bus::wire::PlatformBusNodeAddRequest * request, fdf::Arena & arena, NodeAddCompleter::Sync & completer)

Adds a new platform device node to the bus, using configuration provided

by |node|. Platform device nodes are created in their own separate

driver hosts.

void GetBoardInfo (fdf::Arena & arena, GetBoardInfoCompleter::Sync & completer)

Board drivers may use this to get information about the board, and to

differentiate between multiple boards that they support.

void SetBoardInfo (::fuchsia_hardware_platform_bus::wire::PlatformBusSetBoardInfoRequest * request, fdf::Arena & arena, SetBoardInfoCompleter::Sync & completer)

Board drivers may use this to set information about the board.

void SetBootloaderInfo (::fuchsia_hardware_platform_bus::wire::PlatformBusSetBootloaderInfoRequest * request, fdf::Arena & arena, SetBootloaderInfoCompleter::Sync & completer)

Board drivers may use this to set information about the bootloader.

void RegisterSysSuspendCallback (::fuchsia_hardware_platform_bus::wire::PlatformBusRegisterSysSuspendCallbackRequest * request, fdf::Arena & arena, RegisterSysSuspendCallbackCompleter::Sync & completer)

Registers a callback that's invoked by the platform bus when it's suspending.

void AddCompositeNodeSpec (::fuchsia_hardware_platform_bus::wire::PlatformBusAddCompositeNodeSpecRequest * request, fdf::Arena & arena, AddCompositeNodeSpecCompleter::Sync & completer)

Adds a composite node specification that has |node| as one of the

composite node's parents. To accomplish this, this method does a couple

of things. The method adds a platform device node specified by |node| as

a child of the platform bus. Also, a

`fuchsia.driver.framework.ParentSpec` is added to |spec| which matches

the newly added platform device node. Composite bind rules should include

a stanza that matches the properites of |node| in order for the bind

rules to match against the `CompositeNodeSpec`.

void RegisterIommu (::fuchsia_hardware_platform_bus::wire::PlatformBusRegisterIommuRequest * request, fdf::Arena & arena, RegisterIommuCompleter::Sync & completer)

Register an iommu. The platform bus will use this to create a new iommu

object with the kernel based on the parameters passed in.

void WireServer ()

Defined at line 1633 of file fidling/gen/sdk/fidl/fuchsia.hardware.platform.bus/fuchsia.hardware.platform.bus/cpp/fidl/fuchsia.hardware.platform.bus/cpp/driver/wire_messaging.h

Handler bind_handler (fdf_dispatcher_t * dispatcher)

|bind_handler| returns a handler that binds incoming connections to this

server implementation.

The returned handler borrows the server instance.

The server must outlive the provided |dispatcher|. Only after

the dispatcher is shutdown will it be safe to destroy the servers.

The server should not be moved.

void ~WireServer ()

Defined at line 1634 of file fidling/gen/sdk/fidl/fuchsia.hardware.platform.bus/fuchsia.hardware.platform.bus/cpp/fidl/fuchsia.hardware.platform.bus/cpp/driver/wire_messaging.h