class ElementSchema

Defined at line 321 of file fidling/gen/sdk/fidl/fuchsia.power.broker/fuchsia.power.broker/cpp/fidl/fuchsia.power.broker/cpp/natural_types.h

Passed to Topology.AddElement.

Public Methods

void ElementSchema (Storage_ storage)
void ElementSchema ()

Defined at line 327 of file fidling/gen/sdk/fidl/fuchsia.power.broker/fuchsia.power.broker/cpp/fidl/fuchsia.power.broker/cpp/natural_types.h

void ElementSchema (ElementSchema && )

Defined at line 328 of file fidling/gen/sdk/fidl/fuchsia.power.broker/fuchsia.power.broker/cpp/fidl/fuchsia.power.broker/cpp/natural_types.h

bool IsEmpty ()
const std::optional< ::std::string> & element_name ()

Human-readable name for logging and debug purposes.

::std::optional< ::std::string> & element_name ()

Human-readable name for logging and debug purposes.

ElementSchema & element_name (std::optional< ::std::string> value)

Human-readable name for logging and debug purposes.

const std::optional<uint8_t> & initial_current_level ()

The initial current power level of the element.

::std::optional<uint8_t> & initial_current_level ()

The initial current power level of the element.

ElementSchema & initial_current_level (std::optional<uint8_t> value)

The initial current power level of the element.

ElementSchema & operator= (ElementSchema && )

Defined at line 329 of file fidling/gen/sdk/fidl/fuchsia.power.broker/fuchsia.power.broker/cpp/fidl/fuchsia.power.broker/cpp/natural_types.h

const std::optional< ::std::vector<uint8_t>> & valid_levels ()

All power levels that are valid for this element. Any level not

specified here will be treated as invalid.

Levels must be listed in ascending order from low to high. Note, levels are enums and their

integer values do not have an inherent meaning. For example, *theoretically* a binary

(off, on) could be represented with (0, 1), (1, 0), (17, 19) or any combination of two

two numbers. (But please use BinaryPowerLevel above!)

::std::optional< ::std::vector<uint8_t>> & valid_levels ()

All power levels that are valid for this element. Any level not

specified here will be treated as invalid.

Levels must be listed in ascending order from low to high. Note, levels are enums and their

integer values do not have an inherent meaning. For example, *theoretically* a binary

(off, on) could be represented with (0, 1), (1, 0), (17, 19) or any combination of two

two numbers. (But please use BinaryPowerLevel above!)

ElementSchema & valid_levels (std::optional< ::std::vector<uint8_t>> value)

All power levels that are valid for this element. Any level not

specified here will be treated as invalid.

Levels must be listed in ascending order from low to high. Note, levels are enums and their

integer values do not have an inherent meaning. For example, *theoretically* a binary

(off, on) could be represented with (0, 1), (1, 0), (17, 19) or any combination of two

two numbers. (But please use BinaryPowerLevel above!)

const std::optional< ::std::vector< ::fuchsia_power_broker::LevelDependency>> & dependencies ()

List of dependencies for this element's power levels.

Note: dependencies UPON this element's levels cannot be added here.

::std::optional< ::std::vector< ::fuchsia_power_broker::LevelDependency>> & dependencies ()

List of dependencies for this element's power levels.

Note: dependencies UPON this element's levels cannot be added here.

ElementSchema & dependencies (std::optional< ::std::vector< ::fuchsia_power_broker::LevelDependency>> value)

List of dependencies for this element's power levels.

Note: dependencies UPON this element's levels cannot be added here.

const std::optional< ::fidl::ServerEnd< ::fuchsia_power_broker::Lessor>> & lessor_channel ()

REMOVED: 7: level_control_channels, use `element_runner` instead (see below).

Optional. If passed, Leases for this element can be requested via this

channel.

::std::optional< ::fidl::ServerEnd< ::fuchsia_power_broker::Lessor>> & lessor_channel ()

REMOVED: 7: level_control_channels, use `element_runner` instead (see below).

Optional. If passed, Leases for this element can be requested via this

channel.

ElementSchema & lessor_channel (std::optional< ::fidl::ServerEnd< ::fuchsia_power_broker::Lessor>> value)

REMOVED: 7: level_control_channels, use `element_runner` instead (see below).

Optional. If passed, Leases for this element can be requested via this

channel.

const std::optional< ::fidl::ServerEnd< ::fuchsia_power_broker::ElementControl>> & element_control ()

Caller-provided ElementControl channel to be passed to Power Broker.

When this channel is dropped, the element will be removed from the

topology. All channels associated with this element will be

closed and all tokens registered to this element will be

unregistered.

::std::optional< ::fidl::ServerEnd< ::fuchsia_power_broker::ElementControl>> & element_control ()

Caller-provided ElementControl channel to be passed to Power Broker.

When this channel is dropped, the element will be removed from the

topology. All channels associated with this element will be

closed and all tokens registered to this element will be

unregistered.

ElementSchema & element_control (std::optional< ::fidl::ServerEnd< ::fuchsia_power_broker::ElementControl>> value)

Caller-provided ElementControl channel to be passed to Power Broker.

When this channel is dropped, the element will be removed from the

topology. All channels associated with this element will be

closed and all tokens registered to this element will be

unregistered.

const std::optional< ::fidl::ClientEnd< ::fuchsia_power_broker::ElementRunner>> & element_runner ()

The client-end that Power Broker should use to set the power level of this element.

The server_end of this should be retained and the ElementRunner

protocol implemented by the element's runner.

::std::optional< ::fidl::ClientEnd< ::fuchsia_power_broker::ElementRunner>> & element_runner ()

The client-end that Power Broker should use to set the power level of this element.

The server_end of this should be retained and the ElementRunner

protocol implemented by the element's runner.

ElementSchema & element_runner (std::optional< ::fidl::ClientEnd< ::fuchsia_power_broker::ElementRunner>> value)

The client-end that Power Broker should use to set the power level of this element.

The server_end of this should be retained and the ElementRunner

protocol implemented by the element's runner.

void ElementSchema (::fidl::internal::DefaultConstructPossiblyInvalidObjectTag )

Friends

class MemberVisitor
class NaturalTableCodingTraits