pub struct DriverStartArgs {
pub node: Option<ClientEnd<NodeMarker>>,
pub symbols: Option<Vec<NodeSymbol>>,
pub url: Option<String>,
pub program: Option<Dictionary>,
pub incoming: Option<Vec<ComponentNamespaceEntry>>,
pub outgoing_dir: Option<ServerEnd<DirectoryMarker>>,
pub config: Option<Vmo>,
pub node_name: Option<String>,
pub node_properties: Option<Vec<NodePropertyEntry>>,
pub node_offers: Option<Vec<Offer>>,
pub node_token: Option<Event>,
pub node_properties_2: Option<Vec<NodePropertyEntry2>>,
/* private fields */
}
Expand description
Arguments for starting a driver.
Fields§
§node: Option<ClientEnd<NodeMarker>>
Node that the driver is bound to.
symbols: Option<Vec<NodeSymbol>>
Symbols provided to the driver, for |node|. These come from the driver that added |node|, and are filtered to the symbols requested in the bind program.
url: Option<String>
URL of the package containing the driver. This is purely informational, used only to provide data for inspect.
program: Option<Dictionary>
Information about the driver to start. Currently, we support the following entries:
- “binary”: a string containing the package-relative path to the driver binary.
- “colocate” (optional): a string containing “true” or “false” specifying whether the driver should be colocated in the same driver host as the driver that added |node|. If not specified, the driver will be launched in a new driver host.
- “default_dispatcher_opts” (optional): an array of strings specifying
the options for creating the default dispatcher. A string can be one
of the following:
allow_sync_calls
: allows synchronous calls to be done on the default dispatcher’s thread.
- “default_dispatcher_scheduler_role” (optional): the scheduler role to set for the default dispatcher created for the driver.
incoming: Option<Vec<ComponentNamespaceEntry>>
Incoming namespace provided to the driver.
outgoing_dir: Option<ServerEnd<DirectoryMarker>>
Outgoing directory served by the driver.
config: Option<Vmo>
Configuration passed to the driver.
node_name: Option<String>
The name of the node the driver is bound to.
node_properties: Option<Vec<NodePropertyEntry>>
Node properties of the node the driver is bound to. If the node is non-composite then the “default” entry will contain the node’s own properties. If the node is a composite then there is an entry for each of its parents and the “default” entry will reference the primary composite parent node’s properties. The composite parent node’s properties are those that were provided in the composite node specification and not the original properties of the parent.
node_offers: Option<Vec<Offer>>
Node offers of the node the driver is bound to.
node_token: Option<Event>
Provides a token representing this node which can be exchanged with the driver framework to discern additional information about this node.
node_properties_2: Option<Vec<NodePropertyEntry2>>
Trait Implementations§
Source§impl Debug for DriverStartArgs
impl Debug for DriverStartArgs
Source§impl Decode<DriverStartArgs, DefaultFuchsiaResourceDialect> for DriverStartArgs
impl Decode<DriverStartArgs, DefaultFuchsiaResourceDialect> for DriverStartArgs
Source§impl Default for DriverStartArgs
impl Default for DriverStartArgs
Source§fn default() -> DriverStartArgs
fn default() -> DriverStartArgs
Source§impl Encode<DriverStartArgs, DefaultFuchsiaResourceDialect> for &mut DriverStartArgs
impl Encode<DriverStartArgs, DefaultFuchsiaResourceDialect> for &mut DriverStartArgs
Source§impl PartialEq for DriverStartArgs
impl PartialEq for DriverStartArgs
Source§impl ResourceTypeMarker for DriverStartArgs
impl ResourceTypeMarker for DriverStartArgs
Source§type Borrowed<'a> = &'a mut DriverStartArgs
type Borrowed<'a> = &'a mut DriverStartArgs
Encode<Self>
type cheaply obtainable from &mut Self::Owned
. There are three cases: Read moreSource§fn take_or_borrow<'a>(
value: &'a mut <Self as TypeMarker>::Owned,
) -> Self::Borrowed<'a>
fn take_or_borrow<'a>( value: &'a mut <Self as TypeMarker>::Owned, ) -> Self::Borrowed<'a>
&mut Self::Owned
to Self::Borrowed
. For
HandleBased
types this is “take” (it returns an owned handle and
replaces value
with Handle::invalid
), and for all other types it is
“borrow” (just converts from one reference to another).Source§impl TypeMarker for DriverStartArgs
impl TypeMarker for DriverStartArgs
Source§type Owned = DriverStartArgs
type Owned = DriverStartArgs
Source§fn inline_align(_context: Context) -> usize
fn inline_align(_context: Context) -> usize
Source§fn inline_size(_context: Context) -> usize
fn inline_size(_context: Context) -> usize
inline_align
.§fn encode_is_copy() -> bool
fn encode_is_copy() -> bool
Self::Owned
matches the FIDL wire
format and encoding requires no validation. When true, we can optimize
encoding arrays and vectors of Self::Owned
to a single memcpy. Read more§fn decode_is_copy() -> bool
fn decode_is_copy() -> bool
Self::Owned
matches the FIDL wire
format and decoding requires no validation. When true, we can optimize
decoding arrays and vectors of Self::Owned
to a single memcpy.