pub trait IMMNotificationClient_Impl: Sized {
    // Required methods
    fn OnDeviceStateChanged(
        &self,
        pwstrdeviceid: &PCWSTR,
        dwnewstate: DEVICE_STATE
    ) -> Result<()>;
    fn OnDeviceAdded(&self, pwstrdeviceid: &PCWSTR) -> Result<()>;
    fn OnDeviceRemoved(&self, pwstrdeviceid: &PCWSTR) -> Result<()>;
    fn OnDefaultDeviceChanged(
        &self,
        flow: EDataFlow,
        role: ERole,
        pwstrdefaultdeviceid: &PCWSTR
    ) -> Result<()>;
    fn OnPropertyValueChanged(
        &self,
        pwstrdeviceid: &PCWSTR,
        key: &PROPERTYKEY
    ) -> Result<()>;
}

Required Methods§

fn OnDeviceStateChanged( &self, pwstrdeviceid: &PCWSTR, dwnewstate: DEVICE_STATE ) -> Result<()>

fn OnDeviceAdded(&self, pwstrdeviceid: &PCWSTR) -> Result<()>

fn OnDeviceRemoved(&self, pwstrdeviceid: &PCWSTR) -> Result<()>

fn OnDefaultDeviceChanged( &self, flow: EDataFlow, role: ERole, pwstrdefaultdeviceid: &PCWSTR ) -> Result<()>

fn OnPropertyValueChanged( &self, pwstrdeviceid: &PCWSTR, key: &PROPERTYKEY ) -> Result<()>

Object Safety§

This trait is not object safe.

Implementors§