template <>

class Server

Defined at line 304 of file fidling/gen/sdk/fidl/fuchsia.driver.index/fuchsia.driver.index/cpp/fidl/fuchsia.driver.index/cpp/natural_messaging.h

Public Methods

void GetDriverInfo (GetDriverInfoRequest & request, GetDriverInfoCompleter::Sync & completer)

Returns a list of all drivers that are known to the system.

If a |driver_filter| is provided, the returned list will be filtered to

only include drivers specified in the filter.

|iterator| is closed with following epitaphs on error:

ZX_ERR_NOT_FOUND indicates that there is no driver matching the given path for at least

one driver in |driver_filter|.

ZX_ERR_BUFFER_TOO_SMALL indicates that the driver's bind program is longer than the

maximum number of instructions (BIND_PROGRAM_INSTRUCTIONS_MAX).

void GetCompositeNodeSpecs (GetCompositeNodeSpecsRequest & request, GetCompositeNodeSpecsCompleter::Sync & completer)

Returns a list of all composite node specs that are known to the system.

If a |name_filter| is provided, the returned list will only include 1 spec,

the one with that exact name.

|iterator| is closed with following epitaphs on error:

ZX_ERR_NOT_FOUND indicates that there are no specs or if a |name_filter| is provided,

that there are no specs with that name.

void DisableDriver (DisableDriverRequest & request, DisableDriverCompleter::Sync & completer)

Disables the driver with the given driver component url.

Disabled drivers will not be considered for matching to nodes.

If a |package_hash| is provided, only that specific version of the driver

package will be disabled. Otherwise this applies to all existing versions

of a driver with the given url.

Returns an error ZX_ERR_NOT_FOUND if no drivers were affected.

void EnableDriver (EnableDriverRequest & request, EnableDriverCompleter::Sync & completer)

Enables the driver with the given driver component url.

This is only meant to revert a |DisableDriver| action.

Returns an error ZX_ERR_NOT_FOUND if no drivers were affected.

void RebindCompositesWithDriver (RebindCompositesWithDriverRequest & request, RebindCompositesWithDriverCompleter::Sync & completer)

Rebinds any composite specs that have the given driver_url. This means the

spec is rematched with possibly another driver, or none if the only matching driver is

disabled.

void Server ()

Defined at line 307 of file fidling/gen/sdk/fidl/fuchsia.driver.index/fuchsia.driver.index/cpp/fidl/fuchsia.driver.index/cpp/natural_messaging.h

Handler bind_handler (async_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 ~Server ()

Defined at line 308 of file fidling/gen/sdk/fidl/fuchsia.driver.index/fuchsia.driver.index/cpp/fidl/fuchsia.driver.index/cpp/natural_messaging.h