/*** Autogenerated by WIDL 11.0 from /home/runner/.termux-build/wine-stable/src/include/windows.system.idl - Do not edit ***/

#ifdef _WIN32
#ifndef __REQUIRED_RPCNDR_H_VERSION__
#define __REQUIRED_RPCNDR_H_VERSION__ 475
#endif
#include <rpc.h>
#include <rpcndr.h>
#endif

#ifndef COM_NO_WINDOWS_H
#include <windows.h>
#include <ole2.h>
#endif

#ifndef __windows_system_h__
#define __windows_system_h__

/* Forward declarations */

#ifndef ____x_ABI_CWindows_CSystem_CIDispatcherQueueHandler_FWD_DEFINED__
#define ____x_ABI_CWindows_CSystem_CIDispatcherQueueHandler_FWD_DEFINED__
typedef interface __x_ABI_CWindows_CSystem_CIDispatcherQueueHandler __x_ABI_CWindows_CSystem_CIDispatcherQueueHandler;
#ifdef __cplusplus
#define __x_ABI_CWindows_CSystem_CIDispatcherQueueHandler ABI::Windows::System::IDispatcherQueueHandler
namespace ABI {
    namespace Windows {
        namespace System {
            interface IDispatcherQueueHandler;
        }
    }
}
#endif /* __cplusplus */
#endif

#ifndef ____x_ABI_CWindows_CSystem_CIDispatcherQueue_FWD_DEFINED__
#define ____x_ABI_CWindows_CSystem_CIDispatcherQueue_FWD_DEFINED__
typedef interface __x_ABI_CWindows_CSystem_CIDispatcherQueue __x_ABI_CWindows_CSystem_CIDispatcherQueue;
#ifdef __cplusplus
#define __x_ABI_CWindows_CSystem_CIDispatcherQueue ABI::Windows::System::IDispatcherQueue
namespace ABI {
    namespace Windows {
        namespace System {
            interface IDispatcherQueue;
        }
    }
}
#endif /* __cplusplus */
#endif

#ifndef ____x_ABI_CWindows_CSystem_CIDispatcherQueue2_FWD_DEFINED__
#define ____x_ABI_CWindows_CSystem_CIDispatcherQueue2_FWD_DEFINED__
typedef interface __x_ABI_CWindows_CSystem_CIDispatcherQueue2 __x_ABI_CWindows_CSystem_CIDispatcherQueue2;
#ifdef __cplusplus
#define __x_ABI_CWindows_CSystem_CIDispatcherQueue2 ABI::Windows::System::IDispatcherQueue2
namespace ABI {
    namespace Windows {
        namespace System {
            interface IDispatcherQueue2;
        }
    }
}
#endif /* __cplusplus */
#endif

#ifndef ____x_ABI_CWindows_CSystem_CIDispatcherQueueController_FWD_DEFINED__
#define ____x_ABI_CWindows_CSystem_CIDispatcherQueueController_FWD_DEFINED__
typedef interface __x_ABI_CWindows_CSystem_CIDispatcherQueueController __x_ABI_CWindows_CSystem_CIDispatcherQueueController;
#ifdef __cplusplus
#define __x_ABI_CWindows_CSystem_CIDispatcherQueueController ABI::Windows::System::IDispatcherQueueController
namespace ABI {
    namespace Windows {
        namespace System {
            interface IDispatcherQueueController;
        }
    }
}
#endif /* __cplusplus */
#endif

#ifndef ____x_ABI_CWindows_CSystem_CIDispatcherQueueControllerStatics_FWD_DEFINED__
#define ____x_ABI_CWindows_CSystem_CIDispatcherQueueControllerStatics_FWD_DEFINED__
typedef interface __x_ABI_CWindows_CSystem_CIDispatcherQueueControllerStatics __x_ABI_CWindows_CSystem_CIDispatcherQueueControllerStatics;
#ifdef __cplusplus
#define __x_ABI_CWindows_CSystem_CIDispatcherQueueControllerStatics ABI::Windows::System::IDispatcherQueueControllerStatics
namespace ABI {
    namespace Windows {
        namespace System {
            interface IDispatcherQueueControllerStatics;
        }
    }
}
#endif /* __cplusplus */
#endif

#ifndef ____x_ABI_CWindows_CSystem_CIDispatcherQueueShutdownStartingEventArgs_FWD_DEFINED__
#define ____x_ABI_CWindows_CSystem_CIDispatcherQueueShutdownStartingEventArgs_FWD_DEFINED__
typedef interface __x_ABI_CWindows_CSystem_CIDispatcherQueueShutdownStartingEventArgs __x_ABI_CWindows_CSystem_CIDispatcherQueueShutdownStartingEventArgs;
#ifdef __cplusplus
#define __x_ABI_CWindows_CSystem_CIDispatcherQueueShutdownStartingEventArgs ABI::Windows::System::IDispatcherQueueShutdownStartingEventArgs
namespace ABI {
    namespace Windows {
        namespace System {
            interface IDispatcherQueueShutdownStartingEventArgs;
        }
    }
}
#endif /* __cplusplus */
#endif

#ifndef ____x_ABI_CWindows_CSystem_CIDispatcherQueueStatics_FWD_DEFINED__
#define ____x_ABI_CWindows_CSystem_CIDispatcherQueueStatics_FWD_DEFINED__
typedef interface __x_ABI_CWindows_CSystem_CIDispatcherQueueStatics __x_ABI_CWindows_CSystem_CIDispatcherQueueStatics;
#ifdef __cplusplus
#define __x_ABI_CWindows_CSystem_CIDispatcherQueueStatics ABI::Windows::System::IDispatcherQueueStatics
namespace ABI {
    namespace Windows {
        namespace System {
            interface IDispatcherQueueStatics;
        }
    }
}
#endif /* __cplusplus */
#endif

#ifndef ____x_ABI_CWindows_CSystem_CIDispatcherQueueTimer_FWD_DEFINED__
#define ____x_ABI_CWindows_CSystem_CIDispatcherQueueTimer_FWD_DEFINED__
typedef interface __x_ABI_CWindows_CSystem_CIDispatcherQueueTimer __x_ABI_CWindows_CSystem_CIDispatcherQueueTimer;
#ifdef __cplusplus
#define __x_ABI_CWindows_CSystem_CIDispatcherQueueTimer ABI::Windows::System::IDispatcherQueueTimer
namespace ABI {
    namespace Windows {
        namespace System {
            interface IDispatcherQueueTimer;
        }
    }
}
#endif /* __cplusplus */
#endif

#ifndef ____x_ABI_CWindows_CSystem_CIUser_FWD_DEFINED__
#define ____x_ABI_CWindows_CSystem_CIUser_FWD_DEFINED__
typedef interface __x_ABI_CWindows_CSystem_CIUser __x_ABI_CWindows_CSystem_CIUser;
#ifdef __cplusplus
#define __x_ABI_CWindows_CSystem_CIUser ABI::Windows::System::IUser
namespace ABI {
    namespace Windows {
        namespace System {
            interface IUser;
        }
    }
}
#endif /* __cplusplus */
#endif

#ifndef ____x_ABI_CWindows_CSystem_CIUserChangedEventArgs_FWD_DEFINED__
#define ____x_ABI_CWindows_CSystem_CIUserChangedEventArgs_FWD_DEFINED__
typedef interface __x_ABI_CWindows_CSystem_CIUserChangedEventArgs __x_ABI_CWindows_CSystem_CIUserChangedEventArgs;
#ifdef __cplusplus
#define __x_ABI_CWindows_CSystem_CIUserChangedEventArgs ABI::Windows::System::IUserChangedEventArgs
namespace ABI {
    namespace Windows {
        namespace System {
            interface IUserChangedEventArgs;
        }
    }
}
#endif /* __cplusplus */
#endif

#ifndef ____x_ABI_CWindows_CSystem_CDispatcherQueue_FWD_DEFINED__
#define ____x_ABI_CWindows_CSystem_CDispatcherQueue_FWD_DEFINED__
#ifdef __cplusplus
namespace ABI {
    namespace Windows {
        namespace System {
            class DispatcherQueue;
        }
    }
}
#else
typedef struct __x_ABI_CWindows_CSystem_CDispatcherQueue __x_ABI_CWindows_CSystem_CDispatcherQueue;
#endif /* defined __cplusplus */
#endif /* defined ____x_ABI_CWindows_CSystem_CDispatcherQueue_FWD_DEFINED__ */

#ifndef ____x_ABI_CWindows_CSystem_CDispatcherQueueController_FWD_DEFINED__
#define ____x_ABI_CWindows_CSystem_CDispatcherQueueController_FWD_DEFINED__
#ifdef __cplusplus
namespace ABI {
    namespace Windows {
        namespace System {
            class DispatcherQueueController;
        }
    }
}
#else
typedef struct __x_ABI_CWindows_CSystem_CDispatcherQueueController __x_ABI_CWindows_CSystem_CDispatcherQueueController;
#endif /* defined __cplusplus */
#endif /* defined ____x_ABI_CWindows_CSystem_CDispatcherQueueController_FWD_DEFINED__ */

#ifndef ____x_ABI_CWindows_CSystem_CDispatcherQueueShutdownStartingEventArgs_FWD_DEFINED__
#define ____x_ABI_CWindows_CSystem_CDispatcherQueueShutdownStartingEventArgs_FWD_DEFINED__
#ifdef __cplusplus
namespace ABI {
    namespace Windows {
        namespace System {
            class DispatcherQueueShutdownStartingEventArgs;
        }
    }
}
#else
typedef struct __x_ABI_CWindows_CSystem_CDispatcherQueueShutdownStartingEventArgs __x_ABI_CWindows_CSystem_CDispatcherQueueShutdownStartingEventArgs;
#endif /* defined __cplusplus */
#endif /* defined ____x_ABI_CWindows_CSystem_CDispatcherQueueShutdownStartingEventArgs_FWD_DEFINED__ */

#ifndef ____x_ABI_CWindows_CSystem_CDispatcherQueueTimer_FWD_DEFINED__
#define ____x_ABI_CWindows_CSystem_CDispatcherQueueTimer_FWD_DEFINED__
#ifdef __cplusplus
namespace ABI {
    namespace Windows {
        namespace System {
            class DispatcherQueueTimer;
        }
    }
}
#else
typedef struct __x_ABI_CWindows_CSystem_CDispatcherQueueTimer __x_ABI_CWindows_CSystem_CDispatcherQueueTimer;
#endif /* defined __cplusplus */
#endif /* defined ____x_ABI_CWindows_CSystem_CDispatcherQueueTimer_FWD_DEFINED__ */

#ifndef ____x_ABI_CWindows_CSystem_CUser_FWD_DEFINED__
#define ____x_ABI_CWindows_CSystem_CUser_FWD_DEFINED__
#ifdef __cplusplus
namespace ABI {
    namespace Windows {
        namespace System {
            class User;
        }
    }
}
#else
typedef struct __x_ABI_CWindows_CSystem_CUser __x_ABI_CWindows_CSystem_CUser;
#endif /* defined __cplusplus */
#endif /* defined ____x_ABI_CWindows_CSystem_CUser_FWD_DEFINED__ */

#ifndef ____x_ABI_CWindows_CSystem_CUserChangedEventArgs_FWD_DEFINED__
#define ____x_ABI_CWindows_CSystem_CUserChangedEventArgs_FWD_DEFINED__
#ifdef __cplusplus
namespace ABI {
    namespace Windows {
        namespace System {
            class UserChangedEventArgs;
        }
    }
}
#else
typedef struct __x_ABI_CWindows_CSystem_CUserChangedEventArgs __x_ABI_CWindows_CSystem_CUserChangedEventArgs;
#endif /* defined __cplusplus */
#endif /* defined ____x_ABI_CWindows_CSystem_CUserChangedEventArgs_FWD_DEFINED__ */

#ifndef ____FIAsyncOperationCompletedHandler_1_Windows__CFoundation__CCollections__CIPropertySet_FWD_DEFINED__
#define ____FIAsyncOperationCompletedHandler_1_Windows__CFoundation__CCollections__CIPropertySet_FWD_DEFINED__
typedef interface __FIAsyncOperationCompletedHandler_1_Windows__CFoundation__CCollections__CIPropertySet __FIAsyncOperationCompletedHandler_1_Windows__CFoundation__CCollections__CIPropertySet;
#ifdef __cplusplus
#define __FIAsyncOperationCompletedHandler_1_Windows__CFoundation__CCollections__CIPropertySet ABI::Windows::Foundation::IAsyncOperationCompletedHandler<ABI::Windows::Foundation::Collections::IPropertySet* >
#endif /* __cplusplus */
#endif

#ifndef ____FIAsyncOperationCompletedHandler_1_Windows__CStorage__CStreams__CIRandomAccessStreamReference_FWD_DEFINED__
#define ____FIAsyncOperationCompletedHandler_1_Windows__CStorage__CStreams__CIRandomAccessStreamReference_FWD_DEFINED__
typedef interface __FIAsyncOperationCompletedHandler_1_Windows__CStorage__CStreams__CIRandomAccessStreamReference __FIAsyncOperationCompletedHandler_1_Windows__CStorage__CStreams__CIRandomAccessStreamReference;
#ifdef __cplusplus
#define __FIAsyncOperationCompletedHandler_1_Windows__CStorage__CStreams__CIRandomAccessStreamReference ABI::Windows::Foundation::IAsyncOperationCompletedHandler<ABI::Windows::Storage::Streams::IRandomAccessStreamReference* >
#endif /* __cplusplus */
#endif

#ifndef ____FIAsyncOperation_1_Windows__CFoundation__CCollections__CIPropertySet_FWD_DEFINED__
#define ____FIAsyncOperation_1_Windows__CFoundation__CCollections__CIPropertySet_FWD_DEFINED__
typedef interface __FIAsyncOperation_1_Windows__CFoundation__CCollections__CIPropertySet __FIAsyncOperation_1_Windows__CFoundation__CCollections__CIPropertySet;
#ifdef __cplusplus
#define __FIAsyncOperation_1_Windows__CFoundation__CCollections__CIPropertySet ABI::Windows::Foundation::IAsyncOperation<ABI::Windows::Foundation::Collections::IPropertySet* >
#endif /* __cplusplus */
#endif

#ifndef ____FIAsyncOperation_1_Windows__CStorage__CStreams__CIRandomAccessStreamReference_FWD_DEFINED__
#define ____FIAsyncOperation_1_Windows__CStorage__CStreams__CIRandomAccessStreamReference_FWD_DEFINED__
typedef interface __FIAsyncOperation_1_Windows__CStorage__CStreams__CIRandomAccessStreamReference __FIAsyncOperation_1_Windows__CStorage__CStreams__CIRandomAccessStreamReference;
#ifdef __cplusplus
#define __FIAsyncOperation_1_Windows__CStorage__CStreams__CIRandomAccessStreamReference ABI::Windows::Foundation::IAsyncOperation<ABI::Windows::Storage::Streams::IRandomAccessStreamReference* >
#endif /* __cplusplus */
#endif

#ifndef ____FITypedEventHandler_2_Windows__CSystem__CDispatcherQueue_IInspectable_FWD_DEFINED__
#define ____FITypedEventHandler_2_Windows__CSystem__CDispatcherQueue_IInspectable_FWD_DEFINED__
typedef interface __FITypedEventHandler_2_Windows__CSystem__CDispatcherQueue_IInspectable __FITypedEventHandler_2_Windows__CSystem__CDispatcherQueue_IInspectable;
#ifdef __cplusplus
#define __FITypedEventHandler_2_Windows__CSystem__CDispatcherQueue_IInspectable ABI::Windows::Foundation::ITypedEventHandler<ABI::Windows::System::DispatcherQueue*,IInspectable* >
#endif /* __cplusplus */
#endif

#ifndef ____FITypedEventHandler_2_Windows__CSystem__CDispatcherQueue_Windows__CSystem__CDispatcherQueueShutdownStartingEventArgs_FWD_DEFINED__
#define ____FITypedEventHandler_2_Windows__CSystem__CDispatcherQueue_Windows__CSystem__CDispatcherQueueShutdownStartingEventArgs_FWD_DEFINED__
typedef interface __FITypedEventHandler_2_Windows__CSystem__CDispatcherQueue_Windows__CSystem__CDispatcherQueueShutdownStartingEventArgs __FITypedEventHandler_2_Windows__CSystem__CDispatcherQueue_Windows__CSystem__CDispatcherQueueShutdownStartingEventArgs;
#ifdef __cplusplus
#define __FITypedEventHandler_2_Windows__CSystem__CDispatcherQueue_Windows__CSystem__CDispatcherQueueShutdownStartingEventArgs ABI::Windows::Foundation::ITypedEventHandler<ABI::Windows::System::DispatcherQueue*,ABI::Windows::System::DispatcherQueueShutdownStartingEventArgs* >
#endif /* __cplusplus */
#endif

#ifndef ____FITypedEventHandler_2_Windows__CSystem__CDispatcherQueueTimer_IInspectable_FWD_DEFINED__
#define ____FITypedEventHandler_2_Windows__CSystem__CDispatcherQueueTimer_IInspectable_FWD_DEFINED__
typedef interface __FITypedEventHandler_2_Windows__CSystem__CDispatcherQueueTimer_IInspectable __FITypedEventHandler_2_Windows__CSystem__CDispatcherQueueTimer_IInspectable;
#ifdef __cplusplus
#define __FITypedEventHandler_2_Windows__CSystem__CDispatcherQueueTimer_IInspectable ABI::Windows::Foundation::ITypedEventHandler<ABI::Windows::System::DispatcherQueueTimer*,IInspectable* >
#endif /* __cplusplus */
#endif

/* Headers for imported files */

#include <inspectable.h>
#include <asyncinfo.h>
#include <eventtoken.h>
#include <windowscontracts.h>
#include <windows.foundation.h>
#include <windows.storage.h>
#include <windows.storage.streams.h>

