pub trait IWSDDeviceHost_Impl: Sized {
    // Required methods
    fn Init(
        &self,
        pszlocalid: &PCWSTR,
        pcontext: Option<&IWSDXMLContext>,
        pphostaddresses: *const Option<IWSDAddress>,
        dwhostaddresscount: u32
    ) -> Result<()>;
    fn Start(
        &self,
        ullinstanceid: u64,
        pscopelist: *const WSD_URI_LIST,
        pnotificationsink: Option<&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: Option<&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: Option<&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: Option<&IWSDXMLContext>, pphostaddresses: *const Option<IWSDAddress>, dwhostaddresscount: u32 ) -> Result<()>

fn Start( &self, ullinstanceid: u64, pscopelist: *const WSD_URI_LIST, pnotificationsink: Option<&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: Option<&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: Option<&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<()>

Object Safety§

This trait is not object safe.

Implementors§