Trait DeviceObject

Source
pub unsafe trait DeviceObject: Any {
    // Required methods
    fn alto(&self) -> &Alto;
    fn specifier(&self) -> Option<&CStr>;
    fn as_raw(&self) -> *mut ALCdevice;
    fn is_extension_present(&self, _: Alc) -> bool;
    fn connected(&self) -> AltoResult<bool>;
    fn enumerate_soft_hrtfs(&self) -> Vec<CString>;
    fn soft_hrtf_status(&self) -> SoftHrtfStatus;
    fn soft_output_limiter(&self) -> bool;
    fn max_aux_sends(&self) -> ALCint;
    fn to_device(&self) -> Device;
}
Expand description

Common capabilities expoed by both real and loopback devices.

Required Methods§

Source

fn alto(&self) -> &Alto

AltoInner instance from which this device was opened.

Source

fn specifier(&self) -> Option<&CStr>

Specifier string used to open this device.

Source

fn as_raw(&self) -> *mut ALCdevice

Raw handle as exposed by OpenAL.

Source

fn is_extension_present(&self, _: Alc) -> bool

alcIsExtensionPresent()

Source

fn connected(&self) -> AltoResult<bool>

alcGetIntegerv(ALC_CONNECTED) Requires ALC_EXT_disconnect

Source

fn enumerate_soft_hrtfs(&self) -> Vec<CString>

alcGetStringiSOFT(ALC_HRTF_SPECIFIER_SOFT) Requires ALC_SOFT_HRTF

Source

fn soft_hrtf_status(&self) -> SoftHrtfStatus

alcGetIntegerv(ALC_HRTF_STATUS_SOFT) Requires ALC_SOFT_HRTF

Source

fn soft_output_limiter(&self) -> bool

alcGetIntegerv(ALC_OUTPUT_LIMITER_SOFT) Requires ALC_SOFT_output_limiter

Source

fn max_aux_sends(&self) -> ALCint

alcGetIntegerv(ALC_MAX_AUXILIARY_SENDS) Requires ALC_EXT_EFX

Source

fn to_device(&self) -> Device

Return a new handle to this device.

Trait Implementations§

Source§

impl PartialEq for dyn DeviceObject

Source§

fn eq(&self, other: &dyn DeviceObject) -> bool

Tests for self and other values to be equal, and is used by ==.
1.0.0 · Source§

fn ne(&self, other: &Rhs) -> bool

Tests for !=. The default implementation is almost always sufficient, and should not be overridden without very good reason.
Source§

impl Eq for dyn DeviceObject

Implementors§