#ifdef __cplusplus
extern "C" {
#endif

#ifndef ____x_ABI_CWindows_CFoundation_CCollections_CIPropertySet_FWD_DEFINED__
#define ____x_ABI_CWindows_CFoundation_CCollections_CIPropertySet_FWD_DEFINED__
typedef interface __x_ABI_CWindows_CFoundation_CCollections_CIPropertySet __x_ABI_CWindows_CFoundation_CCollections_CIPropertySet;
#ifdef __cplusplus
#define __x_ABI_CWindows_CFoundation_CCollections_CIPropertySet ABI::Windows::Foundation::Collections::IPropertySet
namespace ABI {
    namespace Windows {
        namespace Foundation {
            namespace Collections {
                interface IPropertySet;
            }
        }
    }
}
#endif /* __cplusplus */
#endif

#ifndef ____x_ABI_CWindows_CStorage_CStreams_CIRandomAccessStreamReference_FWD_DEFINED__
#define ____x_ABI_CWindows_CStorage_CStreams_CIRandomAccessStreamReference_FWD_DEFINED__
typedef interface __x_ABI_CWindows_CStorage_CStreams_CIRandomAccessStreamReference __x_ABI_CWindows_CStorage_CStreams_CIRandomAccessStreamReference;
#ifdef __cplusplus
#define __x_ABI_CWindows_CStorage_CStreams_CIRandomAccessStreamReference ABI::Windows::Storage::Streams::IRandomAccessStreamReference
namespace ABI {
    namespace Windows {
        namespace Storage {
            namespace Streams {
                interface IRandomAccessStreamReference;
            }
        }
    }
}
#endif /* __cplusplus */
#endif

#if !defined(WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION)
#define WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION 0xe0000
#endif // defined(WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION)

#if WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION >= 0x50000
#ifndef ____x_ABI_CWindows_CSystem_CDispatcherQueuePriority_ENUM_DEFINED__
#define ____x_ABI_CWindows_CSystem_CDispatcherQueuePriority_ENUM_DEFINED__
#ifdef __cplusplus
} /* extern "C" */
namespace ABI {
    namespace Windows {
        namespace System {
            enum DispatcherQueuePriority {
                DispatcherQueuePriority_Low = -10,
                DispatcherQueuePriority_Normal = 0,
                DispatcherQueuePriority_High = 10
            };
        }
    }
}
extern "C" {
#else
enum __x_ABI_CWindows_CSystem_CDispatcherQueuePriority {
    DispatcherQueuePriority_Low = -10,
    DispatcherQueuePriority_Normal = 0,
    DispatcherQueuePriority_High = 10
};
#ifdef WIDL_using_Windows_System
#define DispatcherQueuePriority __x_ABI_CWindows_CSystem_CDispatcherQueuePriority
#endif /* WIDL_using_Windows_System */
#endif

#endif /* ____x_ABI_CWindows_CSystem_CDispatcherQueuePriority_ENUM_DEFINED__ */
#endif /* WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION >= 0x50000 */
#ifndef __cplusplus
typedef enum __x_ABI_CWindows_CSystem_CDispatcherQueuePriority __x_ABI_CWindows_CSystem_CDispatcherQueuePriority;
#endif /* __cplusplus */

#if WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION >= 0x10000
#ifndef ____x_ABI_CWindows_CSystem_CProcessorArchitecture_ENUM_DEFINED__
#define ____x_ABI_CWindows_CSystem_CProcessorArchitecture_ENUM_DEFINED__
#ifdef __cplusplus
} /* extern "C" */
namespace ABI {
    namespace Windows {
        namespace System {
            enum ProcessorArchitecture {
                ProcessorArchitecture_X86 = 0,
                ProcessorArchitecture_Arm = 5,
                ProcessorArchitecture_X64 = 9,
                ProcessorArchitecture_Neutral = 11,
#if WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION >= 0x80000
                ProcessorArchitecture_Arm64 = 12,
#endif /* WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION >= 0x80000 */
#if WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION >= 0x80000
                ProcessorArchitecture_X86OnArm64 = 14,
#endif /* WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION >= 0x80000 */
                ProcessorArchitecture_Unknown = 65535
            };
        }
    }
}
extern "C" {
#else
enum __x_ABI_CWindows_CSystem_CProcessorArchitecture {
    ProcessorArchitecture_X86 = 0,
    ProcessorArchitecture_Arm = 5,
    ProcessorArchitecture_X64 = 9,
    ProcessorArchitecture_Neutral = 11,
#if WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION >= 0x80000
    ProcessorArchitecture_Arm64 = 12,
#endif /* WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION >= 0x80000 */
#if WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION >= 0x80000
    ProcessorArchitecture_X86OnArm64 = 14,
#endif /* WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION >= 0x80000 */
    ProcessorArchitecture_Unknown = 65535
};
#ifdef WIDL_using_Windows_System
#define ProcessorArchitecture __x_ABI_CWindows_CSystem_CProcessorArchitecture
#endif /* WIDL_using_Windows_System */
#endif

#endif /* ____x_ABI_CWindows_CSystem_CProcessorArchitecture_ENUM_DEFINED__ */
#endif /* WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION >= 0x10000 */
#ifndef __cplusplus
typedef enum __x_ABI_CWindows_CSystem_CProcessorArchitecture __x_ABI_CWindows_CSystem_CProcessorArchitecture;
#endif /* __cplusplus */

#if WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION >= 0x10000
#ifndef ____x_ABI_CWindows_CSystem_CUserAuthenticationStatus_ENUM_DEFINED__
#define ____x_ABI_CWindows_CSystem_CUserAuthenticationStatus_ENUM_DEFINED__
#ifdef __cplusplus
} /* extern "C" */
namespace ABI {
    namespace Windows {
        namespace System {
            enum UserAuthenticationStatus {
                UserAuthenticationStatus_Unauthenticated = 0,
                UserAuthenticationStatus_LocallyAuthenticated = 1,
                UserAuthenticationStatus_RemotelyAuthenticated = 2
            };
        }
    }
}
extern "C" {
#else
enum __x_ABI_CWindows_CSystem_CUserAuthenticationStatus {
    UserAuthenticationStatus_Unauthenticated = 0,
    UserAuthenticationStatus_LocallyAuthenticated = 1,
    UserAuthenticationStatus_RemotelyAuthenticated = 2
};
#ifdef WIDL_using_Windows_System
#define UserAuthenticationStatus __x_ABI_CWindows_CSystem_CUserAuthenticationStatus
#endif /* WIDL_using_Windows_System */
#endif

#endif /* ____x_ABI_CWindows_CSystem_CUserAuthenticationStatus_ENUM_DEFINED__ */
#endif /* WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION >= 0x10000 */
#ifndef __cplusplus
typedef enum __x_ABI_CWindows_CSystem_CUserAuthenticationStatus __x_ABI_CWindows_CSystem_CUserAuthenticationStatus;
#endif /* __cplusplus */

#if WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION >= 0x10000
#ifndef ____x_ABI_CWindows_CSystem_CUserPictureSize_ENUM_DEFINED__
#define ____x_ABI_CWindows_CSystem_CUserPictureSize_ENUM_DEFINED__
#ifdef __cplusplus
} /* extern "C" */
namespace ABI {
    namespace Windows {
        namespace System {
            enum UserPictureSize {
                UserPictureSize_Size64x64 = 0,
                UserPictureSize_Size208x208 = 1,
                UserPictureSize_Size424x424 = 2,
                UserPictureSize_Size1080x1080 = 3
            };
        }
    }
}
extern "C" {
#else
enum __x_ABI_CWindows_CSystem_CUserPictureSize {
    UserPictureSize_Size64x64 = 0,
    UserPictureSize_Size208x208 = 1,
    UserPictureSize_Size424x424 = 2,
    UserPictureSize_Size1080x1080 = 3
};
#ifdef WIDL_using_Windows_System
#define UserPictureSize __x_ABI_CWindows_CSystem_CUserPictureSize
#endif /* WIDL_using_Windows_System */
#endif

#endif /* ____x_ABI_CWindows_CSystem_CUserPictureSize_ENUM_DEFINED__ */
#endif /* WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION >= 0x10000 */
#ifndef __cplusplus
typedef enum __x_ABI_CWindows_CSystem_CUserPictureSize __x_ABI_CWindows_CSystem_CUserPictureSize;
#endif /* __cplusplus */

#if WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION >= 0x10000
#ifndef ____x_ABI_CWindows_CSystem_CUserType_ENUM_DEFINED__
#define ____x_ABI_CWindows_CSystem_CUserType_ENUM_DEFINED__
#ifdef __cplusplus
} /* extern "C" */
namespace ABI {
    namespace Windows {
        namespace System {
            enum UserType {
                UserType_LocalUser = 0,
                UserType_RemoteUser = 1,
                UserType_LocalGuest = 2,
                UserType_RemoteGuest = 3,
#if WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION >= 0xb0000
                UserType_SystemManaged = 4
#endif /* WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION >= 0xb0000 */
            };
        }
    }
}
extern "C" {
#else
enum __x_ABI_CWindows_CSystem_CUserType {
    UserType_LocalUser = 0,
    UserType_RemoteUser = 1,
    UserType_LocalGuest = 2,
    UserType_RemoteGuest = 3,
#if WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION >= 0xb0000
    UserType_SystemManaged = 4
#endif /* WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION >= 0xb0000 */
};
#ifdef WIDL_using_Windows_System
#define UserType __x_ABI_CWindows_CSystem_CUserType
#endif /* WIDL_using_Windows_System */
#endif

#endif /* ____x_ABI_CWindows_CSystem_CUserType_ENUM_DEFINED__ */
#endif /* WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION >= 0x10000 */
#ifndef __cplusplus
typedef enum __x_ABI_CWindows_CSystem_CUserType __x_ABI_CWindows_CSystem_CUserType;
#endif /* __cplusplus */

#if WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION >= 0x10000
#ifndef ____x_ABI_CWindows_CSystem_CVirtualKey_ENUM_DEFINED__
#define ____x_ABI_CWindows_CSystem_CVirtualKey_ENUM_DEFINED__
#ifdef __cplusplus
} /* extern "C" */
namespace ABI {
    namespace Windows {
        namespace System {
            enum VirtualKey {
                VirtualKey_None = 0,
                VirtualKey_LeftButton = 1,
                VirtualKey_RightButton = 2,
                VirtualKey_Cancel = 3,
                VirtualKey_MiddleButton = 4,
                VirtualKey_XButton1 = 5,
                VirtualKey_XButton2 = 6,
                VirtualKey_Back = 8,
                VirtualKey_Tab = 9,
                VirtualKey_Clear = 12,
                VirtualKey_Enter = 13,
                VirtualKey_Shift = 16,
                VirtualKey_Control = 17,
                VirtualKey_Menu = 18,
                VirtualKey_Pause = 19,
                VirtualKey_CapitalLock = 20,
                VirtualKey_Kana = 21,
                VirtualKey_Hangul = 21,
#if WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION >= 0xa0000
                VirtualKey_ImeOn = 22,
#endif /* WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION >= 0xa0000 */
                VirtualKey_Junja = 23,
                VirtualKey_Final = 24,
                VirtualKey_Hanja = 25,
                VirtualKey_Kanji = 25,
#if WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION >= 0xa0000
                VirtualKey_ImeOff = 26,
#endif /* WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION >= 0xa0000 */
                VirtualKey_Escape = 27,
                VirtualKey_Convert = 28,
                VirtualKey_NonConvert = 29,
                VirtualKey_Accept = 30,
                VirtualKey_ModeChange = 31,
                VirtualKey_Space = 32,
                VirtualKey_PageUp = 33,
                VirtualKey_PageDown = 34,
                VirtualKey_End = 35,
                VirtualKey_Home = 36,
                VirtualKey_Left = 37,
                VirtualKey_Up = 38,
                VirtualKey_Right = 39,
                VirtualKey_Down = 40,
                VirtualKey_Select = 41,
                VirtualKey_Print = 42,
                VirtualKey_Execute = 43,
                VirtualKey_Snapshot = 44,
                VirtualKey_Insert = 45,
                VirtualKey_Delete = 46,
                VirtualKey_Help = 47,
                VirtualKey_Number0 = 48,
                VirtualKey_Number1 = 49,
                VirtualKey_Number2 = 50,
                VirtualKey_Number3 = 51,
                VirtualKey_Number4 = 52,
                VirtualKey_Number5 = 53,
                VirtualKey_Number6 = 54,
                VirtualKey_Number7 = 55,
                VirtualKey_Number8 = 56,
                VirtualKey_Number9 = 57,
                VirtualKey_A = 65,
                VirtualKey_B = 66,
                VirtualKey_C = 67,
                VirtualKey_D = 68,
                VirtualKey_E = 69,
                VirtualKey_F = 70,
                VirtualKey_G = 71,
                VirtualKey_H = 72,
                VirtualKey_I = 73,
                VirtualKey_J = 74,
                VirtualKey_K = 75,
                VirtualKey_L = 76,
                VirtualKey_M = 77,
                VirtualKey_N = 78,
                VirtualKey_O = 79,
                VirtualKey_P = 80,
                VirtualKey_Q = 81,
                VirtualKey_R = 82,
                VirtualKey_S = 83,
                VirtualKey_T = 84,
                VirtualKey_U = 85,
                VirtualKey_V = 86,
                VirtualKey_W = 87,
                VirtualKey_X = 88,
                VirtualKey_Y = 89,
                VirtualKey_Z = 90,
                VirtualKey_LeftWindows = 91,
                VirtualKey_RightWindows = 92,
                VirtualKey_Application = 93,
                VirtualKey_Sleep = 95,
                VirtualKey_NumberPad0 = 96,
                VirtualKey_NumberPad1 = 97,
                VirtualKey_NumberPad2 = 98,
                VirtualKey_NumberPad3 = 99,
                VirtualKey_NumberPad4 = 100,
                VirtualKey_NumberPad5 = 101,
                VirtualKey_NumberPad6 = 102,
                VirtualKey_NumberPad7 = 103,
                VirtualKey_NumberPad8 = 104,
                VirtualKey_NumberPad9 = 105,
                VirtualKey_Multiply = 106,
                VirtualKey_Add = 107,
                VirtualKey_Separator = 108,
                VirtualKey_Subtract = 109,
                VirtualKey_Decimal = 110,
                VirtualKey_Divide = 111,
                VirtualKey_F1 = 112,
                VirtualKey_F2 = 113,
                VirtualKey_F3 = 114,
                VirtualKey_F4 = 115,
                VirtualKey_F5 = 116,
                VirtualKey_F6 = 117,
                VirtualKey_F7 = 118,
                VirtualKey_F8 = 119,
                VirtualKey_F9 = 120,
                VirtualKey_F10 = 121,
                VirtualKey_F11 = 122,
                VirtualKey_F12 = 123,
                VirtualKey_F13 = 124,
                VirtualKey_F14 = 125,
                VirtualKey_F15 = 126,
                VirtualKey_F16 = 127,
                VirtualKey_F17 = 128,
                VirtualKey_F18 = 129,
                VirtualKey_F19 = 130,
                VirtualKey_F20 = 131,
                VirtualKey_F21 = 132,
                VirtualKey_F22 = 133,
                VirtualKey_F23 = 134,
                VirtualKey_F24 = 135,
#if WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION >= 0x10000
                VirtualKey_NavigationView = 136,
#endif /* WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION >= 0x10000 */
#if WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION >= 0x10000
                VirtualKey_NavigationMenu = 137,
#endif /* WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION >= 0x10000 */
#if WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION >= 0x10000
                VirtualKey_NavigationUp = 138,
#endif /* WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION >= 0x10000 */
#if WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION >= 0x10000
                VirtualKey_NavigationDown = 139,
#endif /* WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION >= 0x10000 */
#if WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION >= 0x10000
                VirtualKey_NavigationLeft = 140,
#endif /* WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION >= 0x10000 */
#if WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION >= 0x10000
                VirtualKey_NavigationRight = 141,
#endif /* WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION >= 0x10000 */
#if WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION >= 0x10000
                VirtualKey_NavigationAccept = 142,
#endif /* WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION >= 0x10000 */
#if WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION >= 0x10000
                VirtualKey_NavigationCancel = 143,
#endif /* WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION >= 0x10000 */
                VirtualKey_NumberKeyLock = 144,
                VirtualKey_Scroll = 145,
                VirtualKey_LeftShift = 160,
                VirtualKey_RightShift = 161,
                VirtualKey_LeftControl = 162,
                VirtualKey_RightControl = 163,
                VirtualKey_LeftMenu = 164,
                VirtualKey_RightMenu = 165,
#if WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION >= 0x10000
                VirtualKey_GoBack = 166,
#endif /* WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION >= 0x10000 */
#if WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION >= 0x10000
                VirtualKey_GoForward = 167,
#endif /* WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION >= 0x10000 */
#if WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION >= 0x10000
                VirtualKey_Refresh = 168,
#endif /* WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION >= 0x10000 */
#if WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION >= 0x10000
                VirtualKey_Stop = 169,
#endif /* WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION >= 0x10000 */
#if WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION >= 0x10000
                VirtualKey_Search = 170,
#endif /* WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION >= 0x10000 */
#if WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION >= 0x10000
                VirtualKey_Favorites = 171,
#endif /* WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION >= 0x10000 */
#if WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION >= 0x10000
                VirtualKey_GoHome = 172,
#endif /* WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION >= 0x10000 */
#if WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION >= 0x10000
                VirtualKey_GamepadA = 195,
#endif /* WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION >= 0x10000 */
#if WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION >= 0x10000
                VirtualKey_GamepadB = 196,
#endif /* WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION >= 0x10000 */
#if WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION >= 0x10000
                VirtualKey_GamepadX = 197,
#endif /* WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION >= 0x10000 */
#if WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION >= 0x10000
                VirtualKey_GamepadY = 198,
#endif /* WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION >= 0x10000 */
#if WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION >= 0x10000
                VirtualKey_GamepadRightShoulder = 199,
#endif /* WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION >= 0x10000 */
#if WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION >= 0x10000
                VirtualKey_GamepadLeftShoulder = 200,
#endif /* WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION >= 0x10000 */
#if WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION >= 0x10000
                VirtualKey_GamepadLeftTrigger = 201,
#endif /* WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION >= 0x10000 */
#if WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION >= 0x10000
                VirtualKey_GamepadRightTrigger = 202,
#endif /* WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION >= 0x10000 */
#if WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION >= 0x10000
                VirtualKey_GamepadDPadUp = 203,
#endif /* WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION >= 0x10000 */
#if WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION >= 0x10000
                VirtualKey_GamepadDPadDown = 204,
#endif /* WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION >= 0x10000 */
#if WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION >= 0x10000
                VirtualKey_GamepadDPadLeft = 205,
#endif /* WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION >= 0x10000 */
#if WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION >= 0x10000
                VirtualKey_GamepadDPadRight = 206,
#endif /* WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION >= 0x10000 */
#if WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION >= 0x10000
                VirtualKey_GamepadMenu = 207,
#endif /* WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION >= 0x10000 */
#if WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION >= 0x10000
                VirtualKey_GamepadView = 208,
#endif /* WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION >= 0x10000 */
#if WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION >= 0x10000
                VirtualKey_GamepadLeftThumbstickButton = 209,
#endif /* WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION >= 0x10000 */
#if WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION >= 0x10000
                VirtualKey_GamepadRightThumbstickButton = 210,
#endif /* WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION >= 0x10000 */
#if WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION >= 0x10000
                VirtualKey_GamepadLeftThumbstickUp = 211,
#endif /* WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION >= 0x10000 */
#if WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION >= 0x10000
                VirtualKey_GamepadLeftThumbstickDown = 212,
#endif /* WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION >= 0x10000 */
#if WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION >= 0x10000
                VirtualKey_GamepadLeftThumbstickRight = 213,
#endif /* WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION >= 0x10000 */
#if WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION >= 0x10000
                VirtualKey_GamepadLeftThumbstickLeft = 214,
#endif /* WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION >= 0x10000 */
#if WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION >= 0x10000
                VirtualKey_GamepadRightThumbstickUp = 215,
#endif /* WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION >= 0x10000 */
#if WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION >= 0x10000
                VirtualKey_GamepadRightThumbstickDown = 216,
#endif /* WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION >= 0x10000 */
#if WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION >= 0x10000
                VirtualKey_GamepadRightThumbstickRight = 217,
#endif /* WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION >= 0x10000 */
#if WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION >= 0x10000
                VirtualKey_GamepadRightThumbstickLeft = 218
#endif /* WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION >= 0x10000 */
            };
        }
    }
}
extern "C" {
#else
enum __x_ABI_CWindows_CSystem_CVirtualKey {
    VirtualKey_None = 0,
    VirtualKey_LeftButton = 1,
    VirtualKey_RightButton = 2,
    VirtualKey_Cancel = 3,
    VirtualKey_MiddleButton = 4,
    VirtualKey_XButton1 = 5,
    VirtualKey_XButton2 = 6,
    VirtualKey_Back = 8,
    VirtualKey_Tab = 9,
    VirtualKey_Clear = 12,
    VirtualKey_Enter = 13,
    VirtualKey_Shift = 16,
    VirtualKey_Control = 17,
    VirtualKey_Menu = 18,
    VirtualKey_Pause = 19,
    VirtualKey_CapitalLock = 20,
    VirtualKey_Kana = 21,
    VirtualKey_Hangul = 21,
#if WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION >= 0xa0000
    VirtualKey_ImeOn = 22,
#endif /* WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION >= 0xa0000 */
    VirtualKey_Junja = 23,
    VirtualKey_Final = 24,
    VirtualKey_Hanja = 25,
    VirtualKey_Kanji = 25,
#if WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION >= 0xa0000
    VirtualKey_ImeOff = 26,
#endif /* WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION >= 0xa0000 */
    VirtualKey_Escape = 27,
    VirtualKey_Convert = 28,
    VirtualKey_NonConvert = 29,
    VirtualKey_Accept = 30,
    VirtualKey_ModeChange = 31,
    VirtualKey_Space = 32,
    VirtualKey_PageUp = 33,
    VirtualKey_PageDown = 34,
    VirtualKey_End = 35,
    VirtualKey_Home = 36,
    VirtualKey_Left = 37,
    VirtualKey_Up = 38,
    VirtualKey_Right = 39,
    VirtualKey_Down = 40,
    VirtualKey_Select = 41,
    VirtualKey_Print = 42,
    VirtualKey_Execute = 43,
    VirtualKey_Snapshot = 44,
    VirtualKey_Insert = 45,
    VirtualKey_Delete = 46,
    VirtualKey_Help = 47,
    VirtualKey_Number0 = 48,
    VirtualKey_Number1 = 49,
    VirtualKey_Number2 = 50,
    VirtualKey_Number3 = 51,
    VirtualKey_Number4 = 52,
    VirtualKey_Number5 = 53,
    VirtualKey_Number6 = 54,
    VirtualKey_Number7 = 55,
    VirtualKey_Number8 = 56,
    VirtualKey_Number9 = 57,
    VirtualKey_A = 65,
    VirtualKey_B = 66,
    VirtualKey_C = 67,
    VirtualKey_D = 68,
    VirtualKey_E = 69,
    VirtualKey_F = 70,
    VirtualKey_G = 71,
    VirtualKey_H = 72,
    VirtualKey_I = 73,
    VirtualKey_J = 74,
    VirtualKey_K = 75,
    VirtualKey_L = 76,
    VirtualKey_M = 77,
    VirtualKey_N = 78,
    VirtualKey_O = 79,
    VirtualKey_P = 80,
    VirtualKey_Q = 81,
    VirtualKey_R = 82,
    VirtualKey_S = 83,
    VirtualKey_T = 84,
    VirtualKey_U = 85,
    VirtualKey_V = 86,
    VirtualKey_W = 87,
    VirtualKey_X = 88,
    VirtualKey_Y = 89,
    VirtualKey_Z = 90,
    VirtualKey_LeftWindows = 91,
    VirtualKey_RightWindows = 92,
    VirtualKey_Application = 93,
    VirtualKey_Sleep = 95,
    VirtualKey_NumberPad0 = 96,
    VirtualKey_NumberPad1 = 97,
    VirtualKey_NumberPad2 = 98,
    VirtualKey_NumberPad3 = 99,
    VirtualKey_NumberPad4 = 100,
    VirtualKey_NumberPad5 = 101,
    VirtualKey_NumberPad6 = 102,
    VirtualKey_NumberPad7 = 103,
    VirtualKey_NumberPad8 = 104,
    VirtualKey_NumberPad9 = 105,
    VirtualKey_Multiply = 106,
    VirtualKey_Add = 107,
    VirtualKey_Separator = 108,
    VirtualKey_Subtract = 109,
    VirtualKey_Decimal = 110,
    VirtualKey_Divide = 111,
    VirtualKey_F1 = 112,
    VirtualKey_F2 = 113,
    VirtualKey_F3 = 114,
    VirtualKey_F4 = 115,
    VirtualKey_F5 = 116,
    VirtualKey_F6 = 117,
    VirtualKey_F7 = 118,
    VirtualKey_F8 = 119,
    VirtualKey_F9 = 120,
    VirtualKey_F10 = 121,
    VirtualKey_F11 = 122,
    VirtualKey_F12 = 123,
    VirtualKey_F13 = 124,
    VirtualKey_F14 = 125,
    VirtualKey_F15 = 126,
    VirtualKey_F16 = 127,
    VirtualKey_F17 = 128,
    VirtualKey_F18 = 129,
    VirtualKey_F19 = 130,
    VirtualKey_F20 = 131,
    VirtualKey_F21 = 132,
    VirtualKey_F22 = 133,
    VirtualKey_F23 = 134,
    VirtualKey_F24 = 135,
#if WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION >= 0x10000
    VirtualKey_NavigationView = 136,
#endif /* WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION >= 0x10000 */
#if WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION >= 0x10000
    VirtualKey_NavigationMenu = 137,
#endif /* WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION >= 0x10000 */
#if WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION >= 0x10000
    VirtualKey_NavigationUp = 138,
#endif /* WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION >= 0x10000 */
#if WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION >= 0x10000
    VirtualKey_NavigationDown = 139,
#endif /* WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION >= 0x10000 */
#if WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION >= 0x10000
    VirtualKey_NavigationLeft = 140,
#endif /* WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION >= 0x10000 */
#if WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION >= 0x10000
    VirtualKey_NavigationRight = 141,
#endif /* WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION >= 0x10000 */
#if WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION >= 0x10000
    VirtualKey_NavigationAccept = 142,
#endif /* WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION >= 0x10000 */
#if WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION >= 0x10000
    VirtualKey_NavigationCancel = 143,
#endif /* WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION >= 0x10000 */
    VirtualKey_NumberKeyLock = 144,
    VirtualKey_Scroll = 145,
    VirtualKey_LeftShift = 160,
    VirtualKey_RightShift = 161,
    VirtualKey_LeftControl = 162,
    VirtualKey_RightControl = 163,
    VirtualKey_LeftMenu = 164,
    VirtualKey_RightMenu = 165,
#if WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION >= 0x10000
    VirtualKey_GoBack = 166,
#endif /* WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION >= 0x10000 */
#if WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION >= 0x10000
    VirtualKey_GoForward = 167,
#endif /* WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION >= 0x10000 */
#if WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION >= 0x10000
    VirtualKey_Refresh = 168,
#endif /* WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION >= 0x10000 */
#if WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION >= 0x10000
    VirtualKey_Stop = 169,
#endif /* WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION >= 0x10000 */
#if WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION >= 0x10000
    VirtualKey_Search = 170,
#endif /* WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION >= 0x10000 */
#if WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION >= 0x10000
    VirtualKey_Favorites = 171,
#endif /* WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION >= 0x10000 */
#if WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION >= 0x10000
    VirtualKey_GoHome = 172,
#endif /* WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION >= 0x10000 */
#if WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION >= 0x10000
    VirtualKey_GamepadA = 195,
#endif /* WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION >= 0x10000 */
#if WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION >= 0x10000
    VirtualKey_GamepadB = 196,
#endif /* WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION >= 0x10000 */
#if WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION >= 0x10000
    VirtualKey_GamepadX = 197,
#endif /* WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION >= 0x10000 */
#if WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION >= 0x10000
    VirtualKey_GamepadY = 198,
#endif /* WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION >= 0x10000 */
#if WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION >= 0x10000
    VirtualKey_GamepadRightShoulder = 199,
#endif /* WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION >= 0x10000 */
#if WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION >= 0x10000
    VirtualKey_GamepadLeftShoulder = 200,
#endif /* WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION >= 0x10000 */
#if WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION >= 0x10000
    VirtualKey_GamepadLeftTrigger = 201,
#endif /* WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION >= 0x10000 */
#if WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION >= 0x10000
    VirtualKey_GamepadRightTrigger = 202,
#endif /* WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION >= 0x10000 */
#if WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION >= 0x10000
    VirtualKey_GamepadDPadUp = 203,
#endif /* WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION >= 0x10000 */
#if WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION >= 0x10000
    VirtualKey_GamepadDPadDown = 204,
#endif /* WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION >= 0x10000 */
#if WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION >= 0x10000
    VirtualKey_GamepadDPadLeft = 205,
#endif /* WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION >= 0x10000 */
#if WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION >= 0x10000
    VirtualKey_GamepadDPadRight = 206,
#endif /* WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION >= 0x10000 */
#if WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION >= 0x10000
    VirtualKey_GamepadMenu = 207,
#endif /* WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION >= 0x10000 */
#if WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION >= 0x10000
    VirtualKey_GamepadView = 208,
#endif /* WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION >= 0x10000 */
#if WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION >= 0x10000
    VirtualKey_GamepadLeftThumbstickButton = 209,
#endif /* WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION >= 0x10000 */
#if WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION >= 0x10000
    VirtualKey_GamepadRightThumbstickButton = 210,
#endif /* WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION >= 0x10000 */
#if WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION >= 0x10000
    VirtualKey_GamepadLeftThumbstickUp = 211,
#endif /* WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION >= 0x10000 */
#if WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION >= 0x10000
    VirtualKey_GamepadLeftThumbstickDown = 212,
#endif /* WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION >= 0x10000 */
#if WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION >= 0x10000
    VirtualKey_GamepadLeftThumbstickRight = 213,
#endif /* WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION >= 0x10000 */
#if WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION >= 0x10000
    VirtualKey_GamepadLeftThumbstickLeft = 214,
#endif /* WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION >= 0x10000 */
#if WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION >= 0x10000
    VirtualKey_GamepadRightThumbstickUp = 215,
#endif /* WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION >= 0x10000 */
#if WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION >= 0x10000
    VirtualKey_GamepadRightThumbstickDown = 216,
#endif /* WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION >= 0x10000 */
#if WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION >= 0x10000
    VirtualKey_GamepadRightThumbstickRight = 217,
#endif /* WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION >= 0x10000 */
#if WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION >= 0x10000
    VirtualKey_GamepadRightThumbstickLeft = 218
#endif /* WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION >= 0x10000 */
};
#ifdef WIDL_using_Windows_System
#define VirtualKey __x_ABI_CWindows_CSystem_CVirtualKey
#endif /* WIDL_using_Windows_System */
#endif

#endif /* ____x_ABI_CWindows_CSystem_CVirtualKey_ENUM_DEFINED__ */
#endif /* WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION >= 0x10000 */
#ifndef __cplusplus
typedef enum __x_ABI_CWindows_CSystem_CVirtualKey __x_ABI_CWindows_CSystem_CVirtualKey;
#endif /* __cplusplus */

#if WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION >= 0x10000
#ifndef ____x_ABI_CWindows_CSystem_CVirtualKeyModifiers_ENUM_DEFINED__
#define ____x_ABI_CWindows_CSystem_CVirtualKeyModifiers_ENUM_DEFINED__
#ifdef __cplusplus
} /* extern "C" */
namespace ABI {
    namespace Windows {
        namespace System {
            enum VirtualKeyModifiers {
                VirtualKeyModifiers_None = 0x0,
                VirtualKeyModifiers_Control = 0x1,
                VirtualKeyModifiers_Menu = 0x2,
                VirtualKeyModifiers_Shift = 0x4,
                VirtualKeyModifiers_Windows = 0x8
            };
        }
    }
}
extern "C" {
#else
enum __x_ABI_CWindows_CSystem_CVirtualKeyModifiers {
    VirtualKeyModifiers_None = 0x0,
    VirtualKeyModifiers_Control = 0x1,
    VirtualKeyModifiers_Menu = 0x2,
    VirtualKeyModifiers_Shift = 0x4,
    VirtualKeyModifiers_Windows = 0x8
};
#ifdef WIDL_using_Windows_System
#define VirtualKeyModifiers __x_ABI_CWindows_CSystem_CVirtualKeyModifiers
#endif /* WIDL_using_Windows_System */
#endif

#endif /* ____x_ABI_CWindows_CSystem_CVirtualKeyModifiers_ENUM_DEFINED__ */
#endif /* WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION >= 0x10000 */
#ifndef __cplusplus
typedef enum __x_ABI_CWindows_CSystem_CVirtualKeyModifiers __x_ABI_CWindows_CSystem_CVirtualKeyModifiers;
#endif /* __cplusplus */

#ifndef ____x_ABI_CWindows_CSystem_CIDispatcherQueue_FWD_DEFINED__
#define ____x_ABI_CWindows_CSystem_CIDispatcherQueue_FWD_DEFINED__
typedef interface __x_ABI_CWindows_CSystem_CIDispatcherQueue __x_ABI_CWindows_CSystem_CIDispatcherQueue;
#ifdef __cplusplus
#define __x_ABI_CWindows_CSystem_CIDispatcherQueue ABI::Windows::System::IDispatcherQueue
namespace ABI {
    namespace Windows {
        namespace System {
            interface IDispatcherQueue;
        }
    }
}
#endif /* __cplusplus */
#endif

#ifndef ____x_ABI_CWindows_CSystem_CIDispatcherQueue2_FWD_DEFINED__
#define ____x_ABI_CWindows_CSystem_CIDispatcherQueue2_FWD_DEFINED__
typedef interface __x_ABI_CWindows_CSystem_CIDispatcherQueue2 __x_ABI_CWindows_CSystem_CIDispatcherQueue2;
#ifdef __cplusplus
#define __x_ABI_CWindows_CSystem_CIDispatcherQueue2 ABI::Windows::System::IDispatcherQueue2
namespace ABI {
    namespace Windows {
        namespace System {
            interface IDispatcherQueue2;
        }
    }
}
#endif /* __cplusplus */
#endif

#ifndef ____x_ABI_CWindows_CSystem_CIDispatcherQueueController_FWD_DEFINED__
#define ____x_ABI_CWindows_CSystem_CIDispatcherQueueController_FWD_DEFINED__
typedef interface __x_ABI_CWindows_CSystem_CIDispatcherQueueController __x_ABI_CWindows_CSystem_CIDispatcherQueueController;
#ifdef __cplusplus
#define __x_ABI_CWindows_CSystem_CIDispatcherQueueController ABI::Windows::System::IDispatcherQueueController
namespace ABI {
    namespace Windows {
        namespace System {
            interface IDispatcherQueueController;
        }
    }
}
#endif /* __cplusplus */
#endif

#ifndef ____x_ABI_CWindows_CSystem_CIDispatcherQueueControllerStatics_FWD_DEFINED__
#define ____x_ABI_CWindows_CSystem_CIDispatcherQueueControllerStatics_FWD_DEFINED__
typedef interface __x_ABI_CWindows_CSystem_CIDispatcherQueueControllerStatics __x_ABI_CWindows_CSystem_CIDispatcherQueueControllerStatics;
#ifdef __cplusplus
#define __x_ABI_CWindows_CSystem_CIDispatcherQueueControllerStatics ABI::Windows::System::IDispatcherQueueControllerStatics
namespace ABI {
    namespace Windows {
        namespace System {
            interface IDispatcherQueueControllerStatics;
        }
    }
}
#endif /* __cplusplus */
#endif

#ifndef ____x_ABI_CWindows_CSystem_CIDispatcherQueueShutdownStartingEventArgs_FWD_DEFINED__
#define ____x_ABI_CWindows_CSystem_CIDispatcherQueueShutdownStartingEventArgs_FWD_DEFINED__
typedef interface __x_ABI_CWindows_CSystem_CIDispatcherQueueShutdownStartingEventArgs __x_ABI_CWindows_CSystem_CIDispatcherQueueShutdownStartingEventArgs;
#ifdef __cplusplus
#define __x_ABI_CWindows_CSystem_CIDispatcherQueueShutdownStartingEventArgs ABI::Windows::System::IDispatcherQueueShutdownStartingEventArgs
namespace ABI {
    namespace Windows {
        namespace System {
            interface IDispatcherQueueShutdownStartingEventArgs;
        }
    }
}
#endif /* __cplusplus */
#endif

#ifndef ____x_ABI_CWindows_CSystem_CIDispatcherQueueStatics_FWD_DEFINED__
#define ____x_ABI_CWindows_CSystem_CIDispatcherQueueStatics_FWD_DEFINED__
typedef interface __x_ABI_CWindows_CSystem_CIDispatcherQueueStatics __x_ABI_CWindows_CSystem_CIDispatcherQueueStatics;
#ifdef __cplusplus
#define __x_ABI_CWindows_CSystem_CIDispatcherQueueStatics ABI::Windows::System::IDispatcherQueueStatics
namespace ABI {
    namespace Windows {
        namespace System {
            interface IDispatcherQueueStatics;
        }
    }
}
#endif /* __cplusplus */
#endif

#ifndef ____x_ABI_CWindows_CSystem_CIDispatcherQueueTimer_FWD_DEFINED__
#define ____x_ABI_CWindows_CSystem_CIDispatcherQueueTimer_FWD_DEFINED__
typedef interface __x_ABI_CWindows_CSystem_CIDispatcherQueueTimer __x_ABI_CWindows_CSystem_CIDispatcherQueueTimer;
#ifdef __cplusplus
#define __x_ABI_CWindows_CSystem_CIDispatcherQueueTimer ABI::Windows::System::IDispatcherQueueTimer
namespace ABI {
    namespace Windows {
        namespace System {
            interface IDispatcherQueueTimer;
        }
    }
}
#endif /* __cplusplus */
#endif

#ifndef ____x_ABI_CWindows_CSystem_CIUser_FWD_DEFINED__
#define ____x_ABI_CWindows_CSystem_CIUser_FWD_DEFINED__
typedef interface __x_ABI_CWindows_CSystem_CIUser __x_ABI_CWindows_CSystem_CIUser;
#ifdef __cplusplus
#define __x_ABI_CWindows_CSystem_CIUser ABI::Windows::System::IUser
namespace ABI {
    namespace Windows {
        namespace System {
            interface IUser;
        }
    }
}
#endif /* __cplusplus */
#endif

#ifndef ____x_ABI_CWindows_CSystem_CIUserStatics_FWD_DEFINED__
#define ____x_ABI_CWindows_CSystem_CIUserStatics_FWD_DEFINED__
typedef interface __x_ABI_CWindows_CSystem_CIUserStatics __x_ABI_CWindows_CSystem_CIUserStatics;
#ifdef __cplusplus
#define __x_ABI_CWindows_CSystem_CIUserStatics ABI::Windows::System::IUserStatics
namespace ABI {
    namespace Windows {
        namespace System {
            interface IUserStatics;
        }
    }
}
#endif /* __cplusplus */
#endif

#ifndef ____x_ABI_CWindows_CSystem_CIUserChangedEventArgs_FWD_DEFINED__
#define ____x_ABI_CWindows_CSystem_CIUserChangedEventArgs_FWD_DEFINED__
typedef interface __x_ABI_CWindows_CSystem_CIUserChangedEventArgs __x_ABI_CWindows_CSystem_CIUserChangedEventArgs;
#ifdef __cplusplus
#define __x_ABI_CWindows_CSystem_CIUserChangedEventArgs ABI::Windows::System::IUserChangedEventArgs
namespace ABI {
    namespace Windows {
        namespace System {
            interface IUserChangedEventArgs;
        }
    }
}
#endif /* __cplusplus */
#endif

#ifndef ____x_ABI_CWindows_CSystem_CIUserChangedEventArgs2_FWD_DEFINED__
#define ____x_ABI_CWindows_CSystem_CIUserChangedEventArgs2_FWD_DEFINED__
typedef interface __x_ABI_CWindows_CSystem_CIUserChangedEventArgs2 __x_ABI_CWindows_CSystem_CIUserChangedEventArgs2;
#ifdef __cplusplus
#define __x_ABI_CWindows_CSystem_CIUserChangedEventArgs2 ABI::Windows::System::IUserChangedEventArgs2
namespace ABI {
    namespace Windows {
        namespace System {
            interface IUserChangedEventArgs2;
        }
    }
}
#endif /* __cplusplus */
#endif

#ifndef ____FIAsyncOperation_1_Windows__CFoundation__CCollections__CIPropertySet_FWD_DEFINED__
#define ____FIAsyncOperation_1_Windows__CFoundation__CCollections__CIPropertySet_FWD_DEFINED__
typedef interface __FIAsyncOperation_1_Windows__CFoundation__CCollections__CIPropertySet __FIAsyncOperation_1_Windows__CFoundation__CCollections__CIPropertySet;
#ifdef __cplusplus
#define __FIAsyncOperation_1_Windows__CFoundation__CCollections__CIPropertySet ABI::Windows::Foundation::IAsyncOperation<ABI::Windows::Foundation::Collections::IPropertySet* >
#endif /* __cplusplus */
#endif

#ifndef ____FIAsyncOperation_1_Windows__CStorage__CStreams__CIRandomAccessStreamReference_FWD_DEFINED__
#define ____FIAsyncOperation_1_Windows__CStorage__CStreams__CIRandomAccessStreamReference_FWD_DEFINED__
typedef interface __FIAsyncOperation_1_Windows__CStorage__CStreams__CIRandomAccessStreamReference __FIAsyncOperation_1_Windows__CStorage__CStreams__CIRandomAccessStreamReference;
#ifdef __cplusplus
#define __FIAsyncOperation_1_Windows__CStorage__CStreams__CIRandomAccessStreamReference ABI::Windows::Foundation::IAsyncOperation<ABI::Windows::Storage::Streams::IRandomAccessStreamReference* >
#endif /* __cplusplus */
#endif

/*****************************************************************************
 * IDispatcherQueueHandler interface
 */
#if WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION >= 0x50000
#ifndef ____x_ABI_CWindows_CSystem_CIDispatcherQueueHandler_INTERFACE_DEFINED__
#define ____x_ABI_CWindows_CSystem_CIDispatcherQueueHandler_INTERFACE_DEFINED__

DEFINE_GUID(IID___x_ABI_CWindows_CSystem_CIDispatcherQueueHandler, 0xdfa2dc9c, 0x1a2d, 0x4917, 0x98,0xf2, 0x93,0x9a,0xf1,0xd6,0xe0,0xc8);
#if defined(__cplusplus) && !defined(CINTERFACE)
} /* extern "C" */
namespace ABI {
    namespace Windows {
        namespace System {
            MIDL_INTERFACE("dfa2dc9c-1a2d-4917-98f2-939af1d6e0c8")
            IDispatcherQueueHandler : public IUnknown
            {
                virtual HRESULT STDMETHODCALLTYPE Invoke(
                    ) = 0;

            };
        }
    }
}
extern "C" {
#ifdef __CRT_UUID_DECL
__CRT_UUID_DECL(__x_ABI_CWindows_CSystem_CIDispatcherQueueHandler, 0xdfa2dc9c, 0x1a2d, 0x4917, 0x98,0xf2, 0x93,0x9a,0xf1,0xd6,0xe0,0xc8)
#endif
#else
typedef struct __x_ABI_CWindows_CSystem_CIDispatcherQueueHandlerVtbl {
    BEGIN_INTERFACE

    /*** IUnknown methods ***/
    HRESULT (STDMETHODCALLTYPE *QueryInterface)(
        __x_ABI_CWindows_CSystem_CIDispatcherQueueHandler *This,
        REFIID riid,
        void **ppvObject);

    ULONG (STDMETHODCALLTYPE *AddRef)(
        __x_ABI_CWindows_CSystem_CIDispatcherQueueHandler *This);

    ULONG (STDMETHODCALLTYPE *Release)(
        __x_ABI_CWindows_CSystem_CIDispatcherQueueHandler *This);

    /*** IDispatcherQueueHandler methods ***/
    HRESULT (STDMETHODCALLTYPE *Invoke)(
        __x_ABI_CWindows_CSystem_CIDispatcherQueueHandler *This);

    END_INTERFACE
} __x_ABI_CWindows_CSystem_CIDispatcherQueueHandlerVtbl;

interface __x_ABI_CWindows_CSystem_CIDispatcherQueueHandler {
    CONST_VTBL __x_ABI_CWindows_CSystem_CIDispatcherQueueHandlerVtbl* lpVtbl;
};

#ifdef COBJMACROS
#ifndef WIDL_C_INLINE_WRAPPERS
/*** IUnknown methods ***/
#define __x_ABI_CWindows_CSystem_CIDispatcherQueueHandler_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
#define __x_ABI_CWindows_CSystem_CIDispatcherQueueHandler_AddRef(This) (This)->lpVtbl->AddRef(This)
#define __x_ABI_CWindows_CSystem_CIDispatcherQueueHandler_Release(This) (This)->lpVtbl->Release(This)
/*** IDispatcherQueueHandler methods ***/
#define __x_ABI_CWindows_CSystem_CIDispatcherQueueHandler_Invoke(This) (This)->lpVtbl->Invoke(This)
#else
/*** IUnknown methods ***/
static inline HRESULT __x_ABI_CWindows_CSystem_CIDispatcherQueueHandler_QueryInterface(__x_ABI_CWindows_CSystem_CIDispatcherQueueHandler* This,REFIID riid,void **ppvObject) {
    return This->lpVtbl->QueryInterface(This,riid,ppvObject);
}
static inline ULONG __x_ABI_CWindows_CSystem_CIDispatcherQueueHandler_AddRef(__x_ABI_CWindows_CSystem_CIDispatcherQueueHandler* This) {
    return This->lpVtbl->AddRef(This);
}
static inline ULONG __x_ABI_CWindows_CSystem_CIDispatcherQueueHandler_Release(__x_ABI_CWindows_CSystem_CIDispatcherQueueHandler* This) {
    return This->lpVtbl->Release(This);
}
/*** IDispatcherQueueHandler methods ***/
static inline HRESULT __x_ABI_CWindows_CSystem_CIDispatcherQueueHandler_Invoke(__x_ABI_CWindows_CSystem_CIDispatcherQueueHandler* This) {
    return This->lpVtbl->Invoke(This);
}
#endif
#ifdef WIDL_using_Windows_System
#define IID_IDispatcherQueueHandler IID___x_ABI_CWindows_CSystem_CIDispatcherQueueHandler
#define IDispatcherQueueHandlerVtbl __x_ABI_CWindows_CSystem_CIDispatcherQueueHandlerVtbl
#define IDispatcherQueueHandler __x_ABI_CWindows_CSystem_CIDispatcherQueueHandler
#define IDispatcherQueueHandler_QueryInterface __x_ABI_CWindows_CSystem_CIDispatcherQueueHandler_QueryInterface
#define IDispatcherQueueHandler_AddRef __x_ABI_CWindows_CSystem_CIDispatcherQueueHandler_AddRef
#define IDispatcherQueueHandler_Release __x_ABI_CWindows_CSystem_CIDispatcherQueueHandler_Release
#define IDispatcherQueueHandler_Invoke __x_ABI_CWindows_CSystem_CIDispatcherQueueHandler_Invoke
#endif /* WIDL_using_Windows_System */
#endif

#endif

#endif  /* ____x_ABI_CWindows_CSystem_CIDispatcherQueueHandler_INTERFACE_DEFINED__ */
#endif /* WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION >= 0x50000 */

/*****************************************************************************
 * IDispatcherQueue interface
 */
#if WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION >= 0x50000
#ifndef ____x_ABI_CWindows_CSystem_CIDispatcherQueue_INTERFACE_DEFINED__
#define ____x_ABI_CWindows_CSystem_CIDispatcherQueue_INTERFACE_DEFINED__

DEFINE_GUID(IID___x_ABI_CWindows_CSystem_CIDispatcherQueue, 0x603e88e4, 0xa338, 0x4ffe, 0xa4,0x57, 0xa5,0xcf,0xb9,0xce,0xb8,0x99);
#if defined(__cplusplus) && !defined(CINTERFACE)
} /* extern "C" */
namespace ABI {
    namespace Windows {
        namespace System {
            MIDL_INTERFACE("603e88e4-a338-4ffe-a457-a5cfb9ceb899")
            IDispatcherQueue : public IInspectable
            {
                virtual HRESULT STDMETHODCALLTYPE CreateTimer(
                    ABI::Windows::System::IDispatcherQueueTimer **result) = 0;

                virtual HRESULT STDMETHODCALLTYPE TryEnqueue(
                    ABI::Windows::System::IDispatcherQueueHandler *callback,
                    boolean *result) = 0;

                virtual HRESULT STDMETHODCALLTYPE TryEnqueueWithPriority(
                    ABI::Windows::System::DispatcherQueuePriority priority,
                    ABI::Windows::System::IDispatcherQueueHandler *callback,
                    boolean *result) = 0;

                virtual HRESULT STDMETHODCALLTYPE add_ShutdownStarting(
                    ABI::Windows::Foundation::ITypedEventHandler<ABI::Windows::System::DispatcherQueue*,ABI::Windows::System::DispatcherQueueShutdownStartingEventArgs* > *handler,
                    EventRegistrationToken *token) = 0;

                virtual HRESULT STDMETHODCALLTYPE remove_ShutdownStarting(
                    EventRegistrationToken token) = 0;

                virtual HRESULT STDMETHODCALLTYPE add_ShutdownCompleted(
                    ABI::Windows::Foundation::ITypedEventHandler<ABI::Windows::System::DispatcherQueue*,IInspectable* > *handler,
                    EventRegistrationToken *token) = 0;

                virtual HRESULT STDMETHODCALLTYPE remove_ShutdownCompleted(
                    EventRegistrationToken token) = 0;

            };
        }
    }
}
extern "C" {
#ifdef __CRT_UUID_DECL
__CRT_UUID_DECL(__x_ABI_CWindows_CSystem_CIDispatcherQueue, 0x603e88e4, 0xa338, 0x4ffe, 0xa4,0x57, 0xa5,0xcf,0xb9,0xce,0xb8,0x99)
#endif
#else
typedef struct __x_ABI_CWindows_CSystem_CIDispatcherQueueVtbl {
    BEGIN_INTERFACE

    /*** IUnknown methods ***/
    HRESULT (STDMETHODCALLTYPE *QueryInterface)(
        __x_ABI_CWindows_CSystem_CIDispatcherQueue *This,
        REFIID riid,
        void **ppvObject);

    ULONG (STDMETHODCALLTYPE *AddRef)(
        __x_ABI_CWindows_CSystem_CIDispatcherQueue *This);

    ULONG (STDMETHODCALLTYPE *Release)(
        __x_ABI_CWindows_CSystem_CIDispatcherQueue *This);

    /*** IInspectable methods ***/
    HRESULT (STDMETHODCALLTYPE *GetIids)(
        __x_ABI_CWindows_CSystem_CIDispatcherQueue *This,
        ULONG *iidCount,
        IID **iids);

    HRESULT (STDMETHODCALLTYPE *GetRuntimeClassName)(
        __x_ABI_CWindows_CSystem_CIDispatcherQueue *This,
        HSTRING *className);

    HRESULT (STDMETHODCALLTYPE *GetTrustLevel)(
        __x_ABI_CWindows_CSystem_CIDispatcherQueue *This,
        TrustLevel *trustLevel);

    /*** IDispatcherQueue methods ***/
    HRESULT (STDMETHODCALLTYPE *CreateTimer)(
        __x_ABI_CWindows_CSystem_CIDispatcherQueue *This,
        __x_ABI_CWindows_CSystem_CIDispatcherQueueTimer **result);

    HRESULT (STDMETHODCALLTYPE *TryEnqueue)(
        __x_ABI_CWindows_CSystem_CIDispatcherQueue *This,
        __x_ABI_CWindows_CSystem_CIDispatcherQueueHandler *callback,
        boolean *result);

    HRESULT (STDMETHODCALLTYPE *TryEnqueueWithPriority)(
        __x_ABI_CWindows_CSystem_CIDispatcherQueue *This,
        __x_ABI_CWindows_CSystem_CDispatcherQueuePriority priority,
        __x_ABI_CWindows_CSystem_CIDispatcherQueueHandler *callback,
        boolean *result);

    HRESULT (STDMETHODCALLTYPE *add_ShutdownStarting)(
        __x_ABI_CWindows_CSystem_CIDispatcherQueue *This,
        __FITypedEventHandler_2_Windows__CSystem__CDispatcherQueue_Windows__CSystem__CDispatcherQueueShutdownStartingEventArgs *handler,
        EventRegistrationToken *token);

    HRESULT (STDMETHODCALLTYPE *remove_ShutdownStarting)(
        __x_ABI_CWindows_CSystem_CIDispatcherQueue *This,
        EventRegistrationToken token);

    HRESULT (STDMETHODCALLTYPE *add_ShutdownCompleted)(
        __x_ABI_CWindows_CSystem_CIDispatcherQueue *This,
        __FITypedEventHandler_2_Windows__CSystem__CDispatcherQueue_IInspectable *handler,
        EventRegistrationToken *token);

    HRESULT (STDMETHODCALLTYPE *remove_ShutdownCompleted)(
        __x_ABI_CWindows_CSystem_CIDispatcherQueue *This,
        EventRegistrationToken token);

    END_INTERFACE
} __x_ABI_CWindows_CSystem_CIDispatcherQueueVtbl;

interface __x_ABI_CWindows_CSystem_CIDispatcherQueue {
    CONST_VTBL __x_ABI_CWindows_CSystem_CIDispatcherQueueVtbl* lpVtbl;
};

#ifdef COBJMACROS
#ifndef WIDL_C_INLINE_WRAPPERS
/*** IUnknown methods ***/
#define __x_ABI_CWindows_CSystem_CIDispatcherQueue_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
#define __x_ABI_CWindows_CSystem_CIDispatcherQueue_AddRef(This) (This)->lpVtbl->AddRef(This)
#define __x_ABI_CWindows_CSystem_CIDispatcherQueue_Release(This) (This)->lpVtbl->Release(This)
/*** IInspectable methods ***/
#define __x_ABI_CWindows_CSystem_CIDispatcherQueue_GetIids(This,iidCount,iids) (This)->lpVtbl->GetIids(This,iidCount,iids)
#define __x_ABI_CWindows_CSystem_CIDispatcherQueue_GetRuntimeClassName(This,className) (This)->lpVtbl->GetRuntimeClassName(This,className)
#define __x_ABI_CWindows_CSystem_CIDispatcherQueue_GetTrustLevel(This,trustLevel) (This)->lpVtbl->GetTrustLevel(This,trustLevel)
/*** IDispatcherQueue methods ***/
#define __x_ABI_CWindows_CSystem_CIDispatcherQueue_CreateTimer(This,result) (This)->lpVtbl->CreateTimer(This,result)
#define __x_ABI_CWindows_CSystem_CIDispatcherQueue_TryEnqueue(This,callback,result) (This)->lpVtbl->TryEnqueue(This,callback,result)
#define __x_ABI_CWindows_CSystem_CIDispatcherQueue_TryEnqueueWithPriority(This,priority,callback,result) (This)->lpVtbl->TryEnqueueWithPriority(This,priority,callback,result)
#define __x_ABI_CWindows_CSystem_CIDispatcherQueue_add_ShutdownStarting(This,handler,token) (This)->lpVtbl->add_ShutdownStarting(This,handler,token)
#define __x_ABI_CWindows_CSystem_CIDispatcherQueue_remove_ShutdownStarting(This,token) (This)->lpVtbl->remove_ShutdownStarting(This,token)
#define __x_ABI_CWindows_CSystem_CIDispatcherQueue_add_ShutdownCompleted(This,handler,token) (This)->lpVtbl->add_ShutdownCompleted(This,handler,token)
#define __x_ABI_CWindows_CSystem_CIDispatcherQueue_remove_ShutdownCompleted(This,token) (This)->lpVtbl->remove_ShutdownCompleted(This,token)
#else
/*** IUnknown methods ***/
static inline HRESULT __x_ABI_CWindows_CSystem_CIDispatcherQueue_QueryInterface(__x_ABI_CWindows_CSystem_CIDispatcherQueue* This,REFIID riid,void **ppvObject) {
    return This->lpVtbl->QueryInterface(This,riid,ppvObject);
}
static inline ULONG __x_ABI_CWindows_CSystem_CIDispatcherQueue_AddRef(__x_ABI_CWindows_CSystem_CIDispatcherQueue* This) {
    return This->lpVtbl->AddRef(This);
}
static inline ULONG __x_ABI_CWindows_CSystem_CIDispatcherQueue_Release(__x_ABI_CWindows_CSystem_CIDispatcherQueue* This) {
    return This->lpVtbl->Release(This);
}
/*** IInspectable methods ***/
static inline HRESULT __x_ABI_CWindows_CSystem_CIDispatcherQueue_GetIids(__x_ABI_CWindows_CSystem_CIDispatcherQueue* This,ULONG *iidCount,IID **iids) {
    return This->lpVtbl->GetIids(This,iidCount,iids);
}
static inline HRESULT __x_ABI_CWindows_CSystem_CIDispatcherQueue_GetRuntimeClassName(__x_ABI_CWindows_CSystem_CIDispatcherQueue* This,HSTRING *className) {
    return This->lpVtbl->GetRuntimeClassName(This,className);
}
static inline HRESULT __x_ABI_CWindows_CSystem_CIDispatcherQueue_GetTrustLevel(__x_ABI_CWindows_CSystem_CIDispatcherQueue* This,TrustLevel *trustLevel) {
    return This->lpVtbl->GetTrustLevel(This,trustLevel);
}
/*** IDispatcherQueue methods ***/
static inline HRESULT __x_ABI_CWindows_CSystem_CIDispatcherQueue_CreateTimer(__x_ABI_CWindows_CSystem_CIDispatcherQueue* This,__x_ABI_CWindows_CSystem_CIDispatcherQueueTimer **result) {
    return This->lpVtbl->CreateTimer(This,result);
}
static inline HRESULT __x_ABI_CWindows_CSystem_CIDispatcherQueue_TryEnqueue(__x_ABI_CWindows_CSystem_CIDispatcherQueue* This,__x_ABI_CWindows_CSystem_CIDispatcherQueueHandler *callback,boolean *result) {
    return This->lpVtbl->TryEnqueue(This,callback,result);
}
static inline HRESULT __x_ABI_CWindows_CSystem_CIDispatcherQueue_TryEnqueueWithPriority(__x_ABI_CWindows_CSystem_CIDispatcherQueue* This,__x_ABI_CWindows_CSystem_CDispatcherQueuePriority priority,__x_ABI_CWindows_CSystem_CIDispatcherQueueHandler *callback,boolean *result) {
    return This->lpVtbl->TryEnqueueWithPriority(This,priority,callback,result);
}
static inline HRESULT __x_ABI_CWindows_CSystem_CIDispatcherQueue_add_ShutdownStarting(__x_ABI_CWindows_CSystem_CIDispatcherQueue* This,__FITypedEventHandler_2_Windows__CSystem__CDispatcherQueue_Windows__CSystem__CDispatcherQueueShutdownStartingEventArgs *handler,EventRegistrationToken *token) {
    return This->lpVtbl->add_ShutdownStarting(This,handler,token);
}
static inline HRESULT __x_ABI_CWindows_CSystem_CIDispatcherQueue_remove_ShutdownStarting(__x_ABI_CWindows_CSystem_CIDispatcherQueue* This,EventRegistrationToken token) {
    return This->lpVtbl->remove_ShutdownStarting(This,token);
}
static inline HRESULT __x_ABI_CWindows_CSystem_CIDispatcherQueue_add_ShutdownCompleted(__x_ABI_CWindows_CSystem_CIDispatcherQueue* This,__FITypedEventHandler_2_Windows__CSystem__CDispatcherQueue_IInspectable *handler,EventRegistrationToken *token) {
    return This->lpVtbl->add_ShutdownCompleted(This,handler,token);
}
static inline HRESULT __x_ABI_CWindows_CSystem_CIDispatcherQueue_remove_ShutdownCompleted(__x_ABI_CWindows_CSystem_CIDispatcherQueue* This,EventRegistrationToken token) {
    return This->lpVtbl->remove_ShutdownCompleted(This,token);
}
#endif
#ifdef WIDL_using_Windows_System
#define IID_IDispatcherQueue IID___x_ABI_CWindows_CSystem_CIDispatcherQueue
#define IDispatcherQueueVtbl __x_ABI_CWindows_CSystem_CIDispatcherQueueVtbl
#define IDispatcherQueue __x_ABI_CWindows_CSystem_CIDispatcherQueue
#define IDispatcherQueue_QueryInterface __x_ABI_CWindows_CSystem_CIDispatcherQueue_QueryInterface
#define IDispatcherQueue_AddRef __x_ABI_CWindows_CSystem_CIDispatcherQueue_AddRef
#define IDispatcherQueue_Release __x_ABI_CWindows_CSystem_CIDispatcherQueue_Release
#define IDispatcherQueue_GetIids __x_ABI_CWindows_CSystem_CIDispatcherQueue_GetIids
#define IDispatcherQueue_GetRuntimeClassName __x_ABI_CWindows_CSystem_CIDispatcherQueue_GetRuntimeClassName
#define IDispatcherQueue_GetTrustLevel __x_ABI_CWindows_CSystem_CIDispatcherQueue_GetTrustLevel
#define IDispatcherQueue_CreateTimer __x_ABI_CWindows_CSystem_CIDispatcherQueue_CreateTimer
#define IDispatcherQueue_TryEnqueue __x_ABI_CWindows_CSystem_CIDispatcherQueue_TryEnqueue
#define IDispatcherQueue_TryEnqueueWithPriority __x_ABI_CWindows_CSystem_CIDispatcherQueue_TryEnqueueWithPriority
#define IDispatcherQueue_add_ShutdownStarting __x_ABI_CWindows_CSystem_CIDispatcherQueue_add_ShutdownStarting
#define IDispatcherQueue_remove_ShutdownStarting __x_ABI_CWindows_CSystem_CIDispatcherQueue_remove_ShutdownStarting
#define IDispatcherQueue_add_ShutdownCompleted __x_ABI_CWindows_CSystem_CIDispatcherQueue_add_ShutdownCompleted
#define IDispatcherQueue_remove_ShutdownCompleted __x_ABI_CWindows_CSystem_CIDispatcherQueue_remove_ShutdownCompleted
#endif /* WIDL_using_Windows_System */
#endif

#endif

#endif  /* ____x_ABI_CWindows_CSystem_CIDispatcherQueue_INTERFACE_DEFINED__ */
#endif /* WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION >= 0x50000 */

/*****************************************************************************
 * IDispatcherQueue2 interface
 */
#if WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION >= 0x80000
#ifndef ____x_ABI_CWindows_CSystem_CIDispatcherQueue2_INTERFACE_DEFINED__
#define ____x_ABI_CWindows_CSystem_CIDispatcherQueue2_INTERFACE_DEFINED__

DEFINE_GUID(IID___x_ABI_CWindows_CSystem_CIDispatcherQueue2, 0xc822c647, 0x30ef, 0x506e, 0xbd,0x1e, 0xa6,0x47,0xae,0x66,0x75,0xff);
#if defined(__cplusplus) && !defined(CINTERFACE)
} /* extern "C" */
namespace ABI {
    namespace Windows {
        namespace System {
            MIDL_INTERFACE("c822c647-30ef-506e-bd1e-a647ae6675ff")
            IDispatcherQueue2 : public IInspectable
            {
                virtual HRESULT STDMETHODCALLTYPE get_HasThreadAccess(
                    boolean *value) = 0;

            };
        }
    }
}
extern "C" {
#ifdef __CRT_UUID_DECL
__CRT_UUID_DECL(__x_ABI_CWindows_CSystem_CIDispatcherQueue2, 0xc822c647, 0x30ef, 0x506e, 0xbd,0x1e, 0xa6,0x47,0xae,0x66,0x75,0xff)
#endif
#else
typedef struct __x_ABI_CWindows_CSystem_CIDispatcherQueue2Vtbl {
    BEGIN_INTERFACE

    /*** IUnknown methods ***/
    HRESULT (STDMETHODCALLTYPE *QueryInterface)(
        __x_ABI_CWindows_CSystem_CIDispatcherQueue2 *This,
        REFIID riid,
        void **ppvObject);

    ULONG (STDMETHODCALLTYPE *AddRef)(
        __x_ABI_CWindows_CSystem_CIDispatcherQueue2 *This);

    ULONG (STDMETHODCALLTYPE *Release)(
        __x_ABI_CWindows_CSystem_CIDispatcherQueue2 *This);

    /*** IInspectable methods ***/
    HRESULT (STDMETHODCALLTYPE *GetIids)(
        __x_ABI_CWindows_CSystem_CIDispatcherQueue2 *This,
        ULONG *iidCount,
        IID **iids);

    HRESULT (STDMETHODCALLTYPE *GetRuntimeClassName)(
        __x_ABI_CWindows_CSystem_CIDispatcherQueue2 *This,
        HSTRING *className);

    HRESULT (STDMETHODCALLTYPE *GetTrustLevel)(
        __x_ABI_CWindows_CSystem_CIDispatcherQueue2 *This,
        TrustLevel *trustLevel);

    /*** IDispatcherQueue2 methods ***/
    HRESULT (STDMETHODCALLTYPE *get_HasThreadAccess)(
        __x_ABI_CWindows_CSystem_CIDispatcherQueue2 *This,
        boolean *value);

    END_INTERFACE
} __x_ABI_CWindows_CSystem_CIDispatcherQueue2Vtbl;

interface __x_ABI_CWindows_CSystem_CIDispatcherQueue2 {
    CONST_VTBL __x_ABI_CWindows_CSystem_CIDispatcherQueue2Vtbl* lpVtbl;
};

#ifdef COBJMACROS
#ifndef WIDL_C_INLINE_WRAPPERS
/*** IUnknown methods ***/
#define __x_ABI_CWindows_CSystem_CIDispatcherQueue2_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
#define __x_ABI_CWindows_CSystem_CIDispatcherQueue2_AddRef(This) (This)->lpVtbl->AddRef(This)
#define __x_ABI_CWindows_CSystem_CIDispatcherQueue2_Release(This) (This)->lpVtbl->Release(This)
/*** IInspectable methods ***/
#define __x_ABI_CWindows_CSystem_CIDispatcherQueue2_GetIids(This,iidCount,iids) (This)->lpVtbl->GetIids(This,iidCount,iids)
#define __x_ABI_CWindows_CSystem_CIDispatcherQueue2_GetRuntimeClassName(This,className) (This)->lpVtbl->GetRuntimeClassName(This,className)
#define __x_ABI_CWindows_CSystem_CIDispatcherQueue2_GetTrustLevel(This,trustLevel) (This)->lpVtbl->GetTrustLevel(This,trustLevel)
/*** IDispatcherQueue2 methods ***/
#define __x_ABI_CWindows_CSystem_CIDispatcherQueue2_get_HasThreadAccess(This,value) (This)->lpVtbl->get_HasThreadAccess(This,value)
#else
/*** IUnknown methods ***/
static inline HRESULT __x_ABI_CWindows_CSystem_CIDispatcherQueue2_QueryInterface(__x_ABI_CWindows_CSystem_CIDispatcherQueue2* This,REFIID riid,void **ppvObject) {
    return This->lpVtbl->QueryInterface(This,riid,ppvObject);
}
static inline ULONG __x_ABI_CWindows_CSystem_CIDispatcherQueue2_AddRef(__x_ABI_CWindows_CSystem_CIDispatcherQueue2* This) {
    return This->lpVtbl->AddRef(This);
}
static inline ULONG __x_ABI_CWindows_CSystem_CIDispatcherQueue2_Release(__x_ABI_CWindows_CSystem_CIDispatcherQueue2* This) {
    return This->lpVtbl->Release(This);
}
/*** IInspectable methods ***/
static inline HRESULT __x_ABI_CWindows_CSystem_CIDispatcherQueue2_GetIids(__x_ABI_CWindows_CSystem_CIDispatcherQueue2* This,ULONG *iidCount,IID **iids) {
    return This->lpVtbl->GetIids(This,iidCount,iids);
}
static inline HRESULT __x_ABI_CWindows_CSystem_CIDispatcherQueue2_GetRuntimeClassName(__x_ABI_CWindows_CSystem_CIDispatcherQueue2* This,HSTRING *className) {
    return This->lpVtbl->GetRuntimeClassName(This,className);
}
static inline HRESULT __x_ABI_CWindows_CSystem_CIDispatcherQueue2_GetTrustLevel(__x_ABI_CWindows_CSystem_CIDispatcherQueue2* This,TrustLevel *trustLevel) {
    return This->lpVtbl->GetTrustLevel(This,trustLevel);
}
/*** IDispatcherQueue2 methods ***/
static inline HRESULT __x_ABI_CWindows_CSystem_CIDispatcherQueue2_get_HasThreadAccess(__x_ABI_CWindows_CSystem_CIDispatcherQueue2* This,boolean *value) {
    return This->lpVtbl->get_HasThreadAccess(This,value);
}
#endif
#ifdef WIDL_using_Windows_System
#define IID_IDispatcherQueue2 IID___x_ABI_CWindows_CSystem_CIDispatcherQueue2
#define IDispatcherQueue2Vtbl __x_ABI_CWindows_CSystem_CIDispatcherQueue2Vtbl
#define IDispatcherQueue2 __x_ABI_CWindows_CSystem_CIDispatcherQueue2
#define IDispatcherQueue2_QueryInterface __x_ABI_CWindows_CSystem_CIDispatcherQueue2_QueryInterface
#define IDispatcherQueue2_AddRef __x_ABI_CWindows_CSystem_CIDispatcherQueue2_AddRef
#define IDispatcherQueue2_Release __x_ABI_CWindows_CSystem_CIDispatcherQueue2_Release
#define IDispatcherQueue2_GetIids __x_ABI_CWindows_CSystem_CIDispatcherQueue2_GetIids
#define IDispatcherQueue2_GetRuntimeClassName __x_ABI_CWindows_CSystem_CIDispatcherQueue2_GetRuntimeClassName
#define IDispatcherQueue2_GetTrustLevel __x_ABI_CWindows_CSystem_CIDispatcherQueue2_GetTrustLevel
#define IDispatcherQueue2_get_HasThreadAccess __x_ABI_CWindows_CSystem_CIDispatcherQueue2_get_HasThreadAccess
#endif /* WIDL_using_Windows_System */
#endif

#endif

#endif  /* ____x_ABI_CWindows_CSystem_CIDispatcherQueue2_INTERFACE_DEFINED__ */
#endif /* WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION >= 0x80000 */

/*****************************************************************************
 * IDispatcherQueueController interface
 */
#if WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION >= 0x50000
#ifndef ____x_ABI_CWindows_CSystem_CIDispatcherQueueController_INTERFACE_DEFINED__
#define ____x_ABI_CWindows_CSystem_CIDispatcherQueueController_INTERFACE_DEFINED__

DEFINE_GUID(IID___x_ABI_CWindows_CSystem_CIDispatcherQueueController, 0x22f34e66, 0x50db, 0x4e36, 0xa9,0x8d, 0x61,0xc0,0x1b,0x38,0x4d,0x20);
#if defined(__cplusplus) && !defined(CINTERFACE)
} /* extern "C" */
namespace ABI {
    namespace Windows {
        namespace System {
            MIDL_INTERFACE("22f34e66-50db-4e36-a98d-61c01b384d20")
            IDispatcherQueueController : public IInspectable
            {
                virtual HRESULT STDMETHODCALLTYPE get_DispatcherQueue(
                    ABI::Windows::System::IDispatcherQueue **value) = 0;

                virtual HRESULT STDMETHODCALLTYPE ShutdownQueueAsync(
                    ABI::Windows::Foundation::IAsyncAction **operation) = 0;

            };
        }
    }
}
extern "C" {
#ifdef __CRT_UUID_DECL
__CRT_UUID_DECL(__x_ABI_CWindows_CSystem_CIDispatcherQueueController, 0x22f34e66, 0x50db, 0x4e36, 0xa9,0x8d, 0x61,0xc0,0x1b,0x38,0x4d,0x20)
#endif
#else
typedef struct __x_ABI_CWindows_CSystem_CIDispatcherQueueControllerVtbl {
    BEGIN_INTERFACE

    /*** IUnknown methods ***/
    HRESULT (STDMETHODCALLTYPE *QueryInterface)(
        __x_ABI_CWindows_CSystem_CIDispatcherQueueController *This,
        REFIID riid,
        void **ppvObject);

    ULONG (STDMETHODCALLTYPE *AddRef)(
        __x_ABI_CWindows_CSystem_CIDispatcherQueueController *This);

    ULONG (STDMETHODCALLTYPE *Release)(
        __x_ABI_CWindows_CSystem_CIDispatcherQueueController *This);

    /*** IInspectable methods ***/
    HRESULT (STDMETHODCALLTYPE *GetIids)(
        __x_ABI_CWindows_CSystem_CIDispatcherQueueController *This,
        ULONG *iidCount,
        IID **iids);

    HRESULT (STDMETHODCALLTYPE *GetRuntimeClassName)(
        __x_ABI_CWindows_CSystem_CIDispatcherQueueController *This,
        HSTRING *className);

    HRESULT (STDMETHODCALLTYPE *GetTrustLevel)(
        __x_ABI_CWindows_CSystem_CIDispatcherQueueController *This,
        TrustLevel *trustLevel);

    /*** IDispatcherQueueController methods ***/
    HRESULT (STDMETHODCALLTYPE *get_DispatcherQueue)(
        __x_ABI_CWindows_CSystem_CIDispatcherQueueController *This,
        __x_ABI_CWindows_CSystem_CIDispatcherQueue **value);

    HRESULT (STDMETHODCALLTYPE *ShutdownQueueAsync)(
        __x_ABI_CWindows_CSystem_CIDispatcherQueueController *This,
        __x_ABI_CWindows_CFoundation_CIAsyncAction **operation);

    END_INTERFACE
} __x_ABI_CWindows_CSystem_CIDispatcherQueueControllerVtbl;

interface __x_ABI_CWindows_CSystem_CIDispatcherQueueController {
    CONST_VTBL __x_ABI_CWindows_CSystem_CIDispatcherQueueControllerVtbl* lpVtbl;
};

#ifdef COBJMACROS
#ifndef WIDL_C_INLINE_WRAPPERS
/*** IUnknown methods ***/
#define __x_ABI_CWindows_CSystem_CIDispatcherQueueController_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
#define __x_ABI_CWindows_CSystem_CIDispatcherQueueController_AddRef(This) (This)->lpVtbl->AddRef(This)
#define __x_ABI_CWindows_CSystem_CIDispatcherQueueController_Release(This) (This)->lpVtbl->Release(This)
/*** IInspectable methods ***/
#define __x_ABI_CWindows_CSystem_CIDispatcherQueueController_GetIids(This,iidCount,iids) (This)->lpVtbl->GetIids(This,iidCount,iids)
#define __x_ABI_CWindows_CSystem_CIDispatcherQueueController_GetRuntimeClassName(This,className) (This)->lpVtbl->GetRuntimeClassName(This,className)
#define __x_ABI_CWindows_CSystem_CIDispatcherQueueController_GetTrustLevel(This,trustLevel) (This)->lpVtbl->GetTrustLevel(This,trustLevel)
/*** IDispatcherQueueController methods ***/
#define __x_ABI_CWindows_CSystem_CIDispatcherQueueController_get_DispatcherQueue(This,value) (This)->lpVtbl->get_DispatcherQueue(This,value)
#define __x_ABI_CWindows_CSystem_CIDispatcherQueueController_ShutdownQueueAsync(This,operation) (This)->lpVtbl->ShutdownQueueAsync(This,operation)
#else
/*** IUnknown methods ***/
static inline HRESULT __x_ABI_CWindows_CSystem_CIDispatcherQueueController_QueryInterface(__x_ABI_CWindows_CSystem_CIDispatcherQueueController* This,REFIID riid,void **ppvObject) {
    return This->lpVtbl->QueryInterface(This,riid,ppvObject);
}
static inline ULONG __x_ABI_CWindows_CSystem_CIDispatcherQueueController_AddRef(__x_ABI_CWindows_CSystem_CIDispatcherQueueController* This) {
    return This->lpVtbl->AddRef(This);
}
static inline ULONG __x_ABI_CWindows_CSystem_CIDispatcherQueueController_Release(__x_ABI_CWindows_CSystem_CIDispatcherQueueController* This) {
    return This->lpVtbl->Release(This);
}
/*** IInspectable methods ***/
static inline HRESULT __x_ABI_CWindows_CSystem_CIDispatcherQueueController_GetIids(__x_ABI_CWindows_CSystem_CIDispatcherQueueController* This,ULONG *iidCount,IID **iids) {
    return This->lpVtbl->GetIids(This,iidCount,iids);
}
static inline HRESULT __x_ABI_CWindows_CSystem_CIDispatcherQueueController_GetRuntimeClassName(__x_ABI_CWindows_CSystem_CIDispatcherQueueController* This,HSTRING *className) {
    return This->lpVtbl->GetRuntimeClassName(This,className);
}
static inline HRESULT __x_ABI_CWindows_CSystem_CIDispatcherQueueController_GetTrustLevel(__x_ABI_CWindows_CSystem_CIDispatcherQueueController* This,TrustLevel *trustLevel) {
    return This->lpVtbl->GetTrustLevel(This,trustLevel);
}
/*** IDispatcherQueueController methods ***/
static inline HRESULT __x_ABI_CWindows_CSystem_CIDispatcherQueueController_get_DispatcherQueue(__x_ABI_CWindows_CSystem_CIDispatcherQueueController* This,__x_ABI_CWindows_CSystem_CIDispatcherQueue **value) {
    return This->lpVtbl->get_DispatcherQueue(This,value);
}
static inline HRESULT __x_ABI_CWindows_CSystem_CIDispatcherQueueController_ShutdownQueueAsync(__x_ABI_CWindows_CSystem_CIDispatcherQueueController* This,__x_ABI_CWindows_CFoundation_CIAsyncAction **operation) {
    return This->lpVtbl->ShutdownQueueAsync(This,operation);
}
#endif
#ifdef WIDL_using_Windows_System
#define IID_IDispatcherQueueController IID___x_ABI_CWindows_CSystem_CIDispatcherQueueController
#define IDispatcherQueueControllerVtbl __x_ABI_CWindows_CSystem_CIDispatcherQueueControllerVtbl
#define IDispatcherQueueController __x_ABI_CWindows_CSystem_CIDispatcherQueueController
#define IDispatcherQueueController_QueryInterface __x_ABI_CWindows_CSystem_CIDispatcherQueueController_QueryInterface
#define IDispatcherQueueController_AddRef __x_ABI_CWindows_CSystem_CIDispatcherQueueController_AddRef
#define IDispatcherQueueController_Release __x_ABI_CWindows_CSystem_CIDispatcherQueueController_Release
#define IDispatcherQueueController_GetIids __x_ABI_CWindows_CSystem_CIDispatcherQueueController_GetIids
#define IDispatcherQueueController_GetRuntimeClassName __x_ABI_CWindows_CSystem_CIDispatcherQueueController_GetRuntimeClassName
#define IDispatcherQueueController_GetTrustLevel __x_ABI_CWindows_CSystem_CIDispatcherQueueController_GetTrustLevel
#define IDispatcherQueueController_get_DispatcherQueue __x_ABI_CWindows_CSystem_CIDispatcherQueueController_get_DispatcherQueue
#define IDispatcherQueueController_ShutdownQueueAsync __x_ABI_CWindows_CSystem_CIDispatcherQueueController_ShutdownQueueAsync
#endif /* WIDL_using_Windows_System */
#endif

#endif

#endif  /* ____x_ABI_CWindows_CSystem_CIDispatcherQueueController_INTERFACE_DEFINED__ */
#endif /* WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION >= 0x50000 */

/*****************************************************************************
 * IDispatcherQueueControllerStatics interface
 */
#if WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION >= 0x50000
#ifndef ____x_ABI_CWindows_CSystem_CIDispatcherQueueControllerStatics_INTERFACE_DEFINED__
#define ____x_ABI_CWindows_CSystem_CIDispatcherQueueControllerStatics_INTERFACE_DEFINED__

DEFINE_GUID(IID___x_ABI_CWindows_CSystem_CIDispatcherQueueControllerStatics, 0x0a6c98e0, 0x5198, 0x49a2, 0xa3,0x13, 0x3f,0x70,0xd1,0xf1,0x3c,0x27);
#if defined(__cplusplus) && !defined(CINTERFACE)
} /* extern "C" */
namespace ABI {
    namespace Windows {
        namespace System {
            MIDL_INTERFACE("0a6c98e0-5198-49a2-a313-3f70d1f13c27")
            IDispatcherQueueControllerStatics : public IInspectable
            {
                virtual HRESULT STDMETHODCALLTYPE CreateOnDedicatedThread(
                    ABI::Windows::System::IDispatcherQueueController **result) = 0;

            };
        }
    }
}
extern "C" {
#ifdef __CRT_UUID_DECL
__CRT_UUID_DECL(__x_ABI_CWindows_CSystem_CIDispatcherQueueControllerStatics, 0x0a6c98e0, 0x5198, 0x49a2, 0xa3,0x13, 0x3f,0x70,0xd1,0xf1,0x3c,0x27)
#endif
#else
typedef struct __x_ABI_CWindows_CSystem_CIDispatcherQueueControllerStaticsVtbl {
    BEGIN_INTERFACE

    /*** IUnknown methods ***/
    HRESULT (STDMETHODCALLTYPE *QueryInterface)(
        __x_ABI_CWindows_CSystem_CIDispatcherQueueControllerStatics *This,
        REFIID riid,
        void **ppvObject);

    ULONG (STDMETHODCALLTYPE *AddRef)(
        __x_ABI_CWindows_CSystem_CIDispatcherQueueControllerStatics *This);

    ULONG (STDMETHODCALLTYPE *Release)(
        __x_ABI_CWindows_CSystem_CIDispatcherQueueControllerStatics *This);

    /*** IInspectable methods ***/
    HRESULT (STDMETHODCALLTYPE *GetIids)(
        __x_ABI_CWindows_CSystem_CIDispatcherQueueControllerStatics *This,
        ULONG *iidCount,
        IID **iids);

    HRESULT (STDMETHODCALLTYPE *GetRuntimeClassName)(
        __x_ABI_CWindows_CSystem_CIDispatcherQueueControllerStatics *This,
        HSTRING *className);

    HRESULT (STDMETHODCALLTYPE *GetTrustLevel)(
        __x_ABI_CWindows_CSystem_CIDispatcherQueueControllerStatics *This,
        TrustLevel *trustLevel);

    /*** IDispatcherQueueControllerStatics methods ***/
    HRESULT (STDMETHODCALLTYPE *CreateOnDedicatedThread)(
        __x_ABI_CWindows_CSystem_CIDispatcherQueueControllerStatics *This,
        __x_ABI_CWindows_CSystem_CIDispatcherQueueController **result);

    END_INTERFACE
} __x_ABI_CWindows_CSystem_CIDispatcherQueueControllerStaticsVtbl;

interface __x_ABI_CWindows_CSystem_CIDispatcherQueueControllerStatics {
    CONST_VTBL __x_ABI_CWindows_CSystem_CIDispatcherQueueControllerStaticsVtbl* lpVtbl;
};

#ifdef COBJMACROS
#ifndef WIDL_C_INLINE_WRAPPERS
/*** IUnknown methods ***/
#define __x_ABI_CWindows_CSystem_CIDispatcherQueueControllerStatics_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
#define __x_ABI_CWindows_CSystem_CIDispatcherQueueControllerStatics_AddRef(This) (This)->lpVtbl->AddRef(This)
#define __x_ABI_CWindows_CSystem_CIDispatcherQueueControllerStatics_Release(This) (This)->lpVtbl->Release(This)
/*** IInspectable methods ***/
#define __x_ABI_CWindows_CSystem_CIDispatcherQueueControllerStatics_GetIids(This,iidCount,iids) (This)->lpVtbl->GetIids(This,iidCount,iids)
#define __x_ABI_CWindows_CSystem_CIDispatcherQueueControllerStatics_GetRuntimeClassName(This,className) (This)->lpVtbl->GetRuntimeClassName(This,className)
#define __x_ABI_CWindows_CSystem_CIDispatcherQueueControllerStatics_GetTrustLevel(This,trustLevel) (This)->lpVtbl->GetTrustLevel(This,trustLevel)
/*** IDispatcherQueueControllerStatics methods ***/
#define __x_ABI_CWindows_CSystem_CIDispatcherQueueControllerStatics_CreateOnDedicatedThread(This,result) (This)->lpVtbl->CreateOnDedicatedThread(This,result)
#else
/*** IUnknown methods ***/
static inline HRESULT __x_ABI_CWindows_CSystem_CIDispatcherQueueControllerStatics_QueryInterface(__x_ABI_CWindows_CSystem_CIDispatcherQueueControllerStatics* This,REFIID riid,void **ppvObject) {
    return This->lpVtbl->QueryInterface(This,riid,ppvObject);
}
static inline ULONG __x_ABI_CWindows_CSystem_CIDispatcherQueueControllerStatics_AddRef(__x_ABI_CWindows_CSystem_CIDispatcherQueueControllerStatics* This) {
    return This->lpVtbl->AddRef(This);
}
static inline ULONG __x_ABI_CWindows_CSystem_CIDispatcherQueueControllerStatics_Release(__x_ABI_CWindows_CSystem_CIDispatcherQueueControllerStatics* This) {
    return This->lpVtbl->Release(This);
}
/*** IInspectable methods ***/
static inline HRESULT __x_ABI_CWindows_CSystem_CIDispatcherQueueControllerStatics_GetIids(__x_ABI_CWindows_CSystem_CIDispatcherQueueControllerStatics* This,ULONG *iidCount,IID **iids) {
    return This->lpVtbl->GetIids(This,iidCount,iids);
}
static inline HRESULT __x_ABI_CWindows_CSystem_CIDispatcherQueueControllerStatics_GetRuntimeClassName(__x_ABI_CWindows_CSystem_CIDispatcherQueueControllerStatics* This,HSTRING *className) {
    return This->lpVtbl->GetRuntimeClassName(This,className);
}
static inline HRESULT __x_ABI_CWindows_CSystem_CIDispatcherQueueControllerStatics_GetTrustLevel(__x_ABI_CWindows_CSystem_CIDispatcherQueueControllerStatics* This,TrustLevel *trustLevel) {
    return This->lpVtbl->GetTrustLevel(This,trustLevel);
}
/*** IDispatcherQueueControllerStatics methods ***/
static inline HRESULT __x_ABI_CWindows_CSystem_CIDispatcherQueueControllerStatics_CreateOnDedicatedThread(__x_ABI_CWindows_CSystem_CIDispatcherQueueControllerStatics* This,__x_ABI_CWindows_CSystem_CIDispatcherQueueController **result) {
    return This->lpVtbl->CreateOnDedicatedThread(This,result);
}
#endif
#ifdef WIDL_using_Windows_System
#define IID_IDispatcherQueueControllerStatics IID___x_ABI_CWindows_CSystem_CIDispatcherQueueControllerStatics
#define IDispatcherQueueControllerStaticsVtbl __x_ABI_CWindows_CSystem_CIDispatcherQueueControllerStaticsVtbl
#define IDispatcherQueueControllerStatics __x_ABI_CWindows_CSystem_CIDispatcherQueueControllerStatics
#define IDispatcherQueueControllerStatics_QueryInterface __x_ABI_CWindows_CSystem_CIDispatcherQueueControllerStatics_QueryInterface
#define IDispatcherQueueControllerStatics_AddRef __x_ABI_CWindows_CSystem_CIDispatcherQueueControllerStatics_AddRef
#define IDispatcherQueueControllerStatics_Release __x_ABI_CWindows_CSystem_CIDispatcherQueueControllerStatics_Release
#define IDispatcherQueueControllerStatics_GetIids __x_ABI_CWindows_CSystem_CIDispatcherQueueControllerStatics_GetIids
#define IDispatcherQueueControllerStatics_GetRuntimeClassName __x_ABI_CWindows_CSystem_CIDispatcherQueueControllerStatics_GetRuntimeClassName
#define IDispatcherQueueControllerStatics_GetTrustLevel __x_ABI_CWindows_CSystem_CIDispatcherQueueControllerStatics_GetTrustLevel
#define IDispatcherQueueControllerStatics_CreateOnDedicatedThread __x_ABI_CWindows_CSystem_CIDispatcherQueueControllerStatics_CreateOnDedicatedThread
#endif /* WIDL_using_Windows_System */
#endif

#endif

#endif  /* ____x_ABI_CWindows_CSystem_CIDispatcherQueueControllerStatics_INTERFACE_DEFINED__ */
#endif /* WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION >= 0x50000 */

/*****************************************************************************
 * IDispatcherQueueShutdownStartingEventArgs interface
 */
#if WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION >= 0x50000
#ifndef ____x_ABI_CWindows_CSystem_CIDispatcherQueueShutdownStartingEventArgs_INTERFACE_DEFINED__
#define ____x_ABI_CWindows_CSystem_CIDispatcherQueueShutdownStartingEventArgs_INTERFACE_DEFINED__

DEFINE_GUID(IID___x_ABI_CWindows_CSystem_CIDispatcherQueueShutdownStartingEventArgs, 0xc4724c4c, 0xff97, 0x40c0, 0xa2,0x26, 0xcc,0x0a,0xaa,0x54,0x5e,0x89);
#if defined(__cplusplus) && !defined(CINTERFACE)
} /* extern "C" */
namespace ABI {
    namespace Windows {
        namespace System {
            MIDL_INTERFACE("c4724c4c-ff97-40c0-a226-cc0aaa545e89")
            IDispatcherQueueShutdownStartingEventArgs : public IInspectable
            {
                virtual HRESULT STDMETHODCALLTYPE GetDeferral(
                    ABI::Windows::Foundation::IDeferral **result) = 0;

            };
        }
    }
}
extern "C" {
#ifdef __CRT_UUID_DECL
__CRT_UUID_DECL(__x_ABI_CWindows_CSystem_CIDispatcherQueueShutdownStartingEventArgs, 0xc4724c4c, 0xff97, 0x40c0, 0xa2,0x26, 0xcc,0x0a,0xaa,0x54,0x5e,0x89)
#endif
#else
typedef struct __x_ABI_CWindows_CSystem_CIDispatcherQueueShutdownStartingEventArgsVtbl {
    BEGIN_INTERFACE

    /*** IUnknown methods ***/
    HRESULT (STDMETHODCALLTYPE *QueryInterface)(
        __x_ABI_CWindows_CSystem_CIDispatcherQueueShutdownStartingEventArgs *This,
        REFIID riid,
        void **ppvObject);

    ULONG (STDMETHODCALLTYPE *AddRef)(
        __x_ABI_CWindows_CSystem_CIDispatcherQueueShutdownStartingEventArgs *This);

    ULONG (STDMETHODCALLTYPE *Release)(
        __x_ABI_CWindows_CSystem_CIDispatcherQueueShutdownStartingEventArgs *This);

    /*** IInspectable methods ***/
    HRESULT (STDMETHODCALLTYPE *GetIids)(
        __x_ABI_CWindows_CSystem_CIDispatcherQueueShutdownStartingEventArgs *This,
        ULONG *iidCount,
        IID **iids);

    HRESULT (STDMETHODCALLTYPE *GetRuntimeClassName)(
        __x_ABI_CWindows_CSystem_CIDispatcherQueueShutdownStartingEventArgs *This,
        HSTRING *className);

    HRESULT (STDMETHODCALLTYPE *GetTrustLevel)(
        __x_ABI_CWindows_CSystem_CIDispatcherQueueShutdownStartingEventArgs *This,
        TrustLevel *trustLevel);

    /*** IDispatcherQueueShutdownStartingEventArgs methods ***/
    HRESULT (STDMETHODCALLTYPE *GetDeferral)(
        __x_ABI_CWindows_CSystem_CIDispatcherQueueShutdownStartingEventArgs *This,
        __x_ABI_CWindows_CFoundation_CIDeferral **result);

    END_INTERFACE
} __x_ABI_CWindows_CSystem_CIDispatcherQueueShutdownStartingEventArgsVtbl;

interface __x_ABI_CWindows_CSystem_CIDispatcherQueueShutdownStartingEventArgs {
    CONST_VTBL __x_ABI_CWindows_CSystem_CIDispatcherQueueShutdownStartingEventArgsVtbl* lpVtbl;
};

#ifdef COBJMACROS
#ifndef WIDL_C_INLINE_WRAPPERS
/*** IUnknown methods ***/
#define __x_ABI_CWindows_CSystem_CIDispatcherQueueShutdownStartingEventArgs_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
#define __x_ABI_CWindows_CSystem_CIDispatcherQueueShutdownStartingEventArgs_AddRef(This) (This)->lpVtbl->AddRef(This)
#define __x_ABI_CWindows_CSystem_CIDispatcherQueueShutdownStartingEventArgs_Release(This) (This)->lpVtbl->Release(This)
/*** IInspectable methods ***/
#define __x_ABI_CWindows_CSystem_CIDispatcherQueueShutdownStartingEventArgs_GetIids(This,iidCount,iids) (This)->lpVtbl->GetIids(This,iidCount,iids)
#define __x_ABI_CWindows_CSystem_CIDispatcherQueueShutdownStartingEventArgs_GetRuntimeClassName(This,className) (This)->lpVtbl->GetRuntimeClassName(This,className)
#define __x_ABI_CWindows_CSystem_CIDispatcherQueueShutdownStartingEventArgs_GetTrustLevel(This,trustLevel) (This)->lpVtbl->GetTrustLevel(This,trustLevel)
/*** IDispatcherQueueShutdownStartingEventArgs methods ***/
#define __x_ABI_CWindows_CSystem_CIDispatcherQueueShutdownStartingEventArgs_GetDeferral(This,result) (This)->lpVtbl->GetDeferral(This,result)
#else
/*** IUnknown methods ***/
static inline HRESULT __x_ABI_CWindows_CSystem_CIDispatcherQueueShutdownStartingEventArgs_QueryInterface(__x_ABI_CWindows_CSystem_CIDispatcherQueueShutdownStartingEventArgs* This,REFIID riid,void **ppvObject) {
    return This->lpVtbl->QueryInterface(This,riid,ppvObject);
}
static inline ULONG __x_ABI_CWindows_CSystem_CIDispatcherQueueShutdownStartingEventArgs_AddRef(__x_ABI_CWindows_CSystem_CIDispatcherQueueShutdownStartingEventArgs* This) {
    return This->lpVtbl->AddRef(This);
}
static inline ULONG __x_ABI_CWindows_CSystem_CIDispatcherQueueShutdownStartingEventArgs_Release(__x_ABI_CWindows_CSystem_CIDispatcherQueueShutdownStartingEventArgs* This) {
    return This->lpVtbl->Release(This);
}
/*** IInspectable methods ***/
static inline HRESULT __x_ABI_CWindows_CSystem_CIDispatcherQueueShutdownStartingEventArgs_GetIids(__x_ABI_CWindows_CSystem_CIDispatcherQueueShutdownStartingEventArgs* This,ULONG *iidCount,IID **iids) {
    return This->lpVtbl->GetIids(This,iidCount,iids);
}
static inline HRESULT __x_ABI_CWindows_CSystem_CIDispatcherQueueShutdownStartingEventArgs_GetRuntimeClassName(__x_ABI_CWindows_CSystem_CIDispatcherQueueShutdownStartingEventArgs* This,HSTRING *className) {
    return This->lpVtbl->GetRuntimeClassName(This,className);
}
static inline HRESULT __x_ABI_CWindows_CSystem_CIDispatcherQueueShutdownStartingEventArgs_GetTrustLevel(__x_ABI_CWindows_CSystem_CIDispatcherQueueShutdownStartingEventArgs* This,TrustLevel *trustLevel) {
    return This->lpVtbl->GetTrustLevel(This,trustLevel);
}
/*** IDispatcherQueueShutdownStartingEventArgs methods ***/
static inline HRESULT __x_ABI_CWindows_CSystem_CIDispatcherQueueShutdownStartingEventArgs_GetDeferral(__x_ABI_CWindows_CSystem_CIDispatcherQueueShutdownStartingEventArgs* This,__x_ABI_CWindows_CFoundation_CIDeferral **result) {
    return This->lpVtbl->GetDeferral(This,result);
}
#endif
#ifdef WIDL_using_Windows_System
#define IID_IDispatcherQueueShutdownStartingEventArgs IID___x_ABI_CWindows_CSystem_CIDispatcherQueueShutdownStartingEventArgs
#define IDispatcherQueueShutdownStartingEventArgsVtbl __x_ABI_CWindows_CSystem_CIDispatcherQueueShutdownStartingEventArgsVtbl
#define IDispatcherQueueShutdownStartingEventArgs __x_ABI_CWindows_CSystem_CIDispatcherQueueShutdownStartingEventArgs
#define IDispatcherQueueShutdownStartingEventArgs_QueryInterface __x_ABI_CWindows_CSystem_CIDispatcherQueueShutdownStartingEventArgs_QueryInterface
#define IDispatcherQueueShutdownStartingEventArgs_AddRef __x_ABI_CWindows_CSystem_CIDispatcherQueueShutdownStartingEventArgs_AddRef
#define IDispatcherQueueShutdownStartingEventArgs_Release __x_ABI_CWindows_CSystem_CIDispatcherQueueShutdownStartingEventArgs_Release
#define IDispatcherQueueShutdownStartingEventArgs_GetIids __x_ABI_CWindows_CSystem_CIDispatcherQueueShutdownStartingEventArgs_GetIids
#define IDispatcherQueueShutdownStartingEventArgs_GetRuntimeClassName __x_ABI_CWindows_CSystem_CIDispatcherQueueShutdownStartingEventArgs_GetRuntimeClassName
#define IDispatcherQueueShutdownStartingEventArgs_GetTrustLevel __x_ABI_CWindows_CSystem_CIDispatcherQueueShutdownStartingEventArgs_GetTrustLevel
#define IDispatcherQueueShutdownStartingEventArgs_GetDeferral __x_ABI_CWindows_CSystem_CIDispatcherQueueShutdownStartingEventArgs_GetDeferral
#endif /* WIDL_using_Windows_System */
#endif

#endif

#endif  /* ____x_ABI_CWindows_CSystem_CIDispatcherQueueShutdownStartingEventArgs_INTERFACE_DEFINED__ */
#endif /* WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION >= 0x50000 */

/*****************************************************************************
 * IDispatcherQueueStatics interface
 */
#if WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION >= 0x50000
#ifndef ____x_ABI_CWindows_CSystem_CIDispatcherQueueStatics_INTERFACE_DEFINED__
#define ____x_ABI_CWindows_CSystem_CIDispatcherQueueStatics_INTERFACE_DEFINED__

DEFINE_GUID(IID___x_ABI_CWindows_CSystem_CIDispatcherQueueStatics, 0xa96d83d7, 0x9371, 0x4517, 0x92,0x45, 0xd0,0x82,0x4a,0xc1,0x2c,0x74);
#if defined(__cplusplus) && !defined(CINTERFACE)
} /* extern "C" */
namespace ABI {
    namespace Windows {
        namespace System {
            MIDL_INTERFACE("a96d83d7-9371-4517-9245-d0824ac12c74")
            IDispatcherQueueStatics : public IInspectable
            {
                virtual HRESULT STDMETHODCALLTYPE GetForCurrentThread(
                    ABI::Windows::System::IDispatcherQueue **result) = 0;

            };
        }
    }
}
extern "C" {
#ifdef __CRT_UUID_DECL
__CRT_UUID_DECL(__x_ABI_CWindows_CSystem_CIDispatcherQueueStatics, 0xa96d83d7, 0x9371, 0x4517, 0x92,0x45, 0xd0,0x82,0x4a,0xc1,0x2c,0x74)
#endif
#else
typedef struct __x_ABI_CWindows_CSystem_CIDispatcherQueueStaticsVtbl {
    BEGIN_INTERFACE

    /*** IUnknown methods ***/
    HRESULT (STDMETHODCALLTYPE *QueryInterface)(
        __x_ABI_CWindows_CSystem_CIDispatcherQueueStatics *This,
        REFIID riid,
        void **ppvObject);

    ULONG (STDMETHODCALLTYPE *AddRef)(
        __x_ABI_CWindows_CSystem_CIDispatcherQueueStatics *This);

    ULONG (STDMETHODCALLTYPE *Release)(
        __x_ABI_CWindows_CSystem_CIDispatcherQueueStatics *This);

    /*** IInspectable methods ***/
    HRESULT (STDMETHODCALLTYPE *GetIids)(
        __x_ABI_CWindows_CSystem_CIDispatcherQueueStatics *This,
        ULONG *iidCount,
        IID **iids);

    HRESULT (STDMETHODCALLTYPE *GetRuntimeClassName)(
        __x_ABI_CWindows_CSystem_CIDispatcherQueueStatics *This,
        HSTRING *className);

    HRESULT (STDMETHODCALLTYPE *GetTrustLevel)(
        __x_ABI_CWindows_CSystem_CIDispatcherQueueStatics *This,
        TrustLevel *trustLevel);

    /*** IDispatcherQueueStatics methods ***/
    HRESULT (STDMETHODCALLTYPE *GetForCurrentThread)(
        __x_ABI_CWindows_CSystem_CIDispatcherQueueStatics *This,
        __x_ABI_CWindows_CSystem_CIDispatcherQueue **result);

    END_INTERFACE
} __x_ABI_CWindows_CSystem_CIDispatcherQueueStaticsVtbl;

interface __x_ABI_CWindows_CSystem_CIDispatcherQueueStatics {
    CONST_VTBL __x_ABI_CWindows_CSystem_CIDispatcherQueueStaticsVtbl* lpVtbl;
};

#ifdef COBJMACROS
#ifndef WIDL_C_INLINE_WRAPPERS
/*** IUnknown methods ***/
#define __x_ABI_CWindows_CSystem_CIDispatcherQueueStatics_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
#define __x_ABI_CWindows_CSystem_CIDispatcherQueueStatics_AddRef(This) (This)->lpVtbl->AddRef(This)
#define __x_ABI_CWindows_CSystem_CIDispatcherQueueStatics_Release(This) (This)->lpVtbl->Release(This)
/*** IInspectable methods ***/
#define __x_ABI_CWindows_CSystem_CIDispatcherQueueStatics_GetIids(This,iidCount,iids) (This)->lpVtbl->GetIids(This,iidCount,iids)
#define __x_ABI_CWindows_CSystem_CIDispatcherQueueStatics_GetRuntimeClassName(This,className) (This)->lpVtbl->GetRuntimeClassName(This,className)
#define __x_ABI_CWindows_CSystem_CIDispatcherQueueStatics_GetTrustLevel(This,trustLevel) (This)->lpVtbl->GetTrustLevel(This,trustLevel)
/*** IDispatcherQueueStatics methods ***/
#define __x_ABI_CWindows_CSystem_CIDispatcherQueueStatics_GetForCurrentThread(This,result) (This)->lpVtbl->GetForCurrentThread(This,result)
#else
/*** IUnknown methods ***/
static inline HRESULT __x_ABI_CWindows_CSystem_CIDispatcherQueueStatics_QueryInterface(__x_ABI_CWindows_CSystem_CIDispatcherQueueStatics* This,REFIID riid,void **ppvObject) {
    return This->lpVtbl->QueryInterface(This,riid,ppvObject);
}
static inline ULONG __x_ABI_CWindows_CSystem_CIDispatcherQueueStatics_AddRef(__x_ABI_CWindows_CSystem_CIDispatcherQueueStatics* This) {
    return This->lpVtbl->AddRef(This);
}
static inline ULONG __x_ABI_CWindows_CSystem_CIDispatcherQueueStatics_Release(__x_ABI_CWindows_CSystem_CIDispatcherQueueStatics* This) {
    return This->lpVtbl->Release(This);
}
/*** IInspectable methods ***/
static inline HRESULT __x_ABI_CWindows_CSystem_CIDispatcherQueueStatics_GetIids(__x_ABI_CWindows_CSystem_CIDispatcherQueueStatics* This,ULONG *iidCount,IID **iids) {
    return This->lpVtbl->GetIids(This,iidCount,iids);
}
static inline HRESULT __x_ABI_CWindows_CSystem_CIDispatcherQueueStatics_GetRuntimeClassName(__x_ABI_CWindows_CSystem_CIDispatcherQueueStatics* This,HSTRING *className) {
    return This->lpVtbl->GetRuntimeClassName(This,className);
}
static inline HRESULT __x_ABI_CWindows_CSystem_CIDispatcherQueueStatics_GetTrustLevel(__x_ABI_CWindows_CSystem_CIDispatcherQueueStatics* This,TrustLevel *trustLevel) {
    return This->lpVtbl->GetTrustLevel(This,trustLevel);
}
/*** IDispatcherQueueStatics methods ***/
static inline HRESULT __x_ABI_CWindows_CSystem_CIDispatcherQueueStatics_GetForCurrentThread(__x_ABI_CWindows_CSystem_CIDispatcherQueueStatics* This,__x_ABI_CWindows_CSystem_CIDispatcherQueue **result) {
    return This->lpVtbl->GetForCurrentThread(This,result);
}
#endif
#ifdef WIDL_using_Windows_System
#define IID_IDispatcherQueueStatics IID___x_ABI_CWindows_CSystem_CIDispatcherQueueStatics
#define IDispatcherQueueStaticsVtbl __x_ABI_CWindows_CSystem_CIDispatcherQueueStaticsVtbl
#define IDispatcherQueueStatics __x_ABI_CWindows_CSystem_CIDispatcherQueueStatics
#define IDispatcherQueueStatics_QueryInterface __x_ABI_CWindows_CSystem_CIDispatcherQueueStatics_QueryInterface
#define IDispatcherQueueStatics_AddRef __x_ABI_CWindows_CSystem_CIDispatcherQueueStatics_AddRef
#define IDispatcherQueueStatics_Release __x_ABI_CWindows_CSystem_CIDispatcherQueueStatics_Release
#define IDispatcherQueueStatics_GetIids __x_ABI_CWindows_CSystem_CIDispatcherQueueStatics_GetIids
#define IDispatcherQueueStatics_GetRuntimeClassName __x_ABI_CWindows_CSystem_CIDispatcherQueueStatics_GetRuntimeClassName
#define IDispatcherQueueStatics_GetTrustLevel __x_ABI_CWindows_CSystem_CIDispatcherQueueStatics_GetTrustLevel
#define IDispatcherQueueStatics_GetForCurrentThread __x_ABI_CWindows_CSystem_CIDispatcherQueueStatics_GetForCurrentThread
#endif /* WIDL_using_Windows_System */
#endif

#endif

#endif  /* ____x_ABI_CWindows_CSystem_CIDispatcherQueueStatics_INTERFACE_DEFINED__ */
#endif /* WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION >= 0x50000 */

/*****************************************************************************
 * IDispatcherQueueTimer interface
 */
#if WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION >= 0x50000
#ifndef ____x_ABI_CWindows_CSystem_CIDispatcherQueueTimer_INTERFACE_DEFINED__
#define ____x_ABI_CWindows_CSystem_CIDispatcherQueueTimer_INTERFACE_DEFINED__

DEFINE_GUID(IID___x_ABI_CWindows_CSystem_CIDispatcherQueueTimer, 0x5feabb1d, 0xa31c, 0x4727, 0xb1,0xac, 0x37,0x45,0x46,0x49,0xd5,0x6a);
#if defined(__cplusplus) && !defined(CINTERFACE)
} /* extern "C" */
namespace ABI {
    namespace Windows {
        namespace System {
            MIDL_INTERFACE("5feabb1d-a31c-4727-b1ac-37454649d56a")
            IDispatcherQueueTimer : public IInspectable
            {
                virtual HRESULT STDMETHODCALLTYPE get_Interval(
                    ABI::Windows::Foundation::TimeSpan *value) = 0;

                virtual HRESULT STDMETHODCALLTYPE put_Interval(
                    ABI::Windows::Foundation::TimeSpan value) = 0;

                virtual HRESULT STDMETHODCALLTYPE get_IsRunning(
                    boolean *value) = 0;

                virtual HRESULT STDMETHODCALLTYPE get_IsRepeating(
                    boolean *value) = 0;

                virtual HRESULT STDMETHODCALLTYPE put_IsRepeating(
                    boolean value) = 0;

                virtual HRESULT STDMETHODCALLTYPE Start(
                    ) = 0;

                virtual HRESULT STDMETHODCALLTYPE Stop(
                    ) = 0;

                virtual HRESULT STDMETHODCALLTYPE add_Tick(
                    ABI::Windows::Foundation::ITypedEventHandler<ABI::Windows::System::DispatcherQueueTimer*,IInspectable* > *handler,
                    EventRegistrationToken *token) = 0;

                virtual HRESULT STDMETHODCALLTYPE remove_Tick(
                    EventRegistrationToken token) = 0;

            };
        }
    }
}
extern "C" {
#ifdef __CRT_UUID_DECL
__CRT_UUID_DECL(__x_ABI_CWindows_CSystem_CIDispatcherQueueTimer, 0x5feabb1d, 0xa31c, 0x4727, 0xb1,0xac, 0x37,0x45,0x46,0x49,0xd5,0x6a)
#endif
#else
typedef struct __x_ABI_CWindows_CSystem_CIDispatcherQueueTimerVtbl {
    BEGIN_INTERFACE

    /*** IUnknown methods ***/
    HRESULT (STDMETHODCALLTYPE *QueryInterface)(
        __x_ABI_CWindows_CSystem_CIDispatcherQueueTimer *This,
        REFIID riid,
        void **ppvObject);

    ULONG (STDMETHODCALLTYPE *AddRef)(
        __x_ABI_CWindows_CSystem_CIDispatcherQueueTimer *This);

    ULONG (STDMETHODCALLTYPE *Release)(
        __x_ABI_CWindows_CSystem_CIDispatcherQueueTimer *This);

    /*** IInspectable methods ***/
    HRESULT (STDMETHODCALLTYPE *GetIids)(
        __x_ABI_CWindows_CSystem_CIDispatcherQueueTimer *This,
        ULONG *iidCount,
        IID **iids);

    HRESULT (STDMETHODCALLTYPE *GetRuntimeClassName)(
        __x_ABI_CWindows_CSystem_CIDispatcherQueueTimer *This,
        HSTRING *className);

    HRESULT (STDMETHODCALLTYPE *GetTrustLevel)(
        __x_ABI_CWindows_CSystem_CIDispatcherQueueTimer *This,
        TrustLevel *trustLevel);

    /*** IDispatcherQueueTimer methods ***/
    HRESULT (STDMETHODCALLTYPE *get_Interval)(
        __x_ABI_CWindows_CSystem_CIDispatcherQueueTimer *This,
        __x_ABI_CWindows_CFoundation_CTimeSpan *value);

    HRESULT (STDMETHODCALLTYPE *put_Interval)(
        __x_ABI_CWindows_CSystem_CIDispatcherQueueTimer *This,
        __x_ABI_CWindows_CFoundation_CTimeSpan value);

    HRESULT (STDMETHODCALLTYPE *get_IsRunning)(
        __x_ABI_CWindows_CSystem_CIDispatcherQueueTimer *This,
        boolean *value);

    HRESULT (STDMETHODCALLTYPE *get_IsRepeating)(
        __x_ABI_CWindows_CSystem_CIDispatcherQueueTimer *This,
        boolean *value);

    HRESULT (STDMETHODCALLTYPE *put_IsRepeating)(
        __x_ABI_CWindows_CSystem_CIDispatcherQueueTimer *This,
        boolean value);

    HRESULT (STDMETHODCALLTYPE *Start)(
        __x_ABI_CWindows_CSystem_CIDispatcherQueueTimer *This);

    HRESULT (STDMETHODCALLTYPE *Stop)(
        __x_ABI_CWindows_CSystem_CIDispatcherQueueTimer *This);

    HRESULT (STDMETHODCALLTYPE *add_Tick)(
        __x_ABI_CWindows_CSystem_CIDispatcherQueueTimer *This,
        __FITypedEventHandler_2_Windows__CSystem__CDispatcherQueueTimer_IInspectable *handler,
        EventRegistrationToken *token);

    HRESULT (STDMETHODCALLTYPE *remove_Tick)(
        __x_ABI_CWindows_CSystem_CIDispatcherQueueTimer *This,
        EventRegistrationToken token);

    END_INTERFACE
} __x_ABI_CWindows_CSystem_CIDispatcherQueueTimerVtbl;

interface __x_ABI_CWindows_CSystem_CIDispatcherQueueTimer {
    CONST_VTBL __x_ABI_CWindows_CSystem_CIDispatcherQueueTimerVtbl* lpVtbl;
};

#ifdef COBJMACROS
#ifndef WIDL_C_INLINE_WRAPPERS
/*** IUnknown methods ***/
#define __x_ABI_CWindows_CSystem_CIDispatcherQueueTimer_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
#define __x_ABI_CWindows_CSystem_CIDispatcherQueueTimer_AddRef(This) (This)->lpVtbl->AddRef(This)
#define __x_ABI_CWindows_CSystem_CIDispatcherQueueTimer_Release(This) (This)->lpVtbl->Release(This)
/*** IInspectable methods ***/
#define __x_ABI_CWindows_CSystem_CIDispatcherQueueTimer_GetIids(This,iidCount,iids) (This)->lpVtbl->GetIids(This,iidCount,iids)
#define __x_ABI_CWindows_CSystem_CIDispatcherQueueTimer_GetRuntimeClassName(This,className) (This)->lpVtbl->GetRuntimeClassName(This,className)
#define __x_ABI_CWindows_CSystem_CIDispatcherQueueTimer_GetTrustLevel(This,trustLevel) (This)->lpVtbl->GetTrustLevel(This,trustLevel)
/*** IDispatcherQueueTimer methods ***/
#define __x_ABI_CWindows_CSystem_CIDispatcherQueueTimer_get_Interval(This,value) (This)->lpVtbl->get_Interval(This,value)
#define __x_ABI_CWindows_CSystem_CIDispatcherQueueTimer_put_Interval(This,value) (This)->lpVtbl->put_Interval(This,value)
#define __x_ABI_CWindows_CSystem_CIDispatcherQueueTimer_get_IsRunning(This,value) (This)->lpVtbl->get_IsRunning(This,value)
#define __x_ABI_CWindows_CSystem_CIDispatcherQueueTimer_get_IsRepeating(This,value) (This)->lpVtbl->get_IsRepeating(This,value)
#define __x_ABI_CWindows_CSystem_CIDispatcherQueueTimer_put_IsRepeating(This,value) (This)->lpVtbl->put_IsRepeating(This,value)
#define __x_ABI_CWindows_CSystem_CIDispatcherQueueTimer_Start(This) (This)->lpVtbl->Start(This)
#define __x_ABI_CWindows_CSystem_CIDispatcherQueueTimer_Stop(This) (This)->lpVtbl->Stop(This)
#define __x_ABI_CWindows_CSystem_CIDispatcherQueueTimer_add_Tick(This,handler,token) (This)->lpVtbl->add_Tick(This,handler,token)
#define __x_ABI_CWindows_CSystem_CIDispatcherQueueTimer_remove_Tick(This,token) (This)->lpVtbl->remove_Tick(This,token)
#else
/*** IUnknown methods ***/
static inline HRESULT __x_ABI_CWindows_CSystem_CIDispatcherQueueTimer_QueryInterface(__x_ABI_CWindows_CSystem_CIDispatcherQueueTimer* This,REFIID riid,void **ppvObject) {
    return This->lpVtbl->QueryInterface(This,riid,ppvObject);
}
static inline ULONG __x_ABI_CWindows_CSystem_CIDispatcherQueueTimer_AddRef(__x_ABI_CWindows_CSystem_CIDispatcherQueueTimer* This) {
    return This->lpVtbl->AddRef(This);
}
static inline ULONG __x_ABI_CWindows_CSystem_CIDispatcherQueueTimer_Release(__x_ABI_CWindows_CSystem_CIDispatcherQueueTimer* This) {
    return This->lpVtbl->Release(This);
}
/*** IInspectable methods ***/
static inline HRESULT __x_ABI_CWindows_CSystem_CIDispatcherQueueTimer_GetIids(__x_ABI_CWindows_CSystem_CIDispatcherQueueTimer* This,ULONG *iidCount,IID **iids) {
    return This->lpVtbl->GetIids(This,iidCount,iids);
}
static inline HRESULT __x_ABI_CWindows_CSystem_CIDispatcherQueueTimer_GetRuntimeClassName(__x_ABI_CWindows_CSystem_CIDispatcherQueueTimer* This,HSTRING *className) {
    return This->lpVtbl->GetRuntimeClassName(This,className);
}
static inline HRESULT __x_ABI_CWindows_CSystem_CIDispatcherQueueTimer_GetTrustLevel(__x_ABI_CWindows_CSystem_CIDispatcherQueueTimer* This,TrustLevel *trustLevel) {
    return This->lpVtbl->GetTrustLevel(This,trustLevel);
}
/*** IDispatcherQueueTimer methods ***/
static inline HRESULT __x_ABI_CWindows_CSystem_CIDispatcherQueueTimer_get_Interval(__x_ABI_CWindows_CSystem_CIDispatcherQueueTimer* This,__x_ABI_CWindows_CFoundation_CTimeSpan *value) {
    return This->lpVtbl->get_Interval(This,value);
}
static inline HRESULT __x_ABI_CWindows_CSystem_CIDispatcherQueueTimer_put_Interval(__x_ABI_CWindows_CSystem_CIDispatcherQueueTimer* This,__x_ABI_CWindows_CFoundation_CTimeSpan value) {
    return This->lpVtbl->put_Interval(This,value);
}
static inline HRESULT __x_ABI_CWindows_CSystem_CIDispatcherQueueTimer_get_IsRunning(__x_ABI_CWindows_CSystem_CIDispatcherQueueTimer* This,boolean *value) {
    return This->lpVtbl->get_IsRunning(This,value);
}
static inline HRESULT __x_ABI_CWindows_CSystem_CIDispatcherQueueTimer_get_IsRepeating(__x_ABI_CWindows_CSystem_CIDispatcherQueueTimer* This,boolean *value) {
    return This->lpVtbl->get_IsRepeating(This,value);
}
static inline HRESULT __x_ABI_CWindows_CSystem_CIDispatcherQueueTimer_put_IsRepeating(__x_ABI_CWindows_CSystem_CIDispatcherQueueTimer* This,boolean value) {
    return This->lpVtbl->put_IsRepeating(This,value);
}
static inline HRESULT __x_ABI_CWindows_CSystem_CIDispatcherQueueTimer_Start(__x_ABI_CWindows_CSystem_CIDispatcherQueueTimer* This) {
    return This->lpVtbl->Start(This);
}
static inline HRESULT __x_ABI_CWindows_CSystem_CIDispatcherQueueTimer_Stop(__x_ABI_CWindows_CSystem_CIDispatcherQueueTimer* This) {
    return This->lpVtbl->Stop(This);
}
static inline HRESULT __x_ABI_CWindows_CSystem_CIDispatcherQueueTimer_add_Tick(__x_ABI_CWindows_CSystem_CIDispatcherQueueTimer* This,__FITypedEventHandler_2_Windows__CSystem__CDispatcherQueueTimer_IInspectable *handler,EventRegistrationToken *token) {
    return This->lpVtbl->add_Tick(This,handler,token);
}
static inline HRESULT __x_ABI_CWindows_CSystem_CIDispatcherQueueTimer_remove_Tick(__x_ABI_CWindows_CSystem_CIDispatcherQueueTimer* This,EventRegistrationToken token) {
    return This->lpVtbl->remove_Tick(This,token);
}
#endif
#ifdef WIDL_using_Windows_System
#define IID_IDispatcherQueueTimer IID___x_ABI_CWindows_CSystem_CIDispatcherQueueTimer
#define IDispatcherQueueTimerVtbl __x_ABI_CWindows_CSystem_CIDispatcherQueueTimerVtbl
#define IDispatcherQueueTimer __x_ABI_CWindows_CSystem_CIDispatcherQueueTimer
#define IDispatcherQueueTimer_QueryInterface __x_ABI_CWindows_CSystem_CIDispatcherQueueTimer_QueryInterface
#define IDispatcherQueueTimer_AddRef __x_ABI_CWindows_CSystem_CIDispatcherQueueTimer_AddRef
#define IDispatcherQueueTimer_Release __x_ABI_CWindows_CSystem_CIDispatcherQueueTimer_Release
#define IDispatcherQueueTimer_GetIids __x_ABI_CWindows_CSystem_CIDispatcherQueueTimer_GetIids
#define IDispatcherQueueTimer_GetRuntimeClassName __x_ABI_CWindows_CSystem_CIDispatcherQueueTimer_GetRuntimeClassName
#define IDispatcherQueueTimer_GetTrustLevel __x_ABI_CWindows_CSystem_CIDispatcherQueueTimer_GetTrustLevel
#define IDispatcherQueueTimer_get_Interval __x_ABI_CWindows_CSystem_CIDispatcherQueueTimer_get_Interval
#define IDispatcherQueueTimer_put_Interval __x_ABI_CWindows_CSystem_CIDispatcherQueueTimer_put_Interval
#define IDispatcherQueueTimer_get_IsRunning __x_ABI_CWindows_CSystem_CIDispatcherQueueTimer_get_IsRunning
#define IDispatcherQueueTimer_get_IsRepeating __x_ABI_CWindows_CSystem_CIDispatcherQueueTimer_get_IsRepeating
#define IDispatcherQueueTimer_put_IsRepeating __x_ABI_CWindows_CSystem_CIDispatcherQueueTimer_put_IsRepeating
#define IDispatcherQueueTimer_Start __x_ABI_CWindows_CSystem_CIDispatcherQueueTimer_Start
#define IDispatcherQueueTimer_Stop __x_ABI_CWindows_CSystem_CIDispatcherQueueTimer_Stop
#define IDispatcherQueueTimer_add_Tick __x_ABI_CWindows_CSystem_CIDispatcherQueueTimer_add_Tick
#define IDispatcherQueueTimer_remove_Tick __x_ABI_CWindows_CSystem_CIDispatcherQueueTimer_remove_Tick
#endif /* WIDL_using_Windows_System */
#endif

#endif

#endif  /* ____x_ABI_CWindows_CSystem_CIDispatcherQueueTimer_INTERFACE_DEFINED__ */
#endif /* WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION >= 0x50000 */

/*****************************************************************************
 * IUser interface
 */
#if WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION >= 0x10000
#ifndef ____x_ABI_CWindows_CSystem_CIUser_INTERFACE_DEFINED__
#define ____x_ABI_CWindows_CSystem_CIUser_INTERFACE_DEFINED__

DEFINE_GUID(IID___x_ABI_CWindows_CSystem_CIUser, 0xdf9a26c6, 0xe746, 0x4bcd, 0xb5,0xd4, 0x12,0x01,0x03,0xc4,0x20,0x9b);
#if defined(__cplusplus) && !defined(CINTERFACE)
} /* extern "C" */
namespace ABI {
    namespace Windows {
        namespace System {
            MIDL_INTERFACE("df9a26c6-e746-4bcd-b5d4-120103c4209b")
            IUser : public IInspectable
            {
                virtual HRESULT STDMETHODCALLTYPE get_NonRoamableId(
                    HSTRING *value) = 0;

                virtual HRESULT STDMETHODCALLTYPE get_AuthenticationStatus(
                    ABI::Windows::System::UserAuthenticationStatus *value) = 0;

                virtual HRESULT STDMETHODCALLTYPE get_Type(
                    ABI::Windows::System::UserType *value) = 0;

                virtual HRESULT STDMETHODCALLTYPE GetPropertyAsync(
                    HSTRING value,
                    ABI::Windows::Foundation::IAsyncOperation<IInspectable* > **operation) = 0;

                virtual HRESULT STDMETHODCALLTYPE GetPropertiesAsync(
                    ABI::Windows::Foundation::Collections::IVectorView<HSTRING > *values,
                    ABI::Windows::Foundation::IAsyncOperation<ABI::Windows::Foundation::Collections::IPropertySet* > **operation) = 0;

                virtual HRESULT STDMETHODCALLTYPE GetPictureAsync(
                    ABI::Windows::System::UserPictureSize desired_size,
                    ABI::Windows::Foundation::IAsyncOperation<ABI::Windows::Storage::Streams::IRandomAccessStreamReference* > **operation) = 0;

            };
        }
    }
}
extern "C" {
#ifdef __CRT_UUID_DECL
__CRT_UUID_DECL(__x_ABI_CWindows_CSystem_CIUser, 0xdf9a26c6, 0xe746, 0x4bcd, 0xb5,0xd4, 0x12,0x01,0x03,0xc4,0x20,0x9b)
#endif
#else
typedef struct __x_ABI_CWindows_CSystem_CIUserVtbl {
    BEGIN_INTERFACE

    /*** IUnknown methods ***/
    HRESULT (STDMETHODCALLTYPE *QueryInterface)(
        __x_ABI_CWindows_CSystem_CIUser *This,
        REFIID riid,
        void **ppvObject);

    ULONG (STDMETHODCALLTYPE *AddRef)(
        __x_ABI_CWindows_CSystem_CIUser *This);

    ULONG (STDMETHODCALLTYPE *Release)(
        __x_ABI_CWindows_CSystem_CIUser *This);

    /*** IInspectable methods ***/
    HRESULT (STDMETHODCALLTYPE *GetIids)(
        __x_ABI_CWindows_CSystem_CIUser *This,
        ULONG *iidCount,
        IID **iids);

    HRESULT (STDMETHODCALLTYPE *GetRuntimeClassName)(
        __x_ABI_CWindows_CSystem_CIUser *This,
        HSTRING *className);

    HRESULT (STDMETHODCALLTYPE *GetTrustLevel)(
        __x_ABI_CWindows_CSystem_CIUser *This,
        TrustLevel *trustLevel);

    /*** IUser methods ***/
    HRESULT (STDMETHODCALLTYPE *get_NonRoamableId)(
        __x_ABI_CWindows_CSystem_CIUser *This,
        HSTRING *value);

    HRESULT (STDMETHODCALLTYPE *get_AuthenticationStatus)(
        __x_ABI_CWindows_CSystem_CIUser *This,
        __x_ABI_CWindows_CSystem_CUserAuthenticationStatus *value);

    HRESULT (STDMETHODCALLTYPE *get_Type)(
        __x_ABI_CWindows_CSystem_CIUser *This,
        __x_ABI_CWindows_CSystem_CUserType *value);

    HRESULT (STDMETHODCALLTYPE *GetPropertyAsync)(
        __x_ABI_CWindows_CSystem_CIUser *This,
        HSTRING value,
        __FIAsyncOperation_1_IInspectable **operation);

    HRESULT (STDMETHODCALLTYPE *GetPropertiesAsync)(
        __x_ABI_CWindows_CSystem_CIUser *This,
        __FIVectorView_1_HSTRING *values,
        __FIAsyncOperation_1_Windows__CFoundation__CCollections__CIPropertySet **operation);

    HRESULT (STDMETHODCALLTYPE *GetPictureAsync)(
        __x_ABI_CWindows_CSystem_CIUser *This,
        __x_ABI_CWindows_CSystem_CUserPictureSize desired_size,
        __FIAsyncOperation_1_Windows__CStorage__CStreams__CIRandomAccessStreamReference **operation);

    END_INTERFACE
} __x_ABI_CWindows_CSystem_CIUserVtbl;

interface __x_ABI_CWindows_CSystem_CIUser {
    CONST_VTBL __x_ABI_CWindows_CSystem_CIUserVtbl* lpVtbl;
};

#ifdef COBJMACROS
#ifndef WIDL_C_INLINE_WRAPPERS
/*** IUnknown methods ***/
#define __x_ABI_CWindows_CSystem_CIUser_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
#define __x_ABI_CWindows_CSystem_CIUser_AddRef(This) (This)->lpVtbl->AddRef(This)
#define __x_ABI_CWindows_CSystem_CIUser_Release(This) (This)->lpVtbl->Release(This)
/*** IInspectable methods ***/
#define __x_ABI_CWindows_CSystem_CIUser_GetIids(This,iidCount,iids) (This)->lpVtbl->GetIids(This,iidCount,iids)
#define __x_ABI_CWindows_CSystem_CIUser_GetRuntimeClassName(This,className) (This)->lpVtbl->GetRuntimeClassName(This,className)
#define __x_ABI_CWindows_CSystem_CIUser_GetTrustLevel(This,trustLevel) (This)->lpVtbl->GetTrustLevel(This,trustLevel)
/*** IUser methods ***/
#define __x_ABI_CWindows_CSystem_CIUser_get_NonRoamableId(This,value) (This)->lpVtbl->get_NonRoamableId(This,value)
#define __x_ABI_CWindows_CSystem_CIUser_get_AuthenticationStatus(This,value) (This)->lpVtbl->get_AuthenticationStatus(This,value)
#define __x_ABI_CWindows_CSystem_CIUser_get_Type(This,value) (This)->lpVtbl->get_Type(This,value)
#define __x_ABI_CWindows_CSystem_CIUser_GetPropertyAsync(This,value,operation) (This)->lpVtbl->GetPropertyAsync(This,value,operation)
#define __x_ABI_CWindows_CSystem_CIUser_GetPropertiesAsync(This,values,operation) (This)->lpVtbl->GetPropertiesAsync(This,values,operation)
#define __x_ABI_CWindows_CSystem_CIUser_GetPictureAsync(This,desired_size,operation) (This)->lpVtbl->GetPictureAsync(This,desired_size,operation)
#else
/*** IUnknown methods ***/
static inline HRESULT __x_ABI_CWindows_CSystem_CIUser_QueryInterface(__x_ABI_CWindows_CSystem_CIUser* This,REFIID riid,void **ppvObject) {
    return This->lpVtbl->QueryInterface(This,riid,ppvObject);
}
static inline ULONG __x_ABI_CWindows_CSystem_CIUser_AddRef(__x_ABI_CWindows_CSystem_CIUser* This) {
    return This->lpVtbl->AddRef(This);
}
static inline ULONG __x_ABI_CWindows_CSystem_CIUser_Release(__x_ABI_CWindows_CSystem_CIUser* This) {
    return This->lpVtbl->Release(This);
}
/*** IInspectable methods ***/
static inline HRESULT __x_ABI_CWindows_CSystem_CIUser_GetIids(__x_ABI_CWindows_CSystem_CIUser* This,ULONG *iidCount,IID **iids) {
    return This->lpVtbl->GetIids(This,iidCount,iids);
}
static inline HRESULT __x_ABI_CWindows_CSystem_CIUser_GetRuntimeClassName(__x_ABI_CWindows_CSystem_CIUser* This,HSTRING *className) {
    return This->lpVtbl->GetRuntimeClassName(This,className);
}
static inline HRESULT __x_ABI_CWindows_CSystem_CIUser_GetTrustLevel(__x_ABI_CWindows_CSystem_CIUser* This,TrustLevel *trustLevel) {
    return This->lpVtbl->GetTrustLevel(This,trustLevel);
}
/*** IUser methods ***/
static inline HRESULT __x_ABI_CWindows_CSystem_CIUser_get_NonRoamableId(__x_ABI_CWindows_CSystem_CIUser* This,HSTRING *value) {
    return This->lpVtbl->get_NonRoamableId(This,value);
}
static inline HRESULT __x_ABI_CWindows_CSystem_CIUser_get_AuthenticationStatus(__x_ABI_CWindows_CSystem_CIUser* This,__x_ABI_CWindows_CSystem_CUserAuthenticationStatus *value) {
    return This->lpVtbl->get_AuthenticationStatus(This,value);
}
static inline HRESULT __x_ABI_CWindows_CSystem_CIUser_get_Type(__x_ABI_CWindows_CSystem_CIUser* This,__x_ABI_CWindows_CSystem_CUserType *value) {
    return This->lpVtbl->get_Type(This,value);
}
static inline HRESULT __x_ABI_CWindows_CSystem_CIUser_GetPropertyAsync(__x_ABI_CWindows_CSystem_CIUser* This,HSTRING value,__FIAsyncOperation_1_IInspectable **operation) {
    return This->lpVtbl->GetPropertyAsync(This,value,operation);
}
static inline HRESULT __x_ABI_CWindows_CSystem_CIUser_GetPropertiesAsync(__x_ABI_CWindows_CSystem_CIUser* This,__FIVectorView_1_HSTRING *values,__FIAsyncOperation_1_Windows__CFoundation__CCollections__CIPropertySet **operation) {
    return This->lpVtbl->GetPropertiesAsync(This,values,operation);
}
static inline HRESULT __x_ABI_CWindows_CSystem_CIUser_GetPictureAsync(__x_ABI_CWindows_CSystem_CIUser* This,__x_ABI_CWindows_CSystem_CUserPictureSize desired_size,__FIAsyncOperation_1_Windows__CStorage__CStreams__CIRandomAccessStreamReference **operation) {
    return This->lpVtbl->GetPictureAsync(This,desired_size,operation);
}
#endif
#ifdef WIDL_using_Windows_System
#define IID_IUser IID___x_ABI_CWindows_CSystem_CIUser
#define IUserVtbl __x_ABI_CWindows_CSystem_CIUserVtbl
#define IUser __x_ABI_CWindows_CSystem_CIUser
#define IUser_QueryInterface __x_ABI_CWindows_CSystem_CIUser_QueryInterface
#define IUser_AddRef __x_ABI_CWindows_CSystem_CIUser_AddRef
#define IUser_Release __x_ABI_CWindows_CSystem_CIUser_Release
#define IUser_GetIids __x_ABI_CWindows_CSystem_CIUser_GetIids
#define IUser_GetRuntimeClassName __x_ABI_CWindows_CSystem_CIUser_GetRuntimeClassName
#define IUser_GetTrustLevel __x_ABI_CWindows_CSystem_CIUser_GetTrustLevel
#define IUser_get_NonRoamableId __x_ABI_CWindows_CSystem_CIUser_get_NonRoamableId
#define IUser_get_AuthenticationStatus __x_ABI_CWindows_CSystem_CIUser_get_AuthenticationStatus
#define IUser_get_Type __x_ABI_CWindows_CSystem_CIUser_get_Type
#define IUser_GetPropertyAsync __x_ABI_CWindows_CSystem_CIUser_GetPropertyAsync
#define IUser_GetPropertiesAsync __x_ABI_CWindows_CSystem_CIUser_GetPropertiesAsync
#define IUser_GetPictureAsync __x_ABI_CWindows_CSystem_CIUser_GetPictureAsync
#endif /* WIDL_using_Windows_System */
#endif

#endif

#endif  /* ____x_ABI_CWindows_CSystem_CIUser_INTERFACE_DEFINED__ */
#endif /* WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION >= 0x10000 */

/*****************************************************************************
 * IUserChangedEventArgs interface
 */
#if WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION >= 0x10000
#ifndef ____x_ABI_CWindows_CSystem_CIUserChangedEventArgs_INTERFACE_DEFINED__
#define ____x_ABI_CWindows_CSystem_CIUserChangedEventArgs_INTERFACE_DEFINED__

DEFINE_GUID(IID___x_ABI_CWindows_CSystem_CIUserChangedEventArgs, 0x086459dc, 0x18c6, 0x48db, 0xbc,0x99, 0x72,0x4f,0xb9,0x20,0x3c,0xcc);
#if defined(__cplusplus) && !defined(CINTERFACE)
} /* extern "C" */
namespace ABI {
    namespace Windows {
        namespace System {
            MIDL_INTERFACE("086459dc-18c6-48db-bc99-724fb9203ccc")
            IUserChangedEventArgs : public IInspectable
            {
                virtual HRESULT STDMETHODCALLTYPE get_User(
                    ABI::Windows::System::IUser **value) = 0;

            };
        }
    }
}
extern "C" {
#ifdef __CRT_UUID_DECL
__CRT_UUID_DECL(__x_ABI_CWindows_CSystem_CIUserChangedEventArgs, 0x086459dc, 0x18c6, 0x48db, 0xbc,0x99, 0x72,0x4f,0xb9,0x20,0x3c,0xcc)
#endif
#else
typedef struct __x_ABI_CWindows_CSystem_CIUserChangedEventArgsVtbl {
    BEGIN_INTERFACE

    /*** IUnknown methods ***/
    HRESULT (STDMETHODCALLTYPE *QueryInterface)(
        __x_ABI_CWindows_CSystem_CIUserChangedEventArgs *This,
        REFIID riid,
        void **ppvObject);

    ULONG (STDMETHODCALLTYPE *AddRef)(
        __x_ABI_CWindows_CSystem_CIUserChangedEventArgs *This);

    ULONG (STDMETHODCALLTYPE *Release)(
        __x_ABI_CWindows_CSystem_CIUserChangedEventArgs *This);

    /*** IInspectable methods ***/
    HRESULT (STDMETHODCALLTYPE *GetIids)(
        __x_ABI_CWindows_CSystem_CIUserChangedEventArgs *This,
        ULONG *iidCount,
        IID **iids);

    HRESULT (STDMETHODCALLTYPE *GetRuntimeClassName)(
        __x_ABI_CWindows_CSystem_CIUserChangedEventArgs *This,
        HSTRING *className);

    HRESULT (STDMETHODCALLTYPE *GetTrustLevel)(
        __x_ABI_CWindows_CSystem_CIUserChangedEventArgs *This,
        TrustLevel *trustLevel);

    /*** IUserChangedEventArgs methods ***/
    HRESULT (STDMETHODCALLTYPE *get_User)(
        __x_ABI_CWindows_CSystem_CIUserChangedEventArgs *This,
        __x_ABI_CWindows_CSystem_CIUser **value);

    END_INTERFACE
} __x_ABI_CWindows_CSystem_CIUserChangedEventArgsVtbl;

interface __x_ABI_CWindows_CSystem_CIUserChangedEventArgs {
    CONST_VTBL __x_ABI_CWindows_CSystem_CIUserChangedEventArgsVtbl* lpVtbl;
};

#ifdef COBJMACROS
#ifndef WIDL_C_INLINE_WRAPPERS
/*** IUnknown methods ***/
#define __x_ABI_CWindows_CSystem_CIUserChangedEventArgs_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
#define __x_ABI_CWindows_CSystem_CIUserChangedEventArgs_AddRef(This) (This)->lpVtbl->AddRef(This)
#define __x_ABI_CWindows_CSystem_CIUserChangedEventArgs_Release(This) (This)->lpVtbl->Release(This)
/*** IInspectable methods ***/
#define __x_ABI_CWindows_CSystem_CIUserChangedEventArgs_GetIids(This,iidCount,iids) (This)->lpVtbl->GetIids(This,iidCount,iids)
#define __x_ABI_CWindows_CSystem_CIUserChangedEventArgs_GetRuntimeClassName(This,className) (This)->lpVtbl->GetRuntimeClassName(This,className)
#define __x_ABI_CWindows_CSystem_CIUserChangedEventArgs_GetTrustLevel(This,trustLevel) (This)->lpVtbl->GetTrustLevel(This,trustLevel)
/*** IUserChangedEventArgs methods ***/
#define __x_ABI_CWindows_CSystem_CIUserChangedEventArgs_get_User(This,value) (This)->lpVtbl->get_User(This,value)
#else
/*** IUnknown methods ***/
static inline HRESULT __x_ABI_CWindows_CSystem_CIUserChangedEventArgs_QueryInterface(__x_ABI_CWindows_CSystem_CIUserChangedEventArgs* This,REFIID riid,void **ppvObject) {
    return This->lpVtbl->QueryInterface(This,riid,ppvObject);
}
static inline ULONG __x_ABI_CWindows_CSystem_CIUserChangedEventArgs_AddRef(__x_ABI_CWindows_CSystem_CIUserChangedEventArgs* This) {
    return This->lpVtbl->AddRef(This);
}
static inline ULONG __x_ABI_CWindows_CSystem_CIUserChangedEventArgs_Release(__x_ABI_CWindows_CSystem_CIUserChangedEventArgs* This) {
    return This->lpVtbl->Release(This);
}
/*** IInspectable methods ***/
static inline HRESULT __x_ABI_CWindows_CSystem_CIUserChangedEventArgs_GetIids(__x_ABI_CWindows_CSystem_CIUserChangedEventArgs* This,ULONG *iidCount,IID **iids) {
    return This->lpVtbl->GetIids(This,iidCount,iids);
}
static inline HRESULT __x_ABI_CWindows_CSystem_CIUserChangedEventArgs_GetRuntimeClassName(__x_ABI_CWindows_CSystem_CIUserChangedEventArgs* This,HSTRING *className) {
    return This->lpVtbl->GetRuntimeClassName(This,className);
}
static inline HRESULT __x_ABI_CWindows_CSystem_CIUserChangedEventArgs_GetTrustLevel(__x_ABI_CWindows_CSystem_CIUserChangedEventArgs* This,TrustLevel *trustLevel) {
    return This->lpVtbl->GetTrustLevel(This,trustLevel);
}
/*** IUserChangedEventArgs methods ***/
static inline HRESULT __x_ABI_CWindows_CSystem_CIUserChangedEventArgs_get_User(__x_ABI_CWindows_CSystem_CIUserChangedEventArgs* This,__x_ABI_CWindows_CSystem_CIUser **value) {
    return This->lpVtbl->get_User(This,value);
}
#endif
#ifdef WIDL_using_Windows_System
#define IID_IUserChangedEventArgs IID___x_ABI_CWindows_CSystem_CIUserChangedEventArgs
#define IUserChangedEventArgsVtbl __x_ABI_CWindows_CSystem_CIUserChangedEventArgsVtbl
#define IUserChangedEventArgs __x_ABI_CWindows_CSystem_CIUserChangedEventArgs
#define IUserChangedEventArgs_QueryInterface __x_ABI_CWindows_CSystem_CIUserChangedEventArgs_QueryInterface
#define IUserChangedEventArgs_AddRef __x_ABI_CWindows_CSystem_CIUserChangedEventArgs_AddRef
#define IUserChangedEventArgs_Release __x_ABI_CWindows_CSystem_CIUserChangedEventArgs_Release
#define IUserChangedEventArgs_GetIids __x_ABI_CWindows_CSystem_CIUserChangedEventArgs_GetIids
#define IUserChangedEventArgs_GetRuntimeClassName __x_ABI_CWindows_CSystem_CIUserChangedEventArgs_GetRuntimeClassName
#define IUserChangedEventArgs_GetTrustLevel __x_ABI_CWindows_CSystem_CIUserChangedEventArgs_GetTrustLevel
#define IUserChangedEventArgs_get_User __x_ABI_CWindows_CSystem_CIUserChangedEventArgs_get_User
#endif /* WIDL_using_Windows_System */
#endif

#endif

#endif  /* ____x_ABI_CWindows_CSystem_CIUserChangedEventArgs_INTERFACE_DEFINED__ */
#endif /* WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION >= 0x10000 */

/*
 * Class Windows.System.DispatcherQueue
 */
#if WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION >= 0x50000
#ifndef RUNTIMECLASS_Windows_System_DispatcherQueue_DEFINED
#define RUNTIMECLASS_Windows_System_DispatcherQueue_DEFINED
#if !defined(_MSC_VER) && !defined(__MINGW32__)
static const WCHAR RuntimeClass_Windows_System_DispatcherQueue[] = {'W','i','n','d','o','w','s','.','S','y','s','t','e','m','.','D','i','s','p','a','t','c','h','e','r','Q','u','e','u','e',0};
#elif defined(__GNUC__) && !defined(__cplusplus)
const DECLSPEC_SELECTANY WCHAR RuntimeClass_Windows_System_DispatcherQueue[] = L"Windows.System.DispatcherQueue";
#else
extern const DECLSPEC_SELECTANY WCHAR RuntimeClass_Windows_System_DispatcherQueue[] = {'W','i','n','d','o','w','s','.','S','y','s','t','e','m','.','D','i','s','p','a','t','c','h','e','r','Q','u','e','u','e',0};
#endif
#endif /* RUNTIMECLASS_Windows_System_DispatcherQueue_DEFINED */
#endif /* WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION >= 0x50000 */

/*
 * Class Windows.System.DispatcherQueueController
 */
#if WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION >= 0x50000
#ifndef RUNTIMECLASS_Windows_System_DispatcherQueueController_DEFINED
#define RUNTIMECLASS_Windows_System_DispatcherQueueController_DEFINED
#if !defined(_MSC_VER) && !defined(__MINGW32__)
static const WCHAR RuntimeClass_Windows_System_DispatcherQueueController[] = {'W','i','n','d','o','w','s','.','S','y','s','t','e','m','.','D','i','s','p','a','t','c','h','e','r','Q','u','e','u','e','C','o','n','t','r','o','l','l','e','r',0};
#elif defined(__GNUC__) && !defined(__cplusplus)
const DECLSPEC_SELECTANY WCHAR RuntimeClass_Windows_System_DispatcherQueueController[] = L"Windows.System.DispatcherQueueController";
#else
extern const DECLSPEC_SELECTANY WCHAR RuntimeClass_Windows_System_DispatcherQueueController[] = {'W','i','n','d','o','w','s','.','S','y','s','t','e','m','.','D','i','s','p','a','t','c','h','e','r','Q','u','e','u','e','C','o','n','t','r','o','l','l','e','r',0};
#endif
#endif /* RUNTIMECLASS_Windows_System_DispatcherQueueController_DEFINED */
#endif /* WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION >= 0x50000 */

/*
 * Class Windows.System.DispatcherQueueShutdownStartingEventArgs
 */
#if WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION >= 0x50000
#ifndef RUNTIMECLASS_Windows_System_DispatcherQueueShutdownStartingEventArgs_DEFINED
#define RUNTIMECLASS_Windows_System_DispatcherQueueShutdownStartingEventArgs_DEFINED
#if !defined(_MSC_VER) && !defined(__MINGW32__)
static const WCHAR RuntimeClass_Windows_System_DispatcherQueueShutdownStartingEventArgs[] = {'W','i','n','d','o','w','s','.','S','y','s','t','e','m','.','D','i','s','p','a','t','c','h','e','r','Q','u','e','u','e','S','h','u','t','d','o','w','n','S','t','a','r','t','i','n','g','E','v','e','n','t','A','r','g','s',0};
#elif defined(__GNUC__) && !defined(__cplusplus)
const DECLSPEC_SELECTANY WCHAR RuntimeClass_Windows_System_DispatcherQueueShutdownStartingEventArgs[] = L"Windows.System.DispatcherQueueShutdownStartingEventArgs";
#else
extern const DECLSPEC_SELECTANY WCHAR RuntimeClass_Windows_System_DispatcherQueueShutdownStartingEventArgs[] = {'W','i','n','d','o','w','s','.','S','y','s','t','e','m','.','D','i','s','p','a','t','c','h','e','r','Q','u','e','u','e','S','h','u','t','d','o','w','n','S','t','a','r','t','i','n','g','E','v','e','n','t','A','r','g','s',0};
#endif
#endif /* RUNTIMECLASS_Windows_System_DispatcherQueueShutdownStartingEventArgs_DEFINED */
#endif /* WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION >= 0x50000 */

/*
 * Class Windows.System.DispatcherQueueTimer
 */
#if WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION >= 0x50000
#ifndef RUNTIMECLASS_Windows_System_DispatcherQueueTimer_DEFINED
#define RUNTIMECLASS_Windows_System_DispatcherQueueTimer_DEFINED
#if !defined(_MSC_VER) && !defined(__MINGW32__)
static const WCHAR RuntimeClass_Windows_System_DispatcherQueueTimer[] = {'W','i','n','d','o','w','s','.','S','y','s','t','e','m','.','D','i','s','p','a','t','c','h','e','r','Q','u','e','u','e','T','i','m','e','r',0};
#elif defined(__GNUC__) && !defined(__cplusplus)
const DECLSPEC_SELECTANY WCHAR RuntimeClass_Windows_System_DispatcherQueueTimer[] = L"Windows.System.DispatcherQueueTimer";
#else
extern const DECLSPEC_SELECTANY WCHAR RuntimeClass_Windows_System_DispatcherQueueTimer[] = {'W','i','n','d','o','w','s','.','S','y','s','t','e','m','.','D','i','s','p','a','t','c','h','e','r','Q','u','e','u','e','T','i','m','e','r',0};
#endif
#endif /* RUNTIMECLASS_Windows_System_DispatcherQueueTimer_DEFINED */
#endif /* WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION >= 0x50000 */

/*
 * Class Windows.System.User
 */
#if WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION >= 0x10000
#ifndef RUNTIMECLASS_Windows_System_User_DEFINED
#define RUNTIMECLASS_Windows_System_User_DEFINED
#if !defined(_MSC_VER) && !defined(__MINGW32__)
static const WCHAR RuntimeClass_Windows_System_User[] = {'W','i','n','d','o','w','s','.','S','y','s','t','e','m','.','U','s','e','r',0};
#elif defined(__GNUC__) && !defined(__cplusplus)
const DECLSPEC_SELECTANY WCHAR RuntimeClass_Windows_System_User[] = L"Windows.System.User";
#else
extern const DECLSPEC_SELECTANY WCHAR RuntimeClass_Windows_System_User[] = {'W','i','n','d','o','w','s','.','S','y','s','t','e','m','.','U','s','e','r',0};
#endif
#endif /* RUNTIMECLASS_Windows_System_User_DEFINED */
#endif /* WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION >= 0x10000 */

/*
 * Class Windows.System.UserChangedEventArgs
 */
#if WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION >= 0x10000
#ifndef RUNTIMECLASS_Windows_System_UserChangedEventArgs_DEFINED
#define RUNTIMECLASS_Windows_System_UserChangedEventArgs_DEFINED
#if !defined(_MSC_VER) && !defined(__MINGW32__)
static const WCHAR RuntimeClass_Windows_System_UserChangedEventArgs[] = {'W','i','n','d','o','w','s','.','S','y','s','t','e','m','.','U','s','e','r','C','h','a','n','g','e','d','E','v','e','n','t','A','r','g','s',0};
#elif defined(__GNUC__) && !defined(__cplusplus)
const DECLSPEC_SELECTANY WCHAR RuntimeClass_Windows_System_UserChangedEventArgs[] = L"Windows.System.UserChangedEventArgs";
#else
extern const DECLSPEC_SELECTANY WCHAR RuntimeClass_Windows_System_UserChangedEventArgs[] = {'W','i','n','d','o','w','s','.','S','y','s','t','e','m','.','U','s','e','r','C','h','a','n','g','e','d','E','v','e','n','t','A','r','g','s',0};
#endif
#endif /* RUNTIMECLASS_Windows_System_UserChangedEventArgs_DEFINED */
#endif /* WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION >= 0x10000 */

/*****************************************************************************
 * IAsyncOperationCompletedHandler<ABI::Windows::Foundation::Collections::IPropertySet* > interface
 */
#ifndef ____FIAsyncOperationCompletedHandler_1_Windows__CFoundation__CCollections__CIPropertySet_INTERFACE_DEFINED__
#define ____FIAsyncOperationCompletedHandler_1_Windows__CFoundation__CCollections__CIPropertySet_INTERFACE_DEFINED__

DEFINE_GUID(IID___FIAsyncOperationCompletedHandler_1_Windows__CFoundation__CCollections__CIPropertySet, 0x5075a55f, 0x68ba, 0x56f2, 0x97,0xe6, 0x9b,0x1c,0xbf,0xa2,0xc5,0xf2);
#if defined(__cplusplus) && !defined(CINTERFACE)
} /* extern "C" */
namespace ABI {
    namespace Windows {
        namespace Foundation {
            template<>
            MIDL_INTERFACE("5075a55f-68ba-56f2-97e6-9b1cbfa2c5f2")
            IAsyncOperationCompletedHandler<ABI::Windows::Foundation::Collections::IPropertySet* > : IAsyncOperationCompletedHandler_impl<ABI::Windows::Foundation::Collections::IPropertySet* >
            {
            };
        }
    }
}
extern "C" {
#ifdef __CRT_UUID_DECL
__CRT_UUID_DECL(__FIAsyncOperationCompletedHandler_1_Windows__CFoundation__CCollections__CIPropertySet, 0x5075a55f, 0x68ba, 0x56f2, 0x97,0xe6, 0x9b,0x1c,0xbf,0xa2,0xc5,0xf2)
#endif
#else
typedef struct __FIAsyncOperationCompletedHandler_1_Windows__CFoundation__CCollections__CIPropertySetVtbl {
    BEGIN_INTERFACE

    /*** IUnknown methods ***/
    HRESULT (STDMETHODCALLTYPE *QueryInterface)(
        __FIAsyncOperationCompletedHandler_1_Windows__CFoundation__CCollections__CIPropertySet *This,
        REFIID riid,
        void **ppvObject);

    ULONG (STDMETHODCALLTYPE *AddRef)(
        __FIAsyncOperationCompletedHandler_1_Windows__CFoundation__CCollections__CIPropertySet *This);

    ULONG (STDMETHODCALLTYPE *Release)(
        __FIAsyncOperationCompletedHandler_1_Windows__CFoundation__CCollections__CIPropertySet *This);

    /*** IAsyncOperationCompletedHandler<ABI::Windows::Foundation::Collections::IPropertySet* > methods ***/
    HRESULT (STDMETHODCALLTYPE *Invoke)(
        __FIAsyncOperationCompletedHandler_1_Windows__CFoundation__CCollections__CIPropertySet *This,
        __FIAsyncOperation_1_Windows__CFoundation__CCollections__CIPropertySet *info,
        AsyncStatus status);

    END_INTERFACE
} __FIAsyncOperationCompletedHandler_1_Windows__CFoundation__CCollections__CIPropertySetVtbl;

interface __FIAsyncOperationCompletedHandler_1_Windows__CFoundation__CCollections__CIPropertySet {
    CONST_VTBL __FIAsyncOperationCompletedHandler_1_Windows__CFoundation__CCollections__CIPropertySetVtbl* lpVtbl;
};

#ifdef COBJMACROS
#ifndef WIDL_C_INLINE_WRAPPERS
/*** IUnknown methods ***/
#define __FIAsyncOperationCompletedHandler_1_Windows__CFoundation__CCollections__CIPropertySet_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
#define __FIAsyncOperationCompletedHandler_1_Windows__CFoundation__CCollections__CIPropertySet_AddRef(This) (This)->lpVtbl->AddRef(This)
#define __FIAsyncOperationCompletedHandler_1_Windows__CFoundation__CCollections__CIPropertySet_Release(This) (This)->lpVtbl->Release(This)
/*** IAsyncOperationCompletedHandler<ABI::Windows::Foundation::Collections::IPropertySet* > methods ***/
#define __FIAsyncOperationCompletedHandler_1_Windows__CFoundation__CCollections__CIPropertySet_Invoke(This,info,status) (This)->lpVtbl->Invoke(This,info,status)
#else
/*** IUnknown methods ***/
static inline HRESULT __FIAsyncOperationCompletedHandler_1_Windows__CFoundation__CCollections__CIPropertySet_QueryInterface(__FIAsyncOperationCompletedHandler_1_Windows__CFoundation__CCollections__CIPropertySet* This,REFIID riid,void **ppvObject) {
    return This->lpVtbl->QueryInterface(This,riid,ppvObject);
}
static inline ULONG __FIAsyncOperationCompletedHandler_1_Windows__CFoundation__CCollections__CIPropertySet_AddRef(__FIAsyncOperationCompletedHandler_1_Windows__CFoundation__CCollections__CIPropertySet* This) {
    return This->lpVtbl->AddRef(This);
}
static inline ULONG __FIAsyncOperationCompletedHandler_1_Windows__CFoundation__CCollections__CIPropertySet_Release(__FIAsyncOperationCompletedHandler_1_Windows__CFoundation__CCollections__CIPropertySet* This) {
    return This->lpVtbl->Release(This);
}
/*** IAsyncOperationCompletedHandler<ABI::Windows::Foundation::Collections::IPropertySet* > methods ***/
static inline HRESULT __FIAsyncOperationCompletedHandler_1_Windows__CFoundation__CCollections__CIPropertySet_Invoke(__FIAsyncOperationCompletedHandler_1_Windows__CFoundation__CCollections__CIPropertySet* This,__FIAsyncOperation_1_Windows__CFoundation__CCollections__CIPropertySet *info,AsyncStatus status) {
    return This->lpVtbl->Invoke(This,info,status);
}
#endif
#ifdef WIDL_using_Windows_Foundation
#define IID_IAsyncOperationCompletedHandler_IPropertySet IID___FIAsyncOperationCompletedHandler_1_Windows__CFoundation__CCollections__CIPropertySet
#define IAsyncOperationCompletedHandler_IPropertySetVtbl __FIAsyncOperationCompletedHandler_1_Windows__CFoundation__CCollections__CIPropertySetVtbl
#define IAsyncOperationCompletedHandler_IPropertySet __FIAsyncOperationCompletedHandler_1_Windows__CFoundation__CCollections__CIPropertySet
#define IAsyncOperationCompletedHandler_IPropertySet_QueryInterface __FIAsyncOperationCompletedHandler_1_Windows__CFoundation__CCollections__CIPropertySet_QueryInterface
#define IAsyncOperationCompletedHandler_IPropertySet_AddRef __FIAsyncOperationCompletedHandler_1_Windows__CFoundation__CCollections__CIPropertySet_AddRef
#define IAsyncOperationCompletedHandler_IPropertySet_Release __FIAsyncOperationCompletedHandler_1_Windows__CFoundation__CCollections__CIPropertySet_Release
#define IAsyncOperationCompletedHandler_IPropertySet_Invoke __FIAsyncOperationCompletedHandler_1_Windows__CFoundation__CCollections__CIPropertySet_Invoke
#endif /* WIDL_using_Windows_Foundation */
#endif

#endif

#endif  /* ____FIAsyncOperationCompletedHandler_1_Windows__CFoundation__CCollections__CIPropertySet_INTERFACE_DEFINED__ */

/*****************************************************************************
 * IAsyncOperationCompletedHandler<ABI::Windows::Storage::Streams::IRandomAccessStreamReference* > interface
 */
#ifndef ____FIAsyncOperationCompletedHandler_1_Windows__CStorage__CStreams__CIRandomAccessStreamReference_INTERFACE_DEFINED__
#define ____FIAsyncOperationCompletedHandler_1_Windows__CStorage__CStreams__CIRandomAccessStreamReference_INTERFACE_DEFINED__

DEFINE_GUID(IID___FIAsyncOperationCompletedHandler_1_Windows__CStorage__CStreams__CIRandomAccessStreamReference, 0x60847289, 0xea0b, 0x5df6, 0x89,0xdf, 0xf2,0xc6,0x2c,0xba,0x96,0x93);
#if defined(__cplusplus) && !defined(CINTERFACE)
} /* extern "C" */
namespace ABI {
    namespace Windows {
        namespace Foundation {
            template<>
            MIDL_INTERFACE("60847289-ea0b-5df6-89df-f2c62cba9693")
            IAsyncOperationCompletedHandler<ABI::Windows::Storage::Streams::IRandomAccessStreamReference* > : IAsyncOperationCompletedHandler_impl<ABI::Windows::Storage::Streams::IRandomAccessStreamReference* >
            {
            };
        }
    }
}
extern "C" {
#ifdef __CRT_UUID_DECL
__CRT_UUID_DECL(__FIAsyncOperationCompletedHandler_1_Windows__CStorage__CStreams__CIRandomAccessStreamReference, 0x60847289, 0xea0b, 0x5df6, 0x89,0xdf, 0xf2,0xc6,0x2c,0xba,0x96,0x93)
#endif
#else
typedef struct __FIAsyncOperationCompletedHandler_1_Windows__CStorage__CStreams__CIRandomAccessStreamReferenceVtbl {
    BEGIN_INTERFACE

    /*** IUnknown methods ***/
    HRESULT (STDMETHODCALLTYPE *QueryInterface)(
        __FIAsyncOperationCompletedHandler_1_Windows__CStorage__CStreams__CIRandomAccessStreamReference *This,
        REFIID riid,
        void **ppvObject);

    ULONG (STDMETHODCALLTYPE *AddRef)(
        __FIAsyncOperationCompletedHandler_1_Windows__CStorage__CStreams__CIRandomAccessStreamReference *This);

    ULONG (STDMETHODCALLTYPE *Release)(
        __FIAsyncOperationCompletedHandler_1_Windows__CStorage__CStreams__CIRandomAccessStreamReference *This);

    /*** IAsyncOperationCompletedHandler<ABI::Windows::Storage::Streams::IRandomAccessStreamReference* > methods ***/
    HRESULT (STDMETHODCALLTYPE *Invoke)(
        __FIAsyncOperationCompletedHandler_1_Windows__CStorage__CStreams__CIRandomAccessStreamReference *This,
        __FIAsyncOperation_1_Windows__CStorage__CStreams__CIRandomAccessStreamReference *info,
        AsyncStatus status);

    END_INTERFACE
} __FIAsyncOperationCompletedHandler_1_Windows__CStorage__CStreams__CIRandomAccessStreamReferenceVtbl;

interface __FIAsyncOperationCompletedHandler_1_Windows__CStorage__CStreams__CIRandomAccessStreamReference {
    CONST_VTBL __FIAsyncOperationCompletedHandler_1_Windows__CStorage__CStreams__CIRandomAccessStreamReferenceVtbl* lpVtbl;
};

#ifdef COBJMACROS
#ifndef WIDL_C_INLINE_WRAPPERS
/*** IUnknown methods ***/
#define __FIAsyncOperationCompletedHandler_1_Windows__CStorage__CStreams__CIRandomAccessStreamReference_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
#define __FIAsyncOperationCompletedHandler_1_Windows__CStorage__CStreams__CIRandomAccessStreamReference_AddRef(This) (This)->lpVtbl->AddRef(This)
#define __FIAsyncOperationCompletedHandler_1_Windows__CStorage__CStreams__CIRandomAccessStreamReference_Release(This) (This)->lpVtbl->Release(This)
/*** IAsyncOperationCompletedHandler<ABI::Windows::Storage::Streams::IRandomAccessStreamReference* > methods ***/
#define __FIAsyncOperationCompletedHandler_1_Windows__CStorage__CStreams__CIRandomAccessStreamReference_Invoke(This,info,status) (This)->lpVtbl->Invoke(This,info,status)
#else
/*** IUnknown methods ***/
static inline HRESULT __FIAsyncOperationCompletedHandler_1_Windows__CStorage__CStreams__CIRandomAccessStreamReference_QueryInterface(__FIAsyncOperationCompletedHandler_1_Windows__CStorage__CStreams__CIRandomAccessStreamReference* This,REFIID riid,void **ppvObject) {
    return This->lpVtbl->QueryInterface(This,riid,ppvObject);
}
static inline ULONG __FIAsyncOperationCompletedHandler_1_Windows__CStorage__CStreams__CIRandomAccessStreamReference_AddRef(__FIAsyncOperationCompletedHandler_1_Windows__CStorage__CStreams__CIRandomAccessStreamReference* This) {
    return This->lpVtbl->AddRef(This);
}
static inline ULONG __FIAsyncOperationCompletedHandler_1_Windows__CStorage__CStreams__CIRandomAccessStreamReference_Release(__FIAsyncOperationCompletedHandler_1_Windows__CStorage__CStreams__CIRandomAccessStreamReference* This) {
    return This->lpVtbl->Release(This);
}
/*** IAsyncOperationCompletedHandler<ABI::Windows::Storage::Streams::IRandomAccessStreamReference* > methods ***/
static inline HRESULT __FIAsyncOperationCompletedHandler_1_Windows__CStorage__CStreams__CIRandomAccessStreamReference_Invoke(__FIAsyncOperationCompletedHandler_1_Windows__CStorage__CStreams__CIRandomAccessStreamReference* This,__FIAsyncOperation_1_Windows__CStorage__CStreams__CIRandomAccessStreamReference *info,AsyncStatus status) {
    return This->lpVtbl->Invoke(This,info,status);
}
#endif
#ifdef WIDL_using_Windows_Foundation
#define IID_IAsyncOperationCompletedHandler_IRandomAccessStreamReference IID___FIAsyncOperationCompletedHandler_1_Windows__CStorage__CStreams__CIRandomAccessStreamReference
#define IAsyncOperationCompletedHandler_IRandomAccessStreamReferenceVtbl __FIAsyncOperationCompletedHandler_1_Windows__CStorage__CStreams__CIRandomAccessStreamReferenceVtbl
#define IAsyncOperationCompletedHandler_IRandomAccessStreamReference __FIAsyncOperationCompletedHandler_1_Windows__CStorage__CStreams__CIRandomAccessStreamReference
#define IAsyncOperationCompletedHandler_IRandomAccessStreamReference_QueryInterface __FIAsyncOperationCompletedHandler_1_Windows__CStorage__CStreams__CIRandomAccessStreamReference_QueryInterface
#define IAsyncOperationCompletedHandler_IRandomAccessStreamReference_AddRef __FIAsyncOperationCompletedHandler_1_Windows__CStorage__CStreams__CIRandomAccessStreamReference_AddRef
#define IAsyncOperationCompletedHandler_IRandomAccessStreamReference_Release __FIAsyncOperationCompletedHandler_1_Windows__CStorage__CStreams__CIRandomAccessStreamReference_Release
#define IAsyncOperationCompletedHandler_IRandomAccessStreamReference_Invoke __FIAsyncOperationCompletedHandler_1_Windows__CStorage__CStreams__CIRandomAccessStreamReference_Invoke
#endif /* WIDL_using_Windows_Foundation */
#endif

#endif

#endif  /* ____FIAsyncOperationCompletedHandler_1_Windows__CStorage__CStreams__CIRandomAccessStreamReference_INTERFACE_DEFINED__ */

/*****************************************************************************
 * IAsyncOperation<ABI::Windows::Foundation::Collections::IPropertySet* > interface
 */
#ifndef ____FIAsyncOperation_1_Windows__CFoundation__CCollections__CIPropertySet_INTERFACE_DEFINED__
#define ____FIAsyncOperation_1_Windows__CFoundation__CCollections__CIPropertySet_INTERFACE_DEFINED__

DEFINE_GUID(IID___FIAsyncOperation_1_Windows__CFoundation__CCollections__CIPropertySet, 0x490b0686, 0xafd7, 0x5037, 0x96,0x47, 0xd8,0xfe,0x24,0x8f,0x18,0x2c);
#if defined(__cplusplus) && !defined(CINTERFACE)
} /* extern "C" */
namespace ABI {
    namespace Windows {
        namespace Foundation {
            template<>
            MIDL_INTERFACE("490b0686-afd7-5037-9647-d8fe248f182c")
            IAsyncOperation<ABI::Windows::Foundation::Collections::IPropertySet* > : IAsyncOperation_impl<ABI::Windows::Foundation::Collections::IPropertySet* >
            {
            };
        }
    }
}
extern "C" {
#ifdef __CRT_UUID_DECL
__CRT_UUID_DECL(__FIAsyncOperation_1_Windows__CFoundation__CCollections__CIPropertySet, 0x490b0686, 0xafd7, 0x5037, 0x96,0x47, 0xd8,0xfe,0x24,0x8f,0x18,0x2c)
#endif
#else
typedef struct __FIAsyncOperation_1_Windows__CFoundation__CCollections__CIPropertySetVtbl {
    BEGIN_INTERFACE

    /*** IUnknown methods ***/
    HRESULT (STDMETHODCALLTYPE *QueryInterface)(
        __FIAsyncOperation_1_Windows__CFoundation__CCollections__CIPropertySet *This,
        REFIID riid,
        void **ppvObject);

    ULONG (STDMETHODCALLTYPE *AddRef)(
        __FIAsyncOperation_1_Windows__CFoundation__CCollections__CIPropertySet *This);

    ULONG (STDMETHODCALLTYPE *Release)(
        __FIAsyncOperation_1_Windows__CFoundation__CCollections__CIPropertySet *This);

    /*** IInspectable methods ***/
    HRESULT (STDMETHODCALLTYPE *GetIids)(
        __FIAsyncOperation_1_Windows__CFoundation__CCollections__CIPropertySet *This,
        ULONG *iidCount,
        IID **iids);

    HRESULT (STDMETHODCALLTYPE *GetRuntimeClassName)(
        __FIAsyncOperation_1_Windows__CFoundation__CCollections__CIPropertySet *This,
        HSTRING *className);

    HRESULT (STDMETHODCALLTYPE *GetTrustLevel)(
        __FIAsyncOperation_1_Windows__CFoundation__CCollections__CIPropertySet *This,
        TrustLevel *trustLevel);

    /*** IAsyncOperation<ABI::Windows::Foundation::Collections::IPropertySet* > methods ***/
    HRESULT (STDMETHODCALLTYPE *put_Completed)(
        __FIAsyncOperation_1_Windows__CFoundation__CCollections__CIPropertySet *This,
        __FIAsyncOperationCompletedHandler_1_Windows__CFoundation__CCollections__CIPropertySet *handler);

    HRESULT (STDMETHODCALLTYPE *get_Completed)(
        __FIAsyncOperation_1_Windows__CFoundation__CCollections__CIPropertySet *This,
        __FIAsyncOperationCompletedHandler_1_Windows__CFoundation__CCollections__CIPropertySet **handler);

    HRESULT (STDMETHODCALLTYPE *GetResults)(
        __FIAsyncOperation_1_Windows__CFoundation__CCollections__CIPropertySet *This,
        __x_ABI_CWindows_CFoundation_CCollections_CIPropertySet **results);

    END_INTERFACE
} __FIAsyncOperation_1_Windows__CFoundation__CCollections__CIPropertySetVtbl;

interface __FIAsyncOperation_1_Windows__CFoundation__CCollections__CIPropertySet {
    CONST_VTBL __FIAsyncOperation_1_Windows__CFoundation__CCollections__CIPropertySetVtbl* lpVtbl;
};

#ifdef COBJMACROS
#ifndef WIDL_C_INLINE_WRAPPERS
/*** IUnknown methods ***/
#define __FIAsyncOperation_1_Windows__CFoundation__CCollections__CIPropertySet_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
#define __FIAsyncOperation_1_Windows__CFoundation__CCollections__CIPropertySet_AddRef(This) (This)->lpVtbl->AddRef(This)
#define __FIAsyncOperation_1_Windows__CFoundation__CCollections__CIPropertySet_Release(This) (This)->lpVtbl->Release(This)
/*** IInspectable methods ***/
#define __FIAsyncOperation_1_Windows__CFoundation__CCollections__CIPropertySet_GetIids(This,iidCount,iids) (This)->lpVtbl->GetIids(This,iidCount,iids)
#define __FIAsyncOperation_1_Windows__CFoundation__CCollections__CIPropertySet_GetRuntimeClassName(This,className) (This)->lpVtbl->GetRuntimeClassName(This,className)
#define __FIAsyncOperation_1_Windows__CFoundation__CCollections__CIPropertySet_GetTrustLevel(This,trustLevel) (This)->lpVtbl->GetTrustLevel(This,trustLevel)
/*** IAsyncOperation<ABI::Windows::Foundation::Collections::IPropertySet* > methods ***/
#define __FIAsyncOperation_1_Windows__CFoundation__CCollections__CIPropertySet_put_Completed(This,handler) (This)->lpVtbl->put_Completed(This,handler)
#define __FIAsyncOperation_1_Windows__CFoundation__CCollections__CIPropertySet_get_Completed(This,handler) (This)->lpVtbl->get_Completed(This,handler)
#define __FIAsyncOperation_1_Windows__CFoundation__CCollections__CIPropertySet_GetResults(This,results) (This)->lpVtbl->GetResults(This,results)
#else
/*** IUnknown methods ***/
static inline HRESULT __FIAsyncOperation_1_Windows__CFoundation__CCollections__CIPropertySet_QueryInterface(__FIAsyncOperation_1_Windows__CFoundation__CCollections__CIPropertySet* This,REFIID riid,void **ppvObject) {
    return This->lpVtbl->QueryInterface(This,riid,ppvObject);
}
static inline ULONG __FIAsyncOperation_1_Windows__CFoundation__CCollections__CIPropertySet_AddRef(__FIAsyncOperation_1_Windows__CFoundation__CCollections__CIPropertySet* This) {
    return This->lpVtbl->AddRef(This);
}
static inline ULONG __FIAsyncOperation_1_Windows__CFoundation__CCollections__CIPropertySet_Release(__FIAsyncOperation_1_Windows__CFoundation__CCollections__CIPropertySet* This) {
    return This->lpVtbl->Release(This);
}
/*** IInspectable methods ***/
static inline HRESULT __FIAsyncOperation_1_Windows__CFoundation__CCollections__CIPropertySet_GetIids(__FIAsyncOperation_1_Windows__CFoundation__CCollections__CIPropertySet* This,ULONG *iidCount,IID **iids) {
    return This->lpVtbl->GetIids(This,iidCount,iids);
}
static inline HRESULT __FIAsyncOperation_1_Windows__CFoundation__CCollections__CIPropertySet_GetRuntimeClassName(__FIAsyncOperation_1_Windows__CFoundation__CCollections__CIPropertySet* This,HSTRING *className) {
    return This->lpVtbl->GetRuntimeClassName(This,className);
}
static inline HRESULT __FIAsyncOperation_1_Windows__CFoundation__CCollections__CIPropertySet_GetTrustLevel(__FIAsyncOperation_1_Windows__CFoundation__CCollections__CIPropertySet* This,TrustLevel *trustLevel) {
    return This->lpVtbl->GetTrustLevel(This,trustLevel);
}
/*** IAsyncOperation<ABI::Windows::Foundation::Collections::IPropertySet* > methods ***/
static inline HRESULT __FIAsyncOperation_1_Windows__CFoundation__CCollections__CIPropertySet_put_Completed(__FIAsyncOperation_1_Windows__CFoundation__CCollections__CIPropertySet* This,__FIAsyncOperationCompletedHandler_1_Windows__CFoundation__CCollections__CIPropertySet *handler) {
    return This->lpVtbl->put_Completed(This,handler);
}
static inline HRESULT __FIAsyncOperation_1_Windows__CFoundation__CCollections__CIPropertySet_get_Completed(__FIAsyncOperation_1_Windows__CFoundation__CCollections__CIPropertySet* This,__FIAsyncOperationCompletedHandler_1_Windows__CFoundation__CCollections__CIPropertySet **handler) {
    return This->lpVtbl->get_Completed(This,handler);
}
static inline HRESULT __FIAsyncOperation_1_Windows__CFoundation__CCollections__CIPropertySet_GetResults(__FIAsyncOperation_1_Windows__CFoundation__CCollections__CIPropertySet* This,__x_ABI_CWindows_CFoundation_CCollections_CIPropertySet **results) {
    return This->lpVtbl->GetResults(This,results);
}
#endif
#ifdef WIDL_using_Windows_Foundation
#define IID_IAsyncOperation_IPropertySet IID___FIAsyncOperation_1_Windows__CFoundation__CCollections__CIPropertySet
#define IAsyncOperation_IPropertySetVtbl __FIAsyncOperation_1_Windows__CFoundation__CCollections__CIPropertySetVtbl
#define IAsyncOperation_IPropertySet __FIAsyncOperation_1_Windows__CFoundation__CCollections__CIPropertySet
#define IAsyncOperation_IPropertySet_QueryInterface __FIAsyncOperation_1_Windows__CFoundation__CCollections__CIPropertySet_QueryInterface
#define IAsyncOperation_IPropertySet_AddRef __FIAsyncOperation_1_Windows__CFoundation__CCollections__CIPropertySet_AddRef
#define IAsyncOperation_IPropertySet_Release __FIAsyncOperation_1_Windows__CFoundation__CCollections__CIPropertySet_Release
#define IAsyncOperation_IPropertySet_GetIids __FIAsyncOperation_1_Windows__CFoundation__CCollections__CIPropertySet_GetIids
#define IAsyncOperation_IPropertySet_GetRuntimeClassName __FIAsyncOperation_1_Windows__CFoundation__CCollections__CIPropertySet_GetRuntimeClassName
#define IAsyncOperation_IPropertySet_GetTrustLevel __FIAsyncOperation_1_Windows__CFoundation__CCollections__CIPropertySet_GetTrustLevel
#define IAsyncOperation_IPropertySet_put_Completed __FIAsyncOperation_1_Windows__CFoundation__CCollections__CIPropertySet_put_Completed
#define IAsyncOperation_IPropertySet_get_Completed __FIAsyncOperation_1_Windows__CFoundation__CCollections__CIPropertySet_get_Completed
#define IAsyncOperation_IPropertySet_GetResults __FIAsyncOperation_1_Windows__CFoundation__CCollections__CIPropertySet_GetResults
#endif /* WIDL_using_Windows_Foundation */
#endif

#endif

#endif  /* ____FIAsyncOperation_1_Windows__CFoundation__CCollections__CIPropertySet_INTERFACE_DEFINED__ */

/*****************************************************************************
 * IAsyncOperation<ABI::Windows::Storage::Streams::IRandomAccessStreamReference* > interface
 */
#ifndef ____FIAsyncOperation_1_Windows__CStorage__CStreams__CIRandomAccessStreamReference_INTERFACE_DEFINED__
#define ____FIAsyncOperation_1_Windows__CStorage__CStreams__CIRandomAccessStreamReference_INTERFACE_DEFINED__

DEFINE_GUID(IID___FIAsyncOperation_1_Windows__CStorage__CStreams__CIRandomAccessStreamReference, 0x65178d50, 0xe6a2, 0x5d16, 0xb2,0x44, 0x65,0xe9,0x72,0x5e,0x5a,0x0c);
#if defined(__cplusplus) && !defined(CINTERFACE)
} /* extern "C" */
namespace ABI {
    namespace Windows {
        namespace Foundation {
            template<>
            MIDL_INTERFACE("65178d50-e6a2-5d16-b244-65e9725e5a0c")
            IAsyncOperation<ABI::Windows::Storage::Streams::IRandomAccessStreamReference* > : IAsyncOperation_impl<ABI::Windows::Storage::Streams::IRandomAccessStreamReference* >
            {
            };
        }
    }
}
extern "C" {
#ifdef __CRT_UUID_DECL
__CRT_UUID_DECL(__FIAsyncOperation_1_Windows__CStorage__CStreams__CIRandomAccessStreamReference, 0x65178d50, 0xe6a2, 0x5d16, 0xb2,0x44, 0x65,0xe9,0x72,0x5e,0x5a,0x0c)
#endif
#else
typedef struct __FIAsyncOperation_1_Windows__CStorage__CStreams__CIRandomAccessStreamReferenceVtbl {
    BEGIN_INTERFACE

    /*** IUnknown methods ***/
    HRESULT (STDMETHODCALLTYPE *QueryInterface)(
        __FIAsyncOperation_1_Windows__CStorage__CStreams__CIRandomAccessStreamReference *This,
        REFIID riid,
        void **ppvObject);

    ULONG (STDMETHODCALLTYPE *AddRef)(
        __FIAsyncOperation_1_Windows__CStorage__CStreams__CIRandomAccessStreamReference *This);

    ULONG (STDMETHODCALLTYPE *Release)(
        __FIAsyncOperation_1_Windows__CStorage__CStreams__CIRandomAccessStreamReference *This);

    /*** IInspectable methods ***/
    HRESULT (STDMETHODCALLTYPE *GetIids)(
        __FIAsyncOperation_1_Windows__CStorage__CStreams__CIRandomAccessStreamReference *This,
        ULONG *iidCount,
        IID **iids);

    HRESULT (STDMETHODCALLTYPE *GetRuntimeClassName)(
        __FIAsyncOperation_1_Windows__CStorage__CStreams__CIRandomAccessStreamReference *This,
        HSTRING *className);

    HRESULT (STDMETHODCALLTYPE *GetTrustLevel)(
        __FIAsyncOperation_1_Windows__CStorage__CStreams__CIRandomAccessStreamReference *This,
        TrustLevel *trustLevel);

    /*** IAsyncOperation<ABI::Windows::Storage::Streams::IRandomAccessStreamReference* > methods ***/
    HRESULT (STDMETHODCALLTYPE *put_Completed)(
        __FIAsyncOperation_1_Windows__CStorage__CStreams__CIRandomAccessStreamReference *This,
        __FIAsyncOperationCompletedHandler_1_Windows__CStorage__CStreams__CIRandomAccessStreamReference *handler);

    HRESULT (STDMETHODCALLTYPE *get_Completed)(
        __FIAsyncOperation_1_Windows__CStorage__CStreams__CIRandomAccessStreamReference *This,
        __FIAsyncOperationCompletedHandler_1_Windows__CStorage__CStreams__CIRandomAccessStreamReference **handler);

    HRESULT (STDMETHODCALLTYPE *GetResults)(
        __FIAsyncOperation_1_Windows__CStorage__CStreams__CIRandomAccessStreamReference *This,
        __x_ABI_CWindows_CStorage_CStreams_CIRandomAccessStreamReference **results);

    END_INTERFACE
} __FIAsyncOperation_1_Windows__CStorage__CStreams__CIRandomAccessStreamReferenceVtbl;

interface __FIAsyncOperation_1_Windows__CStorage__CStreams__CIRandomAccessStreamReference {
    CONST_VTBL __FIAsyncOperation_1_Windows__CStorage__CStreams__CIRandomAccessStreamReferenceVtbl* lpVtbl;
};

#ifdef COBJMACROS
#ifndef WIDL_C_INLINE_WRAPPERS
/*** IUnknown methods ***/
#define __FIAsyncOperation_1_Windows__CStorage__CStreams__CIRandomAccessStreamReference_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
#define __FIAsyncOperation_1_Windows__CStorage__CStreams__CIRandomAccessStreamReference_AddRef(This) (This)->lpVtbl->AddRef(This)
#define __FIAsyncOperation_1_Windows__CStorage__CStreams__CIRandomAccessStreamReference_Release(This) (This)->lpVtbl->Release(This)
/*** IInspectable methods ***/
#define __FIAsyncOperation_1_Windows__CStorage__CStreams__CIRandomAccessStreamReference_GetIids(This,iidCount,iids) (This)->lpVtbl->GetIids(This,iidCount,iids)
#define __FIAsyncOperation_1_Windows__CStorage__CStreams__CIRandomAccessStreamReference_GetRuntimeClassName(This,className) (This)->lpVtbl->GetRuntimeClassName(This,className)
#define __FIAsyncOperation_1_Windows__CStorage__CStreams__CIRandomAccessStreamReference_GetTrustLevel(This,trustLevel) (This)->lpVtbl->GetTrustLevel(This,trustLevel)
/*** IAsyncOperation<ABI::Windows::Storage::Streams::IRandomAccessStreamReference* > methods ***/
#define __FIAsyncOperation_1_Windows__CStorage__CStreams__CIRandomAccessStreamReference_put_Completed(This,handler) (This)->lpVtbl->put_Completed(This,handler)
#define __FIAsyncOperation_1_Windows__CStorage__CStreams__CIRandomAccessStreamReference_get_Completed(This,handler) (This)->lpVtbl->get_Completed(This,handler)
#define __FIAsyncOperation_1_Windows__CStorage__CStreams__CIRandomAccessStreamReference_GetResults(This,results) (This)->lpVtbl->GetResults(This,results)
#else
/*** IUnknown methods ***/
static inline HRESULT __FIAsyncOperation_1_Windows__CStorage__CStreams__CIRandomAccessStreamReference_QueryInterface(__FIAsyncOperation_1_Windows__CStorage__CStreams__CIRandomAccessStreamReference* This,REFIID riid,void **ppvObject) {
    return This->lpVtbl->QueryInterface(This,riid,ppvObject);
}
static inline ULONG __FIAsyncOperation_1_Windows__CStorage__CStreams__CIRandomAccessStreamReference_AddRef(__FIAsyncOperation_1_Windows__CStorage__CStreams__CIRandomAccessStreamReference* This) {
    return This->lpVtbl->AddRef(This);
}
static inline ULONG __FIAsyncOperation_1_Windows__CStorage__CStreams__CIRandomAccessStreamReference_Release(__FIAsyncOperation_1_Windows__CStorage__CStreams__CIRandomAccessStreamReference* This) {
    return This->lpVtbl->Release(This);
}
/*** IInspectable methods ***/
static inline HRESULT __FIAsyncOperation_1_Windows__CStorage__CStreams__CIRandomAccessStreamReference_GetIids(__FIAsyncOperation_1_Windows__CStorage__CStreams__CIRandomAccessStreamReference* This,ULONG *iidCount,IID **iids) {
    return This->lpVtbl->GetIids(This,iidCount,iids);
}
static inline HRESULT __FIAsyncOperation_1_Windows__CStorage__CStreams__CIRandomAccessStreamReference_GetRuntimeClassName(__FIAsyncOperation_1_Windows__CStorage__CStreams__CIRandomAccessStreamReference* This,HSTRING *className) {
    return This->lpVtbl->GetRuntimeClassName(This,className);
}
static inline HRESULT __FIAsyncOperation_1_Windows__CStorage__CStreams__CIRandomAccessStreamReference_GetTrustLevel(__FIAsyncOperation_1_Windows__CStorage__CStreams__CIRandomAccessStreamReference* This,TrustLevel *trustLevel) {
    return This->lpVtbl->GetTrustLevel(This,trustLevel);
}
/*** IAsyncOperation<ABI::Windows::Storage::Streams::IRandomAccessStreamReference* > methods ***/
static inline HRESULT __FIAsyncOperation_1_Windows__CStorage__CStreams__CIRandomAccessStreamReference_put_Completed(__FIAsyncOperation_1_Windows__CStorage__CStreams__CIRandomAccessStreamReference* This,__FIAsyncOperationCompletedHandler_1_Windows__CStorage__CStreams__CIRandomAccessStreamReference *handler) {
    return This->lpVtbl->put_Completed(This,handler);
}
static inline HRESULT __FIAsyncOperation_1_Windows__CStorage__CStreams__CIRandomAccessStreamReference_get_Completed(__FIAsyncOperation_1_Windows__CStorage__CStreams__CIRandomAccessStreamReference* This,__FIAsyncOperationCompletedHandler_1_Windows__CStorage__CStreams__CIRandomAccessStreamReference **handler) {
    return This->lpVtbl->get_Completed(This,handler);
}
static inline HRESULT __FIAsyncOperation_1_Windows__CStorage__CStreams__CIRandomAccessStreamReference_GetResults(__FIAsyncOperation_1_Windows__CStorage__CStreams__CIRandomAccessStreamReference* This,__x_ABI_CWindows_CStorage_CStreams_CIRandomAccessStreamReference **results) {
    return This->lpVtbl->GetResults(This,results);
}
#endif
#ifdef WIDL_using_Windows_Foundation
#define IID_IAsyncOperation_IRandomAccessStreamReference IID___FIAsyncOperation_1_Windows__CStorage__CStreams__CIRandomAccessStreamReference
#define IAsyncOperation_IRandomAccessStreamReferenceVtbl __FIAsyncOperation_1_Windows__CStorage__CStreams__CIRandomAccessStreamReferenceVtbl
#define IAsyncOperation_IRandomAccessStreamReference __FIAsyncOperation_1_Windows__CStorage__CStreams__CIRandomAccessStreamReference
#define IAsyncOperation_IRandomAccessStreamReference_QueryInterface __FIAsyncOperation_1_Windows__CStorage__CStreams__CIRandomAccessStreamReference_QueryInterface
#define IAsyncOperation_IRandomAccessStreamReference_AddRef __FIAsyncOperation_1_Windows__CStorage__CStreams__CIRandomAccessStreamReference_AddRef
#define IAsyncOperation_IRandomAccessStreamReference_Release __FIAsyncOperation_1_Windows__CStorage__CStreams__CIRandomAccessStreamReference_Release
#define IAsyncOperation_IRandomAccessStreamReference_GetIids __FIAsyncOperation_1_Windows__CStorage__CStreams__CIRandomAccessStreamReference_GetIids
#define IAsyncOperation_IRandomAccessStreamReference_GetRuntimeClassName __FIAsyncOperation_1_Windows__CStorage__CStreams__CIRandomAccessStreamReference_GetRuntimeClassName
#define IAsyncOperation_IRandomAccessStreamReference_GetTrustLevel __FIAsyncOperation_1_Windows__CStorage__CStreams__CIRandomAccessStreamReference_GetTrustLevel
#define IAsyncOperation_IRandomAccessStreamReference_put_Completed __FIAsyncOperation_1_Windows__CStorage__CStreams__CIRandomAccessStreamReference_put_Completed
#define IAsyncOperation_IRandomAccessStreamReference_get_Completed __FIAsyncOperation_1_Windows__CStorage__CStreams__CIRandomAccessStreamReference_get_Completed
#define IAsyncOperation_IRandomAccessStreamReference_GetResults __FIAsyncOperation_1_Windows__CStorage__CStreams__CIRandomAccessStreamReference_GetResults
#endif /* WIDL_using_Windows_Foundation */
#endif

#endif

#endif  /* ____FIAsyncOperation_1_Windows__CStorage__CStreams__CIRandomAccessStreamReference_INTERFACE_DEFINED__ */

/*****************************************************************************
 * ITypedEventHandler<ABI::Windows::System::DispatcherQueue*,IInspectable* > interface
 */
#ifndef ____FITypedEventHandler_2_Windows__CSystem__CDispatcherQueue_IInspectable_INTERFACE_DEFINED__
#define ____FITypedEventHandler_2_Windows__CSystem__CDispatcherQueue_IInspectable_INTERFACE_DEFINED__

DEFINE_GUID(IID___FITypedEventHandler_2_Windows__CSystem__CDispatcherQueue_IInspectable, 0xfe79f855, 0x2f40, 0x5b88, 0xa0,0xc3, 0x4c,0x04,0x2a,0x05,0xdd,0x05);
#if defined(__cplusplus) && !defined(CINTERFACE)
} /* extern "C" */
namespace ABI {
    namespace Windows {
        namespace Foundation {
            template<>
            MIDL_INTERFACE("fe79f855-2f40-5b88-a0c3-4c042a05dd05")
            ITypedEventHandler<ABI::Windows::System::DispatcherQueue*,IInspectable* > : ITypedEventHandler_impl<ABI::Windows::Foundation::Internal::AggregateType<ABI::Windows::System::DispatcherQueue*, ABI::Windows::System::IDispatcherQueue* >, IInspectable* >
            {
            };
        }
    }
}
extern "C" {
#ifdef __CRT_UUID_DECL
__CRT_UUID_DECL(__FITypedEventHandler_2_Windows__CSystem__CDispatcherQueue_IInspectable, 0xfe79f855, 0x2f40, 0x5b88, 0xa0,0xc3, 0x4c,0x04,0x2a,0x05,0xdd,0x05)
#endif
#else
typedef struct __FITypedEventHandler_2_Windows__CSystem__CDispatcherQueue_IInspectableVtbl {
    BEGIN_INTERFACE

    /*** IUnknown methods ***/
    HRESULT (STDMETHODCALLTYPE *QueryInterface)(
        __FITypedEventHandler_2_Windows__CSystem__CDispatcherQueue_IInspectable *This,
        REFIID riid,
        void **ppvObject);

    ULONG (STDMETHODCALLTYPE *AddRef)(
        __FITypedEventHandler_2_Windows__CSystem__CDispatcherQueue_IInspectable *This);

    ULONG (STDMETHODCALLTYPE *Release)(
        __FITypedEventHandler_2_Windows__CSystem__CDispatcherQueue_IInspectable *This);

    /*** ITypedEventHandler<ABI::Windows::System::DispatcherQueue*,IInspectable* > methods ***/
    HRESULT (STDMETHODCALLTYPE *Invoke)(
        __FITypedEventHandler_2_Windows__CSystem__CDispatcherQueue_IInspectable *This,
        __x_ABI_CWindows_CSystem_CIDispatcherQueue *sender,
        IInspectable *args);

    END_INTERFACE
} __FITypedEventHandler_2_Windows__CSystem__CDispatcherQueue_IInspectableVtbl;

interface __FITypedEventHandler_2_Windows__CSystem__CDispatcherQueue_IInspectable {
    CONST_VTBL __FITypedEventHandler_2_Windows__CSystem__CDispatcherQueue_IInspectableVtbl* lpVtbl;
};

#ifdef COBJMACROS
#ifndef WIDL_C_INLINE_WRAPPERS
/*** IUnknown methods ***/
#define __FITypedEventHandler_2_Windows__CSystem__CDispatcherQueue_IInspectable_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
#define __FITypedEventHandler_2_Windows__CSystem__CDispatcherQueue_IInspectable_AddRef(This) (This)->lpVtbl->AddRef(This)
#define __FITypedEventHandler_2_Windows__CSystem__CDispatcherQueue_IInspectable_Release(This) (This)->lpVtbl->Release(This)
/*** ITypedEventHandler<ABI::Windows::System::DispatcherQueue*,IInspectable* > methods ***/
#define __FITypedEventHandler_2_Windows__CSystem__CDispatcherQueue_IInspectable_Invoke(This,sender,args) (This)->lpVtbl->Invoke(This,sender,args)
#else
/*** IUnknown methods ***/
static inline HRESULT __FITypedEventHandler_2_Windows__CSystem__CDispatcherQueue_IInspectable_QueryInterface(__FITypedEventHandler_2_Windows__CSystem__CDispatcherQueue_IInspectable* This,REFIID riid,void **ppvObject) {
    return This->lpVtbl->QueryInterface(This,riid,ppvObject);
}
static inline ULONG __FITypedEventHandler_2_Windows__CSystem__CDispatcherQueue_IInspectable_AddRef(__FITypedEventHandler_2_Windows__CSystem__CDispatcherQueue_IInspectable* This) {
    return This->lpVtbl->AddRef(This);
}
static inline ULONG __FITypedEventHandler_2_Windows__CSystem__CDispatcherQueue_IInspectable_Release(__FITypedEventHandler_2_Windows__CSystem__CDispatcherQueue_IInspectable* This) {
    return This->lpVtbl->Release(This);
}
/*** ITypedEventHandler<ABI::Windows::System::DispatcherQueue*,IInspectable* > methods ***/
static inline HRESULT __FITypedEventHandler_2_Windows__CSystem__CDispatcherQueue_IInspectable_Invoke(__FITypedEventHandler_2_Windows__CSystem__CDispatcherQueue_IInspectable* This,__x_ABI_CWindows_CSystem_CIDispatcherQueue *sender,IInspectable *args) {
    return This->lpVtbl->Invoke(This,sender,args);
}
#endif
#ifdef WIDL_using_Windows_Foundation
#define IID_ITypedEventHandler_DispatcherQueue_IInspectable IID___FITypedEventHandler_2_Windows__CSystem__CDispatcherQueue_IInspectable
#define ITypedEventHandler_DispatcherQueue_IInspectableVtbl __FITypedEventHandler_2_Windows__CSystem__CDispatcherQueue_IInspectableVtbl
#define ITypedEventHandler_DispatcherQueue_IInspectable __FITypedEventHandler_2_Windows__CSystem__CDispatcherQueue_IInspectable
#define ITypedEventHandler_DispatcherQueue_IInspectable_QueryInterface __FITypedEventHandler_2_Windows__CSystem__CDispatcherQueue_IInspectable_QueryInterface
#define ITypedEventHandler_DispatcherQueue_IInspectable_AddRef __FITypedEventHandler_2_Windows__CSystem__CDispatcherQueue_IInspectable_AddRef
#define ITypedEventHandler_DispatcherQueue_IInspectable_Release __FITypedEventHandler_2_Windows__CSystem__CDispatcherQueue_IInspectable_Release
#define ITypedEventHandler_DispatcherQueue_IInspectable_Invoke __FITypedEventHandler_2_Windows__CSystem__CDispatcherQueue_IInspectable_Invoke
#endif /* WIDL_using_Windows_Foundation */
#endif

#endif

#endif  /* ____FITypedEventHandler_2_Windows__CSystem__CDispatcherQueue_IInspectable_INTERFACE_DEFINED__ */

/*****************************************************************************
 * ITypedEventHandler<ABI::Windows::System::DispatcherQueue*,ABI::Windows::System::DispatcherQueueShutdownStartingEventArgs* > interface
 */
#ifndef ____FITypedEventHandler_2_Windows__CSystem__CDispatcherQueue_Windows__CSystem__CDispatcherQueueShutdownStartingEventArgs_INTERFACE_DEFINED__
#define ____FITypedEventHandler_2_Windows__CSystem__CDispatcherQueue_Windows__CSystem__CDispatcherQueueShutdownStartingEventArgs_INTERFACE_DEFINED__

DEFINE_GUID(IID___FITypedEventHandler_2_Windows__CSystem__CDispatcherQueue_Windows__CSystem__CDispatcherQueueShutdownStartingEventArgs, 0xb58b5e24, 0xe1c6, 0x528e, 0x9d,0x99, 0x07,0xec,0x88,0x29,0xde,0xa5);
#if defined(__cplusplus) && !defined(CINTERFACE)
} /* extern "C" */
namespace ABI {
    namespace Windows {
        namespace Foundation {
            template<>
            MIDL_INTERFACE("b58b5e24-e1c6-528e-9d99-07ec8829dea5")
            ITypedEventHandler<ABI::Windows::System::DispatcherQueue*,ABI::Windows::System::DispatcherQueueShutdownStartingEventArgs* > : ITypedEventHandler_impl<ABI::Windows::Foundation::Internal::AggregateType<ABI::Windows::System::DispatcherQueue*, ABI::Windows::System::IDispatcherQueue* >, ABI::Windows::Foundation::Internal::AggregateType<ABI::Windows::System::DispatcherQueueShutdownStartingEventArgs*, ABI::Windows::System::IDispatcherQueueShutdownStartingEventArgs* > >
            {
            };
        }
    }
}
extern "C" {
#ifdef __CRT_UUID_DECL
__CRT_UUID_DECL(__FITypedEventHandler_2_Windows__CSystem__CDispatcherQueue_Windows__CSystem__CDispatcherQueueShutdownStartingEventArgs, 0xb58b5e24, 0xe1c6, 0x528e, 0x9d,0x99, 0x07,0xec,0x88,0x29,0xde,0xa5)
#endif
#else
typedef struct __FITypedEventHandler_2_Windows__CSystem__CDispatcherQueue_Windows__CSystem__CDispatcherQueueShutdownStartingEventArgsVtbl {
    BEGIN_INTERFACE

    /*** IUnknown methods ***/
    HRESULT (STDMETHODCALLTYPE *QueryInterface)(
        __FITypedEventHandler_2_Windows__CSystem__CDispatcherQueue_Windows__CSystem__CDispatcherQueueShutdownStartingEventArgs *This,
        REFIID riid,
        void **ppvObject);

    ULONG (STDMETHODCALLTYPE *AddRef)(
        __FITypedEventHandler_2_Windows__CSystem__CDispatcherQueue_Windows__CSystem__CDispatcherQueueShutdownStartingEventArgs *This);

    ULONG (STDMETHODCALLTYPE *Release)(
        __FITypedEventHandler_2_Windows__CSystem__CDispatcherQueue_Windows__CSystem__CDispatcherQueueShutdownStartingEventArgs *This);

    /*** ITypedEventHandler<ABI::Windows::System::DispatcherQueue*,ABI::Windows::System::DispatcherQueueShutdownStartingEventArgs* > methods ***/
    HRESULT (STDMETHODCALLTYPE *Invoke)(
        __FITypedEventHandler_2_Windows__CSystem__CDispatcherQueue_Windows__CSystem__CDispatcherQueueShutdownStartingEventArgs *This,
        __x_ABI_CWindows_CSystem_CIDispatcherQueue *sender,
        __x_ABI_CWindows_CSystem_CIDispatcherQueueShutdownStartingEventArgs *args);

    END_INTERFACE
} __FITypedEventHandler_2_Windows__CSystem__CDispatcherQueue_Windows__CSystem__CDispatcherQueueShutdownStartingEventArgsVtbl;

interface __FITypedEventHandler_2_Windows__CSystem__CDispatcherQueue_Windows__CSystem__CDispatcherQueueShutdownStartingEventArgs {
    CONST_VTBL __FITypedEventHandler_2_Windows__CSystem__CDispatcherQueue_Windows__CSystem__CDispatcherQueueShutdownStartingEventArgsVtbl* lpVtbl;
};

#ifdef COBJMACROS
#ifndef WIDL_C_INLINE_WRAPPERS
/*** IUnknown methods ***/
#define __FITypedEventHandler_2_Windows__CSystem__CDispatcherQueue_Windows__CSystem__CDispatcherQueueShutdownStartingEventArgs_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
#define __FITypedEventHandler_2_Windows__CSystem__CDispatcherQueue_Windows__CSystem__CDispatcherQueueShutdownStartingEventArgs_AddRef(This) (This)->lpVtbl->AddRef(This)
#define __FITypedEventHandler_2_Windows__CSystem__CDispatcherQueue_Windows__CSystem__CDispatcherQueueShutdownStartingEventArgs_Release(This) (This)->lpVtbl->Release(This)
/*** ITypedEventHandler<ABI::Windows::System::DispatcherQueue*,ABI::Windows::System::DispatcherQueueShutdownStartingEventArgs* > methods ***/
#define __FITypedEventHandler_2_Windows__CSystem__CDispatcherQueue_Windows__CSystem__CDispatcherQueueShutdownStartingEventArgs_Invoke(This,sender,args) (This)->lpVtbl->Invoke(This,sender,args)
#else
/*** IUnknown methods ***/
static inline HRESULT __FITypedEventHandler_2_Windows__CSystem__CDispatcherQueue_Windows__CSystem__CDispatcherQueueShutdownStartingEventArgs_QueryInterface(__FITypedEventHandler_2_Windows__CSystem__CDispatcherQueue_Windows__CSystem__CDispatcherQueueShutdownStartingEventArgs* This,REFIID riid,void **ppvObject) {
    return This->lpVtbl->QueryInterface(This,riid,ppvObject);
}
static inline ULONG __FITypedEventHandler_2_Windows__CSystem__CDispatcherQueue_Windows__CSystem__CDispatcherQueueShutdownStartingEventArgs_AddRef(__FITypedEventHandler_2_Windows__CSystem__CDispatcherQueue_Windows__CSystem__CDispatcherQueueShutdownStartingEventArgs* This) {
    return This->lpVtbl->AddRef(This);
}
static inline ULONG __FITypedEventHandler_2_Windows__CSystem__CDispatcherQueue_Windows__CSystem__CDispatcherQueueShutdownStartingEventArgs_Release(__FITypedEventHandler_2_Windows__CSystem__CDispatcherQueue_Windows__CSystem__CDispatcherQueueShutdownStartingEventArgs* This) {
    return This->lpVtbl->Release(This);
}
/*** ITypedEventHandler<ABI::Windows::System::DispatcherQueue*,ABI::Windows::System::DispatcherQueueShutdownStartingEventArgs* > methods ***/
static inline HRESULT __FITypedEventHandler_2_Windows__CSystem__CDispatcherQueue_Windows__CSystem__CDispatcherQueueShutdownStartingEventArgs_Invoke(__FITypedEventHandler_2_Windows__CSystem__CDispatcherQueue_Windows__CSystem__CDispatcherQueueShutdownStartingEventArgs* This,__x_ABI_CWindows_CSystem_CIDispatcherQueue *sender,__x_ABI_CWindows_CSystem_CIDispatcherQueueShutdownStartingEventArgs *args) {
    return This->lpVtbl->Invoke(This,sender,args);
}
#endif
#ifdef WIDL_using_Windows_Foundation
#define IID_ITypedEventHandler_DispatcherQueue_DispatcherQueueShutdownStartingEventArgs IID___FITypedEventHandler_2_Windows__CSystem__CDispatcherQueue_Windows__CSystem__CDispatcherQueueShutdownStartingEventArgs
#define ITypedEventHandler_DispatcherQueue_DispatcherQueueShutdownStartingEventArgsVtbl __FITypedEventHandler_2_Windows__CSystem__CDispatcherQueue_Windows__CSystem__CDispatcherQueueShutdownStartingEventArgsVtbl
#define ITypedEventHandler_DispatcherQueue_DispatcherQueueShutdownStartingEventArgs __FITypedEventHandler_2_Windows__CSystem__CDispatcherQueue_Windows__CSystem__CDispatcherQueueShutdownStartingEventArgs
#define ITypedEventHandler_DispatcherQueue_DispatcherQueueShutdownStartingEventArgs_QueryInterface __FITypedEventHandler_2_Windows__CSystem__CDispatcherQueue_Windows__CSystem__CDispatcherQueueShutdownStartingEventArgs_QueryInterface
#define ITypedEventHandler_DispatcherQueue_DispatcherQueueShutdownStartingEventArgs_AddRef __FITypedEventHandler_2_Windows__CSystem__CDispatcherQueue_Windows__CSystem__CDispatcherQueueShutdownStartingEventArgs_AddRef
#define ITypedEventHandler_DispatcherQueue_DispatcherQueueShutdownStartingEventArgs_Release __FITypedEventHandler_2_Windows__CSystem__CDispatcherQueue_Windows__CSystem__CDispatcherQueueShutdownStartingEventArgs_Release
#define ITypedEventHandler_DispatcherQueue_DispatcherQueueShutdownStartingEventArgs_Invoke __FITypedEventHandler_2_Windows__CSystem__CDispatcherQueue_Windows__CSystem__CDispatcherQueueShutdownStartingEventArgs_Invoke
#endif /* WIDL_using_Windows_Foundation */
#endif

#endif

#endif  /* ____FITypedEventHandler_2_Windows__CSystem__CDispatcherQueue_Windows__CSystem__CDispatcherQueueShutdownStartingEventArgs_INTERFACE_DEFINED__ */

/*****************************************************************************
 * ITypedEventHandler<ABI::Windows::System::DispatcherQueueTimer*,IInspectable* > interface
 */
#ifndef ____FITypedEventHandler_2_Windows__CSystem__CDispatcherQueueTimer_IInspectable_INTERFACE_DEFINED__
#define ____FITypedEventHandler_2_Windows__CSystem__CDispatcherQueueTimer_IInspectable_INTERFACE_DEFINED__

DEFINE_GUID(IID___FITypedEventHandler_2_Windows__CSystem__CDispatcherQueueTimer_IInspectable, 0x8b5644c8, 0x8b57, 0x50ce, 0x89,0x33, 0x7a,0xb2,0xcc,0x5a,0x14,0xef);
#if defined(__cplusplus) && !defined(CINTERFACE)
} /* extern "C" */
namespace ABI {
    namespace Windows {
        namespace Foundation {
            template<>
            MIDL_INTERFACE("8b5644c8-8b57-50ce-8933-7ab2cc5a14ef")
            ITypedEventHandler<ABI::Windows::System::DispatcherQueueTimer*,IInspectable* > : ITypedEventHandler_impl<ABI::Windows::Foundation::Internal::AggregateType<ABI::Windows::System::DispatcherQueueTimer*, ABI::Windows::System::IDispatcherQueueTimer* >, IInspectable* >
            {
            };
        }
    }
}
extern "C" {
#ifdef __CRT_UUID_DECL
__CRT_UUID_DECL(__FITypedEventHandler_2_Windows__CSystem__CDispatcherQueueTimer_IInspectable, 0x8b5644c8, 0x8b57, 0x50ce, 0x89,0x33, 0x7a,0xb2,0xcc,0x5a,0x14,0xef)
#endif
#else
typedef struct __FITypedEventHandler_2_Windows__CSystem__CDispatcherQueueTimer_IInspectableVtbl {
    BEGIN_INTERFACE

    /*** IUnknown methods ***/
    HRESULT (STDMETHODCALLTYPE *QueryInterface)(
        __FITypedEventHandler_2_Windows__CSystem__CDispatcherQueueTimer_IInspectable *This,
        REFIID riid,
        void **ppvObject);

    ULONG (STDMETHODCALLTYPE *AddRef)(
        __FITypedEventHandler_2_Windows__CSystem__CDispatcherQueueTimer_IInspectable *This);

    ULONG (STDMETHODCALLTYPE *Release)(
        __FITypedEventHandler_2_Windows__CSystem__CDispatcherQueueTimer_IInspectable *This);

    /*** ITypedEventHandler<ABI::Windows::System::DispatcherQueueTimer*,IInspectable* > methods ***/
    HRESULT (STDMETHODCALLTYPE *Invoke)(
        __FITypedEventHandler_2_Windows__CSystem__CDispatcherQueueTimer_IInspectable *This,
        __x_ABI_CWindows_CSystem_CIDispatcherQueueTimer *sender,
        IInspectable *args);

    END_INTERFACE
} __FITypedEventHandler_2_Windows__CSystem__CDispatcherQueueTimer_IInspectableVtbl;

interface __FITypedEventHandler_2_Windows__CSystem__CDispatcherQueueTimer_IInspectable {
    CONST_VTBL __FITypedEventHandler_2_Windows__CSystem__CDispatcherQueueTimer_IInspectableVtbl* lpVtbl;
};

#ifdef COBJMACROS
#ifndef WIDL_C_INLINE_WRAPPERS
/*** IUnknown methods ***/
#define __FITypedEventHandler_2_Windows__CSystem__CDispatcherQueueTimer_IInspectable_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
#define __FITypedEventHandler_2_Windows__CSystem__CDispatcherQueueTimer_IInspectable_AddRef(This) (This)->lpVtbl->AddRef(This)
#define __FITypedEventHandler_2_Windows__CSystem__CDispatcherQueueTimer_IInspectable_Release(This) (This)->lpVtbl->Release(This)
/*** ITypedEventHandler<ABI::Windows::System::DispatcherQueueTimer*,IInspectable* > methods ***/
#define __FITypedEventHandler_2_Windows__CSystem__CDispatcherQueueTimer_IInspectable_Invoke(This,sender,args) (This)->lpVtbl->Invoke(This,sender,args)
#else
/*** IUnknown methods ***/
static inline HRESULT __FITypedEventHandler_2_Windows__CSystem__CDispatcherQueueTimer_IInspectable_QueryInterface(__FITypedEventHandler_2_Windows__CSystem__CDispatcherQueueTimer_IInspectable* This,REFIID riid,void **ppvObject) {
    return This->lpVtbl->QueryInterface(This,riid,ppvObject);
}
static inline ULONG __FITypedEventHandler_2_Windows__CSystem__CDispatcherQueueTimer_IInspectable_AddRef(__FITypedEventHandler_2_Windows__CSystem__CDispatcherQueueTimer_IInspectable* This) {
    return This->lpVtbl->AddRef(This);
}
static inline ULONG __FITypedEventHandler_2_Windows__CSystem__CDispatcherQueueTimer_IInspectable_Release(__FITypedEventHandler_2_Windows__CSystem__CDispatcherQueueTimer_IInspectable* This) {
    return This->lpVtbl->Release(This);
}
/*** ITypedEventHandler<ABI::Windows::System::DispatcherQueueTimer*,IInspectable* > methods ***/
static inline HRESULT __FITypedEventHandler_2_Windows__CSystem__CDispatcherQueueTimer_IInspectable_Invoke(__FITypedEventHandler_2_Windows__CSystem__CDispatcherQueueTimer_IInspectable* This,__x_ABI_CWindows_CSystem_CIDispatcherQueueTimer *sender,IInspectable *args) {
    return This->lpVtbl->Invoke(This,sender,args);
}
#endif
#ifdef WIDL_using_Windows_Foundation
#define IID_ITypedEventHandler_DispatcherQueueTimer_IInspectable IID___FITypedEventHandler_2_Windows__CSystem__CDispatcherQueueTimer_IInspectable
#define ITypedEventHandler_DispatcherQueueTimer_IInspectableVtbl __FITypedEventHandler_2_Windows__CSystem__CDispatcherQueueTimer_IInspectableVtbl
#define ITypedEventHandler_DispatcherQueueTimer_IInspectable __FITypedEventHandler_2_Windows__CSystem__CDispatcherQueueTimer_IInspectable
#define ITypedEventHandler_DispatcherQueueTimer_IInspectable_QueryInterface __FITypedEventHandler_2_Windows__CSystem__CDispatcherQueueTimer_IInspectable_QueryInterface
#define ITypedEventHandler_DispatcherQueueTimer_IInspectable_AddRef __FITypedEventHandler_2_Windows__CSystem__CDispatcherQueueTimer_IInspectable_AddRef
#define ITypedEventHandler_DispatcherQueueTimer_IInspectable_Release __FITypedEventHandler_2_Windows__CSystem__CDispatcherQueueTimer_IInspectable_Release
#define ITypedEventHandler_DispatcherQueueTimer_IInspectable_Invoke __FITypedEventHandler_2_Windows__CSystem__CDispatcherQueueTimer_IInspectable_Invoke
#endif /* WIDL_using_Windows_Foundation */
#endif

#endif

#endif  /* ____FITypedEventHandler_2_Windows__CSystem__CDispatcherQueueTimer_IInspectable_INTERFACE_DEFINED__ */

/* Begin additional prototypes for all interfaces */

ULONG           __RPC_USER HSTRING_UserSize     (ULONG *, ULONG, HSTRING *);
unsigned char * __RPC_USER HSTRING_UserMarshal  (ULONG *, unsigned char *, HSTRING *);
unsigned char * __RPC_USER HSTRING_UserUnmarshal(ULONG *, unsigned char *, HSTRING *);
void            __RPC_USER HSTRING_UserFree     (ULONG *, HSTRING *);

/* End additional prototypes */

#ifdef __cplusplus
}
#endif

#endif /* __windows_system_h__ */
