class ElementControl

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

Provides element-scoped access to an element previously added via

Topology.AddElement.

Public Methods

void ~ElementControl ()
void OpenStatusChannel (::fidl::InterfaceRequest< ::fuchsia::power::broker::Status> status_channel)

Register a new Status channel on which Power Broker will send

read-only updates of the element's current power level. This method

is intended to allow element owners to give read-only access to the

element's current power level to clients by opening and transferring

this channel.

void RegisterDependencyToken (::zx::event token, RegisterDependencyTokenCallback callback)

Register a token which will permit the bearer to add either a

dependency upon this element.

void UnregisterDependencyToken (::zx::event token, UnregisterDependencyTokenCallback callback)

Unregister a token previously registered via RegisterDependencyToken.

void AddDependency (uint8_t dependent_level, ::zx::event requires_token, ::std::vector<uint8_t> requires_level_by_preference, AddDependencyCallback callback)

Add a new dependency to an existing element.

If any open leases would incorporate this dependency, the required

element and any transitively required elements must complete all

necessary transitions (via ElementRunner.SetLevel calls) before this

method will return.

Protected Methods

void handle_unknown_method (uint64_t ordinal, bool method_has_response)

Friends

class ElementControl_Stub