Trait IWSDDeviceHost_Impl
pub trait IWSDDeviceHost_Impl: IUnknownImpl {
// Required methods
fn Init(
&self,
pszlocalid: &PCWSTR,
pcontext: Ref<'_, IWSDXMLContext>,
pphostaddresses: *const Option<IWSDAddress>,
dwhostaddresscount: u32,
) -> Result<()>;
fn Start(
&self,
ullinstanceid: u64,
pscopelist: *const WSD_URI_LIST,
pnotificationsink: Ref<'_, IWSDDeviceHostNotify>,
) -> Result<()>;
fn Stop(&self) -> Result<()>;
fn Terminate(&self) -> Result<()>;
fn RegisterPortType(&self, pporttype: *const WSD_PORT_TYPE) -> Result<()>;
fn SetMetadata(
&self,
pthismodelmetadata: *const WSD_THIS_MODEL_METADATA,
pthisdevicemetadata: *const WSD_THIS_DEVICE_METADATA,
phostmetadata: *const WSD_HOST_METADATA,
pcustommetadata: *const WSD_METADATA_SECTION_LIST,
) -> Result<()>;
fn RegisterService(
&self,
pszserviceid: &PCWSTR,
pservice: Ref<'_, IUnknown>,
) -> Result<()>;
fn RetireService(&self, pszserviceid: &PCWSTR) -> Result<()>;
fn AddDynamicService(
&self,
pszserviceid: &PCWSTR,
pszendpointaddress: &PCWSTR,
pporttype: *const WSD_PORT_TYPE,
pportname: *const WSDXML_NAME,
pany: *const WSDXML_ELEMENT,
pservice: Ref<'_, IUnknown>,
) -> Result<()>;
fn RemoveDynamicService(&self, pszserviceid: &PCWSTR) -> Result<()>;
fn SetServiceDiscoverable(
&self,
pszserviceid: &PCWSTR,
fdiscoverable: BOOL,
) -> Result<()>;
fn SignalEvent(
&self,
pszserviceid: &PCWSTR,
pbody: *const c_void,
poperation: *const WSD_OPERATION,
) -> Result<()>;
}
Required Methods§
fn Init( &self, pszlocalid: &PCWSTR, pcontext: Ref<'_, IWSDXMLContext>, pphostaddresses: *const Option<IWSDAddress>, dwhostaddresscount: u32, ) -> Result<()>
fn Start( &self, ullinstanceid: u64, pscopelist: *const WSD_URI_LIST, pnotificationsink: Ref<'_, IWSDDeviceHostNotify>, ) -> Result<()>
fn Stop(&self) -> Result<()>
fn Terminate(&self) -> Result<()>
fn RegisterPortType(&self, pporttype: *const WSD_PORT_TYPE) -> Result<()>
fn SetMetadata( &self, pthismodelmetadata: *const WSD_THIS_MODEL_METADATA, pthisdevicemetadata: *const WSD_THIS_DEVICE_METADATA, phostmetadata: *const WSD_HOST_METADATA, pcustommetadata: *const WSD_METADATA_SECTION_LIST, ) -> Result<()>
fn RegisterService( &self, pszserviceid: &PCWSTR, pservice: Ref<'_, IUnknown>, ) -> Result<()>
fn RetireService(&self, pszserviceid: &PCWSTR) -> Result<()>
fn AddDynamicService( &self, pszserviceid: &PCWSTR, pszendpointaddress: &PCWSTR, pporttype: *const WSD_PORT_TYPE, pportname: *const WSDXML_NAME, pany: *const WSDXML_ELEMENT, pservice: Ref<'_, IUnknown>, ) -> Result<()>
fn RemoveDynamicService(&self, pszserviceid: &PCWSTR) -> Result<()>
fn SetServiceDiscoverable( &self, pszserviceid: &PCWSTR, fdiscoverable: BOOL, ) -> Result<()>
fn SignalEvent( &self, pszserviceid: &PCWSTR, pbody: *const c_void, poperation: *const WSD_OPERATION, ) -> 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.