Trait IWMPContentPartner_Impl
pub trait IWMPContentPartner_Impl: IUnknownImpl {
Show 23 methods
// Required methods
fn SetCallback(
&self,
pcallback: Ref<'_, IWMPContentPartnerCallback>,
) -> Result<()>;
fn Notify(
&self,
type: WMPPartnerNotification,
pcontext: *const VARIANT,
) -> Result<()>;
fn GetItemInfo(
&self,
bstrinfoname: &BSTR,
pcontext: *const VARIANT,
) -> Result<VARIANT>;
fn GetContentPartnerInfo(&self, bstrinfoname: &BSTR) -> Result<VARIANT>;
fn GetCommands(
&self,
location: &BSTR,
plocationcontext: *const VARIANT,
itemlocation: &BSTR,
citemids: u32,
prgitemids: *const u32,
pcitemids: *mut u32,
pprgitems: *mut *mut WMPContextMenuInfo,
) -> Result<()>;
fn InvokeCommand(
&self,
dwcommandid: u32,
location: &BSTR,
plocationcontext: *const VARIANT,
itemlocation: &BSTR,
citemids: u32,
rgitemids: *const u32,
) -> Result<()>;
fn CanBuySilent(
&self,
pinfo: Ref<'_, IWMPContentContainerList>,
pbstrtotalprice: *mut BSTR,
psilentok: *mut VARIANT_BOOL,
) -> Result<()>;
fn Buy(
&self,
pinfo: Ref<'_, IWMPContentContainerList>,
cookie: u32,
) -> Result<()>;
fn GetStreamingURL(
&self,
st: WMPStreamingType,
pstreamcontext: *const VARIANT,
) -> Result<BSTR>;
fn Download(
&self,
pinfo: Ref<'_, IWMPContentContainerList>,
cookie: u32,
) -> Result<()>;
fn DownloadTrackComplete(
&self,
hrresult: HRESULT,
contentid: u32,
downloadtrackparam: &BSTR,
) -> Result<()>;
fn RefreshLicense(
&self,
dwcookie: u32,
flocal: VARIANT_BOOL,
bstrurl: &BSTR,
type: WMPStreamingType,
contentid: u32,
bstrrefreshreason: &BSTR,
preasoncontext: *const VARIANT,
) -> Result<()>;
fn GetCatalogURL(
&self,
dwcatalogversion: u32,
dwcatalogschemaversion: u32,
cataloglcid: u32,
pdwnewcatalogversion: *mut u32,
pbstrcatalogurl: *mut BSTR,
pexpirationdate: *mut VARIANT,
) -> Result<()>;
fn GetTemplate(
&self,
task: WMPTaskType,
location: &BSTR,
pcontext: *const VARIANT,
clicklocation: &BSTR,
pclickcontext: *const VARIANT,
bstrfilter: &BSTR,
bstrviewparams: &BSTR,
pbstrtemplateurl: *mut BSTR,
ptemplatesize: *mut WMPTemplateSize,
) -> Result<()>;
fn UpdateDevice(&self, bstrdevicename: &BSTR) -> Result<()>;
fn GetListContents(
&self,
location: &BSTR,
pcontext: *const VARIANT,
bstrlisttype: &BSTR,
bstrparams: &BSTR,
dwlistcookie: u32,
) -> Result<()>;
fn Login(
&self,
userinfo: &BLOB,
pwdinfo: &BLOB,
fusedcachedcreds: VARIANT_BOOL,
foktocache: VARIANT_BOOL,
) -> Result<()>;
fn Authenticate(&self, userinfo: &BLOB, pwdinfo: &BLOB) -> Result<()>;
fn Logout(&self) -> Result<()>;
fn SendMessage(&self, bstrmsg: &BSTR, bstrparam: &BSTR) -> Result<()>;
fn StationEvent(
&self,
bstrstationeventtype: &BSTR,
stationid: u32,
playlistindex: u32,
trackid: u32,
trackdata: &BSTR,
dwsecondsplayed: u32,
) -> Result<()>;
fn CompareContainerListPrices(
&self,
plistbase: Ref<'_, IWMPContentContainerList>,
plistcompare: Ref<'_, IWMPContentContainerList>,
) -> Result<i32>;
fn VerifyPermission(
&self,
bstrpermission: &BSTR,
pcontext: *const VARIANT,
) -> Result<()>;
}
Required Methods§
fn SetCallback( &self, pcallback: Ref<'_, IWMPContentPartnerCallback>, ) -> Result<()>
fn Notify( &self, type: WMPPartnerNotification, pcontext: *const VARIANT, ) -> Result<()>
fn GetItemInfo( &self, bstrinfoname: &BSTR, pcontext: *const VARIANT, ) -> Result<VARIANT>
fn GetContentPartnerInfo(&self, bstrinfoname: &BSTR) -> Result<VARIANT>
fn GetCommands( &self, location: &BSTR, plocationcontext: *const VARIANT, itemlocation: &BSTR, citemids: u32, prgitemids: *const u32, pcitemids: *mut u32, pprgitems: *mut *mut WMPContextMenuInfo, ) -> Result<()>
fn InvokeCommand( &self, dwcommandid: u32, location: &BSTR, plocationcontext: *const VARIANT, itemlocation: &BSTR, citemids: u32, rgitemids: *const u32, ) -> Result<()>
fn CanBuySilent( &self, pinfo: Ref<'_, IWMPContentContainerList>, pbstrtotalprice: *mut BSTR, psilentok: *mut VARIANT_BOOL, ) -> Result<()>
fn Buy( &self, pinfo: Ref<'_, IWMPContentContainerList>, cookie: u32, ) -> Result<()>
fn GetStreamingURL( &self, st: WMPStreamingType, pstreamcontext: *const VARIANT, ) -> Result<BSTR>
fn Download( &self, pinfo: Ref<'_, IWMPContentContainerList>, cookie: u32, ) -> Result<()>
fn DownloadTrackComplete( &self, hrresult: HRESULT, contentid: u32, downloadtrackparam: &BSTR, ) -> Result<()>
fn RefreshLicense( &self, dwcookie: u32, flocal: VARIANT_BOOL, bstrurl: &BSTR, type: WMPStreamingType, contentid: u32, bstrrefreshreason: &BSTR, preasoncontext: *const VARIANT, ) -> Result<()>
fn GetCatalogURL( &self, dwcatalogversion: u32, dwcatalogschemaversion: u32, cataloglcid: u32, pdwnewcatalogversion: *mut u32, pbstrcatalogurl: *mut BSTR, pexpirationdate: *mut VARIANT, ) -> Result<()>
fn GetTemplate( &self, task: WMPTaskType, location: &BSTR, pcontext: *const VARIANT, clicklocation: &BSTR, pclickcontext: *const VARIANT, bstrfilter: &BSTR, bstrviewparams: &BSTR, pbstrtemplateurl: *mut BSTR, ptemplatesize: *mut WMPTemplateSize, ) -> Result<()>
fn UpdateDevice(&self, bstrdevicename: &BSTR) -> Result<()>
fn GetListContents( &self, location: &BSTR, pcontext: *const VARIANT, bstrlisttype: &BSTR, bstrparams: &BSTR, dwlistcookie: u32, ) -> Result<()>
fn Login( &self, userinfo: &BLOB, pwdinfo: &BLOB, fusedcachedcreds: VARIANT_BOOL, foktocache: VARIANT_BOOL, ) -> Result<()>
fn Authenticate(&self, userinfo: &BLOB, pwdinfo: &BLOB) -> Result<()>
fn Logout(&self) -> Result<()>
fn SendMessage(&self, bstrmsg: &BSTR, bstrparam: &BSTR) -> Result<()>
fn StationEvent( &self, bstrstationeventtype: &BSTR, stationid: u32, playlistindex: u32, trackid: u32, trackdata: &BSTR, dwsecondsplayed: u32, ) -> Result<()>
fn CompareContainerListPrices( &self, plistbase: Ref<'_, IWMPContentContainerList>, plistcompare: Ref<'_, IWMPContentContainerList>, ) -> Result<i32>
fn VerifyPermission( &self, bstrpermission: &BSTR, pcontext: *const VARIANT, ) -> 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.