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.