3 pub struct IBasicProperties(::windows
::core
::IUnknown
);
4 unsafe impl ::windows
::core
::Interface
for IBasicProperties
{
5 type Vtable
= IBasicProperties_Vtbl
;
7 impl ::core
::clone
::Clone
for IBasicProperties
{
8 fn clone(&self) -> Self {
12 unsafe impl ::windows
::core
::ComInterface
for IBasicProperties
{
13 const IID
: ::windows
::core
::GUID
= ::windows
::core
::GUID
::from_u128(0xd05d55db_785e_4a66_be02_9beec58aea81);
17 pub struct IBasicProperties_Vtbl
{
18 pub base__
: ::windows
::core
::IInspectable_Vtbl
,
19 pub Size
: unsafe extern "system" fn(this
: *mut ::core
::ffi
::c_void
, result__
: *mut u64) -> ::windows
::core
::HRESULT
,
20 #[cfg(feature = "Foundation")]
21 pub DateModified
: unsafe extern "system" fn(this
: *mut ::core
::ffi
::c_void
, result__
: *mut super::super::Foundation
::DateTime
) -> ::windows
::core
::HRESULT
,
22 #[cfg(not(feature = "Foundation"))]
24 #[cfg(feature = "Foundation")]
25 pub ItemDate
: unsafe extern "system" fn(this
: *mut ::core
::ffi
::c_void
, result__
: *mut super::super::Foundation
::DateTime
) -> ::windows
::core
::HRESULT
,
26 #[cfg(not(feature = "Foundation"))]
31 pub struct IDocumentProperties(::windows
::core
::IUnknown
);
32 unsafe impl ::windows
::core
::Interface
for IDocumentProperties
{
33 type Vtable
= IDocumentProperties_Vtbl
;
35 impl ::core
::clone
::Clone
for IDocumentProperties
{
36 fn clone(&self) -> Self {
40 unsafe impl ::windows
::core
::ComInterface
for IDocumentProperties
{
41 const IID
: ::windows
::core
::GUID
= ::windows
::core
::GUID
::from_u128(0x7eab19bc_1821_4923_b4a9_0aea404d0070);
45 pub struct IDocumentProperties_Vtbl
{
46 pub base__
: ::windows
::core
::IInspectable_Vtbl
,
47 #[cfg(feature = "Foundation_Collections")]
48 pub Author
: unsafe extern "system" fn(this
: *mut ::core
::ffi
::c_void
, result__
: *mut *mut ::core
::ffi
::c_void
) -> ::windows
::core
::HRESULT
,
49 #[cfg(not(feature = "Foundation_Collections"))]
51 pub Title
: unsafe extern "system" fn(this
: *mut ::core
::ffi
::c_void
, result__
: *mut ::std
::mem
::MaybeUninit
<::windows
::core
::HSTRING
>) -> ::windows
::core
::HRESULT
,
52 pub SetTitle
: unsafe extern "system" fn(this
: *mut ::core
::ffi
::c_void
, value
: ::std
::mem
::MaybeUninit
<::windows
::core
::HSTRING
>) -> ::windows
::core
::HRESULT
,
53 #[cfg(feature = "Foundation_Collections")]
54 pub Keywords
: unsafe extern "system" fn(this
: *mut ::core
::ffi
::c_void
, result__
: *mut *mut ::core
::ffi
::c_void
) -> ::windows
::core
::HRESULT
,
55 #[cfg(not(feature = "Foundation_Collections"))]
57 pub Comment
: unsafe extern "system" fn(this
: *mut ::core
::ffi
::c_void
, result__
: *mut ::std
::mem
::MaybeUninit
<::windows
::core
::HSTRING
>) -> ::windows
::core
::HRESULT
,
58 pub SetComment
: unsafe extern "system" fn(this
: *mut ::core
::ffi
::c_void
, value
: ::std
::mem
::MaybeUninit
<::windows
::core
::HSTRING
>) -> ::windows
::core
::HRESULT
,
62 pub struct IGeotagHelperStatics(::windows
::core
::IUnknown
);
63 unsafe impl ::windows
::core
::Interface
for IGeotagHelperStatics
{
64 type Vtable
= IGeotagHelperStatics_Vtbl
;
66 impl ::core
::clone
::Clone
for IGeotagHelperStatics
{
67 fn clone(&self) -> Self {
71 unsafe impl ::windows
::core
::ComInterface
for IGeotagHelperStatics
{
72 const IID
: ::windows
::core
::GUID
= ::windows
::core
::GUID
::from_u128(0x41493244_2524_4655_86a6_ed16f5fc716b);
76 pub struct IGeotagHelperStatics_Vtbl
{
77 pub base__
: ::windows
::core
::IInspectable_Vtbl
,
78 #[cfg(all(feature = "Devices_Geolocation", feature = "Foundation"))]
79 pub GetGeotagAsync
: unsafe extern "system" fn(this
: *mut ::core
::ffi
::c_void
, file
: *mut ::core
::ffi
::c_void
, result__
: *mut *mut ::core
::ffi
::c_void
) -> ::windows
::core
::HRESULT
,
80 #[cfg(not(all(feature = "Devices_Geolocation", feature = "Foundation")))]
81 GetGeotagAsync
: usize,
82 #[cfg(all(feature = "Devices_Geolocation", feature = "Foundation"))]
83 pub SetGeotagFromGeolocatorAsync
: unsafe extern "system" fn(this
: *mut ::core
::ffi
::c_void
, file
: *mut ::core
::ffi
::c_void
, geolocator
: *mut ::core
::ffi
::c_void
, result__
: *mut *mut ::core
::ffi
::c_void
) -> ::windows
::core
::HRESULT
,
84 #[cfg(not(all(feature = "Devices_Geolocation", feature = "Foundation")))]
85 SetGeotagFromGeolocatorAsync
: usize,
86 #[cfg(all(feature = "Devices_Geolocation", feature = "Foundation"))]
87 pub SetGeotagAsync
: unsafe extern "system" fn(this
: *mut ::core
::ffi
::c_void
, file
: *mut ::core
::ffi
::c_void
, geopoint
: *mut ::core
::ffi
::c_void
, result__
: *mut *mut ::core
::ffi
::c_void
) -> ::windows
::core
::HRESULT
,
88 #[cfg(not(all(feature = "Devices_Geolocation", feature = "Foundation")))]
89 SetGeotagAsync
: usize,
93 pub struct IImageProperties(::windows
::core
::IUnknown
);
94 unsafe impl ::windows
::core
::Interface
for IImageProperties
{
95 type Vtable
= IImageProperties_Vtbl
;
97 impl ::core
::clone
::Clone
for IImageProperties
{
98 fn clone(&self) -> Self {
102 unsafe impl ::windows
::core
::ComInterface
for IImageProperties
{
103 const IID
: ::windows
::core
::GUID
= ::windows
::core
::GUID
::from_u128(0x523c9424_fcff_4275_afee_ecdb9ab47973);
107 pub struct IImageProperties_Vtbl
{
108 pub base__
: ::windows
::core
::IInspectable_Vtbl
,
109 pub Rating
: unsafe extern "system" fn(this
: *mut ::core
::ffi
::c_void
, result__
: *mut u32) -> ::windows
::core
::HRESULT
,
110 pub SetRating
: unsafe extern "system" fn(this
: *mut ::core
::ffi
::c_void
, value
: u32) -> ::windows
::core
::HRESULT
,
111 #[cfg(feature = "Foundation_Collections")]
112 pub Keywords
: unsafe extern "system" fn(this
: *mut ::core
::ffi
::c_void
, result__
: *mut *mut ::core
::ffi
::c_void
) -> ::windows
::core
::HRESULT
,
113 #[cfg(not(feature = "Foundation_Collections"))]
115 #[cfg(feature = "Foundation")]
116 pub DateTaken
: unsafe extern "system" fn(this
: *mut ::core
::ffi
::c_void
, result__
: *mut super::super::Foundation
::DateTime
) -> ::windows
::core
::HRESULT
,
117 #[cfg(not(feature = "Foundation"))]
119 #[cfg(feature = "Foundation")]
120 pub SetDateTaken
: unsafe extern "system" fn(this
: *mut ::core
::ffi
::c_void
, value
: super::super::Foundation
::DateTime
) -> ::windows
::core
::HRESULT
,
121 #[cfg(not(feature = "Foundation"))]
123 pub Width
: unsafe extern "system" fn(this
: *mut ::core
::ffi
::c_void
, result__
: *mut u32) -> ::windows
::core
::HRESULT
,
124 pub Height
: unsafe extern "system" fn(this
: *mut ::core
::ffi
::c_void
, result__
: *mut u32) -> ::windows
::core
::HRESULT
,
125 pub Title
: unsafe extern "system" fn(this
: *mut ::core
::ffi
::c_void
, result__
: *mut ::std
::mem
::MaybeUninit
<::windows
::core
::HSTRING
>) -> ::windows
::core
::HRESULT
,
126 pub SetTitle
: unsafe extern "system" fn(this
: *mut ::core
::ffi
::c_void
, value
: ::std
::mem
::MaybeUninit
<::windows
::core
::HSTRING
>) -> ::windows
::core
::HRESULT
,
127 #[cfg(feature = "Foundation")]
128 pub Latitude
: unsafe extern "system" fn(this
: *mut ::core
::ffi
::c_void
, result__
: *mut *mut ::core
::ffi
::c_void
) -> ::windows
::core
::HRESULT
,
129 #[cfg(not(feature = "Foundation"))]
131 #[cfg(feature = "Foundation")]
132 pub Longitude
: unsafe extern "system" fn(this
: *mut ::core
::ffi
::c_void
, result__
: *mut *mut ::core
::ffi
::c_void
) -> ::windows
::core
::HRESULT
,
133 #[cfg(not(feature = "Foundation"))]
135 pub CameraManufacturer
: unsafe extern "system" fn(this
: *mut ::core
::ffi
::c_void
, result__
: *mut ::std
::mem
::MaybeUninit
<::windows
::core
::HSTRING
>) -> ::windows
::core
::HRESULT
,
136 pub SetCameraManufacturer
: unsafe extern "system" fn(this
: *mut ::core
::ffi
::c_void
, value
: ::std
::mem
::MaybeUninit
<::windows
::core
::HSTRING
>) -> ::windows
::core
::HRESULT
,
137 pub CameraModel
: unsafe extern "system" fn(this
: *mut ::core
::ffi
::c_void
, result__
: *mut ::std
::mem
::MaybeUninit
<::windows
::core
::HSTRING
>) -> ::windows
::core
::HRESULT
,
138 pub SetCameraModel
: unsafe extern "system" fn(this
: *mut ::core
::ffi
::c_void
, value
: ::std
::mem
::MaybeUninit
<::windows
::core
::HSTRING
>) -> ::windows
::core
::HRESULT
,
139 pub Orientation
: unsafe extern "system" fn(this
: *mut ::core
::ffi
::c_void
, result__
: *mut PhotoOrientation
) -> ::windows
::core
::HRESULT
,
140 #[cfg(feature = "Foundation_Collections")]
141 pub PeopleNames
: unsafe extern "system" fn(this
: *mut ::core
::ffi
::c_void
, result__
: *mut *mut ::core
::ffi
::c_void
) -> ::windows
::core
::HRESULT
,
142 #[cfg(not(feature = "Foundation_Collections"))]
147 pub struct IMusicProperties(::windows
::core
::IUnknown
);
148 unsafe impl ::windows
::core
::Interface
for IMusicProperties
{
149 type Vtable
= IMusicProperties_Vtbl
;
151 impl ::core
::clone
::Clone
for IMusicProperties
{
152 fn clone(&self) -> Self {
156 unsafe impl ::windows
::core
::ComInterface
for IMusicProperties
{
157 const IID
: ::windows
::core
::GUID
= ::windows
::core
::GUID
::from_u128(0xbc8aab62_66ec_419a_bc5d_ca65a4cb46da);
161 pub struct IMusicProperties_Vtbl
{
162 pub base__
: ::windows
::core
::IInspectable_Vtbl
,
163 pub Album
: unsafe extern "system" fn(this
: *mut ::core
::ffi
::c_void
, result__
: *mut ::std
::mem
::MaybeUninit
<::windows
::core
::HSTRING
>) -> ::windows
::core
::HRESULT
,
164 pub SetAlbum
: unsafe extern "system" fn(this
: *mut ::core
::ffi
::c_void
, value
: ::std
::mem
::MaybeUninit
<::windows
::core
::HSTRING
>) -> ::windows
::core
::HRESULT
,
165 pub Artist
: unsafe extern "system" fn(this
: *mut ::core
::ffi
::c_void
, result__
: *mut ::std
::mem
::MaybeUninit
<::windows
::core
::HSTRING
>) -> ::windows
::core
::HRESULT
,
166 pub SetArtist
: unsafe extern "system" fn(this
: *mut ::core
::ffi
::c_void
, value
: ::std
::mem
::MaybeUninit
<::windows
::core
::HSTRING
>) -> ::windows
::core
::HRESULT
,
167 #[cfg(feature = "Foundation_Collections")]
168 pub Genre
: unsafe extern "system" fn(this
: *mut ::core
::ffi
::c_void
, result__
: *mut *mut ::core
::ffi
::c_void
) -> ::windows
::core
::HRESULT
,
169 #[cfg(not(feature = "Foundation_Collections"))]
171 pub TrackNumber
: unsafe extern "system" fn(this
: *mut ::core
::ffi
::c_void
, result__
: *mut u32) -> ::windows
::core
::HRESULT
,
172 pub SetTrackNumber
: unsafe extern "system" fn(this
: *mut ::core
::ffi
::c_void
, value
: u32) -> ::windows
::core
::HRESULT
,
173 pub Title
: unsafe extern "system" fn(this
: *mut ::core
::ffi
::c_void
, result__
: *mut ::std
::mem
::MaybeUninit
<::windows
::core
::HSTRING
>) -> ::windows
::core
::HRESULT
,
174 pub SetTitle
: unsafe extern "system" fn(this
: *mut ::core
::ffi
::c_void
, value
: ::std
::mem
::MaybeUninit
<::windows
::core
::HSTRING
>) -> ::windows
::core
::HRESULT
,
175 pub Rating
: unsafe extern "system" fn(this
: *mut ::core
::ffi
::c_void
, result__
: *mut u32) -> ::windows
::core
::HRESULT
,
176 pub SetRating
: unsafe extern "system" fn(this
: *mut ::core
::ffi
::c_void
, value
: u32) -> ::windows
::core
::HRESULT
,
177 #[cfg(feature = "Foundation")]
178 pub Duration
: unsafe extern "system" fn(this
: *mut ::core
::ffi
::c_void
, result__
: *mut super::super::Foundation
::TimeSpan
) -> ::windows
::core
::HRESULT
,
179 #[cfg(not(feature = "Foundation"))]
181 pub Bitrate
: unsafe extern "system" fn(this
: *mut ::core
::ffi
::c_void
, result__
: *mut u32) -> ::windows
::core
::HRESULT
,
182 pub AlbumArtist
: unsafe extern "system" fn(this
: *mut ::core
::ffi
::c_void
, result__
: *mut ::std
::mem
::MaybeUninit
<::windows
::core
::HSTRING
>) -> ::windows
::core
::HRESULT
,
183 pub SetAlbumArtist
: unsafe extern "system" fn(this
: *mut ::core
::ffi
::c_void
, value
: ::std
::mem
::MaybeUninit
<::windows
::core
::HSTRING
>) -> ::windows
::core
::HRESULT
,
184 #[cfg(feature = "Foundation_Collections")]
185 pub Composers
: unsafe extern "system" fn(this
: *mut ::core
::ffi
::c_void
, result__
: *mut *mut ::core
::ffi
::c_void
) -> ::windows
::core
::HRESULT
,
186 #[cfg(not(feature = "Foundation_Collections"))]
188 #[cfg(feature = "Foundation_Collections")]
189 pub Conductors
: unsafe extern "system" fn(this
: *mut ::core
::ffi
::c_void
, result__
: *mut *mut ::core
::ffi
::c_void
) -> ::windows
::core
::HRESULT
,
190 #[cfg(not(feature = "Foundation_Collections"))]
192 pub Subtitle
: unsafe extern "system" fn(this
: *mut ::core
::ffi
::c_void
, result__
: *mut ::std
::mem
::MaybeUninit
<::windows
::core
::HSTRING
>) -> ::windows
::core
::HRESULT
,
193 pub SetSubtitle
: unsafe extern "system" fn(this
: *mut ::core
::ffi
::c_void
, value
: ::std
::mem
::MaybeUninit
<::windows
::core
::HSTRING
>) -> ::windows
::core
::HRESULT
,
194 #[cfg(feature = "Foundation_Collections")]
195 pub Producers
: unsafe extern "system" fn(this
: *mut ::core
::ffi
::c_void
, result__
: *mut *mut ::core
::ffi
::c_void
) -> ::windows
::core
::HRESULT
,
196 #[cfg(not(feature = "Foundation_Collections"))]
198 pub Publisher
: unsafe extern "system" fn(this
: *mut ::core
::ffi
::c_void
, result__
: *mut ::std
::mem
::MaybeUninit
<::windows
::core
::HSTRING
>) -> ::windows
::core
::HRESULT
,
199 pub SetPublisher
: unsafe extern "system" fn(this
: *mut ::core
::ffi
::c_void
, value
: ::std
::mem
::MaybeUninit
<::windows
::core
::HSTRING
>) -> ::windows
::core
::HRESULT
,
200 #[cfg(feature = "Foundation_Collections")]
201 pub Writers
: unsafe extern "system" fn(this
: *mut ::core
::ffi
::c_void
, result__
: *mut *mut ::core
::ffi
::c_void
) -> ::windows
::core
::HRESULT
,
202 #[cfg(not(feature = "Foundation_Collections"))]
204 pub Year
: unsafe extern "system" fn(this
: *mut ::core
::ffi
::c_void
, result__
: *mut u32) -> ::windows
::core
::HRESULT
,
205 pub SetYear
: unsafe extern "system" fn(this
: *mut ::core
::ffi
::c_void
, value
: u32) -> ::windows
::core
::HRESULT
,
209 pub struct IStorageItemContentProperties(::windows
::core
::IUnknown
);
210 unsafe impl ::windows
::core
::Interface
for IStorageItemContentProperties
{
211 type Vtable
= IStorageItemContentProperties_Vtbl
;
213 impl ::core
::clone
::Clone
for IStorageItemContentProperties
{
214 fn clone(&self) -> Self {
218 unsafe impl ::windows
::core
::ComInterface
for IStorageItemContentProperties
{
219 const IID
: ::windows
::core
::GUID
= ::windows
::core
::GUID
::from_u128(0x05294bad_bc38_48bf_85d7_770e0e2ae0ba);
223 pub struct IStorageItemContentProperties_Vtbl
{
224 pub base__
: ::windows
::core
::IInspectable_Vtbl
,
225 #[cfg(feature = "Foundation")]
226 pub GetMusicPropertiesAsync
: unsafe extern "system" fn(this
: *mut ::core
::ffi
::c_void
, result__
: *mut *mut ::core
::ffi
::c_void
) -> ::windows
::core
::HRESULT
,
227 #[cfg(not(feature = "Foundation"))]
228 GetMusicPropertiesAsync
: usize,
229 #[cfg(feature = "Foundation")]
230 pub GetVideoPropertiesAsync
: unsafe extern "system" fn(this
: *mut ::core
::ffi
::c_void
, result__
: *mut *mut ::core
::ffi
::c_void
) -> ::windows
::core
::HRESULT
,
231 #[cfg(not(feature = "Foundation"))]
232 GetVideoPropertiesAsync
: usize,
233 #[cfg(feature = "Foundation")]
234 pub GetImagePropertiesAsync
: unsafe extern "system" fn(this
: *mut ::core
::ffi
::c_void
, result__
: *mut *mut ::core
::ffi
::c_void
) -> ::windows
::core
::HRESULT
,
235 #[cfg(not(feature = "Foundation"))]
236 GetImagePropertiesAsync
: usize,
237 #[cfg(feature = "Foundation")]
238 pub GetDocumentPropertiesAsync
: unsafe extern "system" fn(this
: *mut ::core
::ffi
::c_void
, result__
: *mut *mut ::core
::ffi
::c_void
) -> ::windows
::core
::HRESULT
,
239 #[cfg(not(feature = "Foundation"))]
240 GetDocumentPropertiesAsync
: usize,
242 #[doc = "*Required features: `\"Storage_FileProperties\"`*"]
244 pub struct IStorageItemExtraProperties(::windows
::core
::IUnknown
);
245 impl IStorageItemExtraProperties
{
246 #[doc = "*Required features: `\"Foundation_Collections\"`*"]
247 #[cfg(feature = "Foundation_Collections")]
248 pub fn RetrievePropertiesAsync
<P0
>(&self, propertiestoretrieve
: P0
) -> ::windows
::core
::Result
<super::super::Foundation
::IAsyncOperation
<super::super::Foundation
::Collections
::IMap
<::windows
::core
::HSTRING
, ::windows
::core
::IInspectable
>>>
250 P0
: ::windows
::core
::TryIntoParam
<super::super::Foundation
::Collections
::IIterable
<::windows
::core
::HSTRING
>>,
254 let mut result__
= ::windows
::core
::zeroed
::<super::super::Foundation
::IAsyncOperation
<super::super::Foundation
::Collections
::IMap
<::windows
::core
::HSTRING
, ::windows
::core
::IInspectable
>>>();
255 (::windows
::core
::Interface
::vtable(this
).RetrievePropertiesAsync
)(::windows
::core
::Interface
::as_raw(this
), propertiestoretrieve
.try_into_param()?
.abi(), &mut result__
).from_abi(result__
)
258 #[doc = "*Required features: `\"Foundation_Collections\"`*"]
259 #[cfg(feature = "Foundation_Collections")]
260 pub fn SavePropertiesAsync
<P0
>(&self, propertiestosave
: P0
) -> ::windows
::core
::Result
<super::super::Foundation
::IAsyncAction
>
262 P0
: ::windows
::core
::TryIntoParam
<super::super::Foundation
::Collections
::IIterable
<super::super::Foundation
::Collections
::IKeyValuePair
<::windows
::core
::HSTRING
, ::windows
::core
::IInspectable
>>>,
266 let mut result__
= ::windows
::core
::zeroed
::<super::super::Foundation
::IAsyncAction
>();
267 (::windows
::core
::Interface
::vtable(this
).SavePropertiesAsync
)(::windows
::core
::Interface
::as_raw(this
), propertiestosave
.try_into_param()?
.abi(), &mut result__
).from_abi(result__
)
270 #[doc = "*Required features: `\"Foundation\"`*"]
271 #[cfg(feature = "Foundation")]
272 pub fn SavePropertiesAsyncOverloadDefault(&self) -> ::windows
::core
::Result
<super::super::Foundation
::IAsyncAction
> {
275 let mut result__
= ::windows
::core
::zeroed
::<super::super::Foundation
::IAsyncAction
>();
276 (::windows
::core
::Interface
::vtable(this
).SavePropertiesAsyncOverloadDefault
)(::windows
::core
::Interface
::as_raw(this
), &mut result__
).from_abi(result__
)
280 ::windows
::imp
::interface_hierarchy
!(IStorageItemExtraProperties
, ::windows
::core
::IUnknown
, ::windows
::core
::IInspectable
);
281 impl ::core
::cmp
::PartialEq
for IStorageItemExtraProperties
{
282 fn eq(&self, other
: &Self) -> bool
{
286 impl ::core
::cmp
::Eq
for IStorageItemExtraProperties {}
287 impl ::core
::fmt
::Debug
for IStorageItemExtraProperties
{
288 fn fmt(&self, f
: &mut ::core
::fmt
::Formatter
<'_
>) -> ::core
::fmt
::Result
{
289 f
.debug_tuple("IStorageItemExtraProperties").field(&self.0).finish()
292 impl ::windows
::core
::RuntimeType
for IStorageItemExtraProperties
{
293 const SIGNATURE
: ::windows
::imp
::ConstBuffer
= ::windows
::imp
::ConstBuffer
::from_slice(b
"{c54361b2-54cd-432b-bdbc-4b19c4b470d7}");
295 unsafe impl ::windows
::core
::Interface
for IStorageItemExtraProperties
{
296 type Vtable
= IStorageItemExtraProperties_Vtbl
;
298 impl ::core
::clone
::Clone
for IStorageItemExtraProperties
{
299 fn clone(&self) -> Self {
303 unsafe impl ::windows
::core
::ComInterface
for IStorageItemExtraProperties
{
304 const IID
: ::windows
::core
::GUID
= ::windows
::core
::GUID
::from_u128(0xc54361b2_54cd_432b_bdbc_4b19c4b470d7);
308 pub struct IStorageItemExtraProperties_Vtbl
{
309 pub base__
: ::windows
::core
::IInspectable_Vtbl
,
310 #[cfg(feature = "Foundation_Collections")]
311 pub RetrievePropertiesAsync
: unsafe extern "system" fn(this
: *mut ::core
::ffi
::c_void
, propertiestoretrieve
: *mut ::core
::ffi
::c_void
, result__
: *mut *mut ::core
::ffi
::c_void
) -> ::windows
::core
::HRESULT
,
312 #[cfg(not(feature = "Foundation_Collections"))]
313 RetrievePropertiesAsync
: usize,
314 #[cfg(feature = "Foundation_Collections")]
315 pub SavePropertiesAsync
: unsafe extern "system" fn(this
: *mut ::core
::ffi
::c_void
, propertiestosave
: *mut ::core
::ffi
::c_void
, result__
: *mut *mut ::core
::ffi
::c_void
) -> ::windows
::core
::HRESULT
,
316 #[cfg(not(feature = "Foundation_Collections"))]
317 SavePropertiesAsync
: usize,
318 #[cfg(feature = "Foundation")]
319 pub SavePropertiesAsyncOverloadDefault
: unsafe extern "system" fn(this
: *mut ::core
::ffi
::c_void
, result__
: *mut *mut ::core
::ffi
::c_void
) -> ::windows
::core
::HRESULT
,
320 #[cfg(not(feature = "Foundation"))]
321 SavePropertiesAsyncOverloadDefault
: usize,
325 pub struct IThumbnailProperties(::windows
::core
::IUnknown
);
326 unsafe impl ::windows
::core
::Interface
for IThumbnailProperties
{
327 type Vtable
= IThumbnailProperties_Vtbl
;
329 impl ::core
::clone
::Clone
for IThumbnailProperties
{
330 fn clone(&self) -> Self {
334 unsafe impl ::windows
::core
::ComInterface
for IThumbnailProperties
{
335 const IID
: ::windows
::core
::GUID
= ::windows
::core
::GUID
::from_u128(0x693dd42f_dbe7_49b5_b3b3_2893ac5d3423);
339 pub struct IThumbnailProperties_Vtbl
{
340 pub base__
: ::windows
::core
::IInspectable_Vtbl
,
341 pub OriginalWidth
: unsafe extern "system" fn(this
: *mut ::core
::ffi
::c_void
, result__
: *mut u32) -> ::windows
::core
::HRESULT
,
342 pub OriginalHeight
: unsafe extern "system" fn(this
: *mut ::core
::ffi
::c_void
, result__
: *mut u32) -> ::windows
::core
::HRESULT
,
343 pub ReturnedSmallerCachedSize
: unsafe extern "system" fn(this
: *mut ::core
::ffi
::c_void
, result__
: *mut bool
) -> ::windows
::core
::HRESULT
,
344 pub Type
: unsafe extern "system" fn(this
: *mut ::core
::ffi
::c_void
, result__
: *mut ThumbnailType
) -> ::windows
::core
::HRESULT
,
348 pub struct IVideoProperties(::windows
::core
::IUnknown
);
349 unsafe impl ::windows
::core
::Interface
for IVideoProperties
{
350 type Vtable
= IVideoProperties_Vtbl
;
352 impl ::core
::clone
::Clone
for IVideoProperties
{
353 fn clone(&self) -> Self {
357 unsafe impl ::windows
::core
::ComInterface
for IVideoProperties
{
358 const IID
: ::windows
::core
::GUID
= ::windows
::core
::GUID
::from_u128(0x719ae507_68de_4db8_97de_49998c059f2f);
362 pub struct IVideoProperties_Vtbl
{
363 pub base__
: ::windows
::core
::IInspectable_Vtbl
,
364 pub Rating
: unsafe extern "system" fn(this
: *mut ::core
::ffi
::c_void
, result__
: *mut u32) -> ::windows
::core
::HRESULT
,
365 pub SetRating
: unsafe extern "system" fn(this
: *mut ::core
::ffi
::c_void
, value
: u32) -> ::windows
::core
::HRESULT
,
366 #[cfg(feature = "Foundation_Collections")]
367 pub Keywords
: unsafe extern "system" fn(this
: *mut ::core
::ffi
::c_void
, result__
: *mut *mut ::core
::ffi
::c_void
) -> ::windows
::core
::HRESULT
,
368 #[cfg(not(feature = "Foundation_Collections"))]
370 pub Width
: unsafe extern "system" fn(this
: *mut ::core
::ffi
::c_void
, result__
: *mut u32) -> ::windows
::core
::HRESULT
,
371 pub Height
: unsafe extern "system" fn(this
: *mut ::core
::ffi
::c_void
, result__
: *mut u32) -> ::windows
::core
::HRESULT
,
372 #[cfg(feature = "Foundation")]
373 pub Duration
: unsafe extern "system" fn(this
: *mut ::core
::ffi
::c_void
, result__
: *mut super::super::Foundation
::TimeSpan
) -> ::windows
::core
::HRESULT
,
374 #[cfg(not(feature = "Foundation"))]
376 #[cfg(feature = "Foundation")]
377 pub Latitude
: unsafe extern "system" fn(this
: *mut ::core
::ffi
::c_void
, result__
: *mut *mut ::core
::ffi
::c_void
) -> ::windows
::core
::HRESULT
,
378 #[cfg(not(feature = "Foundation"))]
380 #[cfg(feature = "Foundation")]
381 pub Longitude
: unsafe extern "system" fn(this
: *mut ::core
::ffi
::c_void
, result__
: *mut *mut ::core
::ffi
::c_void
) -> ::windows
::core
::HRESULT
,
382 #[cfg(not(feature = "Foundation"))]
384 pub Title
: unsafe extern "system" fn(this
: *mut ::core
::ffi
::c_void
, result__
: *mut ::std
::mem
::MaybeUninit
<::windows
::core
::HSTRING
>) -> ::windows
::core
::HRESULT
,
385 pub SetTitle
: unsafe extern "system" fn(this
: *mut ::core
::ffi
::c_void
, value
: ::std
::mem
::MaybeUninit
<::windows
::core
::HSTRING
>) -> ::windows
::core
::HRESULT
,
386 pub Subtitle
: unsafe extern "system" fn(this
: *mut ::core
::ffi
::c_void
, result__
: *mut ::std
::mem
::MaybeUninit
<::windows
::core
::HSTRING
>) -> ::windows
::core
::HRESULT
,
387 pub SetSubtitle
: unsafe extern "system" fn(this
: *mut ::core
::ffi
::c_void
, value
: ::std
::mem
::MaybeUninit
<::windows
::core
::HSTRING
>) -> ::windows
::core
::HRESULT
,
388 #[cfg(feature = "Foundation_Collections")]
389 pub Producers
: unsafe extern "system" fn(this
: *mut ::core
::ffi
::c_void
, result__
: *mut *mut ::core
::ffi
::c_void
) -> ::windows
::core
::HRESULT
,
390 #[cfg(not(feature = "Foundation_Collections"))]
392 pub Publisher
: unsafe extern "system" fn(this
: *mut ::core
::ffi
::c_void
, result__
: *mut ::std
::mem
::MaybeUninit
<::windows
::core
::HSTRING
>) -> ::windows
::core
::HRESULT
,
393 pub SetPublisher
: unsafe extern "system" fn(this
: *mut ::core
::ffi
::c_void
, value
: ::std
::mem
::MaybeUninit
<::windows
::core
::HSTRING
>) -> ::windows
::core
::HRESULT
,
394 #[cfg(feature = "Foundation_Collections")]
395 pub Writers
: unsafe extern "system" fn(this
: *mut ::core
::ffi
::c_void
, result__
: *mut *mut ::core
::ffi
::c_void
) -> ::windows
::core
::HRESULT
,
396 #[cfg(not(feature = "Foundation_Collections"))]
398 pub Year
: unsafe extern "system" fn(this
: *mut ::core
::ffi
::c_void
, result__
: *mut u32) -> ::windows
::core
::HRESULT
,
399 pub SetYear
: unsafe extern "system" fn(this
: *mut ::core
::ffi
::c_void
, value
: u32) -> ::windows
::core
::HRESULT
,
400 pub Bitrate
: unsafe extern "system" fn(this
: *mut ::core
::ffi
::c_void
, result__
: *mut u32) -> ::windows
::core
::HRESULT
,
401 #[cfg(feature = "Foundation_Collections")]
402 pub Directors
: unsafe extern "system" fn(this
: *mut ::core
::ffi
::c_void
, result__
: *mut *mut ::core
::ffi
::c_void
) -> ::windows
::core
::HRESULT
,
403 #[cfg(not(feature = "Foundation_Collections"))]
405 pub Orientation
: unsafe extern "system" fn(this
: *mut ::core
::ffi
::c_void
, result__
: *mut VideoOrientation
) -> ::windows
::core
::HRESULT
,
407 #[doc = "*Required features: `\"Storage_FileProperties\"`*"]
409 pub struct BasicProperties(::windows
::core
::IUnknown
);
410 impl BasicProperties
{
411 pub fn Size(&self) -> ::windows
::core
::Result
<u64> {
414 let mut result__
= ::windows
::core
::zeroed
::<u64>();
415 (::windows
::core
::Interface
::vtable(this
).Size
)(::windows
::core
::Interface
::as_raw(this
), &mut result__
).from_abi(result__
)
418 #[doc = "*Required features: `\"Foundation\"`*"]
419 #[cfg(feature = "Foundation")]
420 pub fn DateModified(&self) -> ::windows
::core
::Result
<super::super::Foundation
::DateTime
> {
423 let mut result__
= ::windows
::core
::zeroed
::<super::super::Foundation
::DateTime
>();
424 (::windows
::core
::Interface
::vtable(this
).DateModified
)(::windows
::core
::Interface
::as_raw(this
), &mut result__
).from_abi(result__
)
427 #[doc = "*Required features: `\"Foundation\"`*"]
428 #[cfg(feature = "Foundation")]
429 pub fn ItemDate(&self) -> ::windows
::core
::Result
<super::super::Foundation
::DateTime
> {
432 let mut result__
= ::windows
::core
::zeroed
::<super::super::Foundation
::DateTime
>();
433 (::windows
::core
::Interface
::vtable(this
).ItemDate
)(::windows
::core
::Interface
::as_raw(this
), &mut result__
).from_abi(result__
)
436 #[doc = "*Required features: `\"Foundation_Collections\"`*"]
437 #[cfg(feature = "Foundation_Collections")]
438 pub fn RetrievePropertiesAsync
<P0
>(&self, propertiestoretrieve
: P0
) -> ::windows
::core
::Result
<super::super::Foundation
::IAsyncOperation
<super::super::Foundation
::Collections
::IMap
<::windows
::core
::HSTRING
, ::windows
::core
::IInspectable
>>>
440 P0
: ::windows
::core
::TryIntoParam
<super::super::Foundation
::Collections
::IIterable
<::windows
::core
::HSTRING
>>,
442 let this
= &::windows
::core
::ComInterface
::cast
::<IStorageItemExtraProperties
>(self)?
;
444 let mut result__
= ::windows
::core
::zeroed
::<super::super::Foundation
::IAsyncOperation
<super::super::Foundation
::Collections
::IMap
<::windows
::core
::HSTRING
, ::windows
::core
::IInspectable
>>>();
445 (::windows
::core
::Interface
::vtable(this
).RetrievePropertiesAsync
)(::windows
::core
::Interface
::as_raw(this
), propertiestoretrieve
.try_into_param()?
.abi(), &mut result__
).from_abi(result__
)
448 #[doc = "*Required features: `\"Foundation_Collections\"`*"]
449 #[cfg(feature = "Foundation_Collections")]
450 pub fn SavePropertiesAsync
<P0
>(&self, propertiestosave
: P0
) -> ::windows
::core
::Result
<super::super::Foundation
::IAsyncAction
>
452 P0
: ::windows
::core
::TryIntoParam
<super::super::Foundation
::Collections
::IIterable
<super::super::Foundation
::Collections
::IKeyValuePair
<::windows
::core
::HSTRING
, ::windows
::core
::IInspectable
>>>,
454 let this
= &::windows
::core
::ComInterface
::cast
::<IStorageItemExtraProperties
>(self)?
;
456 let mut result__
= ::windows
::core
::zeroed
::<super::super::Foundation
::IAsyncAction
>();
457 (::windows
::core
::Interface
::vtable(this
).SavePropertiesAsync
)(::windows
::core
::Interface
::as_raw(this
), propertiestosave
.try_into_param()?
.abi(), &mut result__
).from_abi(result__
)
460 #[doc = "*Required features: `\"Foundation\"`*"]
461 #[cfg(feature = "Foundation")]
462 pub fn SavePropertiesAsyncOverloadDefault(&self) -> ::windows
::core
::Result
<super::super::Foundation
::IAsyncAction
> {
463 let this
= &::windows
::core
::ComInterface
::cast
::<IStorageItemExtraProperties
>(self)?
;
465 let mut result__
= ::windows
::core
::zeroed
::<super::super::Foundation
::IAsyncAction
>();
466 (::windows
::core
::Interface
::vtable(this
).SavePropertiesAsyncOverloadDefault
)(::windows
::core
::Interface
::as_raw(this
), &mut result__
).from_abi(result__
)
470 impl ::core
::cmp
::PartialEq
for BasicProperties
{
471 fn eq(&self, other
: &Self) -> bool
{
475 impl ::core
::cmp
::Eq
for BasicProperties {}
476 impl ::core
::fmt
::Debug
for BasicProperties
{
477 fn fmt(&self, f
: &mut ::core
::fmt
::Formatter
<'_
>) -> ::core
::fmt
::Result
{
478 f
.debug_tuple("BasicProperties").field(&self.0).finish()
481 impl ::windows
::core
::RuntimeType
for BasicProperties
{
482 const SIGNATURE
: ::windows
::imp
::ConstBuffer
= ::windows
::imp
::ConstBuffer
::from_slice(b
"rc(Windows.Storage.FileProperties.BasicProperties;{d05d55db-785e-4a66-be02-9beec58aea81})");
484 impl ::core
::clone
::Clone
for BasicProperties
{
485 fn clone(&self) -> Self {
489 unsafe impl ::windows
::core
::Interface
for BasicProperties
{
490 type Vtable
= IBasicProperties_Vtbl
;
492 unsafe impl ::windows
::core
::ComInterface
for BasicProperties
{
493 const IID
: ::windows
::core
::GUID
= <IBasicProperties
as ::windows
::core
::ComInterface
>::IID
;
495 impl ::windows
::core
::RuntimeName
for BasicProperties
{
496 const NAME
: &'
static str = "Windows.Storage.FileProperties.BasicProperties";
498 ::windows
::imp
::interface_hierarchy
!(BasicProperties
, ::windows
::core
::IUnknown
, ::windows
::core
::IInspectable
);
499 impl ::windows
::core
::CanTryInto
<IStorageItemExtraProperties
> for BasicProperties {}
500 #[doc = "*Required features: `\"Storage_FileProperties\"`*"]
502 pub struct DocumentProperties(::windows
::core
::IUnknown
);
503 impl DocumentProperties
{
504 #[doc = "*Required features: `\"Foundation_Collections\"`*"]
505 #[cfg(feature = "Foundation_Collections")]
506 pub fn Author(&self) -> ::windows
::core
::Result
<super::super::Foundation
::Collections
::IVector
<::windows
::core
::HSTRING
>> {
509 let mut result__
= ::windows
::core
::zeroed
::<super::super::Foundation
::Collections
::IVector
<::windows
::core
::HSTRING
>>();
510 (::windows
::core
::Interface
::vtable(this
).Author
)(::windows
::core
::Interface
::as_raw(this
), &mut result__
).from_abi(result__
)
513 pub fn Title(&self) -> ::windows
::core
::Result
<::windows
::core
::HSTRING
> {
516 let mut result__
= ::windows
::core
::zeroed
::<::windows
::core
::HSTRING
>();
517 (::windows
::core
::Interface
::vtable(this
).Title
)(::windows
::core
::Interface
::as_raw(this
), &mut result__
).from_abi(result__
)
520 pub fn SetTitle(&self, value
: &::windows
::core
::HSTRING
) -> ::windows
::core
::Result
<()> {
522 unsafe { (::windows::core::Interface::vtable(this).SetTitle)(::windows::core::Interface::as_raw(this), ::core::mem::transmute_copy(value)).ok() }
524 #[doc = "*Required features: `\"Foundation_Collections\"`*"]
525 #[cfg(feature = "Foundation_Collections")]
526 pub fn Keywords(&self) -> ::windows
::core
::Result
<super::super::Foundation
::Collections
::IVector
<::windows
::core
::HSTRING
>> {
529 let mut result__
= ::windows
::core
::zeroed
::<super::super::Foundation
::Collections
::IVector
<::windows
::core
::HSTRING
>>();
530 (::windows
::core
::Interface
::vtable(this
).Keywords
)(::windows
::core
::Interface
::as_raw(this
), &mut result__
).from_abi(result__
)
533 pub fn Comment(&self) -> ::windows
::core
::Result
<::windows
::core
::HSTRING
> {
536 let mut result__
= ::windows
::core
::zeroed
::<::windows
::core
::HSTRING
>();
537 (::windows
::core
::Interface
::vtable(this
).Comment
)(::windows
::core
::Interface
::as_raw(this
), &mut result__
).from_abi(result__
)
540 pub fn SetComment(&self, value
: &::windows
::core
::HSTRING
) -> ::windows
::core
::Result
<()> {
542 unsafe { (::windows::core::Interface::vtable(this).SetComment)(::windows::core::Interface::as_raw(this), ::core::mem::transmute_copy(value)).ok() }
544 #[doc = "*Required features: `\"Foundation_Collections\"`*"]
545 #[cfg(feature = "Foundation_Collections")]
546 pub fn RetrievePropertiesAsync
<P0
>(&self, propertiestoretrieve
: P0
) -> ::windows
::core
::Result
<super::super::Foundation
::IAsyncOperation
<super::super::Foundation
::Collections
::IMap
<::windows
::core
::HSTRING
, ::windows
::core
::IInspectable
>>>
548 P0
: ::windows
::core
::TryIntoParam
<super::super::Foundation
::Collections
::IIterable
<::windows
::core
::HSTRING
>>,
550 let this
= &::windows
::core
::ComInterface
::cast
::<IStorageItemExtraProperties
>(self)?
;
552 let mut result__
= ::windows
::core
::zeroed
::<super::super::Foundation
::IAsyncOperation
<super::super::Foundation
::Collections
::IMap
<::windows
::core
::HSTRING
, ::windows
::core
::IInspectable
>>>();
553 (::windows
::core
::Interface
::vtable(this
).RetrievePropertiesAsync
)(::windows
::core
::Interface
::as_raw(this
), propertiestoretrieve
.try_into_param()?
.abi(), &mut result__
).from_abi(result__
)
556 #[doc = "*Required features: `\"Foundation_Collections\"`*"]
557 #[cfg(feature = "Foundation_Collections")]
558 pub fn SavePropertiesAsync
<P0
>(&self, propertiestosave
: P0
) -> ::windows
::core
::Result
<super::super::Foundation
::IAsyncAction
>
560 P0
: ::windows
::core
::TryIntoParam
<super::super::Foundation
::Collections
::IIterable
<super::super::Foundation
::Collections
::IKeyValuePair
<::windows
::core
::HSTRING
, ::windows
::core
::IInspectable
>>>,
562 let this
= &::windows
::core
::ComInterface
::cast
::<IStorageItemExtraProperties
>(self)?
;
564 let mut result__
= ::windows
::core
::zeroed
::<super::super::Foundation
::IAsyncAction
>();
565 (::windows
::core
::Interface
::vtable(this
).SavePropertiesAsync
)(::windows
::core
::Interface
::as_raw(this
), propertiestosave
.try_into_param()?
.abi(), &mut result__
).from_abi(result__
)
568 #[doc = "*Required features: `\"Foundation\"`*"]
569 #[cfg(feature = "Foundation")]
570 pub fn SavePropertiesAsyncOverloadDefault(&self) -> ::windows
::core
::Result
<super::super::Foundation
::IAsyncAction
> {
571 let this
= &::windows
::core
::ComInterface
::cast
::<IStorageItemExtraProperties
>(self)?
;
573 let mut result__
= ::windows
::core
::zeroed
::<super::super::Foundation
::IAsyncAction
>();
574 (::windows
::core
::Interface
::vtable(this
).SavePropertiesAsyncOverloadDefault
)(::windows
::core
::Interface
::as_raw(this
), &mut result__
).from_abi(result__
)
578 impl ::core
::cmp
::PartialEq
for DocumentProperties
{
579 fn eq(&self, other
: &Self) -> bool
{
583 impl ::core
::cmp
::Eq
for DocumentProperties {}
584 impl ::core
::fmt
::Debug
for DocumentProperties
{
585 fn fmt(&self, f
: &mut ::core
::fmt
::Formatter
<'_
>) -> ::core
::fmt
::Result
{
586 f
.debug_tuple("DocumentProperties").field(&self.0).finish()
589 impl ::windows
::core
::RuntimeType
for DocumentProperties
{
590 const SIGNATURE
: ::windows
::imp
::ConstBuffer
= ::windows
::imp
::ConstBuffer
::from_slice(b
"rc(Windows.Storage.FileProperties.DocumentProperties;{7eab19bc-1821-4923-b4a9-0aea404d0070})");
592 impl ::core
::clone
::Clone
for DocumentProperties
{
593 fn clone(&self) -> Self {
597 unsafe impl ::windows
::core
::Interface
for DocumentProperties
{
598 type Vtable
= IDocumentProperties_Vtbl
;
600 unsafe impl ::windows
::core
::ComInterface
for DocumentProperties
{
601 const IID
: ::windows
::core
::GUID
= <IDocumentProperties
as ::windows
::core
::ComInterface
>::IID
;
603 impl ::windows
::core
::RuntimeName
for DocumentProperties
{
604 const NAME
: &'
static str = "Windows.Storage.FileProperties.DocumentProperties";
606 ::windows
::imp
::interface_hierarchy
!(DocumentProperties
, ::windows
::core
::IUnknown
, ::windows
::core
::IInspectable
);
607 impl ::windows
::core
::CanTryInto
<IStorageItemExtraProperties
> for DocumentProperties {}
608 #[doc = "*Required features: `\"Storage_FileProperties\"`*"]
609 pub struct GeotagHelper
;
611 #[doc = "*Required features: `\"Devices_Geolocation\"`, `\"Foundation\"`*"]
612 #[cfg(all(feature = "Devices_Geolocation", feature = "Foundation"))]
613 pub fn GetGeotagAsync
<P0
>(file
: P0
) -> ::windows
::core
::Result
<super::super::Foundation
::IAsyncOperation
<super::super::Devices
::Geolocation
::Geopoint
>>
615 P0
: ::windows
::core
::TryIntoParam
<super::IStorageFile
>,
617 Self::IGeotagHelperStatics(|this
| unsafe {
618 let mut result__
= ::windows
::core
::zeroed
::<super::super::Foundation
::IAsyncOperation
<super::super::Devices
::Geolocation
::Geopoint
>>();
619 (::windows
::core
::Interface
::vtable(this
).GetGeotagAsync
)(::windows
::core
::Interface
::as_raw(this
), file
.try_into_param()?
.abi(), &mut result__
).from_abi(result__
)
622 #[doc = "*Required features: `\"Devices_Geolocation\"`, `\"Foundation\"`*"]
623 #[cfg(all(feature = "Devices_Geolocation", feature = "Foundation"))]
624 pub fn SetGeotagFromGeolocatorAsync
<P0
>(file
: P0
, geolocator
: &super::super::Devices
::Geolocation
::Geolocator
) -> ::windows
::core
::Result
<super::super::Foundation
::IAsyncAction
>
626 P0
: ::windows
::core
::TryIntoParam
<super::IStorageFile
>,
628 Self::IGeotagHelperStatics(|this
| unsafe {
629 let mut result__
= ::windows
::core
::zeroed
::<super::super::Foundation
::IAsyncAction
>();
630 (::windows
::core
::Interface
::vtable(this
).SetGeotagFromGeolocatorAsync
)(::windows
::core
::Interface
::as_raw(this
), file
.try_into_param()?
.abi(), ::core
::mem
::transmute_copy(geolocator
), &mut result__
).from_abi(result__
)
633 #[doc = "*Required features: `\"Devices_Geolocation\"`, `\"Foundation\"`*"]
634 #[cfg(all(feature = "Devices_Geolocation", feature = "Foundation"))]
635 pub fn SetGeotagAsync
<P0
>(file
: P0
, geopoint
: &super::super::Devices
::Geolocation
::Geopoint
) -> ::windows
::core
::Result
<super::super::Foundation
::IAsyncAction
>
637 P0
: ::windows
::core
::TryIntoParam
<super::IStorageFile
>,
639 Self::IGeotagHelperStatics(|this
| unsafe {
640 let mut result__
= ::windows
::core
::zeroed
::<super::super::Foundation
::IAsyncAction
>();
641 (::windows
::core
::Interface
::vtable(this
).SetGeotagAsync
)(::windows
::core
::Interface
::as_raw(this
), file
.try_into_param()?
.abi(), ::core
::mem
::transmute_copy(geopoint
), &mut result__
).from_abi(result__
)
645 pub fn IGeotagHelperStatics
<R
, F
: FnOnce(&IGeotagHelperStatics
) -> ::windows
::core
::Result
<R
>>(callback
: F
) -> ::windows
::core
::Result
<R
> {
646 static SHARED
: ::windows
::imp
::FactoryCache
<GeotagHelper
, IGeotagHelperStatics
> = ::windows
::imp
::FactoryCache
::new();
647 SHARED
.call(callback
)
650 impl ::windows
::core
::RuntimeName
for GeotagHelper
{
651 const NAME
: &'
static str = "Windows.Storage.FileProperties.GeotagHelper";
653 #[doc = "*Required features: `\"Storage_FileProperties\"`*"]
655 pub struct ImageProperties(::windows
::core
::IUnknown
);
656 impl ImageProperties
{
657 pub fn Rating(&self) -> ::windows
::core
::Result
<u32> {
660 let mut result__
= ::windows
::core
::zeroed
::<u32>();
661 (::windows
::core
::Interface
::vtable(this
).Rating
)(::windows
::core
::Interface
::as_raw(this
), &mut result__
).from_abi(result__
)
664 pub fn SetRating(&self, value
: u32) -> ::windows
::core
::Result
<()> {
666 unsafe { (::windows::core::Interface::vtable(this).SetRating)(::windows::core::Interface::as_raw(this), value).ok() }
668 #[doc = "*Required features: `\"Foundation_Collections\"`*"]
669 #[cfg(feature = "Foundation_Collections")]
670 pub fn Keywords(&self) -> ::windows
::core
::Result
<super::super::Foundation
::Collections
::IVector
<::windows
::core
::HSTRING
>> {
673 let mut result__
= ::windows
::core
::zeroed
::<super::super::Foundation
::Collections
::IVector
<::windows
::core
::HSTRING
>>();
674 (::windows
::core
::Interface
::vtable(this
).Keywords
)(::windows
::core
::Interface
::as_raw(this
), &mut result__
).from_abi(result__
)
677 #[doc = "*Required features: `\"Foundation\"`*"]
678 #[cfg(feature = "Foundation")]
679 pub fn DateTaken(&self) -> ::windows
::core
::Result
<super::super::Foundation
::DateTime
> {
682 let mut result__
= ::windows
::core
::zeroed
::<super::super::Foundation
::DateTime
>();
683 (::windows
::core
::Interface
::vtable(this
).DateTaken
)(::windows
::core
::Interface
::as_raw(this
), &mut result__
).from_abi(result__
)
686 #[doc = "*Required features: `\"Foundation\"`*"]
687 #[cfg(feature = "Foundation")]
688 pub fn SetDateTaken(&self, value
: super::super::Foundation
::DateTime
) -> ::windows
::core
::Result
<()> {
690 unsafe { (::windows::core::Interface::vtable(this).SetDateTaken)(::windows::core::Interface::as_raw(this), value).ok() }
692 pub fn Width(&self) -> ::windows
::core
::Result
<u32> {
695 let mut result__
= ::windows
::core
::zeroed
::<u32>();
696 (::windows
::core
::Interface
::vtable(this
).Width
)(::windows
::core
::Interface
::as_raw(this
), &mut result__
).from_abi(result__
)
699 pub fn Height(&self) -> ::windows
::core
::Result
<u32> {
702 let mut result__
= ::windows
::core
::zeroed
::<u32>();
703 (::windows
::core
::Interface
::vtable(this
).Height
)(::windows
::core
::Interface
::as_raw(this
), &mut result__
).from_abi(result__
)
706 pub fn Title(&self) -> ::windows
::core
::Result
<::windows
::core
::HSTRING
> {
709 let mut result__
= ::windows
::core
::zeroed
::<::windows
::core
::HSTRING
>();
710 (::windows
::core
::Interface
::vtable(this
).Title
)(::windows
::core
::Interface
::as_raw(this
), &mut result__
).from_abi(result__
)
713 pub fn SetTitle(&self, value
: &::windows
::core
::HSTRING
) -> ::windows
::core
::Result
<()> {
715 unsafe { (::windows::core::Interface::vtable(this).SetTitle)(::windows::core::Interface::as_raw(this), ::core::mem::transmute_copy(value)).ok() }
717 #[doc = "*Required features: `\"Foundation\"`*"]
718 #[cfg(feature = "Foundation")]
719 pub fn Latitude(&self) -> ::windows
::core
::Result
<super::super::Foundation
::IReference
<f64>> {
722 let mut result__
= ::windows
::core
::zeroed
::<super::super::Foundation
::IReference
<f64>>();
723 (::windows
::core
::Interface
::vtable(this
).Latitude
)(::windows
::core
::Interface
::as_raw(this
), &mut result__
).from_abi(result__
)
726 #[doc = "*Required features: `\"Foundation\"`*"]
727 #[cfg(feature = "Foundation")]
728 pub fn Longitude(&self) -> ::windows
::core
::Result
<super::super::Foundation
::IReference
<f64>> {
731 let mut result__
= ::windows
::core
::zeroed
::<super::super::Foundation
::IReference
<f64>>();
732 (::windows
::core
::Interface
::vtable(this
).Longitude
)(::windows
::core
::Interface
::as_raw(this
), &mut result__
).from_abi(result__
)
735 pub fn CameraManufacturer(&self) -> ::windows
::core
::Result
<::windows
::core
::HSTRING
> {
738 let mut result__
= ::windows
::core
::zeroed
::<::windows
::core
::HSTRING
>();
739 (::windows
::core
::Interface
::vtable(this
).CameraManufacturer
)(::windows
::core
::Interface
::as_raw(this
), &mut result__
).from_abi(result__
)
742 pub fn SetCameraManufacturer(&self, value
: &::windows
::core
::HSTRING
) -> ::windows
::core
::Result
<()> {
744 unsafe { (::windows::core::Interface::vtable(this).SetCameraManufacturer)(::windows::core::Interface::as_raw(this), ::core::mem::transmute_copy(value)).ok() }
746 pub fn CameraModel(&self) -> ::windows
::core
::Result
<::windows
::core
::HSTRING
> {
749 let mut result__
= ::windows
::core
::zeroed
::<::windows
::core
::HSTRING
>();
750 (::windows
::core
::Interface
::vtable(this
).CameraModel
)(::windows
::core
::Interface
::as_raw(this
), &mut result__
).from_abi(result__
)
753 pub fn SetCameraModel(&self, value
: &::windows
::core
::HSTRING
) -> ::windows
::core
::Result
<()> {
755 unsafe { (::windows::core::Interface::vtable(this).SetCameraModel)(::windows::core::Interface::as_raw(this), ::core::mem::transmute_copy(value)).ok() }
757 pub fn Orientation(&self) -> ::windows
::core
::Result
<PhotoOrientation
> {
760 let mut result__
= ::windows
::core
::zeroed
::<PhotoOrientation
>();
761 (::windows
::core
::Interface
::vtable(this
).Orientation
)(::windows
::core
::Interface
::as_raw(this
), &mut result__
).from_abi(result__
)
764 #[doc = "*Required features: `\"Foundation_Collections\"`*"]
765 #[cfg(feature = "Foundation_Collections")]
766 pub fn PeopleNames(&self) -> ::windows
::core
::Result
<super::super::Foundation
::Collections
::IVectorView
<::windows
::core
::HSTRING
>> {
769 let mut result__
= ::windows
::core
::zeroed
::<super::super::Foundation
::Collections
::IVectorView
<::windows
::core
::HSTRING
>>();
770 (::windows
::core
::Interface
::vtable(this
).PeopleNames
)(::windows
::core
::Interface
::as_raw(this
), &mut result__
).from_abi(result__
)
773 #[doc = "*Required features: `\"Foundation_Collections\"`*"]
774 #[cfg(feature = "Foundation_Collections")]
775 pub fn RetrievePropertiesAsync
<P0
>(&self, propertiestoretrieve
: P0
) -> ::windows
::core
::Result
<super::super::Foundation
::IAsyncOperation
<super::super::Foundation
::Collections
::IMap
<::windows
::core
::HSTRING
, ::windows
::core
::IInspectable
>>>
777 P0
: ::windows
::core
::TryIntoParam
<super::super::Foundation
::Collections
::IIterable
<::windows
::core
::HSTRING
>>,
779 let this
= &::windows
::core
::ComInterface
::cast
::<IStorageItemExtraProperties
>(self)?
;
781 let mut result__
= ::windows
::core
::zeroed
::<super::super::Foundation
::IAsyncOperation
<super::super::Foundation
::Collections
::IMap
<::windows
::core
::HSTRING
, ::windows
::core
::IInspectable
>>>();
782 (::windows
::core
::Interface
::vtable(this
).RetrievePropertiesAsync
)(::windows
::core
::Interface
::as_raw(this
), propertiestoretrieve
.try_into_param()?
.abi(), &mut result__
).from_abi(result__
)
785 #[doc = "*Required features: `\"Foundation_Collections\"`*"]
786 #[cfg(feature = "Foundation_Collections")]
787 pub fn SavePropertiesAsync
<P0
>(&self, propertiestosave
: P0
) -> ::windows
::core
::Result
<super::super::Foundation
::IAsyncAction
>
789 P0
: ::windows
::core
::TryIntoParam
<super::super::Foundation
::Collections
::IIterable
<super::super::Foundation
::Collections
::IKeyValuePair
<::windows
::core
::HSTRING
, ::windows
::core
::IInspectable
>>>,
791 let this
= &::windows
::core
::ComInterface
::cast
::<IStorageItemExtraProperties
>(self)?
;
793 let mut result__
= ::windows
::core
::zeroed
::<super::super::Foundation
::IAsyncAction
>();
794 (::windows
::core
::Interface
::vtable(this
).SavePropertiesAsync
)(::windows
::core
::Interface
::as_raw(this
), propertiestosave
.try_into_param()?
.abi(), &mut result__
).from_abi(result__
)
797 #[doc = "*Required features: `\"Foundation\"`*"]
798 #[cfg(feature = "Foundation")]
799 pub fn SavePropertiesAsyncOverloadDefault(&self) -> ::windows
::core
::Result
<super::super::Foundation
::IAsyncAction
> {
800 let this
= &::windows
::core
::ComInterface
::cast
::<IStorageItemExtraProperties
>(self)?
;
802 let mut result__
= ::windows
::core
::zeroed
::<super::super::Foundation
::IAsyncAction
>();
803 (::windows
::core
::Interface
::vtable(this
).SavePropertiesAsyncOverloadDefault
)(::windows
::core
::Interface
::as_raw(this
), &mut result__
).from_abi(result__
)
807 impl ::core
::cmp
::PartialEq
for ImageProperties
{
808 fn eq(&self, other
: &Self) -> bool
{
812 impl ::core
::cmp
::Eq
for ImageProperties {}
813 impl ::core
::fmt
::Debug
for ImageProperties
{
814 fn fmt(&self, f
: &mut ::core
::fmt
::Formatter
<'_
>) -> ::core
::fmt
::Result
{
815 f
.debug_tuple("ImageProperties").field(&self.0).finish()
818 impl ::windows
::core
::RuntimeType
for ImageProperties
{
819 const SIGNATURE
: ::windows
::imp
::ConstBuffer
= ::windows
::imp
::ConstBuffer
::from_slice(b
"rc(Windows.Storage.FileProperties.ImageProperties;{523c9424-fcff-4275-afee-ecdb9ab47973})");
821 impl ::core
::clone
::Clone
for ImageProperties
{
822 fn clone(&self) -> Self {
826 unsafe impl ::windows
::core
::Interface
for ImageProperties
{
827 type Vtable
= IImageProperties_Vtbl
;
829 unsafe impl ::windows
::core
::ComInterface
for ImageProperties
{
830 const IID
: ::windows
::core
::GUID
= <IImageProperties
as ::windows
::core
::ComInterface
>::IID
;
832 impl ::windows
::core
::RuntimeName
for ImageProperties
{
833 const NAME
: &'
static str = "Windows.Storage.FileProperties.ImageProperties";
835 ::windows
::imp
::interface_hierarchy
!(ImageProperties
, ::windows
::core
::IUnknown
, ::windows
::core
::IInspectable
);
836 impl ::windows
::core
::CanTryInto
<IStorageItemExtraProperties
> for ImageProperties {}
837 #[doc = "*Required features: `\"Storage_FileProperties\"`*"]
839 pub struct MusicProperties(::windows
::core
::IUnknown
);
840 impl MusicProperties
{
841 pub fn Album(&self) -> ::windows
::core
::Result
<::windows
::core
::HSTRING
> {
844 let mut result__
= ::windows
::core
::zeroed
::<::windows
::core
::HSTRING
>();
845 (::windows
::core
::Interface
::vtable(this
).Album
)(::windows
::core
::Interface
::as_raw(this
), &mut result__
).from_abi(result__
)
848 pub fn SetAlbum(&self, value
: &::windows
::core
::HSTRING
) -> ::windows
::core
::Result
<()> {
850 unsafe { (::windows::core::Interface::vtable(this).SetAlbum)(::windows::core::Interface::as_raw(this), ::core::mem::transmute_copy(value)).ok() }
852 pub fn Artist(&self) -> ::windows
::core
::Result
<::windows
::core
::HSTRING
> {
855 let mut result__
= ::windows
::core
::zeroed
::<::windows
::core
::HSTRING
>();
856 (::windows
::core
::Interface
::vtable(this
).Artist
)(::windows
::core
::Interface
::as_raw(this
), &mut result__
).from_abi(result__
)
859 pub fn SetArtist(&self, value
: &::windows
::core
::HSTRING
) -> ::windows
::core
::Result
<()> {
861 unsafe { (::windows::core::Interface::vtable(this).SetArtist)(::windows::core::Interface::as_raw(this), ::core::mem::transmute_copy(value)).ok() }
863 #[doc = "*Required features: `\"Foundation_Collections\"`*"]
864 #[cfg(feature = "Foundation_Collections")]
865 pub fn Genre(&self) -> ::windows
::core
::Result
<super::super::Foundation
::Collections
::IVector
<::windows
::core
::HSTRING
>> {
868 let mut result__
= ::windows
::core
::zeroed
::<super::super::Foundation
::Collections
::IVector
<::windows
::core
::HSTRING
>>();
869 (::windows
::core
::Interface
::vtable(this
).Genre
)(::windows
::core
::Interface
::as_raw(this
), &mut result__
).from_abi(result__
)
872 pub fn TrackNumber(&self) -> ::windows
::core
::Result
<u32> {
875 let mut result__
= ::windows
::core
::zeroed
::<u32>();
876 (::windows
::core
::Interface
::vtable(this
).TrackNumber
)(::windows
::core
::Interface
::as_raw(this
), &mut result__
).from_abi(result__
)
879 pub fn SetTrackNumber(&self, value
: u32) -> ::windows
::core
::Result
<()> {
881 unsafe { (::windows::core::Interface::vtable(this).SetTrackNumber)(::windows::core::Interface::as_raw(this), value).ok() }
883 pub fn Title(&self) -> ::windows
::core
::Result
<::windows
::core
::HSTRING
> {
886 let mut result__
= ::windows
::core
::zeroed
::<::windows
::core
::HSTRING
>();
887 (::windows
::core
::Interface
::vtable(this
).Title
)(::windows
::core
::Interface
::as_raw(this
), &mut result__
).from_abi(result__
)
890 pub fn SetTitle(&self, value
: &::windows
::core
::HSTRING
) -> ::windows
::core
::Result
<()> {
892 unsafe { (::windows::core::Interface::vtable(this).SetTitle)(::windows::core::Interface::as_raw(this), ::core::mem::transmute_copy(value)).ok() }
894 pub fn Rating(&self) -> ::windows
::core
::Result
<u32> {
897 let mut result__
= ::windows
::core
::zeroed
::<u32>();
898 (::windows
::core
::Interface
::vtable(this
).Rating
)(::windows
::core
::Interface
::as_raw(this
), &mut result__
).from_abi(result__
)
901 pub fn SetRating(&self, value
: u32) -> ::windows
::core
::Result
<()> {
903 unsafe { (::windows::core::Interface::vtable(this).SetRating)(::windows::core::Interface::as_raw(this), value).ok() }
905 #[doc = "*Required features: `\"Foundation\"`*"]
906 #[cfg(feature = "Foundation")]
907 pub fn Duration(&self) -> ::windows
::core
::Result
<super::super::Foundation
::TimeSpan
> {
910 let mut result__
= ::windows
::core
::zeroed
::<super::super::Foundation
::TimeSpan
>();
911 (::windows
::core
::Interface
::vtable(this
).Duration
)(::windows
::core
::Interface
::as_raw(this
), &mut result__
).from_abi(result__
)
914 pub fn Bitrate(&self) -> ::windows
::core
::Result
<u32> {
917 let mut result__
= ::windows
::core
::zeroed
::<u32>();
918 (::windows
::core
::Interface
::vtable(this
).Bitrate
)(::windows
::core
::Interface
::as_raw(this
), &mut result__
).from_abi(result__
)
921 pub fn AlbumArtist(&self) -> ::windows
::core
::Result
<::windows
::core
::HSTRING
> {
924 let mut result__
= ::windows
::core
::zeroed
::<::windows
::core
::HSTRING
>();
925 (::windows
::core
::Interface
::vtable(this
).AlbumArtist
)(::windows
::core
::Interface
::as_raw(this
), &mut result__
).from_abi(result__
)
928 pub fn SetAlbumArtist(&self, value
: &::windows
::core
::HSTRING
) -> ::windows
::core
::Result
<()> {
930 unsafe { (::windows::core::Interface::vtable(this).SetAlbumArtist)(::windows::core::Interface::as_raw(this), ::core::mem::transmute_copy(value)).ok() }
932 #[doc = "*Required features: `\"Foundation_Collections\"`*"]
933 #[cfg(feature = "Foundation_Collections")]
934 pub fn Composers(&self) -> ::windows
::core
::Result
<super::super::Foundation
::Collections
::IVector
<::windows
::core
::HSTRING
>> {
937 let mut result__
= ::windows
::core
::zeroed
::<super::super::Foundation
::Collections
::IVector
<::windows
::core
::HSTRING
>>();
938 (::windows
::core
::Interface
::vtable(this
).Composers
)(::windows
::core
::Interface
::as_raw(this
), &mut result__
).from_abi(result__
)
941 #[doc = "*Required features: `\"Foundation_Collections\"`*"]
942 #[cfg(feature = "Foundation_Collections")]
943 pub fn Conductors(&self) -> ::windows
::core
::Result
<super::super::Foundation
::Collections
::IVector
<::windows
::core
::HSTRING
>> {
946 let mut result__
= ::windows
::core
::zeroed
::<super::super::Foundation
::Collections
::IVector
<::windows
::core
::HSTRING
>>();
947 (::windows
::core
::Interface
::vtable(this
).Conductors
)(::windows
::core
::Interface
::as_raw(this
), &mut result__
).from_abi(result__
)
950 pub fn Subtitle(&self) -> ::windows
::core
::Result
<::windows
::core
::HSTRING
> {
953 let mut result__
= ::windows
::core
::zeroed
::<::windows
::core
::HSTRING
>();
954 (::windows
::core
::Interface
::vtable(this
).Subtitle
)(::windows
::core
::Interface
::as_raw(this
), &mut result__
).from_abi(result__
)
957 pub fn SetSubtitle(&self, value
: &::windows
::core
::HSTRING
) -> ::windows
::core
::Result
<()> {
959 unsafe { (::windows::core::Interface::vtable(this).SetSubtitle)(::windows::core::Interface::as_raw(this), ::core::mem::transmute_copy(value)).ok() }
961 #[doc = "*Required features: `\"Foundation_Collections\"`*"]
962 #[cfg(feature = "Foundation_Collections")]
963 pub fn Producers(&self) -> ::windows
::core
::Result
<super::super::Foundation
::Collections
::IVector
<::windows
::core
::HSTRING
>> {
966 let mut result__
= ::windows
::core
::zeroed
::<super::super::Foundation
::Collections
::IVector
<::windows
::core
::HSTRING
>>();
967 (::windows
::core
::Interface
::vtable(this
).Producers
)(::windows
::core
::Interface
::as_raw(this
), &mut result__
).from_abi(result__
)
970 pub fn Publisher(&self) -> ::windows
::core
::Result
<::windows
::core
::HSTRING
> {
973 let mut result__
= ::windows
::core
::zeroed
::<::windows
::core
::HSTRING
>();
974 (::windows
::core
::Interface
::vtable(this
).Publisher
)(::windows
::core
::Interface
::as_raw(this
), &mut result__
).from_abi(result__
)
977 pub fn SetPublisher(&self, value
: &::windows
::core
::HSTRING
) -> ::windows
::core
::Result
<()> {
979 unsafe { (::windows::core::Interface::vtable(this).SetPublisher)(::windows::core::Interface::as_raw(this), ::core::mem::transmute_copy(value)).ok() }
981 #[doc = "*Required features: `\"Foundation_Collections\"`*"]
982 #[cfg(feature = "Foundation_Collections")]
983 pub fn Writers(&self) -> ::windows
::core
::Result
<super::super::Foundation
::Collections
::IVector
<::windows
::core
::HSTRING
>> {
986 let mut result__
= ::windows
::core
::zeroed
::<super::super::Foundation
::Collections
::IVector
<::windows
::core
::HSTRING
>>();
987 (::windows
::core
::Interface
::vtable(this
).Writers
)(::windows
::core
::Interface
::as_raw(this
), &mut result__
).from_abi(result__
)
990 pub fn Year(&self) -> ::windows
::core
::Result
<u32> {
993 let mut result__
= ::windows
::core
::zeroed
::<u32>();
994 (::windows
::core
::Interface
::vtable(this
).Year
)(::windows
::core
::Interface
::as_raw(this
), &mut result__
).from_abi(result__
)
997 pub fn SetYear(&self, value
: u32) -> ::windows
::core
::Result
<()> {
999 unsafe { (::windows::core::Interface::vtable(this).SetYear)(::windows::core::Interface::as_raw(this), value).ok() }
1001 #[doc = "*Required features: `\"Foundation_Collections\"`*"]
1002 #[cfg(feature = "Foundation_Collections")]
1003 pub fn RetrievePropertiesAsync
<P0
>(&self, propertiestoretrieve
: P0
) -> ::windows
::core
::Result
<super::super::Foundation
::IAsyncOperation
<super::super::Foundation
::Collections
::IMap
<::windows
::core
::HSTRING
, ::windows
::core
::IInspectable
>>>
1005 P0
: ::windows
::core
::TryIntoParam
<super::super::Foundation
::Collections
::IIterable
<::windows
::core
::HSTRING
>>,
1007 let this
= &::windows
::core
::ComInterface
::cast
::<IStorageItemExtraProperties
>(self)?
;
1009 let mut result__
= ::windows
::core
::zeroed
::<super::super::Foundation
::IAsyncOperation
<super::super::Foundation
::Collections
::IMap
<::windows
::core
::HSTRING
, ::windows
::core
::IInspectable
>>>();
1010 (::windows
::core
::Interface
::vtable(this
).RetrievePropertiesAsync
)(::windows
::core
::Interface
::as_raw(this
), propertiestoretrieve
.try_into_param()?
.abi(), &mut result__
).from_abi(result__
)
1013 #[doc = "*Required features: `\"Foundation_Collections\"`*"]
1014 #[cfg(feature = "Foundation_Collections")]
1015 pub fn SavePropertiesAsync
<P0
>(&self, propertiestosave
: P0
) -> ::windows
::core
::Result
<super::super::Foundation
::IAsyncAction
>
1017 P0
: ::windows
::core
::TryIntoParam
<super::super::Foundation
::Collections
::IIterable
<super::super::Foundation
::Collections
::IKeyValuePair
<::windows
::core
::HSTRING
, ::windows
::core
::IInspectable
>>>,
1019 let this
= &::windows
::core
::ComInterface
::cast
::<IStorageItemExtraProperties
>(self)?
;
1021 let mut result__
= ::windows
::core
::zeroed
::<super::super::Foundation
::IAsyncAction
>();
1022 (::windows
::core
::Interface
::vtable(this
).SavePropertiesAsync
)(::windows
::core
::Interface
::as_raw(this
), propertiestosave
.try_into_param()?
.abi(), &mut result__
).from_abi(result__
)
1025 #[doc = "*Required features: `\"Foundation\"`*"]
1026 #[cfg(feature = "Foundation")]
1027 pub fn SavePropertiesAsyncOverloadDefault(&self) -> ::windows
::core
::Result
<super::super::Foundation
::IAsyncAction
> {
1028 let this
= &::windows
::core
::ComInterface
::cast
::<IStorageItemExtraProperties
>(self)?
;
1030 let mut result__
= ::windows
::core
::zeroed
::<super::super::Foundation
::IAsyncAction
>();
1031 (::windows
::core
::Interface
::vtable(this
).SavePropertiesAsyncOverloadDefault
)(::windows
::core
::Interface
::as_raw(this
), &mut result__
).from_abi(result__
)
1035 impl ::core
::cmp
::PartialEq
for MusicProperties
{
1036 fn eq(&self, other
: &Self) -> bool
{
1040 impl ::core
::cmp
::Eq
for MusicProperties {}
1041 impl ::core
::fmt
::Debug
for MusicProperties
{
1042 fn fmt(&self, f
: &mut ::core
::fmt
::Formatter
<'_
>) -> ::core
::fmt
::Result
{
1043 f
.debug_tuple("MusicProperties").field(&self.0).finish()
1046 impl ::windows
::core
::RuntimeType
for MusicProperties
{
1047 const SIGNATURE
: ::windows
::imp
::ConstBuffer
= ::windows
::imp
::ConstBuffer
::from_slice(b
"rc(Windows.Storage.FileProperties.MusicProperties;{bc8aab62-66ec-419a-bc5d-ca65a4cb46da})");
1049 impl ::core
::clone
::Clone
for MusicProperties
{
1050 fn clone(&self) -> Self {
1051 Self(self.0.clone())
1054 unsafe impl ::windows
::core
::Interface
for MusicProperties
{
1055 type Vtable
= IMusicProperties_Vtbl
;
1057 unsafe impl ::windows
::core
::ComInterface
for MusicProperties
{
1058 const IID
: ::windows
::core
::GUID
= <IMusicProperties
as ::windows
::core
::ComInterface
>::IID
;
1060 impl ::windows
::core
::RuntimeName
for MusicProperties
{
1061 const NAME
: &'
static str = "Windows.Storage.FileProperties.MusicProperties";
1063 ::windows
::imp
::interface_hierarchy
!(MusicProperties
, ::windows
::core
::IUnknown
, ::windows
::core
::IInspectable
);
1064 impl ::windows
::core
::CanTryInto
<IStorageItemExtraProperties
> for MusicProperties {}
1065 #[doc = "*Required features: `\"Storage_FileProperties\"`*"]
1066 #[repr(transparent)]
1067 pub struct StorageItemContentProperties(::windows
::core
::IUnknown
);
1068 impl StorageItemContentProperties
{
1069 #[doc = "*Required features: `\"Foundation\"`*"]
1070 #[cfg(feature = "Foundation")]
1071 pub fn GetMusicPropertiesAsync(&self) -> ::windows
::core
::Result
<super::super::Foundation
::IAsyncOperation
<MusicProperties
>> {
1074 let mut result__
= ::windows
::core
::zeroed
::<super::super::Foundation
::IAsyncOperation
<MusicProperties
>>();
1075 (::windows
::core
::Interface
::vtable(this
).GetMusicPropertiesAsync
)(::windows
::core
::Interface
::as_raw(this
), &mut result__
).from_abi(result__
)
1078 #[doc = "*Required features: `\"Foundation\"`*"]
1079 #[cfg(feature = "Foundation")]
1080 pub fn GetVideoPropertiesAsync(&self) -> ::windows
::core
::Result
<super::super::Foundation
::IAsyncOperation
<VideoProperties
>> {
1083 let mut result__
= ::windows
::core
::zeroed
::<super::super::Foundation
::IAsyncOperation
<VideoProperties
>>();
1084 (::windows
::core
::Interface
::vtable(this
).GetVideoPropertiesAsync
)(::windows
::core
::Interface
::as_raw(this
), &mut result__
).from_abi(result__
)
1087 #[doc = "*Required features: `\"Foundation\"`*"]
1088 #[cfg(feature = "Foundation")]
1089 pub fn GetImagePropertiesAsync(&self) -> ::windows
::core
::Result
<super::super::Foundation
::IAsyncOperation
<ImageProperties
>> {
1092 let mut result__
= ::windows
::core
::zeroed
::<super::super::Foundation
::IAsyncOperation
<ImageProperties
>>();
1093 (::windows
::core
::Interface
::vtable(this
).GetImagePropertiesAsync
)(::windows
::core
::Interface
::as_raw(this
), &mut result__
).from_abi(result__
)
1096 #[doc = "*Required features: `\"Foundation\"`*"]
1097 #[cfg(feature = "Foundation")]
1098 pub fn GetDocumentPropertiesAsync(&self) -> ::windows
::core
::Result
<super::super::Foundation
::IAsyncOperation
<DocumentProperties
>> {
1101 let mut result__
= ::windows
::core
::zeroed
::<super::super::Foundation
::IAsyncOperation
<DocumentProperties
>>();
1102 (::windows
::core
::Interface
::vtable(this
).GetDocumentPropertiesAsync
)(::windows
::core
::Interface
::as_raw(this
), &mut result__
).from_abi(result__
)
1105 #[doc = "*Required features: `\"Foundation_Collections\"`*"]
1106 #[cfg(feature = "Foundation_Collections")]
1107 pub fn RetrievePropertiesAsync
<P0
>(&self, propertiestoretrieve
: P0
) -> ::windows
::core
::Result
<super::super::Foundation
::IAsyncOperation
<super::super::Foundation
::Collections
::IMap
<::windows
::core
::HSTRING
, ::windows
::core
::IInspectable
>>>
1109 P0
: ::windows
::core
::TryIntoParam
<super::super::Foundation
::Collections
::IIterable
<::windows
::core
::HSTRING
>>,
1111 let this
= &::windows
::core
::ComInterface
::cast
::<IStorageItemExtraProperties
>(self)?
;
1113 let mut result__
= ::windows
::core
::zeroed
::<super::super::Foundation
::IAsyncOperation
<super::super::Foundation
::Collections
::IMap
<::windows
::core
::HSTRING
, ::windows
::core
::IInspectable
>>>();
1114 (::windows
::core
::Interface
::vtable(this
).RetrievePropertiesAsync
)(::windows
::core
::Interface
::as_raw(this
), propertiestoretrieve
.try_into_param()?
.abi(), &mut result__
).from_abi(result__
)
1117 #[doc = "*Required features: `\"Foundation_Collections\"`*"]
1118 #[cfg(feature = "Foundation_Collections")]
1119 pub fn SavePropertiesAsync
<P0
>(&self, propertiestosave
: P0
) -> ::windows
::core
::Result
<super::super::Foundation
::IAsyncAction
>
1121 P0
: ::windows
::core
::TryIntoParam
<super::super::Foundation
::Collections
::IIterable
<super::super::Foundation
::Collections
::IKeyValuePair
<::windows
::core
::HSTRING
, ::windows
::core
::IInspectable
>>>,
1123 let this
= &::windows
::core
::ComInterface
::cast
::<IStorageItemExtraProperties
>(self)?
;
1125 let mut result__
= ::windows
::core
::zeroed
::<super::super::Foundation
::IAsyncAction
>();
1126 (::windows
::core
::Interface
::vtable(this
).SavePropertiesAsync
)(::windows
::core
::Interface
::as_raw(this
), propertiestosave
.try_into_param()?
.abi(), &mut result__
).from_abi(result__
)
1129 #[doc = "*Required features: `\"Foundation\"`*"]
1130 #[cfg(feature = "Foundation")]
1131 pub fn SavePropertiesAsyncOverloadDefault(&self) -> ::windows
::core
::Result
<super::super::Foundation
::IAsyncAction
> {
1132 let this
= &::windows
::core
::ComInterface
::cast
::<IStorageItemExtraProperties
>(self)?
;
1134 let mut result__
= ::windows
::core
::zeroed
::<super::super::Foundation
::IAsyncAction
>();
1135 (::windows
::core
::Interface
::vtable(this
).SavePropertiesAsyncOverloadDefault
)(::windows
::core
::Interface
::as_raw(this
), &mut result__
).from_abi(result__
)
1139 impl ::core
::cmp
::PartialEq
for StorageItemContentProperties
{
1140 fn eq(&self, other
: &Self) -> bool
{
1144 impl ::core
::cmp
::Eq
for StorageItemContentProperties {}
1145 impl ::core
::fmt
::Debug
for StorageItemContentProperties
{
1146 fn fmt(&self, f
: &mut ::core
::fmt
::Formatter
<'_
>) -> ::core
::fmt
::Result
{
1147 f
.debug_tuple("StorageItemContentProperties").field(&self.0).finish()
1150 impl ::windows
::core
::RuntimeType
for StorageItemContentProperties
{
1151 const SIGNATURE
: ::windows
::imp
::ConstBuffer
= ::windows
::imp
::ConstBuffer
::from_slice(b
"rc(Windows.Storage.FileProperties.StorageItemContentProperties;{05294bad-bc38-48bf-85d7-770e0e2ae0ba})");
1153 impl ::core
::clone
::Clone
for StorageItemContentProperties
{
1154 fn clone(&self) -> Self {
1155 Self(self.0.clone())
1158 unsafe impl ::windows
::core
::Interface
for StorageItemContentProperties
{
1159 type Vtable
= IStorageItemContentProperties_Vtbl
;
1161 unsafe impl ::windows
::core
::ComInterface
for StorageItemContentProperties
{
1162 const IID
: ::windows
::core
::GUID
= <IStorageItemContentProperties
as ::windows
::core
::ComInterface
>::IID
;
1164 impl ::windows
::core
::RuntimeName
for StorageItemContentProperties
{
1165 const NAME
: &'
static str = "Windows.Storage.FileProperties.StorageItemContentProperties";
1167 ::windows
::imp
::interface_hierarchy
!(StorageItemContentProperties
, ::windows
::core
::IUnknown
, ::windows
::core
::IInspectable
);
1168 impl ::windows
::core
::CanTryInto
<IStorageItemExtraProperties
> for StorageItemContentProperties {}
1169 #[doc = "*Required features: `\"Storage_FileProperties\"`, `\"Storage_Streams\"`*"]
1170 #[cfg(feature = "Storage_Streams")]
1171 #[repr(transparent)]
1172 pub struct StorageItemThumbnail(::windows
::core
::IUnknown
);
1173 #[cfg(feature = "Storage_Streams")]
1174 impl StorageItemThumbnail
{
1175 #[doc = "*Required features: `\"Foundation\"`*"]
1176 #[cfg(feature = "Foundation")]
1177 pub fn Close(&self) -> ::windows
::core
::Result
<()> {
1178 let this
= &::windows
::core
::ComInterface
::cast
::<super::super::Foundation
::IClosable
>(self)?
;
1179 unsafe { (::windows::core::Interface::vtable(this).Close)(::windows::core::Interface::as_raw(this)).ok() }
1181 #[doc = "*Required features: `\"Storage_Streams\"`*"]
1182 #[cfg(feature = "Storage_Streams")]
1183 pub fn ContentType(&self) -> ::windows
::core
::Result
<::windows
::core
::HSTRING
> {
1184 let this
= &::windows
::core
::ComInterface
::cast
::<super::Streams
::IContentTypeProvider
>(self)?
;
1186 let mut result__
= ::windows
::core
::zeroed
::<::windows
::core
::HSTRING
>();
1187 (::windows
::core
::Interface
::vtable(this
).ContentType
)(::windows
::core
::Interface
::as_raw(this
), &mut result__
).from_abi(result__
)
1190 #[doc = "*Required features: `\"Foundation\"`, `\"Storage_Streams\"`*"]
1191 #[cfg(all(feature = "Foundation", feature = "Storage_Streams"))]
1192 pub fn ReadAsync
<P0
>(&self, buffer
: P0
, count
: u32, options
: super::Streams
::InputStreamOptions
) -> ::windows
::core
::Result
<super::super::Foundation
::IAsyncOperationWithProgress
<super::Streams
::IBuffer
, u32>>
1194 P0
: ::windows
::core
::TryIntoParam
<super::Streams
::IBuffer
>,
1196 let this
= &::windows
::core
::ComInterface
::cast
::<super::Streams
::IInputStream
>(self)?
;
1198 let mut result__
= ::windows
::core
::zeroed
::<super::super::Foundation
::IAsyncOperationWithProgress
<super::Streams
::IBuffer
, u32>>();
1199 (::windows
::core
::Interface
::vtable(this
).ReadAsync
)(::windows
::core
::Interface
::as_raw(this
), buffer
.try_into_param()?
.abi(), count
, options
, &mut result__
).from_abi(result__
)
1202 #[doc = "*Required features: `\"Foundation\"`, `\"Storage_Streams\"`*"]
1203 #[cfg(all(feature = "Foundation", feature = "Storage_Streams"))]
1204 pub fn WriteAsync
<P0
>(&self, buffer
: P0
) -> ::windows
::core
::Result
<super::super::Foundation
::IAsyncOperationWithProgress
<u32, u32>>
1206 P0
: ::windows
::core
::TryIntoParam
<super::Streams
::IBuffer
>,
1208 let this
= &::windows
::core
::ComInterface
::cast
::<super::Streams
::IOutputStream
>(self)?
;
1210 let mut result__
= ::windows
::core
::zeroed
::<super::super::Foundation
::IAsyncOperationWithProgress
<u32, u32>>();
1211 (::windows
::core
::Interface
::vtable(this
).WriteAsync
)(::windows
::core
::Interface
::as_raw(this
), buffer
.try_into_param()?
.abi(), &mut result__
).from_abi(result__
)
1214 #[doc = "*Required features: `\"Foundation\"`, `\"Storage_Streams\"`*"]
1215 #[cfg(all(feature = "Foundation", feature = "Storage_Streams"))]
1216 pub fn FlushAsync(&self) -> ::windows
::core
::Result
<super::super::Foundation
::IAsyncOperation
<bool
>> {
1217 let this
= &::windows
::core
::ComInterface
::cast
::<super::Streams
::IOutputStream
>(self)?
;
1219 let mut result__
= ::windows
::core
::zeroed
::<super::super::Foundation
::IAsyncOperation
<bool
>>();
1220 (::windows
::core
::Interface
::vtable(this
).FlushAsync
)(::windows
::core
::Interface
::as_raw(this
), &mut result__
).from_abi(result__
)
1223 #[doc = "*Required features: `\"Storage_Streams\"`*"]
1224 #[cfg(feature = "Storage_Streams")]
1225 pub fn Size(&self) -> ::windows
::core
::Result
<u64> {
1226 let this
= &::windows
::core
::ComInterface
::cast
::<super::Streams
::IRandomAccessStream
>(self)?
;
1228 let mut result__
= ::windows
::core
::zeroed
::<u64>();
1229 (::windows
::core
::Interface
::vtable(this
).Size
)(::windows
::core
::Interface
::as_raw(this
), &mut result__
).from_abi(result__
)
1232 #[doc = "*Required features: `\"Storage_Streams\"`*"]
1233 #[cfg(feature = "Storage_Streams")]
1234 pub fn SetSize(&self, value
: u64) -> ::windows
::core
::Result
<()> {
1235 let this
= &::windows
::core
::ComInterface
::cast
::<super::Streams
::IRandomAccessStream
>(self)?
;
1236 unsafe { (::windows::core::Interface::vtable(this).SetSize)(::windows::core::Interface::as_raw(this), value).ok() }
1238 #[doc = "*Required features: `\"Storage_Streams\"`*"]
1239 #[cfg(feature = "Storage_Streams")]
1240 pub fn GetInputStreamAt(&self, position
: u64) -> ::windows
::core
::Result
<super::Streams
::IInputStream
> {
1241 let this
= &::windows
::core
::ComInterface
::cast
::<super::Streams
::IRandomAccessStream
>(self)?
;
1243 let mut result__
= ::windows
::core
::zeroed
::<super::Streams
::IInputStream
>();
1244 (::windows
::core
::Interface
::vtable(this
).GetInputStreamAt
)(::windows
::core
::Interface
::as_raw(this
), position
, &mut result__
).from_abi(result__
)
1247 #[doc = "*Required features: `\"Storage_Streams\"`*"]
1248 #[cfg(feature = "Storage_Streams")]
1249 pub fn GetOutputStreamAt(&self, position
: u64) -> ::windows
::core
::Result
<super::Streams
::IOutputStream
> {
1250 let this
= &::windows
::core
::ComInterface
::cast
::<super::Streams
::IRandomAccessStream
>(self)?
;
1252 let mut result__
= ::windows
::core
::zeroed
::<super::Streams
::IOutputStream
>();
1253 (::windows
::core
::Interface
::vtable(this
).GetOutputStreamAt
)(::windows
::core
::Interface
::as_raw(this
), position
, &mut result__
).from_abi(result__
)
1256 #[doc = "*Required features: `\"Storage_Streams\"`*"]
1257 #[cfg(feature = "Storage_Streams")]
1258 pub fn Position(&self) -> ::windows
::core
::Result
<u64> {
1259 let this
= &::windows
::core
::ComInterface
::cast
::<super::Streams
::IRandomAccessStream
>(self)?
;
1261 let mut result__
= ::windows
::core
::zeroed
::<u64>();
1262 (::windows
::core
::Interface
::vtable(this
).Position
)(::windows
::core
::Interface
::as_raw(this
), &mut result__
).from_abi(result__
)
1265 #[doc = "*Required features: `\"Storage_Streams\"`*"]
1266 #[cfg(feature = "Storage_Streams")]
1267 pub fn Seek(&self, position
: u64) -> ::windows
::core
::Result
<()> {
1268 let this
= &::windows
::core
::ComInterface
::cast
::<super::Streams
::IRandomAccessStream
>(self)?
;
1269 unsafe { (::windows::core::Interface::vtable(this).Seek)(::windows::core::Interface::as_raw(this), position).ok() }
1271 #[doc = "*Required features: `\"Storage_Streams\"`*"]
1272 #[cfg(feature = "Storage_Streams")]
1273 pub fn CloneStream(&self) -> ::windows
::core
::Result
<super::Streams
::IRandomAccessStream
> {
1274 let this
= &::windows
::core
::ComInterface
::cast
::<super::Streams
::IRandomAccessStream
>(self)?
;
1276 let mut result__
= ::windows
::core
::zeroed
::<super::Streams
::IRandomAccessStream
>();
1277 (::windows
::core
::Interface
::vtable(this
).CloneStream
)(::windows
::core
::Interface
::as_raw(this
), &mut result__
).from_abi(result__
)
1280 #[doc = "*Required features: `\"Storage_Streams\"`*"]
1281 #[cfg(feature = "Storage_Streams")]
1282 pub fn CanRead(&self) -> ::windows
::core
::Result
<bool
> {
1283 let this
= &::windows
::core
::ComInterface
::cast
::<super::Streams
::IRandomAccessStream
>(self)?
;
1285 let mut result__
= ::windows
::core
::zeroed
::<bool
>();
1286 (::windows
::core
::Interface
::vtable(this
).CanRead
)(::windows
::core
::Interface
::as_raw(this
), &mut result__
).from_abi(result__
)
1289 #[doc = "*Required features: `\"Storage_Streams\"`*"]
1290 #[cfg(feature = "Storage_Streams")]
1291 pub fn CanWrite(&self) -> ::windows
::core
::Result
<bool
> {
1292 let this
= &::windows
::core
::ComInterface
::cast
::<super::Streams
::IRandomAccessStream
>(self)?
;
1294 let mut result__
= ::windows
::core
::zeroed
::<bool
>();
1295 (::windows
::core
::Interface
::vtable(this
).CanWrite
)(::windows
::core
::Interface
::as_raw(this
), &mut result__
).from_abi(result__
)
1298 pub fn OriginalWidth(&self) -> ::windows
::core
::Result
<u32> {
1299 let this
= &::windows
::core
::ComInterface
::cast
::<IThumbnailProperties
>(self)?
;
1301 let mut result__
= ::windows
::core
::zeroed
::<u32>();
1302 (::windows
::core
::Interface
::vtable(this
).OriginalWidth
)(::windows
::core
::Interface
::as_raw(this
), &mut result__
).from_abi(result__
)
1305 pub fn OriginalHeight(&self) -> ::windows
::core
::Result
<u32> {
1306 let this
= &::windows
::core
::ComInterface
::cast
::<IThumbnailProperties
>(self)?
;
1308 let mut result__
= ::windows
::core
::zeroed
::<u32>();
1309 (::windows
::core
::Interface
::vtable(this
).OriginalHeight
)(::windows
::core
::Interface
::as_raw(this
), &mut result__
).from_abi(result__
)
1312 pub fn ReturnedSmallerCachedSize(&self) -> ::windows
::core
::Result
<bool
> {
1313 let this
= &::windows
::core
::ComInterface
::cast
::<IThumbnailProperties
>(self)?
;
1315 let mut result__
= ::windows
::core
::zeroed
::<bool
>();
1316 (::windows
::core
::Interface
::vtable(this
).ReturnedSmallerCachedSize
)(::windows
::core
::Interface
::as_raw(this
), &mut result__
).from_abi(result__
)
1319 pub fn Type(&self) -> ::windows
::core
::Result
<ThumbnailType
> {
1320 let this
= &::windows
::core
::ComInterface
::cast
::<IThumbnailProperties
>(self)?
;
1322 let mut result__
= ::windows
::core
::zeroed
::<ThumbnailType
>();
1323 (::windows
::core
::Interface
::vtable(this
).Type
)(::windows
::core
::Interface
::as_raw(this
), &mut result__
).from_abi(result__
)
1327 #[cfg(feature = "Storage_Streams")]
1328 impl ::core
::cmp
::PartialEq
for StorageItemThumbnail
{
1329 fn eq(&self, other
: &Self) -> bool
{
1333 #[cfg(feature = "Storage_Streams")]
1334 impl ::core
::cmp
::Eq
for StorageItemThumbnail {}
1335 #[cfg(feature = "Storage_Streams")]
1336 impl ::core
::fmt
::Debug
for StorageItemThumbnail
{
1337 fn fmt(&self, f
: &mut ::core
::fmt
::Formatter
<'_
>) -> ::core
::fmt
::Result
{
1338 f
.debug_tuple("StorageItemThumbnail").field(&self.0).finish()
1341 #[cfg(feature = "Storage_Streams")]
1342 impl ::windows
::core
::RuntimeType
for StorageItemThumbnail
{
1343 const SIGNATURE
: ::windows
::imp
::ConstBuffer
= ::windows
::imp
::ConstBuffer
::from_slice(b
"rc(Windows.Storage.FileProperties.StorageItemThumbnail;{cc254827-4b3d-438f-9232-10c76bc7e038})");
1345 #[cfg(feature = "Storage_Streams")]
1346 impl ::core
::clone
::Clone
for StorageItemThumbnail
{
1347 fn clone(&self) -> Self {
1348 Self(self.0.clone())
1351 #[cfg(feature = "Storage_Streams")]
1352 unsafe impl ::windows
::core
::Interface
for StorageItemThumbnail
{
1353 type Vtable
= super::Streams
::IRandomAccessStreamWithContentType_Vtbl
;
1355 #[cfg(feature = "Storage_Streams")]
1356 unsafe impl ::windows
::core
::ComInterface
for StorageItemThumbnail
{
1357 const IID
: ::windows
::core
::GUID
= <super::Streams
::IRandomAccessStreamWithContentType
as ::windows
::core
::ComInterface
>::IID
;
1359 #[cfg(feature = "Storage_Streams")]
1360 impl ::windows
::core
::RuntimeName
for StorageItemThumbnail
{
1361 const NAME
: &'
static str = "Windows.Storage.FileProperties.StorageItemThumbnail";
1363 #[cfg(feature = "Storage_Streams")]
1364 ::windows
::imp
::interface_hierarchy
!(StorageItemThumbnail
, ::windows
::core
::IUnknown
, ::windows
::core
::IInspectable
);
1365 #[cfg(all(feature = "Foundation", feature = "Storage_Streams"))]
1366 impl ::windows
::core
::CanTryInto
<super::super::Foundation
::IClosable
> for StorageItemThumbnail {}
1367 #[cfg(feature = "Storage_Streams")]
1368 impl ::windows
::core
::CanTryInto
<super::Streams
::IContentTypeProvider
> for StorageItemThumbnail {}
1369 #[cfg(feature = "Storage_Streams")]
1370 impl ::windows
::core
::CanTryInto
<super::Streams
::IInputStream
> for StorageItemThumbnail {}
1371 #[cfg(feature = "Storage_Streams")]
1372 impl ::windows
::core
::CanTryInto
<super::Streams
::IOutputStream
> for StorageItemThumbnail {}
1373 #[cfg(feature = "Storage_Streams")]
1374 impl ::windows
::core
::CanTryInto
<super::Streams
::IRandomAccessStream
> for StorageItemThumbnail {}
1375 #[cfg(feature = "Storage_Streams")]
1376 impl ::windows
::core
::CanTryInto
<super::Streams
::IRandomAccessStreamWithContentType
> for StorageItemThumbnail {}
1377 #[doc = "*Required features: `\"Storage_FileProperties\"`*"]
1378 #[repr(transparent)]
1379 pub struct VideoProperties(::windows
::core
::IUnknown
);
1380 impl VideoProperties
{
1381 #[doc = "*Required features: `\"Foundation_Collections\"`*"]
1382 #[cfg(feature = "Foundation_Collections")]
1383 pub fn RetrievePropertiesAsync
<P0
>(&self, propertiestoretrieve
: P0
) -> ::windows
::core
::Result
<super::super::Foundation
::IAsyncOperation
<super::super::Foundation
::Collections
::IMap
<::windows
::core
::HSTRING
, ::windows
::core
::IInspectable
>>>
1385 P0
: ::windows
::core
::TryIntoParam
<super::super::Foundation
::Collections
::IIterable
<::windows
::core
::HSTRING
>>,
1387 let this
= &::windows
::core
::ComInterface
::cast
::<IStorageItemExtraProperties
>(self)?
;
1389 let mut result__
= ::windows
::core
::zeroed
::<super::super::Foundation
::IAsyncOperation
<super::super::Foundation
::Collections
::IMap
<::windows
::core
::HSTRING
, ::windows
::core
::IInspectable
>>>();
1390 (::windows
::core
::Interface
::vtable(this
).RetrievePropertiesAsync
)(::windows
::core
::Interface
::as_raw(this
), propertiestoretrieve
.try_into_param()?
.abi(), &mut result__
).from_abi(result__
)
1393 #[doc = "*Required features: `\"Foundation_Collections\"`*"]
1394 #[cfg(feature = "Foundation_Collections")]
1395 pub fn SavePropertiesAsync
<P0
>(&self, propertiestosave
: P0
) -> ::windows
::core
::Result
<super::super::Foundation
::IAsyncAction
>
1397 P0
: ::windows
::core
::TryIntoParam
<super::super::Foundation
::Collections
::IIterable
<super::super::Foundation
::Collections
::IKeyValuePair
<::windows
::core
::HSTRING
, ::windows
::core
::IInspectable
>>>,
1399 let this
= &::windows
::core
::ComInterface
::cast
::<IStorageItemExtraProperties
>(self)?
;
1401 let mut result__
= ::windows
::core
::zeroed
::<super::super::Foundation
::IAsyncAction
>();
1402 (::windows
::core
::Interface
::vtable(this
).SavePropertiesAsync
)(::windows
::core
::Interface
::as_raw(this
), propertiestosave
.try_into_param()?
.abi(), &mut result__
).from_abi(result__
)
1405 #[doc = "*Required features: `\"Foundation\"`*"]
1406 #[cfg(feature = "Foundation")]
1407 pub fn SavePropertiesAsyncOverloadDefault(&self) -> ::windows
::core
::Result
<super::super::Foundation
::IAsyncAction
> {
1408 let this
= &::windows
::core
::ComInterface
::cast
::<IStorageItemExtraProperties
>(self)?
;
1410 let mut result__
= ::windows
::core
::zeroed
::<super::super::Foundation
::IAsyncAction
>();
1411 (::windows
::core
::Interface
::vtable(this
).SavePropertiesAsyncOverloadDefault
)(::windows
::core
::Interface
::as_raw(this
), &mut result__
).from_abi(result__
)
1414 pub fn Rating(&self) -> ::windows
::core
::Result
<u32> {
1417 let mut result__
= ::windows
::core
::zeroed
::<u32>();
1418 (::windows
::core
::Interface
::vtable(this
).Rating
)(::windows
::core
::Interface
::as_raw(this
), &mut result__
).from_abi(result__
)
1421 pub fn SetRating(&self, value
: u32) -> ::windows
::core
::Result
<()> {
1423 unsafe { (::windows::core::Interface::vtable(this).SetRating)(::windows::core::Interface::as_raw(this), value).ok() }
1425 #[doc = "*Required features: `\"Foundation_Collections\"`*"]
1426 #[cfg(feature = "Foundation_Collections")]
1427 pub fn Keywords(&self) -> ::windows
::core
::Result
<super::super::Foundation
::Collections
::IVector
<::windows
::core
::HSTRING
>> {
1430 let mut result__
= ::windows
::core
::zeroed
::<super::super::Foundation
::Collections
::IVector
<::windows
::core
::HSTRING
>>();
1431 (::windows
::core
::Interface
::vtable(this
).Keywords
)(::windows
::core
::Interface
::as_raw(this
), &mut result__
).from_abi(result__
)
1434 pub fn Width(&self) -> ::windows
::core
::Result
<u32> {
1437 let mut result__
= ::windows
::core
::zeroed
::<u32>();
1438 (::windows
::core
::Interface
::vtable(this
).Width
)(::windows
::core
::Interface
::as_raw(this
), &mut result__
).from_abi(result__
)
1441 pub fn Height(&self) -> ::windows
::core
::Result
<u32> {
1444 let mut result__
= ::windows
::core
::zeroed
::<u32>();
1445 (::windows
::core
::Interface
::vtable(this
).Height
)(::windows
::core
::Interface
::as_raw(this
), &mut result__
).from_abi(result__
)
1448 #[doc = "*Required features: `\"Foundation\"`*"]
1449 #[cfg(feature = "Foundation")]
1450 pub fn Duration(&self) -> ::windows
::core
::Result
<super::super::Foundation
::TimeSpan
> {
1453 let mut result__
= ::windows
::core
::zeroed
::<super::super::Foundation
::TimeSpan
>();
1454 (::windows
::core
::Interface
::vtable(this
).Duration
)(::windows
::core
::Interface
::as_raw(this
), &mut result__
).from_abi(result__
)
1457 #[doc = "*Required features: `\"Foundation\"`*"]
1458 #[cfg(feature = "Foundation")]
1459 pub fn Latitude(&self) -> ::windows
::core
::Result
<super::super::Foundation
::IReference
<f64>> {
1462 let mut result__
= ::windows
::core
::zeroed
::<super::super::Foundation
::IReference
<f64>>();
1463 (::windows
::core
::Interface
::vtable(this
).Latitude
)(::windows
::core
::Interface
::as_raw(this
), &mut result__
).from_abi(result__
)
1466 #[doc = "*Required features: `\"Foundation\"`*"]
1467 #[cfg(feature = "Foundation")]
1468 pub fn Longitude(&self) -> ::windows
::core
::Result
<super::super::Foundation
::IReference
<f64>> {
1471 let mut result__
= ::windows
::core
::zeroed
::<super::super::Foundation
::IReference
<f64>>();
1472 (::windows
::core
::Interface
::vtable(this
).Longitude
)(::windows
::core
::Interface
::as_raw(this
), &mut result__
).from_abi(result__
)
1475 pub fn Title(&self) -> ::windows
::core
::Result
<::windows
::core
::HSTRING
> {
1478 let mut result__
= ::windows
::core
::zeroed
::<::windows
::core
::HSTRING
>();
1479 (::windows
::core
::Interface
::vtable(this
).Title
)(::windows
::core
::Interface
::as_raw(this
), &mut result__
).from_abi(result__
)
1482 pub fn SetTitle(&self, value
: &::windows
::core
::HSTRING
) -> ::windows
::core
::Result
<()> {
1484 unsafe { (::windows::core::Interface::vtable(this).SetTitle)(::windows::core::Interface::as_raw(this), ::core::mem::transmute_copy(value)).ok() }
1486 pub fn Subtitle(&self) -> ::windows
::core
::Result
<::windows
::core
::HSTRING
> {
1489 let mut result__
= ::windows
::core
::zeroed
::<::windows
::core
::HSTRING
>();
1490 (::windows
::core
::Interface
::vtable(this
).Subtitle
)(::windows
::core
::Interface
::as_raw(this
), &mut result__
).from_abi(result__
)
1493 pub fn SetSubtitle(&self, value
: &::windows
::core
::HSTRING
) -> ::windows
::core
::Result
<()> {
1495 unsafe { (::windows::core::Interface::vtable(this).SetSubtitle)(::windows::core::Interface::as_raw(this), ::core::mem::transmute_copy(value)).ok() }
1497 #[doc = "*Required features: `\"Foundation_Collections\"`*"]
1498 #[cfg(feature = "Foundation_Collections")]
1499 pub fn Producers(&self) -> ::windows
::core
::Result
<super::super::Foundation
::Collections
::IVector
<::windows
::core
::HSTRING
>> {
1502 let mut result__
= ::windows
::core
::zeroed
::<super::super::Foundation
::Collections
::IVector
<::windows
::core
::HSTRING
>>();
1503 (::windows
::core
::Interface
::vtable(this
).Producers
)(::windows
::core
::Interface
::as_raw(this
), &mut result__
).from_abi(result__
)
1506 pub fn Publisher(&self) -> ::windows
::core
::Result
<::windows
::core
::HSTRING
> {
1509 let mut result__
= ::windows
::core
::zeroed
::<::windows
::core
::HSTRING
>();
1510 (::windows
::core
::Interface
::vtable(this
).Publisher
)(::windows
::core
::Interface
::as_raw(this
), &mut result__
).from_abi(result__
)
1513 pub fn SetPublisher(&self, value
: &::windows
::core
::HSTRING
) -> ::windows
::core
::Result
<()> {
1515 unsafe { (::windows::core::Interface::vtable(this).SetPublisher)(::windows::core::Interface::as_raw(this), ::core::mem::transmute_copy(value)).ok() }
1517 #[doc = "*Required features: `\"Foundation_Collections\"`*"]
1518 #[cfg(feature = "Foundation_Collections")]
1519 pub fn Writers(&self) -> ::windows
::core
::Result
<super::super::Foundation
::Collections
::IVector
<::windows
::core
::HSTRING
>> {
1522 let mut result__
= ::windows
::core
::zeroed
::<super::super::Foundation
::Collections
::IVector
<::windows
::core
::HSTRING
>>();
1523 (::windows
::core
::Interface
::vtable(this
).Writers
)(::windows
::core
::Interface
::as_raw(this
), &mut result__
).from_abi(result__
)
1526 pub fn Year(&self) -> ::windows
::core
::Result
<u32> {
1529 let mut result__
= ::windows
::core
::zeroed
::<u32>();
1530 (::windows
::core
::Interface
::vtable(this
).Year
)(::windows
::core
::Interface
::as_raw(this
), &mut result__
).from_abi(result__
)
1533 pub fn SetYear(&self, value
: u32) -> ::windows
::core
::Result
<()> {
1535 unsafe { (::windows::core::Interface::vtable(this).SetYear)(::windows::core::Interface::as_raw(this), value).ok() }
1537 pub fn Bitrate(&self) -> ::windows
::core
::Result
<u32> {
1540 let mut result__
= ::windows
::core
::zeroed
::<u32>();
1541 (::windows
::core
::Interface
::vtable(this
).Bitrate
)(::windows
::core
::Interface
::as_raw(this
), &mut result__
).from_abi(result__
)
1544 #[doc = "*Required features: `\"Foundation_Collections\"`*"]
1545 #[cfg(feature = "Foundation_Collections")]
1546 pub fn Directors(&self) -> ::windows
::core
::Result
<super::super::Foundation
::Collections
::IVector
<::windows
::core
::HSTRING
>> {
1549 let mut result__
= ::windows
::core
::zeroed
::<super::super::Foundation
::Collections
::IVector
<::windows
::core
::HSTRING
>>();
1550 (::windows
::core
::Interface
::vtable(this
).Directors
)(::windows
::core
::Interface
::as_raw(this
), &mut result__
).from_abi(result__
)
1553 pub fn Orientation(&self) -> ::windows
::core
::Result
<VideoOrientation
> {
1556 let mut result__
= ::windows
::core
::zeroed
::<VideoOrientation
>();
1557 (::windows
::core
::Interface
::vtable(this
).Orientation
)(::windows
::core
::Interface
::as_raw(this
), &mut result__
).from_abi(result__
)
1561 impl ::core
::cmp
::PartialEq
for VideoProperties
{
1562 fn eq(&self, other
: &Self) -> bool
{
1566 impl ::core
::cmp
::Eq
for VideoProperties {}
1567 impl ::core
::fmt
::Debug
for VideoProperties
{
1568 fn fmt(&self, f
: &mut ::core
::fmt
::Formatter
<'_
>) -> ::core
::fmt
::Result
{
1569 f
.debug_tuple("VideoProperties").field(&self.0).finish()
1572 impl ::windows
::core
::RuntimeType
for VideoProperties
{
1573 const SIGNATURE
: ::windows
::imp
::ConstBuffer
= ::windows
::imp
::ConstBuffer
::from_slice(b
"rc(Windows.Storage.FileProperties.VideoProperties;{719ae507-68de-4db8-97de-49998c059f2f})");
1575 impl ::core
::clone
::Clone
for VideoProperties
{
1576 fn clone(&self) -> Self {
1577 Self(self.0.clone())
1580 unsafe impl ::windows
::core
::Interface
for VideoProperties
{
1581 type Vtable
= IVideoProperties_Vtbl
;
1583 unsafe impl ::windows
::core
::ComInterface
for VideoProperties
{
1584 const IID
: ::windows
::core
::GUID
= <IVideoProperties
as ::windows
::core
::ComInterface
>::IID
;
1586 impl ::windows
::core
::RuntimeName
for VideoProperties
{
1587 const NAME
: &'
static str = "Windows.Storage.FileProperties.VideoProperties";
1589 ::windows
::imp
::interface_hierarchy
!(VideoProperties
, ::windows
::core
::IUnknown
, ::windows
::core
::IInspectable
);
1590 impl ::windows
::core
::CanTryInto
<IStorageItemExtraProperties
> for VideoProperties {}
1591 #[doc = "*Required features: `\"Storage_FileProperties\"`*"]
1592 #[repr(transparent)]
1593 #[derive(::core::cmp::PartialEq, ::core::cmp::Eq)]
1594 pub struct PhotoOrientation(pub i32);
1595 impl PhotoOrientation
{
1596 pub const Unspecified
: Self = Self(0i32);
1597 pub const Normal
: Self = Self(1i32);
1598 pub const FlipHorizontal
: Self = Self(2i32);
1599 pub const Rotate180
: Self = Self(3i32);
1600 pub const FlipVertical
: Self = Self(4i32);
1601 pub const Transpose
: Self = Self(5i32);
1602 pub const Rotate270
: Self = Self(6i32);
1603 pub const Transverse
: Self = Self(7i32);
1604 pub const Rotate90
: Self = Self(8i32);
1606 impl ::core
::marker
::Copy
for PhotoOrientation {}
1607 impl ::core
::clone
::Clone
for PhotoOrientation
{
1608 fn clone(&self) -> Self {
1612 impl ::core
::default::Default
for PhotoOrientation
{
1613 fn default() -> Self {
1617 impl ::windows
::core
::TypeKind
for PhotoOrientation
{
1618 type TypeKind
= ::windows
::core
::CopyType
;
1620 impl ::core
::fmt
::Debug
for PhotoOrientation
{
1621 fn fmt(&self, f
: &mut ::core
::fmt
::Formatter
<'_
>) -> ::core
::fmt
::Result
{
1622 f
.debug_tuple("PhotoOrientation").field(&self.0).finish()
1625 impl ::windows
::core
::RuntimeType
for PhotoOrientation
{
1626 const SIGNATURE
: ::windows
::imp
::ConstBuffer
= ::windows
::imp
::ConstBuffer
::from_slice(b
"enum(Windows.Storage.FileProperties.PhotoOrientation;i4)");
1628 #[doc = "*Required features: `\"Storage_FileProperties\"`*"]
1629 #[repr(transparent)]
1630 #[derive(::core::cmp::PartialEq, ::core::cmp::Eq)]
1631 pub struct PropertyPrefetchOptions(pub u32);
1632 impl PropertyPrefetchOptions
{
1633 pub const None
: Self = Self(0u32);
1634 pub const MusicProperties
: Self = Self(1u32);
1635 pub const VideoProperties
: Self = Self(2u32);
1636 pub const ImageProperties
: Self = Self(4u32);
1637 pub const DocumentProperties
: Self = Self(8u32);
1638 pub const BasicProperties
: Self = Self(16u32);
1640 impl ::core
::marker
::Copy
for PropertyPrefetchOptions {}
1641 impl ::core
::clone
::Clone
for PropertyPrefetchOptions
{
1642 fn clone(&self) -> Self {
1646 impl ::core
::default::Default
for PropertyPrefetchOptions
{
1647 fn default() -> Self {
1651 impl ::windows
::core
::TypeKind
for PropertyPrefetchOptions
{
1652 type TypeKind
= ::windows
::core
::CopyType
;
1654 impl ::core
::fmt
::Debug
for PropertyPrefetchOptions
{
1655 fn fmt(&self, f
: &mut ::core
::fmt
::Formatter
<'_
>) -> ::core
::fmt
::Result
{
1656 f
.debug_tuple("PropertyPrefetchOptions").field(&self.0).finish()
1659 impl PropertyPrefetchOptions
{
1660 pub const fn contains(&self, other
: Self) -> bool
{
1661 self.0 & other
.0 == other
.0
1664 impl ::core
::ops
::BitOr
for PropertyPrefetchOptions
{
1666 fn bitor(self, other
: Self) -> Self {
1667 Self(self.0 | other
.0)
1670 impl ::core
::ops
::BitAnd
for PropertyPrefetchOptions
{
1672 fn bitand(self, other
: Self) -> Self {
1673 Self(self.0 & other
.0)
1676 impl ::core
::ops
::BitOrAssign
for PropertyPrefetchOptions
{
1677 fn bitor_assign(&mut self, other
: Self) {
1678 self.0.bitor_assign(other
.0)
1681 impl ::core
::ops
::BitAndAssign
for PropertyPrefetchOptions
{
1682 fn bitand_assign(&mut self, other
: Self) {
1683 self.0.bitand_assign(other
.0)
1686 impl ::core
::ops
::Not
for PropertyPrefetchOptions
{
1688 fn not(self) -> Self {
1692 impl ::windows
::core
::RuntimeType
for PropertyPrefetchOptions
{
1693 const SIGNATURE
: ::windows
::imp
::ConstBuffer
= ::windows
::imp
::ConstBuffer
::from_slice(b
"enum(Windows.Storage.FileProperties.PropertyPrefetchOptions;u4)");
1695 #[doc = "*Required features: `\"Storage_FileProperties\"`*"]
1696 #[repr(transparent)]
1697 #[derive(::core::cmp::PartialEq, ::core::cmp::Eq)]
1698 pub struct ThumbnailMode(pub i32);
1699 impl ThumbnailMode
{
1700 pub const PicturesView
: Self = Self(0i32);
1701 pub const VideosView
: Self = Self(1i32);
1702 pub const MusicView
: Self = Self(2i32);
1703 pub const DocumentsView
: Self = Self(3i32);
1704 pub const ListView
: Self = Self(4i32);
1705 pub const SingleItem
: Self = Self(5i32);
1707 impl ::core
::marker
::Copy
for ThumbnailMode {}
1708 impl ::core
::clone
::Clone
for ThumbnailMode
{
1709 fn clone(&self) -> Self {
1713 impl ::core
::default::Default
for ThumbnailMode
{
1714 fn default() -> Self {
1718 impl ::windows
::core
::TypeKind
for ThumbnailMode
{
1719 type TypeKind
= ::windows
::core
::CopyType
;
1721 impl ::core
::fmt
::Debug
for ThumbnailMode
{
1722 fn fmt(&self, f
: &mut ::core
::fmt
::Formatter
<'_
>) -> ::core
::fmt
::Result
{
1723 f
.debug_tuple("ThumbnailMode").field(&self.0).finish()
1726 impl ::windows
::core
::RuntimeType
for ThumbnailMode
{
1727 const SIGNATURE
: ::windows
::imp
::ConstBuffer
= ::windows
::imp
::ConstBuffer
::from_slice(b
"enum(Windows.Storage.FileProperties.ThumbnailMode;i4)");
1729 #[doc = "*Required features: `\"Storage_FileProperties\"`*"]
1730 #[repr(transparent)]
1731 #[derive(::core::cmp::PartialEq, ::core::cmp::Eq)]
1732 pub struct ThumbnailOptions(pub u32);
1733 impl ThumbnailOptions
{
1734 pub const None
: Self = Self(0u32);
1735 pub const ReturnOnlyIfCached
: Self = Self(1u32);
1736 pub const ResizeThumbnail
: Self = Self(2u32);
1737 pub const UseCurrentScale
: Self = Self(4u32);
1739 impl ::core
::marker
::Copy
for ThumbnailOptions {}
1740 impl ::core
::clone
::Clone
for ThumbnailOptions
{
1741 fn clone(&self) -> Self {
1745 impl ::core
::default::Default
for ThumbnailOptions
{
1746 fn default() -> Self {
1750 impl ::windows
::core
::TypeKind
for ThumbnailOptions
{
1751 type TypeKind
= ::windows
::core
::CopyType
;
1753 impl ::core
::fmt
::Debug
for ThumbnailOptions
{
1754 fn fmt(&self, f
: &mut ::core
::fmt
::Formatter
<'_
>) -> ::core
::fmt
::Result
{
1755 f
.debug_tuple("ThumbnailOptions").field(&self.0).finish()
1758 impl ThumbnailOptions
{
1759 pub const fn contains(&self, other
: Self) -> bool
{
1760 self.0 & other
.0 == other
.0
1763 impl ::core
::ops
::BitOr
for ThumbnailOptions
{
1765 fn bitor(self, other
: Self) -> Self {
1766 Self(self.0 | other
.0)
1769 impl ::core
::ops
::BitAnd
for ThumbnailOptions
{
1771 fn bitand(self, other
: Self) -> Self {
1772 Self(self.0 & other
.0)
1775 impl ::core
::ops
::BitOrAssign
for ThumbnailOptions
{
1776 fn bitor_assign(&mut self, other
: Self) {
1777 self.0.bitor_assign(other
.0)
1780 impl ::core
::ops
::BitAndAssign
for ThumbnailOptions
{
1781 fn bitand_assign(&mut self, other
: Self) {
1782 self.0.bitand_assign(other
.0)
1785 impl ::core
::ops
::Not
for ThumbnailOptions
{
1787 fn not(self) -> Self {
1791 impl ::windows
::core
::RuntimeType
for ThumbnailOptions
{
1792 const SIGNATURE
: ::windows
::imp
::ConstBuffer
= ::windows
::imp
::ConstBuffer
::from_slice(b
"enum(Windows.Storage.FileProperties.ThumbnailOptions;u4)");
1794 #[doc = "*Required features: `\"Storage_FileProperties\"`*"]
1795 #[repr(transparent)]
1796 #[derive(::core::cmp::PartialEq, ::core::cmp::Eq)]
1797 pub struct ThumbnailType(pub i32);
1798 impl ThumbnailType
{
1799 pub const Image
: Self = Self(0i32);
1800 pub const Icon
: Self = Self(1i32);
1802 impl ::core
::marker
::Copy
for ThumbnailType {}
1803 impl ::core
::clone
::Clone
for ThumbnailType
{
1804 fn clone(&self) -> Self {
1808 impl ::core
::default::Default
for ThumbnailType
{
1809 fn default() -> Self {
1813 impl ::windows
::core
::TypeKind
for ThumbnailType
{
1814 type TypeKind
= ::windows
::core
::CopyType
;
1816 impl ::core
::fmt
::Debug
for ThumbnailType
{
1817 fn fmt(&self, f
: &mut ::core
::fmt
::Formatter
<'_
>) -> ::core
::fmt
::Result
{
1818 f
.debug_tuple("ThumbnailType").field(&self.0).finish()
1821 impl ::windows
::core
::RuntimeType
for ThumbnailType
{
1822 const SIGNATURE
: ::windows
::imp
::ConstBuffer
= ::windows
::imp
::ConstBuffer
::from_slice(b
"enum(Windows.Storage.FileProperties.ThumbnailType;i4)");
1824 #[doc = "*Required features: `\"Storage_FileProperties\"`*"]
1825 #[repr(transparent)]
1826 #[derive(::core::cmp::PartialEq, ::core::cmp::Eq)]
1827 pub struct VideoOrientation(pub i32);
1828 impl VideoOrientation
{
1829 pub const Normal
: Self = Self(0i32);
1830 pub const Rotate90
: Self = Self(90i32);
1831 pub const Rotate180
: Self = Self(180i32);
1832 pub const Rotate270
: Self = Self(270i32);
1834 impl ::core
::marker
::Copy
for VideoOrientation {}
1835 impl ::core
::clone
::Clone
for VideoOrientation
{
1836 fn clone(&self) -> Self {
1840 impl ::core
::default::Default
for VideoOrientation
{
1841 fn default() -> Self {
1845 impl ::windows
::core
::TypeKind
for VideoOrientation
{
1846 type TypeKind
= ::windows
::core
::CopyType
;
1848 impl ::core
::fmt
::Debug
for VideoOrientation
{
1849 fn fmt(&self, f
: &mut ::core
::fmt
::Formatter
<'_
>) -> ::core
::fmt
::Result
{
1850 f
.debug_tuple("VideoOrientation").field(&self.0).finish()
1853 impl ::windows
::core
::RuntimeType
for VideoOrientation
{
1854 const SIGNATURE
: ::windows
::imp
::ConstBuffer
= ::windows
::imp
::ConstBuffer
::from_slice(b
"enum(Windows.Storage.FileProperties.VideoOrientation;i4)");
1856 #[cfg(feature = "implement")]
1857 ::core
::include
!("impl.rs");