3 pub struct IFileInformationFactory(::windows
::core
::IUnknown
);
4 unsafe impl ::windows
::core
::Interface
for IFileInformationFactory
{
5 type Vtable
= IFileInformationFactory_Vtbl
;
7 impl ::core
::clone
::Clone
for IFileInformationFactory
{
8 fn clone(&self) -> Self {
12 unsafe impl ::windows
::core
::ComInterface
for IFileInformationFactory
{
13 const IID
: ::windows
::core
::GUID
= ::windows
::core
::GUID
::from_u128(0x401d88be_960f_4d6d_a7d0_1a3861e76c83);
17 pub struct IFileInformationFactory_Vtbl
{
18 pub base__
: ::windows
::core
::IInspectable_Vtbl
,
19 #[cfg(feature = "Foundation_Collections")]
20 pub GetItemsAsync
: unsafe extern "system" fn(this
: *mut ::core
::ffi
::c_void
, startindex
: u32, maxitemstoretrieve
: u32, result__
: *mut *mut ::core
::ffi
::c_void
) -> ::windows
::core
::HRESULT
,
21 #[cfg(not(feature = "Foundation_Collections"))]
23 #[cfg(feature = "Foundation_Collections")]
24 pub GetItemsAsyncDefaultStartAndCount
: unsafe extern "system" fn(this
: *mut ::core
::ffi
::c_void
, result__
: *mut *mut ::core
::ffi
::c_void
) -> ::windows
::core
::HRESULT
,
25 #[cfg(not(feature = "Foundation_Collections"))]
26 GetItemsAsyncDefaultStartAndCount
: usize,
27 #[cfg(feature = "Foundation_Collections")]
28 pub GetFilesAsync
: unsafe extern "system" fn(this
: *mut ::core
::ffi
::c_void
, startindex
: u32, maxitemstoretrieve
: u32, result__
: *mut *mut ::core
::ffi
::c_void
) -> ::windows
::core
::HRESULT
,
29 #[cfg(not(feature = "Foundation_Collections"))]
31 #[cfg(feature = "Foundation_Collections")]
32 pub GetFilesAsyncDefaultStartAndCount
: unsafe extern "system" fn(this
: *mut ::core
::ffi
::c_void
, result__
: *mut *mut ::core
::ffi
::c_void
) -> ::windows
::core
::HRESULT
,
33 #[cfg(not(feature = "Foundation_Collections"))]
34 GetFilesAsyncDefaultStartAndCount
: usize,
35 #[cfg(feature = "Foundation_Collections")]
36 pub GetFoldersAsync
: unsafe extern "system" fn(this
: *mut ::core
::ffi
::c_void
, startindex
: u32, maxitemstoretrieve
: u32, result__
: *mut *mut ::core
::ffi
::c_void
) -> ::windows
::core
::HRESULT
,
37 #[cfg(not(feature = "Foundation_Collections"))]
38 GetFoldersAsync
: usize,
39 #[cfg(feature = "Foundation_Collections")]
40 pub GetFoldersAsyncDefaultStartAndCount
: unsafe extern "system" fn(this
: *mut ::core
::ffi
::c_void
, result__
: *mut *mut ::core
::ffi
::c_void
) -> ::windows
::core
::HRESULT
,
41 #[cfg(not(feature = "Foundation_Collections"))]
42 GetFoldersAsyncDefaultStartAndCount
: usize,
43 pub GetVirtualizedItemsVector
: unsafe extern "system" fn(this
: *mut ::core
::ffi
::c_void
, result__
: *mut *mut ::core
::ffi
::c_void
) -> ::windows
::core
::HRESULT
,
44 pub GetVirtualizedFilesVector
: unsafe extern "system" fn(this
: *mut ::core
::ffi
::c_void
, result__
: *mut *mut ::core
::ffi
::c_void
) -> ::windows
::core
::HRESULT
,
45 pub GetVirtualizedFoldersVector
: unsafe extern "system" fn(this
: *mut ::core
::ffi
::c_void
, result__
: *mut *mut ::core
::ffi
::c_void
) -> ::windows
::core
::HRESULT
,
49 pub struct IFileInformationFactoryFactory(::windows
::core
::IUnknown
);
50 unsafe impl ::windows
::core
::Interface
for IFileInformationFactoryFactory
{
51 type Vtable
= IFileInformationFactoryFactory_Vtbl
;
53 impl ::core
::clone
::Clone
for IFileInformationFactoryFactory
{
54 fn clone(&self) -> Self {
58 unsafe impl ::windows
::core
::ComInterface
for IFileInformationFactoryFactory
{
59 const IID
: ::windows
::core
::GUID
= ::windows
::core
::GUID
::from_u128(0x84ea0e7d_e4a2_4f00_8afa_af5e0f826bd5);
63 pub struct IFileInformationFactoryFactory_Vtbl
{
64 pub base__
: ::windows
::core
::IInspectable_Vtbl
,
65 #[cfg(all(feature = "Storage_FileProperties", feature = "Storage_Search"))]
66 pub CreateWithMode
: unsafe extern "system" fn(this
: *mut ::core
::ffi
::c_void
, queryresult
: *mut ::core
::ffi
::c_void
, mode
: super::FileProperties
::ThumbnailMode
, result__
: *mut *mut ::core
::ffi
::c_void
) -> ::windows
::core
::HRESULT
,
67 #[cfg(not(all(feature = "Storage_FileProperties", feature = "Storage_Search")))]
68 CreateWithMode
: usize,
69 #[cfg(all(feature = "Storage_FileProperties", feature = "Storage_Search"))]
70 pub CreateWithModeAndSize
: unsafe extern "system" fn(this
: *mut ::core
::ffi
::c_void
, queryresult
: *mut ::core
::ffi
::c_void
, mode
: super::FileProperties
::ThumbnailMode
, requestedthumbnailsize
: u32, result__
: *mut *mut ::core
::ffi
::c_void
) -> ::windows
::core
::HRESULT
,
71 #[cfg(not(all(feature = "Storage_FileProperties", feature = "Storage_Search")))]
72 CreateWithModeAndSize
: usize,
73 #[cfg(all(feature = "Storage_FileProperties", feature = "Storage_Search"))]
74 pub CreateWithModeAndSizeAndOptions
: unsafe extern "system" fn(this
: *mut ::core
::ffi
::c_void
, queryresult
: *mut ::core
::ffi
::c_void
, mode
: super::FileProperties
::ThumbnailMode
, requestedthumbnailsize
: u32, thumbnailoptions
: super::FileProperties
::ThumbnailOptions
, result__
: *mut *mut ::core
::ffi
::c_void
) -> ::windows
::core
::HRESULT
,
75 #[cfg(not(all(feature = "Storage_FileProperties", feature = "Storage_Search")))]
76 CreateWithModeAndSizeAndOptions
: usize,
77 #[cfg(all(feature = "Storage_FileProperties", feature = "Storage_Search"))]
78 pub CreateWithModeAndSizeAndOptionsAndFlags
: unsafe extern "system" fn(this
: *mut ::core
::ffi
::c_void
, queryresult
: *mut ::core
::ffi
::c_void
, mode
: super::FileProperties
::ThumbnailMode
, requestedthumbnailsize
: u32, thumbnailoptions
: super::FileProperties
::ThumbnailOptions
, delayload
: bool
, result__
: *mut *mut ::core
::ffi
::c_void
) -> ::windows
::core
::HRESULT
,
79 #[cfg(not(all(feature = "Storage_FileProperties", feature = "Storage_Search")))]
80 CreateWithModeAndSizeAndOptionsAndFlags
: usize,
82 #[doc = "*Required features: `\"Storage_BulkAccess\"`*"]
84 pub struct IStorageItemInformation(::windows
::core
::IUnknown
);
85 impl IStorageItemInformation
{
86 #[doc = "*Required features: `\"Storage_FileProperties\"`*"]
87 #[cfg(feature = "Storage_FileProperties")]
88 pub fn MusicProperties(&self) -> ::windows
::core
::Result
<super::FileProperties
::MusicProperties
> {
91 let mut result__
= ::windows
::core
::zeroed
::<super::FileProperties
::MusicProperties
>();
92 (::windows
::core
::Interface
::vtable(this
).MusicProperties
)(::windows
::core
::Interface
::as_raw(this
), &mut result__
).from_abi(result__
)
95 #[doc = "*Required features: `\"Storage_FileProperties\"`*"]
96 #[cfg(feature = "Storage_FileProperties")]
97 pub fn VideoProperties(&self) -> ::windows
::core
::Result
<super::FileProperties
::VideoProperties
> {
100 let mut result__
= ::windows
::core
::zeroed
::<super::FileProperties
::VideoProperties
>();
101 (::windows
::core
::Interface
::vtable(this
).VideoProperties
)(::windows
::core
::Interface
::as_raw(this
), &mut result__
).from_abi(result__
)
104 #[doc = "*Required features: `\"Storage_FileProperties\"`*"]
105 #[cfg(feature = "Storage_FileProperties")]
106 pub fn ImageProperties(&self) -> ::windows
::core
::Result
<super::FileProperties
::ImageProperties
> {
109 let mut result__
= ::windows
::core
::zeroed
::<super::FileProperties
::ImageProperties
>();
110 (::windows
::core
::Interface
::vtable(this
).ImageProperties
)(::windows
::core
::Interface
::as_raw(this
), &mut result__
).from_abi(result__
)
113 #[doc = "*Required features: `\"Storage_FileProperties\"`*"]
114 #[cfg(feature = "Storage_FileProperties")]
115 pub fn DocumentProperties(&self) -> ::windows
::core
::Result
<super::FileProperties
::DocumentProperties
> {
118 let mut result__
= ::windows
::core
::zeroed
::<super::FileProperties
::DocumentProperties
>();
119 (::windows
::core
::Interface
::vtable(this
).DocumentProperties
)(::windows
::core
::Interface
::as_raw(this
), &mut result__
).from_abi(result__
)
122 #[doc = "*Required features: `\"Storage_FileProperties\"`*"]
123 #[cfg(feature = "Storage_FileProperties")]
124 pub fn BasicProperties(&self) -> ::windows
::core
::Result
<super::FileProperties
::BasicProperties
> {
127 let mut result__
= ::windows
::core
::zeroed
::<super::FileProperties
::BasicProperties
>();
128 (::windows
::core
::Interface
::vtable(this
).BasicProperties
)(::windows
::core
::Interface
::as_raw(this
), &mut result__
).from_abi(result__
)
131 #[doc = "*Required features: `\"Storage_FileProperties\"`, `\"Storage_Streams\"`*"]
132 #[cfg(all(feature = "Storage_FileProperties", feature = "Storage_Streams"))]
133 pub fn Thumbnail(&self) -> ::windows
::core
::Result
<super::FileProperties
::StorageItemThumbnail
> {
136 let mut result__
= ::windows
::core
::zeroed
::<super::FileProperties
::StorageItemThumbnail
>();
137 (::windows
::core
::Interface
::vtable(this
).Thumbnail
)(::windows
::core
::Interface
::as_raw(this
), &mut result__
).from_abi(result__
)
140 #[doc = "*Required features: `\"Foundation\"`*"]
141 #[cfg(feature = "Foundation")]
142 pub fn ThumbnailUpdated(&self, changedhandler
: &super::super::Foundation
::TypedEventHandler
<IStorageItemInformation
, ::windows
::core
::IInspectable
>) -> ::windows
::core
::Result
<super::super::Foundation
::EventRegistrationToken
> {
145 let mut result__
= ::windows
::core
::zeroed
::<super::super::Foundation
::EventRegistrationToken
>();
146 (::windows
::core
::Interface
::vtable(this
).ThumbnailUpdated
)(::windows
::core
::Interface
::as_raw(this
), ::core
::mem
::transmute_copy(changedhandler
), &mut result__
).from_abi(result__
)
149 #[doc = "*Required features: `\"Foundation\"`*"]
150 #[cfg(feature = "Foundation")]
151 pub fn RemoveThumbnailUpdated(&self, eventcookie
: super::super::Foundation
::EventRegistrationToken
) -> ::windows
::core
::Result
<()> {
153 unsafe { (::windows::core::Interface::vtable(this).RemoveThumbnailUpdated)(::windows::core::Interface::as_raw(this), eventcookie).ok() }
155 #[doc = "*Required features: `\"Foundation\"`*"]
156 #[cfg(feature = "Foundation")]
157 pub fn PropertiesUpdated(&self, changedhandler
: &super::super::Foundation
::TypedEventHandler
<IStorageItemInformation
, ::windows
::core
::IInspectable
>) -> ::windows
::core
::Result
<super::super::Foundation
::EventRegistrationToken
> {
160 let mut result__
= ::windows
::core
::zeroed
::<super::super::Foundation
::EventRegistrationToken
>();
161 (::windows
::core
::Interface
::vtable(this
).PropertiesUpdated
)(::windows
::core
::Interface
::as_raw(this
), ::core
::mem
::transmute_copy(changedhandler
), &mut result__
).from_abi(result__
)
164 #[doc = "*Required features: `\"Foundation\"`*"]
165 #[cfg(feature = "Foundation")]
166 pub fn RemovePropertiesUpdated(&self, eventcookie
: super::super::Foundation
::EventRegistrationToken
) -> ::windows
::core
::Result
<()> {
168 unsafe { (::windows::core::Interface::vtable(this).RemovePropertiesUpdated)(::windows::core::Interface::as_raw(this), eventcookie).ok() }
171 ::windows
::imp
::interface_hierarchy
!(IStorageItemInformation
, ::windows
::core
::IUnknown
, ::windows
::core
::IInspectable
);
172 impl ::core
::cmp
::PartialEq
for IStorageItemInformation
{
173 fn eq(&self, other
: &Self) -> bool
{
177 impl ::core
::cmp
::Eq
for IStorageItemInformation {}
178 impl ::core
::fmt
::Debug
for IStorageItemInformation
{
179 fn fmt(&self, f
: &mut ::core
::fmt
::Formatter
<'_
>) -> ::core
::fmt
::Result
{
180 f
.debug_tuple("IStorageItemInformation").field(&self.0).finish()
183 impl ::windows
::core
::RuntimeType
for IStorageItemInformation
{
184 const SIGNATURE
: ::windows
::imp
::ConstBuffer
= ::windows
::imp
::ConstBuffer
::from_slice(b
"{87a5cb8b-8972-4f40-8de0-d86fb179d8fa}");
186 unsafe impl ::windows
::core
::Interface
for IStorageItemInformation
{
187 type Vtable
= IStorageItemInformation_Vtbl
;
189 impl ::core
::clone
::Clone
for IStorageItemInformation
{
190 fn clone(&self) -> Self {
194 unsafe impl ::windows
::core
::ComInterface
for IStorageItemInformation
{
195 const IID
: ::windows
::core
::GUID
= ::windows
::core
::GUID
::from_u128(0x87a5cb8b_8972_4f40_8de0_d86fb179d8fa);
199 pub struct IStorageItemInformation_Vtbl
{
200 pub base__
: ::windows
::core
::IInspectable_Vtbl
,
201 #[cfg(feature = "Storage_FileProperties")]
202 pub MusicProperties
: unsafe extern "system" fn(this
: *mut ::core
::ffi
::c_void
, result__
: *mut *mut ::core
::ffi
::c_void
) -> ::windows
::core
::HRESULT
,
203 #[cfg(not(feature = "Storage_FileProperties"))]
204 MusicProperties
: usize,
205 #[cfg(feature = "Storage_FileProperties")]
206 pub VideoProperties
: unsafe extern "system" fn(this
: *mut ::core
::ffi
::c_void
, result__
: *mut *mut ::core
::ffi
::c_void
) -> ::windows
::core
::HRESULT
,
207 #[cfg(not(feature = "Storage_FileProperties"))]
208 VideoProperties
: usize,
209 #[cfg(feature = "Storage_FileProperties")]
210 pub ImageProperties
: unsafe extern "system" fn(this
: *mut ::core
::ffi
::c_void
, result__
: *mut *mut ::core
::ffi
::c_void
) -> ::windows
::core
::HRESULT
,
211 #[cfg(not(feature = "Storage_FileProperties"))]
212 ImageProperties
: usize,
213 #[cfg(feature = "Storage_FileProperties")]
214 pub DocumentProperties
: unsafe extern "system" fn(this
: *mut ::core
::ffi
::c_void
, result__
: *mut *mut ::core
::ffi
::c_void
) -> ::windows
::core
::HRESULT
,
215 #[cfg(not(feature = "Storage_FileProperties"))]
216 DocumentProperties
: usize,
217 #[cfg(feature = "Storage_FileProperties")]
218 pub BasicProperties
: unsafe extern "system" fn(this
: *mut ::core
::ffi
::c_void
, result__
: *mut *mut ::core
::ffi
::c_void
) -> ::windows
::core
::HRESULT
,
219 #[cfg(not(feature = "Storage_FileProperties"))]
220 BasicProperties
: usize,
221 #[cfg(all(feature = "Storage_FileProperties", feature = "Storage_Streams"))]
222 pub Thumbnail
: unsafe extern "system" fn(this
: *mut ::core
::ffi
::c_void
, result__
: *mut *mut ::core
::ffi
::c_void
) -> ::windows
::core
::HRESULT
,
223 #[cfg(not(all(feature = "Storage_FileProperties", feature = "Storage_Streams")))]
225 #[cfg(feature = "Foundation")]
226 pub ThumbnailUpdated
: unsafe extern "system" fn(this
: *mut ::core
::ffi
::c_void
, changedhandler
: *mut ::core
::ffi
::c_void
, result__
: *mut super::super::Foundation
::EventRegistrationToken
) -> ::windows
::core
::HRESULT
,
227 #[cfg(not(feature = "Foundation"))]
228 ThumbnailUpdated
: usize,
229 #[cfg(feature = "Foundation")]
230 pub RemoveThumbnailUpdated
: unsafe extern "system" fn(this
: *mut ::core
::ffi
::c_void
, eventcookie
: super::super::Foundation
::EventRegistrationToken
) -> ::windows
::core
::HRESULT
,
231 #[cfg(not(feature = "Foundation"))]
232 RemoveThumbnailUpdated
: usize,
233 #[cfg(feature = "Foundation")]
234 pub PropertiesUpdated
: unsafe extern "system" fn(this
: *mut ::core
::ffi
::c_void
, changedhandler
: *mut ::core
::ffi
::c_void
, result__
: *mut super::super::Foundation
::EventRegistrationToken
) -> ::windows
::core
::HRESULT
,
235 #[cfg(not(feature = "Foundation"))]
236 PropertiesUpdated
: usize,
237 #[cfg(feature = "Foundation")]
238 pub RemovePropertiesUpdated
: unsafe extern "system" fn(this
: *mut ::core
::ffi
::c_void
, eventcookie
: super::super::Foundation
::EventRegistrationToken
) -> ::windows
::core
::HRESULT
,
239 #[cfg(not(feature = "Foundation"))]
240 RemovePropertiesUpdated
: usize,
242 #[doc = "*Required features: `\"Storage_BulkAccess\"`*"]
244 pub struct FileInformation(::windows
::core
::IUnknown
);
245 impl FileInformation
{
246 #[doc = "*Required features: `\"Foundation\"`, `\"Storage_Streams\"`*"]
247 #[cfg(all(feature = "Foundation", feature = "Storage_Streams"))]
248 pub fn OpenSequentialReadAsync(&self) -> ::windows
::core
::Result
<super::super::Foundation
::IAsyncOperation
<super::Streams
::IInputStream
>> {
249 let this
= &::windows
::core
::ComInterface
::cast
::<super::Streams
::IInputStreamReference
>(self)?
;
251 let mut result__
= ::windows
::core
::zeroed
::<super::super::Foundation
::IAsyncOperation
<super::Streams
::IInputStream
>>();
252 (::windows
::core
::Interface
::vtable(this
).OpenSequentialReadAsync
)(::windows
::core
::Interface
::as_raw(this
), &mut result__
).from_abi(result__
)
255 #[doc = "*Required features: `\"Foundation\"`, `\"Storage_Streams\"`*"]
256 #[cfg(all(feature = "Foundation", feature = "Storage_Streams"))]
257 pub fn OpenReadAsync(&self) -> ::windows
::core
::Result
<super::super::Foundation
::IAsyncOperation
<super::Streams
::IRandomAccessStreamWithContentType
>> {
258 let this
= &::windows
::core
::ComInterface
::cast
::<super::Streams
::IRandomAccessStreamReference
>(self)?
;
260 let mut result__
= ::windows
::core
::zeroed
::<super::super::Foundation
::IAsyncOperation
<super::Streams
::IRandomAccessStreamWithContentType
>>();
261 (::windows
::core
::Interface
::vtable(this
).OpenReadAsync
)(::windows
::core
::Interface
::as_raw(this
), &mut result__
).from_abi(result__
)
264 pub fn FileType(&self) -> ::windows
::core
::Result
<::windows
::core
::HSTRING
> {
265 let this
= &::windows
::core
::ComInterface
::cast
::<super::IStorageFile
>(self)?
;
267 let mut result__
= ::windows
::core
::zeroed
::<::windows
::core
::HSTRING
>();
268 (::windows
::core
::Interface
::vtable(this
).FileType
)(::windows
::core
::Interface
::as_raw(this
), &mut result__
).from_abi(result__
)
271 pub fn ContentType(&self) -> ::windows
::core
::Result
<::windows
::core
::HSTRING
> {
272 let this
= &::windows
::core
::ComInterface
::cast
::<super::IStorageFile
>(self)?
;
274 let mut result__
= ::windows
::core
::zeroed
::<::windows
::core
::HSTRING
>();
275 (::windows
::core
::Interface
::vtable(this
).ContentType
)(::windows
::core
::Interface
::as_raw(this
), &mut result__
).from_abi(result__
)
278 #[doc = "*Required features: `\"Foundation\"`, `\"Storage_Streams\"`*"]
279 #[cfg(all(feature = "Foundation", feature = "Storage_Streams"))]
280 pub fn OpenAsync(&self, accessmode
: super::FileAccessMode
) -> ::windows
::core
::Result
<super::super::Foundation
::IAsyncOperation
<super::Streams
::IRandomAccessStream
>> {
281 let this
= &::windows
::core
::ComInterface
::cast
::<super::IStorageFile
>(self)?
;
283 let mut result__
= ::windows
::core
::zeroed
::<super::super::Foundation
::IAsyncOperation
<super::Streams
::IRandomAccessStream
>>();
284 (::windows
::core
::Interface
::vtable(this
).OpenAsync
)(::windows
::core
::Interface
::as_raw(this
), accessmode
, &mut result__
).from_abi(result__
)
287 #[doc = "*Required features: `\"Foundation\"`*"]
288 #[cfg(feature = "Foundation")]
289 pub fn OpenTransactedWriteAsync(&self) -> ::windows
::core
::Result
<super::super::Foundation
::IAsyncOperation
<super::StorageStreamTransaction
>> {
290 let this
= &::windows
::core
::ComInterface
::cast
::<super::IStorageFile
>(self)?
;
292 let mut result__
= ::windows
::core
::zeroed
::<super::super::Foundation
::IAsyncOperation
<super::StorageStreamTransaction
>>();
293 (::windows
::core
::Interface
::vtable(this
).OpenTransactedWriteAsync
)(::windows
::core
::Interface
::as_raw(this
), &mut result__
).from_abi(result__
)
296 #[doc = "*Required features: `\"Foundation\"`*"]
297 #[cfg(feature = "Foundation")]
298 pub fn CopyOverloadDefaultNameAndOptions
<P0
>(&self, destinationfolder
: P0
) -> ::windows
::core
::Result
<super::super::Foundation
::IAsyncOperation
<super::StorageFile
>>
300 P0
: ::windows
::core
::TryIntoParam
<super::IStorageFolder
>,
302 let this
= &::windows
::core
::ComInterface
::cast
::<super::IStorageFile
>(self)?
;
304 let mut result__
= ::windows
::core
::zeroed
::<super::super::Foundation
::IAsyncOperation
<super::StorageFile
>>();
305 (::windows
::core
::Interface
::vtable(this
).CopyOverloadDefaultNameAndOptions
)(::windows
::core
::Interface
::as_raw(this
), destinationfolder
.try_into_param()?
.abi(), &mut result__
).from_abi(result__
)
308 #[doc = "*Required features: `\"Foundation\"`*"]
309 #[cfg(feature = "Foundation")]
310 pub fn CopyOverloadDefaultOptions
<P0
>(&self, destinationfolder
: P0
, desirednewname
: &::windows
::core
::HSTRING
) -> ::windows
::core
::Result
<super::super::Foundation
::IAsyncOperation
<super::StorageFile
>>
312 P0
: ::windows
::core
::TryIntoParam
<super::IStorageFolder
>,
314 let this
= &::windows
::core
::ComInterface
::cast
::<super::IStorageFile
>(self)?
;
316 let mut result__
= ::windows
::core
::zeroed
::<super::super::Foundation
::IAsyncOperation
<super::StorageFile
>>();
317 (::windows
::core
::Interface
::vtable(this
).CopyOverloadDefaultOptions
)(::windows
::core
::Interface
::as_raw(this
), destinationfolder
.try_into_param()?
.abi(), ::core
::mem
::transmute_copy(desirednewname
), &mut result__
).from_abi(result__
)
320 #[doc = "*Required features: `\"Foundation\"`*"]
321 #[cfg(feature = "Foundation")]
322 pub fn CopyOverload
<P0
>(&self, destinationfolder
: P0
, desirednewname
: &::windows
::core
::HSTRING
, option
: super::NameCollisionOption
) -> ::windows
::core
::Result
<super::super::Foundation
::IAsyncOperation
<super::StorageFile
>>
324 P0
: ::windows
::core
::TryIntoParam
<super::IStorageFolder
>,
326 let this
= &::windows
::core
::ComInterface
::cast
::<super::IStorageFile
>(self)?
;
328 let mut result__
= ::windows
::core
::zeroed
::<super::super::Foundation
::IAsyncOperation
<super::StorageFile
>>();
329 (::windows
::core
::Interface
::vtable(this
).CopyOverload
)(::windows
::core
::Interface
::as_raw(this
), destinationfolder
.try_into_param()?
.abi(), ::core
::mem
::transmute_copy(desirednewname
), option
, &mut result__
).from_abi(result__
)
332 #[doc = "*Required features: `\"Foundation\"`*"]
333 #[cfg(feature = "Foundation")]
334 pub fn CopyAndReplaceAsync
<P0
>(&self, filetoreplace
: P0
) -> ::windows
::core
::Result
<super::super::Foundation
::IAsyncAction
>
336 P0
: ::windows
::core
::TryIntoParam
<super::IStorageFile
>,
338 let this
= &::windows
::core
::ComInterface
::cast
::<super::IStorageFile
>(self)?
;
340 let mut result__
= ::windows
::core
::zeroed
::<super::super::Foundation
::IAsyncAction
>();
341 (::windows
::core
::Interface
::vtable(this
).CopyAndReplaceAsync
)(::windows
::core
::Interface
::as_raw(this
), filetoreplace
.try_into_param()?
.abi(), &mut result__
).from_abi(result__
)
344 #[doc = "*Required features: `\"Foundation\"`*"]
345 #[cfg(feature = "Foundation")]
346 pub fn MoveOverloadDefaultNameAndOptions
<P0
>(&self, destinationfolder
: P0
) -> ::windows
::core
::Result
<super::super::Foundation
::IAsyncAction
>
348 P0
: ::windows
::core
::TryIntoParam
<super::IStorageFolder
>,
350 let this
= &::windows
::core
::ComInterface
::cast
::<super::IStorageFile
>(self)?
;
352 let mut result__
= ::windows
::core
::zeroed
::<super::super::Foundation
::IAsyncAction
>();
353 (::windows
::core
::Interface
::vtable(this
).MoveOverloadDefaultNameAndOptions
)(::windows
::core
::Interface
::as_raw(this
), destinationfolder
.try_into_param()?
.abi(), &mut result__
).from_abi(result__
)
356 #[doc = "*Required features: `\"Foundation\"`*"]
357 #[cfg(feature = "Foundation")]
358 pub fn MoveOverloadDefaultOptions
<P0
>(&self, destinationfolder
: P0
, desirednewname
: &::windows
::core
::HSTRING
) -> ::windows
::core
::Result
<super::super::Foundation
::IAsyncAction
>
360 P0
: ::windows
::core
::TryIntoParam
<super::IStorageFolder
>,
362 let this
= &::windows
::core
::ComInterface
::cast
::<super::IStorageFile
>(self)?
;
364 let mut result__
= ::windows
::core
::zeroed
::<super::super::Foundation
::IAsyncAction
>();
365 (::windows
::core
::Interface
::vtable(this
).MoveOverloadDefaultOptions
)(::windows
::core
::Interface
::as_raw(this
), destinationfolder
.try_into_param()?
.abi(), ::core
::mem
::transmute_copy(desirednewname
), &mut result__
).from_abi(result__
)
368 #[doc = "*Required features: `\"Foundation\"`*"]
369 #[cfg(feature = "Foundation")]
370 pub fn MoveOverload
<P0
>(&self, destinationfolder
: P0
, desirednewname
: &::windows
::core
::HSTRING
, option
: super::NameCollisionOption
) -> ::windows
::core
::Result
<super::super::Foundation
::IAsyncAction
>
372 P0
: ::windows
::core
::TryIntoParam
<super::IStorageFolder
>,
374 let this
= &::windows
::core
::ComInterface
::cast
::<super::IStorageFile
>(self)?
;
376 let mut result__
= ::windows
::core
::zeroed
::<super::super::Foundation
::IAsyncAction
>();
377 (::windows
::core
::Interface
::vtable(this
).MoveOverload
)(::windows
::core
::Interface
::as_raw(this
), destinationfolder
.try_into_param()?
.abi(), ::core
::mem
::transmute_copy(desirednewname
), option
, &mut result__
).from_abi(result__
)
380 #[doc = "*Required features: `\"Foundation\"`*"]
381 #[cfg(feature = "Foundation")]
382 pub fn MoveAndReplaceAsync
<P0
>(&self, filetoreplace
: P0
) -> ::windows
::core
::Result
<super::super::Foundation
::IAsyncAction
>
384 P0
: ::windows
::core
::TryIntoParam
<super::IStorageFile
>,
386 let this
= &::windows
::core
::ComInterface
::cast
::<super::IStorageFile
>(self)?
;
388 let mut result__
= ::windows
::core
::zeroed
::<super::super::Foundation
::IAsyncAction
>();
389 (::windows
::core
::Interface
::vtable(this
).MoveAndReplaceAsync
)(::windows
::core
::Interface
::as_raw(this
), filetoreplace
.try_into_param()?
.abi(), &mut result__
).from_abi(result__
)
392 #[doc = "*Required features: `\"Foundation\"`, `\"Storage_Streams\"`*"]
393 #[cfg(all(feature = "Foundation", feature = "Storage_Streams"))]
394 pub fn OpenWithOptionsAsync(&self, accessmode
: super::FileAccessMode
, options
: super::StorageOpenOptions
) -> ::windows
::core
::Result
<super::super::Foundation
::IAsyncOperation
<super::Streams
::IRandomAccessStream
>> {
395 let this
= &::windows
::core
::ComInterface
::cast
::<super::IStorageFile2
>(self)?
;
397 let mut result__
= ::windows
::core
::zeroed
::<super::super::Foundation
::IAsyncOperation
<super::Streams
::IRandomAccessStream
>>();
398 (::windows
::core
::Interface
::vtable(this
).OpenWithOptionsAsync
)(::windows
::core
::Interface
::as_raw(this
), accessmode
, options
, &mut result__
).from_abi(result__
)
401 #[doc = "*Required features: `\"Foundation\"`*"]
402 #[cfg(feature = "Foundation")]
403 pub fn OpenTransactedWriteWithOptionsAsync(&self, options
: super::StorageOpenOptions
) -> ::windows
::core
::Result
<super::super::Foundation
::IAsyncOperation
<super::StorageStreamTransaction
>> {
404 let this
= &::windows
::core
::ComInterface
::cast
::<super::IStorageFile2
>(self)?
;
406 let mut result__
= ::windows
::core
::zeroed
::<super::super::Foundation
::IAsyncOperation
<super::StorageStreamTransaction
>>();
407 (::windows
::core
::Interface
::vtable(this
).OpenTransactedWriteWithOptionsAsync
)(::windows
::core
::Interface
::as_raw(this
), options
, &mut result__
).from_abi(result__
)
410 pub fn IsAvailable(&self) -> ::windows
::core
::Result
<bool
> {
411 let this
= &::windows
::core
::ComInterface
::cast
::<super::IStorageFilePropertiesWithAvailability
>(self)?
;
413 let mut result__
= ::windows
::core
::zeroed
::<bool
>();
414 (::windows
::core
::Interface
::vtable(this
).IsAvailable
)(::windows
::core
::Interface
::as_raw(this
), &mut result__
).from_abi(result__
)
417 #[doc = "*Required features: `\"Foundation\"`*"]
418 #[cfg(feature = "Foundation")]
419 pub fn RenameAsyncOverloadDefaultOptions(&self, desiredname
: &::windows
::core
::HSTRING
) -> ::windows
::core
::Result
<super::super::Foundation
::IAsyncAction
> {
420 let this
= &::windows
::core
::ComInterface
::cast
::<super::IStorageItem
>(self)?
;
422 let mut result__
= ::windows
::core
::zeroed
::<super::super::Foundation
::IAsyncAction
>();
423 (::windows
::core
::Interface
::vtable(this
).RenameAsyncOverloadDefaultOptions
)(::windows
::core
::Interface
::as_raw(this
), ::core
::mem
::transmute_copy(desiredname
), &mut result__
).from_abi(result__
)
426 #[doc = "*Required features: `\"Foundation\"`*"]
427 #[cfg(feature = "Foundation")]
428 pub fn RenameAsync(&self, desiredname
: &::windows
::core
::HSTRING
, option
: super::NameCollisionOption
) -> ::windows
::core
::Result
<super::super::Foundation
::IAsyncAction
> {
429 let this
= &::windows
::core
::ComInterface
::cast
::<super::IStorageItem
>(self)?
;
431 let mut result__
= ::windows
::core
::zeroed
::<super::super::Foundation
::IAsyncAction
>();
432 (::windows
::core
::Interface
::vtable(this
).RenameAsync
)(::windows
::core
::Interface
::as_raw(this
), ::core
::mem
::transmute_copy(desiredname
), option
, &mut result__
).from_abi(result__
)
435 #[doc = "*Required features: `\"Foundation\"`*"]
436 #[cfg(feature = "Foundation")]
437 pub fn DeleteAsyncOverloadDefaultOptions(&self) -> ::windows
::core
::Result
<super::super::Foundation
::IAsyncAction
> {
438 let this
= &::windows
::core
::ComInterface
::cast
::<super::IStorageItem
>(self)?
;
440 let mut result__
= ::windows
::core
::zeroed
::<super::super::Foundation
::IAsyncAction
>();
441 (::windows
::core
::Interface
::vtable(this
).DeleteAsyncOverloadDefaultOptions
)(::windows
::core
::Interface
::as_raw(this
), &mut result__
).from_abi(result__
)
444 #[doc = "*Required features: `\"Foundation\"`*"]
445 #[cfg(feature = "Foundation")]
446 pub fn DeleteAsync(&self, option
: super::StorageDeleteOption
) -> ::windows
::core
::Result
<super::super::Foundation
::IAsyncAction
> {
447 let this
= &::windows
::core
::ComInterface
::cast
::<super::IStorageItem
>(self)?
;
449 let mut result__
= ::windows
::core
::zeroed
::<super::super::Foundation
::IAsyncAction
>();
450 (::windows
::core
::Interface
::vtable(this
).DeleteAsync
)(::windows
::core
::Interface
::as_raw(this
), option
, &mut result__
).from_abi(result__
)
453 #[doc = "*Required features: `\"Foundation\"`, `\"Storage_FileProperties\"`*"]
454 #[cfg(all(feature = "Foundation", feature = "Storage_FileProperties"))]
455 pub fn GetBasicPropertiesAsync(&self) -> ::windows
::core
::Result
<super::super::Foundation
::IAsyncOperation
<super::FileProperties
::BasicProperties
>> {
456 let this
= &::windows
::core
::ComInterface
::cast
::<super::IStorageItem
>(self)?
;
458 let mut result__
= ::windows
::core
::zeroed
::<super::super::Foundation
::IAsyncOperation
<super::FileProperties
::BasicProperties
>>();
459 (::windows
::core
::Interface
::vtable(this
).GetBasicPropertiesAsync
)(::windows
::core
::Interface
::as_raw(this
), &mut result__
).from_abi(result__
)
462 pub fn Name(&self) -> ::windows
::core
::Result
<::windows
::core
::HSTRING
> {
463 let this
= &::windows
::core
::ComInterface
::cast
::<super::IStorageItem
>(self)?
;
465 let mut result__
= ::windows
::core
::zeroed
::<::windows
::core
::HSTRING
>();
466 (::windows
::core
::Interface
::vtable(this
).Name
)(::windows
::core
::Interface
::as_raw(this
), &mut result__
).from_abi(result__
)
469 pub fn Path(&self) -> ::windows
::core
::Result
<::windows
::core
::HSTRING
> {
470 let this
= &::windows
::core
::ComInterface
::cast
::<super::IStorageItem
>(self)?
;
472 let mut result__
= ::windows
::core
::zeroed
::<::windows
::core
::HSTRING
>();
473 (::windows
::core
::Interface
::vtable(this
).Path
)(::windows
::core
::Interface
::as_raw(this
), &mut result__
).from_abi(result__
)
476 pub fn Attributes(&self) -> ::windows
::core
::Result
<super::FileAttributes
> {
477 let this
= &::windows
::core
::ComInterface
::cast
::<super::IStorageItem
>(self)?
;
479 let mut result__
= ::windows
::core
::zeroed
::<super::FileAttributes
>();
480 (::windows
::core
::Interface
::vtable(this
).Attributes
)(::windows
::core
::Interface
::as_raw(this
), &mut result__
).from_abi(result__
)
483 #[doc = "*Required features: `\"Foundation\"`*"]
484 #[cfg(feature = "Foundation")]
485 pub fn DateCreated(&self) -> ::windows
::core
::Result
<super::super::Foundation
::DateTime
> {
486 let this
= &::windows
::core
::ComInterface
::cast
::<super::IStorageItem
>(self)?
;
488 let mut result__
= ::windows
::core
::zeroed
::<super::super::Foundation
::DateTime
>();
489 (::windows
::core
::Interface
::vtable(this
).DateCreated
)(::windows
::core
::Interface
::as_raw(this
), &mut result__
).from_abi(result__
)
492 pub fn IsOfType(&self, r
#type: super::StorageItemTypes) -> ::windows::core::Result<bool> {
493 let this
= &::windows
::core
::ComInterface
::cast
::<super::IStorageItem
>(self)?
;
495 let mut result__
= ::windows
::core
::zeroed
::<bool
>();
496 (::windows
::core
::Interface
::vtable(this
).IsOfType
)(::windows
::core
::Interface
::as_raw(this
), r
#type, &mut result__).from_abi(result__)
499 #[doc = "*Required features: `\"Foundation\"`*"]
500 #[cfg(feature = "Foundation")]
501 pub fn GetParentAsync(&self) -> ::windows
::core
::Result
<super::super::Foundation
::IAsyncOperation
<super::StorageFolder
>> {
502 let this
= &::windows
::core
::ComInterface
::cast
::<super::IStorageItem2
>(self)?
;
504 let mut result__
= ::windows
::core
::zeroed
::<super::super::Foundation
::IAsyncOperation
<super::StorageFolder
>>();
505 (::windows
::core
::Interface
::vtable(this
).GetParentAsync
)(::windows
::core
::Interface
::as_raw(this
), &mut result__
).from_abi(result__
)
508 pub fn IsEqual
<P0
>(&self, item
: P0
) -> ::windows
::core
::Result
<bool
>
510 P0
: ::windows
::core
::TryIntoParam
<super::IStorageItem
>,
512 let this
= &::windows
::core
::ComInterface
::cast
::<super::IStorageItem2
>(self)?
;
514 let mut result__
= ::windows
::core
::zeroed
::<bool
>();
515 (::windows
::core
::Interface
::vtable(this
).IsEqual
)(::windows
::core
::Interface
::as_raw(this
), item
.try_into_param()?
.abi(), &mut result__
).from_abi(result__
)
518 #[doc = "*Required features: `\"Storage_FileProperties\"`*"]
519 #[cfg(feature = "Storage_FileProperties")]
520 pub fn MusicProperties(&self) -> ::windows
::core
::Result
<super::FileProperties
::MusicProperties
> {
523 let mut result__
= ::windows
::core
::zeroed
::<super::FileProperties
::MusicProperties
>();
524 (::windows
::core
::Interface
::vtable(this
).MusicProperties
)(::windows
::core
::Interface
::as_raw(this
), &mut result__
).from_abi(result__
)
527 #[doc = "*Required features: `\"Storage_FileProperties\"`*"]
528 #[cfg(feature = "Storage_FileProperties")]
529 pub fn VideoProperties(&self) -> ::windows
::core
::Result
<super::FileProperties
::VideoProperties
> {
532 let mut result__
= ::windows
::core
::zeroed
::<super::FileProperties
::VideoProperties
>();
533 (::windows
::core
::Interface
::vtable(this
).VideoProperties
)(::windows
::core
::Interface
::as_raw(this
), &mut result__
).from_abi(result__
)
536 #[doc = "*Required features: `\"Storage_FileProperties\"`*"]
537 #[cfg(feature = "Storage_FileProperties")]
538 pub fn ImageProperties(&self) -> ::windows
::core
::Result
<super::FileProperties
::ImageProperties
> {
541 let mut result__
= ::windows
::core
::zeroed
::<super::FileProperties
::ImageProperties
>();
542 (::windows
::core
::Interface
::vtable(this
).ImageProperties
)(::windows
::core
::Interface
::as_raw(this
), &mut result__
).from_abi(result__
)
545 #[doc = "*Required features: `\"Storage_FileProperties\"`*"]
546 #[cfg(feature = "Storage_FileProperties")]
547 pub fn DocumentProperties(&self) -> ::windows
::core
::Result
<super::FileProperties
::DocumentProperties
> {
550 let mut result__
= ::windows
::core
::zeroed
::<super::FileProperties
::DocumentProperties
>();
551 (::windows
::core
::Interface
::vtable(this
).DocumentProperties
)(::windows
::core
::Interface
::as_raw(this
), &mut result__
).from_abi(result__
)
554 #[doc = "*Required features: `\"Storage_FileProperties\"`*"]
555 #[cfg(feature = "Storage_FileProperties")]
556 pub fn BasicProperties(&self) -> ::windows
::core
::Result
<super::FileProperties
::BasicProperties
> {
559 let mut result__
= ::windows
::core
::zeroed
::<super::FileProperties
::BasicProperties
>();
560 (::windows
::core
::Interface
::vtable(this
).BasicProperties
)(::windows
::core
::Interface
::as_raw(this
), &mut result__
).from_abi(result__
)
563 #[doc = "*Required features: `\"Storage_FileProperties\"`, `\"Storage_Streams\"`*"]
564 #[cfg(all(feature = "Storage_FileProperties", feature = "Storage_Streams"))]
565 pub fn Thumbnail(&self) -> ::windows
::core
::Result
<super::FileProperties
::StorageItemThumbnail
> {
568 let mut result__
= ::windows
::core
::zeroed
::<super::FileProperties
::StorageItemThumbnail
>();
569 (::windows
::core
::Interface
::vtable(this
).Thumbnail
)(::windows
::core
::Interface
::as_raw(this
), &mut result__
).from_abi(result__
)
572 #[doc = "*Required features: `\"Foundation\"`*"]
573 #[cfg(feature = "Foundation")]
574 pub fn ThumbnailUpdated(&self, changedhandler
: &super::super::Foundation
::TypedEventHandler
<IStorageItemInformation
, ::windows
::core
::IInspectable
>) -> ::windows
::core
::Result
<super::super::Foundation
::EventRegistrationToken
> {
577 let mut result__
= ::windows
::core
::zeroed
::<super::super::Foundation
::EventRegistrationToken
>();
578 (::windows
::core
::Interface
::vtable(this
).ThumbnailUpdated
)(::windows
::core
::Interface
::as_raw(this
), ::core
::mem
::transmute_copy(changedhandler
), &mut result__
).from_abi(result__
)
581 #[doc = "*Required features: `\"Foundation\"`*"]
582 #[cfg(feature = "Foundation")]
583 pub fn RemoveThumbnailUpdated(&self, eventcookie
: super::super::Foundation
::EventRegistrationToken
) -> ::windows
::core
::Result
<()> {
585 unsafe { (::windows::core::Interface::vtable(this).RemoveThumbnailUpdated)(::windows::core::Interface::as_raw(this), eventcookie).ok() }
587 #[doc = "*Required features: `\"Foundation\"`*"]
588 #[cfg(feature = "Foundation")]
589 pub fn PropertiesUpdated(&self, changedhandler
: &super::super::Foundation
::TypedEventHandler
<IStorageItemInformation
, ::windows
::core
::IInspectable
>) -> ::windows
::core
::Result
<super::super::Foundation
::EventRegistrationToken
> {
592 let mut result__
= ::windows
::core
::zeroed
::<super::super::Foundation
::EventRegistrationToken
>();
593 (::windows
::core
::Interface
::vtable(this
).PropertiesUpdated
)(::windows
::core
::Interface
::as_raw(this
), ::core
::mem
::transmute_copy(changedhandler
), &mut result__
).from_abi(result__
)
596 #[doc = "*Required features: `\"Foundation\"`*"]
597 #[cfg(feature = "Foundation")]
598 pub fn RemovePropertiesUpdated(&self, eventcookie
: super::super::Foundation
::EventRegistrationToken
) -> ::windows
::core
::Result
<()> {
600 unsafe { (::windows::core::Interface::vtable(this).RemovePropertiesUpdated)(::windows::core::Interface::as_raw(this), eventcookie).ok() }
602 #[doc = "*Required features: `\"Foundation\"`, `\"Storage_FileProperties\"`, `\"Storage_Streams\"`*"]
603 #[cfg(all(feature = "Foundation", feature = "Storage_FileProperties", feature = "Storage_Streams"))]
604 pub fn GetThumbnailAsyncOverloadDefaultSizeDefaultOptions(&self, mode
: super::FileProperties
::ThumbnailMode
) -> ::windows
::core
::Result
<super::super::Foundation
::IAsyncOperation
<super::FileProperties
::StorageItemThumbnail
>> {
605 let this
= &::windows
::core
::ComInterface
::cast
::<super::IStorageItemProperties
>(self)?
;
607 let mut result__
= ::windows
::core
::zeroed
::<super::super::Foundation
::IAsyncOperation
<super::FileProperties
::StorageItemThumbnail
>>();
608 (::windows
::core
::Interface
::vtable(this
).GetThumbnailAsyncOverloadDefaultSizeDefaultOptions
)(::windows
::core
::Interface
::as_raw(this
), mode
, &mut result__
).from_abi(result__
)
611 #[doc = "*Required features: `\"Foundation\"`, `\"Storage_FileProperties\"`, `\"Storage_Streams\"`*"]
612 #[cfg(all(feature = "Foundation", feature = "Storage_FileProperties", feature = "Storage_Streams"))]
613 pub fn GetThumbnailAsyncOverloadDefaultOptions(&self, mode
: super::FileProperties
::ThumbnailMode
, requestedsize
: u32) -> ::windows
::core
::Result
<super::super::Foundation
::IAsyncOperation
<super::FileProperties
::StorageItemThumbnail
>> {
614 let this
= &::windows
::core
::ComInterface
::cast
::<super::IStorageItemProperties
>(self)?
;
616 let mut result__
= ::windows
::core
::zeroed
::<super::super::Foundation
::IAsyncOperation
<super::FileProperties
::StorageItemThumbnail
>>();
617 (::windows
::core
::Interface
::vtable(this
).GetThumbnailAsyncOverloadDefaultOptions
)(::windows
::core
::Interface
::as_raw(this
), mode
, requestedsize
, &mut result__
).from_abi(result__
)
620 #[doc = "*Required features: `\"Foundation\"`, `\"Storage_FileProperties\"`, `\"Storage_Streams\"`*"]
621 #[cfg(all(feature = "Foundation", feature = "Storage_FileProperties", feature = "Storage_Streams"))]
622 pub fn GetThumbnailAsync(&self, mode
: super::FileProperties
::ThumbnailMode
, requestedsize
: u32, options
: super::FileProperties
::ThumbnailOptions
) -> ::windows
::core
::Result
<super::super::Foundation
::IAsyncOperation
<super::FileProperties
::StorageItemThumbnail
>> {
623 let this
= &::windows
::core
::ComInterface
::cast
::<super::IStorageItemProperties
>(self)?
;
625 let mut result__
= ::windows
::core
::zeroed
::<super::super::Foundation
::IAsyncOperation
<super::FileProperties
::StorageItemThumbnail
>>();
626 (::windows
::core
::Interface
::vtable(this
).GetThumbnailAsync
)(::windows
::core
::Interface
::as_raw(this
), mode
, requestedsize
, options
, &mut result__
).from_abi(result__
)
629 pub fn DisplayName(&self) -> ::windows
::core
::Result
<::windows
::core
::HSTRING
> {
630 let this
= &::windows
::core
::ComInterface
::cast
::<super::IStorageItemProperties
>(self)?
;
632 let mut result__
= ::windows
::core
::zeroed
::<::windows
::core
::HSTRING
>();
633 (::windows
::core
::Interface
::vtable(this
).DisplayName
)(::windows
::core
::Interface
::as_raw(this
), &mut result__
).from_abi(result__
)
636 pub fn DisplayType(&self) -> ::windows
::core
::Result
<::windows
::core
::HSTRING
> {
637 let this
= &::windows
::core
::ComInterface
::cast
::<super::IStorageItemProperties
>(self)?
;
639 let mut result__
= ::windows
::core
::zeroed
::<::windows
::core
::HSTRING
>();
640 (::windows
::core
::Interface
::vtable(this
).DisplayType
)(::windows
::core
::Interface
::as_raw(this
), &mut result__
).from_abi(result__
)
643 pub fn FolderRelativeId(&self) -> ::windows
::core
::Result
<::windows
::core
::HSTRING
> {
644 let this
= &::windows
::core
::ComInterface
::cast
::<super::IStorageItemProperties
>(self)?
;
646 let mut result__
= ::windows
::core
::zeroed
::<::windows
::core
::HSTRING
>();
647 (::windows
::core
::Interface
::vtable(this
).FolderRelativeId
)(::windows
::core
::Interface
::as_raw(this
), &mut result__
).from_abi(result__
)
650 #[doc = "*Required features: `\"Storage_FileProperties\"`*"]
651 #[cfg(feature = "Storage_FileProperties")]
652 pub fn Properties(&self) -> ::windows
::core
::Result
<super::FileProperties
::StorageItemContentProperties
> {
653 let this
= &::windows
::core
::ComInterface
::cast
::<super::IStorageItemProperties
>(self)?
;
655 let mut result__
= ::windows
::core
::zeroed
::<super::FileProperties
::StorageItemContentProperties
>();
656 (::windows
::core
::Interface
::vtable(this
).Properties
)(::windows
::core
::Interface
::as_raw(this
), &mut result__
).from_abi(result__
)
659 pub fn Provider(&self) -> ::windows
::core
::Result
<super::StorageProvider
> {
660 let this
= &::windows
::core
::ComInterface
::cast
::<super::IStorageItemPropertiesWithProvider
>(self)?
;
662 let mut result__
= ::windows
::core
::zeroed
::<super::StorageProvider
>();
663 (::windows
::core
::Interface
::vtable(this
).Provider
)(::windows
::core
::Interface
::as_raw(this
), &mut result__
).from_abi(result__
)
667 impl ::core
::cmp
::PartialEq
for FileInformation
{
668 fn eq(&self, other
: &Self) -> bool
{
672 impl ::core
::cmp
::Eq
for FileInformation {}
673 impl ::core
::fmt
::Debug
for FileInformation
{
674 fn fmt(&self, f
: &mut ::core
::fmt
::Formatter
<'_
>) -> ::core
::fmt
::Result
{
675 f
.debug_tuple("FileInformation").field(&self.0).finish()
678 impl ::windows
::core
::RuntimeType
for FileInformation
{
679 const SIGNATURE
: ::windows
::imp
::ConstBuffer
= ::windows
::imp
::ConstBuffer
::from_slice(b
"rc(Windows.Storage.BulkAccess.FileInformation;{87a5cb8b-8972-4f40-8de0-d86fb179d8fa})");
681 impl ::core
::clone
::Clone
for FileInformation
{
682 fn clone(&self) -> Self {
686 unsafe impl ::windows
::core
::Interface
for FileInformation
{
687 type Vtable
= IStorageItemInformation_Vtbl
;
689 unsafe impl ::windows
::core
::ComInterface
for FileInformation
{
690 const IID
: ::windows
::core
::GUID
= <IStorageItemInformation
as ::windows
::core
::ComInterface
>::IID
;
692 impl ::windows
::core
::RuntimeName
for FileInformation
{
693 const NAME
: &'
static str = "Windows.Storage.BulkAccess.FileInformation";
695 ::windows
::imp
::interface_hierarchy
!(FileInformation
, ::windows
::core
::IUnknown
, ::windows
::core
::IInspectable
);
696 #[cfg(feature = "Storage_Streams")]
697 impl ::windows
::core
::CanTryInto
<super::Streams
::IInputStreamReference
> for FileInformation {}
698 #[cfg(feature = "Storage_Streams")]
699 impl ::windows
::core
::CanTryInto
<super::Streams
::IRandomAccessStreamReference
> for FileInformation {}
700 impl ::windows
::core
::CanTryInto
<super::IStorageFile
> for FileInformation {}
701 impl ::windows
::core
::CanTryInto
<super::IStorageFile2
> for FileInformation {}
702 impl ::windows
::core
::CanTryInto
<super::IStorageFilePropertiesWithAvailability
> for FileInformation {}
703 impl ::windows
::core
::CanTryInto
<super::IStorageItem
> for FileInformation {}
704 impl ::windows
::core
::CanTryInto
<super::IStorageItem2
> for FileInformation {}
705 impl ::windows
::core
::CanTryInto
<IStorageItemInformation
> for FileInformation {}
706 impl ::windows
::core
::CanTryInto
<super::IStorageItemProperties
> for FileInformation {}
707 impl ::windows
::core
::CanTryInto
<super::IStorageItemPropertiesWithProvider
> for FileInformation {}
708 #[doc = "*Required features: `\"Storage_BulkAccess\"`*"]
710 pub struct FileInformationFactory(::windows
::core
::IUnknown
);
711 impl FileInformationFactory
{
712 #[doc = "*Required features: `\"Foundation_Collections\"`*"]
713 #[cfg(feature = "Foundation_Collections")]
714 pub fn GetItemsAsync(&self, startindex
: u32, maxitemstoretrieve
: u32) -> ::windows
::core
::Result
<super::super::Foundation
::IAsyncOperation
<super::super::Foundation
::Collections
::IVectorView
<IStorageItemInformation
>>> {
717 let mut result__
= ::windows
::core
::zeroed
::<super::super::Foundation
::IAsyncOperation
<super::super::Foundation
::Collections
::IVectorView
<IStorageItemInformation
>>>();
718 (::windows
::core
::Interface
::vtable(this
).GetItemsAsync
)(::windows
::core
::Interface
::as_raw(this
), startindex
, maxitemstoretrieve
, &mut result__
).from_abi(result__
)
721 #[doc = "*Required features: `\"Foundation_Collections\"`*"]
722 #[cfg(feature = "Foundation_Collections")]
723 pub fn GetItemsAsyncDefaultStartAndCount(&self) -> ::windows
::core
::Result
<super::super::Foundation
::IAsyncOperation
<super::super::Foundation
::Collections
::IVectorView
<IStorageItemInformation
>>> {
726 let mut result__
= ::windows
::core
::zeroed
::<super::super::Foundation
::IAsyncOperation
<super::super::Foundation
::Collections
::IVectorView
<IStorageItemInformation
>>>();
727 (::windows
::core
::Interface
::vtable(this
).GetItemsAsyncDefaultStartAndCount
)(::windows
::core
::Interface
::as_raw(this
), &mut result__
).from_abi(result__
)
730 #[doc = "*Required features: `\"Foundation_Collections\"`*"]
731 #[cfg(feature = "Foundation_Collections")]
732 pub fn GetFilesAsync(&self, startindex
: u32, maxitemstoretrieve
: u32) -> ::windows
::core
::Result
<super::super::Foundation
::IAsyncOperation
<super::super::Foundation
::Collections
::IVectorView
<FileInformation
>>> {
735 let mut result__
= ::windows
::core
::zeroed
::<super::super::Foundation
::IAsyncOperation
<super::super::Foundation
::Collections
::IVectorView
<FileInformation
>>>();
736 (::windows
::core
::Interface
::vtable(this
).GetFilesAsync
)(::windows
::core
::Interface
::as_raw(this
), startindex
, maxitemstoretrieve
, &mut result__
).from_abi(result__
)
739 #[doc = "*Required features: `\"Foundation_Collections\"`*"]
740 #[cfg(feature = "Foundation_Collections")]
741 pub fn GetFilesAsyncDefaultStartAndCount(&self) -> ::windows
::core
::Result
<super::super::Foundation
::IAsyncOperation
<super::super::Foundation
::Collections
::IVectorView
<FileInformation
>>> {
744 let mut result__
= ::windows
::core
::zeroed
::<super::super::Foundation
::IAsyncOperation
<super::super::Foundation
::Collections
::IVectorView
<FileInformation
>>>();
745 (::windows
::core
::Interface
::vtable(this
).GetFilesAsyncDefaultStartAndCount
)(::windows
::core
::Interface
::as_raw(this
), &mut result__
).from_abi(result__
)
748 #[doc = "*Required features: `\"Foundation_Collections\"`*"]
749 #[cfg(feature = "Foundation_Collections")]
750 pub fn GetFoldersAsync(&self, startindex
: u32, maxitemstoretrieve
: u32) -> ::windows
::core
::Result
<super::super::Foundation
::IAsyncOperation
<super::super::Foundation
::Collections
::IVectorView
<FolderInformation
>>> {
753 let mut result__
= ::windows
::core
::zeroed
::<super::super::Foundation
::IAsyncOperation
<super::super::Foundation
::Collections
::IVectorView
<FolderInformation
>>>();
754 (::windows
::core
::Interface
::vtable(this
).GetFoldersAsync
)(::windows
::core
::Interface
::as_raw(this
), startindex
, maxitemstoretrieve
, &mut result__
).from_abi(result__
)
757 #[doc = "*Required features: `\"Foundation_Collections\"`*"]
758 #[cfg(feature = "Foundation_Collections")]
759 pub fn GetFoldersAsyncDefaultStartAndCount(&self) -> ::windows
::core
::Result
<super::super::Foundation
::IAsyncOperation
<super::super::Foundation
::Collections
::IVectorView
<FolderInformation
>>> {
762 let mut result__
= ::windows
::core
::zeroed
::<super::super::Foundation
::IAsyncOperation
<super::super::Foundation
::Collections
::IVectorView
<FolderInformation
>>>();
763 (::windows
::core
::Interface
::vtable(this
).GetFoldersAsyncDefaultStartAndCount
)(::windows
::core
::Interface
::as_raw(this
), &mut result__
).from_abi(result__
)
766 pub fn GetVirtualizedItemsVector(&self) -> ::windows
::core
::Result
<::windows
::core
::IInspectable
> {
769 let mut result__
= ::windows
::core
::zeroed
::<::windows
::core
::IInspectable
>();
770 (::windows
::core
::Interface
::vtable(this
).GetVirtualizedItemsVector
)(::windows
::core
::Interface
::as_raw(this
), &mut result__
).from_abi(result__
)
773 pub fn GetVirtualizedFilesVector(&self) -> ::windows
::core
::Result
<::windows
::core
::IInspectable
> {
776 let mut result__
= ::windows
::core
::zeroed
::<::windows
::core
::IInspectable
>();
777 (::windows
::core
::Interface
::vtable(this
).GetVirtualizedFilesVector
)(::windows
::core
::Interface
::as_raw(this
), &mut result__
).from_abi(result__
)
780 pub fn GetVirtualizedFoldersVector(&self) -> ::windows
::core
::Result
<::windows
::core
::IInspectable
> {
783 let mut result__
= ::windows
::core
::zeroed
::<::windows
::core
::IInspectable
>();
784 (::windows
::core
::Interface
::vtable(this
).GetVirtualizedFoldersVector
)(::windows
::core
::Interface
::as_raw(this
), &mut result__
).from_abi(result__
)
787 #[doc = "*Required features: `\"Storage_FileProperties\"`, `\"Storage_Search\"`*"]
788 #[cfg(all(feature = "Storage_FileProperties", feature = "Storage_Search"))]
789 pub fn CreateWithMode
<P0
>(queryresult
: P0
, mode
: super::FileProperties
::ThumbnailMode
) -> ::windows
::core
::Result
<FileInformationFactory
>
791 P0
: ::windows
::core
::TryIntoParam
<super::Search
::IStorageQueryResultBase
>,
793 Self::IFileInformationFactoryFactory(|this
| unsafe {
794 let mut result__
= ::windows
::core
::zeroed
::<FileInformationFactory
>();
795 (::windows
::core
::Interface
::vtable(this
).CreateWithMode
)(::windows
::core
::Interface
::as_raw(this
), queryresult
.try_into_param()?
.abi(), mode
, &mut result__
).from_abi(result__
)
798 #[doc = "*Required features: `\"Storage_FileProperties\"`, `\"Storage_Search\"`*"]
799 #[cfg(all(feature = "Storage_FileProperties", feature = "Storage_Search"))]
800 pub fn CreateWithModeAndSize
<P0
>(queryresult
: P0
, mode
: super::FileProperties
::ThumbnailMode
, requestedthumbnailsize
: u32) -> ::windows
::core
::Result
<FileInformationFactory
>
802 P0
: ::windows
::core
::TryIntoParam
<super::Search
::IStorageQueryResultBase
>,
804 Self::IFileInformationFactoryFactory(|this
| unsafe {
805 let mut result__
= ::windows
::core
::zeroed
::<FileInformationFactory
>();
806 (::windows
::core
::Interface
::vtable(this
).CreateWithModeAndSize
)(::windows
::core
::Interface
::as_raw(this
), queryresult
.try_into_param()?
.abi(), mode
, requestedthumbnailsize
, &mut result__
).from_abi(result__
)
809 #[doc = "*Required features: `\"Storage_FileProperties\"`, `\"Storage_Search\"`*"]
810 #[cfg(all(feature = "Storage_FileProperties", feature = "Storage_Search"))]
811 pub fn CreateWithModeAndSizeAndOptions
<P0
>(queryresult
: P0
, mode
: super::FileProperties
::ThumbnailMode
, requestedthumbnailsize
: u32, thumbnailoptions
: super::FileProperties
::ThumbnailOptions
) -> ::windows
::core
::Result
<FileInformationFactory
>
813 P0
: ::windows
::core
::TryIntoParam
<super::Search
::IStorageQueryResultBase
>,
815 Self::IFileInformationFactoryFactory(|this
| unsafe {
816 let mut result__
= ::windows
::core
::zeroed
::<FileInformationFactory
>();
817 (::windows
::core
::Interface
::vtable(this
).CreateWithModeAndSizeAndOptions
)(::windows
::core
::Interface
::as_raw(this
), queryresult
.try_into_param()?
.abi(), mode
, requestedthumbnailsize
, thumbnailoptions
, &mut result__
).from_abi(result__
)
820 #[doc = "*Required features: `\"Storage_FileProperties\"`, `\"Storage_Search\"`*"]
821 #[cfg(all(feature = "Storage_FileProperties", feature = "Storage_Search"))]
822 pub fn CreateWithModeAndSizeAndOptionsAndFlags
<P0
>(queryresult
: P0
, mode
: super::FileProperties
::ThumbnailMode
, requestedthumbnailsize
: u32, thumbnailoptions
: super::FileProperties
::ThumbnailOptions
, delayload
: bool
) -> ::windows
::core
::Result
<FileInformationFactory
>
824 P0
: ::windows
::core
::TryIntoParam
<super::Search
::IStorageQueryResultBase
>,
826 Self::IFileInformationFactoryFactory(|this
| unsafe {
827 let mut result__
= ::windows
::core
::zeroed
::<FileInformationFactory
>();
828 (::windows
::core
::Interface
::vtable(this
).CreateWithModeAndSizeAndOptionsAndFlags
)(::windows
::core
::Interface
::as_raw(this
), queryresult
.try_into_param()?
.abi(), mode
, requestedthumbnailsize
, thumbnailoptions
, delayload
, &mut result__
).from_abi(result__
)
832 pub fn IFileInformationFactoryFactory
<R
, F
: FnOnce(&IFileInformationFactoryFactory
) -> ::windows
::core
::Result
<R
>>(callback
: F
) -> ::windows
::core
::Result
<R
> {
833 static SHARED
: ::windows
::imp
::FactoryCache
<FileInformationFactory
, IFileInformationFactoryFactory
> = ::windows
::imp
::FactoryCache
::new();
834 SHARED
.call(callback
)
837 impl ::core
::cmp
::PartialEq
for FileInformationFactory
{
838 fn eq(&self, other
: &Self) -> bool
{
842 impl ::core
::cmp
::Eq
for FileInformationFactory {}
843 impl ::core
::fmt
::Debug
for FileInformationFactory
{
844 fn fmt(&self, f
: &mut ::core
::fmt
::Formatter
<'_
>) -> ::core
::fmt
::Result
{
845 f
.debug_tuple("FileInformationFactory").field(&self.0).finish()
848 impl ::windows
::core
::RuntimeType
for FileInformationFactory
{
849 const SIGNATURE
: ::windows
::imp
::ConstBuffer
= ::windows
::imp
::ConstBuffer
::from_slice(b
"rc(Windows.Storage.BulkAccess.FileInformationFactory;{401d88be-960f-4d6d-a7d0-1a3861e76c83})");
851 impl ::core
::clone
::Clone
for FileInformationFactory
{
852 fn clone(&self) -> Self {
856 unsafe impl ::windows
::core
::Interface
for FileInformationFactory
{
857 type Vtable
= IFileInformationFactory_Vtbl
;
859 unsafe impl ::windows
::core
::ComInterface
for FileInformationFactory
{
860 const IID
: ::windows
::core
::GUID
= <IFileInformationFactory
as ::windows
::core
::ComInterface
>::IID
;
862 impl ::windows
::core
::RuntimeName
for FileInformationFactory
{
863 const NAME
: &'
static str = "Windows.Storage.BulkAccess.FileInformationFactory";
865 ::windows
::imp
::interface_hierarchy
!(FileInformationFactory
, ::windows
::core
::IUnknown
, ::windows
::core
::IInspectable
);
866 unsafe impl ::core
::marker
::Send
for FileInformationFactory {}
867 unsafe impl ::core
::marker
::Sync
for FileInformationFactory {}
868 #[doc = "*Required features: `\"Storage_BulkAccess\"`*"]
870 pub struct FolderInformation(::windows
::core
::IUnknown
);
871 impl FolderInformation
{
872 #[doc = "*Required features: `\"Foundation\"`*"]
873 #[cfg(feature = "Foundation")]
874 pub fn CreateFileAsyncOverloadDefaultOptions(&self, desiredname
: &::windows
::core
::HSTRING
) -> ::windows
::core
::Result
<super::super::Foundation
::IAsyncOperation
<super::StorageFile
>> {
875 let this
= &::windows
::core
::ComInterface
::cast
::<super::IStorageFolder
>(self)?
;
877 let mut result__
= ::windows
::core
::zeroed
::<super::super::Foundation
::IAsyncOperation
<super::StorageFile
>>();
878 (::windows
::core
::Interface
::vtable(this
).CreateFileAsyncOverloadDefaultOptions
)(::windows
::core
::Interface
::as_raw(this
), ::core
::mem
::transmute_copy(desiredname
), &mut result__
).from_abi(result__
)
881 #[doc = "*Required features: `\"Foundation\"`*"]
882 #[cfg(feature = "Foundation")]
883 pub fn CreateFileAsync(&self, desiredname
: &::windows
::core
::HSTRING
, options
: super::CreationCollisionOption
) -> ::windows
::core
::Result
<super::super::Foundation
::IAsyncOperation
<super::StorageFile
>> {
884 let this
= &::windows
::core
::ComInterface
::cast
::<super::IStorageFolder
>(self)?
;
886 let mut result__
= ::windows
::core
::zeroed
::<super::super::Foundation
::IAsyncOperation
<super::StorageFile
>>();
887 (::windows
::core
::Interface
::vtable(this
).CreateFileAsync
)(::windows
::core
::Interface
::as_raw(this
), ::core
::mem
::transmute_copy(desiredname
), options
, &mut result__
).from_abi(result__
)
890 #[doc = "*Required features: `\"Foundation\"`*"]
891 #[cfg(feature = "Foundation")]
892 pub fn CreateFolderAsyncOverloadDefaultOptions(&self, desiredname
: &::windows
::core
::HSTRING
) -> ::windows
::core
::Result
<super::super::Foundation
::IAsyncOperation
<super::StorageFolder
>> {
893 let this
= &::windows
::core
::ComInterface
::cast
::<super::IStorageFolder
>(self)?
;
895 let mut result__
= ::windows
::core
::zeroed
::<super::super::Foundation
::IAsyncOperation
<super::StorageFolder
>>();
896 (::windows
::core
::Interface
::vtable(this
).CreateFolderAsyncOverloadDefaultOptions
)(::windows
::core
::Interface
::as_raw(this
), ::core
::mem
::transmute_copy(desiredname
), &mut result__
).from_abi(result__
)
899 #[doc = "*Required features: `\"Foundation\"`*"]
900 #[cfg(feature = "Foundation")]
901 pub fn CreateFolderAsync(&self, desiredname
: &::windows
::core
::HSTRING
, options
: super::CreationCollisionOption
) -> ::windows
::core
::Result
<super::super::Foundation
::IAsyncOperation
<super::StorageFolder
>> {
902 let this
= &::windows
::core
::ComInterface
::cast
::<super::IStorageFolder
>(self)?
;
904 let mut result__
= ::windows
::core
::zeroed
::<super::super::Foundation
::IAsyncOperation
<super::StorageFolder
>>();
905 (::windows
::core
::Interface
::vtable(this
).CreateFolderAsync
)(::windows
::core
::Interface
::as_raw(this
), ::core
::mem
::transmute_copy(desiredname
), options
, &mut result__
).from_abi(result__
)
908 #[doc = "*Required features: `\"Foundation\"`*"]
909 #[cfg(feature = "Foundation")]
910 pub fn GetFileAsync(&self, name
: &::windows
::core
::HSTRING
) -> ::windows
::core
::Result
<super::super::Foundation
::IAsyncOperation
<super::StorageFile
>> {
911 let this
= &::windows
::core
::ComInterface
::cast
::<super::IStorageFolder
>(self)?
;
913 let mut result__
= ::windows
::core
::zeroed
::<super::super::Foundation
::IAsyncOperation
<super::StorageFile
>>();
914 (::windows
::core
::Interface
::vtable(this
).GetFileAsync
)(::windows
::core
::Interface
::as_raw(this
), ::core
::mem
::transmute_copy(name
), &mut result__
).from_abi(result__
)
917 #[doc = "*Required features: `\"Foundation\"`*"]
918 #[cfg(feature = "Foundation")]
919 pub fn GetFolderAsync(&self, name
: &::windows
::core
::HSTRING
) -> ::windows
::core
::Result
<super::super::Foundation
::IAsyncOperation
<super::StorageFolder
>> {
920 let this
= &::windows
::core
::ComInterface
::cast
::<super::IStorageFolder
>(self)?
;
922 let mut result__
= ::windows
::core
::zeroed
::<super::super::Foundation
::IAsyncOperation
<super::StorageFolder
>>();
923 (::windows
::core
::Interface
::vtable(this
).GetFolderAsync
)(::windows
::core
::Interface
::as_raw(this
), ::core
::mem
::transmute_copy(name
), &mut result__
).from_abi(result__
)
926 #[doc = "*Required features: `\"Foundation\"`*"]
927 #[cfg(feature = "Foundation")]
928 pub fn GetItemAsync(&self, name
: &::windows
::core
::HSTRING
) -> ::windows
::core
::Result
<super::super::Foundation
::IAsyncOperation
<super::IStorageItem
>> {
929 let this
= &::windows
::core
::ComInterface
::cast
::<super::IStorageFolder
>(self)?
;
931 let mut result__
= ::windows
::core
::zeroed
::<super::super::Foundation
::IAsyncOperation
<super::IStorageItem
>>();
932 (::windows
::core
::Interface
::vtable(this
).GetItemAsync
)(::windows
::core
::Interface
::as_raw(this
), ::core
::mem
::transmute_copy(name
), &mut result__
).from_abi(result__
)
935 #[doc = "*Required features: `\"Foundation_Collections\"`*"]
936 #[cfg(feature = "Foundation_Collections")]
937 pub fn GetFilesAsyncOverloadDefaultOptionsStartAndCount(&self) -> ::windows
::core
::Result
<super::super::Foundation
::IAsyncOperation
<super::super::Foundation
::Collections
::IVectorView
<super::StorageFile
>>> {
938 let this
= &::windows
::core
::ComInterface
::cast
::<super::IStorageFolder
>(self)?
;
940 let mut result__
= ::windows
::core
::zeroed
::<super::super::Foundation
::IAsyncOperation
<super::super::Foundation
::Collections
::IVectorView
<super::StorageFile
>>>();
941 (::windows
::core
::Interface
::vtable(this
).GetFilesAsyncOverloadDefaultOptionsStartAndCount
)(::windows
::core
::Interface
::as_raw(this
), &mut result__
).from_abi(result__
)
944 #[doc = "*Required features: `\"Foundation_Collections\"`*"]
945 #[cfg(feature = "Foundation_Collections")]
946 pub fn GetFoldersAsyncOverloadDefaultOptionsStartAndCount(&self) -> ::windows
::core
::Result
<super::super::Foundation
::IAsyncOperation
<super::super::Foundation
::Collections
::IVectorView
<super::StorageFolder
>>> {
947 let this
= &::windows
::core
::ComInterface
::cast
::<super::IStorageFolder
>(self)?
;
949 let mut result__
= ::windows
::core
::zeroed
::<super::super::Foundation
::IAsyncOperation
<super::super::Foundation
::Collections
::IVectorView
<super::StorageFolder
>>>();
950 (::windows
::core
::Interface
::vtable(this
).GetFoldersAsyncOverloadDefaultOptionsStartAndCount
)(::windows
::core
::Interface
::as_raw(this
), &mut result__
).from_abi(result__
)
953 #[doc = "*Required features: `\"Foundation_Collections\"`*"]
954 #[cfg(feature = "Foundation_Collections")]
955 pub fn GetItemsAsyncOverloadDefaultStartAndCount(&self) -> ::windows
::core
::Result
<super::super::Foundation
::IAsyncOperation
<super::super::Foundation
::Collections
::IVectorView
<super::IStorageItem
>>> {
956 let this
= &::windows
::core
::ComInterface
::cast
::<super::IStorageFolder
>(self)?
;
958 let mut result__
= ::windows
::core
::zeroed
::<super::super::Foundation
::IAsyncOperation
<super::super::Foundation
::Collections
::IVectorView
<super::IStorageItem
>>>();
959 (::windows
::core
::Interface
::vtable(this
).GetItemsAsyncOverloadDefaultStartAndCount
)(::windows
::core
::Interface
::as_raw(this
), &mut result__
).from_abi(result__
)
962 #[doc = "*Required features: `\"Foundation\"`*"]
963 #[cfg(feature = "Foundation")]
964 pub fn TryGetItemAsync(&self, name
: &::windows
::core
::HSTRING
) -> ::windows
::core
::Result
<super::super::Foundation
::IAsyncOperation
<super::IStorageItem
>> {
965 let this
= &::windows
::core
::ComInterface
::cast
::<super::IStorageFolder2
>(self)?
;
967 let mut result__
= ::windows
::core
::zeroed
::<super::super::Foundation
::IAsyncOperation
<super::IStorageItem
>>();
968 (::windows
::core
::Interface
::vtable(this
).TryGetItemAsync
)(::windows
::core
::Interface
::as_raw(this
), ::core
::mem
::transmute_copy(name
), &mut result__
).from_abi(result__
)
971 #[doc = "*Required features: `\"Foundation\"`, `\"Storage_Search\"`*"]
972 #[cfg(all(feature = "Foundation", feature = "Storage_Search"))]
973 pub fn GetIndexedStateAsync(&self) -> ::windows
::core
::Result
<super::super::Foundation
::IAsyncOperation
<super::Search
::IndexedState
>> {
974 let this
= &::windows
::core
::ComInterface
::cast
::<super::Search
::IStorageFolderQueryOperations
>(self)?
;
976 let mut result__
= ::windows
::core
::zeroed
::<super::super::Foundation
::IAsyncOperation
<super::Search
::IndexedState
>>();
977 (::windows
::core
::Interface
::vtable(this
).GetIndexedStateAsync
)(::windows
::core
::Interface
::as_raw(this
), &mut result__
).from_abi(result__
)
980 #[doc = "*Required features: `\"Storage_Search\"`*"]
981 #[cfg(feature = "Storage_Search")]
982 pub fn CreateFileQueryOverloadDefault(&self) -> ::windows
::core
::Result
<super::Search
::StorageFileQueryResult
> {
983 let this
= &::windows
::core
::ComInterface
::cast
::<super::Search
::IStorageFolderQueryOperations
>(self)?
;
985 let mut result__
= ::windows
::core
::zeroed
::<super::Search
::StorageFileQueryResult
>();
986 (::windows
::core
::Interface
::vtable(this
).CreateFileQueryOverloadDefault
)(::windows
::core
::Interface
::as_raw(this
), &mut result__
).from_abi(result__
)
989 #[doc = "*Required features: `\"Storage_Search\"`*"]
990 #[cfg(feature = "Storage_Search")]
991 pub fn CreateFileQuery(&self, query
: super::Search
::CommonFileQuery
) -> ::windows
::core
::Result
<super::Search
::StorageFileQueryResult
> {
992 let this
= &::windows
::core
::ComInterface
::cast
::<super::Search
::IStorageFolderQueryOperations
>(self)?
;
994 let mut result__
= ::windows
::core
::zeroed
::<super::Search
::StorageFileQueryResult
>();
995 (::windows
::core
::Interface
::vtable(this
).CreateFileQuery
)(::windows
::core
::Interface
::as_raw(this
), query
, &mut result__
).from_abi(result__
)
998 #[doc = "*Required features: `\"Storage_Search\"`*"]
999 #[cfg(feature = "Storage_Search")]
1000 pub fn CreateFileQueryWithOptions(&self, queryoptions
: &super::Search
::QueryOptions
) -> ::windows
::core
::Result
<super::Search
::StorageFileQueryResult
> {
1001 let this
= &::windows
::core
::ComInterface
::cast
::<super::Search
::IStorageFolderQueryOperations
>(self)?
;
1003 let mut result__
= ::windows
::core
::zeroed
::<super::Search
::StorageFileQueryResult
>();
1004 (::windows
::core
::Interface
::vtable(this
).CreateFileQueryWithOptions
)(::windows
::core
::Interface
::as_raw(this
), ::core
::mem
::transmute_copy(queryoptions
), &mut result__
).from_abi(result__
)
1007 #[doc = "*Required features: `\"Storage_Search\"`*"]
1008 #[cfg(feature = "Storage_Search")]
1009 pub fn CreateFolderQueryOverloadDefault(&self) -> ::windows
::core
::Result
<super::Search
::StorageFolderQueryResult
> {
1010 let this
= &::windows
::core
::ComInterface
::cast
::<super::Search
::IStorageFolderQueryOperations
>(self)?
;
1012 let mut result__
= ::windows
::core
::zeroed
::<super::Search
::StorageFolderQueryResult
>();
1013 (::windows
::core
::Interface
::vtable(this
).CreateFolderQueryOverloadDefault
)(::windows
::core
::Interface
::as_raw(this
), &mut result__
).from_abi(result__
)
1016 #[doc = "*Required features: `\"Storage_Search\"`*"]
1017 #[cfg(feature = "Storage_Search")]
1018 pub fn CreateFolderQuery(&self, query
: super::Search
::CommonFolderQuery
) -> ::windows
::core
::Result
<super::Search
::StorageFolderQueryResult
> {
1019 let this
= &::windows
::core
::ComInterface
::cast
::<super::Search
::IStorageFolderQueryOperations
>(self)?
;
1021 let mut result__
= ::windows
::core
::zeroed
::<super::Search
::StorageFolderQueryResult
>();
1022 (::windows
::core
::Interface
::vtable(this
).CreateFolderQuery
)(::windows
::core
::Interface
::as_raw(this
), query
, &mut result__
).from_abi(result__
)
1025 #[doc = "*Required features: `\"Storage_Search\"`*"]
1026 #[cfg(feature = "Storage_Search")]
1027 pub fn CreateFolderQueryWithOptions(&self, queryoptions
: &super::Search
::QueryOptions
) -> ::windows
::core
::Result
<super::Search
::StorageFolderQueryResult
> {
1028 let this
= &::windows
::core
::ComInterface
::cast
::<super::Search
::IStorageFolderQueryOperations
>(self)?
;
1030 let mut result__
= ::windows
::core
::zeroed
::<super::Search
::StorageFolderQueryResult
>();
1031 (::windows
::core
::Interface
::vtable(this
).CreateFolderQueryWithOptions
)(::windows
::core
::Interface
::as_raw(this
), ::core
::mem
::transmute_copy(queryoptions
), &mut result__
).from_abi(result__
)
1034 #[doc = "*Required features: `\"Storage_Search\"`*"]
1035 #[cfg(feature = "Storage_Search")]
1036 pub fn CreateItemQuery(&self) -> ::windows
::core
::Result
<super::Search
::StorageItemQueryResult
> {
1037 let this
= &::windows
::core
::ComInterface
::cast
::<super::Search
::IStorageFolderQueryOperations
>(self)?
;
1039 let mut result__
= ::windows
::core
::zeroed
::<super::Search
::StorageItemQueryResult
>();
1040 (::windows
::core
::Interface
::vtable(this
).CreateItemQuery
)(::windows
::core
::Interface
::as_raw(this
), &mut result__
).from_abi(result__
)
1043 #[doc = "*Required features: `\"Storage_Search\"`*"]
1044 #[cfg(feature = "Storage_Search")]
1045 pub fn CreateItemQueryWithOptions(&self, queryoptions
: &super::Search
::QueryOptions
) -> ::windows
::core
::Result
<super::Search
::StorageItemQueryResult
> {
1046 let this
= &::windows
::core
::ComInterface
::cast
::<super::Search
::IStorageFolderQueryOperations
>(self)?
;
1048 let mut result__
= ::windows
::core
::zeroed
::<super::Search
::StorageItemQueryResult
>();
1049 (::windows
::core
::Interface
::vtable(this
).CreateItemQueryWithOptions
)(::windows
::core
::Interface
::as_raw(this
), ::core
::mem
::transmute_copy(queryoptions
), &mut result__
).from_abi(result__
)
1052 #[doc = "*Required features: `\"Foundation_Collections\"`, `\"Storage_Search\"`*"]
1053 #[cfg(all(feature = "Foundation_Collections", feature = "Storage_Search"))]
1054 pub fn GetFilesAsync(&self, query
: super::Search
::CommonFileQuery
, startindex
: u32, maxitemstoretrieve
: u32) -> ::windows
::core
::Result
<super::super::Foundation
::IAsyncOperation
<super::super::Foundation
::Collections
::IVectorView
<super::StorageFile
>>> {
1055 let this
= &::windows
::core
::ComInterface
::cast
::<super::Search
::IStorageFolderQueryOperations
>(self)?
;
1057 let mut result__
= ::windows
::core
::zeroed
::<super::super::Foundation
::IAsyncOperation
<super::super::Foundation
::Collections
::IVectorView
<super::StorageFile
>>>();
1058 (::windows
::core
::Interface
::vtable(this
).GetFilesAsync
)(::windows
::core
::Interface
::as_raw(this
), query
, startindex
, maxitemstoretrieve
, &mut result__
).from_abi(result__
)
1061 #[doc = "*Required features: `\"Foundation_Collections\"`, `\"Storage_Search\"`*"]
1062 #[cfg(all(feature = "Foundation_Collections", feature = "Storage_Search"))]
1063 pub fn GetFilesAsyncOverloadDefaultStartAndCount(&self, query
: super::Search
::CommonFileQuery
) -> ::windows
::core
::Result
<super::super::Foundation
::IAsyncOperation
<super::super::Foundation
::Collections
::IVectorView
<super::StorageFile
>>> {
1064 let this
= &::windows
::core
::ComInterface
::cast
::<super::Search
::IStorageFolderQueryOperations
>(self)?
;
1066 let mut result__
= ::windows
::core
::zeroed
::<super::super::Foundation
::IAsyncOperation
<super::super::Foundation
::Collections
::IVectorView
<super::StorageFile
>>>();
1067 (::windows
::core
::Interface
::vtable(this
).GetFilesAsyncOverloadDefaultStartAndCount
)(::windows
::core
::Interface
::as_raw(this
), query
, &mut result__
).from_abi(result__
)
1070 #[doc = "*Required features: `\"Foundation_Collections\"`, `\"Storage_Search\"`*"]
1071 #[cfg(all(feature = "Foundation_Collections", feature = "Storage_Search"))]
1072 pub fn GetFoldersAsync(&self, query
: super::Search
::CommonFolderQuery
, startindex
: u32, maxitemstoretrieve
: u32) -> ::windows
::core
::Result
<super::super::Foundation
::IAsyncOperation
<super::super::Foundation
::Collections
::IVectorView
<super::StorageFolder
>>> {
1073 let this
= &::windows
::core
::ComInterface
::cast
::<super::Search
::IStorageFolderQueryOperations
>(self)?
;
1075 let mut result__
= ::windows
::core
::zeroed
::<super::super::Foundation
::IAsyncOperation
<super::super::Foundation
::Collections
::IVectorView
<super::StorageFolder
>>>();
1076 (::windows
::core
::Interface
::vtable(this
).GetFoldersAsync
)(::windows
::core
::Interface
::as_raw(this
), query
, startindex
, maxitemstoretrieve
, &mut result__
).from_abi(result__
)
1079 #[doc = "*Required features: `\"Foundation_Collections\"`, `\"Storage_Search\"`*"]
1080 #[cfg(all(feature = "Foundation_Collections", feature = "Storage_Search"))]
1081 pub fn GetFoldersAsyncOverloadDefaultStartAndCount(&self, query
: super::Search
::CommonFolderQuery
) -> ::windows
::core
::Result
<super::super::Foundation
::IAsyncOperation
<super::super::Foundation
::Collections
::IVectorView
<super::StorageFolder
>>> {
1082 let this
= &::windows
::core
::ComInterface
::cast
::<super::Search
::IStorageFolderQueryOperations
>(self)?
;
1084 let mut result__
= ::windows
::core
::zeroed
::<super::super::Foundation
::IAsyncOperation
<super::super::Foundation
::Collections
::IVectorView
<super::StorageFolder
>>>();
1085 (::windows
::core
::Interface
::vtable(this
).GetFoldersAsyncOverloadDefaultStartAndCount
)(::windows
::core
::Interface
::as_raw(this
), query
, &mut result__
).from_abi(result__
)
1088 #[doc = "*Required features: `\"Foundation_Collections\"`, `\"Storage_Search\"`*"]
1089 #[cfg(all(feature = "Foundation_Collections", feature = "Storage_Search"))]
1090 pub fn GetItemsAsync(&self, startindex
: u32, maxitemstoretrieve
: u32) -> ::windows
::core
::Result
<super::super::Foundation
::IAsyncOperation
<super::super::Foundation
::Collections
::IVectorView
<super::IStorageItem
>>> {
1091 let this
= &::windows
::core
::ComInterface
::cast
::<super::Search
::IStorageFolderQueryOperations
>(self)?
;
1093 let mut result__
= ::windows
::core
::zeroed
::<super::super::Foundation
::IAsyncOperation
<super::super::Foundation
::Collections
::IVectorView
<super::IStorageItem
>>>();
1094 (::windows
::core
::Interface
::vtable(this
).GetItemsAsync
)(::windows
::core
::Interface
::as_raw(this
), startindex
, maxitemstoretrieve
, &mut result__
).from_abi(result__
)
1097 #[doc = "*Required features: `\"Storage_Search\"`*"]
1098 #[cfg(feature = "Storage_Search")]
1099 pub fn AreQueryOptionsSupported(&self, queryoptions
: &super::Search
::QueryOptions
) -> ::windows
::core
::Result
<bool
> {
1100 let this
= &::windows
::core
::ComInterface
::cast
::<super::Search
::IStorageFolderQueryOperations
>(self)?
;
1102 let mut result__
= ::windows
::core
::zeroed
::<bool
>();
1103 (::windows
::core
::Interface
::vtable(this
).AreQueryOptionsSupported
)(::windows
::core
::Interface
::as_raw(this
), ::core
::mem
::transmute_copy(queryoptions
), &mut result__
).from_abi(result__
)
1106 #[doc = "*Required features: `\"Storage_Search\"`*"]
1107 #[cfg(feature = "Storage_Search")]
1108 pub fn IsCommonFolderQuerySupported(&self, query
: super::Search
::CommonFolderQuery
) -> ::windows
::core
::Result
<bool
> {
1109 let this
= &::windows
::core
::ComInterface
::cast
::<super::Search
::IStorageFolderQueryOperations
>(self)?
;
1111 let mut result__
= ::windows
::core
::zeroed
::<bool
>();
1112 (::windows
::core
::Interface
::vtable(this
).IsCommonFolderQuerySupported
)(::windows
::core
::Interface
::as_raw(this
), query
, &mut result__
).from_abi(result__
)
1115 #[doc = "*Required features: `\"Storage_Search\"`*"]
1116 #[cfg(feature = "Storage_Search")]
1117 pub fn IsCommonFileQuerySupported(&self, query
: super::Search
::CommonFileQuery
) -> ::windows
::core
::Result
<bool
> {
1118 let this
= &::windows
::core
::ComInterface
::cast
::<super::Search
::IStorageFolderQueryOperations
>(self)?
;
1120 let mut result__
= ::windows
::core
::zeroed
::<bool
>();
1121 (::windows
::core
::Interface
::vtable(this
).IsCommonFileQuerySupported
)(::windows
::core
::Interface
::as_raw(this
), query
, &mut result__
).from_abi(result__
)
1124 #[doc = "*Required features: `\"Foundation\"`*"]
1125 #[cfg(feature = "Foundation")]
1126 pub fn RenameAsyncOverloadDefaultOptions(&self, desiredname
: &::windows
::core
::HSTRING
) -> ::windows
::core
::Result
<super::super::Foundation
::IAsyncAction
> {
1127 let this
= &::windows
::core
::ComInterface
::cast
::<super::IStorageItem
>(self)?
;
1129 let mut result__
= ::windows
::core
::zeroed
::<super::super::Foundation
::IAsyncAction
>();
1130 (::windows
::core
::Interface
::vtable(this
).RenameAsyncOverloadDefaultOptions
)(::windows
::core
::Interface
::as_raw(this
), ::core
::mem
::transmute_copy(desiredname
), &mut result__
).from_abi(result__
)
1133 #[doc = "*Required features: `\"Foundation\"`*"]
1134 #[cfg(feature = "Foundation")]
1135 pub fn RenameAsync(&self, desiredname
: &::windows
::core
::HSTRING
, option
: super::NameCollisionOption
) -> ::windows
::core
::Result
<super::super::Foundation
::IAsyncAction
> {
1136 let this
= &::windows
::core
::ComInterface
::cast
::<super::IStorageItem
>(self)?
;
1138 let mut result__
= ::windows
::core
::zeroed
::<super::super::Foundation
::IAsyncAction
>();
1139 (::windows
::core
::Interface
::vtable(this
).RenameAsync
)(::windows
::core
::Interface
::as_raw(this
), ::core
::mem
::transmute_copy(desiredname
), option
, &mut result__
).from_abi(result__
)
1142 #[doc = "*Required features: `\"Foundation\"`*"]
1143 #[cfg(feature = "Foundation")]
1144 pub fn DeleteAsyncOverloadDefaultOptions(&self) -> ::windows
::core
::Result
<super::super::Foundation
::IAsyncAction
> {
1145 let this
= &::windows
::core
::ComInterface
::cast
::<super::IStorageItem
>(self)?
;
1147 let mut result__
= ::windows
::core
::zeroed
::<super::super::Foundation
::IAsyncAction
>();
1148 (::windows
::core
::Interface
::vtable(this
).DeleteAsyncOverloadDefaultOptions
)(::windows
::core
::Interface
::as_raw(this
), &mut result__
).from_abi(result__
)
1151 #[doc = "*Required features: `\"Foundation\"`*"]
1152 #[cfg(feature = "Foundation")]
1153 pub fn DeleteAsync(&self, option
: super::StorageDeleteOption
) -> ::windows
::core
::Result
<super::super::Foundation
::IAsyncAction
> {
1154 let this
= &::windows
::core
::ComInterface
::cast
::<super::IStorageItem
>(self)?
;
1156 let mut result__
= ::windows
::core
::zeroed
::<super::super::Foundation
::IAsyncAction
>();
1157 (::windows
::core
::Interface
::vtable(this
).DeleteAsync
)(::windows
::core
::Interface
::as_raw(this
), option
, &mut result__
).from_abi(result__
)
1160 #[doc = "*Required features: `\"Foundation\"`, `\"Storage_FileProperties\"`*"]
1161 #[cfg(all(feature = "Foundation", feature = "Storage_FileProperties"))]
1162 pub fn GetBasicPropertiesAsync(&self) -> ::windows
::core
::Result
<super::super::Foundation
::IAsyncOperation
<super::FileProperties
::BasicProperties
>> {
1163 let this
= &::windows
::core
::ComInterface
::cast
::<super::IStorageItem
>(self)?
;
1165 let mut result__
= ::windows
::core
::zeroed
::<super::super::Foundation
::IAsyncOperation
<super::FileProperties
::BasicProperties
>>();
1166 (::windows
::core
::Interface
::vtable(this
).GetBasicPropertiesAsync
)(::windows
::core
::Interface
::as_raw(this
), &mut result__
).from_abi(result__
)
1169 pub fn Name(&self) -> ::windows
::core
::Result
<::windows
::core
::HSTRING
> {
1170 let this
= &::windows
::core
::ComInterface
::cast
::<super::IStorageItem
>(self)?
;
1172 let mut result__
= ::windows
::core
::zeroed
::<::windows
::core
::HSTRING
>();
1173 (::windows
::core
::Interface
::vtable(this
).Name
)(::windows
::core
::Interface
::as_raw(this
), &mut result__
).from_abi(result__
)
1176 pub fn Path(&self) -> ::windows
::core
::Result
<::windows
::core
::HSTRING
> {
1177 let this
= &::windows
::core
::ComInterface
::cast
::<super::IStorageItem
>(self)?
;
1179 let mut result__
= ::windows
::core
::zeroed
::<::windows
::core
::HSTRING
>();
1180 (::windows
::core
::Interface
::vtable(this
).Path
)(::windows
::core
::Interface
::as_raw(this
), &mut result__
).from_abi(result__
)
1183 pub fn Attributes(&self) -> ::windows
::core
::Result
<super::FileAttributes
> {
1184 let this
= &::windows
::core
::ComInterface
::cast
::<super::IStorageItem
>(self)?
;
1186 let mut result__
= ::windows
::core
::zeroed
::<super::FileAttributes
>();
1187 (::windows
::core
::Interface
::vtable(this
).Attributes
)(::windows
::core
::Interface
::as_raw(this
), &mut result__
).from_abi(result__
)
1190 #[doc = "*Required features: `\"Foundation\"`*"]
1191 #[cfg(feature = "Foundation")]
1192 pub fn DateCreated(&self) -> ::windows
::core
::Result
<super::super::Foundation
::DateTime
> {
1193 let this
= &::windows
::core
::ComInterface
::cast
::<super::IStorageItem
>(self)?
;
1195 let mut result__
= ::windows
::core
::zeroed
::<super::super::Foundation
::DateTime
>();
1196 (::windows
::core
::Interface
::vtable(this
).DateCreated
)(::windows
::core
::Interface
::as_raw(this
), &mut result__
).from_abi(result__
)
1199 pub fn IsOfType(&self, r
#type: super::StorageItemTypes) -> ::windows::core::Result<bool> {
1200 let this
= &::windows
::core
::ComInterface
::cast
::<super::IStorageItem
>(self)?
;
1202 let mut result__
= ::windows
::core
::zeroed
::<bool
>();
1203 (::windows
::core
::Interface
::vtable(this
).IsOfType
)(::windows
::core
::Interface
::as_raw(this
), r
#type, &mut result__).from_abi(result__)
1206 #[doc = "*Required features: `\"Foundation\"`*"]
1207 #[cfg(feature = "Foundation")]
1208 pub fn GetParentAsync(&self) -> ::windows
::core
::Result
<super::super::Foundation
::IAsyncOperation
<super::StorageFolder
>> {
1209 let this
= &::windows
::core
::ComInterface
::cast
::<super::IStorageItem2
>(self)?
;
1211 let mut result__
= ::windows
::core
::zeroed
::<super::super::Foundation
::IAsyncOperation
<super::StorageFolder
>>();
1212 (::windows
::core
::Interface
::vtable(this
).GetParentAsync
)(::windows
::core
::Interface
::as_raw(this
), &mut result__
).from_abi(result__
)
1215 pub fn IsEqual
<P0
>(&self, item
: P0
) -> ::windows
::core
::Result
<bool
>
1217 P0
: ::windows
::core
::TryIntoParam
<super::IStorageItem
>,
1219 let this
= &::windows
::core
::ComInterface
::cast
::<super::IStorageItem2
>(self)?
;
1221 let mut result__
= ::windows
::core
::zeroed
::<bool
>();
1222 (::windows
::core
::Interface
::vtable(this
).IsEqual
)(::windows
::core
::Interface
::as_raw(this
), item
.try_into_param()?
.abi(), &mut result__
).from_abi(result__
)
1225 #[doc = "*Required features: `\"Storage_FileProperties\"`*"]
1226 #[cfg(feature = "Storage_FileProperties")]
1227 pub fn MusicProperties(&self) -> ::windows
::core
::Result
<super::FileProperties
::MusicProperties
> {
1230 let mut result__
= ::windows
::core
::zeroed
::<super::FileProperties
::MusicProperties
>();
1231 (::windows
::core
::Interface
::vtable(this
).MusicProperties
)(::windows
::core
::Interface
::as_raw(this
), &mut result__
).from_abi(result__
)
1234 #[doc = "*Required features: `\"Storage_FileProperties\"`*"]
1235 #[cfg(feature = "Storage_FileProperties")]
1236 pub fn VideoProperties(&self) -> ::windows
::core
::Result
<super::FileProperties
::VideoProperties
> {
1239 let mut result__
= ::windows
::core
::zeroed
::<super::FileProperties
::VideoProperties
>();
1240 (::windows
::core
::Interface
::vtable(this
).VideoProperties
)(::windows
::core
::Interface
::as_raw(this
), &mut result__
).from_abi(result__
)
1243 #[doc = "*Required features: `\"Storage_FileProperties\"`*"]
1244 #[cfg(feature = "Storage_FileProperties")]
1245 pub fn ImageProperties(&self) -> ::windows
::core
::Result
<super::FileProperties
::ImageProperties
> {
1248 let mut result__
= ::windows
::core
::zeroed
::<super::FileProperties
::ImageProperties
>();
1249 (::windows
::core
::Interface
::vtable(this
).ImageProperties
)(::windows
::core
::Interface
::as_raw(this
), &mut result__
).from_abi(result__
)
1252 #[doc = "*Required features: `\"Storage_FileProperties\"`*"]
1253 #[cfg(feature = "Storage_FileProperties")]
1254 pub fn DocumentProperties(&self) -> ::windows
::core
::Result
<super::FileProperties
::DocumentProperties
> {
1257 let mut result__
= ::windows
::core
::zeroed
::<super::FileProperties
::DocumentProperties
>();
1258 (::windows
::core
::Interface
::vtable(this
).DocumentProperties
)(::windows
::core
::Interface
::as_raw(this
), &mut result__
).from_abi(result__
)
1261 #[doc = "*Required features: `\"Storage_FileProperties\"`*"]
1262 #[cfg(feature = "Storage_FileProperties")]
1263 pub fn BasicProperties(&self) -> ::windows
::core
::Result
<super::FileProperties
::BasicProperties
> {
1266 let mut result__
= ::windows
::core
::zeroed
::<super::FileProperties
::BasicProperties
>();
1267 (::windows
::core
::Interface
::vtable(this
).BasicProperties
)(::windows
::core
::Interface
::as_raw(this
), &mut result__
).from_abi(result__
)
1270 #[doc = "*Required features: `\"Storage_FileProperties\"`, `\"Storage_Streams\"`*"]
1271 #[cfg(all(feature = "Storage_FileProperties", feature = "Storage_Streams"))]
1272 pub fn Thumbnail(&self) -> ::windows
::core
::Result
<super::FileProperties
::StorageItemThumbnail
> {
1275 let mut result__
= ::windows
::core
::zeroed
::<super::FileProperties
::StorageItemThumbnail
>();
1276 (::windows
::core
::Interface
::vtable(this
).Thumbnail
)(::windows
::core
::Interface
::as_raw(this
), &mut result__
).from_abi(result__
)
1279 #[doc = "*Required features: `\"Foundation\"`*"]
1280 #[cfg(feature = "Foundation")]
1281 pub fn ThumbnailUpdated(&self, changedhandler
: &super::super::Foundation
::TypedEventHandler
<IStorageItemInformation
, ::windows
::core
::IInspectable
>) -> ::windows
::core
::Result
<super::super::Foundation
::EventRegistrationToken
> {
1284 let mut result__
= ::windows
::core
::zeroed
::<super::super::Foundation
::EventRegistrationToken
>();
1285 (::windows
::core
::Interface
::vtable(this
).ThumbnailUpdated
)(::windows
::core
::Interface
::as_raw(this
), ::core
::mem
::transmute_copy(changedhandler
), &mut result__
).from_abi(result__
)
1288 #[doc = "*Required features: `\"Foundation\"`*"]
1289 #[cfg(feature = "Foundation")]
1290 pub fn RemoveThumbnailUpdated(&self, eventcookie
: super::super::Foundation
::EventRegistrationToken
) -> ::windows
::core
::Result
<()> {
1292 unsafe { (::windows::core::Interface::vtable(this).RemoveThumbnailUpdated)(::windows::core::Interface::as_raw(this), eventcookie).ok() }
1294 #[doc = "*Required features: `\"Foundation\"`*"]
1295 #[cfg(feature = "Foundation")]
1296 pub fn PropertiesUpdated(&self, changedhandler
: &super::super::Foundation
::TypedEventHandler
<IStorageItemInformation
, ::windows
::core
::IInspectable
>) -> ::windows
::core
::Result
<super::super::Foundation
::EventRegistrationToken
> {
1299 let mut result__
= ::windows
::core
::zeroed
::<super::super::Foundation
::EventRegistrationToken
>();
1300 (::windows
::core
::Interface
::vtable(this
).PropertiesUpdated
)(::windows
::core
::Interface
::as_raw(this
), ::core
::mem
::transmute_copy(changedhandler
), &mut result__
).from_abi(result__
)
1303 #[doc = "*Required features: `\"Foundation\"`*"]
1304 #[cfg(feature = "Foundation")]
1305 pub fn RemovePropertiesUpdated(&self, eventcookie
: super::super::Foundation
::EventRegistrationToken
) -> ::windows
::core
::Result
<()> {
1307 unsafe { (::windows::core::Interface::vtable(this).RemovePropertiesUpdated)(::windows::core::Interface::as_raw(this), eventcookie).ok() }
1309 #[doc = "*Required features: `\"Foundation\"`, `\"Storage_FileProperties\"`, `\"Storage_Streams\"`*"]
1310 #[cfg(all(feature = "Foundation", feature = "Storage_FileProperties", feature = "Storage_Streams"))]
1311 pub fn GetThumbnailAsyncOverloadDefaultSizeDefaultOptions(&self, mode
: super::FileProperties
::ThumbnailMode
) -> ::windows
::core
::Result
<super::super::Foundation
::IAsyncOperation
<super::FileProperties
::StorageItemThumbnail
>> {
1312 let this
= &::windows
::core
::ComInterface
::cast
::<super::IStorageItemProperties
>(self)?
;
1314 let mut result__
= ::windows
::core
::zeroed
::<super::super::Foundation
::IAsyncOperation
<super::FileProperties
::StorageItemThumbnail
>>();
1315 (::windows
::core
::Interface
::vtable(this
).GetThumbnailAsyncOverloadDefaultSizeDefaultOptions
)(::windows
::core
::Interface
::as_raw(this
), mode
, &mut result__
).from_abi(result__
)
1318 #[doc = "*Required features: `\"Foundation\"`, `\"Storage_FileProperties\"`, `\"Storage_Streams\"`*"]
1319 #[cfg(all(feature = "Foundation", feature = "Storage_FileProperties", feature = "Storage_Streams"))]
1320 pub fn GetThumbnailAsyncOverloadDefaultOptions(&self, mode
: super::FileProperties
::ThumbnailMode
, requestedsize
: u32) -> ::windows
::core
::Result
<super::super::Foundation
::IAsyncOperation
<super::FileProperties
::StorageItemThumbnail
>> {
1321 let this
= &::windows
::core
::ComInterface
::cast
::<super::IStorageItemProperties
>(self)?
;
1323 let mut result__
= ::windows
::core
::zeroed
::<super::super::Foundation
::IAsyncOperation
<super::FileProperties
::StorageItemThumbnail
>>();
1324 (::windows
::core
::Interface
::vtable(this
).GetThumbnailAsyncOverloadDefaultOptions
)(::windows
::core
::Interface
::as_raw(this
), mode
, requestedsize
, &mut result__
).from_abi(result__
)
1327 #[doc = "*Required features: `\"Foundation\"`, `\"Storage_FileProperties\"`, `\"Storage_Streams\"`*"]
1328 #[cfg(all(feature = "Foundation", feature = "Storage_FileProperties", feature = "Storage_Streams"))]
1329 pub fn GetThumbnailAsync(&self, mode
: super::FileProperties
::ThumbnailMode
, requestedsize
: u32, options
: super::FileProperties
::ThumbnailOptions
) -> ::windows
::core
::Result
<super::super::Foundation
::IAsyncOperation
<super::FileProperties
::StorageItemThumbnail
>> {
1330 let this
= &::windows
::core
::ComInterface
::cast
::<super::IStorageItemProperties
>(self)?
;
1332 let mut result__
= ::windows
::core
::zeroed
::<super::super::Foundation
::IAsyncOperation
<super::FileProperties
::StorageItemThumbnail
>>();
1333 (::windows
::core
::Interface
::vtable(this
).GetThumbnailAsync
)(::windows
::core
::Interface
::as_raw(this
), mode
, requestedsize
, options
, &mut result__
).from_abi(result__
)
1336 pub fn DisplayName(&self) -> ::windows
::core
::Result
<::windows
::core
::HSTRING
> {
1337 let this
= &::windows
::core
::ComInterface
::cast
::<super::IStorageItemProperties
>(self)?
;
1339 let mut result__
= ::windows
::core
::zeroed
::<::windows
::core
::HSTRING
>();
1340 (::windows
::core
::Interface
::vtable(this
).DisplayName
)(::windows
::core
::Interface
::as_raw(this
), &mut result__
).from_abi(result__
)
1343 pub fn DisplayType(&self) -> ::windows
::core
::Result
<::windows
::core
::HSTRING
> {
1344 let this
= &::windows
::core
::ComInterface
::cast
::<super::IStorageItemProperties
>(self)?
;
1346 let mut result__
= ::windows
::core
::zeroed
::<::windows
::core
::HSTRING
>();
1347 (::windows
::core
::Interface
::vtable(this
).DisplayType
)(::windows
::core
::Interface
::as_raw(this
), &mut result__
).from_abi(result__
)
1350 pub fn FolderRelativeId(&self) -> ::windows
::core
::Result
<::windows
::core
::HSTRING
> {
1351 let this
= &::windows
::core
::ComInterface
::cast
::<super::IStorageItemProperties
>(self)?
;
1353 let mut result__
= ::windows
::core
::zeroed
::<::windows
::core
::HSTRING
>();
1354 (::windows
::core
::Interface
::vtable(this
).FolderRelativeId
)(::windows
::core
::Interface
::as_raw(this
), &mut result__
).from_abi(result__
)
1357 #[doc = "*Required features: `\"Storage_FileProperties\"`*"]
1358 #[cfg(feature = "Storage_FileProperties")]
1359 pub fn Properties(&self) -> ::windows
::core
::Result
<super::FileProperties
::StorageItemContentProperties
> {
1360 let this
= &::windows
::core
::ComInterface
::cast
::<super::IStorageItemProperties
>(self)?
;
1362 let mut result__
= ::windows
::core
::zeroed
::<super::FileProperties
::StorageItemContentProperties
>();
1363 (::windows
::core
::Interface
::vtable(this
).Properties
)(::windows
::core
::Interface
::as_raw(this
), &mut result__
).from_abi(result__
)
1366 pub fn Provider(&self) -> ::windows
::core
::Result
<super::StorageProvider
> {
1367 let this
= &::windows
::core
::ComInterface
::cast
::<super::IStorageItemPropertiesWithProvider
>(self)?
;
1369 let mut result__
= ::windows
::core
::zeroed
::<super::StorageProvider
>();
1370 (::windows
::core
::Interface
::vtable(this
).Provider
)(::windows
::core
::Interface
::as_raw(this
), &mut result__
).from_abi(result__
)
1374 impl ::core
::cmp
::PartialEq
for FolderInformation
{
1375 fn eq(&self, other
: &Self) -> bool
{
1379 impl ::core
::cmp
::Eq
for FolderInformation {}
1380 impl ::core
::fmt
::Debug
for FolderInformation
{
1381 fn fmt(&self, f
: &mut ::core
::fmt
::Formatter
<'_
>) -> ::core
::fmt
::Result
{
1382 f
.debug_tuple("FolderInformation").field(&self.0).finish()
1385 impl ::windows
::core
::RuntimeType
for FolderInformation
{
1386 const SIGNATURE
: ::windows
::imp
::ConstBuffer
= ::windows
::imp
::ConstBuffer
::from_slice(b
"rc(Windows.Storage.BulkAccess.FolderInformation;{87a5cb8b-8972-4f40-8de0-d86fb179d8fa})");
1388 impl ::core
::clone
::Clone
for FolderInformation
{
1389 fn clone(&self) -> Self {
1390 Self(self.0.clone())
1393 unsafe impl ::windows
::core
::Interface
for FolderInformation
{
1394 type Vtable
= IStorageItemInformation_Vtbl
;
1396 unsafe impl ::windows
::core
::ComInterface
for FolderInformation
{
1397 const IID
: ::windows
::core
::GUID
= <IStorageItemInformation
as ::windows
::core
::ComInterface
>::IID
;
1399 impl ::windows
::core
::RuntimeName
for FolderInformation
{
1400 const NAME
: &'
static str = "Windows.Storage.BulkAccess.FolderInformation";
1402 ::windows
::imp
::interface_hierarchy
!(FolderInformation
, ::windows
::core
::IUnknown
, ::windows
::core
::IInspectable
);
1403 impl ::windows
::core
::CanTryInto
<super::IStorageFolder
> for FolderInformation {}
1404 impl ::windows
::core
::CanTryInto
<super::IStorageFolder2
> for FolderInformation {}
1405 #[cfg(feature = "Storage_Search")]
1406 impl ::windows
::core
::CanTryInto
<super::Search
::IStorageFolderQueryOperations
> for FolderInformation {}
1407 impl ::windows
::core
::CanTryInto
<super::IStorageItem
> for FolderInformation {}
1408 impl ::windows
::core
::CanTryInto
<super::IStorageItem2
> for FolderInformation {}
1409 impl ::windows
::core
::CanTryInto
<IStorageItemInformation
> for FolderInformation {}
1410 impl ::windows
::core
::CanTryInto
<super::IStorageItemProperties
> for FolderInformation {}
1411 impl ::windows
::core
::CanTryInto
<super::IStorageItemPropertiesWithProvider
> for FolderInformation {}
1412 #[cfg(feature = "implement")]
1413 ::core
::include
!("impl.rs");