template <typename BuilderImpl>

class WireTableBaseBuilder

Defined at line 518 of file fidling/gen/sdk/fidl/fuchsia.driver.test/fuchsia.driver.test/cpp/fidl/fuchsia.driver.test/cpp/wire_types.h

Public Methods

::fuchsia_driver_test::wire::RealmArgs Build ()

Build and return the table. The builder should not be used after this.

bool has_boot ()
void clear_boot ()

Clears the boot field.

This method should be used sparingly, such as only during tests, as it has

O(number_of_fields) complexity.

::fidl::ClientEnd< ::fuchsia_io::Directory> & boot ()

This is what DriverManager will see as its boot directory.

Default: DriverTestRealm's package directory

BuilderImpl & boot (::fidl::ClientEnd< ::fuchsia_io::Directory> elem)

This is what DriverManager will see as its boot directory.

Default: DriverTestRealm's package directory

bool has_root_driver ()
void clear_root_driver ()

Clears the root_driver field.

This method should be used sparingly, such as only during tests, as it has

O(number_of_fields) complexity.

::fidl::StringView & root_driver ()

The URL for the driver that will be bound to root.

Default: fuchsia-boot:///dtr#meta/test-parent-sys.cm

NOTE: The test parent driver is not included by default. This must

be included in your package to work correctly.

BuilderImpl & root_driver (Wrapper_Ignore_Me_< ::fidl::ObjectView< ::fidl::StringView>> elem)

The URL for the driver that will be bound to root.

Default: fuchsia-boot:///dtr#meta/test-parent-sys.cm

NOTE: The test parent driver is not included by default. This must

be included in your package to work correctly.

bool has_driver_tests_enable_all ()
void clear_driver_tests_enable_all ()

Clears the driver_tests_enable_all field.

This method should be used sparingly, such as only during tests, as it has

O(number_of_fields) complexity.

bool & driver_tests_enable_all ()

If this is true, then DriverManager will enable the unit tests

for each driver that is loaded.

Default: false

BuilderImpl & driver_tests_enable_all (bool elem)

If this is true, then DriverManager will enable the unit tests

for each driver that is loaded.

Default: false

bool has_driver_tests_enable ()
void clear_driver_tests_enable ()

Clears the driver_tests_enable field.

This method should be used sparingly, such as only during tests, as it has

O(number_of_fields) complexity.

::fidl::VectorView< ::fidl::StringView> & driver_tests_enable ()

If this is true, then DriverManager will enable the unit tests

for each driver in this vector.

Default: empty

BuilderImpl & driver_tests_enable (Wrapper_Ignore_Me_< ::fidl::ObjectView< ::fidl::VectorView< ::fidl::StringView>>> elem)

If this is true, then DriverManager will enable the unit tests

for each driver in this vector.

Default: empty

bool has_driver_tests_disable ()
void clear_driver_tests_disable ()

Clears the driver_tests_disable field.

This method should be used sparingly, such as only during tests, as it has

O(number_of_fields) complexity.

::fidl::VectorView< ::fidl::StringView> & driver_tests_disable ()

If this is true, then DriverManager will disable the unit tests

for each driver in this vector. This overrides both a specific

request for enabling a test and the 'driver_tests_enable_all'

parameter.

Default: empty

BuilderImpl & driver_tests_disable (Wrapper_Ignore_Me_< ::fidl::ObjectView< ::fidl::VectorView< ::fidl::StringView>>> elem)

If this is true, then DriverManager will disable the unit tests

for each driver in this vector. This overrides both a specific

request for enabling a test and the 'driver_tests_enable_all'

parameter.

Default: empty

bool has_driver_log_level ()
void clear_driver_log_level ()

Clears the driver_log_level field.

This method should be used sparingly, such as only during tests, as it has

O(number_of_fields) complexity.

::fidl::VectorView< ::fuchsia_driver_test::wire::DriverLog> & driver_log_level ()

Set a log level for the specific driver.

Default: Log levels are set to INFO

BuilderImpl & driver_log_level (Wrapper_Ignore_Me_< ::fidl::ObjectView< ::fidl::VectorView< ::fuchsia_driver_test::wire::DriverLog>>> elem)

Set a log level for the specific driver.

Default: Log levels are set to INFO

bool has_driver_disable ()
void clear_driver_disable ()

Clears the driver_disable field.

This method should be used sparingly, such as only during tests, as it has

O(number_of_fields) complexity.

::fidl::VectorView< ::fidl::StringView> & driver_disable ()

Disable specific drivers. These drivers will not be bound or loaded.

Default: empty

BuilderImpl & driver_disable (Wrapper_Ignore_Me_< ::fidl::ObjectView< ::fidl::VectorView< ::fidl::StringView>>> elem)

Disable specific drivers. These drivers will not be bound or loaded.

Default: empty

bool has_driver_bind_eager ()
void clear_driver_bind_eager ()

Clears the driver_bind_eager field.

This method should be used sparingly, such as only during tests, as it has

O(number_of_fields) complexity.

