1 #![allow(unused_variables, non_upper_case_globals, non_snake_case, unused_unsafe, non_camel_case_types, dead_code, clippy::all)]
2 #[cfg(feature = "Win32_Foundation")]
3 #[inline]
CheckGamingPrivilegeSilently<'a, Param1: ::windows::runtime::IntoParam<'a, ::windows::runtime::HSTRING>, Param2: ::windows::runtime::IntoParam<'a, ::windows::runtime::HSTRING>>(privilegeid: u32, scope: Param1, policy: Param2) -> ::windows::runtime::Result<super::Foundation::BOOL>4 pub unsafe fn CheckGamingPrivilegeSilently<'a, Param1: ::windows::runtime::IntoParam<'a, ::windows::runtime::HSTRING>, Param2: ::windows::runtime::IntoParam<'a, ::windows::runtime::HSTRING>>(privilegeid: u32, scope: Param1, policy: Param2) -> ::windows::runtime::Result<super::Foundation::BOOL> {
5     #[cfg(windows)]
6     {
7         #[link(name = "windows")]
8         extern "system" {
9             fn CheckGamingPrivilegeSilently(privilegeid: u32, scope: ::std::mem::ManuallyDrop<::windows::runtime::HSTRING>, policy: ::std::mem::ManuallyDrop<::windows::runtime::HSTRING>, hasprivilege: *mut super::Foundation::BOOL) -> ::windows::runtime::HRESULT;
10         }
11         let mut result__: <super::Foundation::BOOL as ::windows::runtime::Abi>::Abi = ::std::mem::zeroed();
12         CheckGamingPrivilegeSilently(::std::mem::transmute(privilegeid), scope.into_param().abi(), policy.into_param().abi(), &mut result__).from_abi::<super::Foundation::BOOL>(result__)
13     }
14     #[cfg(not(windows))]
15     unimplemented!("Unsupported target OS");
16 }
17 #[cfg(feature = "Win32_Foundation")]
18 #[inline]
CheckGamingPrivilegeSilentlyForUser<'a, Param0: ::windows::runtime::IntoParam<'a, ::windows::runtime::IInspectable>, Param2: ::windows::runtime::IntoParam<'a, ::windows::runtime::HSTRING>, Param3: ::windows::runtime::IntoParam<'a, ::windows::runtime::HSTRING>>(user: Param0, privilegeid: u32, scope: Param2, policy: Param3) -> ::windows::runtime::Result<super::Foundation::BOOL>19 pub unsafe fn CheckGamingPrivilegeSilentlyForUser<'a, Param0: ::windows::runtime::IntoParam<'a, ::windows::runtime::IInspectable>, Param2: ::windows::runtime::IntoParam<'a, ::windows::runtime::HSTRING>, Param3: ::windows::runtime::IntoParam<'a, ::windows::runtime::HSTRING>>(user: Param0, privilegeid: u32, scope: Param2, policy: Param3) -> ::windows::runtime::Result<super::Foundation::BOOL> {
20     #[cfg(windows)]
21     {
22         #[link(name = "windows")]
23         extern "system" {
24             fn CheckGamingPrivilegeSilentlyForUser(user: ::windows::runtime::RawPtr, privilegeid: u32, scope: ::std::mem::ManuallyDrop<::windows::runtime::HSTRING>, policy: ::std::mem::ManuallyDrop<::windows::runtime::HSTRING>, hasprivilege: *mut super::Foundation::BOOL) -> ::windows::runtime::HRESULT;
25         }
26         let mut result__: <super::Foundation::BOOL as ::windows::runtime::Abi>::Abi = ::std::mem::zeroed();
27         CheckGamingPrivilegeSilentlyForUser(user.into_param().abi(), ::std::mem::transmute(privilegeid), scope.into_param().abi(), policy.into_param().abi(), &mut result__).from_abi::<super::Foundation::BOOL>(result__)
28     }
29     #[cfg(not(windows))]
30     unimplemented!("Unsupported target OS");
31 }
32 #[inline]
CheckGamingPrivilegeWithUI<'a, Param1: ::windows::runtime::IntoParam<'a, ::windows::runtime::HSTRING>, Param2: ::windows::runtime::IntoParam<'a, ::windows::runtime::HSTRING>, Param3: ::windows::runtime::IntoParam<'a, ::windows::runtime::HSTRING>>(privilegeid: u32, scope: Param1, policy: Param2, friendlymessage: Param3, completionroutine: ::std::option::Option<GameUICompletionRoutine>, context: *const ::std::ffi::c_void) -> ::windows::runtime::Result<()>33 pub unsafe fn CheckGamingPrivilegeWithUI<'a, Param1: ::windows::runtime::IntoParam<'a, ::windows::runtime::HSTRING>, Param2: ::windows::runtime::IntoParam<'a, ::windows::runtime::HSTRING>, Param3: ::windows::runtime::IntoParam<'a, ::windows::runtime::HSTRING>>(privilegeid: u32, scope: Param1, policy: Param2, friendlymessage: Param3, completionroutine: ::std::option::Option<GameUICompletionRoutine>, context: *const ::std::ffi::c_void) -> ::windows::runtime::Result<()> {
34     #[cfg(windows)]
35     {
36         #[link(name = "windows")]
37         extern "system" {
38             fn CheckGamingPrivilegeWithUI(privilegeid: u32, scope: ::std::mem::ManuallyDrop<::windows::runtime::HSTRING>, policy: ::std::mem::ManuallyDrop<::windows::runtime::HSTRING>, friendlymessage: ::std::mem::ManuallyDrop<::windows::runtime::HSTRING>, completionroutine: ::windows::runtime::RawPtr, context: *const ::std::ffi::c_void) -> ::windows::runtime::HRESULT;
39         }
40         CheckGamingPrivilegeWithUI(::std::mem::transmute(privilegeid), scope.into_param().abi(), policy.into_param().abi(), friendlymessage.into_param().abi(), ::std::mem::transmute(completionroutine), ::std::mem::transmute(context)).ok()
41     }
42     #[cfg(not(windows))]
43     unimplemented!("Unsupported target OS");
44 }
45 #[inline]
CheckGamingPrivilegeWithUIForUser<'a, Param0: ::windows::runtime::IntoParam<'a, ::windows::runtime::IInspectable>, Param2: ::windows::runtime::IntoParam<'a, ::windows::runtime::HSTRING>, Param3: ::windows::runtime::IntoParam<'a, ::windows::runtime::HSTRING>, Param4: ::windows::runtime::IntoParam<'a, ::windows::runtime::HSTRING>>( user: Param0, privilegeid: u32, scope: Param2, policy: Param3, friendlymessage: Param4, completionroutine: ::std::option::Option<GameUICompletionRoutine>, context: *const ::std::ffi::c_void, ) -> ::windows::runtime::Result<()>46 pub unsafe fn CheckGamingPrivilegeWithUIForUser<'a, Param0: ::windows::runtime::IntoParam<'a, ::windows::runtime::IInspectable>, Param2: ::windows::runtime::IntoParam<'a, ::windows::runtime::HSTRING>, Param3: ::windows::runtime::IntoParam<'a, ::windows::runtime::HSTRING>, Param4: ::windows::runtime::IntoParam<'a, ::windows::runtime::HSTRING>>(
47     user: Param0,
48     privilegeid: u32,
49     scope: Param2,
50     policy: Param3,
51     friendlymessage: Param4,
52     completionroutine: ::std::option::Option<GameUICompletionRoutine>,
53     context: *const ::std::ffi::c_void,
54 ) -> ::windows::runtime::Result<()> {
55     #[cfg(windows)]
56     {
57         #[link(name = "windows")]
58         extern "system" {
59             fn CheckGamingPrivilegeWithUIForUser(user: ::windows::runtime::RawPtr, privilegeid: u32, scope: ::std::mem::ManuallyDrop<::windows::runtime::HSTRING>, policy: ::std::mem::ManuallyDrop<::windows::runtime::HSTRING>, friendlymessage: ::std::mem::ManuallyDrop<::windows::runtime::HSTRING>, completionroutine: ::windows::runtime::RawPtr, context: *const ::std::ffi::c_void) -> ::windows::runtime::HRESULT;
60         }
61         CheckGamingPrivilegeWithUIForUser(user.into_param().abi(), ::std::mem::transmute(privilegeid), scope.into_param().abi(), policy.into_param().abi(), friendlymessage.into_param().abi(), ::std::mem::transmute(completionroutine), ::std::mem::transmute(context)).ok()
62     }
63     #[cfg(not(windows))]
64     unimplemented!("Unsupported target OS");
65 }
66 #[derive(:: std :: cmp :: PartialEq, :: std :: cmp :: Eq, :: std :: marker :: Copy, :: std :: clone :: Clone, :: std :: default :: Default, :: std :: fmt :: Debug)]
67 #[repr(transparent)]
68 pub struct GAMESTATS_OPEN_RESULT(pub i32);
69 pub const GAMESTATS_OPEN_CREATED: GAMESTATS_OPEN_RESULT = GAMESTATS_OPEN_RESULT(0i32);
70 pub const GAMESTATS_OPEN_OPENED: GAMESTATS_OPEN_RESULT = GAMESTATS_OPEN_RESULT(1i32);
71 impl ::std::convert::From<i32> for GAMESTATS_OPEN_RESULT {
from(value: i32) -> Self72     fn from(value: i32) -> Self {
73         Self(value)
74     }
75 }
76 unsafe impl ::windows::runtime::Abi for GAMESTATS_OPEN_RESULT {
77     type Abi = Self;
78     type DefaultType = Self;
79 }
80 #[derive(:: std :: cmp :: PartialEq, :: std :: cmp :: Eq, :: std :: marker :: Copy, :: std :: clone :: Clone, :: std :: default :: Default, :: std :: fmt :: Debug)]
81 #[repr(transparent)]
82 pub struct GAMESTATS_OPEN_TYPE(pub i32);
83 pub const GAMESTATS_OPEN_OPENORCREATE: GAMESTATS_OPEN_TYPE = GAMESTATS_OPEN_TYPE(0i32);
84 pub const GAMESTATS_OPEN_OPENONLY: GAMESTATS_OPEN_TYPE = GAMESTATS_OPEN_TYPE(1i32);
85 impl ::std::convert::From<i32> for GAMESTATS_OPEN_TYPE {
from(value: i32) -> Self86     fn from(value: i32) -> Self {
87         Self(value)
88     }
89 }
90 unsafe impl ::windows::runtime::Abi for GAMESTATS_OPEN_TYPE {
91     type Abi = Self;
92     type DefaultType = Self;
93 }
94 #[derive(:: std :: cmp :: PartialEq, :: std :: cmp :: Eq, :: std :: marker :: Copy, :: std :: clone :: Clone, :: std :: default :: Default, :: std :: fmt :: Debug)]
95 #[repr(transparent)]
96 pub struct GAME_INSTALL_SCOPE(pub i32);
97 pub const GIS_NOT_INSTALLED: GAME_INSTALL_SCOPE = GAME_INSTALL_SCOPE(1i32);
98 pub const GIS_CURRENT_USER: GAME_INSTALL_SCOPE = GAME_INSTALL_SCOPE(2i32);
99 pub const GIS_ALL_USERS: GAME_INSTALL_SCOPE = GAME_INSTALL_SCOPE(3i32);
100 impl ::std::convert::From<i32> for GAME_INSTALL_SCOPE {
from(value: i32) -> Self101     fn from(value: i32) -> Self {
102         Self(value)
103     }
104 }
105 unsafe impl ::windows::runtime::Abi for GAME_INSTALL_SCOPE {
106     type Abi = Self;
107     type DefaultType = Self;
108 }
109 #[derive(:: std :: cmp :: PartialEq, :: std :: cmp :: Eq, :: std :: marker :: Copy, :: std :: clone :: Clone, :: std :: default :: Default, :: std :: fmt :: Debug)]
110 #[repr(transparent)]
111 pub struct GAMING_DEVICE_DEVICE_ID(pub i32);
112 pub const GAMING_DEVICE_DEVICE_ID_NONE: GAMING_DEVICE_DEVICE_ID = GAMING_DEVICE_DEVICE_ID(0i32);
113 pub const GAMING_DEVICE_DEVICE_ID_XBOX_ONE: GAMING_DEVICE_DEVICE_ID = GAMING_DEVICE_DEVICE_ID(1988865574i32);
114 pub const GAMING_DEVICE_DEVICE_ID_XBOX_ONE_S: GAMING_DEVICE_DEVICE_ID = GAMING_DEVICE_DEVICE_ID(712204761i32);
115 pub const GAMING_DEVICE_DEVICE_ID_XBOX_ONE_X: GAMING_DEVICE_DEVICE_ID = GAMING_DEVICE_DEVICE_ID(1523980231i32);
116 pub const GAMING_DEVICE_DEVICE_ID_XBOX_ONE_X_DEVKIT: GAMING_DEVICE_DEVICE_ID = GAMING_DEVICE_DEVICE_ID(284675555i32);
117 impl ::std::convert::From<i32> for GAMING_DEVICE_DEVICE_ID {
from(value: i32) -> Self118     fn from(value: i32) -> Self {
119         Self(value)
120     }
121 }
122 unsafe impl ::windows::runtime::Abi for GAMING_DEVICE_DEVICE_ID {
123     type Abi = Self;
124     type DefaultType = Self;
125 }
126 #[derive(:: std :: clone :: Clone, :: std :: marker :: Copy)]
127 #[repr(C)]
128 pub struct GAMING_DEVICE_MODEL_INFORMATION {
129     pub vendorId: GAMING_DEVICE_VENDOR_ID,
130     pub deviceId: GAMING_DEVICE_DEVICE_ID,
131 }
132 impl GAMING_DEVICE_MODEL_INFORMATION {}
133 impl ::std::default::Default for GAMING_DEVICE_MODEL_INFORMATION {
default() -> Self134     fn default() -> Self {
135         unsafe { ::std::mem::zeroed() }
136     }
137 }
138 impl ::std::fmt::Debug for GAMING_DEVICE_MODEL_INFORMATION {
fmt(&self, fmt: &mut ::std::fmt::Formatter<'_>) -> ::std::fmt::Result139     fn fmt(&self, fmt: &mut ::std::fmt::Formatter<'_>) -> ::std::fmt::Result {
140         fmt.debug_struct("GAMING_DEVICE_MODEL_INFORMATION").field("vendorId", &self.vendorId).field("deviceId", &self.deviceId).finish()
141     }
142 }
143 impl ::std::cmp::PartialEq for GAMING_DEVICE_MODEL_INFORMATION {
eq(&self, other: &Self) -> bool144     fn eq(&self, other: &Self) -> bool {
145         self.vendorId == other.vendorId && self.deviceId == other.deviceId
146     }
147 }
148 impl ::std::cmp::Eq for GAMING_DEVICE_MODEL_INFORMATION {}
149 unsafe impl ::windows::runtime::Abi for GAMING_DEVICE_MODEL_INFORMATION {
150     type Abi = Self;
151     type DefaultType = Self;
152 }
153 #[derive(:: std :: cmp :: PartialEq, :: std :: cmp :: Eq, :: std :: marker :: Copy, :: std :: clone :: Clone, :: std :: default :: Default, :: std :: fmt :: Debug)]
154 #[repr(transparent)]
155 pub struct GAMING_DEVICE_VENDOR_ID(pub i32);
156 pub const GAMING_DEVICE_VENDOR_ID_NONE: GAMING_DEVICE_VENDOR_ID = GAMING_DEVICE_VENDOR_ID(0i32);
157 pub const GAMING_DEVICE_VENDOR_ID_MICROSOFT: GAMING_DEVICE_VENDOR_ID = GAMING_DEVICE_VENDOR_ID(-1024700366i32);
158 impl ::std::convert::From<i32> for GAMING_DEVICE_VENDOR_ID {
from(value: i32) -> Self159     fn from(value: i32) -> Self {
160         Self(value)
161     }
162 }
163 unsafe impl ::windows::runtime::Abi for GAMING_DEVICE_VENDOR_ID {
164     type Abi = Self;
165     type DefaultType = Self;
166 }
167 pub const GameExplorer: ::windows::runtime::GUID = ::windows::runtime::GUID::from_values(2589895056, 12340, 19823, [145, 40, 1, 243, 198, 16, 34, 188]);
168 pub const GameStatistics: ::windows::runtime::GUID = ::windows::runtime::GUID::from_values(3687340588, 49372, 18785, [182, 226, 210, 139, 98, 193, 26, 212]);
169 pub type GameUICompletionRoutine = unsafe extern "system" fn(returncode: ::windows::runtime::HRESULT, context: *const ::std::ffi::c_void);
170 #[inline]
GetExpandedResourceExclusiveCpuCount() -> ::windows::runtime::Result<u32>171 pub unsafe fn GetExpandedResourceExclusiveCpuCount() -> ::windows::runtime::Result<u32> {
172     #[cfg(windows)]
173     {
174         #[link(name = "windows")]
175         extern "system" {
176             fn GetExpandedResourceExclusiveCpuCount(exclusivecpucount: *mut u32) -> ::windows::runtime::HRESULT;
177         }
178         let mut result__: <u32 as ::windows::runtime::Abi>::Abi = ::std::mem::zeroed();
179         GetExpandedResourceExclusiveCpuCount(&mut result__).from_abi::<u32>(result__)
180     }
181     #[cfg(not(windows))]
182     unimplemented!("Unsupported target OS");
183 }
184 #[inline]
GetGamingDeviceModelInformation() -> ::windows::runtime::Result<GAMING_DEVICE_MODEL_INFORMATION>185 pub unsafe fn GetGamingDeviceModelInformation() -> ::windows::runtime::Result<GAMING_DEVICE_MODEL_INFORMATION> {
186     #[cfg(windows)]
187     {
188         #[link(name = "windows")]
189         extern "system" {
190             fn GetGamingDeviceModelInformation(information: *mut GAMING_DEVICE_MODEL_INFORMATION) -> ::windows::runtime::HRESULT;
191         }
192         let mut result__: <GAMING_DEVICE_MODEL_INFORMATION as ::windows::runtime::Abi>::Abi = ::std::mem::zeroed();
193         GetGamingDeviceModelInformation(&mut result__).from_abi::<GAMING_DEVICE_MODEL_INFORMATION>(result__)
194     }
195     #[cfg(not(windows))]
196     unimplemented!("Unsupported target OS");
197 }
198 #[cfg(feature = "Win32_Foundation")]
199 #[inline]
HasExpandedResources() -> ::windows::runtime::Result<super::Foundation::BOOL>200 pub unsafe fn HasExpandedResources() -> ::windows::runtime::Result<super::Foundation::BOOL> {
201     #[cfg(windows)]
202     {
203         #[link(name = "windows")]
204         extern "system" {
205             fn HasExpandedResources(hasexpandedresources: *mut super::Foundation::BOOL) -> ::windows::runtime::HRESULT;
206         }
207         let mut result__: <super::Foundation::BOOL as ::windows::runtime::Abi>::Abi = ::std::mem::zeroed();
208         HasExpandedResources(&mut result__).from_abi::<super::Foundation::BOOL>(result__)
209     }
210     #[cfg(not(windows))]
211     unimplemented!("Unsupported target OS");
212 }
213 #[repr(transparent)]
214 #[derive(:: std :: cmp :: PartialEq, :: std :: cmp :: Eq, :: std :: clone :: Clone, :: std :: fmt :: Debug)]
215 pub struct IGameExplorer(::windows::runtime::IUnknown);
216 impl IGameExplorer {
217     #[cfg(feature = "Win32_Foundation")]
AddGame<'a, Param0: ::windows::runtime::IntoParam<'a, super::Foundation::BSTR>, Param1: ::windows::runtime::IntoParam<'a, super::Foundation::BSTR>>(&self, bstrgdfbinarypath: Param0, bstrgameinstalldirectory: Param1, installscope: GAME_INSTALL_SCOPE, pguidinstanceid: *mut ::windows::runtime::GUID) -> ::windows::runtime::Result<()>218     pub unsafe fn AddGame<'a, Param0: ::windows::runtime::IntoParam<'a, super::Foundation::BSTR>, Param1: ::windows::runtime::IntoParam<'a, super::Foundation::BSTR>>(&self, bstrgdfbinarypath: Param0, bstrgameinstalldirectory: Param1, installscope: GAME_INSTALL_SCOPE, pguidinstanceid: *mut ::windows::runtime::GUID) -> ::windows::runtime::Result<()> {
219         (::windows::runtime::Interface::vtable(self).3)(::std::mem::transmute_copy(self), bstrgdfbinarypath.into_param().abi(), bstrgameinstalldirectory.into_param().abi(), ::std::mem::transmute(installscope), ::std::mem::transmute(pguidinstanceid)).ok()
220     }
RemoveGame<'a, Param0: ::windows::runtime::IntoParam<'a, ::windows::runtime::GUID>>(&self, guidinstanceid: Param0) -> ::windows::runtime::Result<()>221     pub unsafe fn RemoveGame<'a, Param0: ::windows::runtime::IntoParam<'a, ::windows::runtime::GUID>>(&self, guidinstanceid: Param0) -> ::windows::runtime::Result<()> {
222         (::windows::runtime::Interface::vtable(self).4)(::std::mem::transmute_copy(self), guidinstanceid.into_param().abi()).ok()
223     }
UpdateGame<'a, Param0: ::windows::runtime::IntoParam<'a, ::windows::runtime::GUID>>(&self, guidinstanceid: Param0) -> ::windows::runtime::Result<()>224     pub unsafe fn UpdateGame<'a, Param0: ::windows::runtime::IntoParam<'a, ::windows::runtime::GUID>>(&self, guidinstanceid: Param0) -> ::windows::runtime::Result<()> {
225         (::windows::runtime::Interface::vtable(self).5)(::std::mem::transmute_copy(self), guidinstanceid.into_param().abi()).ok()
226     }
227     #[cfg(feature = "Win32_Foundation")]
VerifyAccess<'a, Param0: ::windows::runtime::IntoParam<'a, super::Foundation::BSTR>>(&self, bstrgdfbinarypath: Param0) -> ::windows::runtime::Result<super::Foundation::BOOL>228     pub unsafe fn VerifyAccess<'a, Param0: ::windows::runtime::IntoParam<'a, super::Foundation::BSTR>>(&self, bstrgdfbinarypath: Param0) -> ::windows::runtime::Result<super::Foundation::BOOL> {
229         let mut result__: <super::Foundation::BOOL as ::windows::runtime::Abi>::Abi = ::std::mem::zeroed();
230         (::windows::runtime::Interface::vtable(self).6)(::std::mem::transmute_copy(self), bstrgdfbinarypath.into_param().abi(), &mut result__).from_abi::<super::Foundation::BOOL>(result__)
231     }
232 }
233 unsafe impl ::windows::runtime::Interface for IGameExplorer {
234     type Vtable = IGameExplorer_abi;
235     const IID: ::windows::runtime::GUID = ::windows::runtime::GUID::from_values(3887266674, 55080, 18867, [165, 242, 24, 235, 245, 241, 52, 158]);
236 }
237 impl ::std::convert::From<IGameExplorer> for ::windows::runtime::IUnknown {
from(value: IGameExplorer) -> Self238     fn from(value: IGameExplorer) -> Self {
239         unsafe { ::std::mem::transmute(value) }
240     }
241 }
242 impl ::std::convert::From<&IGameExplorer> for ::windows::runtime::IUnknown {
from(value: &IGameExplorer) -> Self243     fn from(value: &IGameExplorer) -> Self {
244         ::std::convert::From::from(::std::clone::Clone::clone(value))
245     }
246 }
247 impl<'a> ::windows::runtime::IntoParam<'a, ::windows::runtime::IUnknown> for IGameExplorer {
into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IUnknown>248     fn into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IUnknown> {
249         ::windows::runtime::Param::Owned(::std::convert::Into::<::windows::runtime::IUnknown>::into(self))
250     }
251 }
252 impl<'a> ::windows::runtime::IntoParam<'a, ::windows::runtime::IUnknown> for &IGameExplorer {
into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IUnknown>253     fn into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IUnknown> {
254         ::windows::runtime::Param::Owned(::std::convert::Into::<::windows::runtime::IUnknown>::into(::std::clone::Clone::clone(self)))
255     }
256 }
257 #[repr(C)]
258 #[doc(hidden)]
259 pub struct IGameExplorer_abi(
260     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, iid: &::windows::runtime::GUID, interface: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
261     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr) -> u32,
262     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr) -> u32,
263     #[cfg(feature = "Win32_Foundation")] pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, bstrgdfbinarypath: ::std::mem::ManuallyDrop<super::Foundation::BSTR>, bstrgameinstalldirectory: ::std::mem::ManuallyDrop<super::Foundation::BSTR>, installscope: GAME_INSTALL_SCOPE, pguidinstanceid: *mut ::windows::runtime::GUID) -> ::windows::runtime::HRESULT,
264     #[cfg(not(feature = "Win32_Foundation"))] usize,
265     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, guidinstanceid: ::windows::runtime::GUID) -> ::windows::runtime::HRESULT,
266     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, guidinstanceid: ::windows::runtime::GUID) -> ::windows::runtime::HRESULT,
267     #[cfg(feature = "Win32_Foundation")] pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, bstrgdfbinarypath: ::std::mem::ManuallyDrop<super::Foundation::BSTR>, pfhasaccess: *mut super::Foundation::BOOL) -> ::windows::runtime::HRESULT,
268     #[cfg(not(feature = "Win32_Foundation"))] usize,
269 );
270 #[repr(transparent)]
271 #[derive(:: std :: cmp :: PartialEq, :: std :: cmp :: Eq, :: std :: clone :: Clone, :: std :: fmt :: Debug)]
272 pub struct IGameExplorer2(::windows::runtime::IUnknown);
273 impl IGameExplorer2 {
274     #[cfg(feature = "Win32_Foundation")]
InstallGame<'a, Param0: ::windows::runtime::IntoParam<'a, super::Foundation::PWSTR>, Param1: ::windows::runtime::IntoParam<'a, super::Foundation::PWSTR>>(&self, binarygdfpath: Param0, installdirectory: Param1, installscope: GAME_INSTALL_SCOPE) -> ::windows::runtime::Result<()>275     pub unsafe fn InstallGame<'a, Param0: ::windows::runtime::IntoParam<'a, super::Foundation::PWSTR>, Param1: ::windows::runtime::IntoParam<'a, super::Foundation::PWSTR>>(&self, binarygdfpath: Param0, installdirectory: Param1, installscope: GAME_INSTALL_SCOPE) -> ::windows::runtime::Result<()> {
276         (::windows::runtime::Interface::vtable(self).3)(::std::mem::transmute_copy(self), binarygdfpath.into_param().abi(), installdirectory.into_param().abi(), ::std::mem::transmute(installscope)).ok()
277     }
278     #[cfg(feature = "Win32_Foundation")]
UninstallGame<'a, Param0: ::windows::runtime::IntoParam<'a, super::Foundation::PWSTR>>(&self, binarygdfpath: Param0) -> ::windows::runtime::Result<()>279     pub unsafe fn UninstallGame<'a, Param0: ::windows::runtime::IntoParam<'a, super::Foundation::PWSTR>>(&self, binarygdfpath: Param0) -> ::windows::runtime::Result<()> {
280         (::windows::runtime::Interface::vtable(self).4)(::std::mem::transmute_copy(self), binarygdfpath.into_param().abi()).ok()
281     }
282     #[cfg(feature = "Win32_Foundation")]
CheckAccess<'a, Param0: ::windows::runtime::IntoParam<'a, super::Foundation::PWSTR>>(&self, binarygdfpath: Param0) -> ::windows::runtime::Result<super::Foundation::BOOL>283     pub unsafe fn CheckAccess<'a, Param0: ::windows::runtime::IntoParam<'a, super::Foundation::PWSTR>>(&self, binarygdfpath: Param0) -> ::windows::runtime::Result<super::Foundation::BOOL> {
284         let mut result__: <super::Foundation::BOOL as ::windows::runtime::Abi>::Abi = ::std::mem::zeroed();
285         (::windows::runtime::Interface::vtable(self).5)(::std::mem::transmute_copy(self), binarygdfpath.into_param().abi(), &mut result__).from_abi::<super::Foundation::BOOL>(result__)
286     }
287 }
288 unsafe impl ::windows::runtime::Interface for IGameExplorer2 {
289     type Vtable = IGameExplorer2_abi;
290     const IID: ::windows::runtime::GUID = ::windows::runtime::GUID::from_values(2257013415, 41453, 17677, [167, 235, 184, 158, 32, 178, 255, 243]);
291 }
292 impl ::std::convert::From<IGameExplorer2> for ::windows::runtime::IUnknown {
from(value: IGameExplorer2) -> Self293     fn from(value: IGameExplorer2) -> Self {
294         unsafe { ::std::mem::transmute(value) }
295     }
296 }
297 impl ::std::convert::From<&IGameExplorer2> for ::windows::runtime::IUnknown {
from(value: &IGameExplorer2) -> Self298     fn from(value: &IGameExplorer2) -> Self {
299         ::std::convert::From::from(::std::clone::Clone::clone(value))
300     }
301 }
302 impl<'a> ::windows::runtime::IntoParam<'a, ::windows::runtime::IUnknown> for IGameExplorer2 {
into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IUnknown>303     fn into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IUnknown> {
304         ::windows::runtime::Param::Owned(::std::convert::Into::<::windows::runtime::IUnknown>::into(self))
305     }
306 }
307 impl<'a> ::windows::runtime::IntoParam<'a, ::windows::runtime::IUnknown> for &IGameExplorer2 {
into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IUnknown>308     fn into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IUnknown> {
309         ::windows::runtime::Param::Owned(::std::convert::Into::<::windows::runtime::IUnknown>::into(::std::clone::Clone::clone(self)))
310     }
311 }
312 #[repr(C)]
313 #[doc(hidden)]
314 pub struct IGameExplorer2_abi(
315     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, iid: &::windows::runtime::GUID, interface: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
316     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr) -> u32,
317     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr) -> u32,
318     #[cfg(feature = "Win32_Foundation")] pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, binarygdfpath: super::Foundation::PWSTR, installdirectory: super::Foundation::PWSTR, installscope: GAME_INSTALL_SCOPE) -> ::windows::runtime::HRESULT,
319     #[cfg(not(feature = "Win32_Foundation"))] usize,
320     #[cfg(feature = "Win32_Foundation")] pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, binarygdfpath: super::Foundation::PWSTR) -> ::windows::runtime::HRESULT,
321     #[cfg(not(feature = "Win32_Foundation"))] usize,
322     #[cfg(feature = "Win32_Foundation")] pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, binarygdfpath: super::Foundation::PWSTR, phasaccess: *mut super::Foundation::BOOL) -> ::windows::runtime::HRESULT,
323     #[cfg(not(feature = "Win32_Foundation"))] usize,
324 );
325 #[repr(transparent)]
326 #[derive(:: std :: cmp :: PartialEq, :: std :: cmp :: Eq, :: std :: clone :: Clone, :: std :: fmt :: Debug)]
327 pub struct IGameStatistics(::windows::runtime::IUnknown);
328 impl IGameStatistics {
GetMaxCategoryLength(&self) -> ::windows::runtime::Result<u32>329     pub unsafe fn GetMaxCategoryLength(&self) -> ::windows::runtime::Result<u32> {
330         let mut result__: <u32 as ::windows::runtime::Abi>::Abi = ::std::mem::zeroed();
331         (::windows::runtime::Interface::vtable(self).3)(::std::mem::transmute_copy(self), &mut result__).from_abi::<u32>(result__)
332     }
GetMaxNameLength(&self) -> ::windows::runtime::Result<u32>333     pub unsafe fn GetMaxNameLength(&self) -> ::windows::runtime::Result<u32> {
334         let mut result__: <u32 as ::windows::runtime::Abi>::Abi = ::std::mem::zeroed();
335         (::windows::runtime::Interface::vtable(self).4)(::std::mem::transmute_copy(self), &mut result__).from_abi::<u32>(result__)
336     }
GetMaxValueLength(&self) -> ::windows::runtime::Result<u32>337     pub unsafe fn GetMaxValueLength(&self) -> ::windows::runtime::Result<u32> {
338         let mut result__: <u32 as ::windows::runtime::Abi>::Abi = ::std::mem::zeroed();
339         (::windows::runtime::Interface::vtable(self).5)(::std::mem::transmute_copy(self), &mut result__).from_abi::<u32>(result__)
340     }
GetMaxCategories(&self) -> ::windows::runtime::Result<u16>341     pub unsafe fn GetMaxCategories(&self) -> ::windows::runtime::Result<u16> {
342         let mut result__: <u16 as ::windows::runtime::Abi>::Abi = ::std::mem::zeroed();
343         (::windows::runtime::Interface::vtable(self).6)(::std::mem::transmute_copy(self), &mut result__).from_abi::<u16>(result__)
344     }
GetMaxStatsPerCategory(&self) -> ::windows::runtime::Result<u16>345     pub unsafe fn GetMaxStatsPerCategory(&self) -> ::windows::runtime::Result<u16> {
346         let mut result__: <u16 as ::windows::runtime::Abi>::Abi = ::std::mem::zeroed();
347         (::windows::runtime::Interface::vtable(self).7)(::std::mem::transmute_copy(self), &mut result__).from_abi::<u16>(result__)
348     }
349     #[cfg(feature = "Win32_Foundation")]
SetCategoryTitle<'a, Param1: ::windows::runtime::IntoParam<'a, super::Foundation::PWSTR>>(&self, categoryindex: u16, title: Param1) -> ::windows::runtime::Result<()>350     pub unsafe fn SetCategoryTitle<'a, Param1: ::windows::runtime::IntoParam<'a, super::Foundation::PWSTR>>(&self, categoryindex: u16, title: Param1) -> ::windows::runtime::Result<()> {
351         (::windows::runtime::Interface::vtable(self).8)(::std::mem::transmute_copy(self), ::std::mem::transmute(categoryindex), title.into_param().abi()).ok()
352     }
353     #[cfg(feature = "Win32_Foundation")]
GetCategoryTitle(&self, categoryindex: u16) -> ::windows::runtime::Result<super::Foundation::PWSTR>354     pub unsafe fn GetCategoryTitle(&self, categoryindex: u16) -> ::windows::runtime::Result<super::Foundation::PWSTR> {
355         let mut result__: <super::Foundation::PWSTR as ::windows::runtime::Abi>::Abi = ::std::mem::zeroed();
356         (::windows::runtime::Interface::vtable(self).9)(::std::mem::transmute_copy(self), ::std::mem::transmute(categoryindex), &mut result__).from_abi::<super::Foundation::PWSTR>(result__)
357     }
358     #[cfg(feature = "Win32_Foundation")]
GetStatistic(&self, categoryindex: u16, statindex: u16, pname: *mut super::Foundation::PWSTR, pvalue: *mut super::Foundation::PWSTR) -> ::windows::runtime::Result<()>359     pub unsafe fn GetStatistic(&self, categoryindex: u16, statindex: u16, pname: *mut super::Foundation::PWSTR, pvalue: *mut super::Foundation::PWSTR) -> ::windows::runtime::Result<()> {
360         (::windows::runtime::Interface::vtable(self).10)(::std::mem::transmute_copy(self), ::std::mem::transmute(categoryindex), ::std::mem::transmute(statindex), ::std::mem::transmute(pname), ::std::mem::transmute(pvalue)).ok()
361     }
362     #[cfg(feature = "Win32_Foundation")]
SetStatistic<'a, Param2: ::windows::runtime::IntoParam<'a, super::Foundation::PWSTR>, Param3: ::windows::runtime::IntoParam<'a, super::Foundation::PWSTR>>(&self, categoryindex: u16, statindex: u16, name: Param2, value: Param3) -> ::windows::runtime::Result<()>363     pub unsafe fn SetStatistic<'a, Param2: ::windows::runtime::IntoParam<'a, super::Foundation::PWSTR>, Param3: ::windows::runtime::IntoParam<'a, super::Foundation::PWSTR>>(&self, categoryindex: u16, statindex: u16, name: Param2, value: Param3) -> ::windows::runtime::Result<()> {
364         (::windows::runtime::Interface::vtable(self).11)(::std::mem::transmute_copy(self), ::std::mem::transmute(categoryindex), ::std::mem::transmute(statindex), name.into_param().abi(), value.into_param().abi()).ok()
365     }
366     #[cfg(feature = "Win32_Foundation")]
Save<'a, Param0: ::windows::runtime::IntoParam<'a, super::Foundation::BOOL>>(&self, trackchanges: Param0) -> ::windows::runtime::Result<()>367     pub unsafe fn Save<'a, Param0: ::windows::runtime::IntoParam<'a, super::Foundation::BOOL>>(&self, trackchanges: Param0) -> ::windows::runtime::Result<()> {
368         (::windows::runtime::Interface::vtable(self).12)(::std::mem::transmute_copy(self), trackchanges.into_param().abi()).ok()
369     }
SetLastPlayedCategory(&self, categoryindex: u32) -> ::windows::runtime::Result<()>370     pub unsafe fn SetLastPlayedCategory(&self, categoryindex: u32) -> ::windows::runtime::Result<()> {
371         (::windows::runtime::Interface::vtable(self).13)(::std::mem::transmute_copy(self), ::std::mem::transmute(categoryindex)).ok()
372     }
GetLastPlayedCategory(&self) -> ::windows::runtime::Result<u32>373     pub unsafe fn GetLastPlayedCategory(&self) -> ::windows::runtime::Result<u32> {
374         let mut result__: <u32 as ::windows::runtime::Abi>::Abi = ::std::mem::zeroed();
375         (::windows::runtime::Interface::vtable(self).14)(::std::mem::transmute_copy(self), &mut result__).from_abi::<u32>(result__)
376     }
377 }
378 unsafe impl ::windows::runtime::Interface for IGameStatistics {
379     type Vtable = IGameStatistics_abi;
380     const IID: ::windows::runtime::GUID = ::windows::runtime::GUID::from_values(948423114, 1184, 17070, [188, 76, 95, 166, 199, 114, 17, 69]);
381 }
382 impl ::std::convert::From<IGameStatistics> for ::windows::runtime::IUnknown {
from(value: IGameStatistics) -> Self383     fn from(value: IGameStatistics) -> Self {
384         unsafe { ::std::mem::transmute(value) }
385     }
386 }
387 impl ::std::convert::From<&IGameStatistics> for ::windows::runtime::IUnknown {
from(value: &IGameStatistics) -> Self388     fn from(value: &IGameStatistics) -> Self {
389         ::std::convert::From::from(::std::clone::Clone::clone(value))
390     }
391 }
392 impl<'a> ::windows::runtime::IntoParam<'a, ::windows::runtime::IUnknown> for IGameStatistics {
into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IUnknown>393     fn into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IUnknown> {
394         ::windows::runtime::Param::Owned(::std::convert::Into::<::windows::runtime::IUnknown>::into(self))
395     }
396 }
397 impl<'a> ::windows::runtime::IntoParam<'a, ::windows::runtime::IUnknown> for &IGameStatistics {
into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IUnknown>398     fn into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IUnknown> {
399         ::windows::runtime::Param::Owned(::std::convert::Into::<::windows::runtime::IUnknown>::into(::std::clone::Clone::clone(self)))
400     }
401 }
402 #[repr(C)]
403 #[doc(hidden)]
404 pub struct IGameStatistics_abi(
405     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, iid: &::windows::runtime::GUID, interface: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
406     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr) -> u32,
407     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr) -> u32,
408     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, cch: *mut u32) -> ::windows::runtime::HRESULT,
409     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, cch: *mut u32) -> ::windows::runtime::HRESULT,
410     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, cch: *mut u32) -> ::windows::runtime::HRESULT,
411     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, pmax: *mut u16) -> ::windows::runtime::HRESULT,
412     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, pmax: *mut u16) -> ::windows::runtime::HRESULT,
413     #[cfg(feature = "Win32_Foundation")] pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, categoryindex: u16, title: super::Foundation::PWSTR) -> ::windows::runtime::HRESULT,
414     #[cfg(not(feature = "Win32_Foundation"))] usize,
415     #[cfg(feature = "Win32_Foundation")] pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, categoryindex: u16, ptitle: *mut super::Foundation::PWSTR) -> ::windows::runtime::HRESULT,
416     #[cfg(not(feature = "Win32_Foundation"))] usize,
417     #[cfg(feature = "Win32_Foundation")] pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, categoryindex: u16, statindex: u16, pname: *mut super::Foundation::PWSTR, pvalue: *mut super::Foundation::PWSTR) -> ::windows::runtime::HRESULT,
418     #[cfg(not(feature = "Win32_Foundation"))] usize,
419     #[cfg(feature = "Win32_Foundation")] pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, categoryindex: u16, statindex: u16, name: super::Foundation::PWSTR, value: super::Foundation::PWSTR) -> ::windows::runtime::HRESULT,
420     #[cfg(not(feature = "Win32_Foundation"))] usize,
421     #[cfg(feature = "Win32_Foundation")] pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, trackchanges: super::Foundation::BOOL) -> ::windows::runtime::HRESULT,
422     #[cfg(not(feature = "Win32_Foundation"))] usize,
423     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, categoryindex: u32) -> ::windows::runtime::HRESULT,
424     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, pcategoryindex: *mut u32) -> ::windows::runtime::HRESULT,
425 );
426 #[repr(transparent)]
427 #[derive(:: std :: cmp :: PartialEq, :: std :: cmp :: Eq, :: std :: clone :: Clone, :: std :: fmt :: Debug)]
428 pub struct IGameStatisticsMgr(::windows::runtime::IUnknown);
429 impl IGameStatisticsMgr {
430     #[cfg(feature = "Win32_Foundation")]
GetGameStatistics<'a, Param0: ::windows::runtime::IntoParam<'a, super::Foundation::PWSTR>>(&self, gdfbinarypath: Param0, opentype: GAMESTATS_OPEN_TYPE, popenresult: *mut GAMESTATS_OPEN_RESULT, ppistats: *mut ::std::option::Option<IGameStatistics>) -> ::windows::runtime::Result<()>431     pub unsafe fn GetGameStatistics<'a, Param0: ::windows::runtime::IntoParam<'a, super::Foundation::PWSTR>>(&self, gdfbinarypath: Param0, opentype: GAMESTATS_OPEN_TYPE, popenresult: *mut GAMESTATS_OPEN_RESULT, ppistats: *mut ::std::option::Option<IGameStatistics>) -> ::windows::runtime::Result<()> {
432         (::windows::runtime::Interface::vtable(self).3)(::std::mem::transmute_copy(self), gdfbinarypath.into_param().abi(), ::std::mem::transmute(opentype), ::std::mem::transmute(popenresult), ::std::mem::transmute(ppistats)).ok()
433     }
434     #[cfg(feature = "Win32_Foundation")]
RemoveGameStatistics<'a, Param0: ::windows::runtime::IntoParam<'a, super::Foundation::PWSTR>>(&self, gdfbinarypath: Param0) -> ::windows::runtime::Result<()>435     pub unsafe fn RemoveGameStatistics<'a, Param0: ::windows::runtime::IntoParam<'a, super::Foundation::PWSTR>>(&self, gdfbinarypath: Param0) -> ::windows::runtime::Result<()> {
436         (::windows::runtime::Interface::vtable(self).4)(::std::mem::transmute_copy(self), gdfbinarypath.into_param().abi()).ok()
437     }
438 }
439 unsafe impl ::windows::runtime::Interface for IGameStatisticsMgr {
440     type Vtable = IGameStatisticsMgr_abi;
441     const IID: ::windows::runtime::GUID = ::windows::runtime::GUID::from_values(2951997969, 59150, 16509, [149, 221, 53, 230, 18, 196, 28, 226]);
442 }
443 impl ::std::convert::From<IGameStatisticsMgr> for ::windows::runtime::IUnknown {
from(value: IGameStatisticsMgr) -> Self444     fn from(value: IGameStatisticsMgr) -> Self {
445         unsafe { ::std::mem::transmute(value) }
446     }
447 }
448 impl ::std::convert::From<&IGameStatisticsMgr> for ::windows::runtime::IUnknown {
from(value: &IGameStatisticsMgr) -> Self449     fn from(value: &IGameStatisticsMgr) -> Self {
450         ::std::convert::From::from(::std::clone::Clone::clone(value))
451     }
452 }
453 impl<'a> ::windows::runtime::IntoParam<'a, ::windows::runtime::IUnknown> for IGameStatisticsMgr {
into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IUnknown>454     fn into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IUnknown> {
455         ::windows::runtime::Param::Owned(::std::convert::Into::<::windows::runtime::IUnknown>::into(self))
456     }
457 }
458 impl<'a> ::windows::runtime::IntoParam<'a, ::windows::runtime::IUnknown> for &IGameStatisticsMgr {
into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IUnknown>459     fn into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IUnknown> {
460         ::windows::runtime::Param::Owned(::std::convert::Into::<::windows::runtime::IUnknown>::into(::std::clone::Clone::clone(self)))
461     }
462 }
463 #[repr(C)]
464 #[doc(hidden)]
465 pub struct IGameStatisticsMgr_abi(
466     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, iid: &::windows::runtime::GUID, interface: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
467     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr) -> u32,
468     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr) -> u32,
469     #[cfg(feature = "Win32_Foundation")] pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, gdfbinarypath: super::Foundation::PWSTR, opentype: GAMESTATS_OPEN_TYPE, popenresult: *mut GAMESTATS_OPEN_RESULT, ppistats: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
470     #[cfg(not(feature = "Win32_Foundation"))] usize,
471     #[cfg(feature = "Win32_Foundation")] pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, gdfbinarypath: super::Foundation::PWSTR) -> ::windows::runtime::HRESULT,
472     #[cfg(not(feature = "Win32_Foundation"))] usize,
473 );
474 #[repr(transparent)]
475 #[derive(:: std :: cmp :: PartialEq, :: std :: cmp :: Eq, :: std :: clone :: Clone, :: std :: fmt :: Debug)]
476 pub struct IXblIdpAuthManager(::windows::runtime::IUnknown);
477 impl IXblIdpAuthManager {
478     #[cfg(feature = "Win32_Foundation")]
SetGamerAccount<'a, Param0: ::windows::runtime::IntoParam<'a, super::Foundation::PWSTR>, Param1: ::windows::runtime::IntoParam<'a, super::Foundation::PWSTR>>(&self, msaaccountid: Param0, xuid: Param1) -> ::windows::runtime::Result<()>479     pub unsafe fn SetGamerAccount<'a, Param0: ::windows::runtime::IntoParam<'a, super::Foundation::PWSTR>, Param1: ::windows::runtime::IntoParam<'a, super::Foundation::PWSTR>>(&self, msaaccountid: Param0, xuid: Param1) -> ::windows::runtime::Result<()> {
480         (::windows::runtime::Interface::vtable(self).3)(::std::mem::transmute_copy(self), msaaccountid.into_param().abi(), xuid.into_param().abi()).ok()
481     }
482     #[cfg(feature = "Win32_Foundation")]
GetGamerAccount(&self, msaaccountid: *mut super::Foundation::PWSTR, xuid: *mut super::Foundation::PWSTR) -> ::windows::runtime::Result<()>483     pub unsafe fn GetGamerAccount(&self, msaaccountid: *mut super::Foundation::PWSTR, xuid: *mut super::Foundation::PWSTR) -> ::windows::runtime::Result<()> {
484         (::windows::runtime::Interface::vtable(self).4)(::std::mem::transmute_copy(self), ::std::mem::transmute(msaaccountid), ::std::mem::transmute(xuid)).ok()
485     }
486     #[cfg(feature = "Win32_Foundation")]
SetAppViewInitialized<'a, Param0: ::windows::runtime::IntoParam<'a, super::Foundation::PWSTR>, Param1: ::windows::runtime::IntoParam<'a, super::Foundation::PWSTR>>(&self, appsid: Param0, msaaccountid: Param1) -> ::windows::runtime::Result<()>487     pub unsafe fn SetAppViewInitialized<'a, Param0: ::windows::runtime::IntoParam<'a, super::Foundation::PWSTR>, Param1: ::windows::runtime::IntoParam<'a, super::Foundation::PWSTR>>(&self, appsid: Param0, msaaccountid: Param1) -> ::windows::runtime::Result<()> {
488         (::windows::runtime::Interface::vtable(self).5)(::std::mem::transmute_copy(self), appsid.into_param().abi(), msaaccountid.into_param().abi()).ok()
489     }
490     #[cfg(feature = "Win32_Foundation")]
GetEnvironment(&self) -> ::windows::runtime::Result<super::Foundation::PWSTR>491     pub unsafe fn GetEnvironment(&self) -> ::windows::runtime::Result<super::Foundation::PWSTR> {
492         let mut result__: <super::Foundation::PWSTR as ::windows::runtime::Abi>::Abi = ::std::mem::zeroed();
493         (::windows::runtime::Interface::vtable(self).6)(::std::mem::transmute_copy(self), &mut result__).from_abi::<super::Foundation::PWSTR>(result__)
494     }
495     #[cfg(feature = "Win32_Foundation")]
GetSandbox(&self) -> ::windows::runtime::Result<super::Foundation::PWSTR>496     pub unsafe fn GetSandbox(&self) -> ::windows::runtime::Result<super::Foundation::PWSTR> {
497         let mut result__: <super::Foundation::PWSTR as ::windows::runtime::Abi>::Abi = ::std::mem::zeroed();
498         (::windows::runtime::Interface::vtable(self).7)(::std::mem::transmute_copy(self), &mut result__).from_abi::<super::Foundation::PWSTR>(result__)
499     }
500     #[cfg(feature = "Win32_Foundation")]
GetTokenAndSignatureWithTokenResult< 'a, Param0: ::windows::runtime::IntoParam<'a, super::Foundation::PWSTR>, Param1: ::windows::runtime::IntoParam<'a, super::Foundation::PWSTR>, Param2: ::windows::runtime::IntoParam<'a, super::Foundation::PWSTR>, Param3: ::windows::runtime::IntoParam<'a, super::Foundation::PWSTR>, Param4: ::windows::runtime::IntoParam<'a, super::Foundation::PWSTR>, Param5: ::windows::runtime::IntoParam<'a, super::Foundation::PWSTR>, Param6: ::windows::runtime::IntoParam<'a, super::Foundation::PWSTR>, Param9: ::windows::runtime::IntoParam<'a, super::Foundation::BOOL>, >( &self, msaaccountid: Param0, appsid: Param1, msatarget: Param2, msapolicy: Param3, httpmethod: Param4, uri: Param5, headers: Param6, body: *const u8, bodysize: u32, forcerefresh: Param9, ) -> ::windows::runtime::Result<IXblIdpAuthTokenResult>501     pub unsafe fn GetTokenAndSignatureWithTokenResult<
502         'a,
503         Param0: ::windows::runtime::IntoParam<'a, super::Foundation::PWSTR>,
504         Param1: ::windows::runtime::IntoParam<'a, super::Foundation::PWSTR>,
505         Param2: ::windows::runtime::IntoParam<'a, super::Foundation::PWSTR>,
506         Param3: ::windows::runtime::IntoParam<'a, super::Foundation::PWSTR>,
507         Param4: ::windows::runtime::IntoParam<'a, super::Foundation::PWSTR>,
508         Param5: ::windows::runtime::IntoParam<'a, super::Foundation::PWSTR>,
509         Param6: ::windows::runtime::IntoParam<'a, super::Foundation::PWSTR>,
510         Param9: ::windows::runtime::IntoParam<'a, super::Foundation::BOOL>,
511     >(
512         &self,
513         msaaccountid: Param0,
514         appsid: Param1,
515         msatarget: Param2,
516         msapolicy: Param3,
517         httpmethod: Param4,
518         uri: Param5,
519         headers: Param6,
520         body: *const u8,
521         bodysize: u32,
522         forcerefresh: Param9,
523     ) -> ::windows::runtime::Result<IXblIdpAuthTokenResult> {
524         let mut result__: <IXblIdpAuthTokenResult as ::windows::runtime::Abi>::Abi = ::std::mem::zeroed();
525         (::windows::runtime::Interface::vtable(self).8)(
526             ::std::mem::transmute_copy(self),
527             msaaccountid.into_param().abi(),
528             appsid.into_param().abi(),
529             msatarget.into_param().abi(),
530             msapolicy.into_param().abi(),
531             httpmethod.into_param().abi(),
532             uri.into_param().abi(),
533             headers.into_param().abi(),
534             ::std::mem::transmute(body),
535             ::std::mem::transmute(bodysize),
536             forcerefresh.into_param().abi(),
537             &mut result__,
538         )
539         .from_abi::<IXblIdpAuthTokenResult>(result__)
540     }
541 }
542 unsafe impl ::windows::runtime::Interface for IXblIdpAuthManager {
543     type Vtable = IXblIdpAuthManager_abi;
544     const IID: ::windows::runtime::GUID = ::windows::runtime::GUID::from_values(3948796680, 35775, 17563, [172, 33, 176, 45, 222, 179, 177, 54]);
545 }
546 impl ::std::convert::From<IXblIdpAuthManager> for ::windows::runtime::IUnknown {
from(value: IXblIdpAuthManager) -> Self547     fn from(value: IXblIdpAuthManager) -> Self {
548         unsafe { ::std::mem::transmute(value) }
549     }
550 }
551 impl ::std::convert::From<&IXblIdpAuthManager> for ::windows::runtime::IUnknown {
from(value: &IXblIdpAuthManager) -> Self552     fn from(value: &IXblIdpAuthManager) -> Self {
553         ::std::convert::From::from(::std::clone::Clone::clone(value))
554     }
555 }
556 impl<'a> ::windows::runtime::IntoParam<'a, ::windows::runtime::IUnknown> for IXblIdpAuthManager {
into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IUnknown>557     fn into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IUnknown> {
558         ::windows::runtime::Param::Owned(::std::convert::Into::<::windows::runtime::IUnknown>::into(self))
559     }
560 }
561 impl<'a> ::windows::runtime::IntoParam<'a, ::windows::runtime::IUnknown> for &IXblIdpAuthManager {
into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IUnknown>562     fn into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IUnknown> {
563         ::windows::runtime::Param::Owned(::std::convert::Into::<::windows::runtime::IUnknown>::into(::std::clone::Clone::clone(self)))
564     }
565 }
566 #[repr(C)]
567 #[doc(hidden)]
568 pub struct IXblIdpAuthManager_abi(
569     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, iid: &::windows::runtime::GUID, interface: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
570     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr) -> u32,
571     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr) -> u32,
572     #[cfg(feature = "Win32_Foundation")] pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, msaaccountid: super::Foundation::PWSTR, xuid: super::Foundation::PWSTR) -> ::windows::runtime::HRESULT,
573     #[cfg(not(feature = "Win32_Foundation"))] usize,
574     #[cfg(feature = "Win32_Foundation")] pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, msaaccountid: *mut super::Foundation::PWSTR, xuid: *mut super::Foundation::PWSTR) -> ::windows::runtime::HRESULT,
575     #[cfg(not(feature = "Win32_Foundation"))] usize,
576     #[cfg(feature = "Win32_Foundation")] pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, appsid: super::Foundation::PWSTR, msaaccountid: super::Foundation::PWSTR) -> ::windows::runtime::HRESULT,
577     #[cfg(not(feature = "Win32_Foundation"))] usize,
578     #[cfg(feature = "Win32_Foundation")] pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, environment: *mut super::Foundation::PWSTR) -> ::windows::runtime::HRESULT,
579     #[cfg(not(feature = "Win32_Foundation"))] usize,
580     #[cfg(feature = "Win32_Foundation")] pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, sandbox: *mut super::Foundation::PWSTR) -> ::windows::runtime::HRESULT,
581     #[cfg(not(feature = "Win32_Foundation"))] usize,
582     #[cfg(feature = "Win32_Foundation")] pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, msaaccountid: super::Foundation::PWSTR, appsid: super::Foundation::PWSTR, msatarget: super::Foundation::PWSTR, msapolicy: super::Foundation::PWSTR, httpmethod: super::Foundation::PWSTR, uri: super::Foundation::PWSTR, headers: super::Foundation::PWSTR, body: *const u8, bodysize: u32, forcerefresh: super::Foundation::BOOL, result: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
583     #[cfg(not(feature = "Win32_Foundation"))] usize,
584 );
585 #[repr(transparent)]
586 #[derive(:: std :: cmp :: PartialEq, :: std :: cmp :: Eq, :: std :: clone :: Clone, :: std :: fmt :: Debug)]
587 pub struct IXblIdpAuthTokenResult(::windows::runtime::IUnknown);
588 impl IXblIdpAuthTokenResult {
GetStatus(&self) -> ::windows::runtime::Result<XBL_IDP_AUTH_TOKEN_STATUS>589     pub unsafe fn GetStatus(&self) -> ::windows::runtime::Result<XBL_IDP_AUTH_TOKEN_STATUS> {
590         let mut result__: <XBL_IDP_AUTH_TOKEN_STATUS as ::windows::runtime::Abi>::Abi = ::std::mem::zeroed();
591         (::windows::runtime::Interface::vtable(self).3)(::std::mem::transmute_copy(self), &mut result__).from_abi::<XBL_IDP_AUTH_TOKEN_STATUS>(result__)
592     }
GetErrorCode(&self) -> ::windows::runtime::Result<::windows::runtime::HRESULT>593     pub unsafe fn GetErrorCode(&self) -> ::windows::runtime::Result<::windows::runtime::HRESULT> {
594         let mut result__: <::windows::runtime::HRESULT as ::windows::runtime::Abi>::Abi = ::std::mem::zeroed();
595         (::windows::runtime::Interface::vtable(self).4)(::std::mem::transmute_copy(self), &mut result__).from_abi::<::windows::runtime::HRESULT>(result__)
596     }
597     #[cfg(feature = "Win32_Foundation")]
GetToken(&self) -> ::windows::runtime::Result<super::Foundation::PWSTR>598     pub unsafe fn GetToken(&self) -> ::windows::runtime::Result<super::Foundation::PWSTR> {
599         let mut result__: <super::Foundation::PWSTR as ::windows::runtime::Abi>::Abi = ::std::mem::zeroed();
600         (::windows::runtime::Interface::vtable(self).5)(::std::mem::transmute_copy(self), &mut result__).from_abi::<super::Foundation::PWSTR>(result__)
601     }
602     #[cfg(feature = "Win32_Foundation")]
GetSignature(&self) -> ::windows::runtime::Result<super::Foundation::PWSTR>603     pub unsafe fn GetSignature(&self) -> ::windows::runtime::Result<super::Foundation::PWSTR> {
604         let mut result__: <super::Foundation::PWSTR as ::windows::runtime::Abi>::Abi = ::std::mem::zeroed();
605         (::windows::runtime::Interface::vtable(self).6)(::std::mem::transmute_copy(self), &mut result__).from_abi::<super::Foundation::PWSTR>(result__)
606     }
607     #[cfg(feature = "Win32_Foundation")]
GetSandbox(&self) -> ::windows::runtime::Result<super::Foundation::PWSTR>608     pub unsafe fn GetSandbox(&self) -> ::windows::runtime::Result<super::Foundation::PWSTR> {
609         let mut result__: <super::Foundation::PWSTR as ::windows::runtime::Abi>::Abi = ::std::mem::zeroed();
610         (::windows::runtime::Interface::vtable(self).7)(::std::mem::transmute_copy(self), &mut result__).from_abi::<super::Foundation::PWSTR>(result__)
611     }
612     #[cfg(feature = "Win32_Foundation")]
GetEnvironment(&self) -> ::windows::runtime::Result<super::Foundation::PWSTR>613     pub unsafe fn GetEnvironment(&self) -> ::windows::runtime::Result<super::Foundation::PWSTR> {
614         let mut result__: <super::Foundation::PWSTR as ::windows::runtime::Abi>::Abi = ::std::mem::zeroed();
615         (::windows::runtime::Interface::vtable(self).8)(::std::mem::transmute_copy(self), &mut result__).from_abi::<super::Foundation::PWSTR>(result__)
616     }
617     #[cfg(feature = "Win32_Foundation")]
GetMsaAccountId(&self) -> ::windows::runtime::Result<super::Foundation::PWSTR>618     pub unsafe fn GetMsaAccountId(&self) -> ::windows::runtime::Result<super::Foundation::PWSTR> {
619         let mut result__: <super::Foundation::PWSTR as ::windows::runtime::Abi>::Abi = ::std::mem::zeroed();
620         (::windows::runtime::Interface::vtable(self).9)(::std::mem::transmute_copy(self), &mut result__).from_abi::<super::Foundation::PWSTR>(result__)
621     }
622     #[cfg(feature = "Win32_Foundation")]
GetXuid(&self) -> ::windows::runtime::Result<super::Foundation::PWSTR>623     pub unsafe fn GetXuid(&self) -> ::windows::runtime::Result<super::Foundation::PWSTR> {
624         let mut result__: <super::Foundation::PWSTR as ::windows::runtime::Abi>::Abi = ::std::mem::zeroed();
625         (::windows::runtime::Interface::vtable(self).10)(::std::mem::transmute_copy(self), &mut result__).from_abi::<super::Foundation::PWSTR>(result__)
626     }
627     #[cfg(feature = "Win32_Foundation")]
GetGamertag(&self) -> ::windows::runtime::Result<super::Foundation::PWSTR>628     pub unsafe fn GetGamertag(&self) -> ::windows::runtime::Result<super::Foundation::PWSTR> {
629         let mut result__: <super::Foundation::PWSTR as ::windows::runtime::Abi>::Abi = ::std::mem::zeroed();
630         (::windows::runtime::Interface::vtable(self).11)(::std::mem::transmute_copy(self), &mut result__).from_abi::<super::Foundation::PWSTR>(result__)
631     }
632     #[cfg(feature = "Win32_Foundation")]
GetAgeGroup(&self) -> ::windows::runtime::Result<super::Foundation::PWSTR>633     pub unsafe fn GetAgeGroup(&self) -> ::windows::runtime::Result<super::Foundation::PWSTR> {
634         let mut result__: <super::Foundation::PWSTR as ::windows::runtime::Abi>::Abi = ::std::mem::zeroed();
635         (::windows::runtime::Interface::vtable(self).12)(::std::mem::transmute_copy(self), &mut result__).from_abi::<super::Foundation::PWSTR>(result__)
636     }
637     #[cfg(feature = "Win32_Foundation")]
GetPrivileges(&self) -> ::windows::runtime::Result<super::Foundation::PWSTR>638     pub unsafe fn GetPrivileges(&self) -> ::windows::runtime::Result<super::Foundation::PWSTR> {
639         let mut result__: <super::Foundation::PWSTR as ::windows::runtime::Abi>::Abi = ::std::mem::zeroed();
640         (::windows::runtime::Interface::vtable(self).13)(::std::mem::transmute_copy(self), &mut result__).from_abi::<super::Foundation::PWSTR>(result__)
641     }
642     #[cfg(feature = "Win32_Foundation")]
GetMsaTarget(&self) -> ::windows::runtime::Result<super::Foundation::PWSTR>643     pub unsafe fn GetMsaTarget(&self) -> ::windows::runtime::Result<super::Foundation::PWSTR> {
644         let mut result__: <super::Foundation::PWSTR as ::windows::runtime::Abi>::Abi = ::std::mem::zeroed();
645         (::windows::runtime::Interface::vtable(self).14)(::std::mem::transmute_copy(self), &mut result__).from_abi::<super::Foundation::PWSTR>(result__)
646     }
647     #[cfg(feature = "Win32_Foundation")]
GetMsaPolicy(&self) -> ::windows::runtime::Result<super::Foundation::PWSTR>648     pub unsafe fn GetMsaPolicy(&self) -> ::windows::runtime::Result<super::Foundation::PWSTR> {
649         let mut result__: <super::Foundation::PWSTR as ::windows::runtime::Abi>::Abi = ::std::mem::zeroed();
650         (::windows::runtime::Interface::vtable(self).15)(::std::mem::transmute_copy(self), &mut result__).from_abi::<super::Foundation::PWSTR>(result__)
651     }
652     #[cfg(feature = "Win32_Foundation")]
GetMsaAppId(&self) -> ::windows::runtime::Result<super::Foundation::PWSTR>653     pub unsafe fn GetMsaAppId(&self) -> ::windows::runtime::Result<super::Foundation::PWSTR> {
654         let mut result__: <super::Foundation::PWSTR as ::windows::runtime::Abi>::Abi = ::std::mem::zeroed();
655         (::windows::runtime::Interface::vtable(self).16)(::std::mem::transmute_copy(self), &mut result__).from_abi::<super::Foundation::PWSTR>(result__)
656     }
657     #[cfg(feature = "Win32_Foundation")]
GetRedirect(&self) -> ::windows::runtime::Result<super::Foundation::PWSTR>658     pub unsafe fn GetRedirect(&self) -> ::windows::runtime::Result<super::Foundation::PWSTR> {
659         let mut result__: <super::Foundation::PWSTR as ::windows::runtime::Abi>::Abi = ::std::mem::zeroed();
660         (::windows::runtime::Interface::vtable(self).17)(::std::mem::transmute_copy(self), &mut result__).from_abi::<super::Foundation::PWSTR>(result__)
661     }
662     #[cfg(feature = "Win32_Foundation")]
GetMessage(&self) -> ::windows::runtime::Result<super::Foundation::PWSTR>663     pub unsafe fn GetMessage(&self) -> ::windows::runtime::Result<super::Foundation::PWSTR> {
664         let mut result__: <super::Foundation::PWSTR as ::windows::runtime::Abi>::Abi = ::std::mem::zeroed();
665         (::windows::runtime::Interface::vtable(self).18)(::std::mem::transmute_copy(self), &mut result__).from_abi::<super::Foundation::PWSTR>(result__)
666     }
667     #[cfg(feature = "Win32_Foundation")]
GetHelpId(&self) -> ::windows::runtime::Result<super::Foundation::PWSTR>668     pub unsafe fn GetHelpId(&self) -> ::windows::runtime::Result<super::Foundation::PWSTR> {
669         let mut result__: <super::Foundation::PWSTR as ::windows::runtime::Abi>::Abi = ::std::mem::zeroed();
670         (::windows::runtime::Interface::vtable(self).19)(::std::mem::transmute_copy(self), &mut result__).from_abi::<super::Foundation::PWSTR>(result__)
671     }
672     #[cfg(feature = "Win32_Foundation")]
GetEnforcementBans(&self) -> ::windows::runtime::Result<super::Foundation::PWSTR>673     pub unsafe fn GetEnforcementBans(&self) -> ::windows::runtime::Result<super::Foundation::PWSTR> {
674         let mut result__: <super::Foundation::PWSTR as ::windows::runtime::Abi>::Abi = ::std::mem::zeroed();
675         (::windows::runtime::Interface::vtable(self).20)(::std::mem::transmute_copy(self), &mut result__).from_abi::<super::Foundation::PWSTR>(result__)
676     }
677     #[cfg(feature = "Win32_Foundation")]
GetRestrictions(&self) -> ::windows::runtime::Result<super::Foundation::PWSTR>678     pub unsafe fn GetRestrictions(&self) -> ::windows::runtime::Result<super::Foundation::PWSTR> {
679         let mut result__: <super::Foundation::PWSTR as ::windows::runtime::Abi>::Abi = ::std::mem::zeroed();
680         (::windows::runtime::Interface::vtable(self).21)(::std::mem::transmute_copy(self), &mut result__).from_abi::<super::Foundation::PWSTR>(result__)
681     }
682     #[cfg(feature = "Win32_Foundation")]
GetTitleRestrictions(&self) -> ::windows::runtime::Result<super::Foundation::PWSTR>683     pub unsafe fn GetTitleRestrictions(&self) -> ::windows::runtime::Result<super::Foundation::PWSTR> {
684         let mut result__: <super::Foundation::PWSTR as ::windows::runtime::Abi>::Abi = ::std::mem::zeroed();
685         (::windows::runtime::Interface::vtable(self).22)(::std::mem::transmute_copy(self), &mut result__).from_abi::<super::Foundation::PWSTR>(result__)
686     }
687 }
688 unsafe impl ::windows::runtime::Interface for IXblIdpAuthTokenResult {
689     type Vtable = IXblIdpAuthTokenResult_abi;
690     const IID: ::windows::runtime::GUID = ::windows::runtime::GUID::from_values(1187906085, 62055, 19816, [178, 153, 178, 118, 37, 82, 222, 193]);
691 }
692 impl ::std::convert::From<IXblIdpAuthTokenResult> for ::windows::runtime::IUnknown {
from(value: IXblIdpAuthTokenResult) -> Self693     fn from(value: IXblIdpAuthTokenResult) -> Self {
694         unsafe { ::std::mem::transmute(value) }
695     }
696 }
697 impl ::std::convert::From<&IXblIdpAuthTokenResult> for ::windows::runtime::IUnknown {
from(value: &IXblIdpAuthTokenResult) -> Self698     fn from(value: &IXblIdpAuthTokenResult) -> Self {
699         ::std::convert::From::from(::std::clone::Clone::clone(value))
700     }
701 }
702 impl<'a> ::windows::runtime::IntoParam<'a, ::windows::runtime::IUnknown> for IXblIdpAuthTokenResult {
into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IUnknown>703     fn into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IUnknown> {
704         ::windows::runtime::Param::Owned(::std::convert::Into::<::windows::runtime::IUnknown>::into(self))
705     }
706 }
707 impl<'a> ::windows::runtime::IntoParam<'a, ::windows::runtime::IUnknown> for &IXblIdpAuthTokenResult {
into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IUnknown>708     fn into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IUnknown> {
709         ::windows::runtime::Param::Owned(::std::convert::Into::<::windows::runtime::IUnknown>::into(::std::clone::Clone::clone(self)))
710     }
711 }
712 #[repr(C)]
713 #[doc(hidden)]
714 pub struct IXblIdpAuthTokenResult_abi(
715     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, iid: &::windows::runtime::GUID, interface: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
716     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr) -> u32,
717     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr) -> u32,
718     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, status: *mut XBL_IDP_AUTH_TOKEN_STATUS) -> ::windows::runtime::HRESULT,
719     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, errorcode: *mut ::windows::runtime::HRESULT) -> ::windows::runtime::HRESULT,
720     #[cfg(feature = "Win32_Foundation")] pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, token: *mut super::Foundation::PWSTR) -> ::windows::runtime::HRESULT,
721     #[cfg(not(feature = "Win32_Foundation"))] usize,
722     #[cfg(feature = "Win32_Foundation")] pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, signature: *mut super::Foundation::PWSTR) -> ::windows::runtime::HRESULT,
723     #[cfg(not(feature = "Win32_Foundation"))] usize,
724     #[cfg(feature = "Win32_Foundation")] pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, sandbox: *mut super::Foundation::PWSTR) -> ::windows::runtime::HRESULT,
725     #[cfg(not(feature = "Win32_Foundation"))] usize,
726     #[cfg(feature = "Win32_Foundation")] pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, environment: *mut super::Foundation::PWSTR) -> ::windows::runtime::HRESULT,
727     #[cfg(not(feature = "Win32_Foundation"))] usize,
728     #[cfg(feature = "Win32_Foundation")] pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, msaaccountid: *mut super::Foundation::PWSTR) -> ::windows::runtime::HRESULT,
729     #[cfg(not(feature = "Win32_Foundation"))] usize,
730     #[cfg(feature = "Win32_Foundation")] pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, xuid: *mut super::Foundation::PWSTR) -> ::windows::runtime::HRESULT,
731     #[cfg(not(feature = "Win32_Foundation"))] usize,
732     #[cfg(feature = "Win32_Foundation")] pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, gamertag: *mut super::Foundation::PWSTR) -> ::windows::runtime::HRESULT,
733     #[cfg(not(feature = "Win32_Foundation"))] usize,
734     #[cfg(feature = "Win32_Foundation")] pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, agegroup: *mut super::Foundation::PWSTR) -> ::windows::runtime::HRESULT,
735     #[cfg(not(feature = "Win32_Foundation"))] usize,
736     #[cfg(feature = "Win32_Foundation")] pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, privileges: *mut super::Foundation::PWSTR) -> ::windows::runtime::HRESULT,
737     #[cfg(not(feature = "Win32_Foundation"))] usize,
738     #[cfg(feature = "Win32_Foundation")] pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, msatarget: *mut super::Foundation::PWSTR) -> ::windows::runtime::HRESULT,
739     #[cfg(not(feature = "Win32_Foundation"))] usize,
740     #[cfg(feature = "Win32_Foundation")] pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, msapolicy: *mut super::Foundation::PWSTR) -> ::windows::runtime::HRESULT,
741     #[cfg(not(feature = "Win32_Foundation"))] usize,
742     #[cfg(feature = "Win32_Foundation")] pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, msaappid: *mut super::Foundation::PWSTR) -> ::windows::runtime::HRESULT,
743     #[cfg(not(feature = "Win32_Foundation"))] usize,
744     #[cfg(feature = "Win32_Foundation")] pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, redirect: *mut super::Foundation::PWSTR) -> ::windows::runtime::HRESULT,
745     #[cfg(not(feature = "Win32_Foundation"))] usize,
746     #[cfg(feature = "Win32_Foundation")] pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, message: *mut super::Foundation::PWSTR) -> ::windows::runtime::HRESULT,
747     #[cfg(not(feature = "Win32_Foundation"))] usize,
748     #[cfg(feature = "Win32_Foundation")] pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, helpid: *mut super::Foundation::PWSTR) -> ::windows::runtime::HRESULT,
749     #[cfg(not(feature = "Win32_Foundation"))] usize,
750     #[cfg(feature = "Win32_Foundation")] pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, enforcementbans: *mut super::Foundation::PWSTR) -> ::windows::runtime::HRESULT,
751     #[cfg(not(feature = "Win32_Foundation"))] usize,
752     #[cfg(feature = "Win32_Foundation")] pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, restrictions: *mut super::Foundation::PWSTR) -> ::windows::runtime::HRESULT,
753     #[cfg(not(feature = "Win32_Foundation"))] usize,
754     #[cfg(feature = "Win32_Foundation")] pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, titlerestrictions: *mut super::Foundation::PWSTR) -> ::windows::runtime::HRESULT,
755     #[cfg(not(feature = "Win32_Foundation"))] usize,
756 );
757 #[repr(transparent)]
758 #[derive(:: std :: cmp :: PartialEq, :: std :: cmp :: Eq, :: std :: clone :: Clone, :: std :: fmt :: Debug)]
759 pub struct IXblIdpAuthTokenResult2(::windows::runtime::IUnknown);
760 impl IXblIdpAuthTokenResult2 {
761     #[cfg(feature = "Win32_Foundation")]
GetModernGamertag(&self) -> ::windows::runtime::Result<super::Foundation::PWSTR>762     pub unsafe fn GetModernGamertag(&self) -> ::windows::runtime::Result<super::Foundation::PWSTR> {
763         let mut result__: <super::Foundation::PWSTR as ::windows::runtime::Abi>::Abi = ::std::mem::zeroed();
764         (::windows::runtime::Interface::vtable(self).3)(::std::mem::transmute_copy(self), &mut result__).from_abi::<super::Foundation::PWSTR>(result__)
765     }
766     #[cfg(feature = "Win32_Foundation")]
GetModernGamertagSuffix(&self) -> ::windows::runtime::Result<super::Foundation::PWSTR>767     pub unsafe fn GetModernGamertagSuffix(&self) -> ::windows::runtime::Result<super::Foundation::PWSTR> {
768         let mut result__: <super::Foundation::PWSTR as ::windows::runtime::Abi>::Abi = ::std::mem::zeroed();
769         (::windows::runtime::Interface::vtable(self).4)(::std::mem::transmute_copy(self), &mut result__).from_abi::<super::Foundation::PWSTR>(result__)
770     }
771     #[cfg(feature = "Win32_Foundation")]
GetUniqueModernGamertag(&self) -> ::windows::runtime::Result<super::Foundation::PWSTR>772     pub unsafe fn GetUniqueModernGamertag(&self) -> ::windows::runtime::Result<super::Foundation::PWSTR> {
773         let mut result__: <super::Foundation::PWSTR as ::windows::runtime::Abi>::Abi = ::std::mem::zeroed();
774         (::windows::runtime::Interface::vtable(self).5)(::std::mem::transmute_copy(self), &mut result__).from_abi::<super::Foundation::PWSTR>(result__)
775     }
776 }
777 unsafe impl ::windows::runtime::Interface for IXblIdpAuthTokenResult2 {
778     type Vtable = IXblIdpAuthTokenResult2_abi;
779     const IID: ::windows::runtime::GUID = ::windows::runtime::GUID::from_values(1977049264, 24761, 16685, [153, 79, 38, 178, 205, 95, 120, 18]);
780 }
781 impl ::std::convert::From<IXblIdpAuthTokenResult2> for ::windows::runtime::IUnknown {
from(value: IXblIdpAuthTokenResult2) -> Self782     fn from(value: IXblIdpAuthTokenResult2) -> Self {
783         unsafe { ::std::mem::transmute(value) }
784     }
785 }
786 impl ::std::convert::From<&IXblIdpAuthTokenResult2> for ::windows::runtime::IUnknown {
from(value: &IXblIdpAuthTokenResult2) -> Self787     fn from(value: &IXblIdpAuthTokenResult2) -> Self {
788         ::std::convert::From::from(::std::clone::Clone::clone(value))
789     }
790 }
791 impl<'a> ::windows::runtime::IntoParam<'a, ::windows::runtime::IUnknown> for IXblIdpAuthTokenResult2 {
into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IUnknown>792     fn into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IUnknown> {
793         ::windows::runtime::Param::Owned(::std::convert::Into::<::windows::runtime::IUnknown>::into(self))
794     }
795 }
796 impl<'a> ::windows::runtime::IntoParam<'a, ::windows::runtime::IUnknown> for &IXblIdpAuthTokenResult2 {
into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IUnknown>797     fn into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IUnknown> {
798         ::windows::runtime::Param::Owned(::std::convert::Into::<::windows::runtime::IUnknown>::into(::std::clone::Clone::clone(self)))
799     }
800 }
801 #[repr(C)]
802 #[doc(hidden)]
803 pub struct IXblIdpAuthTokenResult2_abi(
804     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, iid: &::windows::runtime::GUID, interface: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
805     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr) -> u32,
806     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr) -> u32,
807     #[cfg(feature = "Win32_Foundation")] pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, value: *mut super::Foundation::PWSTR) -> ::windows::runtime::HRESULT,
808     #[cfg(not(feature = "Win32_Foundation"))] usize,
809     #[cfg(feature = "Win32_Foundation")] pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, value: *mut super::Foundation::PWSTR) -> ::windows::runtime::HRESULT,
810     #[cfg(not(feature = "Win32_Foundation"))] usize,
811     #[cfg(feature = "Win32_Foundation")] pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, value: *mut super::Foundation::PWSTR) -> ::windows::runtime::HRESULT,
812     #[cfg(not(feature = "Win32_Foundation"))] usize,
813 );
814 #[derive(:: std :: cmp :: PartialEq, :: std :: cmp :: Eq, :: std :: marker :: Copy, :: std :: clone :: Clone, :: std :: default :: Default, :: std :: fmt :: Debug)]
815 #[repr(transparent)]
816 pub struct KnownGamingPrivileges(pub i32);
817 pub const XPRIVILEGE_BROADCAST: KnownGamingPrivileges = KnownGamingPrivileges(190i32);
818 pub const XPRIVILEGE_VIEW_FRIENDS_LIST: KnownGamingPrivileges = KnownGamingPrivileges(197i32);
819 pub const XPRIVILEGE_GAME_DVR: KnownGamingPrivileges = KnownGamingPrivileges(198i32);
820 pub const XPRIVILEGE_SHARE_KINECT_CONTENT: KnownGamingPrivileges = KnownGamingPrivileges(199i32);
821 pub const XPRIVILEGE_MULTIPLAYER_PARTIES: KnownGamingPrivileges = KnownGamingPrivileges(203i32);
822 pub const XPRIVILEGE_COMMUNICATION_VOICE_INGAME: KnownGamingPrivileges = KnownGamingPrivileges(205i32);
823 pub const XPRIVILEGE_COMMUNICATION_VOICE_SKYPE: KnownGamingPrivileges = KnownGamingPrivileges(206i32);
824 pub const XPRIVILEGE_CLOUD_GAMING_MANAGE_SESSION: KnownGamingPrivileges = KnownGamingPrivileges(207i32);
825 pub const XPRIVILEGE_CLOUD_GAMING_JOIN_SESSION: KnownGamingPrivileges = KnownGamingPrivileges(208i32);
826 pub const XPRIVILEGE_CLOUD_SAVED_GAMES: KnownGamingPrivileges = KnownGamingPrivileges(209i32);
827 pub const XPRIVILEGE_SHARE_CONTENT: KnownGamingPrivileges = KnownGamingPrivileges(211i32);
828 pub const XPRIVILEGE_PREMIUM_CONTENT: KnownGamingPrivileges = KnownGamingPrivileges(214i32);
829 pub const XPRIVILEGE_SUBSCRIPTION_CONTENT: KnownGamingPrivileges = KnownGamingPrivileges(219i32);
830 pub const XPRIVILEGE_SOCIAL_NETWORK_SHARING: KnownGamingPrivileges = KnownGamingPrivileges(220i32);
831 pub const XPRIVILEGE_PREMIUM_VIDEO: KnownGamingPrivileges = KnownGamingPrivileges(224i32);
832 pub const XPRIVILEGE_VIDEO_COMMUNICATIONS: KnownGamingPrivileges = KnownGamingPrivileges(235i32);
833 pub const XPRIVILEGE_PURCHASE_CONTENT: KnownGamingPrivileges = KnownGamingPrivileges(245i32);
834 pub const XPRIVILEGE_USER_CREATED_CONTENT: KnownGamingPrivileges = KnownGamingPrivileges(247i32);
835 pub const XPRIVILEGE_PROFILE_VIEWING: KnownGamingPrivileges = KnownGamingPrivileges(249i32);
836 pub const XPRIVILEGE_COMMUNICATIONS: KnownGamingPrivileges = KnownGamingPrivileges(252i32);
837 pub const XPRIVILEGE_MULTIPLAYER_SESSIONS: KnownGamingPrivileges = KnownGamingPrivileges(254i32);
838 pub const XPRIVILEGE_ADD_FRIEND: KnownGamingPrivileges = KnownGamingPrivileges(255i32);
839 impl ::std::convert::From<i32> for KnownGamingPrivileges {
from(value: i32) -> Self840     fn from(value: i32) -> Self {
841         Self(value)
842     }
843 }
844 unsafe impl ::windows::runtime::Abi for KnownGamingPrivileges {
845     type Abi = Self;
846     type DefaultType = Self;
847 }
848 pub type PlayerPickerUICompletionRoutine = unsafe extern "system" fn(returncode: ::windows::runtime::HRESULT, context: *const ::std::ffi::c_void, selectedxuids: *const ::std::mem::ManuallyDrop<::windows::runtime::HSTRING>, selectedxuidscount: usize);
849 #[cfg(feature = "Win32_Foundation")]
850 #[inline]
ProcessPendingGameUI<'a, Param0: ::windows::runtime::IntoParam<'a, super::Foundation::BOOL>>(waitforcompletion: Param0) -> ::windows::runtime::Result<()>851 pub unsafe fn ProcessPendingGameUI<'a, Param0: ::windows::runtime::IntoParam<'a, super::Foundation::BOOL>>(waitforcompletion: Param0) -> ::windows::runtime::Result<()> {
852     #[cfg(windows)]
853     {
854         #[link(name = "windows")]
855         extern "system" {
856             fn ProcessPendingGameUI(waitforcompletion: super::Foundation::BOOL) -> ::windows::runtime::HRESULT;
857         }
858         ProcessPendingGameUI(waitforcompletion.into_param().abi()).ok()
859     }
860     #[cfg(not(windows))]
861     unimplemented!("Unsupported target OS");
862 }
863 #[inline]
ReleaseExclusiveCpuSets() -> ::windows::runtime::Result<()>864 pub unsafe fn ReleaseExclusiveCpuSets() -> ::windows::runtime::Result<()> {
865     #[cfg(windows)]
866     {
867         #[link(name = "windows")]
868         extern "system" {
869             fn ReleaseExclusiveCpuSets() -> ::windows::runtime::HRESULT;
870         }
871         ReleaseExclusiveCpuSets().ok()
872     }
873     #[cfg(not(windows))]
874     unimplemented!("Unsupported target OS");
875 }
876 #[inline]
ShowChangeFriendRelationshipUI<'a, Param0: ::windows::runtime::IntoParam<'a, ::windows::runtime::HSTRING>>(targetuserxuid: Param0, completionroutine: ::std::option::Option<GameUICompletionRoutine>, context: *const ::std::ffi::c_void) -> ::windows::runtime::Result<()>877 pub unsafe fn ShowChangeFriendRelationshipUI<'a, Param0: ::windows::runtime::IntoParam<'a, ::windows::runtime::HSTRING>>(targetuserxuid: Param0, completionroutine: ::std::option::Option<GameUICompletionRoutine>, context: *const ::std::ffi::c_void) -> ::windows::runtime::Result<()> {
878     #[cfg(windows)]
879     {
880         #[link(name = "windows")]
881         extern "system" {
882             fn ShowChangeFriendRelationshipUI(targetuserxuid: ::std::mem::ManuallyDrop<::windows::runtime::HSTRING>, completionroutine: ::windows::runtime::RawPtr, context: *const ::std::ffi::c_void) -> ::windows::runtime::HRESULT;
883         }
884         ShowChangeFriendRelationshipUI(targetuserxuid.into_param().abi(), ::std::mem::transmute(completionroutine), ::std::mem::transmute(context)).ok()
885     }
886     #[cfg(not(windows))]
887     unimplemented!("Unsupported target OS");
888 }
889 #[inline]
ShowChangeFriendRelationshipUIForUser<'a, Param0: ::windows::runtime::IntoParam<'a, ::windows::runtime::IInspectable>, Param1: ::windows::runtime::IntoParam<'a, ::windows::runtime::HSTRING>>(user: Param0, targetuserxuid: Param1, completionroutine: ::std::option::Option<GameUICompletionRoutine>, context: *const ::std::ffi::c_void) -> ::windows::runtime::Result<()>890 pub unsafe fn ShowChangeFriendRelationshipUIForUser<'a, Param0: ::windows::runtime::IntoParam<'a, ::windows::runtime::IInspectable>, Param1: ::windows::runtime::IntoParam<'a, ::windows::runtime::HSTRING>>(user: Param0, targetuserxuid: Param1, completionroutine: ::std::option::Option<GameUICompletionRoutine>, context: *const ::std::ffi::c_void) -> ::windows::runtime::Result<()> {
891     #[cfg(windows)]
892     {
893         #[link(name = "windows")]
894         extern "system" {
895             fn ShowChangeFriendRelationshipUIForUser(user: ::windows::runtime::RawPtr, targetuserxuid: ::std::mem::ManuallyDrop<::windows::runtime::HSTRING>, completionroutine: ::windows::runtime::RawPtr, context: *const ::std::ffi::c_void) -> ::windows::runtime::HRESULT;
896         }
897         ShowChangeFriendRelationshipUIForUser(user.into_param().abi(), targetuserxuid.into_param().abi(), ::std::mem::transmute(completionroutine), ::std::mem::transmute(context)).ok()
898     }
899     #[cfg(not(windows))]
900     unimplemented!("Unsupported target OS");
901 }
902 #[inline]
ShowCustomizeUserProfileUI(completionroutine: ::std::option::Option<GameUICompletionRoutine>, context: *const ::std::ffi::c_void) -> ::windows::runtime::Result<()>903 pub unsafe fn ShowCustomizeUserProfileUI(completionroutine: ::std::option::Option<GameUICompletionRoutine>, context: *const ::std::ffi::c_void) -> ::windows::runtime::Result<()> {
904     #[cfg(windows)]
905     {
906         #[link(name = "windows")]
907         extern "system" {
908             fn ShowCustomizeUserProfileUI(completionroutine: ::windows::runtime::RawPtr, context: *const ::std::ffi::c_void) -> ::windows::runtime::HRESULT;
909         }
910         ShowCustomizeUserProfileUI(::std::mem::transmute(completionroutine), ::std::mem::transmute(context)).ok()
911     }
912     #[cfg(not(windows))]
913     unimplemented!("Unsupported target OS");
914 }
915 #[inline]
ShowCustomizeUserProfileUIForUser<'a, Param0: ::windows::runtime::IntoParam<'a, ::windows::runtime::IInspectable>>(user: Param0, completionroutine: ::std::option::Option<GameUICompletionRoutine>, context: *const ::std::ffi::c_void) -> ::windows::runtime::Result<()>916 pub unsafe fn ShowCustomizeUserProfileUIForUser<'a, Param0: ::windows::runtime::IntoParam<'a, ::windows::runtime::IInspectable>>(user: Param0, completionroutine: ::std::option::Option<GameUICompletionRoutine>, context: *const ::std::ffi::c_void) -> ::windows::runtime::Result<()> {
917     #[cfg(windows)]
918     {
919         #[link(name = "windows")]
920         extern "system" {
921             fn ShowCustomizeUserProfileUIForUser(user: ::windows::runtime::RawPtr, completionroutine: ::windows::runtime::RawPtr, context: *const ::std::ffi::c_void) -> ::windows::runtime::HRESULT;
922         }
923         ShowCustomizeUserProfileUIForUser(user.into_param().abi(), ::std::mem::transmute(completionroutine), ::std::mem::transmute(context)).ok()
924     }
925     #[cfg(not(windows))]
926     unimplemented!("Unsupported target OS");
927 }
928 #[inline]
ShowFindFriendsUI(completionroutine: ::std::option::Option<GameUICompletionRoutine>, context: *const ::std::ffi::c_void) -> ::windows::runtime::Result<()>929 pub unsafe fn ShowFindFriendsUI(completionroutine: ::std::option::Option<GameUICompletionRoutine>, context: *const ::std::ffi::c_void) -> ::windows::runtime::Result<()> {
930     #[cfg(windows)]
931     {
932         #[link(name = "windows")]
933         extern "system" {
934             fn ShowFindFriendsUI(completionroutine: ::windows::runtime::RawPtr, context: *const ::std::ffi::c_void) -> ::windows::runtime::HRESULT;
935         }
936         ShowFindFriendsUI(::std::mem::transmute(completionroutine), ::std::mem::transmute(context)).ok()
937     }
938     #[cfg(not(windows))]
939     unimplemented!("Unsupported target OS");
940 }
941 #[inline]
ShowFindFriendsUIForUser<'a, Param0: ::windows::runtime::IntoParam<'a, ::windows::runtime::IInspectable>>(user: Param0, completionroutine: ::std::option::Option<GameUICompletionRoutine>, context: *const ::std::ffi::c_void) -> ::windows::runtime::Result<()>942 pub unsafe fn ShowFindFriendsUIForUser<'a, Param0: ::windows::runtime::IntoParam<'a, ::windows::runtime::IInspectable>>(user: Param0, completionroutine: ::std::option::Option<GameUICompletionRoutine>, context: *const ::std::ffi::c_void) -> ::windows::runtime::Result<()> {
943     #[cfg(windows)]
944     {
945         #[link(name = "windows")]
946         extern "system" {
947             fn ShowFindFriendsUIForUser(user: ::windows::runtime::RawPtr, completionroutine: ::windows::runtime::RawPtr, context: *const ::std::ffi::c_void) -> ::windows::runtime::HRESULT;
948         }
949         ShowFindFriendsUIForUser(user.into_param().abi(), ::std::mem::transmute(completionroutine), ::std::mem::transmute(context)).ok()
950     }
951     #[cfg(not(windows))]
952     unimplemented!("Unsupported target OS");
953 }
954 #[inline]
ShowGameInfoUI(titleid: u32, completionroutine: ::std::option::Option<GameUICompletionRoutine>, context: *const ::std::ffi::c_void) -> ::windows::runtime::Result<()>955 pub unsafe fn ShowGameInfoUI(titleid: u32, completionroutine: ::std::option::Option<GameUICompletionRoutine>, context: *const ::std::ffi::c_void) -> ::windows::runtime::Result<()> {
956     #[cfg(windows)]
957     {
958         #[link(name = "windows")]
959         extern "system" {
960             fn ShowGameInfoUI(titleid: u32, completionroutine: ::windows::runtime::RawPtr, context: *const ::std::ffi::c_void) -> ::windows::runtime::HRESULT;
961         }
962         ShowGameInfoUI(::std::mem::transmute(titleid), ::std::mem::transmute(completionroutine), ::std::mem::transmute(context)).ok()
963     }
964     #[cfg(not(windows))]
965     unimplemented!("Unsupported target OS");
966 }
967 #[inline]
ShowGameInfoUIForUser<'a, Param0: ::windows::runtime::IntoParam<'a, ::windows::runtime::IInspectable>>(user: Param0, titleid: u32, completionroutine: ::std::option::Option<GameUICompletionRoutine>, context: *const ::std::ffi::c_void) -> ::windows::runtime::Result<()>968 pub unsafe fn ShowGameInfoUIForUser<'a, Param0: ::windows::runtime::IntoParam<'a, ::windows::runtime::IInspectable>>(user: Param0, titleid: u32, completionroutine: ::std::option::Option<GameUICompletionRoutine>, context: *const ::std::ffi::c_void) -> ::windows::runtime::Result<()> {
969     #[cfg(windows)]
970     {
971         #[link(name = "windows")]
972         extern "system" {
973             fn ShowGameInfoUIForUser(user: ::windows::runtime::RawPtr, titleid: u32, completionroutine: ::windows::runtime::RawPtr, context: *const ::std::ffi::c_void) -> ::windows::runtime::HRESULT;
974         }
975         ShowGameInfoUIForUser(user.into_param().abi(), ::std::mem::transmute(titleid), ::std::mem::transmute(completionroutine), ::std::mem::transmute(context)).ok()
976     }
977     #[cfg(not(windows))]
978     unimplemented!("Unsupported target OS");
979 }
980 #[inline]
ShowGameInviteUI<'a, Param0: ::windows::runtime::IntoParam<'a, ::windows::runtime::HSTRING>, Param1: ::windows::runtime::IntoParam<'a, ::windows::runtime::HSTRING>, Param2: ::windows::runtime::IntoParam<'a, ::windows::runtime::HSTRING>, Param3: ::windows::runtime::IntoParam<'a, ::windows::runtime::HSTRING>>( serviceconfigurationid: Param0, sessiontemplatename: Param1, sessionid: Param2, invitationdisplaytext: Param3, completionroutine: ::std::option::Option<GameUICompletionRoutine>, context: *const ::std::ffi::c_void, ) -> ::windows::runtime::Result<()>981 pub unsafe fn ShowGameInviteUI<'a, Param0: ::windows::runtime::IntoParam<'a, ::windows::runtime::HSTRING>, Param1: ::windows::runtime::IntoParam<'a, ::windows::runtime::HSTRING>, Param2: ::windows::runtime::IntoParam<'a, ::windows::runtime::HSTRING>, Param3: ::windows::runtime::IntoParam<'a, ::windows::runtime::HSTRING>>(
982     serviceconfigurationid: Param0,
983     sessiontemplatename: Param1,
984     sessionid: Param2,
985     invitationdisplaytext: Param3,
986     completionroutine: ::std::option::Option<GameUICompletionRoutine>,
987     context: *const ::std::ffi::c_void,
988 ) -> ::windows::runtime::Result<()> {
989     #[cfg(windows)]
990     {
991         #[link(name = "windows")]
992         extern "system" {
993             fn ShowGameInviteUI(serviceconfigurationid: ::std::mem::ManuallyDrop<::windows::runtime::HSTRING>, sessiontemplatename: ::std::mem::ManuallyDrop<::windows::runtime::HSTRING>, sessionid: ::std::mem::ManuallyDrop<::windows::runtime::HSTRING>, invitationdisplaytext: ::std::mem::ManuallyDrop<::windows::runtime::HSTRING>, completionroutine: ::windows::runtime::RawPtr, context: *const ::std::ffi::c_void) -> ::windows::runtime::HRESULT;
994         }
995         ShowGameInviteUI(serviceconfigurationid.into_param().abi(), sessiontemplatename.into_param().abi(), sessionid.into_param().abi(), invitationdisplaytext.into_param().abi(), ::std::mem::transmute(completionroutine), ::std::mem::transmute(context)).ok()
996     }
997     #[cfg(not(windows))]
998     unimplemented!("Unsupported target OS");
999 }
1000 #[inline]
ShowGameInviteUIForUser<'a, Param0: ::windows::runtime::IntoParam<'a, ::windows::runtime::IInspectable>, Param1: ::windows::runtime::IntoParam<'a, ::windows::runtime::HSTRING>, Param2: ::windows::runtime::IntoParam<'a, ::windows::runtime::HSTRING>, Param3: ::windows::runtime::IntoParam<'a, ::windows::runtime::HSTRING>, Param4: ::windows::runtime::IntoParam<'a, ::windows::runtime::HSTRING>>( user: Param0, serviceconfigurationid: Param1, sessiontemplatename: Param2, sessionid: Param3, invitationdisplaytext: Param4, completionroutine: ::std::option::Option<GameUICompletionRoutine>, context: *const ::std::ffi::c_void, ) -> ::windows::runtime::Result<()>1001 pub unsafe fn ShowGameInviteUIForUser<'a, Param0: ::windows::runtime::IntoParam<'a, ::windows::runtime::IInspectable>, Param1: ::windows::runtime::IntoParam<'a, ::windows::runtime::HSTRING>, Param2: ::windows::runtime::IntoParam<'a, ::windows::runtime::HSTRING>, Param3: ::windows::runtime::IntoParam<'a, ::windows::runtime::HSTRING>, Param4: ::windows::runtime::IntoParam<'a, ::windows::runtime::HSTRING>>(
1002     user: Param0,
1003     serviceconfigurationid: Param1,
1004     sessiontemplatename: Param2,
1005     sessionid: Param3,
1006     invitationdisplaytext: Param4,
1007     completionroutine: ::std::option::Option<GameUICompletionRoutine>,
1008     context: *const ::std::ffi::c_void,
1009 ) -> ::windows::runtime::Result<()> {
1010     #[cfg(windows)]
1011     {
1012         #[link(name = "windows")]
1013         extern "system" {
1014             fn ShowGameInviteUIForUser(user: ::windows::runtime::RawPtr, serviceconfigurationid: ::std::mem::ManuallyDrop<::windows::runtime::HSTRING>, sessiontemplatename: ::std::mem::ManuallyDrop<::windows::runtime::HSTRING>, sessionid: ::std::mem::ManuallyDrop<::windows::runtime::HSTRING>, invitationdisplaytext: ::std::mem::ManuallyDrop<::windows::runtime::HSTRING>, completionroutine: ::windows::runtime::RawPtr, context: *const ::std::ffi::c_void) -> ::windows::runtime::HRESULT;
1015         }
1016         ShowGameInviteUIForUser(user.into_param().abi(), serviceconfigurationid.into_param().abi(), sessiontemplatename.into_param().abi(), sessionid.into_param().abi(), invitationdisplaytext.into_param().abi(), ::std::mem::transmute(completionroutine), ::std::mem::transmute(context)).ok()
1017     }
1018     #[cfg(not(windows))]
1019     unimplemented!("Unsupported target OS");
1020 }
1021 #[inline]
ShowGameInviteUIWithContext<'a, Param0: ::windows::runtime::IntoParam<'a, ::windows::runtime::HSTRING>, Param1: ::windows::runtime::IntoParam<'a, ::windows::runtime::HSTRING>, Param2: ::windows::runtime::IntoParam<'a, ::windows::runtime::HSTRING>, Param3: ::windows::runtime::IntoParam<'a, ::windows::runtime::HSTRING>, Param4: ::windows::runtime::IntoParam<'a, ::windows::runtime::HSTRING>>( serviceconfigurationid: Param0, sessiontemplatename: Param1, sessionid: Param2, invitationdisplaytext: Param3, customactivationcontext: Param4, completionroutine: ::std::option::Option<GameUICompletionRoutine>, context: *const ::std::ffi::c_void, ) -> ::windows::runtime::Result<()>1022 pub unsafe fn ShowGameInviteUIWithContext<'a, Param0: ::windows::runtime::IntoParam<'a, ::windows::runtime::HSTRING>, Param1: ::windows::runtime::IntoParam<'a, ::windows::runtime::HSTRING>, Param2: ::windows::runtime::IntoParam<'a, ::windows::runtime::HSTRING>, Param3: ::windows::runtime::IntoParam<'a, ::windows::runtime::HSTRING>, Param4: ::windows::runtime::IntoParam<'a, ::windows::runtime::HSTRING>>(
1023     serviceconfigurationid: Param0,
1024     sessiontemplatename: Param1,
1025     sessionid: Param2,
1026     invitationdisplaytext: Param3,
1027     customactivationcontext: Param4,
1028     completionroutine: ::std::option::Option<GameUICompletionRoutine>,
1029     context: *const ::std::ffi::c_void,
1030 ) -> ::windows::runtime::Result<()> {
1031     #[cfg(windows)]
1032     {
1033         #[link(name = "windows")]
1034         extern "system" {
1035             fn ShowGameInviteUIWithContext(
1036                 serviceconfigurationid: ::std::mem::ManuallyDrop<::windows::runtime::HSTRING>,
1037                 sessiontemplatename: ::std::mem::ManuallyDrop<::windows::runtime::HSTRING>,
1038                 sessionid: ::std::mem::ManuallyDrop<::windows::runtime::HSTRING>,
1039                 invitationdisplaytext: ::std::mem::ManuallyDrop<::windows::runtime::HSTRING>,
1040                 customactivationcontext: ::std::mem::ManuallyDrop<::windows::runtime::HSTRING>,
1041                 completionroutine: ::windows::runtime::RawPtr,
1042                 context: *const ::std::ffi::c_void,
1043             ) -> ::windows::runtime::HRESULT;
1044         }
1045         ShowGameInviteUIWithContext(serviceconfigurationid.into_param().abi(), sessiontemplatename.into_param().abi(), sessionid.into_param().abi(), invitationdisplaytext.into_param().abi(), customactivationcontext.into_param().abi(), ::std::mem::transmute(completionroutine), ::std::mem::transmute(context)).ok()
1046     }
1047     #[cfg(not(windows))]
1048     unimplemented!("Unsupported target OS");
1049 }
1050 #[inline]
ShowGameInviteUIWithContextForUser<'a, Param0: ::windows::runtime::IntoParam<'a, ::windows::runtime::IInspectable>, Param1: ::windows::runtime::IntoParam<'a, ::windows::runtime::HSTRING>, Param2: ::windows::runtime::IntoParam<'a, ::windows::runtime::HSTRING>, Param3: ::windows::runtime::IntoParam<'a, ::windows::runtime::HSTRING>, Param4: ::windows::runtime::IntoParam<'a, ::windows::runtime::HSTRING>, Param5: ::windows::runtime::IntoParam<'a, ::windows::runtime::HSTRING>>( user: Param0, serviceconfigurationid: Param1, sessiontemplatename: Param2, sessionid: Param3, invitationdisplaytext: Param4, customactivationcontext: Param5, completionroutine: ::std::option::Option<GameUICompletionRoutine>, context: *const ::std::ffi::c_void, ) -> ::windows::runtime::Result<()>1051 pub unsafe fn ShowGameInviteUIWithContextForUser<'a, Param0: ::windows::runtime::IntoParam<'a, ::windows::runtime::IInspectable>, Param1: ::windows::runtime::IntoParam<'a, ::windows::runtime::HSTRING>, Param2: ::windows::runtime::IntoParam<'a, ::windows::runtime::HSTRING>, Param3: ::windows::runtime::IntoParam<'a, ::windows::runtime::HSTRING>, Param4: ::windows::runtime::IntoParam<'a, ::windows::runtime::HSTRING>, Param5: ::windows::runtime::IntoParam<'a, ::windows::runtime::HSTRING>>(
1052     user: Param0,
1053     serviceconfigurationid: Param1,
1054     sessiontemplatename: Param2,
1055     sessionid: Param3,
1056     invitationdisplaytext: Param4,
1057     customactivationcontext: Param5,
1058     completionroutine: ::std::option::Option<GameUICompletionRoutine>,
1059     context: *const ::std::ffi::c_void,
1060 ) -> ::windows::runtime::Result<()> {
1061     #[cfg(windows)]
1062     {
1063         #[link(name = "windows")]
1064         extern "system" {
1065             fn ShowGameInviteUIWithContextForUser(
1066                 user: ::windows::runtime::RawPtr,
1067                 serviceconfigurationid: ::std::mem::ManuallyDrop<::windows::runtime::HSTRING>,
1068                 sessiontemplatename: ::std::mem::ManuallyDrop<::windows::runtime::HSTRING>,
1069                 sessionid: ::std::mem::ManuallyDrop<::windows::runtime::HSTRING>,
1070                 invitationdisplaytext: ::std::mem::ManuallyDrop<::windows::runtime::HSTRING>,
1071                 customactivationcontext: ::std::mem::ManuallyDrop<::windows::runtime::HSTRING>,
1072                 completionroutine: ::windows::runtime::RawPtr,
1073                 context: *const ::std::ffi::c_void,
1074             ) -> ::windows::runtime::HRESULT;
1075         }
1076         ShowGameInviteUIWithContextForUser(user.into_param().abi(), serviceconfigurationid.into_param().abi(), sessiontemplatename.into_param().abi(), sessionid.into_param().abi(), invitationdisplaytext.into_param().abi(), customactivationcontext.into_param().abi(), ::std::mem::transmute(completionroutine), ::std::mem::transmute(context)).ok()
1077     }
1078     #[cfg(not(windows))]
1079     unimplemented!("Unsupported target OS");
1080 }
1081 #[inline]
ShowPlayerPickerUI<'a, Param0: ::windows::runtime::IntoParam<'a, ::windows::runtime::HSTRING>>(promptdisplaytext: Param0, xuids: *const ::windows::runtime::HSTRING, xuidscount: usize, preselectedxuids: *const ::windows::runtime::HSTRING, preselectedxuidscount: usize, minselectioncount: usize, maxselectioncount: usize, completionroutine: ::std::option::Option<PlayerPickerUICompletionRoutine>, context: *const ::std::ffi::c_void) -> ::windows::runtime::Result<()>1082 pub unsafe fn ShowPlayerPickerUI<'a, Param0: ::windows::runtime::IntoParam<'a, ::windows::runtime::HSTRING>>(promptdisplaytext: Param0, xuids: *const ::windows::runtime::HSTRING, xuidscount: usize, preselectedxuids: *const ::windows::runtime::HSTRING, preselectedxuidscount: usize, minselectioncount: usize, maxselectioncount: usize, completionroutine: ::std::option::Option<PlayerPickerUICompletionRoutine>, context: *const ::std::ffi::c_void) -> ::windows::runtime::Result<()> {
1083     #[cfg(windows)]
1084     {
1085         #[link(name = "windows")]
1086         extern "system" {
1087             fn ShowPlayerPickerUI(promptdisplaytext: ::std::mem::ManuallyDrop<::windows::runtime::HSTRING>, xuids: *const ::std::mem::ManuallyDrop<::windows::runtime::HSTRING>, xuidscount: usize, preselectedxuids: *const ::std::mem::ManuallyDrop<::windows::runtime::HSTRING>, preselectedxuidscount: usize, minselectioncount: usize, maxselectioncount: usize, completionroutine: ::windows::runtime::RawPtr, context: *const ::std::ffi::c_void) -> ::windows::runtime::HRESULT;
1088         }
1089         ShowPlayerPickerUI(
1090             promptdisplaytext.into_param().abi(),
1091             ::std::mem::transmute(xuids),
1092             ::std::mem::transmute(xuidscount),
1093             ::std::mem::transmute(preselectedxuids),
1094             ::std::mem::transmute(preselectedxuidscount),
1095             ::std::mem::transmute(minselectioncount),
1096             ::std::mem::transmute(maxselectioncount),
1097             ::std::mem::transmute(completionroutine),
1098             ::std::mem::transmute(context),
1099         )
1100         .ok()
1101     }
1102     #[cfg(not(windows))]
1103     unimplemented!("Unsupported target OS");
1104 }
1105 #[inline]
ShowPlayerPickerUIForUser<'a, Param0: ::windows::runtime::IntoParam<'a, ::windows::runtime::IInspectable>, Param1: ::windows::runtime::IntoParam<'a, ::windows::runtime::HSTRING>>( user: Param0, promptdisplaytext: Param1, xuids: *const ::windows::runtime::HSTRING, xuidscount: usize, preselectedxuids: *const ::windows::runtime::HSTRING, preselectedxuidscount: usize, minselectioncount: usize, maxselectioncount: usize, completionroutine: ::std::option::Option<PlayerPickerUICompletionRoutine>, context: *const ::std::ffi::c_void, ) -> ::windows::runtime::Result<()>1106 pub unsafe fn ShowPlayerPickerUIForUser<'a, Param0: ::windows::runtime::IntoParam<'a, ::windows::runtime::IInspectable>, Param1: ::windows::runtime::IntoParam<'a, ::windows::runtime::HSTRING>>(
1107     user: Param0,
1108     promptdisplaytext: Param1,
1109     xuids: *const ::windows::runtime::HSTRING,
1110     xuidscount: usize,
1111     preselectedxuids: *const ::windows::runtime::HSTRING,
1112     preselectedxuidscount: usize,
1113     minselectioncount: usize,
1114     maxselectioncount: usize,
1115     completionroutine: ::std::option::Option<PlayerPickerUICompletionRoutine>,
1116     context: *const ::std::ffi::c_void,
1117 ) -> ::windows::runtime::Result<()> {
1118     #[cfg(windows)]
1119     {
1120         #[link(name = "windows")]
1121         extern "system" {
1122             fn ShowPlayerPickerUIForUser(
1123                 user: ::windows::runtime::RawPtr,
1124                 promptdisplaytext: ::std::mem::ManuallyDrop<::windows::runtime::HSTRING>,
1125                 xuids: *const ::std::mem::ManuallyDrop<::windows::runtime::HSTRING>,
1126                 xuidscount: usize,
1127                 preselectedxuids: *const ::std::mem::ManuallyDrop<::windows::runtime::HSTRING>,
1128                 preselectedxuidscount: usize,
1129                 minselectioncount: usize,
1130                 maxselectioncount: usize,
1131                 completionroutine: ::windows::runtime::RawPtr,
1132                 context: *const ::std::ffi::c_void,
1133             ) -> ::windows::runtime::HRESULT;
1134         }
1135         ShowPlayerPickerUIForUser(
1136             user.into_param().abi(),
1137             promptdisplaytext.into_param().abi(),
1138             ::std::mem::transmute(xuids),
1139             ::std::mem::transmute(xuidscount),
1140             ::std::mem::transmute(preselectedxuids),
1141             ::std::mem::transmute(preselectedxuidscount),
1142             ::std::mem::transmute(minselectioncount),
1143             ::std::mem::transmute(maxselectioncount),
1144             ::std::mem::transmute(completionroutine),
1145             ::std::mem::transmute(context),
1146         )
1147         .ok()
1148     }
1149     #[cfg(not(windows))]
1150     unimplemented!("Unsupported target OS");
1151 }
1152 #[inline]
ShowProfileCardUI<'a, Param0: ::windows::runtime::IntoParam<'a, ::windows::runtime::HSTRING>>(targetuserxuid: Param0, completionroutine: ::std::option::Option<GameUICompletionRoutine>, context: *const ::std::ffi::c_void) -> ::windows::runtime::Result<()>1153 pub unsafe fn ShowProfileCardUI<'a, Param0: ::windows::runtime::IntoParam<'a, ::windows::runtime::HSTRING>>(targetuserxuid: Param0, completionroutine: ::std::option::Option<GameUICompletionRoutine>, context: *const ::std::ffi::c_void) -> ::windows::runtime::Result<()> {
1154     #[cfg(windows)]
1155     {
1156         #[link(name = "windows")]
1157         extern "system" {
1158             fn ShowProfileCardUI(targetuserxuid: ::std::mem::ManuallyDrop<::windows::runtime::HSTRING>, completionroutine: ::windows::runtime::RawPtr, context: *const ::std::ffi::c_void) -> ::windows::runtime::HRESULT;
1159         }
1160         ShowProfileCardUI(targetuserxuid.into_param().abi(), ::std::mem::transmute(completionroutine), ::std::mem::transmute(context)).ok()
1161     }
1162     #[cfg(not(windows))]
1163     unimplemented!("Unsupported target OS");
1164 }
1165 #[inline]
ShowProfileCardUIForUser<'a, Param0: ::windows::runtime::IntoParam<'a, ::windows::runtime::IInspectable>, Param1: ::windows::runtime::IntoParam<'a, ::windows::runtime::HSTRING>>(user: Param0, targetuserxuid: Param1, completionroutine: ::std::option::Option<GameUICompletionRoutine>, context: *const ::std::ffi::c_void) -> ::windows::runtime::Result<()>1166 pub unsafe fn ShowProfileCardUIForUser<'a, Param0: ::windows::runtime::IntoParam<'a, ::windows::runtime::IInspectable>, Param1: ::windows::runtime::IntoParam<'a, ::windows::runtime::HSTRING>>(user: Param0, targetuserxuid: Param1, completionroutine: ::std::option::Option<GameUICompletionRoutine>, context: *const ::std::ffi::c_void) -> ::windows::runtime::Result<()> {
1167     #[cfg(windows)]
1168     {
1169         #[link(name = "windows")]
1170         extern "system" {
1171             fn ShowProfileCardUIForUser(user: ::windows::runtime::RawPtr, targetuserxuid: ::std::mem::ManuallyDrop<::windows::runtime::HSTRING>, completionroutine: ::windows::runtime::RawPtr, context: *const ::std::ffi::c_void) -> ::windows::runtime::HRESULT;
1172         }
1173         ShowProfileCardUIForUser(user.into_param().abi(), targetuserxuid.into_param().abi(), ::std::mem::transmute(completionroutine), ::std::mem::transmute(context)).ok()
1174     }
1175     #[cfg(not(windows))]
1176     unimplemented!("Unsupported target OS");
1177 }
1178 #[inline]
ShowTitleAchievementsUI(titleid: u32, completionroutine: ::std::option::Option<GameUICompletionRoutine>, context: *const ::std::ffi::c_void) -> ::windows::runtime::Result<()>1179 pub unsafe fn ShowTitleAchievementsUI(titleid: u32, completionroutine: ::std::option::Option<GameUICompletionRoutine>, context: *const ::std::ffi::c_void) -> ::windows::runtime::Result<()> {
1180     #[cfg(windows)]
1181     {
1182         #[link(name = "windows")]
1183         extern "system" {
1184             fn ShowTitleAchievementsUI(titleid: u32, completionroutine: ::windows::runtime::RawPtr, context: *const ::std::ffi::c_void) -> ::windows::runtime::HRESULT;
1185         }
1186         ShowTitleAchievementsUI(::std::mem::transmute(titleid), ::std::mem::transmute(completionroutine), ::std::mem::transmute(context)).ok()
1187     }
1188     #[cfg(not(windows))]
1189     unimplemented!("Unsupported target OS");
1190 }
1191 #[inline]
ShowTitleAchievementsUIForUser<'a, Param0: ::windows::runtime::IntoParam<'a, ::windows::runtime::IInspectable>>(user: Param0, titleid: u32, completionroutine: ::std::option::Option<GameUICompletionRoutine>, context: *const ::std::ffi::c_void) -> ::windows::runtime::Result<()>1192 pub unsafe fn ShowTitleAchievementsUIForUser<'a, Param0: ::windows::runtime::IntoParam<'a, ::windows::runtime::IInspectable>>(user: Param0, titleid: u32, completionroutine: ::std::option::Option<GameUICompletionRoutine>, context: *const ::std::ffi::c_void) -> ::windows::runtime::Result<()> {
1193     #[cfg(windows)]
1194     {
1195         #[link(name = "windows")]
1196         extern "system" {
1197             fn ShowTitleAchievementsUIForUser(user: ::windows::runtime::RawPtr, titleid: u32, completionroutine: ::windows::runtime::RawPtr, context: *const ::std::ffi::c_void) -> ::windows::runtime::HRESULT;
1198         }
1199         ShowTitleAchievementsUIForUser(user.into_param().abi(), ::std::mem::transmute(titleid), ::std::mem::transmute(completionroutine), ::std::mem::transmute(context)).ok()
1200     }
1201     #[cfg(not(windows))]
1202     unimplemented!("Unsupported target OS");
1203 }
1204 #[inline]
ShowUserSettingsUI(completionroutine: ::std::option::Option<GameUICompletionRoutine>, context: *const ::std::ffi::c_void) -> ::windows::runtime::Result<()>1205 pub unsafe fn ShowUserSettingsUI(completionroutine: ::std::option::Option<GameUICompletionRoutine>, context: *const ::std::ffi::c_void) -> ::windows::runtime::Result<()> {
1206     #[cfg(windows)]
1207     {
1208         #[link(name = "windows")]
1209         extern "system" {
1210             fn ShowUserSettingsUI(completionroutine: ::windows::runtime::RawPtr, context: *const ::std::ffi::c_void) -> ::windows::runtime::HRESULT;
1211         }
1212         ShowUserSettingsUI(::std::mem::transmute(completionroutine), ::std::mem::transmute(context)).ok()
1213     }
1214     #[cfg(not(windows))]
1215     unimplemented!("Unsupported target OS");
1216 }
1217 #[inline]
ShowUserSettingsUIForUser<'a, Param0: ::windows::runtime::IntoParam<'a, ::windows::runtime::IInspectable>>(user: Param0, completionroutine: ::std::option::Option<GameUICompletionRoutine>, context: *const ::std::ffi::c_void) -> ::windows::runtime::Result<()>1218 pub unsafe fn ShowUserSettingsUIForUser<'a, Param0: ::windows::runtime::IntoParam<'a, ::windows::runtime::IInspectable>>(user: Param0, completionroutine: ::std::option::Option<GameUICompletionRoutine>, context: *const ::std::ffi::c_void) -> ::windows::runtime::Result<()> {
1219     #[cfg(windows)]
1220     {
1221         #[link(name = "windows")]
1222         extern "system" {
1223             fn ShowUserSettingsUIForUser(user: ::windows::runtime::RawPtr, completionroutine: ::windows::runtime::RawPtr, context: *const ::std::ffi::c_void) -> ::windows::runtime::HRESULT;
1224         }
1225         ShowUserSettingsUIForUser(user.into_param().abi(), ::std::mem::transmute(completionroutine), ::std::mem::transmute(context)).ok()
1226     }
1227     #[cfg(not(windows))]
1228     unimplemented!("Unsupported target OS");
1229 }
1230 #[cfg(feature = "Win32_Foundation")]
1231 #[inline]
TryCancelPendingGameUI() -> super::Foundation::BOOL1232 pub unsafe fn TryCancelPendingGameUI() -> super::Foundation::BOOL {
1233     #[cfg(windows)]
1234     {
1235         #[link(name = "windows")]
1236         extern "system" {
1237             fn TryCancelPendingGameUI() -> super::Foundation::BOOL;
1238         }
1239         ::std::mem::transmute(TryCancelPendingGameUI())
1240     }
1241     #[cfg(not(windows))]
1242     unimplemented!("Unsupported target OS");
1243 }
1244 #[derive(:: std :: cmp :: PartialEq, :: std :: cmp :: Eq, :: std :: marker :: Copy, :: std :: clone :: Clone, :: std :: default :: Default, :: std :: fmt :: Debug)]
1245 #[repr(transparent)]
1246 pub struct XBL_IDP_AUTH_TOKEN_STATUS(pub i32);
1247 pub const XBL_IDP_AUTH_TOKEN_STATUS_SUCCESS: XBL_IDP_AUTH_TOKEN_STATUS = XBL_IDP_AUTH_TOKEN_STATUS(0i32);
1248 pub const XBL_IDP_AUTH_TOKEN_STATUS_OFFLINE_SUCCESS: XBL_IDP_AUTH_TOKEN_STATUS = XBL_IDP_AUTH_TOKEN_STATUS(1i32);
1249 pub const XBL_IDP_AUTH_TOKEN_STATUS_NO_ACCOUNT_SET: XBL_IDP_AUTH_TOKEN_STATUS = XBL_IDP_AUTH_TOKEN_STATUS(2i32);
1250 pub const XBL_IDP_AUTH_TOKEN_STATUS_LOAD_MSA_ACCOUNT_FAILED: XBL_IDP_AUTH_TOKEN_STATUS = XBL_IDP_AUTH_TOKEN_STATUS(3i32);
1251 pub const XBL_IDP_AUTH_TOKEN_STATUS_XBOX_VETO: XBL_IDP_AUTH_TOKEN_STATUS = XBL_IDP_AUTH_TOKEN_STATUS(4i32);
1252 pub const XBL_IDP_AUTH_TOKEN_STATUS_MSA_INTERRUPT: XBL_IDP_AUTH_TOKEN_STATUS = XBL_IDP_AUTH_TOKEN_STATUS(5i32);
1253 pub const XBL_IDP_AUTH_TOKEN_STATUS_OFFLINE_NO_CONSENT: XBL_IDP_AUTH_TOKEN_STATUS = XBL_IDP_AUTH_TOKEN_STATUS(6i32);
1254 pub const XBL_IDP_AUTH_TOKEN_STATUS_VIEW_NOT_SET: XBL_IDP_AUTH_TOKEN_STATUS = XBL_IDP_AUTH_TOKEN_STATUS(7i32);
1255 pub const XBL_IDP_AUTH_TOKEN_STATUS_UNKNOWN: XBL_IDP_AUTH_TOKEN_STATUS = XBL_IDP_AUTH_TOKEN_STATUS(-1i32);
1256 impl ::std::convert::From<i32> for XBL_IDP_AUTH_TOKEN_STATUS {
from(value: i32) -> Self1257     fn from(value: i32) -> Self {
1258         Self(value)
1259     }
1260 }
1261 unsafe impl ::windows::runtime::Abi for XBL_IDP_AUTH_TOKEN_STATUS {
1262     type Abi = Self;
1263     type DefaultType = Self;
1264 }
1265 pub const XblIdpAuthManager: ::windows::runtime::GUID = ::windows::runtime::GUID::from_values(3458421579, 22232, 18808, [134, 162, 126, 229, 112, 100, 4, 104]);
1266 pub const XblIdpAuthTokenResult: ::windows::runtime::GUID = ::windows::runtime::GUID::from_values(2672374849, 29770, 16652, [174, 43, 154, 34, 247, 199, 115, 31]);
1267