pub trait AudioDeviceEnumeratorProxyInterface: Send + Sync {
type GetDevicesResponseFut: Future<Output = Result<Vec<AudioDeviceInfo>, Error>> + Send;
type GetDeviceGainResponseFut: Future<Output = Result<(u64, AudioGainInfo), Error>> + Send;
// Required methods
fn get_devices(&self) -> Self::GetDevicesResponseFut;
fn get_device_gain(
&self,
device_token: u64,
) -> Self::GetDeviceGainResponseFut;
fn set_device_gain(
&self,
device_token: u64,
gain_info: &AudioGainInfo,
valid_flags: AudioGainValidFlags,
) -> Result<(), Error>;
fn add_device_by_channel(
&self,
device_name: &str,
is_input: bool,
channel: ClientEnd<StreamConfigMarker>,
) -> Result<(), Error>;
}Required Associated Types§
type GetDevicesResponseFut: Future<Output = Result<Vec<AudioDeviceInfo>, Error>> + Send
type GetDeviceGainResponseFut: Future<Output = Result<(u64, AudioGainInfo), Error>> + Send
Required Methods§
fn get_devices(&self) -> Self::GetDevicesResponseFut
fn get_device_gain(&self, device_token: u64) -> Self::GetDeviceGainResponseFut
fn set_device_gain( &self, device_token: u64, gain_info: &AudioGainInfo, valid_flags: AudioGainValidFlags, ) -> Result<(), Error>
fn add_device_by_channel( &self, device_name: &str, is_input: bool, channel: ClientEnd<StreamConfigMarker>, ) -> Result<(), Error>
Dyn Compatibility§
This trait is dyn compatible.
In older versions of Rust, dyn compatibility was called "object safety".