::fidl::VectorView< ::fidl::StringView> & driver_bind_eager ()

Specify drivers to bind 'eagerly'. This turns a driver that normally

binds as a fallback driver into a driver that will be bound normally.

Default: empty

BuilderImpl & driver_bind_eager (Wrapper_Ignore_Me_< ::fidl::ObjectView< ::fidl::VectorView< ::fidl::StringView>>> elem)

Specify drivers to bind 'eagerly'. This turns a driver that normally

binds as a fallback driver into a driver that will be bound normally.

Default: empty

bool has_board_name ()
void clear_board_name ()

Clears the board_name field.

This method should be used sparingly, such as only during tests, as it has

O(number_of_fields) complexity.

::fidl::StringView & board_name ()

Specify the board name that drivers are aware of.

Default: driver-integration-test

BuilderImpl & board_name (Wrapper_Ignore_Me_< ::fidl::ObjectView< ::fidl::StringView>> elem)

Specify the board name that drivers are aware of.

Default: driver-integration-test

bool has_offers ()
void clear_offers ()

Clears the offers field.

This method should be used sparingly, such as only during tests, as it has

O(number_of_fields) complexity.

::fidl::VectorView< ::fuchsia_driver_test::wire::Offer> & offers ()

DEPRECATED: Use dtr_offers.

Specify additional offers from the test to a driver collection

Default: empty

BuilderImpl & offers (Wrapper_Ignore_Me_< ::fidl::ObjectView< ::fidl::VectorView< ::fuchsia_driver_test::wire::Offer>>> elem)

DEPRECATED: Use dtr_offers.

Specify additional offers from the test to a driver collection

Default: empty

bool has_exposes ()
void clear_exposes ()

Clears the exposes field.

This method should be used sparingly, such as only during tests, as it has

O(number_of_fields) complexity.

::fidl::VectorView< ::fuchsia_driver_test::wire::Expose> & exposes ()

DEPRECATED: Use dtr_exposes.

Specify services to expose from the test to a driver collection

Default: empty

BuilderImpl & exposes (Wrapper_Ignore_Me_< ::fidl::ObjectView< ::fidl::VectorView< ::fuchsia_driver_test::wire::Expose>>> elem)

DEPRECATED: Use dtr_exposes.

Specify services to expose from the test to a driver collection

Default: empty

bool has_pkg ()
void clear_pkg ()

Clears the pkg field.

This method should be used sparingly, such as only during tests, as it has

O(number_of_fields) complexity.

::fidl::ClientEnd< ::fuchsia_io::Directory> & pkg ()

DEPRECATED: Use test_component to provide resolved test component.

The driver test realm can load drivers packaged with the test suite

through this directory. Note that this directory must be readable

and executable.

This can be used if the test suite needs to use some drivers packaged

with the DriverTestRealm in addition to drivers packaged with the test

suite. In that case, the user can leave RealmArgs::boot unset and use

RealmArgs::pkg and RealmArgs::driver_urls.

Drivers in this directory can be registered using the `driver_urls`

argument below.

Default: DriverTestRealm's package directory.

BuilderImpl & pkg (::fidl::ClientEnd< ::fuchsia_io::Directory> elem)

DEPRECATED: Use test_component to provide resolved test component.

The driver test realm can load drivers packaged with the test suite

through this directory. Note that this directory must be readable

and executable.

This can be used if the test suite needs to use some drivers packaged

with the DriverTestRealm in addition to drivers packaged with the test

suite. In that case, the user can leave RealmArgs::boot unset and use

RealmArgs::pkg and RealmArgs::driver_urls.

Drivers in this directory can be registered using the `driver_urls`

argument below.

Default: DriverTestRealm's package directory.

bool has_dtr_offers ()
void clear_dtr_offers ()

Clears the dtr_offers field.

This method should be used sparingly, such as only during tests, as it has

O(number_of_fields) complexity.

::fidl::VectorView< ::fuchsia_component_test::wire::Capability> & dtr_offers ()

Specify offers from the test to the driver test realm.

The driver test realm will forward these to the driver collections.

Default: empty

BuilderImpl & dtr_offers (Wrapper_Ignore_Me_< ::fidl::ObjectView< ::fidl::VectorView< ::fuchsia_component_test::wire::Capability>>> elem)

Specify offers from the test to the driver test realm.

The driver test realm will forward these to the driver collections.

Default: empty

bool has_dtr_exposes ()
void clear_dtr_exposes ()

Clears the dtr_exposes field.

This method should be used sparingly, such as only during tests, as it has

O(number_of_fields) complexity.

::fidl::VectorView< ::fuchsia_component_test::wire::Capability> & dtr_exposes ()

Specify exposes from the driver test realm to the test.

The driver test realm will forward these from the driver collections.

Default: empty

BuilderImpl & dtr_exposes (Wrapper_Ignore_Me_< ::fidl::ObjectView< ::fidl::VectorView< ::fuchsia_component_test::wire::Capability>>> elem)

Specify exposes from the driver test realm to the test.

