blob: 629f4cb2661484f82e8fa5a9191086c2d44032c7 [file] [log] [blame]
#[doc(hidden)]
#[cfg(feature = "deprecated")]
#[repr(transparent)]
pub struct IRetailModeStatics(::windows::core::IUnknown);
#[cfg(feature = "deprecated")]
unsafe impl ::windows::core::Interface for IRetailModeStatics {
type Vtable = IRetailModeStatics_Vtbl;
}
#[cfg(feature = "deprecated")]
impl ::core::clone::Clone for IRetailModeStatics {
fn clone(&self) -> Self {
Self(self.0.clone())
}
}
#[cfg(feature = "deprecated")]
unsafe impl ::windows::core::ComInterface for IRetailModeStatics {
const IID: ::windows::core::GUID = ::windows::core::GUID::from_u128(0xd7ded029_fdda_43e7_93fb_e53ab6e89ec3);
}
#[cfg(feature = "deprecated")]
#[repr(C)]
#[doc(hidden)]
pub struct IRetailModeStatics_Vtbl {
pub base__: ::windows::core::IInspectable_Vtbl,
#[cfg(feature = "deprecated")]
pub RetailModeEnabled: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, result__: *mut bool) -> ::windows::core::HRESULT,
#[cfg(not(feature = "deprecated"))]
RetailModeEnabled: usize,
}
#[doc = "*Required features: `\"Phone_System_Profile\"`, `\"deprecated\"`*"]
#[cfg(feature = "deprecated")]
pub struct RetailMode;
#[cfg(feature = "deprecated")]
impl RetailMode {
#[doc = "*Required features: `\"deprecated\"`*"]
#[cfg(feature = "deprecated")]
pub fn RetailModeEnabled() -> ::windows::core::Result<bool> {
Self::IRetailModeStatics(|this| unsafe {
let mut result__ = ::windows::core::zeroed::<bool>();
(::windows::core::Interface::vtable(this).RetailModeEnabled)(::windows::core::Interface::as_raw(this), &mut result__).from_abi(result__)
})
}
#[doc(hidden)]
#[cfg(feature = "deprecated")]
pub fn IRetailModeStatics<R, F: FnOnce(&IRetailModeStatics) -> ::windows::core::Result<R>>(callback: F) -> ::windows::core::Result<R> {
static SHARED: ::windows::imp::FactoryCache<RetailMode, IRetailModeStatics> = ::windows::imp::FactoryCache::new();
SHARED.call(callback)
}
}
#[cfg(feature = "deprecated")]
impl ::windows::core::RuntimeName for RetailMode {
const NAME: &'static str = "Windows.Phone.System.Profile.RetailMode";
}
#[cfg(feature = "implement")]
::core::include!("impl.rs");