pub struct ControllerProxy { /* private fields */ }
Implementations§
source§impl ControllerProxy
impl ControllerProxy
sourcepub fn new(channel: AsyncChannel) -> Self
pub fn new(channel: AsyncChannel) -> Self
Create a new Proxy for fuchsia.bluetooth.avrcp/Controller.
sourcepub fn take_event_stream(&self) -> ControllerEventStream
pub fn take_event_stream(&self) -> ControllerEventStream
Get a Stream of events from the remote end of the protocol.
§Panics
Panics if the event stream was already taken.
sourcepub fn get_player_application_settings(
&self,
attribute_ids: &[PlayerApplicationSettingAttributeId]
) -> QueryResponseFut<ControllerGetPlayerApplicationSettingsResult>
pub fn get_player_application_settings( &self, attribute_ids: &[PlayerApplicationSettingAttributeId] ) -> QueryResponseFut<ControllerGetPlayerApplicationSettingsResult>
Returns currently set player application setting values for the attribute_ids
.
If no attribute_ids
are provided, this method will query the TG for all valid
attribute ID’s, and return the currently set player application setting values.
sourcepub fn set_player_application_settings(
&self,
requested_settings: &PlayerApplicationSettings
) -> QueryResponseFut<ControllerSetPlayerApplicationSettingsResult>
pub fn set_player_application_settings( &self, requested_settings: &PlayerApplicationSettings ) -> QueryResponseFut<ControllerSetPlayerApplicationSettingsResult>
Sets the player application settings specified by requested_settings
. Only
settings specified in the input requested_settings
will be overwritten.
Returns the actual settings that were set.
Settings provided in the requested_settings
that are unsupported or unknown
will not be set; the returned set_settings
will include only the settings
that were successfully set on the remote target.
sourcepub fn get_media_attributes(
&self
) -> QueryResponseFut<ControllerGetMediaAttributesResult>
pub fn get_media_attributes( &self ) -> QueryResponseFut<ControllerGetMediaAttributesResult>
Returns the currently playing media attributes. May send either the GetElementAttributes or GetItemAttributes command depending on what is supported.
sourcepub fn get_play_status(&self) -> QueryResponseFut<ControllerGetPlayStatusResult>
pub fn get_play_status(&self) -> QueryResponseFut<ControllerGetPlayStatusResult>
Returns the status of the currently playing media.
sourcepub fn set_absolute_volume(
&self,
requested_volume: u8
) -> QueryResponseFut<ControllerSetAbsoluteVolumeResult>
pub fn set_absolute_volume( &self, requested_volume: u8 ) -> QueryResponseFut<ControllerSetAbsoluteVolumeResult>
Request the absolute volume on the peer be changed. Returns the actual volume set by the peer. Values can range from 0x00 to 0x7F (with 100% volume being 0x7F). You may not get a volume changed notification event from the remote peer as result of changing this.
sourcepub fn inform_battery_status(
&self,
battery_status: BatteryStatus
) -> QueryResponseFut<ControllerInformBatteryStatusResult>
pub fn inform_battery_status( &self, battery_status: BatteryStatus ) -> QueryResponseFut<ControllerInformBatteryStatusResult>
Inform target of the controller’s battery level.
sourcepub fn set_notification_filter(
&self,
notifications: Notifications,
position_change_interval: u32
) -> Result<(), Error>
pub fn set_notification_filter( &self, notifications: Notifications, position_change_interval: u32 ) -> Result<(), Error>
Filters notifications that will be received with [OnNotification
]. Not all notifications
are supported by all peers. Resetting the notification filter may trigger all requested
notification types to post their current value to [OnNotification
] immediately.
The position_change_interval
argument is used to set the interval in seconds that the
controller client would like to be notified of TRACK_POS_CHANGED
events.
position_change_interval
is ignored if TRACK_POS
is not set. The position change interval
is best effort and not a guarantee and events may arrive more frequently or less frequently
than requested.
sourcepub fn notify_notification_handled(&self) -> Result<(), Error>
pub fn notify_notification_handled(&self) -> Result<(), Error>
Call to acknowledge handling of a notification from [OnNotification
].
sourcepub fn set_addressed_player(
&self,
player_id: u16
) -> QueryResponseFut<ControllerSetAddressedPlayerResult>
pub fn set_addressed_player( &self, player_id: u16 ) -> QueryResponseFut<ControllerSetAddressedPlayerResult>
Changes the addressed player_id
on the target when multiple are supported.
sourcepub fn send_command(
&self,
command: AvcPanelCommand
) -> QueryResponseFut<ControllerSendCommandResult>
pub fn send_command( &self, command: AvcPanelCommand ) -> QueryResponseFut<ControllerSendCommandResult>
Send an AV\C passthrough key command. Sends both a key down and key up event.
Trait Implementations§
source§impl Clone for ControllerProxy
impl Clone for ControllerProxy
source§fn clone(&self) -> ControllerProxy
fn clone(&self) -> ControllerProxy
1.0.0 · source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
source
. Read moresource§impl ControllerProxyInterface for ControllerProxy
impl ControllerProxyInterface for ControllerProxy
type GetPlayerApplicationSettingsResponseFut = QueryResponseFut<Result<PlayerApplicationSettings, ControllerError>>
fn get_player_application_settings( &self, attribute_ids: &[PlayerApplicationSettingAttributeId] ) -> Self::GetPlayerApplicationSettingsResponseFut
type SetPlayerApplicationSettingsResponseFut = QueryResponseFut<Result<PlayerApplicationSettings, ControllerError>>
fn set_player_application_settings( &self, requested_settings: &PlayerApplicationSettings ) -> Self::SetPlayerApplicationSettingsResponseFut
type GetMediaAttributesResponseFut = QueryResponseFut<Result<MediaAttributes, ControllerError>>
fn get_media_attributes(&self) -> Self::GetMediaAttributesResponseFut
type GetPlayStatusResponseFut = QueryResponseFut<Result<PlayStatus, ControllerError>>
fn get_play_status(&self) -> Self::GetPlayStatusResponseFut
type SetAbsoluteVolumeResponseFut = QueryResponseFut<Result<u8, ControllerError>>
fn set_absolute_volume( &self, requested_volume: u8 ) -> Self::SetAbsoluteVolumeResponseFut
type InformBatteryStatusResponseFut = QueryResponseFut<Result<(), ControllerError>>
fn inform_battery_status( &self, battery_status: BatteryStatus ) -> Self::InformBatteryStatusResponseFut
fn set_notification_filter( &self, notifications: Notifications, position_change_interval: u32 ) -> Result<(), Error>
fn notify_notification_handled(&self) -> Result<(), Error>
type SetAddressedPlayerResponseFut = QueryResponseFut<Result<(), ControllerError>>
fn set_addressed_player( &self, player_id: u16 ) -> Self::SetAddressedPlayerResponseFut
type SendCommandResponseFut = QueryResponseFut<Result<(), ControllerError>>
fn send_command(&self, command: AvcPanelCommand) -> Self::SendCommandResponseFut
source§impl Debug for ControllerProxy
impl Debug for ControllerProxy
source§impl Proxy for ControllerProxy
impl Proxy for ControllerProxy
§type Protocol = ControllerMarker
type Protocol = ControllerMarker
Proxy
controls.