windows::Win32::Devices::ImageAcquisition

Trait IWiaDevMgr_Impl

pub trait IWiaDevMgr_Impl: IUnknownImpl {
    // Required methods
    fn EnumDeviceInfo(&self, lflag: i32) -> Result<IEnumWIA_DEV_INFO>;
    fn CreateDevice(&self, bstrdeviceid: &BSTR) -> Result<IWiaItem>;
    fn SelectDeviceDlg(
        &self,
        hwndparent: HWND,
        ldevicetype: i32,
        lflags: i32,
        pbstrdeviceid: *mut BSTR,
        ppitemroot: OutRef<'_, IWiaItem>,
    ) -> Result<()>;
    fn SelectDeviceDlgID(
        &self,
        hwndparent: HWND,
        ldevicetype: i32,
        lflags: i32,
        pbstrdeviceid: *mut BSTR,
    ) -> Result<()>;
    fn GetImageDlg(
        &self,
        hwndparent: HWND,
        ldevicetype: i32,
        lflags: i32,
        lintent: i32,
        pitemroot: Ref<'_, IWiaItem>,
        bstrfilename: &BSTR,
        pguidformat: *mut GUID,
    ) -> Result<()>;
    fn RegisterEventCallbackProgram(
        &self,
        lflags: i32,
        bstrdeviceid: &BSTR,
        peventguid: *const GUID,
        bstrcommandline: &BSTR,
        bstrname: &BSTR,
        bstrdescription: &BSTR,
        bstricon: &BSTR,
    ) -> Result<()>;
    fn RegisterEventCallbackInterface(
        &self,
        lflags: i32,
        bstrdeviceid: &BSTR,
        peventguid: *const GUID,
        piwiaeventcallback: Ref<'_, IWiaEventCallback>,
    ) -> Result<IUnknown>;
    fn RegisterEventCallbackCLSID(
        &self,
        lflags: i32,
        bstrdeviceid: &BSTR,
        peventguid: *const GUID,
        pclsid: *const GUID,
        bstrname: &BSTR,
        bstrdescription: &BSTR,
        bstricon: &BSTR,
    ) -> Result<()>;
    fn AddDeviceDlg(&self, hwndparent: HWND, lflags: i32) -> Result<()>;
}

Required Methods§

fn EnumDeviceInfo(&self, lflag: i32) -> Result<IEnumWIA_DEV_INFO>

fn CreateDevice(&self, bstrdeviceid: &BSTR) -> Result<IWiaItem>

fn SelectDeviceDlg( &self, hwndparent: HWND, ldevicetype: i32, lflags: i32, pbstrdeviceid: *mut BSTR, ppitemroot: OutRef<'_, IWiaItem>, ) -> Result<()>

fn SelectDeviceDlgID( &self, hwndparent: HWND, ldevicetype: i32, lflags: i32, pbstrdeviceid: *mut BSTR, ) -> Result<()>

fn GetImageDlg( &self, hwndparent: HWND, ldevicetype: i32, lflags: i32, lintent: i32, pitemroot: Ref<'_, IWiaItem>, bstrfilename: &BSTR, pguidformat: *mut GUID, ) -> Result<()>

fn RegisterEventCallbackProgram( &self, lflags: i32, bstrdeviceid: &BSTR, peventguid: *const GUID, bstrcommandline: &BSTR, bstrname: &BSTR, bstrdescription: &BSTR, bstricon: &BSTR, ) -> Result<()>

fn RegisterEventCallbackInterface( &self, lflags: i32, bstrdeviceid: &BSTR, peventguid: *const GUID, piwiaeventcallback: Ref<'_, IWiaEventCallback>, ) -> Result<IUnknown>

fn RegisterEventCallbackCLSID( &self, lflags: i32, bstrdeviceid: &BSTR, peventguid: *const GUID, pclsid: *const GUID, bstrname: &BSTR, bstrdescription: &BSTR, bstricon: &BSTR, ) -> Result<()>

fn AddDeviceDlg(&self, hwndparent: HWND, lflags: i32) -> Result<()>

Dyn Compatibility§

This trait is not dyn compatible.

In older versions of Rust, dyn compatibility was called "object safety", so this trait is not object safe.

Implementors§