class Manager
Defined at line 6112 of file fidling/gen/sdk/fidl/fuchsia.driver.development/fuchsia.driver.development/hlcpp/fuchsia/driver/development/cpp/fidl.h
Interface for the driver development manager.
This interface should only be used for development and disabled in release builds.
Public Members
static const char[] Name_
Public Methods
void ~Manager ()
void GetDriverInfo (::std::vector< ::std::string> driver_filter, ::fidl::InterfaceRequest< ::fuchsia::driver::development::DriverInfoIterator> iterator)
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 (::fidl::StringPtr name_filter, ::fidl::InterfaceRequest< ::fuchsia::driver::development::CompositeNodeSpecIterator> iterator)
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 GetNodeInfo (::std::vector< ::std::string> node_filter, ::fidl::InterfaceRequest< ::fuchsia::driver::development::NodeInfoIterator> iterator, bool exact_match)
Returns the list of nodes that are running on the system.
If a |node_filter| is provided, the returned list will be filtered to
only include nodes specified in the filter. If |exact_match| is true,
then the filter must exactly match a node's topological path;
otherwise, it performs a substring match. The list will be empty if no
nodes match the filter.
|iterator| is closed with following epitaphs on error:
ZX_ERR_BAD_PATH indicates that the given path is not valid.
ZX_ERR_BUFFER_TOO_SMALL indicates either that the given path is too long,
or that the node has more than the maximum number of properties (PROPERTIES_MAX).
void GetCompositeInfo (::fidl::InterfaceRequest< ::fuchsia::driver::development::CompositeInfoIterator> iterator)
Returns the list of composites in the system. This includes composites
that are not yet assembled and added into the node topology.
void GetDriverHostInfo (::fidl::InterfaceRequest< ::fuchsia::driver::development::DriverHostInfoIterator> iterator)
Returns a list of all driver hosts that are known to the system.
void RestartDriverHosts (::std::string driver_url, ::fuchsia::driver::development::RestartRematchFlags rematch_flags, RestartDriverHostsCallback callback)
Restarts all driver hosts containing the driver specified by the `driver_url`,
and returns the number of driver hosts that were restarted.
The |rematch_flags| will be used to decide for which restarting nodes the existing driver
should be bound vs. for which ones the matching process should be performed again.
void DisableDriver (::std::string driver_url, ::fidl::StringPtr package_hash, DisableDriverCallback callback)
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 (::std::string driver_url, ::fidl::StringPtr package_hash, EnableDriverCallback callback)
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 BindAllUnboundNodes (BindAllUnboundNodesCallback callback)
Attempts to bind all unbound nodes in the topology.
Returns new successful binds.
void BindAllUnboundNodes2 (BindAllUnboundNodes2Callback callback)
Attempts to bind all unbound nodes in the topology.
Returns new successful binds.
void AddTestNode (::fuchsia::driver::development::TestNodeAddArgs args, AddTestNodeCallback callback)
Adds test node under the root node.
void RemoveTestNode (::std::string name, RemoveTestNodeCallback callback)
Removes the test node. The node is removed asynchronously and is
not guaranteed to be removed by the time this returns.
void WaitForBootup (WaitForBootupCallback callback)
Waits for bootup to complete.
void RestartWithDictionary (::std::string moniker, ::fuchsia::component::sandbox::DictionaryRef dictionary, RestartWithDictionaryCallback callback)
Restarts the driver components bound to the nodes identified in |node_ids|,
providing them with the given dictionary. All child nodes are also restarted
and provided with this dictionary. This operation is temporary and
is reversed by releasing the |release_fence| that is returned.
void RebindCompositesWithDriver (::std::string driver_url, RebindCompositesWithDriverCallback callback)
Rebinds any composites and 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, and any active nodes created from this spec are removed and re-bound.
Returns the number of affected composite nodes.
Protected Methods
void handle_unknown_method (uint64_t ordinal, bool method_has_response)
Friends
class Manager_Stub