The driver test realm will forward these from the driver collections.

Default: empty

bool has_test_component ()
void clear_test_component ()

Clears the test_component field.

This method should be used sparingly, such as only during tests, as it has

O(number_of_fields) complexity.

::fuchsia_component_resolution::wire::Component & test_component ()

The resolved component information of the test component that is starting

the driver test realm. This will be used to discover drivers that the test

wants to provide to the driver test realm. Drivers can be both in the test

component package, or a subpackage of the test component package.

By default all drivers discovered that don't also exist in the |boot| directory

will be considered to be base drivers.

Use |boot_driver_components| to provide a list of drivers that should be

boot drivers.

Default: empty

BuilderImpl & test_component (Wrapper_Ignore_Me_< ::fidl::ObjectView< ::fuchsia_component_resolution::wire::Component>> elem)

The resolved component information of the test component that is starting

the driver test realm. This will be used to discover drivers that the test

wants to provide to the driver test realm. Drivers can be both in the test

component package, or a subpackage of the test component package.

By default all drivers discovered that don't also exist in the |boot| directory

will be considered to be base drivers.

Use |boot_driver_components| to provide a list of drivers that should be

boot drivers.

Default: empty

bool has_driver_index_stop_timeout_millis ()
void clear_driver_index_stop_timeout_millis ()

Clears the driver_index_stop_timeout_millis field.

This method should be used sparingly, such as only during tests, as it has

O(number_of_fields) complexity.

int64_t & driver_index_stop_timeout_millis ()

How long the driver index waits idle before it saves state, escrows its handles

with the component framework, and shuts down.

Default: never shuts down

BuilderImpl & driver_index_stop_timeout_millis (Wrapper_Ignore_Me_< ::fidl::ObjectView<int64_t>> elem)

How long the driver index waits idle before it saves state, escrows its handles

with the component framework, and shuts down.

Default: never shuts down

bool has_software_devices ()
void clear_software_devices ()

Clears the software_devices field.

This method should be used sparingly, such as only during tests, as it has

O(number_of_fields) complexity.

::fidl::VectorView< ::fuchsia_driver_test::wire::SoftwareDevice> & software_devices ()

A list of software only devices that should be created. Typically this is used

to create fake hardware for tests. Devices will be spawned as platform devices

under the platform bus. Note that the platform bus must be the root driver for

this to do anything meaningful.

BuilderImpl & software_devices (Wrapper_Ignore_Me_< ::fidl::ObjectView< ::fidl::VectorView< ::fuchsia_driver_test::wire::SoftwareDevice>>> elem)

A list of software only devices that should be created. Typically this is used

to create fake hardware for tests. Devices will be spawned as platform devices

under the platform bus. Note that the platform bus must be the root driver for

this to do anything meaningful.

bool has_boot_driver_components ()
void clear_boot_driver_components ()

Clears the boot_driver_components field.

This method should be used sparingly, such as only during tests, as it has

O(number_of_fields) complexity.

::fidl::VectorView< ::fidl::StringView> & boot_driver_components ()

The list of driver component names that should be considered as boot drivers.

Boot drivers are started in the boot-drivers collection which has more

capabilities available to it.

Entries should be the component name (eg: "my_driver_component.cm").

Default: empty

BuilderImpl & boot_driver_components (Wrapper_Ignore_Me_< ::fidl::ObjectView< ::fidl::VectorView< ::fidl::StringView>>> elem)

The list of driver component names that should be considered as boot drivers.

Boot drivers are started in the boot-drivers collection which has more

capabilities available to it.

Entries should be the component name (eg: "my_driver_component.cm").

Default: empty

bool has_devicetree ()
void clear_devicetree ()

Clears the devicetree field.

This method should be used sparingly, such as only during tests, as it has

O(number_of_fields) complexity.

::zx::vmo & devicetree ()

Devicetree blob that should be handed to the board driver.

BuilderImpl & devicetree (::zx::vmo elem)

Devicetree blob that should be handed to the board driver.

bool has_platform_vid ()
void clear_platform_vid ()

Clears the platform_vid field.

This method should be used sparingly, such as only during tests, as it has

O(number_of_fields) complexity.

uint32_t & platform_vid ()

Platform Vendor ID which should be specified to the platform bus driver.

BuilderImpl & platform_vid (uint32_t elem)

Platform Vendor ID which should be specified to the platform bus driver.

bool has_platform_pid ()
void clear_platform_pid ()

Clears the platform_pid field.

This method should be used sparingly, such as only during tests, as it has

O(number_of_fields) complexity.

uint32_t & platform_pid ()

Platform ID which should be specified to the platform bus driver.

BuilderImpl & platform_pid (uint32_t elem)

Platform ID which should be specified to the platform bus driver.

Protected Methods

void WireTableBaseBuilder< ::fuchsia_driver_test::wire::RealmArgs, BuilderImpl> (::fidl::ObjectView< ::fidl::WireTableFrame< ::fuchsia_driver_test::wire::RealmArgs>> && frame)

Records