class DriverStartArgs
Defined at line 3411 of file fidling/gen/sdk/fidl/fuchsia.driver.framework/fuchsia.driver.framework/hlcpp/fuchsia/driver/framework/cpp/fidl.h
Arguments for starting a driver.
Public Members
static const fidl_type_t * FidlType
Public Methods
bool IsEmpty ()
Returns whether no field is set.
void DriverStartArgs ()
void DriverStartArgs (DriverStartArgs && other)
const ::fidl::InterfaceHandle< ::fuchsia::driver::framework::Node> & node ()
Node that the driver is bound to.
Defined at line 3418 of file fidling/gen/sdk/fidl/fuchsia.driver.framework/fuchsia.driver.framework/hlcpp/fuchsia/driver/framework/cpp/fidl.h
bool has_node ()
Defined at line 3422 of file fidling/gen/sdk/fidl/fuchsia.driver.framework/fuchsia.driver.framework/hlcpp/fuchsia/driver/framework/cpp/fidl.h
::fidl::InterfaceHandle< ::fuchsia::driver::framework::Node> * mutable_node ()
Node that the driver is bound to.
Defined at line 3427 of file fidling/gen/sdk/fidl/fuchsia.driver.framework/fuchsia.driver.framework/hlcpp/fuchsia/driver/framework/cpp/fidl.h
void clear_node ()
Defined at line 3435 of file fidling/gen/sdk/fidl/fuchsia.driver.framework/fuchsia.driver.framework/hlcpp/fuchsia/driver/framework/cpp/fidl.h
void clear_symbols ()
Defined at line 3465 of file fidling/gen/sdk/fidl/fuchsia.driver.framework/fuchsia.driver.framework/hlcpp/fuchsia/driver/framework/cpp/fidl.h
const ::std::vector< ::fuchsia::component::runner::ComponentNamespaceEntry> & incoming ()
Incoming namespace provided to the driver.
Defined at line 3556 of file fidling/gen/sdk/fidl/fuchsia.driver.framework/fuchsia.driver.framework/hlcpp/fuchsia/driver/framework/cpp/fidl.h
bool has_incoming ()
Defined at line 3560 of file fidling/gen/sdk/fidl/fuchsia.driver.framework/fuchsia.driver.framework/hlcpp/fuchsia/driver/framework/cpp/fidl.h
::std::vector< ::fuchsia::component::runner::ComponentNamespaceEntry> * mutable_incoming ()
Incoming namespace provided to the driver.
Defined at line 3565 of file fidling/gen/sdk/fidl/fuchsia.driver.framework/fuchsia.driver.framework/hlcpp/fuchsia/driver/framework/cpp/fidl.h
void clear_incoming ()
Defined at line 3573 of file fidling/gen/sdk/fidl/fuchsia.driver.framework/fuchsia.driver.framework/hlcpp/fuchsia/driver/framework/cpp/fidl.h
const ::fidl::InterfaceRequest< ::fuchsia::io::Directory> & outgoing_dir ()
Outgoing directory served by the driver.
Defined at line 3582 of file fidling/gen/sdk/fidl/fuchsia.driver.framework/fuchsia.driver.framework/hlcpp/fuchsia/driver/framework/cpp/fidl.h
bool has_outgoing_dir ()
Defined at line 3586 of file fidling/gen/sdk/fidl/fuchsia.driver.framework/fuchsia.driver.framework/hlcpp/fuchsia/driver/framework/cpp/fidl.h
::fidl::InterfaceRequest< ::fuchsia::io::Directory> * mutable_outgoing_dir ()
Outgoing directory served by the driver.
Defined at line 3591 of file fidling/gen/sdk/fidl/fuchsia.driver.framework/fuchsia.driver.framework/hlcpp/fuchsia/driver/framework/cpp/fidl.h
void clear_outgoing_dir ()
Defined at line 3599 of file fidling/gen/sdk/fidl/fuchsia.driver.framework/fuchsia.driver.framework/hlcpp/fuchsia/driver/framework/cpp/fidl.h
const ::zx::vmo & config ()
Configuration passed to the driver.
Defined at line 3608 of file fidling/gen/sdk/fidl/fuchsia.driver.framework/fuchsia.driver.framework/hlcpp/fuchsia/driver/framework/cpp/fidl.h
bool has_config ()
Defined at line 3612 of file fidling/gen/sdk/fidl/fuchsia.driver.framework/fuchsia.driver.framework/hlcpp/fuchsia/driver/framework/cpp/fidl.h
::zx::vmo * mutable_config ()
Configuration passed to the driver.
Defined at line 3617 of file fidling/gen/sdk/fidl/fuchsia.driver.framework/fuchsia.driver.framework/hlcpp/fuchsia/driver/framework/cpp/fidl.h
void clear_config ()
Defined at line 3625 of file fidling/gen/sdk/fidl/fuchsia.driver.framework/fuchsia.driver.framework/hlcpp/fuchsia/driver/framework/cpp/fidl.h
const ::std::string & node_name ()
The name of the node the driver is bound to.
Defined at line 3634 of file fidling/gen/sdk/fidl/fuchsia.driver.framework/fuchsia.driver.framework/hlcpp/fuchsia/driver/framework/cpp/fidl.h
bool has_node_name ()
Defined at line 3638 of file fidling/gen/sdk/fidl/fuchsia.driver.framework/fuchsia.driver.framework/hlcpp/fuchsia/driver/framework/cpp/fidl.h
::std::string * mutable_node_name ()
The name of the node the driver is bound to.
Defined at line 3643 of file fidling/gen/sdk/fidl/fuchsia.driver.framework/fuchsia.driver.framework/hlcpp/fuchsia/driver/framework/cpp/fidl.h
void clear_node_name ()
Defined at line 3651 of file fidling/gen/sdk/fidl/fuchsia.driver.framework/fuchsia.driver.framework/hlcpp/fuchsia/driver/framework/cpp/fidl.h
const ::std::vector< ::fuchsia::driver::framework::NodePropertyEntry> & node_properties ()
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.
Defined at line 3667 of file fidling/gen/sdk/fidl/fuchsia.driver.framework/fuchsia.driver.framework/hlcpp/fuchsia/driver/framework/cpp/fidl.h
bool has_node_properties ()
Defined at line 3671 of file fidling/gen/sdk/fidl/fuchsia.driver.framework/fuchsia.driver.framework/hlcpp/fuchsia/driver/framework/cpp/fidl.h
::std::vector< ::fuchsia::driver::framework::NodePropertyEntry> * mutable_node_properties ()
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.
Defined at line 3683 of file fidling/gen/sdk/fidl/fuchsia.driver.framework/fuchsia.driver.framework/hlcpp/fuchsia/driver/framework/cpp/fidl.h
void clear_node_properties ()
Defined at line 3691 of file fidling/gen/sdk/fidl/fuchsia.driver.framework/fuchsia.driver.framework/hlcpp/fuchsia/driver/framework/cpp/fidl.h
const ::std::vector< ::fuchsia::driver::framework::Offer> & node_offers ()
Node offers of the node the driver is bound to.
Defined at line 3700 of file fidling/gen/sdk/fidl/fuchsia.driver.framework/fuchsia.driver.framework/hlcpp/fuchsia/driver/framework/cpp/fidl.h
bool has_node_offers ()
Defined at line 3704 of file fidling/gen/sdk/fidl/fuchsia.driver.framework/fuchsia.driver.framework/hlcpp/fuchsia/driver/framework/cpp/fidl.h
::std::vector< ::fuchsia::driver::framework::Offer> * mutable_node_offers ()
Node offers of the node the driver is bound to.
Defined at line 3709 of file fidling/gen/sdk/fidl/fuchsia.driver.framework/fuchsia.driver.framework/hlcpp/fuchsia/driver/framework/cpp/fidl.h
void clear_node_offers ()
Defined at line 3717 of file fidling/gen/sdk/fidl/fuchsia.driver.framework/fuchsia.driver.framework/hlcpp/fuchsia/driver/framework/cpp/fidl.h
const ::zx::event & node_token ()
Provides a token representing this node which can be exchanged with the
driver framework to discern additional information about this node.
Defined at line 3727 of file fidling/gen/sdk/fidl/fuchsia.driver.framework/fuchsia.driver.framework/hlcpp/fuchsia/driver/framework/cpp/fidl.h
bool has_node_token ()
Defined at line 3731 of file fidling/gen/sdk/fidl/fuchsia.driver.framework/fuchsia.driver.framework/hlcpp/fuchsia/driver/framework/cpp/fidl.h
::zx::event * mutable_node_token ()
Provides a token representing this node which can be exchanged with the
driver framework to discern additional information about this node.
Defined at line 3737 of file fidling/gen/sdk/fidl/fuchsia.driver.framework/fuchsia.driver.framework/hlcpp/fuchsia/driver/framework/cpp/fidl.h
void clear_node_token ()
Defined at line 3745 of file fidling/gen/sdk/fidl/fuchsia.driver.framework/fuchsia.driver.framework/hlcpp/fuchsia/driver/framework/cpp/fidl.h
const ::std::vector< ::fuchsia::driver::framework::NodePropertyEntry2> & node_properties_2 ()
Defined at line 3753 of file fidling/gen/sdk/fidl/fuchsia.driver.framework/fuchsia.driver.framework/hlcpp/fuchsia/driver/framework/cpp/fidl.h
bool has_node_properties_2 ()
Defined at line 3757 of file fidling/gen/sdk/fidl/fuchsia.driver.framework/fuchsia.driver.framework/hlcpp/fuchsia/driver/framework/cpp/fidl.h
::std::vector< ::fuchsia::driver::framework::NodePropertyEntry2> * mutable_node_properties_2 ()
Defined at line 3761 of file fidling/gen/sdk/fidl/fuchsia.driver.framework/fuchsia.driver.framework/hlcpp/fuchsia/driver/framework/cpp/fidl.h
void clear_node_properties_2 ()
Defined at line 3769 of file fidling/gen/sdk/fidl/fuchsia.driver.framework/fuchsia.driver.framework/hlcpp/fuchsia/driver/framework/cpp/fidl.h
::zx::vmar * mutable_vmar ()
Root VMAR the driver is mapped into. All child mappings should be placed into this VMAR
if they want to have the same scheduler profile applied to them.
Defined at line 3789 of file fidling/gen/sdk/fidl/fuchsia.driver.framework/fuchsia.driver.framework/hlcpp/fuchsia/driver/framework/cpp/fidl.h
void clear_vmar ()
Defined at line 3797 of file fidling/gen/sdk/fidl/fuchsia.driver.framework/fuchsia.driver.framework/hlcpp/fuchsia/driver/framework/cpp/fidl.h
const ::fuchsia::driver::framework::PowerElementArgs & power_element_args ()
Handles related to the driver's power elements on products where suspend is enabled by the
`fuchsia.power.SuspendEnabled` config capability.
If the driver's manifest contains `suspend_enabled = "true"` in the program section of its
manifest, the `element_server`, `lessor_client`, and `token` are passed to the driver,
otherwise the handles are retained by the driver host. `control_client` is always retained
by the driver host and never passed to the driver.
Defined at line 3811 of file fidling/gen/sdk/fidl/fuchsia.driver.framework/fuchsia.driver.framework/hlcpp/fuchsia/driver/framework/cpp/fidl.h
bool has_power_element_args ()
Defined at line 3815 of file fidling/gen/sdk/fidl/fuchsia.driver.framework/fuchsia.driver.framework/hlcpp/fuchsia/driver/framework/cpp/fidl.h
::fuchsia::driver::framework::PowerElementArgs * mutable_power_element_args ()
Handles related to the driver's power elements on products where suspend is enabled by the
`fuchsia.power.SuspendEnabled` config capability.
If the driver's manifest contains `suspend_enabled = "true"` in the program section of its
manifest, the `element_server`, `lessor_client`, and `token` are passed to the driver,
otherwise the handles are retained by the driver host. `control_client` is always retained
by the driver host and never passed to the driver.
Defined at line 3825 of file fidling/gen/sdk/fidl/fuchsia.driver.framework/fuchsia.driver.framework/hlcpp/fuchsia/driver/framework/cpp/fidl.h
void clear_power_element_args ()
Defined at line 3833 of file fidling/gen/sdk/fidl/fuchsia.driver.framework/fuchsia.driver.framework/hlcpp/fuchsia/driver/framework/cpp/fidl.h
const ::fidl::InterfaceHandle< ::fuchsia::logger::LogSink> & log_sink ()
Log sink channel.
Defined at line 3842 of file fidling/gen/sdk/fidl/fuchsia.driver.framework/fuchsia.driver.framework/hlcpp/fuchsia/driver/framework/cpp/fidl.h
bool has_log_sink ()
Defined at line 3846 of file fidling/gen/sdk/fidl/fuchsia.driver.framework/fuchsia.driver.framework/hlcpp/fuchsia/driver/framework/cpp/fidl.h
::fidl::InterfaceHandle< ::fuchsia::logger::LogSink> * mutable_log_sink ()
Log sink channel.
Defined at line 3851 of file fidling/gen/sdk/fidl/fuchsia.driver.framework/fuchsia.driver.framework/hlcpp/fuchsia/driver/framework/cpp/fidl.h
void clear_log_sink ()
Defined at line 3859 of file fidling/gen/sdk/fidl/fuchsia.driver.framework/fuchsia.driver.framework/hlcpp/fuchsia/driver/framework/cpp/fidl.h
DriverStartArgs & set_node (::fidl::InterfaceHandle< ::fuchsia::driver::framework::Node> _value)
DriverStartArgs & set_incoming (::std::vector< ::fuchsia::component::runner::ComponentNamespaceEntry> _value)
DriverStartArgs & set_outgoing_dir (::fidl::InterfaceRequest< ::fuchsia::io::Directory> _value)
DriverStartArgs & set_config (::zx::vmo _value)
DriverStartArgs & set_node_name (::std::string _value)
DriverStartArgs & set_node_properties (::std::vector< ::fuchsia::driver::framework::NodePropertyEntry> _value)
DriverStartArgs & set_node_offers (::std::vector< ::fuchsia::driver::framework::Offer> _value)
DriverStartArgs & set_node_token (::zx::event _value)
DriverStartArgs & set_node_properties_2 (::std::vector< ::fuchsia::driver::framework::NodePropertyEntry2> _value)
DriverStartArgs & set_vmar (::zx::vmar _value)
DriverStartArgs & set_power_element_args (::fuchsia::driver::framework::PowerElementArgs _value)
DriverStartArgs & set_log_sink (::fidl::InterfaceHandle< ::fuchsia::logger::LogSink> _value)
const ::std::vector< ::fuchsia::driver::framework::NodeSymbol> & symbols ()
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.
Defined at line 3446 of file fidling/gen/sdk/fidl/fuchsia.driver.framework/fuchsia.driver.framework/hlcpp/fuchsia/driver/framework/cpp/fidl.h
bool has_symbols ()
Defined at line 3450 of file fidling/gen/sdk/fidl/fuchsia.driver.framework/fuchsia.driver.framework/hlcpp/fuchsia/driver/framework/cpp/fidl.h
::std::vector< ::fuchsia::driver::framework::NodeSymbol> * mutable_symbols ()
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.
Defined at line 3457 of file fidling/gen/sdk/fidl/fuchsia.driver.framework/fuchsia.driver.framework/hlcpp/fuchsia/driver/framework/cpp/fidl.h
DriverStartArgs & set_symbols (::std::vector< ::fuchsia::driver::framework::NodeSymbol> _value)
const ::std::string & url ()
URL of the package containing the driver. This is purely informational,
used only to provide data for inspect.
Defined at line 3475 of file fidling/gen/sdk/fidl/fuchsia.driver.framework/fuchsia.driver.framework/hlcpp/fuchsia/driver/framework/cpp/fidl.h
bool has_url ()
Defined at line 3479 of file fidling/gen/sdk/fidl/fuchsia.driver.framework/fuchsia.driver.framework/hlcpp/fuchsia/driver/framework/cpp/fidl.h
::std::string * mutable_url ()
URL of the package containing the driver. This is purely informational,
used only to provide data for inspect.
Defined at line 3485 of file fidling/gen/sdk/fidl/fuchsia.driver.framework/fuchsia.driver.framework/hlcpp/fuchsia/driver/framework/cpp/fidl.h
void clear_url ()
Defined at line 3493 of file fidling/gen/sdk/fidl/fuchsia.driver.framework/fuchsia.driver.framework/hlcpp/fuchsia/driver/framework/cpp/fidl.h
const ::fuchsia::data::Dictionary & program ()
Information about the driver to start. Currently, we support the
following entries:
1. "binary": a string containing the package-relative path to the
driver binary.
2. "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.
3. "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.
4. "default_dispatcher_scheduler_role" (optional): the scheduler role to
set for the default dispatcher created for the driver.
Defined at line 3516 of file fidling/gen/sdk/fidl/fuchsia.driver.framework/fuchsia.driver.framework/hlcpp/fuchsia/driver/framework/cpp/fidl.h
bool has_program ()
Defined at line 3520 of file fidling/gen/sdk/fidl/fuchsia.driver.framework/fuchsia.driver.framework/hlcpp/fuchsia/driver/framework/cpp/fidl.h
::fuchsia::data::Dictionary * mutable_program ()
Information about the driver to start. Currently, we support the
following entries:
1. "binary": a string containing the package-relative path to the
driver binary.
2. "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.
3. "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.
4. "default_dispatcher_scheduler_role" (optional): the scheduler role to
set for the default dispatcher created for the driver.
Defined at line 3539 of file fidling/gen/sdk/fidl/fuchsia.driver.framework/fuchsia.driver.framework/hlcpp/fuchsia/driver/framework/cpp/fidl.h
void clear_program ()
Defined at line 3547 of file fidling/gen/sdk/fidl/fuchsia.driver.framework/fuchsia.driver.framework/hlcpp/fuchsia/driver/framework/cpp/fidl.h
DriverStartArgs & set_url (::std::string _value)
DriverStartArgs & set_program (::fuchsia::data::Dictionary _value)
const ::zx::vmar & vmar ()
Root VMAR the driver is mapped into. All child mappings should be placed into this VMAR
if they want to have the same scheduler profile applied to them.
Defined at line 3779 of file fidling/gen/sdk/fidl/fuchsia.driver.framework/fuchsia.driver.framework/hlcpp/fuchsia/driver/framework/cpp/fidl.h
bool has_vmar ()
Defined at line 3783 of file fidling/gen/sdk/fidl/fuchsia.driver.framework/fuchsia.driver.framework/hlcpp/fuchsia/driver/framework/cpp/fidl.h
void ~DriverStartArgs ()
DriverStartArgs & operator= (DriverStartArgs && other)
::std::unique_ptr<DriverStartArgs> New ()
void Encode (::fidl::Encoder *_encoder,size_t_offset,std::optional< ::fidl::HandleInformation>maybe_handle_info)
void Decode (::fidl::Decoder *_decoder,DriverStartArgs *_value,size_t_offset)
zx_status_t Clone (DriverStartArgs * _result)