class DriverStartArgs
Defined at line 3016 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.
DriverStartArgs & set_node (::fidl::InterfaceHandle< ::fuchsia::driver::framework::Node> _value)
DriverStartArgs & set_symbols (::std::vector< ::fuchsia::driver::framework::NodeSymbol> _value)
DriverStartArgs & set_url (::std::string _value)
DriverStartArgs & set_program (::fuchsia::data::Dictionary _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)
void DriverStartArgs ()
void DriverStartArgs (DriverStartArgs && other)
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)
const ::fidl::InterfaceHandle< ::fuchsia::driver::framework::Node> & node ()
Node that the driver is bound to.
Defined at line 3023 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 3027 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 3032 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 3040 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::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 3051 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 3055 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 3062 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 3070 of file fidling/gen/sdk/fidl/fuchsia.driver.framework/fuchsia.driver.framework/hlcpp/fuchsia/driver/framework/cpp/fidl.h
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 3080 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 3084 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 3090 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 3098 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 3121 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 3125 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 3144 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 3152 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 3161 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 3165 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 3170 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 3178 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 3187 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 3191 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 3196 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 3204 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 3213 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 3217 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 3222 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 3230 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 3239 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 3243 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 3248 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 3256 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 3272 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 3276 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 3288 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 3296 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 3305 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 3309 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 3314 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 3322 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 3332 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 3336 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 3342 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 3350 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 3358 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 3362 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 3366 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 3374 of file fidling/gen/sdk/fidl/fuchsia.driver.framework/fuchsia.driver.framework/hlcpp/fuchsia/driver/framework/cpp/fidl.h
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 3384 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 3388 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 3394 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 3402 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 3416 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 3420 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 3430 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 3438 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 3447 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 3451 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 3456 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 3464 of file fidling/gen/sdk/fidl/fuchsia.driver.framework/fuchsia.driver.framework/hlcpp/fuchsia/driver/framework/cpp/fidl.h