class ElementSchema

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

Passed to Topology.AddElement.

Public Members

static const fidl_type_t * FidlType

Public Methods

bool IsEmpty ()

Returns whether no field is set.

ElementSchema & set_element_name (::std::string _value)
ElementSchema & set_initial_current_level (uint8_t _value)
ElementSchema & set_valid_levels (::std::vector<uint8_t> _value)
ElementSchema & set_dependencies (::std::vector< ::fuchsia::power::broker::LevelDependency> _value)
ElementSchema & set_lessor_channel (::fidl::InterfaceRequest< ::fuchsia::power::broker::Lessor> _value)
ElementSchema & set_element_control (::fidl::InterfaceRequest< ::fuchsia::power::broker::ElementControl> _value)
ElementSchema & set_element_runner (::fidl::InterfaceHandle< ::fuchsia::power::broker::ElementRunner> _value)
void ElementSchema ()
void ElementSchema (ElementSchema && other)
void ~ElementSchema ()
ElementSchema & operator= (ElementSchema && other)
::std::unique_ptr<ElementSchema> New ()
void Encode (::fidl::Encoder * _encoder, size_t _offset, std::optional< ::fidl::HandleInformation> maybe_handle_info)
void Decode (::fidl::Decoder * _decoder, ElementSchema * _value, size_t _offset)
zx_status_t Clone (ElementSchema * _result)
const ::std::string & element_name ()

Human-readable name for logging and debug purposes.

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

bool has_element_name ()

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

::std::string * mutable_element_name ()

Human-readable name for logging and debug purposes.

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

void clear_element_name ()

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

const uint8_t & initial_current_level ()

The initial current power level of the element.

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

bool has_initial_current_level ()

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

uint8_t * mutable_initial_current_level ()

The initial current power level of the element.

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

void clear_initial_current_level ()

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

const ::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!)

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

bool has_valid_levels ()

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

::std::vector<uint8_t> * mutable_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!)

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

void clear_valid_levels ()

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

const ::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.

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

bool has_dependencies ()

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

::std::vector< ::fuchsia::power::broker::LevelDependency> * mutable_dependencies ()

List of dependencies for this element's power levels.

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

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

void clear_dependencies ()

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

const ::fidl::InterfaceRequest< ::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.

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

bool has_lessor_channel ()

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

::fidl::InterfaceRequest< ::fuchsia::power::broker::Lessor> * mutable_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.

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

void clear_lessor_channel ()

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

const ::fidl::InterfaceRequest< ::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.

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

bool has_element_control ()

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

::fidl::InterfaceRequest< ::fuchsia::power::broker::ElementControl> * mutable_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.

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

void clear_element_control ()

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

const ::fidl::InterfaceHandle< ::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.

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

bool has_element_runner ()

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

::fidl::InterfaceHandle< ::fuchsia::power::broker::ElementRunner> * mutable_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.

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

void clear_element_runner ()

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