| /* |
| * SPDX-FileCopyrightText: This file has no copyright assigned and is placed in the Public Domain. |
| * SPDX-License-Identifier: CC0-1.0 |
| * |
| * This file is part of the w64 mingw-runtime package. |
| * No warranty is given; refer to https://github.com/kinke/mingw-w64-crt/blob/master/DISCLAIMER.PD. |
| */ |
| |
| struct DateTime; |
| |
| typedef struct DateTime { |
| UINT64 UniversalTime; |
| } DateTime; |
| |
| /* The following is copied verbatim from MinGW-w64 windows.storage.h */ |
| enum StorageItemTypes; |
| enum FileAttributes; |
| enum NameCollisionOption; |
| enum StorageDeleteOption; |
| |
| typedef enum NameCollisionoption { |
| NameCollisionoption_GenerateUniqueName = 0, |
| NameCollisionoption_ReplaceExisting = 1, |
| NameCollisionoption_FailIfExists = 2 |
| } NameCollisionOption; |
| |
| typedef enum FileAttributes { |
| FileAttributes_Normal = 0, |
| FileAttributes_ReadOnly = 1, |
| FileAttributes_Directory = 2, |
| FileAttributes_Archive = 3, |
| FileAttributes_Temporary = 4 |
| } FileAttributes; |
| |
| typedef enum StorageItemTypes { |
| StorageItemTypes_None = 0, |
| StorageItemTypes_File = 1, |
| StorageItemTypes_Folder = 2 |
| } StorageItemTypes; |
| |
| typedef enum StorageDeleteOption { |
| StorageDeleteOption_Default = 0, |
| StorageDeleteOption_PermanentDelete = 1 |
| } StorageDeleteOption; |
| |
| #ifndef __IStorageItem_FWD_DEFINED__ |
| #define __IStorageItem_FWD_DEFINED__ |
| typedef interface IStorageItem IStorageItem; |
| #endif |
| |
| /* |
| * IStorageItem interface |
| */ |
| #ifndef __IStorageItem_INTERFACE_DEFINED__ |
| #define __IStorageItem_INTERFACE_DEFINED__ |
| |
| DEFINE_GUID(IID_IStorageItem, 0x4207a996, 0xca2f, 0x42f7, 0xbd,0xe8, 0x8b,0x10,0x45,0x7a,0x7f,0x30); |
| #if defined(__cplusplus) && !defined(CINTERFACE) |
| MIDL_INTERFACE("4207a996-ca2f-42f7-bde8-8b10457a7f30") |
| IStorageItem : public IInspectable |
| { |
| virtual HRESULT STDMETHODCALLTYPE RenameAsyncOverloadDefaultOptions( |
| HSTRING desiredName, |
| IInspectable **action) = 0; |
| |
| virtual HRESULT STDMETHODCALLTYPE RenameAsync( |
| HSTRING desiredName, |
| NameCollisionOption option, |
| IInspectable **action) = 0; |
| |
| virtual HRESULT STDMETHODCALLTYPE DeleteAsyncOverloadDefaultOptions( |
| IInspectable **action) = 0; |
| |
| virtual HRESULT STDMETHODCALLTYPE DeleteAsync( |
| StorageDeleteOption option, |
| IInspectable **action) = 0; |
| |
| virtual HRESULT STDMETHODCALLTYPE GetBasicPropertiesAsync( |
| IInspectable **action) = 0; |
| |
| virtual HRESULT STDMETHODCALLTYPE get_Name( |
| HSTRING *value) = 0; |
| |
| virtual HRESULT STDMETHODCALLTYPE get_Path( |
| HSTRING *value) = 0; |
| |
| virtual HRESULT STDMETHODCALLTYPE get_Attributes( |
| FileAttributes *value) = 0; |
| |
| virtual HRESULT STDMETHODCALLTYPE get_DateCreated( |
| DateTime *value) = 0; |
| |
| virtual HRESULT STDMETHODCALLTYPE IsOfType( |
| StorageItemTypes itemType, |
| boolean *value) = 0; |
| |
| }; |
| #ifdef __CRT_UUID_DECL |
| __CRT_UUID_DECL(IStorageItem, 0x4207a996, 0xca2f, 0x42f7, 0xbd,0xe8, 0x8b,0x10,0x45,0x7a,0x7f,0x30) |
| #endif |
| #else |
| typedef struct IStorageItemVtbl { |
| BEGIN_INTERFACE |
| |
| /*** IUnknown methods ***/ |
| HRESULT (STDMETHODCALLTYPE *QueryInterface)( |
| IStorageItem* This, |
| REFIID riid, |
| void **ppvObject); |
| |
| ULONG (STDMETHODCALLTYPE *AddRef)( |
| IStorageItem* This); |
| |
| ULONG (STDMETHODCALLTYPE *Release)( |
| IStorageItem* This); |
| |
| /*** IInspectable methods ***/ |
| HRESULT (STDMETHODCALLTYPE *GetIids)( |
| IStorageItem* This, |
| ULONG *iidCount, |
| IID **iids); |
| |
| HRESULT (STDMETHODCALLTYPE *GetRuntimeClassName)( |
| IStorageItem* This, |
| HSTRING *className); |
| |
| HRESULT (STDMETHODCALLTYPE *GetTrustLevel)( |
| IStorageItem* This, |
| TrustLevel *trustLevel); |
| |
| /*** IStorageItem methods ***/ |
| HRESULT (STDMETHODCALLTYPE *RenameAsyncOverloadDefaultOptions)( |
| IStorageItem* This, |
| HSTRING desiredName, |
| IInspectable **action); |
| |
| HRESULT (STDMETHODCALLTYPE *RenameAsync)( |
| IStorageItem* This, |
| HSTRING desiredName, |
| NameCollisionOption option, |
| IInspectable **action); |
| |
| HRESULT (STDMETHODCALLTYPE *DeleteAsyncOverloadDefaultOptions)( |
| IStorageItem* This, |
| IInspectable **action); |
| |
| HRESULT (STDMETHODCALLTYPE *DeleteAsync)( |
| IStorageItem* This, |
| StorageDeleteOption option, |
| IInspectable **action); |
| |
| HRESULT (STDMETHODCALLTYPE *GetBasicPropertiesAsync)( |
| IStorageItem* This, |
| IInspectable **action); |
| |
| HRESULT (STDMETHODCALLTYPE *get_Name)( |
| IStorageItem* This, |
| HSTRING *value); |
| |
| HRESULT (STDMETHODCALLTYPE *get_Path)( |
| IStorageItem* This, |
| HSTRING *value); |
| |
| HRESULT (STDMETHODCALLTYPE *get_Attributes)( |
| IStorageItem* This, |
| FileAttributes *value); |
| |
| HRESULT (STDMETHODCALLTYPE *get_DateCreated)( |
| IStorageItem* This, |
| DateTime *value); |
| |
| HRESULT (STDMETHODCALLTYPE *IsOfType)( |
| IStorageItem* This, |
| StorageItemTypes itemType, |
| boolean *value); |
| |
| END_INTERFACE |
| } IStorageItemVtbl; |
| interface IStorageItem { |
| CONST_VTBL IStorageItemVtbl* lpVtbl; |
| }; |
| |
| #ifdef COBJMACROS |
| #ifndef WIDL_C_INLINE_WRAPPERS |
| /*** IUnknown methods ***/ |
| #define IStorageItem_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) |
| #define IStorageItem_AddRef(This) (This)->lpVtbl->AddRef(This) |
| #define IStorageItem_Release(This) (This)->lpVtbl->Release(This) |
| /*** IInspectable methods ***/ |
| #define IStorageItem_GetIids(This,iidCount,iids) (This)->lpVtbl->GetIids(This,iidCount,iids) |
| #define IStorageItem_GetRuntimeClassName(This,className) (This)->lpVtbl->GetRuntimeClassName(This,className) |
| #define IStorageItem_GetTrustLevel(This,trustLevel) (This)->lpVtbl->GetTrustLevel(This,trustLevel) |
| /*** IStorageItem methods ***/ |
| #define IStorageItem_RenameAsyncOverloadDefaultOptions(This,desiredName,action) (This)->lpVtbl->RenameAsyncOverloadDefaultOptions(This,desiredName,action) |
| #define IStorageItem_RenameAsync(This,desiredName,option,action) (This)->lpVtbl->RenameAsync(This,desiredName,option,action) |
| #define IStorageItem_DeleteAsyncOverloadDefaultOptions(This,action) (This)->lpVtbl->DeleteAsyncOverloadDefaultOptions(This,action) |
| #define IStorageItem_DeleteAsync(This,option,action) (This)->lpVtbl->DeleteAsync(This,option,action) |
| #define IStorageItem_GetBasicPropertiesAsync(This,action) (This)->lpVtbl->GetBasicPropertiesAsync(This,action) |
| #define IStorageItem_get_Name(This,value) (This)->lpVtbl->get_Name(This,value) |
| #define IStorageItem_get_Path(This,value) (This)->lpVtbl->get_Path(This,value) |
| #define IStorageItem_get_Attributes(This,value) (This)->lpVtbl->get_Attributes(This,value) |
| #define IStorageItem_get_DateCreated(This,value) (This)->lpVtbl->get_DateCreated(This,value) |
| #define IStorageItem_IsOfType(This,itemType,value) (This)->lpVtbl->IsOfType(This,itemType,value) |
| #else |
| /*** IUnknown methods ***/ |
| static FORCEINLINE HRESULT IStorageItem_QueryInterface(IStorageItem* This,REFIID riid,void **ppvObject) { |
| return This->lpVtbl->QueryInterface(This,riid,ppvObject); |
| } |
| static FORCEINLINE ULONG IStorageItem_AddRef(IStorageItem* This) { |
| return This->lpVtbl->AddRef(This); |
| } |
| static FORCEINLINE ULONG IStorageItem_Release(IStorageItem* This) { |
| return This->lpVtbl->Release(This); |
| } |
| /*** IInspectable methods ***/ |
| static FORCEINLINE HRESULT IStorageItem_GetIids(IStorageItem* This,ULONG *iidCount,IID **iids) { |
| return This->lpVtbl->GetIids(This,iidCount,iids); |
| } |
| static FORCEINLINE HRESULT IStorageItem_GetRuntimeClassName(IStorageItem* This,HSTRING *className) { |
| return This->lpVtbl->GetRuntimeClassName(This,className); |
| } |
| static FORCEINLINE HRESULT IStorageItem_GetTrustLevel(IStorageItem* This,TrustLevel *trustLevel) { |
| return This->lpVtbl->GetTrustLevel(This,trustLevel); |
| } |
| /*** IStorageItem methods ***/ |
| static FORCEINLINE HRESULT IStorageItem_RenameAsyncOverloadDefaultOptions(IStorageItem* This,HSTRING desiredName,IInspectable **action) { |
| return This->lpVtbl->RenameAsyncOverloadDefaultOptions(This,desiredName,action); |
| } |
| static FORCEINLINE HRESULT IStorageItem_RenameAsync(IStorageItem* This,HSTRING desiredName,NameCollisionOption option,IInspectable **action) { |
| return This->lpVtbl->RenameAsync(This,desiredName,option,action); |
| } |
| static FORCEINLINE HRESULT IStorageItem_DeleteAsyncOverloadDefaultOptions(IStorageItem* This,IInspectable **action) { |
| return This->lpVtbl->DeleteAsyncOverloadDefaultOptions(This,action); |
| } |
| static FORCEINLINE HRESULT IStorageItem_DeleteAsync(IStorageItem* This,StorageDeleteOption option,IInspectable **action) { |
| return This->lpVtbl->DeleteAsync(This,option,action); |
| } |
| static FORCEINLINE HRESULT IStorageItem_GetBasicPropertiesAsync(IStorageItem* This,IInspectable **action) { |
| return This->lpVtbl->GetBasicPropertiesAsync(This,action); |
| } |
| static FORCEINLINE HRESULT IStorageItem_get_Name(IStorageItem* This,HSTRING *value) { |
| return This->lpVtbl->get_Name(This,value); |
| } |
| static FORCEINLINE HRESULT IStorageItem_get_Path(IStorageItem* This,HSTRING *value) { |
| return This->lpVtbl->get_Path(This,value); |
| } |
| static FORCEINLINE HRESULT IStorageItem_get_Attributes(IStorageItem* This,FileAttributes *value) { |
| return This->lpVtbl->get_Attributes(This,value); |
| } |
| static FORCEINLINE HRESULT IStorageItem_get_DateCreated(IStorageItem* This,DateTime *value) { |
| return This->lpVtbl->get_DateCreated(This,value); |
| } |
| static FORCEINLINE HRESULT IStorageItem_IsOfType(IStorageItem* This,StorageItemTypes itemType,boolean *value) { |
| return This->lpVtbl->IsOfType(This,itemType,value); |
| } |
| #endif |
| #endif |
| |
| #endif |
| |
| HRESULT STDMETHODCALLTYPE IStorageItem_RenameAsyncOverloadDefaultOptions_Proxy( |
| IStorageItem* This, |
| HSTRING desiredName, |
| IInspectable **action); |
| void __RPC_STUB IStorageItem_RenameAsyncOverloadDefaultOptions_Stub( |
| IRpcStubBuffer* This, |
| IRpcChannelBuffer* pRpcChannelBuffer, |
| PRPC_MESSAGE pRpcMessage, |
| DWORD* pdwStubPhase); |
| HRESULT STDMETHODCALLTYPE IStorageItem_RenameAsync_Proxy( |
| IStorageItem* This, |
| HSTRING desiredName, |
| NameCollisionOption option, |
| IInspectable **action); |
| void __RPC_STUB IStorageItem_RenameAsync_Stub( |
| IRpcStubBuffer* This, |
| IRpcChannelBuffer* pRpcChannelBuffer, |
| PRPC_MESSAGE pRpcMessage, |
| DWORD* pdwStubPhase); |
| HRESULT STDMETHODCALLTYPE IStorageItem_DeleteAsyncOverloadDefaultOptions_Proxy( |
| IStorageItem* This, |
| IInspectable **action); |
| void __RPC_STUB IStorageItem_DeleteAsyncOverloadDefaultOptions_Stub( |
| IRpcStubBuffer* This, |
| IRpcChannelBuffer* pRpcChannelBuffer, |
| PRPC_MESSAGE pRpcMessage, |
| DWORD* pdwStubPhase); |
| HRESULT STDMETHODCALLTYPE IStorageItem_DeleteAsync_Proxy( |
| IStorageItem* This, |
| StorageDeleteOption option, |
| IInspectable **action); |
| void __RPC_STUB IStorageItem_DeleteAsync_Stub( |
| IRpcStubBuffer* This, |
| IRpcChannelBuffer* pRpcChannelBuffer, |
| PRPC_MESSAGE pRpcMessage, |
| DWORD* pdwStubPhase); |
| HRESULT STDMETHODCALLTYPE IStorageItem_GetBasicPropertiesAsync_Proxy( |
| IStorageItem* This, |
| IInspectable **action); |
| void __RPC_STUB IStorageItem_GetBasicPropertiesAsync_Stub( |
| IRpcStubBuffer* This, |
| IRpcChannelBuffer* pRpcChannelBuffer, |
| PRPC_MESSAGE pRpcMessage, |
| DWORD* pdwStubPhase); |
| HRESULT STDMETHODCALLTYPE IStorageItem_get_Name_Proxy( |
| IStorageItem* This, |
| HSTRING *value); |
| void __RPC_STUB IStorageItem_get_Name_Stub( |
| IRpcStubBuffer* This, |
| IRpcChannelBuffer* pRpcChannelBuffer, |
| PRPC_MESSAGE pRpcMessage, |
| DWORD* pdwStubPhase); |
| HRESULT STDMETHODCALLTYPE IStorageItem_get_Path_Proxy( |
| IStorageItem* This, |
| HSTRING *value); |
| void __RPC_STUB IStorageItem_get_Path_Stub( |
| IRpcStubBuffer* This, |
| IRpcChannelBuffer* pRpcChannelBuffer, |
| PRPC_MESSAGE pRpcMessage, |
| DWORD* pdwStubPhase); |
| HRESULT STDMETHODCALLTYPE IStorageItem_get_Attributes_Proxy( |
| IStorageItem* This, |
| FileAttributes *value); |
| void __RPC_STUB IStorageItem_get_Attributes_Stub( |
| IRpcStubBuffer* This, |
| IRpcChannelBuffer* pRpcChannelBuffer, |
| PRPC_MESSAGE pRpcMessage, |
| DWORD* pdwStubPhase); |
| HRESULT STDMETHODCALLTYPE IStorageItem_get_DateCreated_Proxy( |
| IStorageItem* This, |
| DateTime *value); |
| void __RPC_STUB IStorageItem_get_DateCreated_Stub( |
| IRpcStubBuffer* This, |
| IRpcChannelBuffer* pRpcChannelBuffer, |
| PRPC_MESSAGE pRpcMessage, |
| DWORD* pdwStubPhase); |
| HRESULT STDMETHODCALLTYPE IStorageItem_IsOfType_Proxy( |
| IStorageItem* This, |
| StorageItemTypes itemType, |
| boolean *value); |
| void __RPC_STUB IStorageItem_IsOfType_Stub( |
| IRpcStubBuffer* This, |
| IRpcChannelBuffer* pRpcChannelBuffer, |
| PRPC_MESSAGE pRpcMessage, |
| DWORD* pdwStubPhase); |
| |
| #endif /* __IStorageItem_INTERFACE_DEFINED__ */ |