template <>
class WireServer
Defined at line 1072 of file fidling/gen/sdk/fidl/fuchsia.driver.index/fuchsia.driver.index/cpp/fidl/fuchsia.driver.index/cpp/wire_messaging.h
Pure-virtual interface to be implemented by a server.
This interface uses typed channels (i.e. |::fidl::ClientEnd
<
::fuchsia_driver_index::DevelopmentManager>|
and |::fidl::ServerEnd
<
::fuchsia_driver_index::DevelopmentManager>|).
Public Methods
void GetDriverInfo (::fuchsia_driver_index::wire::DevelopmentManagerGetDriverInfoRequest * 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 (::fuchsia_driver_index::wire::DevelopmentManagerGetCompositeNodeSpecsRequest * 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 (::fuchsia_driver_index::wire::DevelopmentManagerDisableDriverRequest * 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 (::fuchsia_driver_index::wire::DevelopmentManagerEnableDriverRequest * 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 (::fuchsia_driver_index::wire::DevelopmentManagerRebindCompositesWithDriverRequest * 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 WireServer ()
Defined at line 1075 of file fidling/gen/sdk/fidl/fuchsia.driver.index/fuchsia.driver.index/cpp/fidl/fuchsia.driver.index/cpp/wire_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 ~WireServer ()
Defined at line 1076 of file fidling/gen/sdk/fidl/fuchsia.driver.index/fuchsia.driver.index/cpp/fidl/fuchsia.driver.index/cpp/wire_messaging.h